0x46ead43c00000000000000000000000000000000000000000000000000000000000097f20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda02913000000000000000000000000604bb4c1969337ee6d016b21f2a76f0e83a1faa3000000000000000000000000000000000000000000000000000ec311dc25caf3000000000000000000000000000000000000000000000001a055690d9db8000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000001f6f504e41550100000003b801000000040d00d1192a8641e0439270577c8ae01aa2f89c4769acd9fece00fbe8357bae9ab8dd05225bd9b93946436a3de9e12b00e7e5cffdd40f5dc2179f8d16e12a33f96d6a0002210068a9b04693354d073c1130a696273e0da35a41bc76c63a72ef7ac25e7d006c80efe9608c1c51c44c5fc17fa85e9acf2fa102aee9ae5834cf90e7269ec5e40003e7860f03727cd20c5caf62719db377e9a603af1ade5b0d12ef64b1dc893f1e905b1532e1d5d0626e78970b7041f95433af81541853fb4f5644de6ab40244fda00004120740a32a1cb9ff377bb68794ad7dc93595f2801f37732c80386918099f56043186c4502824f67c97bc9f657c9e982127f082e08e005523c0c88de4f4890b5501064a83157ee3f21b2412c883b4ca72e0cc3f109523731da4a73d6db9949115823960c923d428b488ec5ea190a9d526a4c5cbc9f689a0e370bf075cdb5bb408282501088196cb39fabbeb65a4f639b0c90fa3968e738a5e77abe413eaf06d6e9432358307d7fea3b6a3573c4aec29b2e8172195c2e4c2466974eab37de4dfad787e37a5000aaddcfc7fc719ace3f7b80f0e49bfd5609716c4151680bd83e8424574409217cb4f7a1571fefbb0a818255853fc40127e57c3c472912ea1644c75541919b37da3000b6bc5b953bd604b853c6d84726990f5966daba1f54541548beec7065d00feeb524b0047f5eb7a872d98a7d9fff78a99b3cb31cb3f4dab309cc91a7fda73c5702c000ccf7286721f70ef21a2a84702bd48027dcd9d3fa11b0654895365203e11e2a3ce63240e72b52579136c431f6540acf5559993325808c4be57312570b32ac45b2a000d30202511c5923b277d860a58a4acdaf298c154353372043db2947c552ef956e62d050c3fcb0d36cb21e724738ed7e4580fe8c5e04792ced86e9e06727973bad7000f66277787b9a737f2a88b69cd3e33599207525c7296c702ee46c142159afe079275edb851f64f2101d22cdb7963a8ac544bc386a92f9ea6535c0ab832f6f3ec3a0010cea1b48a630b386f7d949294ba282207359c5d1c3d1cd0147bf34491d8b1bf0619b8755a282b6ebf32b7858d138d9f9ab16b09c1eca97dcd2049a4c2854f10f000117349709581ecc7f9ce206da8ac6f05fcdaaf50cd9f7488a60fc1e907e4d7aafd45887eb8e4ec7ba428d95a89fe9494fb31943e6b8d987d11a4e96f160c64b2750167750c4f00000000001ae101faedac5851e32b9b23b5f9411a8c2bac4aae3ed4dd7b811dd1a72ea4aa7100000000062d8dbe014155575600000000000b3a718100002710d8f65c77aa5238eea16617357850d0e45f2efdc017005500eaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a0000000005f5dac3000000000002680dfffffff80000000067750c4f0000000067750c4f0000000005f5de6700000000000248ef0b1416a21ae1dea79d5fb4b4d73f833895aba2a61052ce99de5c09fd91501db765842ff84bf67ad2ff98578b5e953894be9d1798b9662df793cb7f833fa315754b184f14abd64eb1ac81485872dec55bc13e508b49f7d2d097a558f89417a776d09098d06cb4cc25f2f2acd1a52456c613990fd0b036088617e15c61c5fca24e852a17c0982acf41aa787883417e6c19e082fe4cc42b8808eb0bd133e072cc7e9463630aa49f8f0ab32d718f054111c8f25022c3932fbb2b49fb2133c7fbd4e22e5c1e637724ef07b97f6a1aff4555e4587154ceff5f3a4407a93a49da00550093da3352f9f1d105fdfe4971cfa80e9dd777bfc5d0f683ebb6e1294b92137bb700000000d111e7bb000000000056028dfffffff80000000067750c4f0000000067750c4f00000000d252920c000000000054a09e0bbd9ea9bdb30a3d755a5e59523b37eeb78897b6d75fa50a2888cdbceaa6c743c72360ebbf105f503b0742267ce3d03ebb7ba0271006d983ca455eeee3e38abc204dbb60ab18ca5cda91bde61c37213e76a5c0fb32a42052ddb941c857d027547e304b3375626a34fb0f6b5766a278a539916c221dc72a7dbad4531aabf546c39d23d9c1d05679314e195fb3e118284e3b0be5dd0f20fd01ff15292e4b5eff36b6c8c9695161d56fa933474add497a5f53ff1500a15f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da005500ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace0000004d5042e0d8000000001991e5cdfffffff80000000067750c4f0000000067750c4f0000004d82d4b5a00000000017ad6a1c0bd24d6de530f563f353b30eac04f5a55fc635ef27d8fda2d5498563e6662bde137332081deba47cffd8d040048ade13b48dd71e2d174d39c714d2de159357bb0c59f11cf40bbb199d29fbe8872b59c69766e0fecf46f4b672395f56774b9dbcbb93a7ecb1718dd8a21643e2ff8999faf88b99c4015fa68de7b89ffaae78c96701271c367f1278d938147ab5647e6c19e082fe4cc42b8808eb0bd133e072cc7e9463630aa49f8f0ab32d718f054111c8f25022c3932fbb2b49fb2133c7fbd4e22e5c1e637724ef07b97f6a1aff4555e4587154ceff5f3a4407a93a49da005500dcef50dd0a4cd2dcc17e45df1676dcb336a11a61c69df7a0299b0150c672d25c0000000001dd01480000000000007a00fffffff80000000067750c4f0000000067750c4f0000000001df4bc00000000000007b280beb85d4443d03fefd76247d7694500702e907c82f5bfb497ee8f48630efb6b2b62c6e6a6639bd68318857dc197b8752ae9794b3dd62247f6ed47217b70fa44752a269b2b6fdce95f341386b62daa8f0888fb85b211169b972f781a54e447cec2b85b3a257d57ee0668ab2d77f1f322ed9af4ab595adcef0ece15c61c5fca24e852a17c0982acf41aa787883417e6c19e082fe4cc42b8808eb0bd133e072cc7e9463630aa49f8f0ab32d718f054111c8f25022c3932fbb2b49fb2133c7fbd4e22e5c1e637724ef07b97f6a1aff4555e4587154ceff5f3a4407a93a49da005500d69731a2e74ac1ce884fc3890f7ee324b6deb66147055249568869ed700882e4000000000002f0f20000000000000145fffffff60000000067750c4f0000000067750c4f000000000002fff200000000000001590b46d2342a2e33c647a574f171bc2144bec20cb9dda58c9134b2c8decb0ede02139f15907496d3114f4b163784f23be3e190e30b2bd3d0004df892684cb08f11ac39501976ae6e50c644eda8e0c07637b98fb85b211169b972f781a54e447cec2b85b3a257d57ee0668ab2d77f1f322ed9af4ab595adcef0ece15c61c5fca24e852a17c0982acf41aa787883417e6c19e082fe4cc42b8808eb0bd133e072cc7e9463630aa49f8f0ab32d718f054111c8f25022c3932fbb2b49fb2133c7fbd4e22e5c1e637724ef07b97f6a1aff4555e4587154ceff5f3a4407a93a49da005500e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b4300000875fa42c117000000020c8539b6fffffff80000000067750c4f0000000067750c4f0000087b38a161a0000000020669929c0b0140b387a0cafcddd0fb28879b94b657d62fa38c8a6cd772173f71a0689d4785a158a364d350816aaeb222c836ed4c530e1645c7042683784bc66a2e131e37a79f4498adbabcb8d7cb8d4d7d7797fbf63e508b49f7d2d097a558f89417a776d09098d06cb4cc25f2f2acd1a52456c613990fd0b036088617e15c61c5fca24e852a17c0982acf41aa787883417e6c19e082fe4cc42b8808eb0bd133e072cc7e9463630aa49f8f0ab32d718f054111c8f25022c3932fbb2b49fb2133c7fbd4e22e5c1e637724ef07b97f6a1aff4555e4587154ceff5f3a4407a93a49da005500ef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d00000004630bc568000000000130835afffffff80000000067750c4f0000000067750c4f0000000466b2551000000000013b9c2c0bb1b0cdaf467788b2fa8913f8d5e4539399f15f48baef976a1dafdf3d63c966dfc39b8bbd5b3ba58aca1e3a5da59e0e9333fda6999b64ae2a8231c983f540bf400b94cc9ff65363fde3ddaf11d382c01fe4e01a32fb7a7fed89e912565dfcd915951a0ee3a06c611e1536cdfccc8e26ce3b9e0c922c4b7784b89ffaae78c96701271c367f1278d938147ab5647e6c19e082fe4cc42b8808eb0bd133e072cc7e9463630aa49f8f0ab32d718f054111c8f25022c3932fbb2b49fb2133c7fbd4e22e5c1e637724ef07b97f6a1aff4555e4587154ceff5f3a4407a93a49da005500ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace0000004d5042e0d8000000001991e5cdfffffff80000000067750c4f0000000067750c4f0000004d82d4b5a00000000017ad6a1c0bd24d6de530f563f353b30eac04f5a55fc635ef27d8fda2d5498563e6662bde137332081deba47cffd8d040048ade13b48dd71e2d174d39c714d2de159357bb0c59f11cf40bbb199d29fbe8872b59c69766e0fecf46f4b672395f56774b9dbcbb93a7ecb1718dd8a21643e2ff8999faf88b99c4015fa68de7b89ffaae78c96701271c367f1278d938147ab5647e6c19e082fe4cc42b8808eb0bd133e072cc7e9463630aa49f8f0ab32d718f054111c8f25022c3932fbb2b49fb2133c7fbd4e22e5c1e637724ef07b97f6a1aff4555e4587154ceff5f3a4407a93a49da00550023d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc6574400000000183312cb0000000000086cebfffffff80000000067750c4f0000000067750c4f0000000018712ce0000000000007a55c0bcbf224c53372bbe1456dc6040f57dc39f414561f8d6a1fb610e54f19a06eee05f5c430b714b58372e8e3036ed10140af313cde2ca860dc32e6cdc869a7b20d26c180e243f16fa2c0ece5242971b407180076c9c5f7479a1babdd8be542de1e867b19ed0d0989a161b7b0e419167e9b3dc6b3735156ed9a615e6ed07dc630f35e17143f12dac8bbf61851fcd77aa5c8da1660d13faedad2192e3fb4b1311c4f208db315f126de7d1919d1c97f5f3ca8771f39a6a75f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da0055004ca4beeca86f0d164160323817a4e42b10010a724c2217c6ee41b54cd4cc61fc000000000a897b34000000000004e3d1fffffff80000000067750c4f0000000067750c4f000000000ab4825a000000000004b87a0bad221efe50450e0861519aa09147dee3cd2fff6da1a28db7078c07d543115e9db134ae8bcada30832c0175eb93a7a0099d5d59f9dfda79d6f51e3f5d4dffcf6e2beeba5668fc706985f5b3eb9bf75db4b238cf35637ae4fdcc5d0f55c21f1dfc7e09a96d259feb1681bdac7a5a7eaae9711585fc2254164461be05f80869abf367bbbdcf9902586582e07c2536e3de60f4ec6c1a4dccc4f4d3047b022e37042b8db315f126de7d1919d1c97f5f3ca8771f39a6a75f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da005500ec5d399846a9209f3fe5881d70aae9268c94339ff9817e8d18ff19fa05eea1c8000000000c7f80a4000000000004096dfffffff80000000067750c4f0000000067750c4f000000000c94857e000000000003fd2d0b01d7eecb4fa756ba152992cc5557f125f527bb1bf5e93817803942cb81aa63f8f35901e301129e1c98578b5e953894be9d1798b9662df793cb7f833fa315754b184f14abd64eb1ac81485872dec55bc13e508b49f7d2d097a558f89417a776d09098d06cb4cc25f2f2acd1a52456c613990fd0b036088617e15c61c5fca24e852a17c0982acf41aa787883417e6c19e082fe4cc42b8808eb0bd133e072cc7e9463630aa49f8f0ab32d718f054111c8f25022c3932fbb2b49fb2133c7fbd4e22e5c1e637724ef07b97f6a1aff4555e4587154ceff5f3a4407a93a49da0055002f95862b045670cd22bee3114c39763a4a08beeb663b145d283c31d7d1101c4f0000001055d81d8f000000000576c65efffffff80000000067750c4f0000000067750c4f00000010576de6a800000000053f0a8f0be7a1d4707126dabcea48223244170e9f937a666f61ed64b08a01457577440636af16bef49b17c527faf34d964a5396d0dca61ab367c016a17fff27cc04b0bbe5e41b6f105ad3667bd43d643376d79e380e9cace2700d09af0aad555498aeabf934c82d1bf2b09feb56c222e2dda754d5471548b8ab4502c55e6ed07dc630f35e17143f12dac8bbf61851fcd77aa5c8da1660d13faedad2192e3fb4b1311c4f208db315f126de7d1919d1c97f5f3ca8771f39a6a75f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da005500b9312a7ee50e189ef045aa3c7842e099b061bd9bdc99ac645956c3b660dc8cce0000000004519db20000000000022ff6fffffff80000000067750c4f0000000067750c4f00000000045965cc0000000000023e930b8deba67335b32a41026843c4f810c73c85055eefe5b4765d505e72fa7e8539a00bef110fbec223058d9f86bcc5cd14e4ef7a1086ea8e04413f72c618ba5f5e05fe404cb4fd48f9db14fbb4b8b2c8381f6501a1c1dec073c4d98c72fe4e6e12ca2687d4ecd94bf6b7800d4af126bc18fb9950d7adcea50f884e0a2c8d32e360221e305a671363936c98257fabdfaaae604f2640048cc94b8a3f730de14d471b85c8c9695161d56fa933474add497a5f53ff1500a15f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da00550030e4780570973e438fdb3f1b7ad22618b2fc7333b65c7853a7ca144c39052f7a000000000009780400000000000004b2fffffff80000000067750c4f0000000067750c4f0000000000098a8700000000000004ca0b11d0cc88e8ef2693923f8b5399fccf0d6cc96fd34efff30c92bf81625643262bb910ae4b94329919cd6e38f382045df9194fd1b871925c5db7ea5dc2bb7cb6939da5eb85cc3f310277d3229ecb4bee480e9cace2700d09af0aad555498aeabf934c82d1bf2b09feb56c222e2dda754d5471548b8ab4502c55e6ed07dc630f35e17143f12dac8bbf61851fcd77aa5c8da1660d13faedad2192e3fb4b1311c4f208db315f126de7d1919d1c97f5f3ca8771f39a6a75f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da00550072b021217ca3fe68922a19aaf990109cb9d84e9ad004b4d2025ad6f529314419000000000004735a000000000000020efffffff60000000067750c4f0000000067750c4f0000000000048543000000000000020e0b89a9c157020e2ba5ceba3194e5e3bb4be2f65e27f0ea55b016f5ae3c430c86481184dc867a151e636f58bcebdc02575ec61c36a09155c08dbfe96c0f9a8b38eff0ec72d4eb83a57ef17678ce4f14c644bd58f82a2170c07c1a2e7510897d529112415322922e51d3887d11e28cef9f0f8526df7f657cfb63bbe48e5e888be586cf24a94e4a8eef55ea8ecf0e18284e3b0be5dd0f20fd01ff15292e4b5eff36b6c8c9695161d56fa933474add497a5f53ff1500a15f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da0055006b1381ce7e874dc5410b197ac8348162c0dd6c0d4c9cd6322672d6c2b1d5829300000000001a7da90000000000000a6afffffff60000000067750c4f0000000067750c4f00000000001ac6000000000000000b210b2a26bbc68c244a22f212198737940ab478f9ba7217cf4469a84ad019b4944d5c304d80feedb522016f521125413e684a84d281bb6670bdbcb1bec1a6298170ca1d65af74d9e9c9b5de785e2127188cfc2f1472ea74c358dbb2ae9bc9eade37f0c23c96dd922e51d3887d11e28cef9f0f8526df7f657cfb63bbe48e5e888be586cf24a94e4a8eef55ea8ecf0e18284e3b0be5dd0f20fd01ff15292e4b5eff36b6c8c9695161d56fa933474add497a5f53ff1500a15f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da005500514aed52ca5294177f20187ae883cec4a018619772ddce41efcc36a6448f5d5d0000000000097450000000000000049bfffffff80000000067750c4f0000000067750c4f0000000000098816000000000000046d0b74e39f7baeb7a5ad03c0b0dc22c7e9b3f88ded4728e82e5ad0a516a021671cc6fd0389a10fab2933abc83c32c2ffcc99f439b8fdb2f63d431a9990924cc210195493e8bb0dd76b0c2d8b54eb8349455bab992c8343577c398af78a3c616732e9d8ff5beb5603878abff9ae072b88adca654b69b3d3ab33718512e7948b71241969455b23857b32c42f872c3436e3de60f4ec6c1a4dccc4f4d3047b022e37042b8db315f126de7d1919d1c97f5f3ca8771f39a6a75f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da0055008963217838ab4cf5cadc172203c1f0b763fbaa45f346d8ee50ba994bbcac302600000000203bee0f00000000000f89fbfffffff80000000067750c4f0000000067750c4f000000002067432600000000000f680c0bd3c9e4c11b3e9f811bda678a43d1e4ce5ecf288564b4ab35d72b193d76558fd13916837b92f0b59e7cb05c7dc1db0abad1503f0704b1fb865b475f8f2dc6f59cd0496cfe4c81807f55fa463e27b752ac9e1ff3b6e20ba179666407c4570846b66e10a58a2e72d6489b5fc97cc2c51258a166d71d191b7c7bd4531aabf546c39d23d9c1d05679314e195fb3e118284e3b0be5dd0f20fd01ff15292e4b5eff36b6c8c9695161d56fa933474add497a5f53ff1500a15f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da00550075ec6f04d4bded6afdc1440689be4402dd1e23d2ff2c21e081871eb2739ceb360000000000097baf000000000000049ffffffff80000000067750c4f0000000067750c4f0000000000098b3a000000000000049d0b1a9ec2d993480554eb76e2c9ed832803dfc47f56884e674b356eddcec2fac4e0c9f4d45979100e388a2288b8874570804b1d5f7f764b0bca89b47e463dbd485476ca14269b194a2f19904f127d3006f16dadc0246aa6e6eff4a860818b19b038418a1459a8103cb6515d6154bfaa76288ea3ec9e6be274d9bbe48e5e888be586cf24a94e4a8eef55ea8ecf0e18284e3b0be5dd0f20fd01ff15292e4b5eff36b6c8c9695161d56fa933474add497a5f53ff1500a15f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da005500ffff73128917a90950cd0473fd2551d7cd274fd5a6cc45641881bbcc6ee73417000000000192b077000000000000e0a5fffffff80000000067750c4f0000000067750c4f000000000197508b000000000000dbaf0bdf5d53d16b431ff3ca6b4ae9800dd9f9b1507cf2909adc9f77725b4a57e7dc6bc5d14370488f143dd8d040048ade13b48dd71e2d174d39c714d2de159357bb0c59f11cf40bbb199d29fbe8872b59c69766e0fecf46f4b672395f56774b9dbcbb93a7ecb1718dd8a21643e2ff8999faf88b99c4015fa68de7b89ffaae78c96701271c367f1278d938147ab5647e6c19e082fe4cc42b8808eb0bd133e072cc7e9463630aa49f8f0ab32d718f054111c8f25022c3932fbb2b49fb2133c7fbd4e22e5c1e637724ef07b97f6a1aff4555e4587154ceff5f3a4407a93a49da0055009c93e4a22c56885af427ac4277437e756e7ec403fbc892f975d497383bb3356000000000000dbd110000000000000642fffffff80000000067750c4f0000000067750c4f00000000000de2f100000000000006890b81952349ea8df36ccff7509c2a32b8ff98ac7d3d050009bee6ce1465b9106678cae3c2a8f3067aa67feb425b49eea4cd327e5913c4a0259933b2534e96e75e99aaf0d32487b9424279b4aba7dfc499df0406bfaa9e234034a24b3d77c24b1f76a68a7e209c11bde7ac6f0f5bf9ad6de94a140eed0462d4adbecfbb76a9b28ea927976d8368a221e329dd1647dfaaae604f2640048cc94b8a3f730de14d471b85c8c9695161d56fa933474add497a5f53ff1500a15f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da0055009db37f4d5654aad3e37e2e14ffd8d53265fb3026d1d8f91146539eebaa2ef45f0000000007d8062b000000000004d786fffffff80000000067750c4f0000000067750c4f0000000007e4356f00000000000438900b7a6599806b179d5c0a66f1c9d8f09bfefbcd041a0e3f0eaf499a3a7de7e22b0f19edcf3cddd64fcbcc435f3480152da947541cdff97247c8f4b33fb896e75e99aaf0d32487b9424279b4aba7dfc499df0406bfaa9e234034a24b3d77c24b1f76a68a7e209c11bde7ac6f0f5bf9ad6de94a140eed0462d4adbecfbb76a9b28ea927976d8368a221e329dd1647dfaaae604f2640048cc94b8a3f730de14d471b85c8c9695161d56fa933474add497a5f53ff1500a15f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da005500c65db025687356496e8653d0d6608eec64ce2d96e2e28c530e574f0e4f712380000000001449393400000000000ad9b7fffffff80000000067750c4f0000000067750c4f000000001490993a000000000009be7a0b737e7cdef7796ffdf4dbec1df51f0b87590b4e559f3fdce51387d4e9d71f609be7293b484272d68e518102ab7bd2c2939e00b1fd05c8986a6330abc5d9b8d6571006fde02ff888914bb070beadcdf2b83452d86b900e559fff2666dce1631f336f8797709419873c121cd28180d9200cc099f347754d7bdf4e0a2c8d32e360221e305a671363936c98257fabdfaaae604f2640048cc94b8a3f730de14d471b85c8c9695161d56fa933474add497a5f53ff1500a15f4edb1e9acacc1553655c169c429f64a4a4234f7f6a1aff4555e4587154ceff5f3a4407a93a49da0000000000000000000000000000000000