UNPKG

@settlemint/solidity-token-erc1155

Version:
1 lines 160 kB
{"abi":[{"type":"function","name":"IS_TEST","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"excludeArtifacts","inputs":[],"outputs":[{"name":"excludedArtifacts_","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"excludeContracts","inputs":[],"outputs":[{"name":"excludedContracts_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"excludeSelectors","inputs":[],"outputs":[{"name":"excludedSelectors_","type":"tuple[]","internalType":"struct StdInvariant.FuzzSelector[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"selectors","type":"bytes4[]","internalType":"bytes4[]"}]}],"stateMutability":"view"},{"type":"function","name":"excludeSenders","inputs":[],"outputs":[{"name":"excludedSenders_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"failed","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"genericERC1155","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract GenericERC1155"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"setUp","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"targetArtifactSelectors","inputs":[],"outputs":[{"name":"targetedArtifactSelectors_","type":"tuple[]","internalType":"struct StdInvariant.FuzzArtifactSelector[]","components":[{"name":"artifact","type":"string","internalType":"string"},{"name":"selectors","type":"bytes4[]","internalType":"bytes4[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetArtifacts","inputs":[],"outputs":[{"name":"targetedArtifacts_","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"targetContracts","inputs":[],"outputs":[{"name":"targetedContracts_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"targetInterfaces","inputs":[],"outputs":[{"name":"targetedInterfaces_","type":"tuple[]","internalType":"struct StdInvariant.FuzzInterface[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"artifacts","type":"string[]","internalType":"string[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetSelectors","inputs":[],"outputs":[{"name":"targetedSelectors_","type":"tuple[]","internalType":"struct StdInvariant.FuzzSelector[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"selectors","type":"bytes4[]","internalType":"bytes4[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetSenders","inputs":[],"outputs":[{"name":"targetedSenders_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"testBurn","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testBurnBatch","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testExists","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testInitialState","inputs":[],"outputs":[],"stateMutability":"view"},{"type":"function","name":"testMint","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testMintBatch","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testMintBatchNotOwner","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testMintNotOwner","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testPause","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testPauseNotOwner","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testSetURI","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testSetURINotOwner","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testSupply","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testTransferWhenPaused","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testUnpause","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"testUnpauseNotOwner","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"user1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"user2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"event","name":"log","inputs":[{"name":"","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_address","inputs":[{"name":"","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"uint256[]","indexed":false,"internalType":"uint256[]"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"int256[]","indexed":false,"internalType":"int256[]"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"log_bytes","inputs":[{"name":"","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"log_bytes32","inputs":[{"name":"","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"log_int","inputs":[{"name":"","type":"int256","indexed":false,"internalType":"int256"}],"anonymous":false},{"type":"event","name":"log_named_address","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256[]","indexed":false,"internalType":"uint256[]"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256[]","indexed":false,"internalType":"int256[]"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"log_named_bytes","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"log_named_bytes32","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"log_named_decimal_int","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256","indexed":false,"internalType":"int256"},{"name":"decimals","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_named_decimal_uint","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"decimals","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_named_int","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256","indexed":false,"internalType":"int256"}],"anonymous":false},{"type":"event","name":"log_named_string","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_named_uint","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_string","inputs":[{"name":"","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_uint","inputs":[{"name":"","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"logs","inputs":[{"name":"","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false}],"bytecode":{"object":"0x60808060405234602f57600160ff19600c541617600c55600160ff19601f541617601f556152ff90816100348239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f905f3560e01c9081630a9254e41461270b575080631ed7831c1461268e578063240dd6b0146123c35780632ade3880146121cf5780632d28268b146120735780632f732b4d14611ea35780633e5e3c2314611e255780633f7286f414611da7578063434cf50914611d7d5780635e109c9a14611bd757806366d9a9a014611a9a578063791dc2d81461180057806385226c811461177657806385c95e8c1461161e578063893870f0146114a65780638da5cb5b14611480578063916a17c6146113d65780639642ddaf146112b35780639bf35597146111b3578063ac1717b01461118c578063b0464fdc146110e2578063b2c9d7cd14610f2b578063b5508aa914610ea1578063b7459e1714610cc1578063b9edb1af14610c9a578063ba414fa614610c75578063c4da228614610ab8578063c9402ebb1461076f578063e13aba48146104fb578063e20c9f711461046d578063e6b718ca14610312578063f5528d9f146101ae5763fa7626d414610189575f80fd5b346101ab57806003193601126101ab57602060ff601f54166040519015158152f35b80fd5b50346101ab57806003193601126101ab57604080516101cd8282612a45565b601a81527f68747470733a2f2f6578616d706c652e636f6d2f746f6b656e2f0000000000006020820152826001600160a01b03601f5460081c16803b1561030e5781845180927f02fe53050000000000000000000000000000000000000000000000000000000082526020600483015281838161024d602482018a61287d565b03925af18015610304576102eb575b506024906001600160a01b03601f5460081c168451928380927f0e89341c0000000000000000000000000000000000000000000000000000000082528460048301525afa9081156102de576102b9935084916102bc575b50613264565b80f35b6102d891503d8086833e6102d08183612a45565b810190612f1f565b5f6102b3565b50505051903d90823e3d90fd5b816102f591612a45565b61030057825f61025c565b8280fd5b84513d84823e3d90fd5b5080fd5b50346101ab57806003193601126101ab57806001600160a01b03601f5460081c166001600160a01b036021541690803b15610469576040517f731133e90000000000000000000000000000000000000000000000000000000081526001600160a01b03929092166004830152600160248301526064604483018190526080908301525f60848301528290829060a490829084905af1801561044957610454575b5050602460206001600160a01b03601f5460081c16604051928380927fbd85b039000000000000000000000000000000000000000000000000000000008252600160048301525afa8015610449578290610411575b6102b99150613177565b506020813d602011610441575b8161042b60209383612a45565b8101031261043d576102b99051610407565b5f80fd5b3d915061041e565b6040513d84823e3d90fd5b8161045e91612a45565b6101ab57805f6103b2565b5050fd5b50346101ab57806003193601126101ab5760405180916020601554928381520191601582527f55f448fdea98c4d29eb340757ef0a66cd03dbb9538908a6a81d96026b71ec475915b8181106104dc576104d8856104cc81870382612a45565b6040519182918261283b565b0390f35b82546001600160a01b03168452602090930192600192830192016104b5565b50346101ab57806003193601126101ab57806001600160a01b03601f5460081c166001600160a01b036021541690803b15610469576040517f731133e90000000000000000000000000000000000000000000000000000000081526001600160a01b03929092166004830152600160248301526064604483018190526080908301525f60848301528290829060a490829084905af180156104495761075a575b506001600160a01b0360215416737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561075757604051907fca669fa70000000000000000000000000000000000000000000000000000000082526004820152818160248183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1801561044957610742575b506001600160a01b03601f5460081c166001600160a01b0360215416813b156104695782916064839260405194859384927ff5298aca0000000000000000000000000000000000000000000000000000000084526004840152600160248401528360448401525af180156104495761072d575b50506001600160a01b03601f5460081c1660206001600160a01b03602154166044604051809481937efdd58e0000000000000000000000000000000000000000000000000000000083526004830152600160248301525afa80156104495782906106f9575b6102b991506131ee565b506020813d602011610725575b8161071360209383612a45565b8101031261043d576102b990516106ef565b3d9150610706565b8161073791612a45565b6101ab57805f61068a565b8161074c91612a45565b6101ab57805f610617565b50fd5b8161076491612a45565b6101ab57805f61059b565b50346101ab57806003193601126101ab578060405161078f606082612a45565b600281526040908136602083013760016107a882612ed5565b5260026107b482612f0f565b52604051916107c4606084612a45565b6002835236602084013760646107d983612ed5565b5260c86107e583612f0f565b526001600160a01b03601f5460081c166001600160a01b036021541690803b15610a8557838591848361084895604051968795869485937f1f7fdffa00000000000000000000000000000000000000000000000000000000855260048501612bec565b03925af1908115610a65578491610aa3575b50506001600160a01b0360215416737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610a9e57604051907fca669fa70000000000000000000000000000000000000000000000000000000082526004820152838160248183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1908115610a65578491610a89575b50506001600160a01b03601f5460081c166001600160a01b036021541690803b15610a855784928361094c9361095e604051978896879586947f6b20c4540000000000000000000000000000000000000000000000000000000086526004860152606060248601526064850190612bb9565b90600319848303016044850152612bb9565b03925af1801561044957610a70575b50506001600160a01b03601f5460081c166001600160a01b0360215416604051907efdd58e00000000000000000000000000000000000000000000000000000000825280600483015260016024830152602082604481865afa918215610a65578492610a2f575b506109e06020926131ee565b6044604051809481937efdd58e0000000000000000000000000000000000000000000000000000000083526004830152600260248301525afa80156104495782906106f9576102b991506131ee565b91506020823d602011610a5d575b81610a4a60209383612a45565b8101031261043d579051906109e06109d4565b3d9150610a3d565b6040513d86823e3d90fd5b81610a7a91612a45565b6101ab57805f61096d565b8480fd5b81610a9391612a45565b61046957825f6108da565b505050fd5b81610aad91612a45565b61046957825f61085a565b50346101ab57806003193601126101ab57806001600160a01b0360215416737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561075757604051907fca669fa70000000000000000000000000000000000000000000000000000000082526004820152818160248183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1801561044957610c60575b5050737109709ecfa91a80626ff3989d68f67f5b1dd12d3b156101ab57806040517ff4844814000000000000000000000000000000000000000000000000000000008152818160048183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1801561044957610c4b575b506001600160a01b03601f5460081c16803b15610757578180916064604051809481937f02fe530500000000000000000000000000000000000000000000000000000000835260206004840152601a60248401527f68747470733a2f2f6578616d706c652e636f6d2f746f6b656e2f00000000000060448401525af1801561044957610c3a5750f35b81610c4491612a45565b6101ab5780f35b81610c5591612a45565b6101ab57805f610bb1565b81610c6a91612a45565b6101ab57805f610b45565b50346101ab57806003193601126101ab576020610c90612fb0565b6040519015158152f35b50346101ab57806003193601126101ab5760206001600160a01b0360225416604051908152f35b50346101ab57806003193601126101ab57806001600160a01b03601f5460081c16803b15610757578180916004604051809481937f8456cb590000000000000000000000000000000000000000000000000000000083525af1801561044957610e8c575b506001600160a01b0360215416737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561075757604051907fca669fa70000000000000000000000000000000000000000000000000000000082526004820152818160248183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1801561044957610e77575b5050737109709ecfa91a80626ff3989d68f67f5b1dd12d3b156101ab57806040517ff4844814000000000000000000000000000000000000000000000000000000008152818160048183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1801561044957610e62575b506001600160a01b03601f5460081c16803b15610757578180916004604051809481937f3f4ba83a0000000000000000000000000000000000000000000000000000000083525af1801561044957610c3a5750f35b81610e6c91612a45565b6101ab57805f610e0d565b81610e8191612a45565b6101ab57805f610da1565b81610e9691612a45565b6101ab57805f610d25565b50346101ab57806003193601126101ab57601954610ebe81612a86565b91610ecc6040519384612a45565b818352601981527f944998273e477b495144fb8794c914197f3ccb46be2900f4698fd0ef743c9695602084015b838310610f0e57604051806104d88782612915565b600160208192610f1d85612a9e565b815201920192019190610ef9565b50346101ab57806003193601126101ab576001600160a01b03601f5460081c16816040517f8da5cb5b000000000000000000000000000000000000000000000000000000008152602081600481865afa9081156104495782916110a0575b506001600160a01b0360205416737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610300576001600160a01b03604051927f515361f600000000000000000000000000000000000000000000000000000000845216600483015260248201528181604481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa80156104495761108b575b50602491604051928380927f0e89341c0000000000000000000000000000000000000000000000000000000082528460048301525afa8015610449576102b9918391611071575b5060405190611069602083612a45565b838252613264565b61108591503d8085833e6102d08183612a45565b5f611059565b611096828092612a45565b6101ab575f611012565b90506020813d6020116110da575b816110bb60209383612a45565b8101031261030e57516001600160a01b038116810361030e575f610f89565b3d91506110ae565b50346101ab57806003193601126101ab57601c546110ff81612a86565b9161110d6040519384612a45565b818352601c81527f0e4562a10381dec21b205ed72637e6b1b523bdd0e4d4d50af5cd23dd4500a211602084015b83831061114f57604051806104d88782612992565b6002602060019260405161116281612a29565b6001600160a01b03865416815261117a858701612c31565b8382015281520192019201919061113a565b50346101ab57806003193601126101ab5760206001600160a01b0360215416604051908152f35b50346101ab57806003193601126101ab57806001600160a01b03601f5460081c16803b15610757578180916004604051809481937f8456cb590000000000000000000000000000000000000000000000000000000083525af180156104495761129e575b5050600460206001600160a01b03601f5460081c16604051928380927f5c975abb0000000000000000000000000000000000000000000000000000000082525afa8015610449576102b991839161126f575b50613105565b611291915060203d602011611297575b6112898183612a45565b810190612ba1565b5f611269565b503d61127f565b816112a891612a45565b6101ab57805f611217565b50346101ab57806003193601126101ab57806001600160a01b03601f5460081c166001600160a01b036021541690803b15610469576040517f731133e90000000000000000000000000000000000000000000000000000000081526001600160a01b03929092166004830152600160248301526064604483018190526080908301525f60848301528290829060a490829084905af18015610449576113c1575b50506001600160a01b03601f5460081c1660206001600160a01b03602154166044604051809481937efdd58e0000000000000000000000000000000000000000000000000000000083526004830152600160248301525afa8015610449578290610411576102b99150613177565b816113cb91612a45565b6101ab57805f611353565b50346101ab57806003193601126101ab57601d546113f381612a86565b916114016040519384612a45565b818352601d81527f6d4407e7be21f808e6509aa9fa9143369579dd7d760fe20a2c09680fc146134f602084015b83831061144357604051806104d88782612992565b6002602060019260405161145681612a29565b6001600160a01b03865416815261146e858701612c31565b8382015281520192019201919061142e565b50346101ab57806003193601126101ab5760206001600160a01b03815416604051908152f35b50346101ab57806003193601126101ab57806001600160a01b0360215416737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561075757604051907fca669fa70000000000000000000000000000000000000000000000000000000082526004820152818160248183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1801561044957611609575b5050737109709ecfa91a80626ff3989d68f67f5b1dd12d3b156101ab57806040517ff4844814000000000000000000000000000000000000000000000000000000008152818160048183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af18015610449576115f4575b506001600160a01b03601f5460081c16803b15610757578180916004604051809481937f8456cb590000000000000000000000000000000000000000000000000000000083525af1801561044957610c3a5750f35b816115fe91612a45565b6101ab57805f61159f565b8161161391612a45565b6101ab57805f611533565b50346101ab57806003193601126101ab57806001600160a01b03601f5460081c16803b15610757578180916004604051809481937f8456cb590000000000000000000000000000000000000000000000000000000083525af1801561044957611761575b506001600160a01b03601f5460081c16803b15610757578180916004604051809481937f3f4ba83a0000000000000000000000000000000000000000000000000000000083525af180156104495761174c575b5050600460206001600160a01b03601f5460081c16604051928380927f5c975abb0000000000000000000000000000000000000000000000000000000082525afa8015610449576102b991839161172d575b50613089565b611746915060203d602011611297576112898183612a45565b5f611727565b8161175691612a45565b6101ab57805f6116d5565b8161176b91612a45565b6101ab57805f611682565b50346101ab57806003193601126101ab57601a5461179381612a86565b916117a16040519384612a45565b818352601a81527f057c384a7d1c54f3a1b2e5e67b2617b8224fdfd1ea7234eea573a6ff665ff63e602084015b8383106117e357604051806104d88782612915565b6001602081926117f285612a9e565b8152019201920191906117ce565b50346101ab57806003193601126101ab5780604051611820606082612a45565b60028152604080366020840137600161183883612ed5565b52600261184483612f0f565b5260405190611854606083612a45565b60028252366020830137606461186982612ed5565b5260c861187582612f0f565b526001600160a01b03601f5460081c16906001600160a01b036021541691803b15610a85576118d793858094604051968795869485937f1f7fdffa00000000000000000000000000000000000000000000000000000000855260048501612bec565b03925af1801561044957611a85575b506001600160a01b03601f5460081c166001600160a01b03602154166040517efdd58e00000000000000000000000000000000000000000000000000000000815281600482015260016024820152602081604481865afa908115610a65578491611a4c575b5090611958602092613177565b6044604051809481937efdd58e0000000000000000000000000000000000000000000000000000000083526004830152600260248301525afa908115610449578291611a17575b50737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561075757604051907f98296c54000000000000000000000000000000000000000000000000000000008252600482015260c860248201528181604481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa801561044957610c3a5750f35b9150506020813d602011611a44575b81611a3360209383612a45565b8101031261043d578190515f61199f565b3d9150611a26565b919350506020813d602011611a7d575b81611a6960209383612a45565b8101031261043d575183929061195861194b565b3d9150611a5c565b81611a8f91612a45565b6101ab57805f6118e6565b50346101ab57806003193601126101ab57601b54611ab781612a86565b611ac46040519182612a45565b818152601b83526020810191837f3ad8aa4f87544323a9d1e5dd902f40c356527a7955687113db5f9a85ad579dc1845b838310611b9c57868587604051928392602084019060208552518091526040840160408260051b8601019392905b828210611b3157505050500390f35b91936020611b8c827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0600195979984950301865288519083611b7c835160408452604084019061287d565b92015190848184039101526128c0565b9601920192018594939192611b22565b60026020600192604051611baf81612a29565b611bb886612a9e565b8152611bc5858701612c31565b83820152815201920192019190611af4565b50346101ab57806003193601126101ab57806001600160a01b0360215416737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561075757604051907fca669fa70000000000000000000000000000000000000000000000000000000082526004820152818160248183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1801561044957611d68575b5050737109709ecfa91a80626ff3989d68f67f5b1dd12d3b156101ab57806040517ff4844814000000000000000000000000000000000000000000000000000000008152818160048183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1801561044957611d53575b506001600160a01b03601f5460081c166001600160a01b0360225416813b1561046957829160a4839260405194859384927f731133e900000000000000000000000000000000000000000000000000000000845260048401526001602484015260646044840152608060648401528160848401525af1801561044957610c3a5750f35b81611d5d91612a45565b6101ab57805f611cd0565b81611d7291612a45565b6101ab57805f611c64565b50346101ab57806003193601126101ab5760206001600160a01b03601f5460081c16604051908152f35b50346101ab57806003193601126101ab5760405180916020601754928381520191601782527fc624b66cc0138b8fabc209247f72d758e1cf3343756d543badbf24212bed8c15915b818110611e06576104d8856104cc81870382612a45565b82546001600160a01b0316845260209093019260019283019201611def565b50346101ab57806003193601126101ab5760405180916020601854928381520191601882527fb13d2d76d1f4b7be834882e410b3e3a8afaf69f83600ae24db354391d2378d2e915b818110611e84576104d8856104cc81870382612a45565b82546001600160a01b0316845260209093019260019283019201611e6d565b50346101ab57806003193601126101ab5780604051611ec3606082612a45565b6002815260408036602084013760405190611edf606083612a45565b600282523660208301376001600160a01b0360215416737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610a9e57604051907fca669fa70000000000000000000000000000000000000000000000000000000082526004820152838160248183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1908115610a6557849161205e575b5050737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610469576040517ff4844814000000000000000000000000000000000000000000000000000000008152838160048183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1908115610a65578491612049575b50506001600160a01b03601f5460081c16906001600160a01b036022541691803b15610a855761203893858094604051968795869485937f1f7fdffa00000000000000000000000000000000000000000000000000000000855260048501612bec565b03925af1801561044957610c3a5750f35b8161205391612a45565b61046957825f611fd5565b8161206891612a45565b61046957825f611f67565b50346101ab57806003193601126101ab57806001600160a01b03601f5460081c166040517f4f558e7900000000000000000000000000000000000000000000000000000000815260016004820152602081602481855afa80156121c4576120e091849161172d5750613089565b6001600160a01b0360215416813b1561046957829160a4839260405194859384927f731133e900000000000000000000000000000000000000000000000000000000845260048401526001602484015260016044840152608060648401528160848401525af18015610449576121af575b5050602460206001600160a01b03601f5460081c16604051928380927f4f558e79000000000000000000000000000000000000000000000000000000008252600160048301525afa8015610449576102b991839161126f5750613105565b816121b991612a45565b6101ab57805f612151565b6040513d85823e3d90fd5b50346101ab57806003193601126101ab57601e546121ec81612a86565b6121f96040519182612a45565b818152601e83526020810191837f50bb669a95c7b50b7e8a6f09454034b2b14cf2b85c730dca9a539ca82cb6e350845b83831061233a5786858760405192839260208401906020855251809152604084019160408260051b8601019392815b8383106122655786860387f35b9193957fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0908692949603018352855190602060408201926001600160a01b0381511683520151916040602083015282518091526060820190602060608260051b850101940192855b8281106122f157505050505060208060019297019301930190928695949293612258565b909192939460208061232d837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa08760019603018952895161287d565b97019501939291016122cd565b60405161234681612a29565b6001600160a01b03835416815260018301805461236281612a86565b916123706040519384612a45565b8183528a526020808b20908b9084015b8382106123a6575050505060019282602092836002950152815201920192019190612229565b6001602081926123b586612a9e565b815201930191019091612380565b503461043d575f60031936011261043d576001600160a01b03601f5460081c166001600160a01b036021541690803b1561043d576040517f731133e90000000000000000000000000000000000000000000000000000000081526001600160a01b03929092166004830152600160248301526064604483018190526080908301525f6084830181905290829060a490829084905af1801561268357612670575b50806001600160a01b03601f5460081c16803b15610757578180916004604051809481937f8456cb590000000000000000000000000000000000000000000000000000000083525af180156104495761265b575b506001600160a01b0360215416737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561075757604051907fca669fa70000000000000000000000000000000000000000000000000000000082526004820152818160248183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1801561044957612646575b5050737109709ecfa91a80626ff3989d68f67f5b1dd12d3b156101ab57806040517ff4844814000000000000000000000000000000000000000000000000000000008152818160048183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af1801561044957612631575b506001600160a01b03601f5460081c166001600160a01b03602154166001600160a01b0360225416823b15610a9e5760c484928360405195869485937ff242432a000000000000000000000000000000000000000000000000000000008552600485015260248401526001604484015260648084015260a060848401528160a48401525af1801561044957610c3a5750f35b8161263b91612a45565b6101ab57805f61259f565b8161265091612a45565b6101ab57805f612533565b8161266591612a45565b6101ab57805f6124b7565b61267c91505f90612a45565b5f5f612463565b6040513d5f823e3d90fd5b3461043d575f60031936011261043d5760405180602060165491828152019060165f527fd833147d7dc355ba459fc788f669e58cfaf9dc25ddcd0702e87d69c7b5124289905f5b8181106126ec576104d8856104cc81870382612a45565b82546001600160a01b03168452602090930192600192830192016126d5565b3461043d575f60031936011261043d57307fffffffffffffffffffffffff0000000000000000000000000000000000000000602054161760205560017fffffffffffffffffffffffff0000000000000000000000000000000000000000602154161760215560027fffffffffffffffffffffffff00000000000000000000000000000000000000006022541617602255611fce80820182811067ffffffffffffffff82111761280e5782916132fc833903905ff08015612683577fffffffffffffffffffffff0000000000000000000000000000000000000000ff74ffffffffffffffffffffffffffffffffffffffff00601f549260081b16911617601f555f80f35b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b60206040818301928281528451809452019201905f5b81811061285e5750505090565b82516001600160a01b0316845260209384019390920191600101612851565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b90602080835192838152019201905f5b8181106128dd5750505090565b82517fffffffff00000000000000000000000000000000000000000000000000000000168452602093840193909201916001016128d0565b602081016020825282518091526040820191602060408360051b8301019401925f915b83831061294757505050505090565b9091929394602080612983837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc08660019603018752895161287d565b97019301930191939290612938565b602081016020825282518091526040820191602060408360051b8301019401925f915b8383106129c457505050505090565b9091929394602080612a1a837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc086600196030187526040838b516001600160a01b038151168452015191818582015201906128c0565b970193019301919392906129b5565b6040810190811067ffffffffffffffff82111761280e57604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761280e57604052565b67ffffffffffffffff811161280e5760051b60200190565b90604051915f8154908160011c9260018316928315612b97575b602085108414612b6a578487528693908115612b2a5750600114612ae6575b50612ae492500383612a45565b565b90505f9291925260205f20905f915b818310612b0e575050906020612ae4928201015f612ad7565b6020919350806001915483858901015201910190918492612af5565b60209350612ae49592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f612ad7565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b93607f1693612ab8565b9081602091031261043d5751801515810361043d5790565b90602080835192838152019201905f5b818110612bd65750505090565b8251845260209384019390920191600101612bc9565b9192612c136020946001600160a01b03612c21941685526080868601526080850190612bb9565b908382036040850152612bb9565b9060608183039101525f81520190565b90604051918281549182825260208201905f5260205f20925f905b806007830110612e4857612ae4945491818110612e12575b818110612ddc575b818110612da6575b818110612d70575b818110612d3a575b818110612d04575b818110612ccf575b10612ca2575b500383612a45565b7fffffffff000000000000000000000000000000000000000000000000000000001681526020015f612c9a565b9260206001917fffffffff0000000000000000000000000000000000000000000000000000000085831b168152019301612c94565b9260206001917fffffffff000000000000000000000000000000000000000000000000000000008560401b168152019301612c8c565b9260206001917fffffffff000000000000000000000000000000000000000000000000000000008560601b168152019301612c84565b9260206001917fffffffff000000000000000000000000000000000000000000000000000000008560801b168152019301612c7c565b9260206001917fffffffff000000000000000000000000000000000000000000000000000000008560a01b168152019301612c74565b9260206001917fffffffff000000000000000000000000000000000000000000000000000000008560c01b168152019301612c6c565b9260206001917fffffffff000000000000000000000000000000000000000000000000000000008560e01b168152019301612c64565b9160089193506101006001917fffffffff000000000000000000000000000000000000000000000000000000008754818160e01b168352818160c01b166020840152818160a01b166040840152818160801b166060840152818160601b166080840152818160401b1660a0840152818160201b1660c08401521660e0820152019401920185929391612c4c565b805115612ee25760200190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b805160011015612ee25760400190565b60208183031261043d5780519067ffffffffffffffff821161043d570181601f8201121561043d5780519067ffffffffffffffff821161280e5760405192612f8f601f84017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200185612a45565b8284526020838301011161043d57815f9260208093018386015e8301015290565b60085460ff168015612fbf5790565b506040517f667f9d70000000000000000000000000000000000000000000000000000000008152737109709ecfa91a80626ff3989d68f67f5b1dd12d60048201527f6661696c656400000000000000000000000000000000000000000000000000006024820152602081604481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa908115612683575f91613057575b50151590565b90506020813d602011613081575b8161307260209383612a45565b8101031261043d57515f613051565b3d9150613065565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561043d57604051907fa5982885000000000000000000000000000000000000000000000000000000008252151560048201525f81602481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa8015612683576130fb5750565b5f612ae491612a45565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561043d57604051907f0c9fd581000000000000000000000000000000000000000000000000000000008252151560048201525f81602481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa8015612683576130fb5750565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561043d57604051907f98296c540000000000000000000000000000000000000000000000000000000082526004820152606460248201525f81604481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa8015612683576130fb5750565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561043d57604051907f98296c5400000000000000000000000000000000000000000000000000000000825260048201525f60248201525f81604481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa8015612683576130fb5750565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561043d576132c35f916132d560405194859384937ff320d96300000000000000000000000000000000000000000000000000000000855260406004860152604485019061287d565b9060031984830301602485015261287d565b0381737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa8015612683576130fb575056fe6080346101365760208101906001600160401b03821181831017610122575f9160405252600254600181811c91168015610118575b602082101461010457601f81116100bc575b505f60025533156100a95760035460405190336001600160a01b0382167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a36001600160a81b0319163360ff60a01b191617600355611e93908161013b8239f35b631e4fbdf760e01b5f525f60045260245ffd5b60025f52601f0160051c7f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace908101905b8181106100f95750610046565b5f81556001016100ec565b634e487b7160e01b5f52602260045260245ffd5b90607f1690610034565b634e487b7160e01b5f52604160045260245ffd5b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c8062fdd58e1461017357806301ffc9a71461016e57806302fe5305146101695780630e89341c1461016457806318160ddd1461015f5780631f7fdffa1461015a5780632eb2c2d6146101555780633f4ba83a146101505780634e1273f41461014b5780634f558e79146101465780635c975abb146101415780636b20c4541461013c578063715018a614610137578063731133e9146101325780638456cb591461012d5780638da5cb5b14610128578063a22cb46514610123578063bd85b0391461011e578063e985e9c514610119578063f242432a14610114578063f2fde38b1461010f5763f5298aca1461010a575f80fd5b61117a565b6110aa565b610fa9565b610f31565b610f07565b610dfa565b610dc7565b610d3c565b610ca6565b610c28565b610af0565b610acb565b610a9f565b6109de565b6108fa565b61086d565b610798565b6106eb565b6105f2565b610418565b610263565b6101e3565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361019b57565b5f80fd5b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361019b57565b359073ffffffffffffffffffffffffffffffffffffffff8216820361019b57565b3461019b57604060031936011261019b576020610230610201610178565b6024355f525f835260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b54604051908152f35b7fffffffff0000000000000000000000000000000000000000000000000000000081160361019b57565b3461019b57602060031936011261019b5760207fffffffff000000000000000000000000000000000000000000000000000000006004356102a381610239565b167fd9b67a2600000000000000000000000000000000000000000000000000000000811490811561030b575b81156102e1575b506040519015158152f35b7f01ffc9a7000000000000000000000000000000000000000000000000000000009150145f6102d6565b7f0e89341c00000000000000000000000000000000000000000000000000000000811491506102cf565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176103a357604052565b610335565b67ffffffffffffffff81116103a357601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926103ee826103a8565b916103fc6040519384610362565b82948184528183011161019b578281602093845f960137010152565b3461019b57602060031936011261019b5760043567ffffffffffffffff811161019b573660238201121561019b5761045a9036906024816004013591016103e2565b610462611462565b805167ffffffffffffffff81116103a35761048781610482600254611272565b6114af565b602091601f82116001146104e3576104d3925f91836104d8575b50507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8260011b9260031b1c19161790565b600255005b015190505f806104a1565b60025f527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08216927f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace915f5b8581106105835750836001951061054c575b505050811b01600255005b01517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88460031b161c191690555f8080610541565b9192602060018192868501518155019401920161052f565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b9060206105ef92818152019061059b565b90565b3461019b57602060031936011261019b576040515f60025461061381611272565b80845290600181169081156106a9575060011461064b575b6106478361063b81850382610362565b604051918291826105de565b0390f35b91905060025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace915f905b80821061068f5750909150810160200161063b61062b565b919260018160209254838588010152019101909291610677565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660208086019190915291151560051b8401909101915061063b905061062b565b3461019b575f60031936011261019b576020600554604051908152f35b67ffffffffffffffff81116103a35760051b60200190565b9080601f8301121561019b57813561073781610708565b926107456040519485610362565b81845260208085019260051b82010192831161019b57602001905b82821061076d5750505090565b8135815260209182019101610760565b9080601f8301121561019b578160206105ef933591016103e2565b3461019b57608060031936011261019b576107b1610178565b60243567ffffffffffffffff811161019b576107d1903690600401610720565b60443567ffffffffffffffff811161019b576107f1903690600401610720565b60643567ffffffffffffffff811161019b5761081190369060040161077d565b9161081a611462565b73ffffffffffffffffffffffffffffffffffffffff8416156108415761083f936115e9565b005b7f57f447ce000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b3461019b5760a060031936011261019b57610886610178565b61088e61019f565b9060443567ffffffffffffffff811161019b576108af903690600401610720565b60643567ffffffffffffffff811161019b576108cf903690600401610720565b906084359367ffffffffffffffff851161019b576108f461083f95369060040161077d565b936112c3565b3461019b575f60031936011261019b57610912611462565b60035460ff8160a01c1615610972577fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff166003557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b7f8dfc202b000000000000000000000000000000000000000000000000000000005f5260045ffd5b90602080835192838152019201905f5b8181106109b75750505090565b82518452602093840193909201916001016109aa565b9060206105ef92818152019061099a565b3461019b57604060031936011261019b5760043567ffffffffffffffff811161019b573660238201121561019b57806004013590610a1b82610708565b91610a296040519384610362565b8083526024602084019160051b8301019136831161019b57602401905b828210610a87578360243567ffffffffffffffff811161019b5761064791610a75610a7b923690600401610720565b90611397565b604051918291826109cd565b60208091610a94846101c2565b815201910190610a46565b3461019b57602060031936011261019b576004355f526004602052602060405f20541515604051908152f35b3461019b575f60031936011261019b57602060ff60035460a01c166040519015158152f35b3461019b57606060031936011261019b57610b09610178565b60243567ffffffffffffffff811161019b57610b29903690600401610720565b9060443567ffffffffffffffff811161019b57610b4a903690600401610720565b73ffffffffffffffffffffffffffffffffffffffff82163381141580610bea575b610bbb5715610b8f5761083f9260405192610b87602085610362565b5f84526114ff565b7f01a83514000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b7fe237d922000000000000000000000000000000000000000000000000000000005f523360045260245260445ffd5b50805f52600160205260ff610c203360405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b541615610b6b565b3461019b575f60031936011261019b57610c40611462565b5f73ffffffffffffffffffffffffffffffffffffffff6003547fffffffffffffffffffffffff00000000000000000000000000000000000000008116600355167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b3461019b57608060031936011261019b57610cbf610178565b6024356044359160643567ffffffffffffffff811161019b57610ce690369060040161077d565b91610cef611462565b73ffffffffffffffffffffffffffffffffffffffff8216156108415761083f93610d3660405192600184526020840152604083019160018352606084015260808301604052565b916115e9565b3461019b575f60031936011261019b57610d54611462565b610d5c611855565b740100000000000000000000000000000000000000007fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff60035416176003557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b3461019b575f60031936011261019b57602073ffffffffffffffffffffffffffffffffffffffff60035416604051908152f35b3461019b57604060031936011261019b57610e13610178565b60243580151580820361019b5773ffffffffffffffffffffffffffffffffffffffff8316928315610edb57610e7190335f52600160205260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b9060ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0083541691161790557f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160405180610ed6339482919091602081019215159052565b0390a3005b7fced3e100000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b3461019b57602060031936011261019b576004355f526004602052602060405f2054604051908152f35b3461019b57604060031936011261019b57602060ff610f9d610f51610178565b73ffffffffffffffffffffffffffffffffffffffff610f6e61019f565b91165f526001845260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b54166040519015158152f35b3461019b5760a060031936011261019b57610fc2610178565b610fca61019f565b604435906064359260843567ffffffffffffffff811161019b57610ff290369060040161077d565b9273ffffffffffffffffffffffffffffffffffffffff8216338114158061106c575b610bbb5773ffffffffffffffffffffffffffffffffffffffff8416156108415715610b8f5761083f9461106460405192600184526020840152604083019160018352606084015260808301604052565b92909161170d565b50805f52600160205260ff6110a23360405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b541615611014565b3461019b57602060031936011261019b5773ffffffffffffffffffffffffffffffffffffffff6110d8610178565b6110e0611462565b16801561114e5773ffffffffffffffffffffffffffffffffffffffff600354827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600355167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b7f1e4fbdf7000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b3461019b57606060031936011261019b57611193610178565b6044359060243573ffffffffffffffffffffffffffffffffffffffff821633811415806111ff575b610bbb5715610b8f5761083f926111ef60405192600184526020840152604083019160018352606084015260808301604052565b9060405192610b87602085610362565b50805f52600160205260ff6112353360405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b5416156111bb565b61126e915f525f60205260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b5490565b90600182811c921680156112b9575b602083101461128c57565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691611281565b9392919073ffffffffffffffffffffffffffffffffffffffff85163381141580611318575b610bbb5773ffffffffffffffffffffffffffffffffffffffff8216156108415715610b8f576113169461170d565b565b50805f52600160205260ff61134e3360405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b5416156112e8565b805182101561136a5760209160051b010190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b919091805183518082036114345750508051907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe06113ed6113d784610708565b936113e56040519586610362565b808552610708565b013660208401375f5b815181101561142d578061141c60019260051b602080828701015191890101519061123d565b6114268286611356565b52016113f6565b5090925050565b7f5b059991000000000000000000000000000000000000000000000000000000005f5260045260245260445ffd5b73ffffffffffffffffffffffffffffffffffffffff60035416330361148357565b7f118cdaa7000000000000000000000000000000000000000000000000000000005f523360045260245ffd5b601f81116114bb575050565b60025f5260205f20906020601f840160051c830193106114f5575b601f0160051c01905b8181106114ea575050565b5f81556001016114df565b90915081906114d6565b73ffffffffffffffffffffffffffffffffffffffff919294935061152585845f84611c36565b161561157f575b5f805b825182101561156d576001908260051b9061155e602080848a01015193870101515f52600460205260405f2090565b8281540390550191019061152f565b91505061131691925060055403600555565b5f805b82518210156115ce576115c66001918360051b906115b4602080848b01015193880101515f52600460205260405f2090565b6115bf838254611bfc565b9055611bfc565b910190611582565b6115e491506115df90600554611bfc565b600555565b61152c565b939190916115f98284875f611c36565b5f94855b84518710156116375761162f6001918860051b906115b4602080848a010151938a0101515f52600460205260405f2090565b9601956115fd565b61164c9195949296506115df90600554611bfc565b73ffffffffffffffffffffffffffffffffffffffff841615806116ae575b15611676575b50505050565b805160010361169e579060208061169595930151910151915f33611b06565b5f808080611670565b6116a9935f3361192b565b611695565b935f9591935f965b85518810156116f4576001908860051b906116e5602080848a010151938a0101515f52600460205260405f2090565b828154039055019701966116b6565b611708919593975095919560055403600555565b61166a565b9193929061171d82868386611c36565b73ffffffffffffffffffffffffffffffffffffffff8316156117fa575b73ffffffffffffffffffffffffffffffffffffffff8116158061179c575b15611765575b5050505050565b845160010361178b576020806117819601519201519233611b06565b5f8080808061175e565b6117979491923361192b565b611781565b94935f939091845b86518610156117e2576001908660051b906117d3602080848a010151938b0101515f52600460205260405f2090565b828154039055019501946117a4565b6117f59193969792955060055403600555565b611758565b93925f92835b855185101561183a576118326001918660051b906115b4602080848a010151938b0101515f52600460205260405f2090565b940193611800565b6118509194506115df9096929596600554611bfc565b61173a565b60ff60035460a01c1661186457565b7fd93c0665000000000000000000000000000000000000000000000000000000005f5260045ffd5b9081602091031261019b57516105ef81610239565b93906105ef959373ffffffffffffffffffffffffffffffffffffffff6118ee94816118e09416885216602087015260a0604087015260a086019061099a565b90848203606086015261099a565b91608081840391015261059b565b3d15611926573d9061190d826103a8565b9161191b6040519384610362565b82523d5f602084013e565b606090565b9091949293853b61193f575b505050505050565b60209361197a9160405196879586957fbc197c81000000000000000000000000000000000000000000000000000000008752600487016118a1565b03815f73ffffffffffffffffffffffffffffffffffffffff87165af15f9181611a94575b506119fe57506119ac6118fc565b80519190826119f7577f57f447ce000000000000000000000000000000000000000000000000000000005f5273ffffffffffffffffffffffffffffffffffffffff821660045260245ffd5b9050602001fd5b7fffffffff000000000000000000000000000000000000000000000000000000007fbc197c8100000000000000000000000000000000000000000000000000000000911603611a5357505f8080808080611937565b7f57f447ce000000000000000000000000000000000000000000000000000000005f5273ffffffffffffffffffffffffffffffffffffffff1660045260245ffd5b611ab791925060203d602011611abe575b611aaf8183610362565b81019061188c565b905f61199e565b503d611aa5565b919273ffffffffffffffffffffffffffffffffffffffff60a094816105ef98979416855216602084015260408301526060820152816080820152019061059b565b9091949293853b611b1957505050505050565b602093611b549160405196879586957ff23a6e6100000000000000000000000000000000000000000000000000000000875260048701611ac5565b03815f73ffffffffffffffffffffffffffffffffffffffff87165af15f9181611bdb575b50611b8657506119ac6118fc565b7fffffffff000000000000000000000000000000000000000000000000000000007ff23a6e61000000000000000000000000000000000000000000000000000