@superfluid-finance/ethereum-contracts 1.7.2-dev.3cd1f8a.0 → 1.7.2-dev.3e0e33e.0

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 (209) hide show
  1. package/README.md +2 -2
  2. package/artifacts/contracts/apps/SuperAppBaseFlow.sol/SuperAppBaseFlow.json +13 -13
  3. package/artifacts/contracts/apps/SuperfluidLoaderLibrary.sol/SuperfluidLoaderLibrary.json +2 -2
  4. package/artifacts/contracts/mocks/IDASuperAppTester.sol/IDASuperAppTester.json +2 -2
  5. package/artifacts/contracts/mocks/MockSmartWallet.sol/MockSmartWallet.json +2 -2
  6. package/artifacts/contracts/mocks/SuperAppBaseFlowTester.sol/SuperAppBaseFlowTester.json +15 -15
  7. package/artifacts/contracts/mocks/SuperAppMocks.sol/SuperAppFactoryMock.json +2 -2
  8. package/artifacts/contracts/mocks/SuperAppMocks.sol/SuperAppMock.json +2 -2
  9. package/artifacts/contracts/mocks/SuperAppMocks.sol/SuperAppMock2ndLevel.json +2 -2
  10. package/artifacts/contracts/mocks/SuperAppMocks.sol/SuperAppMockAux.json +2 -2
  11. package/artifacts/contracts/mocks/SuperAppMocks.sol/SuperAppMockNotSelfRegistering.json +2 -2
  12. package/artifacts/contracts/mocks/SuperAppMocks.sol/SuperAppMockReturningEmptyCtx.json +2 -2
  13. package/artifacts/contracts/mocks/SuperAppMocks.sol/SuperAppMockReturningInvalidCtx.json +2 -2
  14. package/artifacts/contracts/mocks/SuperAppMocks.sol/SuperAppMockUsingDeprecatedRegisterApp.json +2 -2
  15. package/artifacts/contracts/mocks/SuperAppMocks.sol/SuperAppMockWithRegistrationKey.json +2 -2
  16. package/artifacts/contracts/mocks/SuperfluidMock.sol/SuperfluidMock.json +2 -2
  17. package/artifacts/contracts/mocks/SuperfluidMock.sol/SuperfluidUpgradabilityTester.json +2 -2
  18. package/artifacts/contracts/superfluid/Superfluid.sol/Superfluid.json +2 -2
  19. package/artifacts/contracts/utils/SuperfluidFrameworkDeployer.sol/SuperfluidFrameworkDeployer.json +2 -2
  20. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/CFAv1ForwarderDeployerLibrary.json +2 -2
  21. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/IDAv1ForwarderDeployerLibrary.json +2 -2
  22. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/ProxyDeployerLibrary.json +2 -2
  23. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/SuperTokenDeployerLibrary.json +2 -2
  24. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/SuperfluidCFAv1DeployerLibrary.json +2 -2
  25. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/SuperfluidFrameworkDeploymentSteps.json +2 -2
  26. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/SuperfluidGovDeployerLibrary.json +2 -2
  27. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/SuperfluidHostDeployerLibrary.json +2 -2
  28. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/SuperfluidIDAv1DeployerLibrary.json +2 -2
  29. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/SuperfluidLoaderDeployerLibrary.json +2 -2
  30. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/SuperfluidNFTLogicDeployerLibrary.json +2 -2
  31. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/SuperfluidPeripheryDeployerLibrary.json +2 -2
  32. package/artifacts/contracts/utils/SuperfluidFrameworkDeploymentSteps.sol/TokenDeployerLibrary.json +2 -2
  33. package/build/contracts/AccessControl.json +1 -1
  34. package/build/contracts/AccessControlEnumerable.json +1 -1
  35. package/build/contracts/Address.json +1 -1
  36. package/build/contracts/AgreementBase.json +18 -18
  37. package/build/contracts/AgreementLibrary.json +165 -165
  38. package/build/contracts/BaseRelayRecipient.json +57 -57
  39. package/build/contracts/BatchLiquidator.json +382 -382
  40. package/build/contracts/BatchOperation.json +614 -614
  41. package/build/contracts/CFAv1Forwarder.json +1250 -1250
  42. package/build/contracts/CFAv1ForwarderDeployerLibrary.json +2387 -2387
  43. package/build/contracts/CFAv1Library.json +389 -389
  44. package/build/contracts/CallUtils.json +198 -198
  45. package/build/contracts/ClosingOnUpdateFlowTestApp.json +1525 -1525
  46. package/build/contracts/ConstantFlowAgreementV1.json +1087 -1087
  47. package/build/contracts/ConstantInflowNFT.json +402 -402
  48. package/build/contracts/ConstantOutflowNFT.json +661 -661
  49. package/build/contracts/Context.json +1 -1
  50. package/build/contracts/ContextDefinitions.json +614 -614
  51. package/build/contracts/CustomSuperTokenBase.json +19 -19
  52. package/build/contracts/ERC165.json +1 -1
  53. package/build/contracts/ERC1820Implementer.json +1 -1
  54. package/build/contracts/ERC1820RegistryCompiled.json +22 -22
  55. package/build/contracts/ERC20.json +1 -1
  56. package/build/contracts/ERC20WithTokenInfo.json +23 -23
  57. package/build/contracts/ERC777Helper.json +384 -384
  58. package/build/contracts/ERC777RecipientDrainingGas.json +863 -863
  59. package/build/contracts/ERC777RecipientReverting.json +863 -863
  60. package/build/contracts/EnumerableSet.json +1 -1
  61. package/build/contracts/EventsEmitter.json +43 -43
  62. package/build/contracts/ExclusiveInflowTestApp.json +1525 -1525
  63. package/build/contracts/FixedSizeData.json +200 -200
  64. package/build/contracts/FlowExchangeTestApp.json +1526 -1526
  65. package/build/contracts/FlowNFTBase.json +1280 -1280
  66. package/build/contracts/FlowOperatorDefinitions.json +614 -614
  67. package/build/contracts/ForwarderBase.json +190 -190
  68. package/build/contracts/FullUpgradableSuperTokenProxy.json +116 -116
  69. package/build/contracts/IAccessControl.json +1 -1
  70. package/build/contracts/IAccessControlEnumerable.json +1 -1
  71. package/build/contracts/IConstantFlowAgreementV1.json +677 -677
  72. package/build/contracts/IConstantInflowNFT.json +54 -54
  73. package/build/contracts/IConstantOutflowNFT.json +107 -107
  74. package/build/contracts/IDAv1Forwarder.json +912 -912
  75. package/build/contracts/IDAv1ForwarderDeployerLibrary.json +2387 -2387
  76. package/build/contracts/IDAv1Library.json +430 -430
  77. package/build/contracts/IERC165.json +1 -1
  78. package/build/contracts/IERC1820Implementer.json +1 -1
  79. package/build/contracts/IERC1820Registry.json +1 -1
  80. package/build/contracts/IERC20.json +1 -1
  81. package/build/contracts/IERC20Metadata.json +1 -1
  82. package/build/contracts/IERC20Permit.json +1 -1
  83. package/build/contracts/IERC721.json +1 -1
  84. package/build/contracts/IERC721Metadata.json +1 -1
  85. package/build/contracts/IERC777.json +1 -1
  86. package/build/contracts/IERC777Recipient.json +1 -1
  87. package/build/contracts/IERC777Sender.json +1 -1
  88. package/build/contracts/IFlowNFTBase.json +115 -115
  89. package/build/contracts/IInstantDistributionAgreementV1.json +667 -667
  90. package/build/contracts/IMultiSigWallet.json +31 -31
  91. package/build/contracts/IPoolAdminNFT.json +7 -7
  92. package/build/contracts/IPoolMemberNFT.json +7 -7
  93. package/build/contracts/IPureSuperToken.json +62 -62
  94. package/build/contracts/IPureSuperTokenCustom.json +62 -62
  95. package/build/contracts/IRelayRecipient.json +27 -27
  96. package/build/contracts/IResolver.json +38 -38
  97. package/build/contracts/ISETH.json +67 -67
  98. package/build/contracts/ISETHCustom.json +67 -67
  99. package/build/contracts/ISuperAgreement.json +50 -50
  100. package/build/contracts/ISuperApp.json +191 -191
  101. package/build/contracts/ISuperToken.json +695 -695
  102. package/build/contracts/ISuperTokenFactory.json +225 -225
  103. package/build/contracts/ISuperfluid.json +904 -904
  104. package/build/contracts/ISuperfluidGovernance.json +251 -251
  105. package/build/contracts/ISuperfluidToken.json +407 -407
  106. package/build/contracts/ITOGAv1.json +1346 -1346
  107. package/build/contracts/ITOGAv2.json +1346 -1346
  108. package/build/contracts/ITOGAv3.json +1346 -1346
  109. package/build/contracts/Initializable.json +1 -1
  110. package/build/contracts/InstantDistributionAgreementV1.json +594 -594
  111. package/build/contracts/Math.json +1 -1
  112. package/build/contracts/NonClosableOutflowTestApp.json +1526 -1526
  113. package/build/contracts/Ownable.json +1 -1
  114. package/build/contracts/Proxy.json +1 -1
  115. package/build/contracts/ProxyDeployerLibrary.json +2385 -2385
  116. package/build/contracts/PureSuperToken.json +106 -106
  117. package/build/contracts/Resolver.json +98 -98
  118. package/build/contracts/SETHProxy.json +224 -224
  119. package/build/contracts/SafeCast.json +1 -1
  120. package/build/contracts/SafeERC20.json +1 -1
  121. package/build/contracts/SafeGasLibrary.json +51 -51
  122. package/build/contracts/SafeMath.json +1 -1
  123. package/build/contracts/SelfDeletingFlowTestApp.json +1525 -1525
  124. package/build/contracts/SlotsBitmapLibrary.json +457 -457
  125. package/build/contracts/StreamRedirector.json +704 -704
  126. package/build/contracts/Strings.json +1 -1
  127. package/build/contracts/SuperAppBase.json +42 -42
  128. package/build/contracts/SuperAppBaseFlow.json +1580 -1537
  129. package/build/contracts/SuperAppDefinitions.json +614 -614
  130. package/build/contracts/SuperToken.json +2714 -2714
  131. package/build/contracts/SuperTokenDeployerLibrary.json +2386 -2386
  132. package/build/contracts/SuperTokenFactory.json +1347 -1347
  133. package/build/contracts/SuperTokenFactoryBase.json +1329 -1329
  134. package/build/contracts/SuperTokenV1Library.json +5632 -5632
  135. package/build/contracts/SuperUpgrader.json +439 -439
  136. package/build/contracts/Superfluid.json +7999 -7996
  137. package/build/contracts/SuperfluidCFAv1DeployerLibrary.json +2386 -2386
  138. package/build/contracts/SuperfluidFrameworkDeployer.json +1263 -1263
  139. package/build/contracts/SuperfluidFrameworkDeploymentSteps.json +2385 -2385
  140. package/build/contracts/SuperfluidGovDeployerLibrary.json +2386 -2386
  141. package/build/contracts/SuperfluidGovernanceBase.json +2449 -2449
  142. package/build/contracts/SuperfluidGovernanceConfigs.json +614 -614
  143. package/build/contracts/SuperfluidGovernanceII.json +155 -155
  144. package/build/contracts/SuperfluidGovernanceIIProxy.json +135 -135
  145. package/build/contracts/SuperfluidHostDeployerLibrary.json +2385 -2385
  146. package/build/contracts/SuperfluidIDAv1DeployerLibrary.json +2386 -2386
  147. package/build/contracts/SuperfluidLoader.json +207 -207
  148. package/build/contracts/SuperfluidLoaderDeployerLibrary.json +2387 -2387
  149. package/build/contracts/SuperfluidLoaderLibrary.json +481 -480
  150. package/build/contracts/SuperfluidNFTLogicDeployerLibrary.json +2390 -2390
  151. package/build/contracts/SuperfluidPeripheryDeployerLibrary.json +2388 -2388
  152. package/build/contracts/SuperfluidToken.json +1423 -1423
  153. package/build/contracts/TOGA.json +1360 -1360
  154. package/build/contracts/TestGovernance.json +250 -250
  155. package/build/contracts/TestResolver.json +47 -47
  156. package/build/contracts/TestToken.json +102 -102
  157. package/build/contracts/TokenDeployerLibrary.json +2387 -2387
  158. package/build/contracts/TokenInfo.json +32 -32
  159. package/build/contracts/UUPSProxiable.json +139 -139
  160. package/build/contracts/UUPSProxy.json +81 -81
  161. package/build/contracts/UUPSUtils.json +37 -37
  162. package/build/contracts-sizes.txt +15 -15
  163. package/build/typechain/contracts/apps/SuperAppBaseFlow.d.ts +9 -9
  164. package/build/typechain/contracts/apps/SuperAppBaseFlow.d.ts.map +1 -1
  165. package/build/typechain/contracts/mocks/SuperAppBaseFlowTester.d.ts +9 -9
  166. package/build/typechain/contracts/mocks/SuperAppBaseFlowTester.d.ts.map +1 -1
  167. package/build/typechain/factories/contracts/apps/SuperAppBaseFlow__factory.d.ts +10 -10
  168. package/build/typechain/factories/contracts/apps/SuperAppBaseFlow__factory.js +13 -13
  169. package/build/typechain/factories/contracts/apps/SuperAppBaseFlow__factory.js.map +1 -1
  170. package/build/typechain/factories/contracts/apps/SuperfluidLoaderLibrary__factory.d.ts +1 -1
  171. package/build/typechain/factories/contracts/apps/SuperfluidLoaderLibrary__factory.js +1 -1
  172. package/build/typechain/factories/contracts/mocks/IDASuperAppTester__factory.d.ts +1 -1
  173. package/build/typechain/factories/contracts/mocks/IDASuperAppTester__factory.js +1 -1
  174. package/build/typechain/factories/contracts/mocks/MockSmartWallet__factory.d.ts +1 -1
  175. package/build/typechain/factories/contracts/mocks/MockSmartWallet__factory.js +1 -1
  176. package/build/typechain/factories/contracts/mocks/SuperAppBaseFlowTester__factory.d.ts +11 -11
  177. package/build/typechain/factories/contracts/mocks/SuperAppBaseFlowTester__factory.d.ts.map +1 -1
  178. package/build/typechain/factories/contracts/mocks/SuperAppBaseFlowTester__factory.js +14 -14
  179. package/build/typechain/factories/contracts/mocks/SuperAppBaseFlowTester__factory.js.map +1 -1
  180. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppFactoryMock__factory.d.ts +1 -1
  181. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppFactoryMock__factory.js +1 -1
  182. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMock2ndLevel__factory.d.ts +1 -1
  183. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMock2ndLevel__factory.js +1 -1
  184. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMockAux__factory.d.ts +1 -1
  185. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMockAux__factory.js +1 -1
  186. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMockReturningEmptyCtx__factory.d.ts +1 -1
  187. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMockReturningEmptyCtx__factory.js +1 -1
  188. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMockReturningInvalidCtx__factory.d.ts +1 -1
  189. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMockReturningInvalidCtx__factory.js +1 -1
  190. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMockUsingDeprecatedRegisterApp__factory.d.ts +1 -1
  191. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMockUsingDeprecatedRegisterApp__factory.js +1 -1
  192. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMockWithRegistrationKey__factory.d.ts +1 -1
  193. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMockWithRegistrationKey__factory.js +1 -1
  194. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMock__factory.d.ts +1 -1
  195. package/build/typechain/factories/contracts/mocks/SuperAppMocks.sol/SuperAppMock__factory.js +1 -1
  196. package/build/typechain/factories/contracts/mocks/SuperfluidMock.sol/SuperfluidMock__factory.d.ts +1 -1
  197. package/build/typechain/factories/contracts/mocks/SuperfluidMock.sol/SuperfluidMock__factory.js +1 -1
  198. package/build/typechain/factories/contracts/mocks/SuperfluidMock.sol/SuperfluidUpgradabilityTester__factory.d.ts +1 -1
  199. package/build/typechain/factories/contracts/mocks/SuperfluidMock.sol/SuperfluidUpgradabilityTester__factory.js +1 -1
  200. package/build/typechain/factories/contracts/superfluid/Superfluid__factory.d.ts +1 -1
  201. package/build/typechain/factories/contracts/superfluid/Superfluid__factory.js +1 -1
  202. package/build/typechain/factories/contracts/utils/SuperfluidFrameworkDeployer__factory.d.ts +1 -1
  203. package/build/typechain/factories/contracts/utils/SuperfluidFrameworkDeployer__factory.js +1 -1
  204. package/build/typechain/factories/contracts/utils/SuperfluidFrameworkDeploymentSteps__factory.d.ts +1 -1
  205. package/build/typechain/factories/contracts/utils/SuperfluidFrameworkDeploymentSteps__factory.js +1 -1
  206. package/contracts/apps/SuperAppBaseFlow.sol +11 -10
  207. package/contracts/apps/SuperfluidLoaderLibrary.sol +1 -1
  208. package/contracts/superfluid/Superfluid.sol +1 -0
  209. package/package.json +4 -3
@@ -3,8 +3,8 @@
3
3
  "contractName": "TokenDeployerLibrary",
4
4
  "sourceName": "contracts/utils/SuperfluidFrameworkDeploymentSteps.sol",
5
5
  "abi": [],
6
- "bytecode": "0x611a4d61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061004b5760003560e01c80631f2d189614610050578063a9442e4014610081578063f7c3bdc9146100a1575b600080fd5b81801561005c57600080fd5b506100656100b6565b6040516001600160a01b03909116815260200160405180910390f35b81801561008d57600080fd5b5061006561009c3660046101af565b6100e6565b8180156100ad57600080fd5b50610065610131565b60006040516100c49061013f565b604051809103906000f0801580156100e0573d6000803e3d6000fd5b50905090565b60008686868686866040516100fa9061014c565b6101099695949392919061026a565b604051809103906000f080158015610125573d6000803e3d6000fd5b50979650505050505050565b60006040516100c490610159565b6104db806102ab83390190565b610cce8061078683390190565b6105c48061145483390190565b60008083601f84011261017857600080fd5b50813567ffffffffffffffff81111561019057600080fd5b6020830191508360208285010111156101a857600080fd5b9250929050565b600080600080600080608087890312156101c857600080fd5b863567ffffffffffffffff808211156101e057600080fd5b6101ec8a838b01610166565b9098509650602089013591508082111561020557600080fd5b5061021289828a01610166565b909550935050604087013560ff8116811461022c57600080fd5b80925050606087013590509295509295509295565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60808152600061027e60808301888a610241565b8281036020840152610291818789610241565b60ff95909516604084015250506060015294935050505056fe608060405234801561001057600080fd5b506104bb806100206000396000f3fe60806040526004361061002d5760003560e01c80634a0687ef14610044578063b119490e146100645761003c565b3661003c5761003a610084565b005b61003a610084565b34801561005057600080fd5b5061003a61005f3660046102bc565b610096565b34801561007057600080fd5b5061003a61007f366004610335565b61019c565b61009461008f610269565b610298565b565b6001600160a01b0381166100f15760405162461bcd60e51b815260206004820152601760248201527f5555505350726f78793a207a65726f206164647265737300000000000000000060448201526064015b60405180910390fd5b600061011b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b0316146101715760405162461bcd60e51b815260206004820152601e60248201527f5555505350726f78793a20616c726561647920696e697469616c697a6564000060448201526064016100e8565b610199817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b50565b6040516285fc1360e71b815230906342fe0980906101ca906000906012908a908a908a908a906004016103d2565b600060405180830381600087803b1580156101e457600080fd5b505af11580156101f8573d6000803e3d6000fd5b50506040805160008152602081019182905263c68d428360e01b90915230925063c68d42839150610230903390859060248101610420565b600060405180830381600087803b15801561024a57600080fd5b505af115801561025e573d6000803e3d6000fd5b505050505050505050565b60006102937f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905090565b3660008037600080366000845af43d6000803e8080156102b7573d6000f35b3d6000fd5b6000602082840312156102ce57600080fd5b81356001600160a01b03811681146102e557600080fd5b9392505050565b60008083601f8401126102fe57600080fd5b50813567ffffffffffffffff81111561031657600080fd5b60208301915083602082850101111561032e57600080fd5b9250929050565b60008060008060006060868803121561034d57600080fd5b853567ffffffffffffffff8082111561036557600080fd5b61037189838a016102ec565b9097509550602088013591508082111561038a57600080fd5b50610397888289016102ec565b96999598509660400135949350505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b038716815260ff8616602082015260806040820181905260009061040090830186886103a9565b82810360608401526104138185876103a9565b9998505050505050505050565b60018060a01b038416815260006020848184015260606040840152835180606085015260005b8181101561046257858101830151858201608001528201610446565b506000608082860101526080601f19601f8301168501019250505094935050505056fea2646970667358221220004989ff63d900c0a077d26e2fd5bb92279ffac8f513f074cda2a79ae26b309264736f6c6343000813003360a06040523480156200001157600080fd5b5060405162000cce38038062000cce83398101604081905262000034916200013c565b8383600362000044838262000256565b50600462000053828262000256565b50506005805460ff191660ff94909416939093179092556080525062000322915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200009f57600080fd5b81516001600160401b0380821115620000bc57620000bc62000077565b604051601f8301601f19908116603f01168101908282118183101715620000e757620000e762000077565b816040528381526020925086838588010111156200010457600080fd5b600091505b8382101562000128578582018301518183018401529082019062000109565b600093810190920192909252949350505050565b600080600080608085870312156200015357600080fd5b84516001600160401b03808211156200016b57600080fd5b62000179888389016200008d565b955060208701519150808211156200019057600080fd5b506200019f878288016200008d565b935050604085015160ff81168114620001b757600080fd5b6060959095015193969295505050565b600181811c90821680620001dc57607f821691505b602082108103620001fd57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200025157600081815260208120601f850160051c810160208610156200022c5750805b601f850160051c820191505b818110156200024d5782815560010162000238565b5050505b505050565b81516001600160401b0381111562000272576200027262000077565b6200028a81620002838454620001c7565b8462000203565b602080601f831160018114620002c25760008415620002a95750858301515b600019600386901b1c1916600185901b1785556200024d565b600085815260208120601f198616915b82811015620002f357888601518255948401946001909101908401620002d2565b5085821015620003125787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6080516109906200033e60003960006102ba01526109906000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806340c10f191161007157806340c10f191461014757806370a082311461015a57806395d89b4114610183578063a457c2d71461018b578063a9059cbb1461019e578063dd62ed3e146101b157600080fd5b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f5780633950935114610134575b600080fd5b6100c16101c4565b6040516100ce91906107c4565b60405180910390f35b6100ea6100e536600461082e565b610256565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a366004610858565b610270565b60055460405160ff90911681526020016100ce565b6100ea61014236600461082e565b610294565b6100ea61015536600461082e565b6102b6565b6100fe610168366004610894565b6001600160a01b031660009081526020819052604090205490565b6100c16102fb565b6100ea61019936600461082e565b61030a565b6100ea6101ac36600461082e565b61038a565b6100fe6101bf3660046108b6565b610398565b6060600380546101d3906108e9565b80601f01602080910402602001604051908101604052809291908181526020018280546101ff906108e9565b801561024c5780601f106102215761010080835404028352916020019161024c565b820191906000526020600020905b81548152906001019060200180831161022f57829003601f168201915b5050505050905090565b6000336102648185856103c3565b60019150505b92915050565b60003361027e8582856104e7565b610289858585610561565b506001949350505050565b6000336102648185856102a78383610398565b6102b19190610923565b6103c3565b60007f00000000000000000000000000000000000000000000000000000000000000008211156102e8576102e8610944565b6102f28383610705565b50600192915050565b6060600480546101d3906108e9565b600033816103188286610398565b90508381101561037d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61028982868684036103c3565b600033610264818585610561565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166104255760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610374565b6001600160a01b0382166104865760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610374565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006104f38484610398565b9050600019811461055b578181101561054e5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610374565b61055b84848484036103c3565b50505050565b6001600160a01b0383166105c55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610374565b6001600160a01b0382166106275760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610374565b6001600160a01b0383166000908152602081905260409020548181101561069f5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610374565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361055b565b6001600160a01b03821661075b5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610374565b806002600082825461076d9190610923565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b818110156107f1578581018301518582016040015282016107d5565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461082957600080fd5b919050565b6000806040838503121561084157600080fd5b61084a83610812565b946020939093013593505050565b60008060006060848603121561086d57600080fd5b61087684610812565b925061088460208501610812565b9150604084013590509250925092565b6000602082840312156108a657600080fd5b6108af82610812565b9392505050565b600080604083850312156108c957600080fd5b6108d283610812565b91506108e060208401610812565b90509250929050565b600181811c908216806108fd57607f821691505b60208210810361091d57634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026a57634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052600160045260246000fdfea26469706673582212205658b6013df97f49d439b32e1119c432a1c915ede9534951c6bc6ff876e2454b64736f6c63430008130033608060405234801561001057600080fd5b506105a4806100206000396000f3fe6080604052600436106100435760003560e01c8063160e8be3146100ef5780634a0687ef1461010f5780637687d19b1461012f578063cf81464b14610142576100e5565b366100e5576040805160008152602081019182905263c68d428360e01b909152309063c68d42839061007c9033903490602481016104c0565b600060405180830381600087803b15801561009657600080fd5b505af11580156100aa573d6000803e3d6000fd5b50506040513481523392507f25ca84076773b0455db53621c459ddc84fe40840e4932a62706a032566f399df915060200160405180910390a2005b6100ed61014a565b005b3480156100fb57600080fd5b506100ed61010a366004610525565b61015c565b34801561011b57600080fd5b506100ed61012a36600461053e565b610229565b6100ed61013d36600461053e565b61032f565b6100ed6103d0565b61015a61015561046d565b61049c565b565b60408051600081526020810191829052639d87674160e01b9091523090639d876741906101909033908590602481016104c0565b600060405180830381600087803b1580156101aa57600080fd5b505af11580156101be573d6000803e3d6000fd5b505060405133925083156108fc02915083906000818181858888f193505050501580156101ef573d6000803e3d6000fd5b5060405181815233907f3bc27981aebbb57f9247dc00fde9d6cd91e4b230083fec3238fedbcba1f9ab3d906020015b60405180910390a250565b6001600160a01b0381166102845760405162461bcd60e51b815260206004820152601760248201527f5555505350726f78793a207a65726f206164647265737300000000000000000060448201526064015b60405180910390fd5b60006102ae7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b0316146103045760405162461bcd60e51b815260206004820152601e60248201527f5555505350726f78793a20616c726561647920696e697469616c697a65640000604482015260640161027b565b61032c817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b50565b6040805160008152602081019182905263c68d428360e01b909152309063c68d4283906103639084903490602481016104c0565b600060405180830381600087803b15801561037d57600080fd5b505af1158015610391573d6000803e3d6000fd5b50505050806001600160a01b03167f25ca84076773b0455db53621c459ddc84fe40840e4932a62706a032566f399df3460405161021e91815260200190565b6040805160008152602081019182905263c68d428360e01b909152309063c68d4283906104049033903490602481016104c0565b600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b50506040513481523392507f25ca84076773b0455db53621c459ddc84fe40840e4932a62706a032566f399df915060200160405180910390a2565b60006104977f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905090565b3660008037600080366000845af43d6000803e8080156104bb573d6000f35b3d6000fd5b60018060a01b038416815260006020848184015260606040840152835180606085015260005b81811015610502578581018301518582016080015282016104e6565b506000608082860101526080601f19601f83011685010192505050949350505050565b60006020828403121561053757600080fd5b5035919050565b60006020828403121561055057600080fd5b81356001600160a01b038116811461056757600080fd5b939250505056fea2646970667358221220490b06cbbce9568f10ceabbfd3d4ebe6e337b4c4446c976b8f84cd882fb7a8f764736f6c63430008130033a2646970667358221220b4948de1edba726fa6c44ac4d332fff6681ff5bef7562e76bd4d964ccb163d0b64736f6c63430008130033",
7
- "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061004b5760003560e01c80631f2d189614610050578063a9442e4014610081578063f7c3bdc9146100a1575b600080fd5b81801561005c57600080fd5b506100656100b6565b6040516001600160a01b03909116815260200160405180910390f35b81801561008d57600080fd5b5061006561009c3660046101af565b6100e6565b8180156100ad57600080fd5b50610065610131565b60006040516100c49061013f565b604051809103906000f0801580156100e0573d6000803e3d6000fd5b50905090565b60008686868686866040516100fa9061014c565b6101099695949392919061026a565b604051809103906000f080158015610125573d6000803e3d6000fd5b50979650505050505050565b60006040516100c490610159565b6104db806102ab83390190565b610cce8061078683390190565b6105c48061145483390190565b60008083601f84011261017857600080fd5b50813567ffffffffffffffff81111561019057600080fd5b6020830191508360208285010111156101a857600080fd5b9250929050565b600080600080600080608087890312156101c857600080fd5b863567ffffffffffffffff808211156101e057600080fd5b6101ec8a838b01610166565b9098509650602089013591508082111561020557600080fd5b5061021289828a01610166565b909550935050604087013560ff8116811461022c57600080fd5b80925050606087013590509295509295509295565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60808152600061027e60808301888a610241565b8281036020840152610291818789610241565b60ff95909516604084015250506060015294935050505056fe608060405234801561001057600080fd5b506104bb806100206000396000f3fe60806040526004361061002d5760003560e01c80634a0687ef14610044578063b119490e146100645761003c565b3661003c5761003a610084565b005b61003a610084565b34801561005057600080fd5b5061003a61005f3660046102bc565b610096565b34801561007057600080fd5b5061003a61007f366004610335565b61019c565b61009461008f610269565b610298565b565b6001600160a01b0381166100f15760405162461bcd60e51b815260206004820152601760248201527f5555505350726f78793a207a65726f206164647265737300000000000000000060448201526064015b60405180910390fd5b600061011b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b0316146101715760405162461bcd60e51b815260206004820152601e60248201527f5555505350726f78793a20616c726561647920696e697469616c697a6564000060448201526064016100e8565b610199817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b50565b6040516285fc1360e71b815230906342fe0980906101ca906000906012908a908a908a908a906004016103d2565b600060405180830381600087803b1580156101e457600080fd5b505af11580156101f8573d6000803e3d6000fd5b50506040805160008152602081019182905263c68d428360e01b90915230925063c68d42839150610230903390859060248101610420565b600060405180830381600087803b15801561024a57600080fd5b505af115801561025e573d6000803e3d6000fd5b505050505050505050565b60006102937f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905090565b3660008037600080366000845af43d6000803e8080156102b7573d6000f35b3d6000fd5b6000602082840312156102ce57600080fd5b81356001600160a01b03811681146102e557600080fd5b9392505050565b60008083601f8401126102fe57600080fd5b50813567ffffffffffffffff81111561031657600080fd5b60208301915083602082850101111561032e57600080fd5b9250929050565b60008060008060006060868803121561034d57600080fd5b853567ffffffffffffffff8082111561036557600080fd5b61037189838a016102ec565b9097509550602088013591508082111561038a57600080fd5b50610397888289016102ec565b96999598509660400135949350505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b038716815260ff8616602082015260806040820181905260009061040090830186886103a9565b82810360608401526104138185876103a9565b9998505050505050505050565b60018060a01b038416815260006020848184015260606040840152835180606085015260005b8181101561046257858101830151858201608001528201610446565b506000608082860101526080601f19601f8301168501019250505094935050505056fea2646970667358221220004989ff63d900c0a077d26e2fd5bb92279ffac8f513f074cda2a79ae26b309264736f6c6343000813003360a06040523480156200001157600080fd5b5060405162000cce38038062000cce83398101604081905262000034916200013c565b8383600362000044838262000256565b50600462000053828262000256565b50506005805460ff191660ff94909416939093179092556080525062000322915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200009f57600080fd5b81516001600160401b0380821115620000bc57620000bc62000077565b604051601f8301601f19908116603f01168101908282118183101715620000e757620000e762000077565b816040528381526020925086838588010111156200010457600080fd5b600091505b8382101562000128578582018301518183018401529082019062000109565b600093810190920192909252949350505050565b600080600080608085870312156200015357600080fd5b84516001600160401b03808211156200016b57600080fd5b62000179888389016200008d565b955060208701519150808211156200019057600080fd5b506200019f878288016200008d565b935050604085015160ff81168114620001b757600080fd5b6060959095015193969295505050565b600181811c90821680620001dc57607f821691505b602082108103620001fd57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200025157600081815260208120601f850160051c810160208610156200022c5750805b601f850160051c820191505b818110156200024d5782815560010162000238565b5050505b505050565b81516001600160401b0381111562000272576200027262000077565b6200028a81620002838454620001c7565b8462000203565b602080601f831160018114620002c25760008415620002a95750858301515b600019600386901b1c1916600185901b1785556200024d565b600085815260208120601f198616915b82811015620002f357888601518255948401946001909101908401620002d2565b5085821015620003125787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6080516109906200033e60003960006102ba01526109906000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806340c10f191161007157806340c10f191461014757806370a082311461015a57806395d89b4114610183578063a457c2d71461018b578063a9059cbb1461019e578063dd62ed3e146101b157600080fd5b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f5780633950935114610134575b600080fd5b6100c16101c4565b6040516100ce91906107c4565b60405180910390f35b6100ea6100e536600461082e565b610256565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a366004610858565b610270565b60055460405160ff90911681526020016100ce565b6100ea61014236600461082e565b610294565b6100ea61015536600461082e565b6102b6565b6100fe610168366004610894565b6001600160a01b031660009081526020819052604090205490565b6100c16102fb565b6100ea61019936600461082e565b61030a565b6100ea6101ac36600461082e565b61038a565b6100fe6101bf3660046108b6565b610398565b6060600380546101d3906108e9565b80601f01602080910402602001604051908101604052809291908181526020018280546101ff906108e9565b801561024c5780601f106102215761010080835404028352916020019161024c565b820191906000526020600020905b81548152906001019060200180831161022f57829003601f168201915b5050505050905090565b6000336102648185856103c3565b60019150505b92915050565b60003361027e8582856104e7565b610289858585610561565b506001949350505050565b6000336102648185856102a78383610398565b6102b19190610923565b6103c3565b60007f00000000000000000000000000000000000000000000000000000000000000008211156102e8576102e8610944565b6102f28383610705565b50600192915050565b6060600480546101d3906108e9565b600033816103188286610398565b90508381101561037d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61028982868684036103c3565b600033610264818585610561565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166104255760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610374565b6001600160a01b0382166104865760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610374565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006104f38484610398565b9050600019811461055b578181101561054e5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610374565b61055b84848484036103c3565b50505050565b6001600160a01b0383166105c55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610374565b6001600160a01b0382166106275760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610374565b6001600160a01b0383166000908152602081905260409020548181101561069f5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610374565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361055b565b6001600160a01b03821661075b5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610374565b806002600082825461076d9190610923565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b818110156107f1578581018301518582016040015282016107d5565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461082957600080fd5b919050565b6000806040838503121561084157600080fd5b61084a83610812565b946020939093013593505050565b60008060006060848603121561086d57600080fd5b61087684610812565b925061088460208501610812565b9150604084013590509250925092565b6000602082840312156108a657600080fd5b6108af82610812565b9392505050565b600080604083850312156108c957600080fd5b6108d283610812565b91506108e060208401610812565b90509250929050565b600181811c908216806108fd57607f821691505b60208210810361091d57634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026a57634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052600160045260246000fdfea26469706673582212205658b6013df97f49d439b32e1119c432a1c915ede9534951c6bc6ff876e2454b64736f6c63430008130033608060405234801561001057600080fd5b506105a4806100206000396000f3fe6080604052600436106100435760003560e01c8063160e8be3146100ef5780634a0687ef1461010f5780637687d19b1461012f578063cf81464b14610142576100e5565b366100e5576040805160008152602081019182905263c68d428360e01b909152309063c68d42839061007c9033903490602481016104c0565b600060405180830381600087803b15801561009657600080fd5b505af11580156100aa573d6000803e3d6000fd5b50506040513481523392507f25ca84076773b0455db53621c459ddc84fe40840e4932a62706a032566f399df915060200160405180910390a2005b6100ed61014a565b005b3480156100fb57600080fd5b506100ed61010a366004610525565b61015c565b34801561011b57600080fd5b506100ed61012a36600461053e565b610229565b6100ed61013d36600461053e565b61032f565b6100ed6103d0565b61015a61015561046d565b61049c565b565b60408051600081526020810191829052639d87674160e01b9091523090639d876741906101909033908590602481016104c0565b600060405180830381600087803b1580156101aa57600080fd5b505af11580156101be573d6000803e3d6000fd5b505060405133925083156108fc02915083906000818181858888f193505050501580156101ef573d6000803e3d6000fd5b5060405181815233907f3bc27981aebbb57f9247dc00fde9d6cd91e4b230083fec3238fedbcba1f9ab3d906020015b60405180910390a250565b6001600160a01b0381166102845760405162461bcd60e51b815260206004820152601760248201527f5555505350726f78793a207a65726f206164647265737300000000000000000060448201526064015b60405180910390fd5b60006102ae7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b0316146103045760405162461bcd60e51b815260206004820152601e60248201527f5555505350726f78793a20616c726561647920696e697469616c697a65640000604482015260640161027b565b61032c817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b50565b6040805160008152602081019182905263c68d428360e01b909152309063c68d4283906103639084903490602481016104c0565b600060405180830381600087803b15801561037d57600080fd5b505af1158015610391573d6000803e3d6000fd5b50505050806001600160a01b03167f25ca84076773b0455db53621c459ddc84fe40840e4932a62706a032566f399df3460405161021e91815260200190565b6040805160008152602081019182905263c68d428360e01b909152309063c68d4283906104049033903490602481016104c0565b600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b50506040513481523392507f25ca84076773b0455db53621c459ddc84fe40840e4932a62706a032566f399df915060200160405180910390a2565b60006104977f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905090565b3660008037600080366000845af43d6000803e8080156104bb573d6000f35b3d6000fd5b60018060a01b038416815260006020848184015260606040840152835180606085015260005b81811015610502578581018301518582016080015282016104e6565b506000608082860101526080601f19601f83011685010192505050949350505050565b60006020828403121561053757600080fd5b5035919050565b60006020828403121561055057600080fd5b81356001600160a01b038116811461056757600080fd5b939250505056fea2646970667358221220490b06cbbce9568f10ceabbfd3d4ebe6e337b4c4446c976b8f84cd882fb7a8f764736f6c63430008130033a2646970667358221220b4948de1edba726fa6c44ac4d332fff6681ff5bef7562e76bd4d964ccb163d0b64736f6c63430008130033",
6
+ "bytecode": "0x611a4d61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061004b5760003560e01c80631f2d189614610050578063a9442e4014610081578063f7c3bdc9146100a1575b600080fd5b81801561005c57600080fd5b506100656100b6565b6040516001600160a01b03909116815260200160405180910390f35b81801561008d57600080fd5b5061006561009c3660046101af565b6100e6565b8180156100ad57600080fd5b50610065610131565b60006040516100c49061013f565b604051809103906000f0801580156100e0573d6000803e3d6000fd5b50905090565b60008686868686866040516100fa9061014c565b6101099695949392919061026a565b604051809103906000f080158015610125573d6000803e3d6000fd5b50979650505050505050565b60006040516100c490610159565b6104db806102ab83390190565b610cce8061078683390190565b6105c48061145483390190565b60008083601f84011261017857600080fd5b50813567ffffffffffffffff81111561019057600080fd5b6020830191508360208285010111156101a857600080fd5b9250929050565b600080600080600080608087890312156101c857600080fd5b863567ffffffffffffffff808211156101e057600080fd5b6101ec8a838b01610166565b9098509650602089013591508082111561020557600080fd5b5061021289828a01610166565b909550935050604087013560ff8116811461022c57600080fd5b80925050606087013590509295509295509295565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60808152600061027e60808301888a610241565b8281036020840152610291818789610241565b60ff95909516604084015250506060015294935050505056fe608060405234801561001057600080fd5b506104bb806100206000396000f3fe60806040526004361061002d5760003560e01c80634a0687ef14610044578063b119490e146100645761003c565b3661003c5761003a610084565b005b61003a610084565b34801561005057600080fd5b5061003a61005f3660046102bc565b610096565b34801561007057600080fd5b5061003a61007f366004610335565b61019c565b61009461008f610269565b610298565b565b6001600160a01b0381166100f15760405162461bcd60e51b815260206004820152601760248201527f5555505350726f78793a207a65726f206164647265737300000000000000000060448201526064015b60405180910390fd5b600061011b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b0316146101715760405162461bcd60e51b815260206004820152601e60248201527f5555505350726f78793a20616c726561647920696e697469616c697a6564000060448201526064016100e8565b610199817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b50565b6040516285fc1360e71b815230906342fe0980906101ca906000906012908a908a908a908a906004016103d2565b600060405180830381600087803b1580156101e457600080fd5b505af11580156101f8573d6000803e3d6000fd5b50506040805160008152602081019182905263c68d428360e01b90915230925063c68d42839150610230903390859060248101610420565b600060405180830381600087803b15801561024a57600080fd5b505af115801561025e573d6000803e3d6000fd5b505050505050505050565b60006102937f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905090565b3660008037600080366000845af43d6000803e8080156102b7573d6000f35b3d6000fd5b6000602082840312156102ce57600080fd5b81356001600160a01b03811681146102e557600080fd5b9392505050565b60008083601f8401126102fe57600080fd5b50813567ffffffffffffffff81111561031657600080fd5b60208301915083602082850101111561032e57600080fd5b9250929050565b60008060008060006060868803121561034d57600080fd5b853567ffffffffffffffff8082111561036557600080fd5b61037189838a016102ec565b9097509550602088013591508082111561038a57600080fd5b50610397888289016102ec565b96999598509660400135949350505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b038716815260ff8616602082015260806040820181905260009061040090830186886103a9565b82810360608401526104138185876103a9565b9998505050505050505050565b60018060a01b038416815260006020848184015260606040840152835180606085015260005b8181101561046257858101830151858201608001528201610446565b506000608082860101526080601f19601f8301168501019250505094935050505056fea2646970667358221220004989ff63d900c0a077d26e2fd5bb92279ffac8f513f074cda2a79ae26b309264736f6c6343000813003360a06040523480156200001157600080fd5b5060405162000cce38038062000cce83398101604081905262000034916200013c565b8383600362000044838262000256565b50600462000053828262000256565b50506005805460ff191660ff94909416939093179092556080525062000322915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200009f57600080fd5b81516001600160401b0380821115620000bc57620000bc62000077565b604051601f8301601f19908116603f01168101908282118183101715620000e757620000e762000077565b816040528381526020925086838588010111156200010457600080fd5b600091505b8382101562000128578582018301518183018401529082019062000109565b600093810190920192909252949350505050565b600080600080608085870312156200015357600080fd5b84516001600160401b03808211156200016b57600080fd5b62000179888389016200008d565b955060208701519150808211156200019057600080fd5b506200019f878288016200008d565b935050604085015160ff81168114620001b757600080fd5b6060959095015193969295505050565b600181811c90821680620001dc57607f821691505b602082108103620001fd57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200025157600081815260208120601f850160051c810160208610156200022c5750805b601f850160051c820191505b818110156200024d5782815560010162000238565b5050505b505050565b81516001600160401b0381111562000272576200027262000077565b6200028a81620002838454620001c7565b8462000203565b602080601f831160018114620002c25760008415620002a95750858301515b600019600386901b1c1916600185901b1785556200024d565b600085815260208120601f198616915b82811015620002f357888601518255948401946001909101908401620002d2565b5085821015620003125787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6080516109906200033e60003960006102ba01526109906000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806340c10f191161007157806340c10f191461014757806370a082311461015a57806395d89b4114610183578063a457c2d71461018b578063a9059cbb1461019e578063dd62ed3e146101b157600080fd5b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f5780633950935114610134575b600080fd5b6100c16101c4565b6040516100ce91906107c4565b60405180910390f35b6100ea6100e536600461082e565b610256565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a366004610858565b610270565b60055460405160ff90911681526020016100ce565b6100ea61014236600461082e565b610294565b6100ea61015536600461082e565b6102b6565b6100fe610168366004610894565b6001600160a01b031660009081526020819052604090205490565b6100c16102fb565b6100ea61019936600461082e565b61030a565b6100ea6101ac36600461082e565b61038a565b6100fe6101bf3660046108b6565b610398565b6060600380546101d3906108e9565b80601f01602080910402602001604051908101604052809291908181526020018280546101ff906108e9565b801561024c5780601f106102215761010080835404028352916020019161024c565b820191906000526020600020905b81548152906001019060200180831161022f57829003601f168201915b5050505050905090565b6000336102648185856103c3565b60019150505b92915050565b60003361027e8582856104e7565b610289858585610561565b506001949350505050565b6000336102648185856102a78383610398565b6102b19190610923565b6103c3565b60007f00000000000000000000000000000000000000000000000000000000000000008211156102e8576102e8610944565b6102f28383610705565b50600192915050565b6060600480546101d3906108e9565b600033816103188286610398565b90508381101561037d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61028982868684036103c3565b600033610264818585610561565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166104255760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610374565b6001600160a01b0382166104865760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610374565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006104f38484610398565b9050600019811461055b578181101561054e5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610374565b61055b84848484036103c3565b50505050565b6001600160a01b0383166105c55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610374565b6001600160a01b0382166106275760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610374565b6001600160a01b0383166000908152602081905260409020548181101561069f5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610374565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361055b565b6001600160a01b03821661075b5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610374565b806002600082825461076d9190610923565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b818110156107f1578581018301518582016040015282016107d5565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461082957600080fd5b919050565b6000806040838503121561084157600080fd5b61084a83610812565b946020939093013593505050565b60008060006060848603121561086d57600080fd5b61087684610812565b925061088460208501610812565b9150604084013590509250925092565b6000602082840312156108a657600080fd5b6108af82610812565b9392505050565b600080604083850312156108c957600080fd5b6108d283610812565b91506108e060208401610812565b90509250929050565b600181811c908216806108fd57607f821691505b60208210810361091d57634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026a57634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052600160045260246000fdfea26469706673582212205658b6013df97f49d439b32e1119c432a1c915ede9534951c6bc6ff876e2454b64736f6c63430008130033608060405234801561001057600080fd5b506105a4806100206000396000f3fe6080604052600436106100435760003560e01c8063160e8be3146100ef5780634a0687ef1461010f5780637687d19b1461012f578063cf81464b14610142576100e5565b366100e5576040805160008152602081019182905263c68d428360e01b909152309063c68d42839061007c9033903490602481016104c0565b600060405180830381600087803b15801561009657600080fd5b505af11580156100aa573d6000803e3d6000fd5b50506040513481523392507f25ca84076773b0455db53621c459ddc84fe40840e4932a62706a032566f399df915060200160405180910390a2005b6100ed61014a565b005b3480156100fb57600080fd5b506100ed61010a366004610525565b61015c565b34801561011b57600080fd5b506100ed61012a36600461053e565b610229565b6100ed61013d36600461053e565b61032f565b6100ed6103d0565b61015a61015561046d565b61049c565b565b60408051600081526020810191829052639d87674160e01b9091523090639d876741906101909033908590602481016104c0565b600060405180830381600087803b1580156101aa57600080fd5b505af11580156101be573d6000803e3d6000fd5b505060405133925083156108fc02915083906000818181858888f193505050501580156101ef573d6000803e3d6000fd5b5060405181815233907f3bc27981aebbb57f9247dc00fde9d6cd91e4b230083fec3238fedbcba1f9ab3d906020015b60405180910390a250565b6001600160a01b0381166102845760405162461bcd60e51b815260206004820152601760248201527f5555505350726f78793a207a65726f206164647265737300000000000000000060448201526064015b60405180910390fd5b60006102ae7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b0316146103045760405162461bcd60e51b815260206004820152601e60248201527f5555505350726f78793a20616c726561647920696e697469616c697a65640000604482015260640161027b565b61032c817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b50565b6040805160008152602081019182905263c68d428360e01b909152309063c68d4283906103639084903490602481016104c0565b600060405180830381600087803b15801561037d57600080fd5b505af1158015610391573d6000803e3d6000fd5b50505050806001600160a01b03167f25ca84076773b0455db53621c459ddc84fe40840e4932a62706a032566f399df3460405161021e91815260200190565b6040805160008152602081019182905263c68d428360e01b909152309063c68d4283906104049033903490602481016104c0565b600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b50506040513481523392507f25ca84076773b0455db53621c459ddc84fe40840e4932a62706a032566f399df915060200160405180910390a2565b60006104977f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905090565b3660008037600080366000845af43d6000803e8080156104bb573d6000f35b3d6000fd5b60018060a01b038416815260006020848184015260606040840152835180606085015260005b81811015610502578581018301518582016080015282016104e6565b506000608082860101526080601f19601f83011685010192505050949350505050565b60006020828403121561053757600080fd5b5035919050565b60006020828403121561055057600080fd5b81356001600160a01b038116811461056757600080fd5b939250505056fea2646970667358221220490b06cbbce9568f10ceabbfd3d4ebe6e337b4c4446c976b8f84cd882fb7a8f764736f6c63430008130033a26469706673582212202ff371139df3f49e04a209355321e23101e70537498c95f92193a33b93bf2b4b64736f6c63430008130033",
7
+ "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061004b5760003560e01c80631f2d189614610050578063a9442e4014610081578063f7c3bdc9146100a1575b600080fd5b81801561005c57600080fd5b506100656100b6565b6040516001600160a01b03909116815260200160405180910390f35b81801561008d57600080fd5b5061006561009c3660046101af565b6100e6565b8180156100ad57600080fd5b50610065610131565b60006040516100c49061013f565b604051809103906000f0801580156100e0573d6000803e3d6000fd5b50905090565b60008686868686866040516100fa9061014c565b6101099695949392919061026a565b604051809103906000f080158015610125573d6000803e3d6000fd5b50979650505050505050565b60006040516100c490610159565b6104db806102ab83390190565b610cce8061078683390190565b6105c48061145483390190565b60008083601f84011261017857600080fd5b50813567ffffffffffffffff81111561019057600080fd5b6020830191508360208285010111156101a857600080fd5b9250929050565b600080600080600080608087890312156101c857600080fd5b863567ffffffffffffffff808211156101e057600080fd5b6101ec8a838b01610166565b9098509650602089013591508082111561020557600080fd5b5061021289828a01610166565b909550935050604087013560ff8116811461022c57600080fd5b80925050606087013590509295509295509295565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60808152600061027e60808301888a610241565b8281036020840152610291818789610241565b60ff95909516604084015250506060015294935050505056fe608060405234801561001057600080fd5b506104bb806100206000396000f3fe60806040526004361061002d5760003560e01c80634a0687ef14610044578063b119490e146100645761003c565b3661003c5761003a610084565b005b61003a610084565b34801561005057600080fd5b5061003a61005f3660046102bc565b610096565b34801561007057600080fd5b5061003a61007f366004610335565b61019c565b61009461008f610269565b610298565b565b6001600160a01b0381166100f15760405162461bcd60e51b815260206004820152601760248201527f5555505350726f78793a207a65726f206164647265737300000000000000000060448201526064015b60405180910390fd5b600061011b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b0316146101715760405162461bcd60e51b815260206004820152601e60248201527f5555505350726f78793a20616c726561647920696e697469616c697a6564000060448201526064016100e8565b610199817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b50565b6040516285fc1360e71b815230906342fe0980906101ca906000906012908a908a908a908a906004016103d2565b600060405180830381600087803b1580156101e457600080fd5b505af11580156101f8573d6000803e3d6000fd5b50506040805160008152602081019182905263c68d428360e01b90915230925063c68d42839150610230903390859060248101610420565b600060405180830381600087803b15801561024a57600080fd5b505af115801561025e573d6000803e3d6000fd5b505050505050505050565b60006102937f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905090565b3660008037600080366000845af43d6000803e8080156102b7573d6000f35b3d6000fd5b6000602082840312156102ce57600080fd5b81356001600160a01b03811681146102e557600080fd5b9392505050565b60008083601f8401126102fe57600080fd5b50813567ffffffffffffffff81111561031657600080fd5b60208301915083602082850101111561032e57600080fd5b9250929050565b60008060008060006060868803121561034d57600080fd5b853567ffffffffffffffff8082111561036557600080fd5b61037189838a016102ec565b9097509550602088013591508082111561038a57600080fd5b50610397888289016102ec565b96999598509660400135949350505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b038716815260ff8616602082015260806040820181905260009061040090830186886103a9565b82810360608401526104138185876103a9565b9998505050505050505050565b60018060a01b038416815260006020848184015260606040840152835180606085015260005b8181101561046257858101830151858201608001528201610446565b506000608082860101526080601f19601f8301168501019250505094935050505056fea2646970667358221220004989ff63d900c0a077d26e2fd5bb92279ffac8f513f074cda2a79ae26b309264736f6c6343000813003360a06040523480156200001157600080fd5b5060405162000cce38038062000cce83398101604081905262000034916200013c565b8383600362000044838262000256565b50600462000053828262000256565b50506005805460ff191660ff94909416939093179092556080525062000322915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200009f57600080fd5b81516001600160401b0380821115620000bc57620000bc62000077565b604051601f8301601f19908116603f01168101908282118183101715620000e757620000e762000077565b816040528381526020925086838588010111156200010457600080fd5b600091505b8382101562000128578582018301518183018401529082019062000109565b600093810190920192909252949350505050565b600080600080608085870312156200015357600080fd5b84516001600160401b03808211156200016b57600080fd5b62000179888389016200008d565b955060208701519150808211156200019057600080fd5b506200019f878288016200008d565b935050604085015160ff81168114620001b757600080fd5b6060959095015193969295505050565b600181811c90821680620001dc57607f821691505b602082108103620001fd57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200025157600081815260208120601f850160051c810160208610156200022c5750805b601f850160051c820191505b818110156200024d5782815560010162000238565b5050505b505050565b81516001600160401b0381111562000272576200027262000077565b6200028a81620002838454620001c7565b8462000203565b602080601f831160018114620002c25760008415620002a95750858301515b600019600386901b1c1916600185901b1785556200024d565b600085815260208120601f198616915b82811015620002f357888601518255948401946001909101908401620002d2565b5085821015620003125787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6080516109906200033e60003960006102ba01526109906000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806340c10f191161007157806340c10f191461014757806370a082311461015a57806395d89b4114610183578063a457c2d71461018b578063a9059cbb1461019e578063dd62ed3e146101b157600080fd5b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f5780633950935114610134575b600080fd5b6100c16101c4565b6040516100ce91906107c4565b60405180910390f35b6100ea6100e536600461082e565b610256565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a366004610858565b610270565b60055460405160ff90911681526020016100ce565b6100ea61014236600461082e565b610294565b6100ea61015536600461082e565b6102b6565b6100fe610168366004610894565b6001600160a01b031660009081526020819052604090205490565b6100c16102fb565b6100ea61019936600461082e565b61030a565b6100ea6101ac36600461082e565b61038a565b6100fe6101bf3660046108b6565b610398565b6060600380546101d3906108e9565b80601f01602080910402602001604051908101604052809291908181526020018280546101ff906108e9565b801561024c5780601f106102215761010080835404028352916020019161024c565b820191906000526020600020905b81548152906001019060200180831161022f57829003601f168201915b5050505050905090565b6000336102648185856103c3565b60019150505b92915050565b60003361027e8582856104e7565b610289858585610561565b506001949350505050565b6000336102648185856102a78383610398565b6102b19190610923565b6103c3565b60007f00000000000000000000000000000000000000000000000000000000000000008211156102e8576102e8610944565b6102f28383610705565b50600192915050565b6060600480546101d3906108e9565b600033816103188286610398565b90508381101561037d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61028982868684036103c3565b600033610264818585610561565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166104255760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610374565b6001600160a01b0382166104865760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610374565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006104f38484610398565b9050600019811461055b578181101561054e5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610374565b61055b84848484036103c3565b50505050565b6001600160a01b0383166105c55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610374565b6001600160a01b0382166106275760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610374565b6001600160a01b0383166000908152602081905260409020548181101561069f5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610374565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361055b565b6001600160a01b03821661075b5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610374565b806002600082825461076d9190610923565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b818110156107f1578581018301518582016040015282016107d5565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461082957600080fd5b919050565b6000806040838503121561084157600080fd5b61084a83610812565b946020939093013593505050565b60008060006060848603121561086d57600080fd5b61087684610812565b925061088460208501610812565b9150604084013590509250925092565b6000602082840312156108a657600080fd5b6108af82610812565b9392505050565b600080604083850312156108c957600080fd5b6108d283610812565b91506108e060208401610812565b90509250929050565b600181811c908216806108fd57607f821691505b60208210810361091d57634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026a57634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052600160045260246000fdfea26469706673582212205658b6013df97f49d439b32e1119c432a1c915ede9534951c6bc6ff876e2454b64736f6c63430008130033608060405234801561001057600080fd5b506105a4806100206000396000f3fe6080604052600436106100435760003560e01c8063160e8be3146100ef5780634a0687ef1461010f5780637687d19b1461012f578063cf81464b14610142576100e5565b366100e5576040805160008152602081019182905263c68d428360e01b909152309063c68d42839061007c9033903490602481016104c0565b600060405180830381600087803b15801561009657600080fd5b505af11580156100aa573d6000803e3d6000fd5b50506040513481523392507f25ca84076773b0455db53621c459ddc84fe40840e4932a62706a032566f399df915060200160405180910390a2005b6100ed61014a565b005b3480156100fb57600080fd5b506100ed61010a366004610525565b61015c565b34801561011b57600080fd5b506100ed61012a36600461053e565b610229565b6100ed61013d36600461053e565b61032f565b6100ed6103d0565b61015a61015561046d565b61049c565b565b60408051600081526020810191829052639d87674160e01b9091523090639d876741906101909033908590602481016104c0565b600060405180830381600087803b1580156101aa57600080fd5b505af11580156101be573d6000803e3d6000fd5b505060405133925083156108fc02915083906000818181858888f193505050501580156101ef573d6000803e3d6000fd5b5060405181815233907f3bc27981aebbb57f9247dc00fde9d6cd91e4b230083fec3238fedbcba1f9ab3d906020015b60405180910390a250565b6001600160a01b0381166102845760405162461bcd60e51b815260206004820152601760248201527f5555505350726f78793a207a65726f206164647265737300000000000000000060448201526064015b60405180910390fd5b60006102ae7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b0316146103045760405162461bcd60e51b815260206004820152601e60248201527f5555505350726f78793a20616c726561647920696e697469616c697a65640000604482015260640161027b565b61032c817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b50565b6040805160008152602081019182905263c68d428360e01b909152309063c68d4283906103639084903490602481016104c0565b600060405180830381600087803b15801561037d57600080fd5b505af1158015610391573d6000803e3d6000fd5b50505050806001600160a01b03167f25ca84076773b0455db53621c459ddc84fe40840e4932a62706a032566f399df3460405161021e91815260200190565b6040805160008152602081019182905263c68d428360e01b909152309063c68d4283906104049033903490602481016104c0565b600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b50506040513481523392507f25ca84076773b0455db53621c459ddc84fe40840e4932a62706a032566f399df915060200160405180910390a2565b60006104977f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905090565b3660008037600080366000845af43d6000803e8080156104bb573d6000f35b3d6000fd5b60018060a01b038416815260006020848184015260606040840152835180606085015260005b81811015610502578581018301518582016080015282016104e6565b506000608082860101526080601f19601f83011685010192505050949350505050565b60006020828403121561053757600080fd5b5035919050565b60006020828403121561055057600080fd5b81356001600160a01b038116811461056757600080fd5b939250505056fea2646970667358221220490b06cbbce9568f10ceabbfd3d4ebe6e337b4c4446c976b8f84cd882fb7a8f764736f6c63430008130033a26469706673582212202ff371139df3f49e04a209355321e23101e70537498c95f92193a33b93bf2b4b64736f6c63430008130033",
8
8
  "linkReferences": {},
9
9
  "deployedLinkReferences": {}
10
10
  }
@@ -4193,7 +4193,7 @@
4193
4193
  },
4194
4194
  "networks": {},
4195
4195
  "schemaVersion": "3.4.13",
4196
- "updatedAt": "2023-07-12T14:59:21.171Z",
4196
+ "updatedAt": "2023-08-03T14:52:17.816Z",
4197
4197
  "devdoc": {
4198
4198
  "details": "Contract module that allows children to implement role-based access control mechanisms. This is a lightweight version that doesn't allow enumerating role members except through off-chain means by accessing the contract event logs. Some applications may benefit from on-chain enumerability, for those cases see {AccessControlEnumerable}. Roles are referred to by their `bytes32` identifier. These should be exposed in the external API and be unique. The best way to achieve this is by using `public constant` hash digests: ``` bytes32 public constant MY_ROLE = keccak256(\"MY_ROLE\"); ``` Roles can be used to represent a set of permissions. To restrict access to a function call, use {hasRole}: ``` function foo() public { require(hasRole(MY_ROLE, msg.sender)); ... } ``` Roles can be granted and revoked dynamically via the {grantRole} and {revokeRole} functions. Each role has an associated admin role, and only accounts that have a role's admin role can call {grantRole} and {revokeRole}. By default, the admin role for all roles is `DEFAULT_ADMIN_ROLE`, which means that only accounts with this role will be able to grant or revoke other roles. More complex role relationships can be created by using {_setRoleAdmin}. WARNING: The `DEFAULT_ADMIN_ROLE` is also its own admin: it has permission to grant and revoke this role. Extra precautions should be taken to secure accounts that have been granted it.",
4199
4199
  "events": {
@@ -1784,7 +1784,7 @@
1784
1784
  },
1785
1785
  "networks": {},
1786
1786
  "schemaVersion": "3.4.13",
1787
- "updatedAt": "2023-07-12T14:59:21.181Z",
1787
+ "updatedAt": "2023-08-03T14:52:17.819Z",
1788
1788
  "devdoc": {
1789
1789
  "details": "Extension of {AccessControl} that allows enumerating the members of each role.",
1790
1790
  "events": {
@@ -4371,7 +4371,7 @@
4371
4371
  },
4372
4372
  "networks": {},
4373
4373
  "schemaVersion": "3.4.13",
4374
- "updatedAt": "2023-07-12T14:59:21.220Z",
4374
+ "updatedAt": "2023-08-03T14:52:17.872Z",
4375
4375
  "devdoc": {
4376
4376
  "details": "Collection of functions related to the address type",
4377
4377
  "kind": "dev",
@@ -154,10 +154,10 @@
154
154
  6343
155
155
  ],
156
156
  "ISuperAgreement": [
157
- 23806
157
+ 23809
158
158
  ],
159
159
  "UUPSProxiable": [
160
- 46999
160
+ 47004
161
161
  ]
162
162
  },
163
163
  "id": 6344,
@@ -181,7 +181,7 @@
181
181
  "nameLocation": "-1:-1:-1",
182
182
  "nodeType": "ImportDirective",
183
183
  "scope": 6344,
184
- "sourceUnit": 47000,
184
+ "sourceUnit": 47005,
185
185
  "src": "60:67:30",
186
186
  "symbolAliases": [
187
187
  {
@@ -190,7 +190,7 @@
190
190
  "name": "UUPSProxiable",
191
191
  "nodeType": "Identifier",
192
192
  "overloadedDeclarations": [],
193
- "referencedDeclaration": 46999,
193
+ "referencedDeclaration": 47004,
194
194
  "src": "69:13:30",
195
195
  "typeDescriptions": {}
196
196
  },
@@ -206,7 +206,7 @@
206
206
  "nameLocation": "-1:-1:-1",
207
207
  "nodeType": "ImportDirective",
208
208
  "scope": 6344,
209
- "sourceUnit": 23807,
209
+ "sourceUnit": 23810,
210
210
  "src": "128:79:30",
211
211
  "symbolAliases": [
212
212
  {
@@ -215,7 +215,7 @@
215
215
  "name": "ISuperAgreement",
216
216
  "nodeType": "Identifier",
217
217
  "overloadedDeclarations": [],
218
- "referencedDeclaration": 23806,
218
+ "referencedDeclaration": 23809,
219
219
  "src": "137:15:30",
220
220
  "typeDescriptions": {}
221
221
  },
@@ -235,7 +235,7 @@
235
235
  "335:13:30"
236
236
  ],
237
237
  "nodeType": "IdentifierPath",
238
- "referencedDeclaration": 46999,
238
+ "referencedDeclaration": 47004,
239
239
  "src": "335:13:30"
240
240
  },
241
241
  "id": 6294,
@@ -250,7 +250,7 @@
250
250
  "354:15:30"
251
251
  ],
252
252
  "nodeType": "IdentifierPath",
253
- "referencedDeclaration": 23806,
253
+ "referencedDeclaration": 23809,
254
254
  "src": "354:15:30"
255
255
  },
256
256
  "id": 6296,
@@ -271,8 +271,8 @@
271
271
  "id": 6343,
272
272
  "linearizedBaseContracts": [
273
273
  6343,
274
- 23806,
275
- 46999,
274
+ 23809,
275
+ 47004,
276
276
  875
277
277
  ],
278
278
  "name": "AgreementBase",
@@ -428,7 +428,7 @@
428
428
  },
429
429
  {
430
430
  "baseFunctions": [
431
- 46939
431
+ 46944
432
432
  ],
433
433
  "body": {
434
434
  "id": 6322,
@@ -466,10 +466,10 @@
466
466
  "name": "ISuperAgreement",
467
467
  "nodeType": "Identifier",
468
468
  "overloadedDeclarations": [],
469
- "referencedDeclaration": 23806,
469
+ "referencedDeclaration": 23809,
470
470
  "src": "655:15:30",
471
471
  "typeDescriptions": {
472
- "typeIdentifier": "t_type$_t_contract$_ISuperAgreement_$23806_$",
472
+ "typeIdentifier": "t_type$_t_contract$_ISuperAgreement_$23809_$",
473
473
  "typeString": "type(contract ISuperAgreement)"
474
474
  }
475
475
  },
@@ -485,7 +485,7 @@
485
485
  "src": "655:21:30",
486
486
  "tryCall": false,
487
487
  "typeDescriptions": {
488
- "typeIdentifier": "t_contract$_ISuperAgreement_$23806",
488
+ "typeIdentifier": "t_contract$_ISuperAgreement_$23809",
489
489
  "typeString": "contract ISuperAgreement"
490
490
  }
491
491
  },
@@ -497,7 +497,7 @@
497
497
  "memberLocation": "677:13:30",
498
498
  "memberName": "agreementType",
499
499
  "nodeType": "MemberAccess",
500
- "referencedDeclaration": 23788,
500
+ "referencedDeclaration": 23791,
501
501
  "src": "655:35:30",
502
502
  "typeDescriptions": {
503
503
  "typeIdentifier": "t_function_external_view$__$returns$_t_bytes32_$",
@@ -589,7 +589,7 @@
589
589
  },
590
590
  {
591
591
  "baseFunctions": [
592
- 46927
592
+ 46932
593
593
  ],
594
594
  "body": {
595
595
  "id": 6341,
@@ -721,7 +721,7 @@
721
721
  "name": "_updateCodeAddress",
722
722
  "nodeType": "Identifier",
723
723
  "overloadedDeclarations": [],
724
- "referencedDeclaration": 46992,
724
+ "referencedDeclaration": 46997,
725
725
  "src": "860:18:30",
726
726
  "typeDescriptions": {
727
727
  "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
@@ -828,7 +828,7 @@
828
828
  },
829
829
  "networks": {},
830
830
  "schemaVersion": "3.4.13",
831
- "updatedAt": "2023-07-12T14:59:21.259Z",
831
+ "updatedAt": "2023-08-03T14:52:17.902Z",
832
832
  "devdoc": {
833
833
  "author": "Superfluid",
834
834
  "events": {