@cartesi/devnet 1.8.0 → 2.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/anvil_state.json +1 -1
- package/deployments/localhost/ApplicationFactory.json +227 -0
- package/deployments/localhost/AuthorityFactory.json +55 -44
- package/deployments/localhost/ERC1155BatchPortal.json +26 -26
- package/deployments/localhost/ERC1155SinglePortal.json +25 -25
- package/deployments/localhost/ERC20Portal.json +35 -23
- package/deployments/localhost/ERC721Portal.json +23 -23
- package/deployments/localhost/EtherPortal.json +21 -21
- package/deployments/localhost/InputBox.json +64 -58
- package/deployments/localhost/QuorumFactory.json +188 -0
- package/deployments/localhost/SafeERC20Transfer.json +118 -0
- package/deployments/localhost/SelfHostedApplicationFactory.json +71 -70
- package/deployments/localhost/TestMultiToken.json +18 -18
- package/deployments/localhost/TestNFT.json +24 -24
- package/deployments/localhost/TestToken.json +28 -28
- package/export/abi/localhost.json +234 -602
- package/export/artifacts/@openzeppelin/contracts/access/manager/IAccessManager.sol/IAccessManager.json +11 -22
- package/export/artifacts/@openzeppelin/contracts/interfaces/IERC4906.sol/IERC4906.json +4 -4
- package/export/artifacts/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors.json +1 -1
- package/export/artifacts/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors.json +1 -1
- package/export/artifacts/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors.json +2 -2
- package/export/artifacts/@openzeppelin/contracts/token/ERC1155/ERC1155.sol/ERC1155.json +1 -1
- package/export/artifacts/@openzeppelin/contracts/token/ERC1155/IERC1155.sol/IERC1155.json +4 -4
- package/export/artifacts/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol/IERC1155Receiver.json +3 -3
- package/export/artifacts/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol/IERC1155MetadataURI.json +4 -4
- package/export/artifacts/@openzeppelin/contracts/token/ERC1155/utils/ERC1155Utils.sol/ERC1155Utils.json +34 -0
- package/export/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.json +2 -2
- package/export/artifacts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.json +1 -1
- package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol/ERC20Burnable.json +1 -1
- package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Pausable.sol/ERC20Pausable.json +2 -2
- package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Permit.sol/ERC20Permit.json +3 -3
- package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.json +1 -1
- package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit.sol/IERC20Permit.json +1 -1
- package/export/artifacts/@openzeppelin/contracts/token/ERC721/ERC721.sol/ERC721.json +2 -2
- package/export/artifacts/@openzeppelin/contracts/token/ERC721/IERC721.sol/IERC721.json +4 -4
- package/export/artifacts/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol/IERC721Receiver.json +2 -2
- package/export/artifacts/@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol/ERC721URIStorage.json +2 -2
- package/export/artifacts/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol/IERC721Metadata.json +3 -3
- package/export/artifacts/@openzeppelin/contracts/token/ERC721/utils/ERC721Utils.sol/ERC721Utils.json +33 -0
- package/export/artifacts/@openzeppelin/contracts/utils/Arrays.sol/Arrays.json +26 -3
- package/export/artifacts/@openzeppelin/contracts/utils/Comparators.sol/Comparators.json +34 -0
- package/export/artifacts/@openzeppelin/contracts/utils/Panic.sol/Panic.json +65 -0
- package/export/artifacts/@openzeppelin/contracts/utils/ShortStrings.sol/ShortStrings.json +2 -2
- package/export/artifacts/@openzeppelin/contracts/utils/SlotDerivation.sol/SlotDerivation.json +42 -0
- package/export/artifacts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.json +4 -3
- package/export/artifacts/@openzeppelin/contracts/utils/Strings.sol/Strings.json +3 -2
- package/export/artifacts/@openzeppelin/contracts/utils/cryptography/ECDSA.sol/ECDSA.json +2 -2
- package/export/artifacts/@openzeppelin/contracts/utils/cryptography/EIP712.sol/EIP712.json +2 -2
- package/export/artifacts/@openzeppelin/contracts/utils/cryptography/MessageHashUtils.sol/MessageHashUtils.json +3 -3
- package/export/artifacts/@openzeppelin/contracts/utils/introspection/ERC165.sol/ERC165.json +1 -1
- package/export/artifacts/@openzeppelin/contracts/utils/introspection/IERC165.sol/IERC165.json +2 -2
- package/export/artifacts/@openzeppelin/contracts/utils/math/Math.sol/Math.json +11 -16
- package/export/artifacts/@openzeppelin/contracts/utils/math/SafeCast.sol/SafeCast.json +4 -3
- package/export/artifacts/@openzeppelin/contracts/utils/math/SignedMath.sol/SignedMath.json +4 -3
- package/export/artifacts/@openzeppelin/contracts/utils/types/Time.sol/Time.json +2 -2
- package/export/artifacts/contracts/TestMultiToken.sol/TestMultiToken.json +3 -3
- package/export/artifacts/contracts/TestNFT.sol/TestNFT.json +4 -4
- package/export/artifacts/contracts/TestToken.sol/TestToken.json +3 -3
- package/package.json +11 -11
- package/deployments/localhost/AuthorityHistoryPairFactory.json +0 -276
- package/deployments/localhost/Bitmask.json +0 -44
- package/deployments/localhost/CartesiDAppFactory.json +0 -231
- package/deployments/localhost/CartesiMathV2.json +0 -213
- package/deployments/localhost/DAppAddressRelay.json +0 -102
- package/deployments/localhost/HistoryFactory.json +0 -177
- package/deployments/localhost/MerkleV2.json +0 -217
- package/deployments/localhost/UnrolledCordic.json +0 -54
|
@@ -716,8 +716,8 @@
|
|
|
716
716
|
"type": "function"
|
|
717
717
|
}
|
|
718
718
|
],
|
|
719
|
-
"bytecode": "0x6101606040523480156200001257600080fd5b50604051620037af380380620037af8339818101604052810190620000389190620007d7565b6040518060400160405280600981526020017f54657374546f6b656e0000000000000000000000000000000000000000000000815250806040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250836040518060400160405280600981526020017f54657374546f6b656e00000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f5445535400000000000000000000000000000000000000000000000000000000815250816003908162000123919062000a83565b50806004908162000135919062000a83565b5050506000600560006101000a81548160ff02191690831515021790555062000164816200025d60201b60201c565b506200017b600683620002da60201b90919060201c565b610120818152505062000199600782620002da60201b90919060201c565b6101408181525050818051906020012060e08181525050808051906020012061010081815250504660a08181525050620001d86200033260201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff168152505050505062000256816200022b6200038f60201b60201c565b600a62000239919062000cfa565b633b9aca006200024a919062000d4b565b6200039860201b60201c565b5062001037565b80600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad81604051620002cf919062000da7565b60405180910390a150565b60006020835110156200030057620002f8836200042560201b60201c565b90506200032c565b8262000312836200049260201b60201c565b600001908162000323919062000a83565b5060ff60001b90505b92915050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60e0516101005146306040516020016200037495949392919062000df0565b60405160208183030381529060405280519060200120905090565b60006012905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036200040d5760006040517fec442f0500000000000000000000000000000000000000000000000000000000815260040162000404919062000da7565b60405180910390fd5b62000421600083836200049c60201b60201c565b5050565b600080829050601f815111156200047557826040517f305a27a90000000000000000000000000000000000000000000000000000000081526004016200046c919062000edc565b60405180910390fd5b805181620004839062000f32565b60001c1760001b915050919050565b6000819050919050565b620004af838383620004b460201b60201c565b505050565b620004c4620004dc60201b60201c565b620004d78383836200052660201b60201c565b505050565b620004ec6200075660201b60201c565b1562000524576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036200057c5780600260008282546200056f919062000fa2565b9250508190555062000652565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156200060b578381836040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401620006029392919062000fdd565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036200069d5780600260008282540392505081905550620006ea565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200074991906200101a565b60405180910390a3505050565b6000600560009054906101000a900460ff16905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200079f8262000772565b9050919050565b620007b18162000792565b8114620007bd57600080fd5b50565b600081519050620007d181620007a6565b92915050565b600060208284031215620007f057620007ef6200076d565b5b60006200080084828501620007c0565b91505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200088b57607f821691505b602082108103620008a157620008a062000843565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200090b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620008cc565b620009178683620008cc565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620009646200095e62000958846200092f565b62000939565b6200092f565b9050919050565b6000819050919050565b620009808362000943565b620009986200098f826200096b565b848454620008d9565b825550505050565b600090565b620009af620009a0565b620009bc81848462000975565b505050565b5b81811015620009e457620009d8600082620009a5565b600181019050620009c2565b5050565b601f82111562000a3357620009fd81620008a7565b62000a0884620008bc565b8101602085101562000a18578190505b62000a3062000a2785620008bc565b830182620009c1565b50505b505050565b600082821c905092915050565b600062000a586000198460080262000a38565b1980831691505092915050565b600062000a73838362000a45565b9150826002028217905092915050565b62000a8e8262000809565b67ffffffffffffffff81111562000aaa5762000aa962000814565b5b62000ab6825462000872565b62000ac3828285620009e8565b600060209050601f83116001811462000afb576000841562000ae6578287015190505b62000af2858262000a65565b86555062000b62565b601f19841662000b0b86620008a7565b60005b8281101562000b355784890151825560018201915060208501945060208101905062000b0e565b8683101562000b55578489015162000b51601f89168262000a45565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000bf85780860481111562000bd05762000bcf62000b6a565b5b600185161562000be05780820291505b808102905062000bf08562000b99565b945062000bb0565b94509492505050565b60008262000c13576001905062000ce6565b8162000c23576000905062000ce6565b816001811462000c3c576002811462000c475762000c7d565b600191505062000ce6565b60ff84111562000c5c5762000c5b62000b6a565b5b8360020a91508482111562000c765762000c7562000b6a565b5b5062000ce6565b5060208310610133831016604e8410600b841016171562000cb75782820a90508381111562000cb15762000cb062000b6a565b5b62000ce6565b62000cc6848484600162000ba6565b9250905081840481111562000ce05762000cdf62000b6a565b5b81810290505b9392505050565b600060ff82169050919050565b600062000d07826200092f565b915062000d148362000ced565b925062000d437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000c01565b905092915050565b600062000d58826200092f565b915062000d65836200092f565b925082820262000d75816200092f565b9150828204841483151762000d8f5762000d8e62000b6a565b5b5092915050565b62000da18162000792565b82525050565b600060208201905062000dbe600083018462000d96565b92915050565b6000819050919050565b62000dd98162000dc4565b82525050565b62000dea816200092f565b82525050565b600060a08201905062000e07600083018862000dce565b62000e16602083018762000dce565b62000e25604083018662000dce565b62000e34606083018562000ddf565b62000e43608083018462000d96565b9695505050505050565b600082825260208201905092915050565b60005b8381101562000e7e57808201518184015260208101905062000e61565b60008484015250505050565b6000601f19601f8301169050919050565b600062000ea88262000809565b62000eb4818562000e4d565b935062000ec681856020860162000e5e565b62000ed18162000e8a565b840191505092915050565b6000602082019050818103600083015262000ef8818462000e9b565b905092915050565b600081519050919050565b6000819050602082019050919050565b600062000f29825162000dc4565b80915050919050565b600062000f3f8262000f00565b8262000f4b8462000f0b565b905062000f588162000f1b565b9250602082101562000f9b5762000f967fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83602003600802620008cc565b831692505b5050919050565b600062000faf826200092f565b915062000fbc836200092f565b925082820190508082111562000fd75762000fd662000b6a565b5b92915050565b600060608201905062000ff4600083018662000d96565b62001003602083018562000ddf565b62001012604083018462000ddf565b949350505050565b600060208201905062001031600083018462000ddf565b92915050565b60805160a05160c05160e05161010051610120516101405161271d62001092600039600061104d015260006110120152600061134d0152600061132c01526000610bfb01526000610c5101526000610c7a015261271d6000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c806379cc6790116100b85780638fb360371161007c5780638fb360371461031e57806395d89b411461033c578063a9059cbb1461035a578063bf7e214f1461038a578063d505accf146103a8578063dd62ed3e146103c457610137565b806379cc6790146102885780637a9e5e4b146102a45780637ecebe00146102c05780638456cb59146102f057806384b0196e146102fa57610137565b80633644e515116100ff5780633644e515146101f65780633f4ba83a1461021457806342966c681461021e5780635c975abb1461023a57806370a082311461025857610137565b806306fdde031461013c578063095ea7b31461015a57806318160ddd1461018a57806323b872dd146101a8578063313ce567146101d8575b600080fd5b6101446103f4565b6040516101519190611c1e565b60405180910390f35b610174600480360381019061016f9190611cd9565b610486565b6040516101819190611d34565b60405180910390f35b6101926104a9565b60405161019f9190611d5e565b60405180910390f35b6101c260048036038101906101bd9190611d79565b6104b3565b6040516101cf9190611d34565b60405180910390f35b6101e06104e2565b6040516101ed9190611de8565b60405180910390f35b6101fe6104eb565b60405161020b9190611e1c565b60405180910390f35b61021c6104fa565b005b61023860048036038101906102339190611e37565b61051c565b005b610242610530565b60405161024f9190611d34565b60405180910390f35b610272600480360381019061026d9190611e64565b610547565b60405161027f9190611d5e565b60405180910390f35b6102a2600480360381019061029d9190611cd9565b61058f565b005b6102be60048036038101906102b99190611e64565b6105af565b005b6102da60048036038101906102d59190611e64565b61069b565b6040516102e79190611d5e565b60405180910390f35b6102f86106ad565b005b6103026106cf565b6040516103159796959493929190611f99565b60405180910390f35b610326610779565b6040516103339190612058565b60405180910390f35b6103446107a7565b6040516103519190611c1e565b60405180910390f35b610374600480360381019061036f9190611cd9565b610839565b6040516103819190611d34565b60405180910390f35b61039261085c565b60405161039f9190612073565b60405180910390f35b6103c260048036038101906103bd91906120e6565b610886565b005b6103de60048036038101906103d99190612188565b6109ce565b6040516103eb9190611d5e565b60405180910390f35b606060038054610403906121f7565b80601f016020809104026020016040519081016040528092919081815260200182805461042f906121f7565b801561047c5780601f106104515761010080835404028352916020019161047c565b820191906000526020600020905b81548152906001019060200180831161045f57829003601f168201915b5050505050905090565b600080610491610a55565b905061049e818585610a5d565b600191505092915050565b6000600254905090565b6000806104be610a55565b90506104cb858285610a6f565b6104d6858585610b03565b60019150509392505050565b60006012905090565b60006104f5610bf7565b905090565b610512610505610a55565b61050d610cae565b610cbb565b61051a610dfd565b565b61052d610527610a55565b82610e60565b50565b6000600560009054906101000a900460ff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6105a18261059b610a55565b83610a6f565b6105ab8282610e60565b5050565b60006105b9610a55565b90506105c361085c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461063257806040517f068ca9d80000000000000000000000000000000000000000000000000000000081526004016106299190612073565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff163b0361068e57816040517fc2f31e5e0000000000000000000000000000000000000000000000000000000081526004016106859190612073565b60405180910390fd5b61069782610ee2565b5050565b60006106a682610f5d565b9050919050565b6106c56106b8610a55565b6106c0610cae565b610cbb565b6106cd610fa6565b565b6000606080600080600060606106e3611009565b6106eb611044565b46306000801b600067ffffffffffffffff81111561070c5761070b612228565b5b60405190808252806020026020018201604052801561073a5781602001602082028036833780820191505090505b507f0f00000000000000000000000000000000000000000000000000000000000000959493929190965096509650965096509650965090919293949596565b6000600560159054906101000a900460ff1661079957600060e01b6107a2565b638fb3603760e01b5b905090565b6060600480546107b6906121f7565b80601f01602080910402602001604051908101604052809291908181526020018280546107e2906121f7565b801561082f5780601f106108045761010080835404028352916020019161082f565b820191906000526020600020905b81548152906001019060200180831161081257829003601f168201915b5050505050905090565b600080610844610a55565b9050610851818585610b03565b600191505092915050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b834211156108cb57836040517f627913020000000000000000000000000000000000000000000000000000000081526004016108c29190611d5e565b60405180910390fd5b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886108fa8c61107f565b8960405160200161091096959493929190612257565b6040516020818303038152906040528051906020012090506000610933826110d6565b90506000610943828787876110f0565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146109b757808a6040517f4b800e460000000000000000000000000000000000000000000000000000000081526004016109ae9291906122b8565b60405180910390fd5b6109c28a8a8a610a5d565b50505050505050505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b610a6a8383836001611120565b505050565b6000610a7b84846109ce565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610afd5781811015610aed578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401610ae4939291906122e1565b60405180910390fd5b610afc84848484036000611120565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b755760006040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610b6c9190612073565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610be75760006040517fec442f05000000000000000000000000000000000000000000000000000000008152600401610bde9190612073565b60405180910390fd5b610bf28383836112f7565b505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015610c7357507f000000000000000000000000000000000000000000000000000000000000000046145b15610ca0577f00000000000000000000000000000000000000000000000000000000000000009050610cab565b610ca8611307565b90505b90565b3660008036915091509091565b600080610cef610cc961085c565b86308787600090600492610cdf93929190612322565b90610cea9190612375565b61139d565b9150915081610df65760008163ffffffff161115610db8576001600560156101000a81548160ff021916908315150217905550610d2a61085c565b73ffffffffffffffffffffffffffffffffffffffff166394c7d7ee8686866040518463ffffffff1660e01b8152600401610d6693929190612421565b600060405180830381600087803b158015610d8057600080fd5b505af1158015610d94573d6000803e3d6000fd5b505050506000600560156101000a81548160ff021916908315150217905550610df5565b846040517f068ca9d8000000000000000000000000000000000000000000000000000000008152600401610dec9190612073565b60405180910390fd5b5b5050505050565b610e056114c3565b6000600560006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa610e49610a55565b604051610e569190612073565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ed25760006040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610ec99190612073565b60405180910390fd5b610ede826000836112f7565b5050565b80600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad81604051610f529190612073565b60405180910390a150565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610fae611503565b6001600560006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610ff2610a55565b604051610fff9190612073565b60405180910390a1565b606061103f60067f000000000000000000000000000000000000000000000000000000000000000061154490919063ffffffff16565b905090565b606061107a60077f000000000000000000000000000000000000000000000000000000000000000061154490919063ffffffff16565b905090565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600101919050559050919050565b60006110e96110e3610bf7565b836115f4565b9050919050565b60008060008061110288888888611635565b9250925092506111128282611729565b829350505050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036111925760006040517fe602df050000000000000000000000000000000000000000000000000000000081526004016111899190612073565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112045760006040517f94280d620000000000000000000000000000000000000000000000000000000081526004016111fb9190612073565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080156112f1578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516112e89190611d5e565b60405180910390a35b50505050565b61130283838361188d565b505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000004630604051602001611382959493929190612453565b60405160208183030381529060405280519060200120905090565b6000806000808773ffffffffffffffffffffffffffffffffffffffff168787876040516024016113cf939291906124a6565b60405160208183030381529060405263b700961360e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516114219190612524565b600060405180830381855afa9150503d806000811461145c576040519150601f19603f3d011682016040523d82523d6000602084013e611461565b606091505b509150915081156114b8576040815110611496578080602001905181019061148991906125a3565b80945081955050506114b7565b60208151106114b657808060200190518101906114b391906125e3565b93505b5b5b505094509492505050565b6114cb610530565b611501576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b61150b610530565b15611542576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b606060ff60001b83146115615761155a836118a5565b90506115ee565b81805461156d906121f7565b80601f0160208091040260200160405190810160405280929190818152602001828054611599906121f7565b80156115e65780601f106115bb576101008083540402835291602001916115e6565b820191906000526020600020905b8154815290600101906020018083116115c957829003601f168201915b505050505090505b92915050565b60006040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b60008060007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08460001c111561167557600060038592509250925061171f565b60006001888888886040516000815260200160405260405161169a9493929190612610565b6020604051602081039080840390855afa1580156116bc573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361171057600060016000801b9350935093505061171f565b8060008060001b935093509350505b9450945094915050565b6000600381111561173d5761173c612655565b5b8260038111156117505761174f612655565b5b0315611889576001600381111561176a57611769612655565b5b82600381111561177d5761177c612655565b5b036117b4576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260038111156117c8576117c7612655565b5b8260038111156117db576117da612655565b5b03611820578060001c6040517ffce698f70000000000000000000000000000000000000000000000000000000081526004016118179190611d5e565b60405180910390fd5b60038081111561183357611832612655565b5b82600381111561184657611845612655565b5b0361188857806040517fd78bce0c00000000000000000000000000000000000000000000000000000000815260040161187f9190611e1c565b60405180910390fd5b5b5050565b611895611503565b6118a0838383611919565b505050565b606060006118b283611b3e565b90506000602067ffffffffffffffff8111156118d1576118d0612228565b5b6040519080825280601f01601f1916602001820160405280156119035781602001600182028036833780820191505090505b5090508181528360208201528092505050919050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361196b57806002600082825461195f91906126b3565b92505081905550611a3e565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156119f7578381836040517fe450d38c0000000000000000000000000000000000000000000000000000000081526004016119ee939291906122e1565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611a875780600260008282540392505081905550611ad4565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b319190611d5e565b60405180910390a3505050565b60008060ff8360001c169050601f811115611b85576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80915050919050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611bc8578082015181840152602081019050611bad565b60008484015250505050565b6000601f19601f8301169050919050565b6000611bf082611b8e565b611bfa8185611b99565b9350611c0a818560208601611baa565b611c1381611bd4565b840191505092915050565b60006020820190508181036000830152611c388184611be5565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611c7082611c45565b9050919050565b611c8081611c65565b8114611c8b57600080fd5b50565b600081359050611c9d81611c77565b92915050565b6000819050919050565b611cb681611ca3565b8114611cc157600080fd5b50565b600081359050611cd381611cad565b92915050565b60008060408385031215611cf057611cef611c40565b5b6000611cfe85828601611c8e565b9250506020611d0f85828601611cc4565b9150509250929050565b60008115159050919050565b611d2e81611d19565b82525050565b6000602082019050611d496000830184611d25565b92915050565b611d5881611ca3565b82525050565b6000602082019050611d736000830184611d4f565b92915050565b600080600060608486031215611d9257611d91611c40565b5b6000611da086828701611c8e565b9350506020611db186828701611c8e565b9250506040611dc286828701611cc4565b9150509250925092565b600060ff82169050919050565b611de281611dcc565b82525050565b6000602082019050611dfd6000830184611dd9565b92915050565b6000819050919050565b611e1681611e03565b82525050565b6000602082019050611e316000830184611e0d565b92915050565b600060208284031215611e4d57611e4c611c40565b5b6000611e5b84828501611cc4565b91505092915050565b600060208284031215611e7a57611e79611c40565b5b6000611e8884828501611c8e565b91505092915050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b611ec681611e91565b82525050565b611ed581611c65565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b611f1081611ca3565b82525050565b6000611f228383611f07565b60208301905092915050565b6000602082019050919050565b6000611f4682611edb565b611f508185611ee6565b9350611f5b83611ef7565b8060005b83811015611f8c578151611f738882611f16565b9750611f7e83611f2e565b925050600181019050611f5f565b5085935050505092915050565b600060e082019050611fae600083018a611ebd565b8181036020830152611fc08189611be5565b90508181036040830152611fd48188611be5565b9050611fe36060830187611d4f565b611ff06080830186611ecc565b611ffd60a0830185611e0d565b81810360c083015261200f8184611f3b565b905098975050505050505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6120528161201d565b82525050565b600060208201905061206d6000830184612049565b92915050565b60006020820190506120886000830184611ecc565b92915050565b61209781611dcc565b81146120a257600080fd5b50565b6000813590506120b48161208e565b92915050565b6120c381611e03565b81146120ce57600080fd5b50565b6000813590506120e0816120ba565b92915050565b600080600080600080600060e0888a03121561210557612104611c40565b5b60006121138a828b01611c8e565b97505060206121248a828b01611c8e565b96505060406121358a828b01611cc4565b95505060606121468a828b01611cc4565b94505060806121578a828b016120a5565b93505060a06121688a828b016120d1565b92505060c06121798a828b016120d1565b91505092959891949750929550565b6000806040838503121561219f5761219e611c40565b5b60006121ad85828601611c8e565b92505060206121be85828601611c8e565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061220f57607f821691505b602082108103612222576122216121c8565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600060c08201905061226c6000830189611e0d565b6122796020830188611ecc565b6122866040830187611ecc565b6122936060830186611d4f565b6122a06080830185611d4f565b6122ad60a0830184611d4f565b979650505050505050565b60006040820190506122cd6000830185611ecc565b6122da6020830184611ecc565b9392505050565b60006060820190506122f66000830186611ecc565b6123036020830185611d4f565b6123106040830184611d4f565b949350505050565b600080fd5b600080fd5b6000808585111561233657612335612318565b5b838611156123475761234661231d565b5b6001850283019150848603905094509492505050565b600082905092915050565b600082821b905092915050565b6000612381838361235d565b8261238c813561201d565b925060048210156123cc576123c77fffffffff0000000000000000000000000000000000000000000000000000000083600403600802612368565b831692505b505092915050565b600082825260208201905092915050565b82818337600083830152505050565b600061240083856123d4565b935061240d8385846123e5565b61241683611bd4565b840190509392505050565b60006040820190506124366000830186611ecc565b81810360208301526124498184866123f4565b9050949350505050565b600060a0820190506124686000830188611e0d565b6124756020830187611e0d565b6124826040830186611e0d565b61248f6060830185611d4f565b61249c6080830184611ecc565b9695505050505050565b60006060820190506124bb6000830186611ecc565b6124c86020830185611ecc565b6124d56040830184612049565b949350505050565b600081519050919050565b600081905092915050565b60006124fe826124dd565b61250881856124e8565b9350612518818560208601611baa565b80840191505092915050565b600061253082846124f3565b915081905092915050565b61254481611d19565b811461254f57600080fd5b50565b6000815190506125618161253b565b92915050565b600063ffffffff82169050919050565b61258081612567565b811461258b57600080fd5b50565b60008151905061259d81612577565b92915050565b600080604083850312156125ba576125b9611c40565b5b60006125c885828601612552565b92505060206125d98582860161258e565b9150509250929050565b6000602082840312156125f9576125f8611c40565b5b600061260784828501612552565b91505092915050565b60006080820190506126256000830187611e0d565b6126326020830186611dd9565b61263f6040830185611e0d565b61264c6060830184611e0d565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006126be82611ca3565b91506126c983611ca3565b92508282019050808211156126e1576126e0612684565b5b9291505056fea264697066735822122045fea481117cf152b431bd713dff77c7aafc71d393f626589301501d861beb8764736f6c63430008140033",
|
|
720
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101375760003560e01c806379cc6790116100b85780638fb360371161007c5780638fb360371461031e57806395d89b411461033c578063a9059cbb1461035a578063bf7e214f1461038a578063d505accf146103a8578063dd62ed3e146103c457610137565b806379cc6790146102885780637a9e5e4b146102a45780637ecebe00146102c05780638456cb59146102f057806384b0196e146102fa57610137565b80633644e515116100ff5780633644e515146101f65780633f4ba83a1461021457806342966c681461021e5780635c975abb1461023a57806370a082311461025857610137565b806306fdde031461013c578063095ea7b31461015a57806318160ddd1461018a57806323b872dd146101a8578063313ce567146101d8575b600080fd5b6101446103f4565b6040516101519190611c1e565b60405180910390f35b610174600480360381019061016f9190611cd9565b610486565b6040516101819190611d34565b60405180910390f35b6101926104a9565b60405161019f9190611d5e565b60405180910390f35b6101c260048036038101906101bd9190611d79565b6104b3565b6040516101cf9190611d34565b60405180910390f35b6101e06104e2565b6040516101ed9190611de8565b60405180910390f35b6101fe6104eb565b60405161020b9190611e1c565b60405180910390f35b61021c6104fa565b005b61023860048036038101906102339190611e37565b61051c565b005b610242610530565b60405161024f9190611d34565b60405180910390f35b610272600480360381019061026d9190611e64565b610547565b60405161027f9190611d5e565b60405180910390f35b6102a2600480360381019061029d9190611cd9565b61058f565b005b6102be60048036038101906102b99190611e64565b6105af565b005b6102da60048036038101906102d59190611e64565b61069b565b6040516102e79190611d5e565b60405180910390f35b6102f86106ad565b005b6103026106cf565b6040516103159796959493929190611f99565b60405180910390f35b610326610779565b6040516103339190612058565b60405180910390f35b6103446107a7565b6040516103519190611c1e565b60405180910390f35b610374600480360381019061036f9190611cd9565b610839565b6040516103819190611d34565b60405180910390f35b61039261085c565b60405161039f9190612073565b60405180910390f35b6103c260048036038101906103bd91906120e6565b610886565b005b6103de60048036038101906103d99190612188565b6109ce565b6040516103eb9190611d5e565b60405180910390f35b606060038054610403906121f7565b80601f016020809104026020016040519081016040528092919081815260200182805461042f906121f7565b801561047c5780601f106104515761010080835404028352916020019161047c565b820191906000526020600020905b81548152906001019060200180831161045f57829003601f168201915b5050505050905090565b600080610491610a55565b905061049e818585610a5d565b600191505092915050565b6000600254905090565b6000806104be610a55565b90506104cb858285610a6f565b6104d6858585610b03565b60019150509392505050565b60006012905090565b60006104f5610bf7565b905090565b610512610505610a55565b61050d610cae565b610cbb565b61051a610dfd565b565b61052d610527610a55565b82610e60565b50565b6000600560009054906101000a900460ff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6105a18261059b610a55565b83610a6f565b6105ab8282610e60565b5050565b60006105b9610a55565b90506105c361085c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461063257806040517f068ca9d80000000000000000000000000000000000000000000000000000000081526004016106299190612073565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff163b0361068e57816040517fc2f31e5e0000000000000000000000000000000000000000000000000000000081526004016106859190612073565b60405180910390fd5b61069782610ee2565b5050565b60006106a682610f5d565b9050919050565b6106c56106b8610a55565b6106c0610cae565b610cbb565b6106cd610fa6565b565b6000606080600080600060606106e3611009565b6106eb611044565b46306000801b600067ffffffffffffffff81111561070c5761070b612228565b5b60405190808252806020026020018201604052801561073a5781602001602082028036833780820191505090505b507f0f00000000000000000000000000000000000000000000000000000000000000959493929190965096509650965096509650965090919293949596565b6000600560159054906101000a900460ff1661079957600060e01b6107a2565b638fb3603760e01b5b905090565b6060600480546107b6906121f7565b80601f01602080910402602001604051908101604052809291908181526020018280546107e2906121f7565b801561082f5780601f106108045761010080835404028352916020019161082f565b820191906000526020600020905b81548152906001019060200180831161081257829003601f168201915b5050505050905090565b600080610844610a55565b9050610851818585610b03565b600191505092915050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b834211156108cb57836040517f627913020000000000000000000000000000000000000000000000000000000081526004016108c29190611d5e565b60405180910390fd5b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886108fa8c61107f565b8960405160200161091096959493929190612257565b6040516020818303038152906040528051906020012090506000610933826110d6565b90506000610943828787876110f0565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146109b757808a6040517f4b800e460000000000000000000000000000000000000000000000000000000081526004016109ae9291906122b8565b60405180910390fd5b6109c28a8a8a610a5d565b50505050505050505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b610a6a8383836001611120565b505050565b6000610a7b84846109ce565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610afd5781811015610aed578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401610ae4939291906122e1565b60405180910390fd5b610afc84848484036000611120565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b755760006040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610b6c9190612073565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610be75760006040517fec442f05000000000000000000000000000000000000000000000000000000008152600401610bde9190612073565b60405180910390fd5b610bf28383836112f7565b505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015610c7357507f000000000000000000000000000000000000000000000000000000000000000046145b15610ca0577f00000000000000000000000000000000000000000000000000000000000000009050610cab565b610ca8611307565b90505b90565b3660008036915091509091565b600080610cef610cc961085c565b86308787600090600492610cdf93929190612322565b90610cea9190612375565b61139d565b9150915081610df65760008163ffffffff161115610db8576001600560156101000a81548160ff021916908315150217905550610d2a61085c565b73ffffffffffffffffffffffffffffffffffffffff166394c7d7ee8686866040518463ffffffff1660e01b8152600401610d6693929190612421565b600060405180830381600087803b158015610d8057600080fd5b505af1158015610d94573d6000803e3d6000fd5b505050506000600560156101000a81548160ff021916908315150217905550610df5565b846040517f068ca9d8000000000000000000000000000000000000000000000000000000008152600401610dec9190612073565b60405180910390fd5b5b5050505050565b610e056114c3565b6000600560006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa610e49610a55565b604051610e569190612073565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ed25760006040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610ec99190612073565b60405180910390fd5b610ede826000836112f7565b5050565b80600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad81604051610f529190612073565b60405180910390a150565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610fae611503565b6001600560006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610ff2610a55565b604051610fff9190612073565b60405180910390a1565b606061103f60067f000000000000000000000000000000000000000000000000000000000000000061154490919063ffffffff16565b905090565b606061107a60077f000000000000000000000000000000000000000000000000000000000000000061154490919063ffffffff16565b905090565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600101919050559050919050565b60006110e96110e3610bf7565b836115f4565b9050919050565b60008060008061110288888888611635565b9250925092506111128282611729565b829350505050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036111925760006040517fe602df050000000000000000000000000000000000000000000000000000000081526004016111899190612073565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112045760006040517f94280d620000000000000000000000000000000000000000000000000000000081526004016111fb9190612073565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080156112f1578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516112e89190611d5e565b60405180910390a35b50505050565b61130283838361188d565b505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000004630604051602001611382959493929190612453565b60405160208183030381529060405280519060200120905090565b6000806000808773ffffffffffffffffffffffffffffffffffffffff168787876040516024016113cf939291906124a6565b60405160208183030381529060405263b700961360e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516114219190612524565b600060405180830381855afa9150503d806000811461145c576040519150601f19603f3d011682016040523d82523d6000602084013e611461565b606091505b509150915081156114b8576040815110611496578080602001905181019061148991906125a3565b80945081955050506114b7565b60208151106114b657808060200190518101906114b391906125e3565b93505b5b5b505094509492505050565b6114cb610530565b611501576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b61150b610530565b15611542576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b606060ff60001b83146115615761155a836118a5565b90506115ee565b81805461156d906121f7565b80601f0160208091040260200160405190810160405280929190818152602001828054611599906121f7565b80156115e65780601f106115bb576101008083540402835291602001916115e6565b820191906000526020600020905b8154815290600101906020018083116115c957829003601f168201915b505050505090505b92915050565b60006040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b60008060007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08460001c111561167557600060038592509250925061171f565b60006001888888886040516000815260200160405260405161169a9493929190612610565b6020604051602081039080840390855afa1580156116bc573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361171057600060016000801b9350935093505061171f565b8060008060001b935093509350505b9450945094915050565b6000600381111561173d5761173c612655565b5b8260038111156117505761174f612655565b5b0315611889576001600381111561176a57611769612655565b5b82600381111561177d5761177c612655565b5b036117b4576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260038111156117c8576117c7612655565b5b8260038111156117db576117da612655565b5b03611820578060001c6040517ffce698f70000000000000000000000000000000000000000000000000000000081526004016118179190611d5e565b60405180910390fd5b60038081111561183357611832612655565b5b82600381111561184657611845612655565b5b0361188857806040517fd78bce0c00000000000000000000000000000000000000000000000000000000815260040161187f9190611e1c565b60405180910390fd5b5b5050565b611895611503565b6118a0838383611919565b505050565b606060006118b283611b3e565b90506000602067ffffffffffffffff8111156118d1576118d0612228565b5b6040519080825280601f01601f1916602001820160405280156119035781602001600182028036833780820191505090505b5090508181528360208201528092505050919050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361196b57806002600082825461195f91906126b3565b92505081905550611a3e565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156119f7578381836040517fe450d38c0000000000000000000000000000000000000000000000000000000081526004016119ee939291906122e1565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611a875780600260008282540392505081905550611ad4565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b319190611d5e565b60405180910390a3505050565b60008060ff8360001c169050601f811115611b85576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80915050919050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611bc8578082015181840152602081019050611bad565b60008484015250505050565b6000601f19601f8301169050919050565b6000611bf082611b8e565b611bfa8185611b99565b9350611c0a818560208601611baa565b611c1381611bd4565b840191505092915050565b60006020820190508181036000830152611c388184611be5565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611c7082611c45565b9050919050565b611c8081611c65565b8114611c8b57600080fd5b50565b600081359050611c9d81611c77565b92915050565b6000819050919050565b611cb681611ca3565b8114611cc157600080fd5b50565b600081359050611cd381611cad565b92915050565b60008060408385031215611cf057611cef611c40565b5b6000611cfe85828601611c8e565b9250506020611d0f85828601611cc4565b9150509250929050565b60008115159050919050565b611d2e81611d19565b82525050565b6000602082019050611d496000830184611d25565b92915050565b611d5881611ca3565b82525050565b6000602082019050611d736000830184611d4f565b92915050565b600080600060608486031215611d9257611d91611c40565b5b6000611da086828701611c8e565b9350506020611db186828701611c8e565b9250506040611dc286828701611cc4565b9150509250925092565b600060ff82169050919050565b611de281611dcc565b82525050565b6000602082019050611dfd6000830184611dd9565b92915050565b6000819050919050565b611e1681611e03565b82525050565b6000602082019050611e316000830184611e0d565b92915050565b600060208284031215611e4d57611e4c611c40565b5b6000611e5b84828501611cc4565b91505092915050565b600060208284031215611e7a57611e79611c40565b5b6000611e8884828501611c8e565b91505092915050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b611ec681611e91565b82525050565b611ed581611c65565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b611f1081611ca3565b82525050565b6000611f228383611f07565b60208301905092915050565b6000602082019050919050565b6000611f4682611edb565b611f508185611ee6565b9350611f5b83611ef7565b8060005b83811015611f8c578151611f738882611f16565b9750611f7e83611f2e565b925050600181019050611f5f565b5085935050505092915050565b600060e082019050611fae600083018a611ebd565b8181036020830152611fc08189611be5565b90508181036040830152611fd48188611be5565b9050611fe36060830187611d4f565b611ff06080830186611ecc565b611ffd60a0830185611e0d565b81810360c083015261200f8184611f3b565b905098975050505050505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6120528161201d565b82525050565b600060208201905061206d6000830184612049565b92915050565b60006020820190506120886000830184611ecc565b92915050565b61209781611dcc565b81146120a257600080fd5b50565b6000813590506120b48161208e565b92915050565b6120c381611e03565b81146120ce57600080fd5b50565b6000813590506120e0816120ba565b92915050565b600080600080600080600060e0888a03121561210557612104611c40565b5b60006121138a828b01611c8e565b97505060206121248a828b01611c8e565b96505060406121358a828b01611cc4565b95505060606121468a828b01611cc4565b94505060806121578a828b016120a5565b93505060a06121688a828b016120d1565b92505060c06121798a828b016120d1565b91505092959891949750929550565b6000806040838503121561219f5761219e611c40565b5b60006121ad85828601611c8e565b92505060206121be85828601611c8e565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061220f57607f821691505b602082108103612222576122216121c8565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600060c08201905061226c6000830189611e0d565b6122796020830188611ecc565b6122866040830187611ecc565b6122936060830186611d4f565b6122a06080830185611d4f565b6122ad60a0830184611d4f565b979650505050505050565b60006040820190506122cd6000830185611ecc565b6122da6020830184611ecc565b9392505050565b60006060820190506122f66000830186611ecc565b6123036020830185611d4f565b6123106040830184611d4f565b949350505050565b600080fd5b600080fd5b6000808585111561233657612335612318565b5b838611156123475761234661231d565b5b6001850283019150848603905094509492505050565b600082905092915050565b600082821b905092915050565b6000612381838361235d565b8261238c813561201d565b925060048210156123cc576123c77fffffffff0000000000000000000000000000000000000000000000000000000083600403600802612368565b831692505b505092915050565b600082825260208201905092915050565b82818337600083830152505050565b600061240083856123d4565b935061240d8385846123e5565b61241683611bd4565b840190509392505050565b60006040820190506124366000830186611ecc565b81810360208301526124498184866123f4565b9050949350505050565b600060a0820190506124686000830188611e0d565b6124756020830187611e0d565b6124826040830186611e0d565b61248f6060830185611d4f565b61249c6080830184611ecc565b9695505050505050565b60006060820190506124bb6000830186611ecc565b6124c86020830185611ecc565b6124d56040830184612049565b949350505050565b600081519050919050565b600081905092915050565b60006124fe826124dd565b61250881856124e8565b9350612518818560208601611baa565b80840191505092915050565b600061253082846124f3565b915081905092915050565b61254481611d19565b811461254f57600080fd5b50565b6000815190506125618161253b565b92915050565b600063ffffffff82169050919050565b61258081612567565b811461258b57600080fd5b50565b60008151905061259d81612577565b92915050565b600080604083850312156125ba576125b9611c40565b5b60006125c885828601612552565b92505060206125d98582860161258e565b9150509250929050565b6000602082840312156125f9576125f8611c40565b5b600061260784828501612552565b91505092915050565b60006080820190506126256000830187611e0d565b6126326020830186611dd9565b61263f6040830185611e0d565b61264c6060830184611e0d565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006126be82611ca3565b91506126c983611ca3565b92508282019050808211156126e1576126e0612684565b5b9291505056fea264697066735822122045fea481117cf152b431bd713dff77c7aafc71d393f626589301501d861beb8764736f6c63430008140033",
|
|
719
|
+
"bytecode": "0x6101606040523480156200001257600080fd5b50604051620037af380380620037af8339818101604052810190620000389190620007d7565b6040518060400160405280600981526020017f54657374546f6b656e0000000000000000000000000000000000000000000000815250806040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250836040518060400160405280600981526020017f54657374546f6b656e00000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f5445535400000000000000000000000000000000000000000000000000000000815250816003908162000123919062000a83565b50806004908162000135919062000a83565b5050506000600560006101000a81548160ff02191690831515021790555062000164816200025d60201b60201c565b506200017b600683620002da60201b90919060201c565b610120818152505062000199600782620002da60201b90919060201c565b6101408181525050818051906020012060e08181525050808051906020012061010081815250504660a08181525050620001d86200033260201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff168152505050505062000256816200022b6200038f60201b60201c565b600a62000239919062000cfa565b633b9aca006200024a919062000d4b565b6200039860201b60201c565b5062001037565b80600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad81604051620002cf919062000da7565b60405180910390a150565b60006020835110156200030057620002f8836200042560201b60201c565b90506200032c565b8262000312836200049260201b60201c565b600001908162000323919062000a83565b5060ff60001b90505b92915050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60e0516101005146306040516020016200037495949392919062000df0565b60405160208183030381529060405280519060200120905090565b60006012905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036200040d5760006040517fec442f0500000000000000000000000000000000000000000000000000000000815260040162000404919062000da7565b60405180910390fd5b62000421600083836200049c60201b60201c565b5050565b600080829050601f815111156200047557826040517f305a27a90000000000000000000000000000000000000000000000000000000081526004016200046c919062000edc565b60405180910390fd5b805181620004839062000f32565b60001c1760001b915050919050565b6000819050919050565b620004af838383620004b460201b60201c565b505050565b620004c4620004dc60201b60201c565b620004d78383836200052660201b60201c565b505050565b620004ec6200075660201b60201c565b1562000524576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036200057c5780600260008282546200056f919062000fa2565b9250508190555062000652565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156200060b578381836040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401620006029392919062000fdd565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036200069d5780600260008282540392505081905550620006ea565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200074991906200101a565b60405180910390a3505050565b6000600560009054906101000a900460ff16905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200079f8262000772565b9050919050565b620007b18162000792565b8114620007bd57600080fd5b50565b600081519050620007d181620007a6565b92915050565b600060208284031215620007f057620007ef6200076d565b5b60006200080084828501620007c0565b91505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200088b57607f821691505b602082108103620008a157620008a062000843565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200090b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620008cc565b620009178683620008cc565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620009646200095e62000958846200092f565b62000939565b6200092f565b9050919050565b6000819050919050565b620009808362000943565b620009986200098f826200096b565b848454620008d9565b825550505050565b600090565b620009af620009a0565b620009bc81848462000975565b505050565b5b81811015620009e457620009d8600082620009a5565b600181019050620009c2565b5050565b601f82111562000a3357620009fd81620008a7565b62000a0884620008bc565b8101602085101562000a18578190505b62000a3062000a2785620008bc565b830182620009c1565b50505b505050565b600082821c905092915050565b600062000a586000198460080262000a38565b1980831691505092915050565b600062000a73838362000a45565b9150826002028217905092915050565b62000a8e8262000809565b67ffffffffffffffff81111562000aaa5762000aa962000814565b5b62000ab6825462000872565b62000ac3828285620009e8565b600060209050601f83116001811462000afb576000841562000ae6578287015190505b62000af2858262000a65565b86555062000b62565b601f19841662000b0b86620008a7565b60005b8281101562000b355784890151825560018201915060208501945060208101905062000b0e565b8683101562000b55578489015162000b51601f89168262000a45565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000bf85780860481111562000bd05762000bcf62000b6a565b5b600185161562000be05780820291505b808102905062000bf08562000b99565b945062000bb0565b94509492505050565b60008262000c13576001905062000ce6565b8162000c23576000905062000ce6565b816001811462000c3c576002811462000c475762000c7d565b600191505062000ce6565b60ff84111562000c5c5762000c5b62000b6a565b5b8360020a91508482111562000c765762000c7562000b6a565b5b5062000ce6565b5060208310610133831016604e8410600b841016171562000cb75782820a90508381111562000cb15762000cb062000b6a565b5b62000ce6565b62000cc6848484600162000ba6565b9250905081840481111562000ce05762000cdf62000b6a565b5b81810290505b9392505050565b600060ff82169050919050565b600062000d07826200092f565b915062000d148362000ced565b925062000d437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000c01565b905092915050565b600062000d58826200092f565b915062000d65836200092f565b925082820262000d75816200092f565b9150828204841483151762000d8f5762000d8e62000b6a565b5b5092915050565b62000da18162000792565b82525050565b600060208201905062000dbe600083018462000d96565b92915050565b6000819050919050565b62000dd98162000dc4565b82525050565b62000dea816200092f565b82525050565b600060a08201905062000e07600083018862000dce565b62000e16602083018762000dce565b62000e25604083018662000dce565b62000e34606083018562000ddf565b62000e43608083018462000d96565b9695505050505050565b600082825260208201905092915050565b60005b8381101562000e7e57808201518184015260208101905062000e61565b60008484015250505050565b6000601f19601f8301169050919050565b600062000ea88262000809565b62000eb4818562000e4d565b935062000ec681856020860162000e5e565b62000ed18162000e8a565b840191505092915050565b6000602082019050818103600083015262000ef8818462000e9b565b905092915050565b600081519050919050565b6000819050602082019050919050565b600062000f29825162000dc4565b80915050919050565b600062000f3f8262000f00565b8262000f4b8462000f0b565b905062000f588162000f1b565b9250602082101562000f9b5762000f967fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83602003600802620008cc565b831692505b5050919050565b600062000faf826200092f565b915062000fbc836200092f565b925082820190508082111562000fd75762000fd662000b6a565b5b92915050565b600060608201905062000ff4600083018662000d96565b62001003602083018562000ddf565b62001012604083018462000ddf565b949350505050565b600060208201905062001031600083018462000ddf565b92915050565b60805160a05160c05160e05161010051610120516101405161271d62001092600039600061104d015260006110120152600061134d0152600061132c01526000610bfb01526000610c5101526000610c7a015261271d6000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c806379cc6790116100b85780638fb360371161007c5780638fb360371461031e57806395d89b411461033c578063a9059cbb1461035a578063bf7e214f1461038a578063d505accf146103a8578063dd62ed3e146103c457610137565b806379cc6790146102885780637a9e5e4b146102a45780637ecebe00146102c05780638456cb59146102f057806384b0196e146102fa57610137565b80633644e515116100ff5780633644e515146101f65780633f4ba83a1461021457806342966c681461021e5780635c975abb1461023a57806370a082311461025857610137565b806306fdde031461013c578063095ea7b31461015a57806318160ddd1461018a57806323b872dd146101a8578063313ce567146101d8575b600080fd5b6101446103f4565b6040516101519190611c1e565b60405180910390f35b610174600480360381019061016f9190611cd9565b610486565b6040516101819190611d34565b60405180910390f35b6101926104a9565b60405161019f9190611d5e565b60405180910390f35b6101c260048036038101906101bd9190611d79565b6104b3565b6040516101cf9190611d34565b60405180910390f35b6101e06104e2565b6040516101ed9190611de8565b60405180910390f35b6101fe6104eb565b60405161020b9190611e1c565b60405180910390f35b61021c6104fa565b005b61023860048036038101906102339190611e37565b61051c565b005b610242610530565b60405161024f9190611d34565b60405180910390f35b610272600480360381019061026d9190611e64565b610547565b60405161027f9190611d5e565b60405180910390f35b6102a2600480360381019061029d9190611cd9565b61058f565b005b6102be60048036038101906102b99190611e64565b6105af565b005b6102da60048036038101906102d59190611e64565b61069b565b6040516102e79190611d5e565b60405180910390f35b6102f86106ad565b005b6103026106cf565b6040516103159796959493929190611f99565b60405180910390f35b610326610779565b6040516103339190612058565b60405180910390f35b6103446107a7565b6040516103519190611c1e565b60405180910390f35b610374600480360381019061036f9190611cd9565b610839565b6040516103819190611d34565b60405180910390f35b61039261085c565b60405161039f9190612073565b60405180910390f35b6103c260048036038101906103bd91906120e6565b610886565b005b6103de60048036038101906103d99190612188565b6109ce565b6040516103eb9190611d5e565b60405180910390f35b606060038054610403906121f7565b80601f016020809104026020016040519081016040528092919081815260200182805461042f906121f7565b801561047c5780601f106104515761010080835404028352916020019161047c565b820191906000526020600020905b81548152906001019060200180831161045f57829003601f168201915b5050505050905090565b600080610491610a55565b905061049e818585610a5d565b600191505092915050565b6000600254905090565b6000806104be610a55565b90506104cb858285610a6f565b6104d6858585610b03565b60019150509392505050565b60006012905090565b60006104f5610bf7565b905090565b610512610505610a55565b61050d610cae565b610cbb565b61051a610dfd565b565b61052d610527610a55565b82610e60565b50565b6000600560009054906101000a900460ff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6105a18261059b610a55565b83610a6f565b6105ab8282610e60565b5050565b60006105b9610a55565b90506105c361085c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461063257806040517f068ca9d80000000000000000000000000000000000000000000000000000000081526004016106299190612073565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff163b0361068e57816040517fc2f31e5e0000000000000000000000000000000000000000000000000000000081526004016106859190612073565b60405180910390fd5b61069782610ee2565b5050565b60006106a682610f5d565b9050919050565b6106c56106b8610a55565b6106c0610cae565b610cbb565b6106cd610fa6565b565b6000606080600080600060606106e3611009565b6106eb611044565b46306000801b600067ffffffffffffffff81111561070c5761070b612228565b5b60405190808252806020026020018201604052801561073a5781602001602082028036833780820191505090505b507f0f00000000000000000000000000000000000000000000000000000000000000959493929190965096509650965096509650965090919293949596565b6000600560159054906101000a900460ff1661079957600060e01b6107a2565b638fb3603760e01b5b905090565b6060600480546107b6906121f7565b80601f01602080910402602001604051908101604052809291908181526020018280546107e2906121f7565b801561082f5780601f106108045761010080835404028352916020019161082f565b820191906000526020600020905b81548152906001019060200180831161081257829003601f168201915b5050505050905090565b600080610844610a55565b9050610851818585610b03565b600191505092915050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b834211156108cb57836040517f627913020000000000000000000000000000000000000000000000000000000081526004016108c29190611d5e565b60405180910390fd5b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886108fa8c61107f565b8960405160200161091096959493929190612257565b6040516020818303038152906040528051906020012090506000610933826110d6565b90506000610943828787876110f0565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146109b757808a6040517f4b800e460000000000000000000000000000000000000000000000000000000081526004016109ae9291906122b8565b60405180910390fd5b6109c28a8a8a610a5d565b50505050505050505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b610a6a8383836001611120565b505050565b6000610a7b84846109ce565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610afd5781811015610aed578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401610ae4939291906122e1565b60405180910390fd5b610afc84848484036000611120565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b755760006040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610b6c9190612073565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610be75760006040517fec442f05000000000000000000000000000000000000000000000000000000008152600401610bde9190612073565b60405180910390fd5b610bf28383836112f7565b505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015610c7357507f000000000000000000000000000000000000000000000000000000000000000046145b15610ca0577f00000000000000000000000000000000000000000000000000000000000000009050610cab565b610ca8611307565b90505b90565b3660008036915091509091565b600080610cef610cc961085c565b86308787600090600492610cdf93929190612322565b90610cea9190612375565b61139d565b9150915081610df65760008163ffffffff161115610db8576001600560156101000a81548160ff021916908315150217905550610d2a61085c565b73ffffffffffffffffffffffffffffffffffffffff166394c7d7ee8686866040518463ffffffff1660e01b8152600401610d6693929190612421565b600060405180830381600087803b158015610d8057600080fd5b505af1158015610d94573d6000803e3d6000fd5b505050506000600560156101000a81548160ff021916908315150217905550610df5565b846040517f068ca9d8000000000000000000000000000000000000000000000000000000008152600401610dec9190612073565b60405180910390fd5b5b5050505050565b610e056114c3565b6000600560006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa610e49610a55565b604051610e569190612073565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ed25760006040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610ec99190612073565b60405180910390fd5b610ede826000836112f7565b5050565b80600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad81604051610f529190612073565b60405180910390a150565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610fae611503565b6001600560006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610ff2610a55565b604051610fff9190612073565b60405180910390a1565b606061103f60067f000000000000000000000000000000000000000000000000000000000000000061154490919063ffffffff16565b905090565b606061107a60077f000000000000000000000000000000000000000000000000000000000000000061154490919063ffffffff16565b905090565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600101919050559050919050565b60006110e96110e3610bf7565b836115f4565b9050919050565b60008060008061110288888888611635565b9250925092506111128282611729565b829350505050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036111925760006040517fe602df050000000000000000000000000000000000000000000000000000000081526004016111899190612073565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112045760006040517f94280d620000000000000000000000000000000000000000000000000000000081526004016111fb9190612073565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080156112f1578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516112e89190611d5e565b60405180910390a35b50505050565b61130283838361188d565b505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000004630604051602001611382959493929190612453565b60405160208183030381529060405280519060200120905090565b6000806000808773ffffffffffffffffffffffffffffffffffffffff168787876040516024016113cf939291906124a6565b60405160208183030381529060405263b700961360e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516114219190612524565b600060405180830381855afa9150503d806000811461145c576040519150601f19603f3d011682016040523d82523d6000602084013e611461565b606091505b509150915081156114b8576040815110611496578080602001905181019061148991906125a3565b80945081955050506114b7565b60208151106114b657808060200190518101906114b391906125e3565b93505b5b5b505094509492505050565b6114cb610530565b611501576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b61150b610530565b15611542576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b606060ff60001b83146115615761155a836118a5565b90506115ee565b81805461156d906121f7565b80601f0160208091040260200160405190810160405280929190818152602001828054611599906121f7565b80156115e65780601f106115bb576101008083540402835291602001916115e6565b820191906000526020600020905b8154815290600101906020018083116115c957829003601f168201915b505050505090505b92915050565b60006040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b60008060007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08460001c111561167557600060038592509250925061171f565b60006001888888886040516000815260200160405260405161169a9493929190612610565b6020604051602081039080840390855afa1580156116bc573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361171057600060016000801b9350935093505061171f565b8060008060001b935093509350505b9450945094915050565b6000600381111561173d5761173c612655565b5b8260038111156117505761174f612655565b5b0315611889576001600381111561176a57611769612655565b5b82600381111561177d5761177c612655565b5b036117b4576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260038111156117c8576117c7612655565b5b8260038111156117db576117da612655565b5b03611820578060001c6040517ffce698f70000000000000000000000000000000000000000000000000000000081526004016118179190611d5e565b60405180910390fd5b60038081111561183357611832612655565b5b82600381111561184657611845612655565b5b0361188857806040517fd78bce0c00000000000000000000000000000000000000000000000000000000815260040161187f9190611e1c565b60405180910390fd5b5b5050565b611895611503565b6118a0838383611919565b505050565b606060006118b283611b3e565b90506000602067ffffffffffffffff8111156118d1576118d0612228565b5b6040519080825280601f01601f1916602001820160405280156119035781602001600182028036833780820191505090505b5090508181528360208201528092505050919050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361196b57806002600082825461195f91906126b3565b92505081905550611a3e565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156119f7578381836040517fe450d38c0000000000000000000000000000000000000000000000000000000081526004016119ee939291906122e1565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611a875780600260008282540392505081905550611ad4565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b319190611d5e565b60405180910390a3505050565b60008060ff8360001c169050601f811115611b85576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80915050919050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611bc8578082015181840152602081019050611bad565b60008484015250505050565b6000601f19601f8301169050919050565b6000611bf082611b8e565b611bfa8185611b99565b9350611c0a818560208601611baa565b611c1381611bd4565b840191505092915050565b60006020820190508181036000830152611c388184611be5565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611c7082611c45565b9050919050565b611c8081611c65565b8114611c8b57600080fd5b50565b600081359050611c9d81611c77565b92915050565b6000819050919050565b611cb681611ca3565b8114611cc157600080fd5b50565b600081359050611cd381611cad565b92915050565b60008060408385031215611cf057611cef611c40565b5b6000611cfe85828601611c8e565b9250506020611d0f85828601611cc4565b9150509250929050565b60008115159050919050565b611d2e81611d19565b82525050565b6000602082019050611d496000830184611d25565b92915050565b611d5881611ca3565b82525050565b6000602082019050611d736000830184611d4f565b92915050565b600080600060608486031215611d9257611d91611c40565b5b6000611da086828701611c8e565b9350506020611db186828701611c8e565b9250506040611dc286828701611cc4565b9150509250925092565b600060ff82169050919050565b611de281611dcc565b82525050565b6000602082019050611dfd6000830184611dd9565b92915050565b6000819050919050565b611e1681611e03565b82525050565b6000602082019050611e316000830184611e0d565b92915050565b600060208284031215611e4d57611e4c611c40565b5b6000611e5b84828501611cc4565b91505092915050565b600060208284031215611e7a57611e79611c40565b5b6000611e8884828501611c8e565b91505092915050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b611ec681611e91565b82525050565b611ed581611c65565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b611f1081611ca3565b82525050565b6000611f228383611f07565b60208301905092915050565b6000602082019050919050565b6000611f4682611edb565b611f508185611ee6565b9350611f5b83611ef7565b8060005b83811015611f8c578151611f738882611f16565b9750611f7e83611f2e565b925050600181019050611f5f565b5085935050505092915050565b600060e082019050611fae600083018a611ebd565b8181036020830152611fc08189611be5565b90508181036040830152611fd48188611be5565b9050611fe36060830187611d4f565b611ff06080830186611ecc565b611ffd60a0830185611e0d565b81810360c083015261200f8184611f3b565b905098975050505050505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6120528161201d565b82525050565b600060208201905061206d6000830184612049565b92915050565b60006020820190506120886000830184611ecc565b92915050565b61209781611dcc565b81146120a257600080fd5b50565b6000813590506120b48161208e565b92915050565b6120c381611e03565b81146120ce57600080fd5b50565b6000813590506120e0816120ba565b92915050565b600080600080600080600060e0888a03121561210557612104611c40565b5b60006121138a828b01611c8e565b97505060206121248a828b01611c8e565b96505060406121358a828b01611cc4565b95505060606121468a828b01611cc4565b94505060806121578a828b016120a5565b93505060a06121688a828b016120d1565b92505060c06121798a828b016120d1565b91505092959891949750929550565b6000806040838503121561219f5761219e611c40565b5b60006121ad85828601611c8e565b92505060206121be85828601611c8e565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061220f57607f821691505b602082108103612222576122216121c8565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600060c08201905061226c6000830189611e0d565b6122796020830188611ecc565b6122866040830187611ecc565b6122936060830186611d4f565b6122a06080830185611d4f565b6122ad60a0830184611d4f565b979650505050505050565b60006040820190506122cd6000830185611ecc565b6122da6020830184611ecc565b9392505050565b60006060820190506122f66000830186611ecc565b6123036020830185611d4f565b6123106040830184611d4f565b949350505050565b600080fd5b600080fd5b6000808585111561233657612335612318565b5b838611156123475761234661231d565b5b6001850283019150848603905094509492505050565b600082905092915050565b600082821b905092915050565b6000612381838361235d565b8261238c813561201d565b925060048210156123cc576123c77fffffffff0000000000000000000000000000000000000000000000000000000083600403600802612368565b831692505b505092915050565b600082825260208201905092915050565b82818337600083830152505050565b600061240083856123d4565b935061240d8385846123e5565b61241683611bd4565b840190509392505050565b60006040820190506124366000830186611ecc565b81810360208301526124498184866123f4565b9050949350505050565b600060a0820190506124686000830188611e0d565b6124756020830187611e0d565b6124826040830186611e0d565b61248f6060830185611d4f565b61249c6080830184611ecc565b9695505050505050565b60006060820190506124bb6000830186611ecc565b6124c86020830185611ecc565b6124d56040830184612049565b949350505050565b600081519050919050565b600081905092915050565b60006124fe826124dd565b61250881856124e8565b9350612518818560208601611baa565b80840191505092915050565b600061253082846124f3565b915081905092915050565b61254481611d19565b811461254f57600080fd5b50565b6000815190506125618161253b565b92915050565b600063ffffffff82169050919050565b61258081612567565b811461258b57600080fd5b50565b60008151905061259d81612577565b92915050565b600080604083850312156125ba576125b9611c40565b5b60006125c885828601612552565b92505060206125d98582860161258e565b9150509250929050565b6000602082840312156125f9576125f8611c40565b5b600061260784828501612552565b91505092915050565b60006080820190506126256000830187611e0d565b6126326020830186611dd9565b61263f6040830185611e0d565b61264c6060830184611e0d565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006126be82611ca3565b91506126c983611ca3565b92508282019050808211156126e1576126e0612684565b5b9291505056fea2646970667358221220add4b8e496e62d6381ed68ab206d751f743144dadc58d6442d031816e1069a7864736f6c63430008140033",
|
|
720
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101375760003560e01c806379cc6790116100b85780638fb360371161007c5780638fb360371461031e57806395d89b411461033c578063a9059cbb1461035a578063bf7e214f1461038a578063d505accf146103a8578063dd62ed3e146103c457610137565b806379cc6790146102885780637a9e5e4b146102a45780637ecebe00146102c05780638456cb59146102f057806384b0196e146102fa57610137565b80633644e515116100ff5780633644e515146101f65780633f4ba83a1461021457806342966c681461021e5780635c975abb1461023a57806370a082311461025857610137565b806306fdde031461013c578063095ea7b31461015a57806318160ddd1461018a57806323b872dd146101a8578063313ce567146101d8575b600080fd5b6101446103f4565b6040516101519190611c1e565b60405180910390f35b610174600480360381019061016f9190611cd9565b610486565b6040516101819190611d34565b60405180910390f35b6101926104a9565b60405161019f9190611d5e565b60405180910390f35b6101c260048036038101906101bd9190611d79565b6104b3565b6040516101cf9190611d34565b60405180910390f35b6101e06104e2565b6040516101ed9190611de8565b60405180910390f35b6101fe6104eb565b60405161020b9190611e1c565b60405180910390f35b61021c6104fa565b005b61023860048036038101906102339190611e37565b61051c565b005b610242610530565b60405161024f9190611d34565b60405180910390f35b610272600480360381019061026d9190611e64565b610547565b60405161027f9190611d5e565b60405180910390f35b6102a2600480360381019061029d9190611cd9565b61058f565b005b6102be60048036038101906102b99190611e64565b6105af565b005b6102da60048036038101906102d59190611e64565b61069b565b6040516102e79190611d5e565b60405180910390f35b6102f86106ad565b005b6103026106cf565b6040516103159796959493929190611f99565b60405180910390f35b610326610779565b6040516103339190612058565b60405180910390f35b6103446107a7565b6040516103519190611c1e565b60405180910390f35b610374600480360381019061036f9190611cd9565b610839565b6040516103819190611d34565b60405180910390f35b61039261085c565b60405161039f9190612073565b60405180910390f35b6103c260048036038101906103bd91906120e6565b610886565b005b6103de60048036038101906103d99190612188565b6109ce565b6040516103eb9190611d5e565b60405180910390f35b606060038054610403906121f7565b80601f016020809104026020016040519081016040528092919081815260200182805461042f906121f7565b801561047c5780601f106104515761010080835404028352916020019161047c565b820191906000526020600020905b81548152906001019060200180831161045f57829003601f168201915b5050505050905090565b600080610491610a55565b905061049e818585610a5d565b600191505092915050565b6000600254905090565b6000806104be610a55565b90506104cb858285610a6f565b6104d6858585610b03565b60019150509392505050565b60006012905090565b60006104f5610bf7565b905090565b610512610505610a55565b61050d610cae565b610cbb565b61051a610dfd565b565b61052d610527610a55565b82610e60565b50565b6000600560009054906101000a900460ff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6105a18261059b610a55565b83610a6f565b6105ab8282610e60565b5050565b60006105b9610a55565b90506105c361085c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461063257806040517f068ca9d80000000000000000000000000000000000000000000000000000000081526004016106299190612073565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff163b0361068e57816040517fc2f31e5e0000000000000000000000000000000000000000000000000000000081526004016106859190612073565b60405180910390fd5b61069782610ee2565b5050565b60006106a682610f5d565b9050919050565b6106c56106b8610a55565b6106c0610cae565b610cbb565b6106cd610fa6565b565b6000606080600080600060606106e3611009565b6106eb611044565b46306000801b600067ffffffffffffffff81111561070c5761070b612228565b5b60405190808252806020026020018201604052801561073a5781602001602082028036833780820191505090505b507f0f00000000000000000000000000000000000000000000000000000000000000959493929190965096509650965096509650965090919293949596565b6000600560159054906101000a900460ff1661079957600060e01b6107a2565b638fb3603760e01b5b905090565b6060600480546107b6906121f7565b80601f01602080910402602001604051908101604052809291908181526020018280546107e2906121f7565b801561082f5780601f106108045761010080835404028352916020019161082f565b820191906000526020600020905b81548152906001019060200180831161081257829003601f168201915b5050505050905090565b600080610844610a55565b9050610851818585610b03565b600191505092915050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b834211156108cb57836040517f627913020000000000000000000000000000000000000000000000000000000081526004016108c29190611d5e565b60405180910390fd5b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886108fa8c61107f565b8960405160200161091096959493929190612257565b6040516020818303038152906040528051906020012090506000610933826110d6565b90506000610943828787876110f0565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146109b757808a6040517f4b800e460000000000000000000000000000000000000000000000000000000081526004016109ae9291906122b8565b60405180910390fd5b6109c28a8a8a610a5d565b50505050505050505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b610a6a8383836001611120565b505050565b6000610a7b84846109ce565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610afd5781811015610aed578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401610ae4939291906122e1565b60405180910390fd5b610afc84848484036000611120565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b755760006040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610b6c9190612073565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610be75760006040517fec442f05000000000000000000000000000000000000000000000000000000008152600401610bde9190612073565b60405180910390fd5b610bf28383836112f7565b505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015610c7357507f000000000000000000000000000000000000000000000000000000000000000046145b15610ca0577f00000000000000000000000000000000000000000000000000000000000000009050610cab565b610ca8611307565b90505b90565b3660008036915091509091565b600080610cef610cc961085c565b86308787600090600492610cdf93929190612322565b90610cea9190612375565b61139d565b9150915081610df65760008163ffffffff161115610db8576001600560156101000a81548160ff021916908315150217905550610d2a61085c565b73ffffffffffffffffffffffffffffffffffffffff166394c7d7ee8686866040518463ffffffff1660e01b8152600401610d6693929190612421565b600060405180830381600087803b158015610d8057600080fd5b505af1158015610d94573d6000803e3d6000fd5b505050506000600560156101000a81548160ff021916908315150217905550610df5565b846040517f068ca9d8000000000000000000000000000000000000000000000000000000008152600401610dec9190612073565b60405180910390fd5b5b5050505050565b610e056114c3565b6000600560006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa610e49610a55565b604051610e569190612073565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ed25760006040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610ec99190612073565b60405180910390fd5b610ede826000836112f7565b5050565b80600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad81604051610f529190612073565b60405180910390a150565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610fae611503565b6001600560006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610ff2610a55565b604051610fff9190612073565b60405180910390a1565b606061103f60067f000000000000000000000000000000000000000000000000000000000000000061154490919063ffffffff16565b905090565b606061107a60077f000000000000000000000000000000000000000000000000000000000000000061154490919063ffffffff16565b905090565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600101919050559050919050565b60006110e96110e3610bf7565b836115f4565b9050919050565b60008060008061110288888888611635565b9250925092506111128282611729565b829350505050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036111925760006040517fe602df050000000000000000000000000000000000000000000000000000000081526004016111899190612073565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112045760006040517f94280d620000000000000000000000000000000000000000000000000000000081526004016111fb9190612073565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080156112f1578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516112e89190611d5e565b60405180910390a35b50505050565b61130283838361188d565b505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000004630604051602001611382959493929190612453565b60405160208183030381529060405280519060200120905090565b6000806000808773ffffffffffffffffffffffffffffffffffffffff168787876040516024016113cf939291906124a6565b60405160208183030381529060405263b700961360e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516114219190612524565b600060405180830381855afa9150503d806000811461145c576040519150601f19603f3d011682016040523d82523d6000602084013e611461565b606091505b509150915081156114b8576040815110611496578080602001905181019061148991906125a3565b80945081955050506114b7565b60208151106114b657808060200190518101906114b391906125e3565b93505b5b5b505094509492505050565b6114cb610530565b611501576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b61150b610530565b15611542576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b606060ff60001b83146115615761155a836118a5565b90506115ee565b81805461156d906121f7565b80601f0160208091040260200160405190810160405280929190818152602001828054611599906121f7565b80156115e65780601f106115bb576101008083540402835291602001916115e6565b820191906000526020600020905b8154815290600101906020018083116115c957829003601f168201915b505050505090505b92915050565b60006040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b60008060007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08460001c111561167557600060038592509250925061171f565b60006001888888886040516000815260200160405260405161169a9493929190612610565b6020604051602081039080840390855afa1580156116bc573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361171057600060016000801b9350935093505061171f565b8060008060001b935093509350505b9450945094915050565b6000600381111561173d5761173c612655565b5b8260038111156117505761174f612655565b5b0315611889576001600381111561176a57611769612655565b5b82600381111561177d5761177c612655565b5b036117b4576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260038111156117c8576117c7612655565b5b8260038111156117db576117da612655565b5b03611820578060001c6040517ffce698f70000000000000000000000000000000000000000000000000000000081526004016118179190611d5e565b60405180910390fd5b60038081111561183357611832612655565b5b82600381111561184657611845612655565b5b0361188857806040517fd78bce0c00000000000000000000000000000000000000000000000000000000815260040161187f9190611e1c565b60405180910390fd5b5b5050565b611895611503565b6118a0838383611919565b505050565b606060006118b283611b3e565b90506000602067ffffffffffffffff8111156118d1576118d0612228565b5b6040519080825280601f01601f1916602001820160405280156119035781602001600182028036833780820191505090505b5090508181528360208201528092505050919050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361196b57806002600082825461195f91906126b3565b92505081905550611a3e565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156119f7578381836040517fe450d38c0000000000000000000000000000000000000000000000000000000081526004016119ee939291906122e1565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611a875780600260008282540392505081905550611ad4565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b319190611d5e565b60405180910390a3505050565b60008060ff8360001c169050601f811115611b85576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80915050919050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611bc8578082015181840152602081019050611bad565b60008484015250505050565b6000601f19601f8301169050919050565b6000611bf082611b8e565b611bfa8185611b99565b9350611c0a818560208601611baa565b611c1381611bd4565b840191505092915050565b60006020820190508181036000830152611c388184611be5565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611c7082611c45565b9050919050565b611c8081611c65565b8114611c8b57600080fd5b50565b600081359050611c9d81611c77565b92915050565b6000819050919050565b611cb681611ca3565b8114611cc157600080fd5b50565b600081359050611cd381611cad565b92915050565b60008060408385031215611cf057611cef611c40565b5b6000611cfe85828601611c8e565b9250506020611d0f85828601611cc4565b9150509250929050565b60008115159050919050565b611d2e81611d19565b82525050565b6000602082019050611d496000830184611d25565b92915050565b611d5881611ca3565b82525050565b6000602082019050611d736000830184611d4f565b92915050565b600080600060608486031215611d9257611d91611c40565b5b6000611da086828701611c8e565b9350506020611db186828701611c8e565b9250506040611dc286828701611cc4565b9150509250925092565b600060ff82169050919050565b611de281611dcc565b82525050565b6000602082019050611dfd6000830184611dd9565b92915050565b6000819050919050565b611e1681611e03565b82525050565b6000602082019050611e316000830184611e0d565b92915050565b600060208284031215611e4d57611e4c611c40565b5b6000611e5b84828501611cc4565b91505092915050565b600060208284031215611e7a57611e79611c40565b5b6000611e8884828501611c8e565b91505092915050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b611ec681611e91565b82525050565b611ed581611c65565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b611f1081611ca3565b82525050565b6000611f228383611f07565b60208301905092915050565b6000602082019050919050565b6000611f4682611edb565b611f508185611ee6565b9350611f5b83611ef7565b8060005b83811015611f8c578151611f738882611f16565b9750611f7e83611f2e565b925050600181019050611f5f565b5085935050505092915050565b600060e082019050611fae600083018a611ebd565b8181036020830152611fc08189611be5565b90508181036040830152611fd48188611be5565b9050611fe36060830187611d4f565b611ff06080830186611ecc565b611ffd60a0830185611e0d565b81810360c083015261200f8184611f3b565b905098975050505050505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6120528161201d565b82525050565b600060208201905061206d6000830184612049565b92915050565b60006020820190506120886000830184611ecc565b92915050565b61209781611dcc565b81146120a257600080fd5b50565b6000813590506120b48161208e565b92915050565b6120c381611e03565b81146120ce57600080fd5b50565b6000813590506120e0816120ba565b92915050565b600080600080600080600060e0888a03121561210557612104611c40565b5b60006121138a828b01611c8e565b97505060206121248a828b01611c8e565b96505060406121358a828b01611cc4565b95505060606121468a828b01611cc4565b94505060806121578a828b016120a5565b93505060a06121688a828b016120d1565b92505060c06121798a828b016120d1565b91505092959891949750929550565b6000806040838503121561219f5761219e611c40565b5b60006121ad85828601611c8e565b92505060206121be85828601611c8e565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061220f57607f821691505b602082108103612222576122216121c8565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600060c08201905061226c6000830189611e0d565b6122796020830188611ecc565b6122866040830187611ecc565b6122936060830186611d4f565b6122a06080830185611d4f565b6122ad60a0830184611d4f565b979650505050505050565b60006040820190506122cd6000830185611ecc565b6122da6020830184611ecc565b9392505050565b60006060820190506122f66000830186611ecc565b6123036020830185611d4f565b6123106040830184611d4f565b949350505050565b600080fd5b600080fd5b6000808585111561233657612335612318565b5b838611156123475761234661231d565b5b6001850283019150848603905094509492505050565b600082905092915050565b600082821b905092915050565b6000612381838361235d565b8261238c813561201d565b925060048210156123cc576123c77fffffffff0000000000000000000000000000000000000000000000000000000083600403600802612368565b831692505b505092915050565b600082825260208201905092915050565b82818337600083830152505050565b600061240083856123d4565b935061240d8385846123e5565b61241683611bd4565b840190509392505050565b60006040820190506124366000830186611ecc565b81810360208301526124498184866123f4565b9050949350505050565b600060a0820190506124686000830188611e0d565b6124756020830187611e0d565b6124826040830186611e0d565b61248f6060830185611d4f565b61249c6080830184611ecc565b9695505050505050565b60006060820190506124bb6000830186611ecc565b6124c86020830185611ecc565b6124d56040830184612049565b949350505050565b600081519050919050565b600081905092915050565b60006124fe826124dd565b61250881856124e8565b9350612518818560208601611baa565b80840191505092915050565b600061253082846124f3565b915081905092915050565b61254481611d19565b811461254f57600080fd5b50565b6000815190506125618161253b565b92915050565b600063ffffffff82169050919050565b61258081612567565b811461258b57600080fd5b50565b60008151905061259d81612577565b92915050565b600080604083850312156125ba576125b9611c40565b5b60006125c885828601612552565b92505060206125d98582860161258e565b9150509250929050565b6000602082840312156125f9576125f8611c40565b5b600061260784828501612552565b91505092915050565b60006080820190506126256000830187611e0d565b6126326020830186611dd9565b61263f6040830185611e0d565b61264c6060830184611e0d565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006126be82611ca3565b91506126c983611ca3565b92508282019050808211156126e1576126e0612684565b5b9291505056fea2646970667358221220add4b8e496e62d6381ed68ab206d751f743144dadc58d6442d031816e1069a7864736f6c63430008140033",
|
|
721
721
|
"linkReferences": {},
|
|
722
722
|
"deployedLinkReferences": {},
|
|
723
723
|
"devdoc": {
|
|
@@ -892,7 +892,7 @@
|
|
|
892
892
|
"details": "See {IERC20-transfer}. Requirements: - `to` cannot be the zero address. - the caller must have a balance of at least `value`."
|
|
893
893
|
},
|
|
894
894
|
"transferFrom(address,address,uint256)": {
|
|
895
|
-
"details": "See {IERC20-transferFrom}.
|
|
895
|
+
"details": "See {IERC20-transferFrom}. Skips emitting an {Approval} event indicating an allowance update. This is not required by the ERC. See {xref-ERC20-_approve-address-address-uint256-bool-}[_approve]. NOTE: Does not update the allowance if the current allowance is the maximum `uint256`. Requirements: - `from` and `to` cannot be the zero address. - `from` must have a balance of at least `value`. - the caller must have allowance for ``from``'s tokens of at least `value`."
|
|
896
896
|
}
|
|
897
897
|
},
|
|
898
898
|
"version": 1
|
package/package.json
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cartesi/devnet",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0-alpha.1",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"devDependencies": {
|
|
6
|
-
"@cartesi/rollups": "
|
|
7
|
-
"@nomicfoundation/hardhat-viem": "^2.0.
|
|
8
|
-
"@safe-global/safe-singleton-factory": "^1.0.
|
|
9
|
-
"@types/node": "^
|
|
10
|
-
"hardhat": "^2.22.
|
|
6
|
+
"@cartesi/rollups": "2.0.0-rc.12",
|
|
7
|
+
"@nomicfoundation/hardhat-viem": "^2.0.5",
|
|
8
|
+
"@safe-global/safe-singleton-factory": "^1.0.35",
|
|
9
|
+
"@types/node": "^22.8.4",
|
|
10
|
+
"hardhat": "^2.22.15",
|
|
11
11
|
"hardhat-abi-exporter": "^2",
|
|
12
|
-
"hardhat-deploy": "^0.
|
|
12
|
+
"hardhat-deploy": "^0.14.0",
|
|
13
13
|
"npm-run-all": "^4",
|
|
14
|
-
"rimraf": "^
|
|
15
|
-
"typescript": "^5.
|
|
16
|
-
"viem": "^2.
|
|
14
|
+
"rimraf": "^6.0.1",
|
|
15
|
+
"typescript": "^5.6.3",
|
|
16
|
+
"viem": "^2.21.37",
|
|
17
17
|
"tsconfig": "0.0.0"
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@openzeppelin/contracts": "5.0
|
|
20
|
+
"@openzeppelin/contracts": "5.1.0"
|
|
21
21
|
},
|
|
22
22
|
"files": [
|
|
23
23
|
"build",
|
|
@@ -1,276 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"address": "0x3890A047Cf9Af60731E80B2105362BbDCD70142D",
|
|
3
|
-
"abi": [
|
|
4
|
-
{
|
|
5
|
-
"inputs": [
|
|
6
|
-
{
|
|
7
|
-
"internalType": "contract IAuthorityFactory",
|
|
8
|
-
"name": "_authorityFactory",
|
|
9
|
-
"type": "address"
|
|
10
|
-
},
|
|
11
|
-
{
|
|
12
|
-
"internalType": "contract IHistoryFactory",
|
|
13
|
-
"name": "_historyFactory",
|
|
14
|
-
"type": "address"
|
|
15
|
-
}
|
|
16
|
-
],
|
|
17
|
-
"stateMutability": "nonpayable",
|
|
18
|
-
"type": "constructor"
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"anonymous": false,
|
|
22
|
-
"inputs": [
|
|
23
|
-
{
|
|
24
|
-
"indexed": false,
|
|
25
|
-
"internalType": "contract IAuthorityFactory",
|
|
26
|
-
"name": "authorityFactory",
|
|
27
|
-
"type": "address"
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
"indexed": false,
|
|
31
|
-
"internalType": "contract IHistoryFactory",
|
|
32
|
-
"name": "historyFactory",
|
|
33
|
-
"type": "address"
|
|
34
|
-
}
|
|
35
|
-
],
|
|
36
|
-
"name": "AuthorityHistoryPairFactoryCreated",
|
|
37
|
-
"type": "event"
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
"inputs": [
|
|
41
|
-
{
|
|
42
|
-
"internalType": "address",
|
|
43
|
-
"name": "_authorityOwner",
|
|
44
|
-
"type": "address"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"internalType": "bytes32",
|
|
48
|
-
"name": "_salt",
|
|
49
|
-
"type": "bytes32"
|
|
50
|
-
}
|
|
51
|
-
],
|
|
52
|
-
"name": "calculateAuthorityHistoryAddressPair",
|
|
53
|
-
"outputs": [
|
|
54
|
-
{
|
|
55
|
-
"internalType": "address",
|
|
56
|
-
"name": "authorityAddress_",
|
|
57
|
-
"type": "address"
|
|
58
|
-
},
|
|
59
|
-
{
|
|
60
|
-
"internalType": "address",
|
|
61
|
-
"name": "historyAddress_",
|
|
62
|
-
"type": "address"
|
|
63
|
-
}
|
|
64
|
-
],
|
|
65
|
-
"stateMutability": "view",
|
|
66
|
-
"type": "function"
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
"inputs": [],
|
|
70
|
-
"name": "getAuthorityFactory",
|
|
71
|
-
"outputs": [
|
|
72
|
-
{
|
|
73
|
-
"internalType": "contract IAuthorityFactory",
|
|
74
|
-
"name": "",
|
|
75
|
-
"type": "address"
|
|
76
|
-
}
|
|
77
|
-
],
|
|
78
|
-
"stateMutability": "view",
|
|
79
|
-
"type": "function"
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
"inputs": [],
|
|
83
|
-
"name": "getHistoryFactory",
|
|
84
|
-
"outputs": [
|
|
85
|
-
{
|
|
86
|
-
"internalType": "contract IHistoryFactory",
|
|
87
|
-
"name": "",
|
|
88
|
-
"type": "address"
|
|
89
|
-
}
|
|
90
|
-
],
|
|
91
|
-
"stateMutability": "view",
|
|
92
|
-
"type": "function"
|
|
93
|
-
},
|
|
94
|
-
{
|
|
95
|
-
"inputs": [
|
|
96
|
-
{
|
|
97
|
-
"internalType": "address",
|
|
98
|
-
"name": "_authorityOwner",
|
|
99
|
-
"type": "address"
|
|
100
|
-
}
|
|
101
|
-
],
|
|
102
|
-
"name": "newAuthorityHistoryPair",
|
|
103
|
-
"outputs": [
|
|
104
|
-
{
|
|
105
|
-
"internalType": "contract Authority",
|
|
106
|
-
"name": "authority_",
|
|
107
|
-
"type": "address"
|
|
108
|
-
},
|
|
109
|
-
{
|
|
110
|
-
"internalType": "contract History",
|
|
111
|
-
"name": "history_",
|
|
112
|
-
"type": "address"
|
|
113
|
-
}
|
|
114
|
-
],
|
|
115
|
-
"stateMutability": "nonpayable",
|
|
116
|
-
"type": "function"
|
|
117
|
-
},
|
|
118
|
-
{
|
|
119
|
-
"inputs": [
|
|
120
|
-
{
|
|
121
|
-
"internalType": "address",
|
|
122
|
-
"name": "_authorityOwner",
|
|
123
|
-
"type": "address"
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
"internalType": "bytes32",
|
|
127
|
-
"name": "_salt",
|
|
128
|
-
"type": "bytes32"
|
|
129
|
-
}
|
|
130
|
-
],
|
|
131
|
-
"name": "newAuthorityHistoryPair",
|
|
132
|
-
"outputs": [
|
|
133
|
-
{
|
|
134
|
-
"internalType": "contract Authority",
|
|
135
|
-
"name": "authority_",
|
|
136
|
-
"type": "address"
|
|
137
|
-
},
|
|
138
|
-
{
|
|
139
|
-
"internalType": "contract History",
|
|
140
|
-
"name": "history_",
|
|
141
|
-
"type": "address"
|
|
142
|
-
}
|
|
143
|
-
],
|
|
144
|
-
"stateMutability": "nonpayable",
|
|
145
|
-
"type": "function"
|
|
146
|
-
}
|
|
147
|
-
],
|
|
148
|
-
"transactionHash": "0x75c2f33a72b7612c3b4a9e08a8e9dc5c574ce4e87341b54756724fb89274e246",
|
|
149
|
-
"receipt": {
|
|
150
|
-
"to": "0x914d7Fec6aaC8cd542e72Bca78B30650d45643d7",
|
|
151
|
-
"from": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266",
|
|
152
|
-
"contractAddress": null,
|
|
153
|
-
"transactionIndex": 0,
|
|
154
|
-
"gasUsed": "460428",
|
|
155
|
-
"logsBloom": "0x00000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000004000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
|
|
156
|
-
"blockHash": "0xb598ee26ae0e679bc1e96dea4ffcdfe6f76c8e70a8ac11c1560514548c82e94c",
|
|
157
|
-
"transactionHash": "0x75c2f33a72b7612c3b4a9e08a8e9dc5c574ce4e87341b54756724fb89274e246",
|
|
158
|
-
"logs": [
|
|
159
|
-
{
|
|
160
|
-
"transactionIndex": 0,
|
|
161
|
-
"blockNumber": 16,
|
|
162
|
-
"transactionHash": "0x75c2f33a72b7612c3b4a9e08a8e9dc5c574ce4e87341b54756724fb89274e246",
|
|
163
|
-
"address": "0x3890A047Cf9Af60731E80B2105362BbDCD70142D",
|
|
164
|
-
"topics": [
|
|
165
|
-
"0x030bcdc35fc24f8a53829b016647c842a9d981d1fed3783a7e282b6e6c9ea4a9"
|
|
166
|
-
],
|
|
167
|
-
"data": "0x000000000000000000000000f26a5b278c25d8d41a136d22ad719eaced9c3e630000000000000000000000001f158b5320bbf677fda89f9a438df99bbe560a26",
|
|
168
|
-
"logIndex": 0,
|
|
169
|
-
"blockHash": "0xb598ee26ae0e679bc1e96dea4ffcdfe6f76c8e70a8ac11c1560514548c82e94c"
|
|
170
|
-
}
|
|
171
|
-
],
|
|
172
|
-
"blockNumber": 16,
|
|
173
|
-
"cumulativeGasUsed": "460428",
|
|
174
|
-
"status": 1,
|
|
175
|
-
"byzantium": true
|
|
176
|
-
},
|
|
177
|
-
"args": [
|
|
178
|
-
"0xf26a5b278C25D8D41A136d22Ad719EACEd9c3e63",
|
|
179
|
-
"0x1f158b5320BBf677FdA89F9a438df99BbE560A26"
|
|
180
|
-
],
|
|
181
|
-
"numDeployments": 1,
|
|
182
|
-
"bytecode": "0x60c060405234801561001057600080fd5b5060405161086f38038061086f83398101604081905261002f916100a0565b6001600160a01b03828116608081905290821660a08190526040805192835260208301919091527f030bcdc35fc24f8a53829b016647c842a9d981d1fed3783a7e282b6e6c9ea4a9910160405180910390a150506100da565b6001600160a01b038116811461009d57600080fd5b50565b600080604083850312156100b357600080fd5b82516100be81610088565b60208401519092506100cf81610088565b809150509250929050565b60805160a0516107486101276000396000818160f6015281816101ec01528181610313015261051601526000818160960152818161011f01528181610284015261044601526107486000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806339dcd4571461005c57806375689f8314610094578063b05cd1dc146100ce578063d73f347a146100e1578063f16b1a5c146100f4575b600080fd5b61006f61006a3660046106a5565b61011a565b604080516001600160a01b039384168152929091166020830152015b60405180910390f35b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b03909116815260200161008b565b61006f6100dc3660046106d1565b610262565b61006f6100ef3660046106a5565b610441565b7f00000000000000000000000000000000000000000000000000000000000000006100b6565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316629c5784306101568787610646565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401602060405180830381865afa15801561019f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c391906106f5565b60405163287ce2dd60e11b81526001600160a01b038083166004830152602482018690529193507f0000000000000000000000000000000000000000000000000000000000000000909116906350f9c5ba90604401602060405180830381865afa158015610235573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061025991906106f5565b90509250929050565b604051632ce946e160e21b815230600482015260009081906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b3a51b84906024016020604051808303816000875af11580156102cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f191906106f5565b60405163446a4d3160e11b81526001600160a01b0380831660048301529193507f0000000000000000000000000000000000000000000000000000000000000000909116906388d49a62906024016020604051808303816000875af115801561035e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061038291906106f5565b60405163159c5ea160e01b81526001600160a01b0380831660048301529192509083169063159c5ea190602401600060405180830381600087803b1580156103c957600080fd5b505af11580156103dd573d6000803e3d6000fd5b505060405163f2fde38b60e01b81526001600160a01b0386811660048301528516925063f2fde38b9150602401600060405180830381600087803b15801561042457600080fd5b505af1158015610438573d6000803e3d6000fd5b50505050915091565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635a3f27d33061047e8787610646565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af11580156104c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ed91906106f5565b604051632ab8b11560e01b81526001600160a01b038083166004830152602482018690529193507f000000000000000000000000000000000000000000000000000000000000000090911690632ab8b115906044016020604051808303816000875af1158015610561573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058591906106f5565b60405163159c5ea160e01b81526001600160a01b0380831660048301529192509083169063159c5ea190602401600060405180830381600087803b1580156105cc57600080fd5b505af11580156105e0573d6000803e3d6000fd5b505060405163f2fde38b60e01b81526001600160a01b0387811660048301528516925063f2fde38b9150602401600060405180830381600087803b15801561062757600080fd5b505af115801561063b573d6000803e3d6000fd5b505050509250929050565b6040516bffffffffffffffffffffffff19606084901b1660208201526034810182905260009060540160405160208183030381529060405280519060200120905092915050565b6001600160a01b03811681146106a257600080fd5b50565b600080604083850312156106b857600080fd5b82356106c38161068d565b946020939093013593505050565b6000602082840312156106e357600080fd5b81356106ee8161068d565b9392505050565b60006020828403121561070757600080fd5b81516106ee8161068d56fea2646970667358221220c9ff4c136426d9ba4f5c3e496e98c529a164caa845ab19e63e0cbefb6f48838664736f6c63430008130033",
|
|
183
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c806339dcd4571461005c57806375689f8314610094578063b05cd1dc146100ce578063d73f347a146100e1578063f16b1a5c146100f4575b600080fd5b61006f61006a3660046106a5565b61011a565b604080516001600160a01b039384168152929091166020830152015b60405180910390f35b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b03909116815260200161008b565b61006f6100dc3660046106d1565b610262565b61006f6100ef3660046106a5565b610441565b7f00000000000000000000000000000000000000000000000000000000000000006100b6565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316629c5784306101568787610646565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401602060405180830381865afa15801561019f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c391906106f5565b60405163287ce2dd60e11b81526001600160a01b038083166004830152602482018690529193507f0000000000000000000000000000000000000000000000000000000000000000909116906350f9c5ba90604401602060405180830381865afa158015610235573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061025991906106f5565b90509250929050565b604051632ce946e160e21b815230600482015260009081906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b3a51b84906024016020604051808303816000875af11580156102cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f191906106f5565b60405163446a4d3160e11b81526001600160a01b0380831660048301529193507f0000000000000000000000000000000000000000000000000000000000000000909116906388d49a62906024016020604051808303816000875af115801561035e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061038291906106f5565b60405163159c5ea160e01b81526001600160a01b0380831660048301529192509083169063159c5ea190602401600060405180830381600087803b1580156103c957600080fd5b505af11580156103dd573d6000803e3d6000fd5b505060405163f2fde38b60e01b81526001600160a01b0386811660048301528516925063f2fde38b9150602401600060405180830381600087803b15801561042457600080fd5b505af1158015610438573d6000803e3d6000fd5b50505050915091565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635a3f27d33061047e8787610646565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af11580156104c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ed91906106f5565b604051632ab8b11560e01b81526001600160a01b038083166004830152602482018690529193507f000000000000000000000000000000000000000000000000000000000000000090911690632ab8b115906044016020604051808303816000875af1158015610561573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058591906106f5565b60405163159c5ea160e01b81526001600160a01b0380831660048301529192509083169063159c5ea190602401600060405180830381600087803b1580156105cc57600080fd5b505af11580156105e0573d6000803e3d6000fd5b505060405163f2fde38b60e01b81526001600160a01b0387811660048301528516925063f2fde38b9150602401600060405180830381600087803b15801561062757600080fd5b505af115801561063b573d6000803e3d6000fd5b505050509250929050565b6040516bffffffffffffffffffffffff19606084901b1660208201526034810182905260009060540160405160208183030381529060405280519060200120905092915050565b6001600160a01b03811681146106a257600080fd5b50565b600080604083850312156106b857600080fd5b82356106c38161068d565b946020939093013593505050565b6000602082840312156106e357600080fd5b81356106ee8161068d565b9392505050565b60006020828403121561070757600080fd5b81516106ee8161068d56fea2646970667358221220c9ff4c136426d9ba4f5c3e496e98c529a164caa845ab19e63e0cbefb6f48838664736f6c63430008130033",
|
|
184
|
-
"devdoc": {
|
|
185
|
-
"events": {
|
|
186
|
-
"AuthorityHistoryPairFactoryCreated(address,address)": {
|
|
187
|
-
"details": "MUST be emitted on construction.",
|
|
188
|
-
"params": {
|
|
189
|
-
"authorityFactory": "The underlying `Authority` factory",
|
|
190
|
-
"historyFactory": "The underlying `History` factory"
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
},
|
|
194
|
-
"kind": "dev",
|
|
195
|
-
"methods": {
|
|
196
|
-
"calculateAuthorityHistoryAddressPair(address,bytes32)": {
|
|
197
|
-
"details": "Beware that only the `newAuthorityHistoryPair` function with the `_salt` parameter is able to deterministically deploy an authority-history pair.",
|
|
198
|
-
"params": {
|
|
199
|
-
"_authorityOwner": "The initial authority owner",
|
|
200
|
-
"_salt": "The salt used to deterministically generate the authority-history address pair"
|
|
201
|
-
},
|
|
202
|
-
"returns": {
|
|
203
|
-
"authorityAddress_": "The deterministic authority address",
|
|
204
|
-
"historyAddress_": "The deterministic history address"
|
|
205
|
-
}
|
|
206
|
-
},
|
|
207
|
-
"constructor": {
|
|
208
|
-
"params": {
|
|
209
|
-
"_authorityFactory": "The `Authority` factory",
|
|
210
|
-
"_historyFactory": "The `History` factory"
|
|
211
|
-
}
|
|
212
|
-
},
|
|
213
|
-
"getAuthorityFactory()": {
|
|
214
|
-
"returns": {
|
|
215
|
-
"_0": "The `Authority` factory"
|
|
216
|
-
}
|
|
217
|
-
},
|
|
218
|
-
"getHistoryFactory()": {
|
|
219
|
-
"returns": {
|
|
220
|
-
"_0": "The `History` factory"
|
|
221
|
-
}
|
|
222
|
-
},
|
|
223
|
-
"newAuthorityHistoryPair(address)": {
|
|
224
|
-
"params": {
|
|
225
|
-
"_authorityOwner": "The initial authority owner"
|
|
226
|
-
},
|
|
227
|
-
"returns": {
|
|
228
|
-
"authority_": "The authority",
|
|
229
|
-
"history_": "The history"
|
|
230
|
-
}
|
|
231
|
-
},
|
|
232
|
-
"newAuthorityHistoryPair(address,bytes32)": {
|
|
233
|
-
"params": {
|
|
234
|
-
"_authorityOwner": "The initial authority owner",
|
|
235
|
-
"_salt": "The salt used to deterministically generate the authority-history pair address"
|
|
236
|
-
},
|
|
237
|
-
"returns": {
|
|
238
|
-
"authority_": "The authority",
|
|
239
|
-
"history_": "The history"
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
},
|
|
243
|
-
"title": "Authority-History Pair Factory",
|
|
244
|
-
"version": 1
|
|
245
|
-
},
|
|
246
|
-
"userdoc": {
|
|
247
|
-
"events": {
|
|
248
|
-
"AuthorityHistoryPairFactoryCreated(address,address)": {
|
|
249
|
-
"notice": "The factory was created."
|
|
250
|
-
}
|
|
251
|
-
},
|
|
252
|
-
"kind": "user",
|
|
253
|
-
"methods": {
|
|
254
|
-
"calculateAuthorityHistoryAddressPair(address,bytes32)": {
|
|
255
|
-
"notice": "Calculate the address of an authority-history pair to be deployed deterministically."
|
|
256
|
-
},
|
|
257
|
-
"constructor": {
|
|
258
|
-
"notice": "Constructs the factory."
|
|
259
|
-
},
|
|
260
|
-
"getAuthorityFactory()": {
|
|
261
|
-
"notice": "Get the factory used to deploy `Authority` contracts"
|
|
262
|
-
},
|
|
263
|
-
"getHistoryFactory()": {
|
|
264
|
-
"notice": "Get the factory used to deploy `History` contracts"
|
|
265
|
-
},
|
|
266
|
-
"newAuthorityHistoryPair(address)": {
|
|
267
|
-
"notice": "Deploy a new authority-history pair."
|
|
268
|
-
},
|
|
269
|
-
"newAuthorityHistoryPair(address,bytes32)": {
|
|
270
|
-
"notice": "Deploy a new authority-history pair deterministically."
|
|
271
|
-
}
|
|
272
|
-
},
|
|
273
|
-
"notice": "Allows anyone to reliably deploy a new Authority-History pair.",
|
|
274
|
-
"version": 1
|
|
275
|
-
}
|
|
276
|
-
}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"address": "0xF5B2d8c81cDE4D6238bBf20D3D77DB37df13f735",
|
|
3
|
-
"abi": [],
|
|
4
|
-
"transactionHash": "0x20d730ed9ecb6b1cfd1038e40afec0fa4578a607f7c402eeebc2793d7c2fd456",
|
|
5
|
-
"receipt": {
|
|
6
|
-
"to": "0x914d7Fec6aaC8cd542e72Bca78B30650d45643d7",
|
|
7
|
-
"from": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266",
|
|
8
|
-
"contractAddress": null,
|
|
9
|
-
"transactionIndex": 0,
|
|
10
|
-
"gasUsed": "165207",
|
|
11
|
-
"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
|
|
12
|
-
"blockHash": "0x88a50b206539def50f0b64ed09428a0d002f081f61bf0342286595dd0a1ae9dd",
|
|
13
|
-
"transactionHash": "0x20d730ed9ecb6b1cfd1038e40afec0fa4578a607f7c402eeebc2793d7c2fd456",
|
|
14
|
-
"logs": [],
|
|
15
|
-
"blockNumber": 3,
|
|
16
|
-
"cumulativeGasUsed": "165207",
|
|
17
|
-
"status": 1,
|
|
18
|
-
"byzantium": true
|
|
19
|
-
},
|
|
20
|
-
"args": [],
|
|
21
|
-
"numDeployments": 1,
|
|
22
|
-
"bytecode": "0x61020461003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100405760003560e01c806303fbaf73146100455780636449da101461006c575b600080fd5b610058610053366004610130565b61008e565b604051901515815260200160405180910390f35b81801561007857600080fd5b5061008c610087366004610152565b6100ce565b005b60008061009d610100846101a6565b905060006100ad610100856101ba565b6000928352602095909552506040902054600190931b909216151592915050565b60006100dc610100846101a6565b905060006100ec610100856101ba565b9050821561011057600082815260208690526040902080546001831b179055610129565b600082815260208690526040902080546001831b191690555b5050505050565b6000806040838503121561014357600080fd5b50508035926020909101359150565b60008060006060848603121561016757600080fd5b83359250602084013591506040840135801515811461018557600080fd5b809150509250925092565b634e487b7160e01b600052601260045260246000fd5b6000826101b5576101b5610190565b500490565b6000826101c9576101c9610190565b50069056fea26469706673582212205733658d60667e5a9dc993e1c9ccf5fec105a4cfb880312e0e59e783894e9f8664736f6c63430008140033",
|
|
23
|
-
"deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100405760003560e01c806303fbaf73146100455780636449da101461006c575b600080fd5b610058610053366004610130565b61008e565b604051901515815260200160405180910390f35b81801561007857600080fd5b5061008c610087366004610152565b6100ce565b005b60008061009d610100846101a6565b905060006100ad610100856101ba565b6000928352602095909552506040902054600190931b909216151592915050565b60006100dc610100846101a6565b905060006100ec610100856101ba565b9050821561011057600082815260208690526040902080546001831b179055610129565b600082815260208690526040902080546001831b191690555b5050505050565b6000806040838503121561014357600080fd5b50508035926020909101359150565b60008060006060848603121561016757600080fd5b83359250602084013591506040840135801515811461018557600080fd5b809150509250925092565b634e487b7160e01b600052601260045260246000fd5b6000826101b5576101b5610190565b500490565b6000826101c9576101c9610190565b50069056fea26469706673582212205733658d60667e5a9dc993e1c9ccf5fec105a4cfb880312e0e59e783894e9f8664736f6c63430008140033",
|
|
24
|
-
"devdoc": {
|
|
25
|
-
"author": "Stephen Chen",
|
|
26
|
-
"kind": "dev",
|
|
27
|
-
"methods": {},
|
|
28
|
-
"title": "Bit Mask Library",
|
|
29
|
-
"version": 1
|
|
30
|
-
},
|
|
31
|
-
"userdoc": {
|
|
32
|
-
"kind": "user",
|
|
33
|
-
"methods": {
|
|
34
|
-
"getBit(mapping(uint256 => uint256) storage,uint256)": {
|
|
35
|
-
"notice": "Get a bit in the bit mask"
|
|
36
|
-
},
|
|
37
|
-
"setBit(mapping(uint256 => uint256) storage,uint256,bool)": {
|
|
38
|
-
"notice": "Set a bit in the bit mask"
|
|
39
|
-
}
|
|
40
|
-
},
|
|
41
|
-
"notice": "Implements bit mask with dynamic array",
|
|
42
|
-
"version": 1
|
|
43
|
-
}
|
|
44
|
-
}
|