@ensuro/core 2.8.3 → 2.9.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.
Files changed (48) hide show
  1. package/README.md +2 -3
  2. package/build/build-info.json +1 -0
  3. package/build/contracts/AccessManager.sol/AccessManager.json +2 -15
  4. package/build/contracts/ERC4626AssetManager.sol/ERC4626AssetManager.json +2 -2
  5. package/build/contracts/ERC4626PlusVaultAssetManager.sol/ERC4626PlusVaultAssetManager.json +2 -2
  6. package/build/contracts/EToken.sol/EToken.json +7 -85
  7. package/build/contracts/FullSignedBucketRiskModule.sol/FullSignedBucketRiskModule.json +1484 -0
  8. package/build/contracts/LPManualWhitelist.sol/LPManualWhitelist.json +7 -85
  9. package/build/contracts/Policy.sol/Policy.json +2 -2
  10. package/build/contracts/PolicyPool.sol/PolicyPool.json +2 -15
  11. package/build/contracts/PolicyPoolComponent.sol/PolicyPoolComponent.json +5 -83
  12. package/build/contracts/PremiumsAccount.sol/PremiumsAccount.json +7 -85
  13. package/build/contracts/Reserve.sol/Reserve.json +5 -83
  14. package/build/contracts/RiskModule.sol/RiskModule.json +5 -96
  15. package/build/contracts/SignedBucketRiskModule.sol/SignedBucketRiskModule.json +7 -150
  16. package/build/contracts/SignedQuoteRiskModule.sol/SignedQuoteRiskModule.json +7 -98
  17. package/build/contracts/TimeScaled.sol/TimeScaled.json +2 -2
  18. package/build/contracts/TrustfulRiskModule.sol/TrustfulRiskModule.json +7 -98
  19. package/build/contracts/dependencies/WadRayMath.sol/WadRayMath.json +2 -2
  20. package/build/contracts/migration/LPManualWhitelistV20.sol/LPManualWhitelistV20.json +5 -83
  21. package/build/contracts/migration/LPManualWhitelistV20Upgraded.sol/LPManualWhitelistV20Upgraded.json +7 -85
  22. package/build/contracts/mocks/FixedRateVault.sol/FixedRateVault.json +2 -2
  23. package/build/contracts/mocks/ForwardProxy.sol/ForwardProxy.json +2 -2
  24. package/build/contracts/mocks/InterfaceIdCalculator.sol/InterfaceIdCalculator.json +2 -2
  25. package/build/contracts/mocks/PolicyHolderMock.sol/PolicyHolderMock.json +2 -2
  26. package/build/contracts/mocks/PolicyPoolComponentMock.sol/PolicyPoolComponentMock.json +2 -2
  27. package/build/contracts/mocks/PolicyPoolMock.sol/PolicyPoolMock.json +2 -2
  28. package/build/contracts/mocks/PolicyPoolMock.sol/PolicyPoolMockForward.json +2 -2
  29. package/build/contracts/mocks/RiskModuleMock.sol/RiskModuleMock.json +7 -98
  30. package/build/contracts/mocks/TestCurrency.sol/TestCurrency.json +2 -2
  31. package/contracts/AccessManager.sol +0 -1
  32. package/contracts/EToken.sol +2 -20
  33. package/contracts/FullSignedBucketRiskModule.sol +204 -0
  34. package/contracts/PolicyPool.sol +0 -1
  35. package/contracts/PolicyPoolComponent.sol +7 -44
  36. package/contracts/PremiumsAccount.sol +3 -3
  37. package/contracts/RiskModule.sol +10 -21
  38. package/contracts/SignedBucketRiskModule.sol +15 -9
  39. package/contracts/SignedQuoteRiskModule.sol +7 -4
  40. package/js/deploy.js +1 -1
  41. package/js/test-utils.js +2 -92
  42. package/js/utils.js +67 -208
  43. package/package.json +1 -1
  44. package/scripts/deploySmokeTest-fork.sh +1 -1
  45. package/scripts/deploySmokeTest.sh +1 -1
  46. package/build/contracts/mocks/TestNFT.sol/TestNFT.json +0 -388
  47. package/contracts/mocks/TestNFT.sol +0 -23
  48. package/js/constants.js +0 -13
@@ -47,8 +47,8 @@
47
47
  "type": "function"
48
48
  }
49
49
  ],
50
- "bytecode": "0x60a060405234801561001057600080fd5b506040516101b63803806101b683398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b60805161012c61008a60003960006068015261012c6000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806301ffc9a71460375780634d15eb0314605b575b600080fd5b6046604236600460c7565b6091565b60405190151581526020015b60405180910390f35b6040516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001681526020016052565b60006001600160e01b031982166301ffc9a760e01b148060c157506001600160e01b03198216634d15eb0360e01b145b92915050565b60006020828403121560d857600080fd5b81356001600160e01b03198116811460ef57600080fd5b939250505056fea26469706673582212204ddecd14d183327892c5b3c08d263d0533948c4e844abb6e18a7b7ae6c7ea79b64736f6c63430008100033",
51
- "deployedBytecode": "0x6080604052348015600f57600080fd5b506004361060325760003560e01c806301ffc9a71460375780634d15eb0314605b575b600080fd5b6046604236600460c7565b6091565b60405190151581526020015b60405180910390f35b6040516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001681526020016052565b60006001600160e01b031982166301ffc9a760e01b148060c157506001600160e01b03198216634d15eb0360e01b145b92915050565b60006020828403121560d857600080fd5b81356001600160e01b03198116811460ef57600080fd5b939250505056fea26469706673582212204ddecd14d183327892c5b3c08d263d0533948c4e844abb6e18a7b7ae6c7ea79b64736f6c63430008100033",
50
+ "bytecode": "0x60a0604052348015600e575f5ffd5b506040516101a23803806101a2833981016040819052602b91603b565b6001600160a01b03166080526066565b5f60208284031215604a575f5ffd5b81516001600160a01b0381168114605f575f5ffd5b9392505050565b60805161012561007d5f395f606501526101255ff3fe6080604052348015600e575f5ffd5b50600436106030575f3560e01c806301ffc9a71460345780634d15eb03146058575b5f5ffd5b6043603f36600460c3565b608e565b60405190151581526020015b60405180910390f35b6040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152602001604f565b5f6001600160e01b031982166301ffc9a760e01b148060bd57506001600160e01b03198216634d15eb0360e01b145b92915050565b5f6020828403121560d2575f5ffd5b81356001600160e01b03198116811460e8575f5ffd5b939250505056fea2646970667358221220f1eb7420e4b253fba6a8f31a6ba8353cc65c2fa0e7493c43f3ff983cc1bc9d8064736f6c634300081c0033",
51
+ "deployedBytecode": "0x6080604052348015600e575f5ffd5b50600436106030575f3560e01c806301ffc9a71460345780634d15eb03146058575b5f5ffd5b6043603f36600460c3565b608e565b60405190151581526020015b60405180910390f35b6040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152602001604f565b5f6001600160e01b031982166301ffc9a760e01b148060bd57506001600160e01b03198216634d15eb0360e01b145b92915050565b5f6020828403121560d2575f5ffd5b81356001600160e01b03198116811460e8575f5ffd5b939250505056fea2646970667358221220f1eb7420e4b253fba6a8f31a6ba8353cc65c2fa0e7493c43f3ff983cc1bc9d8064736f6c634300081c0033",
52
52
  "linkReferences": {},
53
53
  "deployedLinkReferences": {}
54
54
  }
@@ -922,8 +922,8 @@
922
922
  "type": "function"
923
923
  }
924
924
  ],
925
- "bytecode": "0x608060405234801561001057600080fd5b506040516111da3803806111da83398101604081905261002f91610078565b600080546001600160a01b039384166001600160a01b031991821617909155600180549290931691161790556100b2565b6001600160a01b038116811461007557600080fd5b50565b6000806040838503121561008b57600080fd5b825161009681610060565b60208401519092506100a781610060565b809150509250929050565b611119806100c16000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c806371907f171161008c57806382afd23b1161006657806382afd23b146101cb578063e5a6b10f146101fd578063f3fef3a31461020e578063ffa600e31461022157600080fd5b806371907f1714610187578063792da09e146101985780637a702b3c146101b857600080fd5b806361d027b3116100c857806361d027b3146101335780636769a76f1461014e57806368d9523c146101615780636af6f1ef1461017457600080fd5b8063098d3228146100ef5780633ed7c1ae1461010b57806347e7ef241461011e575b600080fd5b6100f860001981565b6040519081526020015b60405180910390f35b6100f8610119366004610cf6565b610234565b61013161012c366004610d52565b610300565b005b60005b6040516001600160a01b039091168152602001610102565b6100f861015c366004610d7e565b61034d565b61013161016f366004610dd0565b6103d9565b610131610182366004610eb7565b61044a565b6001546001600160a01b0316610136565b6100f86101a6366004610edb565b60009081526003602052604090205490565b6101316101c6366004610ef4565b610466565b6101ed6101d9366004610edb565b600090815260036020526040902054151590565b6040519015158152602001610102565b6000546001600160a01b0316610136565b6100f861021c366004610d52565b610482565b61013161022f366004610f21565b6104cd565b6000816001600160601b031660608561016001516001600160a01b0316901b61025d9190610f76565b8452610268846104f5565b8451600090815260036020526040908190209190915561016086015190516001600160a01b038216907f38f420e3792044ba61536a1f83956eefc878b3fb09a7d4a28790f05b6a3eaf3b906102be908890610f8f565b60405180910390a28451865160405133907f4ff4ac703cb703b7ea535d47e65e64b4cabf11b3e2eb41f152dab17971953add90600090a4505091519392505050565b60405162461bcd60e51b815260206004820152601760248201527f4e6f7420496d706c656d656e746564206465706f73697400000000000000000060448201526064015b60405180910390fd5b6000816001600160601b031660608661016001516001600160a01b0316901b6103769190610f76565b8552610381856104f5565b855160009081526003602052604090819020919091555133907f38f420e3792044ba61536a1f83956eefc878b3fb09a7d4a28790f05b6a3eaf3b906103c7908890610f8f565b60405180910390a25050915192915050565b60006103fd88888888888864ffffffffff8916156103f75788610574565b42610574565b9050876001600160a01b03167f38f420e3792044ba61536a1f83956eefc878b3fb09a7d4a28790f05b6a3eaf3b826040516104389190610f8f565b60405180910390a25050505050505050565b61046361045c3683900383018361104d565b60006106e5565b50565b61047e6104783684900384018461104d565b826106e5565b5050565b60405162461bcd60e51b815260206004820152601860248201527f4e6f7420496d706c656d656e74656420776974686472617700000000000000006044820152600090606401610344565b61047e6104df3684900384018461104d565b826104eb5760006106e5565b83602001356106e5565b6000816040516020016105089190610f8f565b60408051601f19818403018152919052805160209091012090508061056f5760405162461bcd60e51b815260206004820152601860248201527f506f6c6963793a20686173682063616e6e6f74206265203000000000000000006044820152606401610344565b919050565b61057c610af4565b848611156105d75760405162461bcd60e51b815260206004820152602260248201527f5072656d69756d2063616e6e6f74206265206d6f7265207468616e207061796f6044820152611d5d60f21b6064820152608401610344565b6105df610af4565b6001600160a01b038916610160820152604081018790526020810186905260a0810185905264ffffffffff80841661018083015284166101a0820152600061062a89888888886108be565b805160c0840152602081015160608085019190915260408201516080808601919091529082015161012085015281015161014084015260a081015160e0808501919091528101519091508810156106c35760405162461bcd60e51b815260206004820152601960248201527f5072656d69756d206c657373207468616e206d696e696d756d000000000000006044820152606401610344565b60e08101516106d2908961106a565b6101008301525098975050505050505050565b81516000036107295760405162461bcd60e51b815260206004820152601060248201526f141bdb1a58de481b9bdd08199bdd5b9960821b6044820152606401610344565b8151600090815260036020526040902054610743836104f5565b146107855760405162461bcd60e51b8152602060048201526012602482015271090c2e6d040c8decae6dc4ee840dac2e8c6d60731b6044820152606401610344565b8161016001516001600160a01b0316336001600160a01b0316146108075760405162461bcd60e51b815260206004820152603360248201527f4f6e6c79207269736b4d6f64756c6520697320617574686f72697a656420746f604482015272207265736f6c76652074686520706f6c69637960681b6064820152608401610344565b81516000908152600260208181526040808420848155600181018590559283018490556003808401859055600484018590556005840185905560068401859055600784018590556008840185905560098401859055600a8401859055600b90930180546001600160f01b0319169055855184529181528183209290925583519051838152909133917f54f4a270ea08f88dc23b2520d6b063fecb24d956c4496f447926d736338f545e910160405180910390a35050565b61090660405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b855161091e90610917908690610abc565b8690610abc565b81526020860151610930908690610abc565b602082018190528151101561095a57805160208201805161095290839061106a565b905250610962565b600060208201525b6040860151610972908690610abc565b6040820152602081015181516109889190610f76565b816040015111156109bd57602081015181516109a49190610f76565b816040018181516109b5919061106a565b9052506109c5565b600060408201525b610a026301e133806109d7848661107d565b64ffffffffff168860a001516109ed91906110a2565b6109f791906110c1565b602083015190610abc565b6060820152610a446301e13380610a19848661107d565b64ffffffffff168860c00151610a2f91906110a2565b610a3991906110c1565b604083015190610abc565b608082018190526060820151600091610a5c91610f76565b9050610a75876080015182610abc90919063ffffffff16565b60608801518351610a8591610abc565b610a8f9190610f76565b60a0830181905282518291610aa391610f76565b610aad9190610f76565b60e08301525095945050505050565b600081156706f05b59d3b200001983900484111517610ada57600080fd5b50670de0b6b3a764000091026706f05b59d3b20000010490565b604051806101c00160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b03168152602001600064ffffffffff168152602001600064ffffffffff1681525090565b6040516101c0810167ffffffffffffffff81118282101715610bac57634e487b7160e01b600052604160045260246000fd5b60405290565b60405160e0810167ffffffffffffffff81118282101715610bac57634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461046357600080fd5b803561056f81610be3565b803564ffffffffff8116811461056f57600080fd5b60006101c08284031215610c2b57600080fd5b610c33610b7a565b9050813581526020820135602082015260408201356040820152606082013560608201526080820135608082015260a082013560a082015260c082013560c082015260e082013560e0820152610100808301358183015250610120808301358183015250610140808301358183015250610160610cb1818401610bf8565b90820152610180610cc3838201610c03565b908201526101a0610cd5838201610c03565b9082015292915050565b80356001600160601b038116811461056f57600080fd5b6000806000806103c08587031215610d0d57600080fd5b610d178686610c18565b9350610d27866101c08701610c18565b9250610380850135610d3881610be3565b9150610d476103a08601610cdf565b905092959194509250565b60008060408385031215610d6557600080fd5b8235610d7081610be3565b946020939093013593505050565b6000806000806102208587031215610d9557600080fd5b610d9f8686610c18565b93506101c0850135610db081610be3565b92506101e0850135610dc181610be3565b9150610d476102008601610cdf565b60008060008060008060008789036101a0811215610ded57600080fd5b8835610df881610be3565b975060e0601f1982011215610e0c57600080fd5b50610e15610bb2565b6020890135815260408901356020820152606089013560408201526080890135606082015260a0890135608082015260c089013560a082015260e089013560c082015280965050610100880135945061012088013593506101408801359250610e816101608901610c03565b9150610e906101808901610c03565b905092959891949750929550565b60006101c08284031215610eb157600080fd5b50919050565b60006101c08284031215610eca57600080fd5b610ed48383610e9e565b9392505050565b600060208284031215610eed57600080fd5b5035919050565b6000806101e08385031215610f0857600080fd5b610f128484610e9e565b946101c0939093013593505050565b6000806101e08385031215610f3557600080fd5b610f3f8484610e9e565b91506101c08301358015158114610f5557600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610f8957610f89610f60565b92915050565b60006101c082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015261010080840151818401525061012080840151818401525061014080840151818401525061016080840151611021828501826001600160a01b03169052565b50506101808381015164ffffffffff908116918401919091526101a09384015116929091019190915290565b60006101c0828403121561106057600080fd5b610ed48383610c18565b81810381811115610f8957610f89610f60565b64ffffffffff82811682821603908082111561109b5761109b610f60565b5092915050565b60008160001904831182151516156110bc576110bc610f60565b500290565b6000826110de57634e487b7160e01b600052601260045260246000fd5b50049056fea264697066735822122009bea973a38b5e0f8b12927e499bbd98e24e9c95a5ffb3633bd74fadd81582f764736f6c63430008100033",
926
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c806371907f171161008c57806382afd23b1161006657806382afd23b146101cb578063e5a6b10f146101fd578063f3fef3a31461020e578063ffa600e31461022157600080fd5b806371907f1714610187578063792da09e146101985780637a702b3c146101b857600080fd5b806361d027b3116100c857806361d027b3146101335780636769a76f1461014e57806368d9523c146101615780636af6f1ef1461017457600080fd5b8063098d3228146100ef5780633ed7c1ae1461010b57806347e7ef241461011e575b600080fd5b6100f860001981565b6040519081526020015b60405180910390f35b6100f8610119366004610cf6565b610234565b61013161012c366004610d52565b610300565b005b60005b6040516001600160a01b039091168152602001610102565b6100f861015c366004610d7e565b61034d565b61013161016f366004610dd0565b6103d9565b610131610182366004610eb7565b61044a565b6001546001600160a01b0316610136565b6100f86101a6366004610edb565b60009081526003602052604090205490565b6101316101c6366004610ef4565b610466565b6101ed6101d9366004610edb565b600090815260036020526040902054151590565b6040519015158152602001610102565b6000546001600160a01b0316610136565b6100f861021c366004610d52565b610482565b61013161022f366004610f21565b6104cd565b6000816001600160601b031660608561016001516001600160a01b0316901b61025d9190610f76565b8452610268846104f5565b8451600090815260036020526040908190209190915561016086015190516001600160a01b038216907f38f420e3792044ba61536a1f83956eefc878b3fb09a7d4a28790f05b6a3eaf3b906102be908890610f8f565b60405180910390a28451865160405133907f4ff4ac703cb703b7ea535d47e65e64b4cabf11b3e2eb41f152dab17971953add90600090a4505091519392505050565b60405162461bcd60e51b815260206004820152601760248201527f4e6f7420496d706c656d656e746564206465706f73697400000000000000000060448201526064015b60405180910390fd5b6000816001600160601b031660608661016001516001600160a01b0316901b6103769190610f76565b8552610381856104f5565b855160009081526003602052604090819020919091555133907f38f420e3792044ba61536a1f83956eefc878b3fb09a7d4a28790f05b6a3eaf3b906103c7908890610f8f565b60405180910390a25050915192915050565b60006103fd88888888888864ffffffffff8916156103f75788610574565b42610574565b9050876001600160a01b03167f38f420e3792044ba61536a1f83956eefc878b3fb09a7d4a28790f05b6a3eaf3b826040516104389190610f8f565b60405180910390a25050505050505050565b61046361045c3683900383018361104d565b60006106e5565b50565b61047e6104783684900384018461104d565b826106e5565b5050565b60405162461bcd60e51b815260206004820152601860248201527f4e6f7420496d706c656d656e74656420776974686472617700000000000000006044820152600090606401610344565b61047e6104df3684900384018461104d565b826104eb5760006106e5565b83602001356106e5565b6000816040516020016105089190610f8f565b60408051601f19818403018152919052805160209091012090508061056f5760405162461bcd60e51b815260206004820152601860248201527f506f6c6963793a20686173682063616e6e6f74206265203000000000000000006044820152606401610344565b919050565b61057c610af4565b848611156105d75760405162461bcd60e51b815260206004820152602260248201527f5072656d69756d2063616e6e6f74206265206d6f7265207468616e207061796f6044820152611d5d60f21b6064820152608401610344565b6105df610af4565b6001600160a01b038916610160820152604081018790526020810186905260a0810185905264ffffffffff80841661018083015284166101a0820152600061062a89888888886108be565b805160c0840152602081015160608085019190915260408201516080808601919091529082015161012085015281015161014084015260a081015160e0808501919091528101519091508810156106c35760405162461bcd60e51b815260206004820152601960248201527f5072656d69756d206c657373207468616e206d696e696d756d000000000000006044820152606401610344565b60e08101516106d2908961106a565b6101008301525098975050505050505050565b81516000036107295760405162461bcd60e51b815260206004820152601060248201526f141bdb1a58de481b9bdd08199bdd5b9960821b6044820152606401610344565b8151600090815260036020526040902054610743836104f5565b146107855760405162461bcd60e51b8152602060048201526012602482015271090c2e6d040c8decae6dc4ee840dac2e8c6d60731b6044820152606401610344565b8161016001516001600160a01b0316336001600160a01b0316146108075760405162461bcd60e51b815260206004820152603360248201527f4f6e6c79207269736b4d6f64756c6520697320617574686f72697a656420746f604482015272207265736f6c76652074686520706f6c69637960681b6064820152608401610344565b81516000908152600260208181526040808420848155600181018590559283018490556003808401859055600484018590556005840185905560068401859055600784018590556008840185905560098401859055600a8401859055600b90930180546001600160f01b0319169055855184529181528183209290925583519051838152909133917f54f4a270ea08f88dc23b2520d6b063fecb24d956c4496f447926d736338f545e910160405180910390a35050565b61090660405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b855161091e90610917908690610abc565b8690610abc565b81526020860151610930908690610abc565b602082018190528151101561095a57805160208201805161095290839061106a565b905250610962565b600060208201525b6040860151610972908690610abc565b6040820152602081015181516109889190610f76565b816040015111156109bd57602081015181516109a49190610f76565b816040018181516109b5919061106a565b9052506109c5565b600060408201525b610a026301e133806109d7848661107d565b64ffffffffff168860a001516109ed91906110a2565b6109f791906110c1565b602083015190610abc565b6060820152610a446301e13380610a19848661107d565b64ffffffffff168860c00151610a2f91906110a2565b610a3991906110c1565b604083015190610abc565b608082018190526060820151600091610a5c91610f76565b9050610a75876080015182610abc90919063ffffffff16565b60608801518351610a8591610abc565b610a8f9190610f76565b60a0830181905282518291610aa391610f76565b610aad9190610f76565b60e08301525095945050505050565b600081156706f05b59d3b200001983900484111517610ada57600080fd5b50670de0b6b3a764000091026706f05b59d3b20000010490565b604051806101c00160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b03168152602001600064ffffffffff168152602001600064ffffffffff1681525090565b6040516101c0810167ffffffffffffffff81118282101715610bac57634e487b7160e01b600052604160045260246000fd5b60405290565b60405160e0810167ffffffffffffffff81118282101715610bac57634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461046357600080fd5b803561056f81610be3565b803564ffffffffff8116811461056f57600080fd5b60006101c08284031215610c2b57600080fd5b610c33610b7a565b9050813581526020820135602082015260408201356040820152606082013560608201526080820135608082015260a082013560a082015260c082013560c082015260e082013560e0820152610100808301358183015250610120808301358183015250610140808301358183015250610160610cb1818401610bf8565b90820152610180610cc3838201610c03565b908201526101a0610cd5838201610c03565b9082015292915050565b80356001600160601b038116811461056f57600080fd5b6000806000806103c08587031215610d0d57600080fd5b610d178686610c18565b9350610d27866101c08701610c18565b9250610380850135610d3881610be3565b9150610d476103a08601610cdf565b905092959194509250565b60008060408385031215610d6557600080fd5b8235610d7081610be3565b946020939093013593505050565b6000806000806102208587031215610d9557600080fd5b610d9f8686610c18565b93506101c0850135610db081610be3565b92506101e0850135610dc181610be3565b9150610d476102008601610cdf565b60008060008060008060008789036101a0811215610ded57600080fd5b8835610df881610be3565b975060e0601f1982011215610e0c57600080fd5b50610e15610bb2565b6020890135815260408901356020820152606089013560408201526080890135606082015260a0890135608082015260c089013560a082015260e089013560c082015280965050610100880135945061012088013593506101408801359250610e816101608901610c03565b9150610e906101808901610c03565b905092959891949750929550565b60006101c08284031215610eb157600080fd5b50919050565b60006101c08284031215610eca57600080fd5b610ed48383610e9e565b9392505050565b600060208284031215610eed57600080fd5b5035919050565b6000806101e08385031215610f0857600080fd5b610f128484610e9e565b946101c0939093013593505050565b6000806101e08385031215610f3557600080fd5b610f3f8484610e9e565b91506101c08301358015158114610f5557600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610f8957610f89610f60565b92915050565b60006101c082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015261010080840151818401525061012080840151818401525061014080840151818401525061016080840151611021828501826001600160a01b03169052565b50506101808381015164ffffffffff908116918401919091526101a09384015116929091019190915290565b60006101c0828403121561106057600080fd5b610ed48383610c18565b81810381811115610f8957610f89610f60565b64ffffffffff82811682821603908082111561109b5761109b610f60565b5092915050565b60008160001904831182151516156110bc576110bc610f60565b500290565b6000826110de57634e487b7160e01b600052601260045260246000fd5b50049056fea264697066735822122009bea973a38b5e0f8b12927e499bbd98e24e9c95a5ffb3633bd74fadd81582f764736f6c63430008100033",
925
+ "bytecode": "0x6080604052348015600e575f5ffd5b5060405161117a38038061117a833981016040819052602b916070565b5f80546001600160a01b039384166001600160a01b0319918216179091556001805492909316911617905560a3565b6001600160a01b0381168114606d575f5ffd5b50565b5f5f604083850312156080575f5ffd5b8251608981605a565b6020840151909250609881605a565b809150509250929050565b6110ca806100b05f395ff3fe608060405234801561000f575f5ffd5b50600436106100e5575f3560e01c806371907f171161008857806382afd23b1161006357806382afd23b146101c2578063e5a6b10f146101f3578063f3fef3a314610203578063ffa600e314610216575f5ffd5b806371907f171461017f578063792da09e146101905780637a702b3c146101af575f5ffd5b806361d027b3116100c357806361d027b31461012c5780636769a76f1461014657806368d9523c146101595780636af6f1ef1461016c575f5ffd5b8063098d3228146100e95780633ed7c1ae1461010457806347e7ef2414610117575b5f5ffd5b6100f15f1981565b6040519081526020015b60405180910390f35b6100f1610112366004610cb9565b610229565b61012a610125366004610d12565b6102f2565b005b5f5b6040516001600160a01b0390911681526020016100fb565b6100f1610154366004610d3c565b61033f565b61012a610167366004610d8b565b6103c9565b61012a61017a366004610e77565b610439565b6001546001600160a01b031661012e565b6100f161019e366004610e99565b5f9081526003602052604090205490565b61012a6101bd366004610eb0565b610454565b6101e36101d0366004610e99565b5f90815260036020526040902054151590565b60405190151581526020016100fb565b5f546001600160a01b031661012e565b6100f1610211366004610d12565b610470565b61012a610224366004610edb565b6104ba565b5f816001600160601b031660608561016001516001600160a01b0316901b6102519190610f2b565b845261025c846104e1565b84515f90815260036020526040908190209190915561016086015190516001600160a01b038216907f38f420e3792044ba61536a1f83956eefc878b3fb09a7d4a28790f05b6a3eaf3b906102b1908890610f44565b60405180910390a28451865160405133907f4ff4ac703cb703b7ea535d47e65e64b4cabf11b3e2eb41f152dab17971953add905f90a4505091519392505050565b60405162461bcd60e51b815260206004820152601760248201527f4e6f7420496d706c656d656e746564206465706f73697400000000000000000060448201526064015b60405180910390fd5b5f816001600160601b031660608661016001516001600160a01b0316901b6103679190610f2b565b8552610372856104e1565b85515f9081526003602052604090819020919091555133907f38f420e3792044ba61536a1f83956eefc878b3fb09a7d4a28790f05b6a3eaf3b906103b7908890610f44565b60405180910390a25050915192915050565b5f6103ec88888888888864ffffffffff8916156103e6578861055f565b4261055f565b9050876001600160a01b03167f38f420e3792044ba61536a1f83956eefc878b3fb09a7d4a28790f05b6a3eaf3b826040516104279190610f44565b60405180910390a25050505050505050565b61045161044b36839003830183611013565b5f6106cf565b50565b61046c61046636849003840184611013565b826106cf565b5050565b60405162461bcd60e51b815260206004820152601860248201527f4e6f7420496d706c656d656e746564207769746864726177000000000000000060448201525f90606401610336565b61046c6104cc36849003840184611013565b826104d7575f6106cf565b83602001356106cf565b5f816040516020016104f39190610f44565b60408051601f19818403018152919052805160209091012090508061055a5760405162461bcd60e51b815260206004820152601860248201527f506f6c6963793a20686173682063616e6e6f74206265203000000000000000006044820152606401610336565b919050565b610567610ace565b848611156105c25760405162461bcd60e51b815260206004820152602260248201527f5072656d69756d2063616e6e6f74206265206d6f7265207468616e207061796f6044820152611d5d60f21b6064820152608401610336565b6105ca610ace565b6001600160a01b038916610160820152604081018790526020810186905260a0810185905264ffffffffff80841661018083015284166101a08201525f61061489888888886108a5565b805160c0840152602081015160608085019190915260408201516080808601919091529082015161012085015281015161014084015260a081015160e0808501919091528101519091508810156106ad5760405162461bcd60e51b815260206004820152601960248201527f5072656d69756d206c657373207468616e206d696e696d756d000000000000006044820152606401610336565b60e08101516106bc908961102e565b6101008301525098975050505050505050565b81515f036107125760405162461bcd60e51b815260206004820152601060248201526f141bdb1a58de481b9bdd08199bdd5b9960821b6044820152606401610336565b81515f9081526003602052604090205461072b836104e1565b1461076d5760405162461bcd60e51b8152602060048201526012602482015271090c2e6d040c8decae6dc4ee840dac2e8c6d60731b6044820152606401610336565b8161016001516001600160a01b0316336001600160a01b0316146107ef5760405162461bcd60e51b815260206004820152603360248201527f4f6e6c79207269736b4d6f64756c6520697320617574686f72697a656420746f604482015272207265736f6c76652074686520706f6c69637960681b6064820152608401610336565b81515f908152600260208181526040808420848155600181018590559283018490556003808401859055600484018590556005840185905560068401859055600784018590556008840185905560098401859055600a8401859055600b90930180546001600160f01b0319169055855184529181528183209290925583519051838152909133917f54f4a270ea08f88dc23b2520d6b063fecb24d956c4496f447926d736338f545e910160405180910390a35050565b6108e56040518061010001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b85516108fd906108f6908690610a98565b8690610a98565b8152602086015161090f908690610a98565b602082018190528151101561093957805160208201805161093190839061102e565b905250610940565b5f60208201525b6040860151610950908690610a98565b6040820152602081015181516109669190610f2b565b8160400151111561099b57602081015181516109829190610f2b565b81604001818151610993919061102e565b9052506109a2565b5f60408201525b6109df6301e133806109b48486611041565b64ffffffffff168860a001516109ca919061105e565b6109d49190611075565b602083015190610a98565b6060820152610a216301e133806109f68486611041565b64ffffffffff168860c00151610a0c919061105e565b610a169190611075565b604083015190610a98565b6080820181905260608201515f91610a3891610f2b565b9050610a51876080015182610a9890919063ffffffff16565b60608801518351610a6191610a98565b610a6b9190610f2b565b60a0830181905282518291610a7f91610f2b565b610a899190610f2b565b60e08301525095945050505050565b5f81156706f05b59d3b200001983900484111517610ab4575f5ffd5b50670de0b6b3a764000091026706f05b59d3b20000010490565b604051806101c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f6001600160a01b031681526020015f64ffffffffff1681526020015f64ffffffffff1681525090565b6040516101c0810167ffffffffffffffff81118282101715610b7657634e487b7160e01b5f52604160045260245ffd5b60405290565b60405160e0810167ffffffffffffffff81118282101715610b7657634e487b7160e01b5f52604160045260245ffd5b6001600160a01b0381168114610451575f5ffd5b803561055a81610bab565b803564ffffffffff8116811461055a575f5ffd5b5f6101c08284031215610bef575f5ffd5b610bf7610b46565b823581526020808401359082015260408084013590820152606080840135908201526080808401359082015260a0808401359082015260c0808401359082015260e080840135908201526101008084013590820152610120808401359082015261014080840135908201529050610c716101608301610bbf565b610160820152610c846101808301610bca565b610180820152610c976101a08301610bca565b6101a082015292915050565b80356001600160601b038116811461055a575f5ffd5b5f5f5f5f6103c08587031215610ccd575f5ffd5b610cd78686610bde565b9350610ce7866101c08701610bde565b9250610380850135610cf881610bab565b9150610d076103a08601610ca3565b905092959194509250565b5f5f60408385031215610d23575f5ffd5b8235610d2e81610bab565b946020939093013593505050565b5f5f5f5f6102208587031215610d50575f5ffd5b610d5a8686610bde565b93506101c0850135610d6b81610bab565b92506101e0850135610d7c81610bab565b9150610d076102008601610ca3565b5f5f5f5f5f5f5f8789036101a0811215610da3575f5ffd5b8835610dae81610bab565b975060e0601f1982011215610dc1575f5ffd5b50610dca610b7c565b60208981013582526040808b0135918301919091526060808b0135918301919091526080808b01359183019190915260a0808b01359183019190915260c0808b01359183019190915260e08a0135908201529550610100880135945061012088013593506101408801359250610e436101608901610bca565b9150610e526101808901610bca565b905092959891949750929550565b5f6101c08284031215610e71575f5ffd5b50919050565b5f6101c08284031215610e88575f5ffd5b610e928383610e60565b9392505050565b5f60208284031215610ea9575f5ffd5b5035919050565b5f5f6101e08385031215610ec2575f5ffd5b610ecc8484610e60565b946101c0939093013593505050565b5f5f6101e08385031215610eed575f5ffd5b610ef78484610e60565b91506101c08301358015158114610f0c575f5ffd5b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610f3e57610f3e610f17565b92915050565b5f6101c082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e0830152610100830151610100830152610120830151610120830152610140830151610140830152610160830151610fd66101608401826001600160a01b03169052565b50610180830151610ff161018084018264ffffffffff169052565b506101a083015161100c6101a084018264ffffffffff169052565b5092915050565b5f6101c08284031215611024575f5ffd5b610e928383610bde565b81810381811115610f3e57610f3e610f17565b64ffffffffff8281168282160390811115610f3e57610f3e610f17565b8082028115828204841417610f3e57610f3e610f17565b5f8261108f57634e487b7160e01b5f52601260045260245ffd5b50049056fea26469706673582212202875fb0cf7578627344944a973d9980bf2bde9372eb00d48a3697b0d51135c5d64736f6c634300081c0033",
926
+ "deployedBytecode": "0x608060405234801561000f575f5ffd5b50600436106100e5575f3560e01c806371907f171161008857806382afd23b1161006357806382afd23b146101c2578063e5a6b10f146101f3578063f3fef3a314610203578063ffa600e314610216575f5ffd5b806371907f171461017f578063792da09e146101905780637a702b3c146101af575f5ffd5b806361d027b3116100c357806361d027b31461012c5780636769a76f1461014657806368d9523c146101595780636af6f1ef1461016c575f5ffd5b8063098d3228146100e95780633ed7c1ae1461010457806347e7ef2414610117575b5f5ffd5b6100f15f1981565b6040519081526020015b60405180910390f35b6100f1610112366004610cb9565b610229565b61012a610125366004610d12565b6102f2565b005b5f5b6040516001600160a01b0390911681526020016100fb565b6100f1610154366004610d3c565b61033f565b61012a610167366004610d8b565b6103c9565b61012a61017a366004610e77565b610439565b6001546001600160a01b031661012e565b6100f161019e366004610e99565b5f9081526003602052604090205490565b61012a6101bd366004610eb0565b610454565b6101e36101d0366004610e99565b5f90815260036020526040902054151590565b60405190151581526020016100fb565b5f546001600160a01b031661012e565b6100f1610211366004610d12565b610470565b61012a610224366004610edb565b6104ba565b5f816001600160601b031660608561016001516001600160a01b0316901b6102519190610f2b565b845261025c846104e1565b84515f90815260036020526040908190209190915561016086015190516001600160a01b038216907f38f420e3792044ba61536a1f83956eefc878b3fb09a7d4a28790f05b6a3eaf3b906102b1908890610f44565b60405180910390a28451865160405133907f4ff4ac703cb703b7ea535d47e65e64b4cabf11b3e2eb41f152dab17971953add905f90a4505091519392505050565b60405162461bcd60e51b815260206004820152601760248201527f4e6f7420496d706c656d656e746564206465706f73697400000000000000000060448201526064015b60405180910390fd5b5f816001600160601b031660608661016001516001600160a01b0316901b6103679190610f2b565b8552610372856104e1565b85515f9081526003602052604090819020919091555133907f38f420e3792044ba61536a1f83956eefc878b3fb09a7d4a28790f05b6a3eaf3b906103b7908890610f44565b60405180910390a25050915192915050565b5f6103ec88888888888864ffffffffff8916156103e6578861055f565b4261055f565b9050876001600160a01b03167f38f420e3792044ba61536a1f83956eefc878b3fb09a7d4a28790f05b6a3eaf3b826040516104279190610f44565b60405180910390a25050505050505050565b61045161044b36839003830183611013565b5f6106cf565b50565b61046c61046636849003840184611013565b826106cf565b5050565b60405162461bcd60e51b815260206004820152601860248201527f4e6f7420496d706c656d656e746564207769746864726177000000000000000060448201525f90606401610336565b61046c6104cc36849003840184611013565b826104d7575f6106cf565b83602001356106cf565b5f816040516020016104f39190610f44565b60408051601f19818403018152919052805160209091012090508061055a5760405162461bcd60e51b815260206004820152601860248201527f506f6c6963793a20686173682063616e6e6f74206265203000000000000000006044820152606401610336565b919050565b610567610ace565b848611156105c25760405162461bcd60e51b815260206004820152602260248201527f5072656d69756d2063616e6e6f74206265206d6f7265207468616e207061796f6044820152611d5d60f21b6064820152608401610336565b6105ca610ace565b6001600160a01b038916610160820152604081018790526020810186905260a0810185905264ffffffffff80841661018083015284166101a08201525f61061489888888886108a5565b805160c0840152602081015160608085019190915260408201516080808601919091529082015161012085015281015161014084015260a081015160e0808501919091528101519091508810156106ad5760405162461bcd60e51b815260206004820152601960248201527f5072656d69756d206c657373207468616e206d696e696d756d000000000000006044820152606401610336565b60e08101516106bc908961102e565b6101008301525098975050505050505050565b81515f036107125760405162461bcd60e51b815260206004820152601060248201526f141bdb1a58de481b9bdd08199bdd5b9960821b6044820152606401610336565b81515f9081526003602052604090205461072b836104e1565b1461076d5760405162461bcd60e51b8152602060048201526012602482015271090c2e6d040c8decae6dc4ee840dac2e8c6d60731b6044820152606401610336565b8161016001516001600160a01b0316336001600160a01b0316146107ef5760405162461bcd60e51b815260206004820152603360248201527f4f6e6c79207269736b4d6f64756c6520697320617574686f72697a656420746f604482015272207265736f6c76652074686520706f6c69637960681b6064820152608401610336565b81515f908152600260208181526040808420848155600181018590559283018490556003808401859055600484018590556005840185905560068401859055600784018590556008840185905560098401859055600a8401859055600b90930180546001600160f01b0319169055855184529181528183209290925583519051838152909133917f54f4a270ea08f88dc23b2520d6b063fecb24d956c4496f447926d736338f545e910160405180910390a35050565b6108e56040518061010001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b85516108fd906108f6908690610a98565b8690610a98565b8152602086015161090f908690610a98565b602082018190528151101561093957805160208201805161093190839061102e565b905250610940565b5f60208201525b6040860151610950908690610a98565b6040820152602081015181516109669190610f2b565b8160400151111561099b57602081015181516109829190610f2b565b81604001818151610993919061102e565b9052506109a2565b5f60408201525b6109df6301e133806109b48486611041565b64ffffffffff168860a001516109ca919061105e565b6109d49190611075565b602083015190610a98565b6060820152610a216301e133806109f68486611041565b64ffffffffff168860c00151610a0c919061105e565b610a169190611075565b604083015190610a98565b6080820181905260608201515f91610a3891610f2b565b9050610a51876080015182610a9890919063ffffffff16565b60608801518351610a6191610a98565b610a6b9190610f2b565b60a0830181905282518291610a7f91610f2b565b610a899190610f2b565b60e08301525095945050505050565b5f81156706f05b59d3b200001983900484111517610ab4575f5ffd5b50670de0b6b3a764000091026706f05b59d3b20000010490565b604051806101c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f6001600160a01b031681526020015f64ffffffffff1681526020015f64ffffffffff1681525090565b6040516101c0810167ffffffffffffffff81118282101715610b7657634e487b7160e01b5f52604160045260245ffd5b60405290565b60405160e0810167ffffffffffffffff81118282101715610b7657634e487b7160e01b5f52604160045260245ffd5b6001600160a01b0381168114610451575f5ffd5b803561055a81610bab565b803564ffffffffff8116811461055a575f5ffd5b5f6101c08284031215610bef575f5ffd5b610bf7610b46565b823581526020808401359082015260408084013590820152606080840135908201526080808401359082015260a0808401359082015260c0808401359082015260e080840135908201526101008084013590820152610120808401359082015261014080840135908201529050610c716101608301610bbf565b610160820152610c846101808301610bca565b610180820152610c976101a08301610bca565b6101a082015292915050565b80356001600160601b038116811461055a575f5ffd5b5f5f5f5f6103c08587031215610ccd575f5ffd5b610cd78686610bde565b9350610ce7866101c08701610bde565b9250610380850135610cf881610bab565b9150610d076103a08601610ca3565b905092959194509250565b5f5f60408385031215610d23575f5ffd5b8235610d2e81610bab565b946020939093013593505050565b5f5f5f5f6102208587031215610d50575f5ffd5b610d5a8686610bde565b93506101c0850135610d6b81610bab565b92506101e0850135610d7c81610bab565b9150610d076102008601610ca3565b5f5f5f5f5f5f5f8789036101a0811215610da3575f5ffd5b8835610dae81610bab565b975060e0601f1982011215610dc1575f5ffd5b50610dca610b7c565b60208981013582526040808b0135918301919091526060808b0135918301919091526080808b01359183019190915260a0808b01359183019190915260c0808b01359183019190915260e08a0135908201529550610100880135945061012088013593506101408801359250610e436101608901610bca565b9150610e526101808901610bca565b905092959891949750929550565b5f6101c08284031215610e71575f5ffd5b50919050565b5f6101c08284031215610e88575f5ffd5b610e928383610e60565b9392505050565b5f60208284031215610ea9575f5ffd5b5035919050565b5f5f6101e08385031215610ec2575f5ffd5b610ecc8484610e60565b946101c0939093013593505050565b5f5f6101e08385031215610eed575f5ffd5b610ef78484610e60565b91506101c08301358015158114610f0c575f5ffd5b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610f3e57610f3e610f17565b92915050565b5f6101c082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e0830152610100830151610100830152610120830151610120830152610140830151610140830152610160830151610fd66101608401826001600160a01b03169052565b50610180830151610ff161018084018264ffffffffff169052565b506101a083015161100c6101a084018264ffffffffff169052565b5092915050565b5f6101c08284031215611024575f5ffd5b610e928383610bde565b81810381811115610f3e57610f3e610f17565b64ffffffffff8281168282160390811115610f3e57610f3e610f17565b8082028115828204841417610f3e57610f3e610f17565b5f8261108f57634e487b7160e01b5f52601260045260245ffd5b50049056fea26469706673582212202875fb0cf7578627344944a973d9980bf2bde9372eb00d48a3697b0d51135c5d64736f6c634300081c0033",
927
927
  "linkReferences": {},
928
928
  "deployedLinkReferences": {}
929
929
  }
@@ -85,8 +85,8 @@
85
85
  "type": "receive"
86
86
  }
87
87
  ],
88
- "bytecode": "0x608060405234801561001057600080fd5b5060405161029c38038061029c83398101604081905261002f91610089565b600080546001600160a01b039485166001600160a01b0319918216179091556001805493851693821693909317909255600280549190931691161790556100d6565b6001600160a01b038116811461008657600080fd5b50565b60008060006060848603121561009e57600080fd5b83516100a981610071565b60208501519093506100ba81610071565b60408501519092506100cb81610071565b809150509250925092565b6101b7806100e56000396000f3fe6080604052600436106100435760003560e01c8063098d32281461005a57806371907f1714610083578063d4b27001146100b5578063e5a6b10f146100f257610052565b3661005257610050610110565b005b610050610110565b34801561006657600080fd5b5061007060001981565b6040519081526020015b60405180910390f35b34801561008f57600080fd5b506002546001600160a01b03165b6040516001600160a01b03909116815260200161007a565b3480156100c157600080fd5b506100506100d0366004610151565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b3480156100fe57600080fd5b506001546001600160a01b031661009d565b61012a6101256000546001600160a01b031690565b61012c565b565b366000803760008036600080855af13d6000803e80801561014c573d6000f35b3d6000fd5b60006020828403121561016357600080fd5b81356001600160a01b038116811461017a57600080fd5b939250505056fea264697066735822122062fd91918bc01725c15dd148f560098512709abe6701730eeb2794c460b1ffdf64736f6c63430008100033",
89
- "deployedBytecode": "0x6080604052600436106100435760003560e01c8063098d32281461005a57806371907f1714610083578063d4b27001146100b5578063e5a6b10f146100f257610052565b3661005257610050610110565b005b610050610110565b34801561006657600080fd5b5061007060001981565b6040519081526020015b60405180910390f35b34801561008f57600080fd5b506002546001600160a01b03165b6040516001600160a01b03909116815260200161007a565b3480156100c157600080fd5b506100506100d0366004610151565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b3480156100fe57600080fd5b506001546001600160a01b031661009d565b61012a6101256000546001600160a01b031690565b61012c565b565b366000803760008036600080855af13d6000803e80801561014c573d6000f35b3d6000fd5b60006020828403121561016357600080fd5b81356001600160a01b038116811461017a57600080fd5b939250505056fea264697066735822122062fd91918bc01725c15dd148f560098512709abe6701730eeb2794c460b1ffdf64736f6c63430008100033",
88
+ "bytecode": "0x6080604052348015600e575f5ffd5b50604051610277380380610277833981016040819052602b916081565b5f80546001600160a01b039485166001600160a01b03199182161790915560018054938516938216939093179092556002805491909316911617905560c4565b6001600160a01b0381168114607e575f5ffd5b50565b5f5f5f606084860312156092575f5ffd5b8351609b81606b565b602085015190935060aa81606b565b604085015190925060b981606b565b809150509250925092565b6101a6806100d15f395ff3fe608060405260043610610042575f3560e01c8063098d32281461005957806371907f1714610080578063d4b27001146100b1578063e5a6b10f146100ec57610051565b366100515761004f610109565b005b61004f610109565b348015610064575f5ffd5b5061006d5f1981565b6040519081526020015b60405180910390f35b34801561008b575f5ffd5b506002546001600160a01b03165b6040516001600160a01b039091168152602001610077565b3480156100bc575f5ffd5b5061004f6100cb366004610143565b5f80546001600160a01b0319166001600160a01b0392909216919091179055565b3480156100f7575f5ffd5b506001546001600160a01b0316610099565b61012261011d5f546001600160a01b031690565b610124565b565b365f5f375f5f365f5f855af13d5f5f3e80801561013f573d5ff35b3d5ffd5b5f60208284031215610153575f5ffd5b81356001600160a01b0381168114610169575f5ffd5b939250505056fea26469706673582212200c7513b807fc9110b8816b0f6d7f1489bbe86e86fced945904183e4676b3060864736f6c634300081c0033",
89
+ "deployedBytecode": "0x608060405260043610610042575f3560e01c8063098d32281461005957806371907f1714610080578063d4b27001146100b1578063e5a6b10f146100ec57610051565b366100515761004f610109565b005b61004f610109565b348015610064575f5ffd5b5061006d5f1981565b6040519081526020015b60405180910390f35b34801561008b575f5ffd5b506002546001600160a01b03165b6040516001600160a01b039091168152602001610077565b3480156100bc575f5ffd5b5061004f6100cb366004610143565b5f80546001600160a01b0319166001600160a01b0392909216919091179055565b3480156100f7575f5ffd5b506001546001600160a01b0316610099565b61012261011d5f546001600160a01b031690565b610124565b565b365f5f375f5f365f5f855af13d5f5f3e80801561013f573d5ff35b3d5ffd5b5f60208284031215610153575f5ffd5b81356001600160a01b0381168114610169575f5ffd5b939250505056fea26469706673582212200c7513b807fc9110b8816b0f6d7f1489bbe86e86fced945904183e4676b3060864736f6c634300081c0033",
90
90
  "linkReferences": {},
91
91
  "deployedLinkReferences": {}
92
92
  }