Return-Path: Received: from mailgw-02.dd24.net ([193.46.215.43]:47371 "EHLO mailgw-02.dd24.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752023AbbKODYG (ORCPT ); Sat, 14 Nov 2015 22:24:06 -0500 Message-ID: <1447557840.20381.29.camel@scientia.net> Subject: Re: bad extent [5993525264384, 5993525280768), type mismatch with chunk From: Christoph Anton Mitterer To: Qu Wenruo , "linux-btrfs@vger.kernel.org" Date: Sun, 15 Nov 2015 04:24:00 +0100 In-Reply-To: <5647DFED.5020507@gmx.com> References: <1447365063.7045.7.camel@scientia.net> <56468CE4.2010605@gmx.com> <1447468167.27386.3.camel@scientia.net> <5647DFED.5020507@gmx.com> Content-Type: multipart/signed; micalg="sha-512"; protocol="application/x-pkcs7-signature"; boundary="=-3oWxRWbqkQAssNr6oWxl" Mime-Version: 1.0 Sender: linux-btrfs-owner@vger.kernel.org List-ID: --=-3oWxRWbqkQAssNr6oWxl Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sun, 2015-11-15 at 09:29 +0800, Qu Wenruo wrote: > > > If type is wrong, all the extents inside the chunk should be > > > reported > > > as > > > mismatch type with chunk. > > Isn't that the case? At least there are so many reported extents... >=20 > If you posted all the output Sure, I posted everything that the dump gave :) > , that's just a little more than nothing. > Just tens of error reported, compared to millions of extents. > And in your case, if a chunk is really bad, it will report about 65K > errors. I see.. > I think it's a btrfsck issue, at least from the dump info, your > extent=20 > tree is OK. > And if there is no other error reported from btrfsck, your filesystem > should be OK. Nope.. there were no further errors. > > In any case, I'll keep the fs in question for a while, so that I > > can do > > verifications in case you have patches. >=20 > Nice. Just tell me if you have something. btw: I saw these: Nov 15 02:01:42 heisenberg kernel: INFO: task btrfs-transacti:28379 blocked= for more than 120 seconds. Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0Not tainted 4.2.0-1-amd64 #1 Nov 15 02:01:42 heisenberg kernel: "echo 0 > /proc/sys/kernel/hung_task_tim= eout_secs" disables this message. Nov 15 02:01:42 heisenberg kernel: btrfs-transacti D ffffffff8109a1b0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A00 28379=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A02 0x0000= 0000 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0ffff88016e3e6500 000000000000= 0046 000000000000007a ffff88040be88f00 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A00000000000002659 ffff88013807= 0000 ffff88041e355840 7fffffffffffffff Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0ffffffff815508e0 ffff88013806= fbb8 0007ffffffffffff ffffffff815500ff Nov 15 02:01:42 heisenberg kernel: Call Trace: Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? bit_wa= it_timeout+0x70/0x70 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? schedu= le+0x2f/0x70 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? schedu= le_timeout+0x1f7/0x290 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? extent= _write_cache_pages.isra.28.constprop.43+0x222/0x330 [btrfs] Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? read_t= sc+0x5/0x10 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? bit_wa= it_timeout+0x70/0x70 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? io_sch= edule_timeout+0x9d/0x110 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? bit_wa= it_io+0x35/0x60 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? __wait= _on_bit+0x5a/0x90 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? find_g= et_pages_tag+0x116/0x150 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? wait_o= n_page_bit+0xb6/0xc0 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? autore= move_wake_function+0x40/0x40 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? filema= p_fdatawait_range+0xc7/0x140 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? btrfs_= wait_ordered_range+0x73/0x110 [btrfs] Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? btrfs_= wait_cache_io+0x5d/0x1e0 [btrfs] Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? btrfs_= start_dirty_block_groups+0x17c/0x3f0 [btrfs] Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? btrfs_= commit_transaction+0x1b4/0xa90 [btrfs] Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? start_= transaction+0x90/0x580 [btrfs] Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? transa= ction_kthread+0x224/0x240 [btrfs] Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? btrfs_= cleanup_transaction+0x510/0x510 [btrfs] Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? kthrea= d+0xc1/0xe0 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? kthrea= d_create_on_node+0x170/0x170 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? ret_fr= om_fork+0x3f/0x70 Nov 15 02:01:42 heisenberg kernel:=C2=A0=C2=A0[] ? kthrea= d_create_on_node+0x170/0x170 Nov 15 02:03:42 heisenberg kernel: INFO: task btrfs-transacti:28379 blocked= for more than 120 seconds. Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0Not tainted 4.2.0-1-amd64 #1 Nov 15 02:03:42 heisenberg kernel: "echo 0 > /proc/sys/kernel/hung_task_tim= eout_secs" disables this message. Nov 15 02:03:42 heisenberg kernel: btrfs-transacti D ffffffff8109a1b0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A00 28379=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A02 0x0000= 0000 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0ffff88016e3e6500 000000000000= 0046 000000000000007a ffff88040be88f00 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A00000000000002659 ffff88013807= 0000 ffff88041e355840 7fffffffffffffff Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0ffffffff815508e0 ffff88013806= fbb8 0007ffffffffffff ffffffff815500ff Nov 15 02:03:42 heisenberg kernel: Call Trace: Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? bit_wa= it_timeout+0x70/0x70 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? schedu= le+0x2f/0x70 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? schedu= le_timeout+0x1f7/0x290 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? extent= _write_cache_pages.isra.28.constprop.43+0x222/0x330 [btrfs] Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? read_t= sc+0x5/0x10 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? bit_wa= it_timeout+0x70/0x70 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? io_sch= edule_timeout+0x9d/0x110 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? bit_wa= it_io+0x35/0x60 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? __wait= _on_bit+0x5a/0x90 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? find_g= et_pages_tag+0x116/0x150 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? wait_o= n_page_bit+0xb6/0xc0 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? autore= move_wake_function+0x40/0x40 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? filema= p_fdatawait_range+0xc7/0x140 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? btrfs_= wait_ordered_range+0x73/0x110 [btrfs] Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? btrfs_= wait_cache_io+0x5d/0x1e0 [btrfs] Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? btrfs_= start_dirty_block_groups+0x17c/0x3f0 [btrfs] Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? btrfs_= commit_transaction+0x1b4/0xa90 [btrfs] Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? start_= transaction+0x90/0x580 [btrfs] Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? transa= ction_kthread+0x224/0x240 [btrfs] Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? btrfs_= cleanup_transaction+0x510/0x510 [btrfs] Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? kthrea= d+0xc1/0xe0 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? kthrea= d_create_on_node+0x170/0x170 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? ret_fr= om_fork+0x3f/0x70 Nov 15 02:03:42 heisenberg kernel:=C2=A0=C2=A0[] ? kthrea= d_create_on_node+0x170/0x170 Nov 15 04:18:37 heisenberg kernel: virbr1: port 2(vnet0) entered disabled s= tate Nov 15 04:18:37 heisenberg kernel: device vnet0 left promiscuous mode Nov 15 04:18:37 heisenberg kernel: virbr1: port 2(vnet0) entered disabled s= tate Is that anything to worry about? And any way to find out to which filesystem that process corresponds? At least I've never seen =C2=A0btrfs-transacti to hang... and since nothing than the cp -a from on to the other disk is doing anything on the two HDDs, I was a bit surprised to see that happen Cheers, Chris. --=-3oWxRWbqkQAssNr6oWxl Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Disposition: attachment; filename="smime.p7s" Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgMFADCABgkqhkiG9w0BBwEAAKCCEZIw ggW/MIIDp6ADAgECAgMCOakwDQYJKoZIhvcNAQENBQAwVDEUMBIGA1UEChMLQ0FjZXJ0IEluYy4x HjAcBgNVBAsTFWh0dHA6Ly93d3cuQ0FjZXJ0Lm9yZzEcMBoGA1UEAxMTQ0FjZXJ0IENsYXNzIDMg Um9vdDAeFw0xNDA2MTIxNjM2MThaFw0xNjA2MTExNjM2MThaMHwxITAfBgNVBAMTGENocmlzdG9w aCBBbnRvbiBNaXR0ZXJlcjEkMCIGCSqGSIb3DQEJARYVY2FsZXN0eW9Ac2NpZW50aWEubmV0MTEw LwYJKoZIhvcNAQkBFiJtYWlsQGNocmlzdG9waC5hbnRvbi5taXR0ZXJlci5uYW1lMIIBIjANBgkq hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4phP/j9vT9dZT+k3ffHxvRWMOuzBnu5O3Fl4y2+WL7pL rfLiEhWzGXhHvjSqpt4vCNSdqy43453nnu8+hMb+uEtqSIL1AHU5eLhuDNVN9S4bt9E7nA2WKYBU LCUi/xCD/GL7ToyJNwhrhzcCZ7pXSc3xVqFoC4f6weU9ExhoEZQNRpTM0BFCOi4fRxvKFNnUYgjK hqy0Ta5H0Xx86mAp0Q4dxoD7mhI5iTF6TRkUheELxF24JCuAf04M89Cwft6DRH1FpJ3yvgW2B5U5 aFSL4ZnF4N/wyCB7Dkm1rQ7RCAvw5btkf0VdPnU7ccDCx8HEc2nxK/lbCjrznvh3sa1CCwIDAQAB o4IBcDCCAWwwDAYDVR0TAQH/BAIwADBWBglghkgBhvhCAQ0ESRZHVG8gZ2V0IHlvdXIgb3duIGNl cnRpZmljYXRlIGZvciBGUkVFIGhlYWQgb3ZlciB0byBodHRwOi8vd3d3LkNBY2VydC5vcmcwDgYD VR0PAQH/BAQDAgOoMEAGA1UdJQQ5MDcGCCsGAQUFBwMEBggrBgEFBQcDAgYKKwYBBAGCNwoDBAYK KwYBBAGCNwoDAwYJYIZIAYb4QgQBMDIGCCsGAQUFBwEBBCYwJDAiBggrBgEFBQcwAYYWaHR0cDov L29jc3AuY2FjZXJ0Lm9yZzA4BgNVHR8EMTAvMC2gK6AphidodHRwOi8vY3JsLmNhY2VydC5vcmcv Y2xhc3MzLXJldm9rZS5jcmwwRAYDVR0RBD0wO4EVY2FsZXN0eW9Ac2NpZW50aWEubmV0gSJtYWls QGNocmlzdG9waC5hbnRvbi5taXR0ZXJlci5uYW1lMA0GCSqGSIb3DQEBDQUAA4ICAQBefctiLgGl e5baspuozyA4k7Up7SVhGHbif6pQfoFc/9Thx9GXnYpX+U64PMyWBfWwHZIy52Vg0RVkvPi1t6mi GyBfoSpC6ooR0bKWtUIogw/ymqKWlTLVR8kbLqRmRk4juMtCXG2K3yMygX/rjkuUSuFj2Bjpkmzg CtMojbUMYbszePmhQ7DJ62YEdtKpcjN94QAsI5GWlIAbs3KJazAcaNCRJeXCLcUMchyKHJA+NXH5 az/ekBxBMBzJP2An20PP88UI4JW18z31KiG9UVGa2uO4l4aWgVe2GnhNEdCD/o48msJEWKAt5vl2 yMqr7ihmNPocU2+/FW0xPe/vftdOTD9pgXdSGf4prdD+23q2YvpalOCzr2p8yCJZNVBPMxAP4mL0 3OEktXza4wohqAmceXKfGUNwRGBaPvtIGnPrpLhCQ+2YJDg8g1UEsk23bKyZlJWeKJyVqOBsDJmj aBsN/qKhQFnav+zQdqGhMeaSisF/53mD3gyVYg2JRl18apgGbg32kyLmomqa0JbhnY3Dc3FVtZfe +P+s2Cyep3pVKvFer2llRoGm8TwraG5Yhyx8Oq/1qETpstjbURJOVBLDCV4AjOEUj0ZnE/tEo/DK yexgGaViNvjp+IZdFdJhYmsVjw4Q3vG7O0pfsLiYEyQjeDgjNEWDfa5/MufPywIfxzCCBb8wggOn oAMCAQICAwI5qTANBgkqhkiG9w0BAQ0FADBUMRQwEgYDVQQKEwtDQWNlcnQgSW5jLjEeMBwGA1UE CxMVaHR0cDovL3d3dy5DQWNlcnQub3JnMRwwGgYDVQQDExNDQWNlcnQgQ2xhc3MgMyBSb290MB4X DTE0MDYxMjE2MzYxOFoXDTE2MDYxMTE2MzYxOFowfDEhMB8GA1UEAxMYQ2hyaXN0b3BoIEFudG9u IE1pdHRlcmVyMSQwIgYJKoZIhvcNAQkBFhVjYWxlc3R5b0BzY2llbnRpYS5uZXQxMTAvBgkqhkiG 9w0BCQEWIm1haWxAY2hyaXN0b3BoLmFudG9uLm1pdHRlcmVyLm5hbWUwggEiMA0GCSqGSIb3DQEB AQUAA4IBDwAwggEKAoIBAQDimE/+P29P11lP6Td98fG9FYw67MGe7k7cWXjLb5Yvukut8uISFbMZ eEe+NKqm3i8I1J2rLjfjneee7z6Exv64S2pIgvUAdTl4uG4M1U31Lhu30TucDZYpgFQsJSL/EIP8 YvtOjIk3CGuHNwJnuldJzfFWoWgLh/rB5T0TGGgRlA1GlMzQEUI6Lh9HG8oU2dRiCMqGrLRNrkfR fHzqYCnRDh3GgPuaEjmJMXpNGRSF4QvEXbgkK4B/Tgzz0LB+3oNEfUWknfK+BbYHlTloVIvhmcXg 3/DIIHsOSbWtDtEIC/Dlu2R/RV0+dTtxwMLHwcRzafEr+VsKOvOe+HexrUILAgMBAAGjggFwMIIB bDAMBgNVHRMBAf8EAjAAMFYGCWCGSAGG+EIBDQRJFkdUbyBnZXQgeW91ciBvd24gY2VydGlmaWNh dGUgZm9yIEZSRUUgaGVhZCBvdmVyIHRvIGh0dHA6Ly93d3cuQ0FjZXJ0Lm9yZzAOBgNVHQ8BAf8E BAMCA6gwQAYDVR0lBDkwNwYIKwYBBQUHAwQGCCsGAQUFBwMCBgorBgEEAYI3CgMEBgorBgEEAYI3 CgMDBglghkgBhvhCBAEwMgYIKwYBBQUHAQEEJjAkMCIGCCsGAQUFBzABhhZodHRwOi8vb2NzcC5j YWNlcnQub3JnMDgGA1UdHwQxMC8wLaAroCmGJ2h0dHA6Ly9jcmwuY2FjZXJ0Lm9yZy9jbGFzczMt cmV2b2tlLmNybDBEBgNVHREEPTA7gRVjYWxlc3R5b0BzY2llbnRpYS5uZXSBIm1haWxAY2hyaXN0 b3BoLmFudG9uLm1pdHRlcmVyLm5hbWUwDQYJKoZIhvcNAQENBQADggIBAF59y2IuAaV7ltqym6jP IDiTtSntJWEYduJ/qlB+gVz/1OHH0Zedilf5Trg8zJYF9bAdkjLnZWDRFWS8+LW3qaIbIF+hKkLq ihHRspa1QiiDD/KaopaVMtVHyRsupGZGTiO4y0JcbYrfIzKBf+uOS5RK4WPYGOmSbOAK0yiNtQxh uzN4+aFDsMnrZgR20qlyM33hACwjkZaUgBuzcolrMBxo0JEl5cItxQxyHIockD41cflrP96QHEEw HMk/YCfbQ8/zxQjglbXzPfUqIb1RUZra47iXhpaBV7YaeE0R0IP+jjyawkRYoC3m+XbIyqvuKGY0 +hxTb78VbTE97+9+105MP2mBd1IZ/imt0P7berZi+lqU4LOvanzIIlk1UE8zEA/iYvTc4SS1fNrj CiGoCZx5cp8ZQ3BEYFo++0gac+ukuEJD7ZgkODyDVQSyTbdsrJmUlZ4onJWo4GwMmaNoGw3+oqFA Wdq/7NB2oaEx5pKKwX/neYPeDJViDYlGXXxqmAZuDfaTIuaiaprQluGdjcNzcVW1l974/6zYLJ6n elUq8V6vaWVGgabxPCtobliHLHw6r/WoROmy2NtREk5UEsMJXgCM4RSPRmcT+0Sj8MrJ7GAZpWI2 +On4hl0V0mFiaxWPDhDe8bs7Sl+wuJgTJCN4OCM0RYN9rn8y58/LAh/HMIIGCDCCA/CgAwIBAgIB ATANBgkqhkiG9w0BAQQFADB5MRAwDgYDVQQKEwdSb290IENBMR4wHAYDVQQLExVodHRwOi8vd3d3 LmNhY2VydC5vcmcxIjAgBgNVBAMTGUNBIENlcnQgU2lnbmluZyBBdXRob3JpdHkxITAfBgkqhkiG 9w0BCQEWEnN1cHBvcnRAY2FjZXJ0Lm9yZzAeFw0wNTEwMTQwNzM2NTVaFw0zMzAzMjgwNzM2NTVa MFQxFDASBgNVBAoTC0NBY2VydCBJbmMuMR4wHAYDVQQLExVodHRwOi8vd3d3LkNBY2VydC5vcmcx HDAaBgNVBAMTE0NBY2VydCBDbGFzcyAzIFJvb3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK AoICAQCrSTURSHzSJn5TlM9Dqd0o10Iqi/OHeBlYfA+e2ol94fvrcpANdKGWZKufoCSZc9riVXbH F3v1BKxGuMO+f2SNEGwk82GcwPKQ+lHm9WkBY8MPVuJKQs/iRIwlKKjFeQl9RrmK8+nzNCkIReQc n8uUBByBqBSzmGXEQ+xOgo0J0b2qW42S0OzekMV/CsLj6+YxWl50PpczWejDAz1gM7/30W9HxM3u YoNSbi4ImqTZFRiRpoWSR7CuSOtttyHshRpocjWr//AQXcD0lKdq1TuSfkyQBX6TwSyLpI5idBVx bgtxA+qvFTia1NIFcm+M+SvrWnIl+TlG43IbPgTDZCciECqKT1inA62+tC4T7V2qSNfVfdQqe1z6 RgRQ5MwOQluM7dvyz/yWk+DbETZUYjQ4jwxgmzuXVjit89Jbi6Bb6k6WuHzX1aCGcEDTkSm3ojyt 9Yy7zxqSiuQ0e8DYbF/pCsLDpyCaWt8sXVJcukfVm+8kKHA4IC/VfynAskEDaJLM4JzMl0tF7zoQ CqtwOpiVcK01seqFK6QcgCExqa5geoAmSAC4AcCTY1UikTxW56/bOiXzjzFU6iaLgVn5odFTEcV7 nQP2dBHgbbEsPyyGkZlxmqZ3izRg0RS0LKydr4wQ05/EavhvE/xzWfdmQnQeiuP43NJvmJzLR5iV QAX76QIDAQABo4G/MIG8MA8GA1UdEwEB/wQFMAMBAf8wXQYIKwYBBQUHAQEEUTBPMCMGCCsGAQUF BzABhhdodHRwOi8vb2NzcC5DQWNlcnQub3JnLzAoBggrBgEFBQcwAoYcaHR0cDovL3d3dy5DQWNl cnQub3JnL2NhLmNydDBKBgNVHSAEQzBBMD8GCCsGAQQBgZBKMDMwMQYIKwYBBQUHAgEWJWh0dHA6 Ly93d3cuQ0FjZXJ0Lm9yZy9pbmRleC5waHA/aWQ9MTAwDQYJKoZIhvcNAQEEBQADggIBAH8IiKHa GlBJ2on7oQhy84r3HsQ6tHlbIDCxRd7CXdNlafHCXVRUPIVfuXtCkcKZ/RtRm6tGpaEQU55tiKxz biwzpvD0nuB1wT6IRanhZkP+VlrRekF490DaSjrxC1uluxYG5sLnk7mFTZdPsR44Q4Dvmw2M77in YACHV30eRBzLI++bPJmdr7UpHEV5FpZNJ23xHGzDwlVks7wU4vOkHx4y/CcVBc/dLq4+gmF78CEQ GPZE6lM5+dzQmiDgxrvgu1pPxJnIB721vaLbLmINQjRBvP+LivVRIqqIMADisNS8vmW61QNXeZvo 3MhN+FDtkaVSKKKs+zZYPumUK5FQhxvWXtaMzPcPEAxSTtAWYeXlCmy/F8dyRlecmPVsYGN6b165 Ti/Iubm7aoW8mA3t+T6XhDSUrgCvoeXnkm5OvfPi2RSLXNLrAWygF6UtEOucekq9ve7O/e0iQKtw OIj1CodqwqsFYMlIBdpTwd5Ed2qz8zw87YC8pjhKKSRf/lk7myV6VmMAZLldpGJ9VzZPrYPvH5JT oI53V93lYRE9IwCQTDz6o2CTBKOvNfYOao9PSmCnhQVsRqGP9Md246FZV/dxssRuFFxtbUFm3xuT sdQAw+7Lzzw9IYCpX2Nl/N3gX6T0K/CFcUHUZyX7GrGXrtaZghNB0m6lG5kngOcLqagAMYIC7TCC AukCAQEwWzBUMRQwEgYDVQQKEwtDQWNlcnQgSW5jLjEeMBwGA1UECxMVaHR0cDovL3d3dy5DQWNl cnQub3JnMRwwGgYDVQQDExNDQWNlcnQgQ2xhc3MgMyBSb290AgMCOakwDQYJYIZIAWUDBAIDBQCg ggFjMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE1MTExNTAzMjQw MFowTwYJKoZIhvcNAQkEMUIEQLUtJ6gnRc28gzqBXcTEviyplgZJKxUAsK909fx+7V3kCU6dMIvv klIVzCB+J5LCOqHVLJtCIpX+/SjmQY4VFKIwagYJKwYBBAGCNxAEMV0wWzBUMRQwEgYDVQQKEwtD QWNlcnQgSW5jLjEeMBwGA1UECxMVaHR0cDovL3d3dy5DQWNlcnQub3JnMRwwGgYDVQQDExNDQWNl cnQgQ2xhc3MgMyBSb290AgMCOakwbAYLKoZIhvcNAQkQAgsxXaBbMFQxFDASBgNVBAoTC0NBY2Vy dCBJbmMuMR4wHAYDVQQLExVodHRwOi8vd3d3LkNBY2VydC5vcmcxHDAaBgNVBAMTE0NBY2VydCBD bGFzcyAzIFJvb3QCAwI5qTANBgkqhkiG9w0BAQEFAASCAQCuGQPyWWcjNDVj3blUD1gfYBjCJOXh klrZhm/fEF7+IyFPf9M0I6Jc/uyYZmfFstVPfRqeJVKdaYxGEJrna1gQQKx9s7hZEd1Zl6YAoLII Ty+j0/aJEZEkPItgugmohJ34cKhkd+y2XVniFsWJFunMXwQLnuaX/MuR7HojdSgagLpjkuIYKwZk w8T0KVPKsAJ7avskBPsppIot+/jRPMoP0unE1a8djmvhQGhhNXtPKFGDpZ/d4rwp7ZdieKa9vTMj HcK8PoV/LWMxjJY/qyPOL9vWSWaYB8htAEDPl8ybZIOk121AQwUOluiQBeKrllnGOA0GjfQxAHZC FzJbHJRkAAAAAAAA --=-3oWxRWbqkQAssNr6oWxl--