@keep-network/tbtc-v2 1.8.0 → 1.8.2

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 (203) hide show
  1. package/artifacts/Bridge.json +1998 -1972
  2. package/artifacts/Bridge_v2_Implementation.json +2817 -0
  3. package/artifacts/Deposit.json +7 -7
  4. package/artifacts/Redemption.json +95 -171
  5. package/build/contracts/GovernanceUtils.sol/GovernanceUtils.dbg.json +1 -1
  6. package/build/contracts/Timelock.sol/Timelock.dbg.json +1 -1
  7. package/build/contracts/bank/Bank.sol/Bank.dbg.json +1 -1
  8. package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.dbg.json +1 -1
  9. package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.dbg.json +1 -1
  10. package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.json +2 -2
  11. package/build/contracts/bridge/Bridge.sol/Bridge.dbg.json +1 -1
  12. package/build/contracts/bridge/Bridge.sol/Bridge.json +74 -48
  13. package/build/contracts/bridge/BridgeGovernance.sol/BridgeGovernance.dbg.json +1 -1
  14. package/build/contracts/bridge/BridgeGovernance.sol/BridgeGovernance.json +2 -2
  15. package/build/contracts/bridge/BridgeGovernanceParameters.sol/BridgeGovernanceParameters.dbg.json +1 -1
  16. package/build/contracts/bridge/BridgeState.sol/BridgeState.dbg.json +1 -1
  17. package/build/contracts/bridge/BridgeState.sol/BridgeState.json +2 -2
  18. package/build/contracts/bridge/Deposit.sol/Deposit.dbg.json +1 -1
  19. package/build/contracts/bridge/Deposit.sol/Deposit.json +2 -2
  20. package/build/contracts/bridge/DepositSweep.sol/DepositSweep.dbg.json +1 -1
  21. package/build/contracts/bridge/DepositSweep.sol/DepositSweep.json +2 -2
  22. package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.dbg.json +1 -1
  23. package/build/contracts/bridge/Fraud.sol/Fraud.dbg.json +1 -1
  24. package/build/contracts/bridge/Fraud.sol/Fraud.json +2 -2
  25. package/build/contracts/bridge/Heartbeat.sol/Heartbeat.dbg.json +1 -1
  26. package/build/contracts/bridge/IRelay.sol/IRelay.dbg.json +1 -1
  27. package/build/contracts/bridge/MovingFunds.sol/MovingFunds.dbg.json +1 -1
  28. package/build/contracts/bridge/MovingFunds.sol/MovingFunds.json +2 -2
  29. package/build/contracts/bridge/Redemption.sol/IRedemptionWatchtower.dbg.json +1 -1
  30. package/build/contracts/bridge/Redemption.sol/OutboundTx.dbg.json +1 -1
  31. package/build/contracts/bridge/Redemption.sol/OutboundTx.json +2 -2
  32. package/build/contracts/bridge/Redemption.sol/Redemption.dbg.json +1 -1
  33. package/build/contracts/bridge/Redemption.sol/Redemption.json +2 -2
  34. package/build/contracts/bridge/RedemptionWatchtower.sol/RedemptionWatchtower.dbg.json +1 -1
  35. package/build/contracts/bridge/RedemptionWatchtower.sol/RedemptionWatchtower.json +2 -2
  36. package/build/contracts/bridge/VendingMachine.sol/VendingMachine.dbg.json +1 -1
  37. package/build/contracts/bridge/VendingMachineV2.sol/VendingMachineV2.dbg.json +1 -1
  38. package/build/contracts/bridge/VendingMachineV3.sol/VendingMachineV3.dbg.json +1 -1
  39. package/build/contracts/bridge/WalletProposalValidator.sol/WalletProposalValidator.dbg.json +1 -1
  40. package/build/contracts/bridge/WalletProposalValidator.sol/WalletProposalValidator.json +2 -2
  41. package/build/contracts/bridge/Wallets.sol/Wallets.dbg.json +1 -1
  42. package/build/contracts/bridge/Wallets.sol/Wallets.json +2 -2
  43. package/build/contracts/cross-chain/AbstractL1BTCDepositor.sol/AbstractL1BTCDepositor.dbg.json +1 -1
  44. package/build/contracts/cross-chain/L2TBTC.sol/L2TBTC.dbg.json +1 -1
  45. package/build/contracts/cross-chain/starknet/StarkNetBitcoinDepositor.sol/StarkNetBitcoinDepositor.dbg.json +1 -1
  46. package/build/contracts/cross-chain/starknet/interfaces/IStarkGateBridge.sol/IStarkGateBridge.dbg.json +1 -1
  47. package/build/contracts/cross-chain/utils/Crosschain.sol/CrosschainUtils.dbg.json +1 -1
  48. package/build/contracts/cross-chain/wormhole/BTCDepositorWormhole.sol/BTCDepositorWormhole.dbg.json +1 -1
  49. package/build/contracts/cross-chain/wormhole/L1BTCDepositorWormhole.sol/L1BTCDepositorWormhole.dbg.json +1 -1
  50. package/build/contracts/cross-chain/wormhole/L2BTCDepositorWormhole.sol/L2BTCDepositorWormhole.dbg.json +1 -1
  51. package/build/contracts/cross-chain/wormhole/L2WormholeGateway.sol/L2WormholeGateway.dbg.json +1 -1
  52. package/build/contracts/cross-chain/wormhole/Wormhole.sol/IWormhole.dbg.json +1 -1
  53. package/build/contracts/cross-chain/wormhole/Wormhole.sol/IWormholeGateway.dbg.json +1 -1
  54. package/build/contracts/cross-chain/wormhole/Wormhole.sol/IWormholeReceiver.dbg.json +1 -1
  55. package/build/contracts/cross-chain/wormhole/Wormhole.sol/IWormholeRelayer.dbg.json +1 -1
  56. package/build/contracts/cross-chain/wormhole/Wormhole.sol/IWormholeTokenBridge.dbg.json +1 -1
  57. package/build/contracts/cross-chain/wormhole/Wormhole.sol/WormholeTypes.dbg.json +1 -1
  58. package/build/contracts/cross-chain/wormhole/Wormhole.sol/WormholeUtils.dbg.json +1 -1
  59. package/build/contracts/integrator/AbstractBTCDepositor.sol/AbstractBTCDepositor.dbg.json +1 -1
  60. package/build/contracts/integrator/IBridge.sol/IBridge.dbg.json +1 -1
  61. package/build/contracts/integrator/IBridge.sol/IBridgeTypes.dbg.json +1 -1
  62. package/build/contracts/integrator/ITBTCVault.sol/ITBTCVault.dbg.json +1 -1
  63. package/build/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.dbg.json +1 -1
  64. package/build/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.json +2 -2
  65. package/build/contracts/relay/LightRelay.sol/ILightRelay.dbg.json +1 -1
  66. package/build/contracts/relay/LightRelay.sol/LightRelay.dbg.json +1 -1
  67. package/build/contracts/relay/LightRelay.sol/RelayUtils.dbg.json +1 -1
  68. package/build/contracts/relay/LightRelayMaintainerProxy.sol/LightRelayMaintainerProxy.dbg.json +1 -1
  69. package/build/contracts/test/BankStub.sol/BankStub.dbg.json +1 -1
  70. package/build/contracts/test/BridgeStub.sol/BridgeStub.dbg.json +1 -1
  71. package/build/contracts/test/BridgeStub.sol/BridgeStub.json +74 -48
  72. package/build/contracts/test/HeartbeatStub.sol/HeartbeatStub.dbg.json +1 -1
  73. package/build/contracts/test/LightRelayStub.sol/LightRelayStub.dbg.json +1 -1
  74. package/build/contracts/test/MockBridgeForStarkNet.sol/MockBridgeForStarkNet.dbg.json +1 -1
  75. package/build/contracts/test/MockStarkGateBridge.sol/MockStarkGateBridge.dbg.json +1 -1
  76. package/build/contracts/test/MockTBTCBridge.sol/MockTBTCBridge.dbg.json +1 -1
  77. package/build/contracts/test/MockTBTCBridgeWithSweep.sol/MockTBTCBridgeWithSweep.dbg.json +1 -1
  78. package/build/contracts/test/MockTBTCToken.sol/MockTBTCToken.dbg.json +1 -1
  79. package/build/contracts/test/MockTBTCVault.sol/MockTBTCVault.dbg.json +1 -1
  80. package/build/contracts/test/ReceiveApprovalStub.sol/ReceiveApprovalStub.dbg.json +1 -1
  81. package/build/contracts/test/ReentrancyAttacker.sol/ReentrancyAttacker.dbg.json +1 -1
  82. package/build/contracts/test/SepoliaLightRelay.sol/SepoliaLightRelay.dbg.json +1 -1
  83. package/build/contracts/test/SystemTestRelay.sol/SystemTestRelay.dbg.json +1 -1
  84. package/build/contracts/test/SystemTestRelay.sol/SystemTestRelay.json +2 -2
  85. package/build/contracts/test/TestBTCDepositor.sol/MockBridge.dbg.json +1 -1
  86. package/build/contracts/test/TestBTCDepositor.sol/MockTBTCVault.dbg.json +1 -1
  87. package/build/contracts/test/TestBTCDepositor.sol/TestBTCDepositor.dbg.json +1 -1
  88. package/build/contracts/test/TestBitcoinTx.sol/TestBitcoinTx.dbg.json +1 -1
  89. package/build/contracts/test/TestBitcoinTx.sol/TestBitcoinTx.json +2 -2
  90. package/build/contracts/test/TestERC20.sol/TestERC20.dbg.json +1 -1
  91. package/build/contracts/test/TestERC721.sol/TestERC721.dbg.json +1 -1
  92. package/build/contracts/test/TestEcdsaLib.sol/TestEcdsaLib.dbg.json +1 -1
  93. package/build/contracts/test/WormholeBridgeStub.sol/WormholeBridgeStub.dbg.json +1 -1
  94. package/build/contracts/token/TBTC.sol/TBTC.dbg.json +1 -1
  95. package/build/contracts/vault/DonationVault.sol/DonationVault.dbg.json +1 -1
  96. package/build/contracts/vault/IVault.sol/IVault.dbg.json +1 -1
  97. package/build/contracts/vault/TBTCOptimisticMinting.sol/TBTCOptimisticMinting.dbg.json +1 -1
  98. package/build/contracts/vault/TBTCVault.sol/TBTCVault.dbg.json +1 -1
  99. package/build/contracts/vault/TBTCVault.sol/TBTCVault.json +2 -2
  100. package/contracts/bridge/Bridge.sol +34 -0
  101. package/contracts/bridge/Deposit.sol +7 -5
  102. package/deploy/80_upgrade_bridge_v2.ts +107 -54
  103. package/deploy/81_upgrade_bridge_v2_vault_fix.ts +160 -0
  104. package/export/artifacts/contracts/bridge/Bridge.sol/Bridge.json +4891 -4170
  105. package/export/artifacts/contracts/bridge/BridgeGovernance.sol/BridgeGovernance.json +207 -207
  106. package/export/artifacts/contracts/bridge/RedemptionWatchtower.sol/RedemptionWatchtower.json +104 -104
  107. package/export/artifacts/contracts/bridge/VendingMachine.sol/VendingMachine.json +67 -67
  108. package/export/artifacts/contracts/bridge/VendingMachineV2.sol/VendingMachineV2.json +24 -24
  109. package/export/artifacts/contracts/bridge/VendingMachineV3.sol/VendingMachineV3.json +26 -26
  110. package/export/artifacts/contracts/bridge/WalletProposalValidator.sol/WalletProposalValidator.json +72 -72
  111. package/export/artifacts/contracts/cross-chain/L2TBTC.sol/L2TBTC.json +40 -40
  112. package/export/artifacts/contracts/cross-chain/starknet/StarkNetBitcoinDepositor.sol/StarkNetBitcoinDepositor.json +3360 -3360
  113. package/export/artifacts/contracts/cross-chain/wormhole/BTCDepositorWormhole.sol/BTCDepositorWormhole.json +117 -117
  114. package/export/artifacts/contracts/cross-chain/wormhole/L1BTCDepositorWormhole.sol/L1BTCDepositorWormhole.json +140 -140
  115. package/export/artifacts/contracts/cross-chain/wormhole/L2BTCDepositorWormhole.sol/L2BTCDepositorWormhole.json +37 -37
  116. package/export/artifacts/contracts/cross-chain/wormhole/L2WormholeGateway.sol/L2WormholeGateway.json +51 -51
  117. package/export/artifacts/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.json +103 -103
  118. package/export/artifacts/contracts/relay/LightRelay.sol/LightRelay.json +57 -57
  119. package/export/artifacts/contracts/relay/LightRelayMaintainerProxy.sol/LightRelayMaintainerProxy.json +31 -31
  120. package/export/artifacts/contracts/test/BankStub.sol/BankStub.json +2 -2
  121. package/export/artifacts/contracts/test/BridgeStub.sol/BridgeStub.json +5130 -4414
  122. package/export/artifacts/contracts/test/HeartbeatStub.sol/HeartbeatStub.json +4 -4
  123. package/export/artifacts/contracts/test/LightRelayStub.sol/LightRelayStub.json +59 -59
  124. package/export/artifacts/contracts/test/MockBridgeForStarkNet.sol/MockBridgeForStarkNet.json +730 -730
  125. package/export/artifacts/contracts/test/MockStarkGateBridge.sol/MockStarkGateBridge.json +956 -956
  126. package/export/artifacts/contracts/test/MockTBTCBridge.sol/MockTBTCBridge.json +781 -781
  127. package/export/artifacts/contracts/test/MockTBTCBridgeWithSweep.sol/MockTBTCBridgeWithSweep.json +458 -458
  128. package/export/artifacts/contracts/test/MockTBTCToken.sol/MockTBTCToken.json +1273 -1273
  129. package/export/artifacts/contracts/test/MockTBTCVault.sol/MockTBTCVault.json +305 -305
  130. package/export/artifacts/contracts/test/ReceiveApprovalStub.sol/ReceiveApprovalStub.json +7 -7
  131. package/export/artifacts/contracts/test/ReentrancyAttacker.sol/ReentrancyAttacker.json +204 -204
  132. package/export/artifacts/contracts/test/SepoliaLightRelay.sol/SepoliaLightRelay.json +59 -59
  133. package/export/artifacts/contracts/test/SystemTestRelay.sol/SystemTestRelay.json +19 -19
  134. package/export/artifacts/contracts/test/TestBTCDepositor.sol/MockBridge.json +34 -34
  135. package/export/artifacts/contracts/test/TestBTCDepositor.sol/MockTBTCVault.json +20 -20
  136. package/export/artifacts/contracts/test/TestBTCDepositor.sol/TestBTCDepositor.json +52 -52
  137. package/export/artifacts/contracts/test/TestBitcoinTx.sol/TestBitcoinTx.json +124 -124
  138. package/export/artifacts/contracts/test/TestERC20.sol/TestERC20.json +6 -6
  139. package/export/artifacts/contracts/test/TestERC721.sol/TestERC721.json +8 -8
  140. package/export/artifacts/contracts/test/TestEcdsaLib.sol/TestEcdsaLib.json +4 -4
  141. package/export/artifacts/contracts/test/WormholeBridgeStub.sol/WormholeBridgeStub.json +37 -37
  142. package/export/artifacts/contracts/token/TBTC.sol/TBTC.json +2 -2
  143. package/export/artifacts/contracts/vault/DonationVault.sol/DonationVault.json +11 -11
  144. package/export/artifacts/contracts/vault/TBTCVault.sol/TBTCVault.json +144 -144
  145. package/export/deploy/80_upgrade_bridge_v2.js +127 -90
  146. package/export/deploy/81_upgrade_bridge_v2_vault_fix.js +211 -0
  147. package/export/typechain/AbstractBTCRedeemer.js +2 -0
  148. package/export/typechain/IBank.js +2 -0
  149. package/export/typechain/IL2WormholeGateway.js +2 -0
  150. package/export/typechain/INttManager.js +2 -0
  151. package/export/typechain/INttManagerWithExecutor.js +2 -0
  152. package/export/typechain/L1BTCDepositorNtt.js +2 -0
  153. package/export/typechain/L1BTCDepositorNttWithExecutor.js +2 -0
  154. package/export/typechain/L1BTCRedeemerWormhole.js +2 -0
  155. package/export/typechain/L2BTCRedeemerWormhole.js +2 -0
  156. package/export/typechain/MockBank.js +2 -0
  157. package/export/typechain/MockBridgeWithRebateStaking.js +2 -0
  158. package/export/typechain/MockL1BTCRedeemerWormhole.js +2 -0
  159. package/export/typechain/MockNttManager.js +2 -0
  160. package/export/typechain/MockNttManagerWithExecutor.js +2 -0
  161. package/export/typechain/NativeBTCDepositor.js +2 -0
  162. package/export/typechain/RebateStaking.js +2 -0
  163. package/export/typechain/TestBTCRedeemer.js +2 -0
  164. package/export/typechain/TestBTCUtilsHelper.js +2 -0
  165. package/export/typechain/TransceiverStructs.js +2 -0
  166. package/export/typechain/factories/AbstractBTCRedeemer__factory.js +204 -0
  167. package/export/typechain/factories/BridgeGovernance__factory.js +1 -1
  168. package/export/typechain/factories/BridgeState__factory.js +1 -1
  169. package/export/typechain/factories/BridgeStub__factory.js +27 -1
  170. package/export/typechain/factories/Bridge__factory.js +27 -1
  171. package/export/typechain/factories/DepositSweep__factory.js +1 -1
  172. package/export/typechain/factories/Deposit__factory.js +1 -1
  173. package/export/typechain/factories/Fraud__factory.js +1 -1
  174. package/export/typechain/factories/IBank__factory.js +138 -0
  175. package/export/typechain/factories/IL2WormholeGateway__factory.js +61 -0
  176. package/export/typechain/factories/INttManagerWithExecutor__factory.js +183 -0
  177. package/export/typechain/factories/INttManager__factory.js +51 -0
  178. package/export/typechain/factories/L1BTCDepositorNttWithExecutor__factory.js +1454 -0
  179. package/export/typechain/factories/L1BTCDepositorNtt__factory.js +920 -0
  180. package/export/typechain/factories/L1BTCRedeemerWormhole__factory.js +622 -0
  181. package/export/typechain/factories/L2BTCRedeemerWormhole__factory.js +348 -0
  182. package/export/typechain/factories/MaintainerProxy__factory.js +1 -1
  183. package/export/typechain/factories/MockBank__factory.js +248 -0
  184. package/export/typechain/factories/MockBridgeWithRebateStaking__factory.js +129 -0
  185. package/export/typechain/factories/MockL1BTCRedeemerWormhole__factory.js +638 -0
  186. package/export/typechain/factories/MockNttManagerWithExecutor__factory.js +423 -0
  187. package/export/typechain/factories/MockNttManager__factory.js +211 -0
  188. package/export/typechain/factories/MovingFunds__factory.js +1 -1
  189. package/export/typechain/factories/NativeBTCDepositor__factory.js +635 -0
  190. package/export/typechain/factories/RebateStaking__factory.js +720 -0
  191. package/export/typechain/factories/RedemptionWatchtower__factory.js +1 -1
  192. package/export/typechain/factories/Redemption__factory.js +1 -1
  193. package/export/typechain/factories/SystemTestRelay__factory.js +1 -1
  194. package/export/typechain/factories/TBTCVault__factory.js +1 -1
  195. package/export/typechain/factories/TestBTCRedeemer__factory.js +425 -0
  196. package/export/typechain/factories/TestBTCUtilsHelper__factory.js +109 -0
  197. package/export/typechain/factories/TestBitcoinTx__factory.js +1 -1
  198. package/export/typechain/factories/TransceiverStructs__factory.js +853 -0
  199. package/export/typechain/factories/WalletProposalValidator__factory.js +1 -1
  200. package/export/typechain/factories/Wallets__factory.js +1 -1
  201. package/export/typechain/index.js +40 -2
  202. package/export.json +40910 -0
  203. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/122a0bbe2cffda020653e9d3e37b4952.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/122a0bbe2cffda020653e9d3e37b4952.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/122a0bbe2cffda020653e9d3e37b4952.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/fde5161191a924fded38fd603bb5ec1b.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/122a0bbe2cffda020653e9d3e37b4952.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/122a0bbe2cffda020653e9d3e37b4952.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/122a0bbe2cffda020653e9d3e37b4952.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -82,8 +82,8 @@
82
82
  "type": "function"
83
83
  }
84
84
  ],
85
- "bytecode": "0x608060405234801561001057600080fd5b506104af806100206000396000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c80634308f6dc116100505780634308f6dc146100aa5780637d4046fb146100bd578063c3def248146100d057600080fd5b8063113764be146100775780632b97be241461008d5780633c5e875214610095575b600080fd5b6000545b60405190815260200160405180910390f35b60015461007b565b6100a86100a3366004610218565b600155565b005b6100a86100b8366004610247565b6100e3565b6100a86100cb366004610218565b600055565b6100a86100de366004610247565b6100fd565b60006100f66100f183610112565b610125565b6000555050565b600061010b6100f183610112565b6001555050565b600061011f82600061014d565b92915050565b600061011f7bffff0000000000000000000000000000000000000000000000000000836101f6565b60008061016561015e84604861030e565b8590610209565b60e81c905060008461017885604b61030e565b8151811061018857610188610321565b016020015160f81c905060006101bc83600060108262ffffff16901c8261ff001660108462ffffff16901b17179050919050565b62ffffff16905060006101d0600384610337565b60ff1690506101e181610100610434565b6101eb9083610440565b979650505050505050565b60006102028284610457565b9392505050565b60006102028383016020015190565b60006020828403121561022a57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b60006020828403121561025957600080fd5b813567ffffffffffffffff8082111561027157600080fd5b818401915084601f83011261028557600080fd5b81358181111561029757610297610231565b604051601f8201601f19908116603f011681019083821181831017156102bf576102bf610231565b816040528281528760208487010111156102d857600080fd5b826020860160208301376000928101602001929092525095945050505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561011f5761011f6102f8565b634e487b7160e01b600052603260045260246000fd5b60ff828116828216039081111561011f5761011f6102f8565b600181815b8085111561038b578160001904821115610371576103716102f8565b8085161561037e57918102915b93841c9390800290610355565b509250929050565b6000826103a25750600161011f565b816103af5750600061011f565b81600181146103c557600281146103cf576103eb565b600191505061011f565b60ff8411156103e0576103e06102f8565b50506001821b61011f565b5060208310610133831016604e8410600b841016171561040e575081810a61011f565b6104188383610350565b806000190482111561042c5761042c6102f8565b029392505050565b60006102028383610393565b808202811582820484141761011f5761011f6102f8565b60008261047457634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220b181cad32018d8d06db0a58be16f4ef3f92585562e4e9966a5998c5ecd9ba2ca64736f6c63430008110033",
86
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100725760003560e01c80634308f6dc116100505780634308f6dc146100aa5780637d4046fb146100bd578063c3def248146100d057600080fd5b8063113764be146100775780632b97be241461008d5780633c5e875214610095575b600080fd5b6000545b60405190815260200160405180910390f35b60015461007b565b6100a86100a3366004610218565b600155565b005b6100a86100b8366004610247565b6100e3565b6100a86100cb366004610218565b600055565b6100a86100de366004610247565b6100fd565b60006100f66100f183610112565b610125565b6000555050565b600061010b6100f183610112565b6001555050565b600061011f82600061014d565b92915050565b600061011f7bffff0000000000000000000000000000000000000000000000000000836101f6565b60008061016561015e84604861030e565b8590610209565b60e81c905060008461017885604b61030e565b8151811061018857610188610321565b016020015160f81c905060006101bc83600060108262ffffff16901c8261ff001660108462ffffff16901b17179050919050565b62ffffff16905060006101d0600384610337565b60ff1690506101e181610100610434565b6101eb9083610440565b979650505050505050565b60006102028284610457565b9392505050565b60006102028383016020015190565b60006020828403121561022a57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b60006020828403121561025957600080fd5b813567ffffffffffffffff8082111561027157600080fd5b818401915084601f83011261028557600080fd5b81358181111561029757610297610231565b604051601f8201601f19908116603f011681019083821181831017156102bf576102bf610231565b816040528281528760208487010111156102d857600080fd5b826020860160208301376000928101602001929092525095945050505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561011f5761011f6102f8565b634e487b7160e01b600052603260045260246000fd5b60ff828116828216039081111561011f5761011f6102f8565b600181815b8085111561038b578160001904821115610371576103716102f8565b8085161561037e57918102915b93841c9390800290610355565b509250929050565b6000826103a25750600161011f565b816103af5750600061011f565b81600181146103c557600281146103cf576103eb565b600191505061011f565b60ff8411156103e0576103e06102f8565b50506001821b61011f565b5060208310610133831016604e8410600b841016171561040e575081810a61011f565b6104188383610350565b806000190482111561042c5761042c6102f8565b029392505050565b60006102028383610393565b808202811582820484141761011f5761011f6102f8565b60008261047457634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220b181cad32018d8d06db0a58be16f4ef3f92585562e4e9966a5998c5ecd9ba2ca64736f6c63430008110033",
85
+ "bytecode": "0x608060405234801561001057600080fd5b506104af806100206000396000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c80634308f6dc116100505780634308f6dc146100aa5780637d4046fb146100bd578063c3def248146100d057600080fd5b8063113764be146100775780632b97be241461008d5780633c5e875214610095575b600080fd5b6000545b60405190815260200160405180910390f35b60015461007b565b6100a86100a3366004610218565b600155565b005b6100a86100b8366004610247565b6100e3565b6100a86100cb366004610218565b600055565b6100a86100de366004610247565b6100fd565b60006100f66100f183610112565b610125565b6000555050565b600061010b6100f183610112565b6001555050565b600061011f82600061014d565b92915050565b600061011f7bffff0000000000000000000000000000000000000000000000000000836101f6565b60008061016561015e84604861030e565b8590610209565b60e81c905060008461017885604b61030e565b8151811061018857610188610321565b016020015160f81c905060006101bc83600060108262ffffff16901c8261ff001660108462ffffff16901b17179050919050565b62ffffff16905060006101d0600384610337565b60ff1690506101e181610100610434565b6101eb9083610440565b979650505050505050565b60006102028284610457565b9392505050565b60006102028383016020015190565b60006020828403121561022a57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b60006020828403121561025957600080fd5b813567ffffffffffffffff8082111561027157600080fd5b818401915084601f83011261028557600080fd5b81358181111561029757610297610231565b604051601f8201601f19908116603f011681019083821181831017156102bf576102bf610231565b816040528281528760208487010111156102d857600080fd5b826020860160208301376000928101602001929092525095945050505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561011f5761011f6102f8565b634e487b7160e01b600052603260045260246000fd5b60ff828116828216039081111561011f5761011f6102f8565b600181815b8085111561038b578160001904821115610371576103716102f8565b8085161561037e57918102915b93841c9390800290610355565b509250929050565b6000826103a25750600161011f565b816103af5750600061011f565b81600181146103c557600281146103cf576103eb565b600191505061011f565b60ff8411156103e0576103e06102f8565b50506001821b61011f565b5060208310610133831016604e8410600b841016171561040e575081810a61011f565b6104188383610350565b806000190482111561042c5761042c6102f8565b029392505050565b60006102028383610393565b808202811582820484141761011f5761011f6102f8565b60008261047457634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220ace72521c269f577459224ff7ef56c4577d3bd246ca465dc79344b1bddd2b49064736f6c63430008110033",
86
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100725760003560e01c80634308f6dc116100505780634308f6dc146100aa5780637d4046fb146100bd578063c3def248146100d057600080fd5b8063113764be146100775780632b97be241461008d5780633c5e875214610095575b600080fd5b6000545b60405190815260200160405180910390f35b60015461007b565b6100a86100a3366004610218565b600155565b005b6100a86100b8366004610247565b6100e3565b6100a86100cb366004610218565b600055565b6100a86100de366004610247565b6100fd565b60006100f66100f183610112565b610125565b6000555050565b600061010b6100f183610112565b6001555050565b600061011f82600061014d565b92915050565b600061011f7bffff0000000000000000000000000000000000000000000000000000836101f6565b60008061016561015e84604861030e565b8590610209565b60e81c905060008461017885604b61030e565b8151811061018857610188610321565b016020015160f81c905060006101bc83600060108262ffffff16901c8261ff001660108462ffffff16901b17179050919050565b62ffffff16905060006101d0600384610337565b60ff1690506101e181610100610434565b6101eb9083610440565b979650505050505050565b60006102028284610457565b9392505050565b60006102028383016020015190565b60006020828403121561022a57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b60006020828403121561025957600080fd5b813567ffffffffffffffff8082111561027157600080fd5b818401915084601f83011261028557600080fd5b81358181111561029757610297610231565b604051601f8201601f19908116603f011681019083821181831017156102bf576102bf610231565b816040528281528760208487010111156102d857600080fd5b826020860160208301376000928101602001929092525095945050505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561011f5761011f6102f8565b634e487b7160e01b600052603260045260246000fd5b60ff828116828216039081111561011f5761011f6102f8565b600181815b8085111561038b578160001904821115610371576103716102f8565b8085161561037e57918102915b93841c9390800290610355565b509250929050565b6000826103a25750600161011f565b816103af5750600061011f565b81600181146103c557600281146103cf576103eb565b600191505061011f565b60ff8411156103e0576103e06102f8565b50506001821b61011f565b5060208310610133831016604e8410600b841016171561040e575081810a61011f565b6104188383610350565b806000190482111561042c5761042c6102f8565b029392505050565b60006102028383610393565b808202811582820484141761011f5761011f6102f8565b60008261047457634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220ace72521c269f577459224ff7ef56c4577d3bd246ca465dc79344b1bddd2b49064736f6c63430008110033",
87
87
  "linkReferences": {},
88
88
  "deployedLinkReferences": {}
89
89
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -95,8 +95,8 @@
95
95
  "type": "function"
96
96
  }
97
97
  ],
98
- "bytecode": "0x608060405234801561001057600080fd5b5060405161164138038061164183398101604081905261002f91610054565b600180546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b6115ae806100936000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063968329ca14610030575b600080fd5b61004361003e36600461120b565b610045565b005b7f1c88088eeda02b407bb426b79c1558c398d9a1edffe0a23e9e49a68b3939496361007260008484610087565b60405190815260200160405180910390a15050565b60006100d3610099602085018561127e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061054992505050565b6101245760405162461bcd60e51b815260206004820152601d60248201527f496e76616c696420696e70757420766563746f722070726f766964656400000060448201526064015b60405180910390fd5b61016e610134604085018561127e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506105f892505050565b6101ba5760405162461bcd60e51b815260206004820152601e60248201527f496e76616c6964206f757470757420766563746f722070726f76696465640000604482015260640161011b565b6101c7608083018361127e565b90506101d3838061127e565b9050146102485760405162461bcd60e51b815260206004820152602f60248201527f5478206e6f74206f6e2073616d65206c6576656c206f66206d65726b6c65207460448201527f72656520617320636f696e626173650000000000000000000000000000000000606482015260840161011b565b6102ab61025860208501856112c5565b610265602086018661127e565b610272604088018861127e565b61028260808a0160608b016112c5565b60405160200161029796959493929190611307565b60405160208183030381529060405261069a565b905060006102f96102bf604085018561127e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506106c192505050565b905061034b81610309858061127e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508794939250505060208701356106d0565b6103bd5760405162461bcd60e51b815260206004820152603c60248201527f5478206d65726b6c652070726f6f66206973206e6f742076616c696420666f7260448201527f2070726f76696465642068656164657220616e64207478206861736800000000606482015260840161011b565b6000600284606001356040516020016103d891815260200190565b60408051601f19818403018152908290526103f291611361565b602060405180830381855afa15801561040f573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906104329190611390565b905061048282610445608087018761127e565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525087959493509150506106d0565b6104f45760405162461bcd60e51b815260206004820152603f60248201527f436f696e62617365206d65726b6c652070726f6f66206973206e6f742076616c60448201527f696420666f722070726f76696465642068656164657220616e64206861736800606482015260840161011b565b61053f86610505604087018761127e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061070e92505050565b50505b9392505050565b600080600061055784610a9a565b909250905080158061056a575060001982145b15610579575060009392505050565b60006105868360016113bf565b905060005b828110156105eb57855182106105a75750600095945050505050565b60006105b38784610ab1565b905060001981036105cb575060009695505050505050565b6105d581846113bf565b92505080806105e3906113d2565b91505061058b565b5093519093149392505050565b600080600061060684610a9a565b9092509050801580610619575060001982145b15610628575060009392505050565b60006106358360016113bf565b905060005b828110156105eb57855182106106565750600095945050505050565b60006106628784610b03565b9050600019810361067a575060009695505050505050565b61068481846113bf565b9250508080610692906113d2565b91505061063a565b60006020600083516020850160025afa50602060006020600060025afa5050600051919050565b60448101516000905b92915050565b600083851480156106df575081155b80156106ea57508251155b156106f757506001610706565b61070385848685610b67565b90505b949350505050565b6001820154604080517f113764be000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff90921691600091839163113764be916004808201926020929091908290030181865afa158015610785573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a99190611390565b905060008273ffffffffffffffffffffffffffffffffffffffff16632b97be246040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081c9190611390565b905060008061083261082d87610c11565b610c1e565b9050838103610843578391506108c0565b828103610852578291506108c0565b60405162461bcd60e51b815260206004820152602560248201527f4e6f742061742063757272656e74206f722070726576696f757320646966666960448201527f63756c7479000000000000000000000000000000000000000000000000000000606482015260840161011b565b60006108cb87610c46565b905060001981036109445760405162461bcd60e51b815260206004820152602360248201527f496e76616c6964206c656e677468206f6620746865206865616465727320636860448201527f61696e0000000000000000000000000000000000000000000000000000000000606482015260840161011b565b60011981036109955760405162461bcd60e51b815260206004820152601560248201527f496e76616c6964206865616465727320636861696e0000000000000000000000604482015260640161011b565b60021981036109e65760405162461bcd60e51b815260206004820152601d60248201527f496e73756666696369656e7420776f726b20696e206120686561646572000000604482015260640161011b565b6001880154610a1b907401000000000000000000000000000000000000000090046bffffffffffffffffffffffff16846113eb565b811015610a905760405162461bcd60e51b815260206004820152603360248201527f496e73756666696369656e7420616363756d756c61746564206469666669637560448201527f6c747920696e2068656164657220636861696e00000000000000000000000000606482015260840161011b565b5050505050505050565b600080610aa8836000610e33565b91509150915091565b6000806000610ac08585610fd7565b909250905060018201610ad957600019925050506106ca565b80610ae58360256113bf565b610aef91906113bf565b610afa9060046113bf565b95945050505050565b6000610b108260096113bf565b83511015610b2157506000196106ca565b600080610b3885610b338660086113bf565b610e33565b909250905060018201610b5157600019925050506106ca565b80610b5d8360096113bf565b610afa91906113bf565b600060208451610b779190611418565b15610b8457506000610706565b8351600003610b9557506000610706565b818560005b8651811015610c0457610bae600284611418565b600103610bd257610bcb610bc58883016020015190565b83611019565b9150610beb565b610be882610be38984016020015190565b611019565b91505b60019290921c91610bfd6020826113bf565b9050610b9a565b5090931495945050505050565b60006106ca826000611025565b60006106ca7bffff0000000000000000000000000000000000000000000000000000836110ce565b600060508251610c569190611418565b15610c645750600019919050565b50600080805b8351811015610e2c578015610c9357610c848482846110da565b610c9357506001199392505050565b6000610c9f8583611025565b9050610cad85836050611105565b925080610df18460008190506008817eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff16901b600882901c7eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff161790506010817dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff16901b601082901c7dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff161790506020817bffffffff00000000ffffffff00000000ffffffff00000000ffffffff16901b602082901c7bffffffff00000000ffffffff00000000ffffffff00000000ffffffff1617905060408177ffffffffffffffff0000000000000000ffffffffffffffff16901b604082901c77ffffffffffffffff0000000000000000ffffffffffffffff16179050608081901b608082901c179050919050565b1115610e035750600219949350505050565b610e0c81610c1e565b610e1690856113bf565b9350610e2590506050826113bf565b9050610c6a565b5050919050565b6000806000610e42858561112f565b90508060ff16600003610e77576000858581518110610e6357610e6361142c565b016020015190935060f81c9150610fd09050565b83610e83826001611442565b60ff16610e9091906113bf565b85511015610ea75760001960009250925050610fd0565b60008160ff16600203610eeb57610ee0610ecc610ec58760016113bf565b88906111b5565b62ffff0060e882901c1660f89190911c1790565b61ffff169050610fc6565b8160ff16600403610f3a57610f2d610f07610ec58760016113bf565b60d881901c63ff00ff001662ff00ff60e89290921c9190911617601081811b91901c1790565b63ffffffff169050610fc6565b8160ff16600803610fc657610fb9610f56610ec58760016113bf565b60c01c64ff000000ff600882811c91821665ff000000ff009390911b92831617601090811b67ffffffffffffffff1666ff00ff00ff00ff9290921667ff00ff00ff00ff009093169290921790911c65ffff0000ffff1617602081811c91901b1790565b67ffffffffffffffff1690505b60ff909116925090505b9250929050565b600080610fe58360256113bf565b84511015610ffa575060001990506000610fd0565b60008061100c86610b338760246113bf565b9097909650945050505050565b600061054283836111c4565b60008061103d6110368460486113bf565b85906111b5565b60e81c905060008461105085604b6113bf565b815181106110605761106061142c565b016020015160f81c9050600061109483600060108262ffffff16901c8261ff001660108462ffffff16901b17179050919050565b62ffffff16905060006110a860038461145b565b60ff1690506110b981610100611558565b6110c390836113eb565b979650505050505050565b60006105428284611564565b6000806110e785856111f2565b90508281146110fa576000915050610542565b506001949350505050565b6000602060008385602001870160025afa50602060006020600060025afa50506000519392505050565b60008282815181106111435761114361142c565b016020015160f81c60ff0361115a575060086106ca565b82828151811061116c5761116c61142c565b016020015160f81c60fe03611183575060046106ca565b8282815181106111955761119561142c565b016020015160f81c60fd036111ac575060026106ca565b50600092915050565b60006105428383016020015190565b60008260005281602052602060006040600060025afa50602060006020600060025afa505060005192915050565b60006105426112028360046113bf565b84016020015190565b6000806040838503121561121e57600080fd5b823567ffffffffffffffff8082111561123657600080fd5b908401906080828703121561124a57600080fd5b9092506020840135908082111561126057600080fd5b50830160a0818603121561127357600080fd5b809150509250929050565b6000808335601e1984360301811261129557600080fd5b83018035915067ffffffffffffffff8211156112b057600080fd5b602001915036819003821315610fd057600080fd5b6000602082840312156112d757600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461054257600080fd5b60007fffffffff000000000000000000000000000000000000000000000000000000008089168352868860048501378683016004810160008152868882375093169390920160048101939093525050600801949350505050565b6000825160005b818110156113825760208186018101518583015201611368565b506000920191825250919050565b6000602082840312156113a257600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156106ca576106ca6113a9565b6000600182016113e4576113e46113a9565b5060010190565b80820281158282048414176106ca576106ca6113a9565b634e487b7160e01b600052601260045260246000fd5b60008261142757611427611402565b500690565b634e487b7160e01b600052603260045260246000fd5b60ff81811683821601908111156106ca576106ca6113a9565b60ff82811682821603908111156106ca576106ca6113a9565b600181815b808511156114af578160001904821115611495576114956113a9565b808516156114a257918102915b93841c9390800290611479565b509250929050565b6000826114c6575060016106ca565b816114d3575060006106ca565b81600181146114e957600281146114f35761150f565b60019150506106ca565b60ff841115611504576115046113a9565b50506001821b6106ca565b5060208310610133831016604e8410600b8410161715611532575081810a6106ca565b61153c8383611474565b8060001904821115611550576115506113a9565b029392505050565b600061054283836114b7565b60008261157357611573611402565b50049056fea26469706673582212208ce723efc221c130975f6107a599da9aa87cfedce74300c4816b268e511ea72864736f6c63430008110033",
99
- "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063968329ca14610030575b600080fd5b61004361003e36600461120b565b610045565b005b7f1c88088eeda02b407bb426b79c1558c398d9a1edffe0a23e9e49a68b3939496361007260008484610087565b60405190815260200160405180910390a15050565b60006100d3610099602085018561127e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061054992505050565b6101245760405162461bcd60e51b815260206004820152601d60248201527f496e76616c696420696e70757420766563746f722070726f766964656400000060448201526064015b60405180910390fd5b61016e610134604085018561127e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506105f892505050565b6101ba5760405162461bcd60e51b815260206004820152601e60248201527f496e76616c6964206f757470757420766563746f722070726f76696465640000604482015260640161011b565b6101c7608083018361127e565b90506101d3838061127e565b9050146102485760405162461bcd60e51b815260206004820152602f60248201527f5478206e6f74206f6e2073616d65206c6576656c206f66206d65726b6c65207460448201527f72656520617320636f696e626173650000000000000000000000000000000000606482015260840161011b565b6102ab61025860208501856112c5565b610265602086018661127e565b610272604088018861127e565b61028260808a0160608b016112c5565b60405160200161029796959493929190611307565b60405160208183030381529060405261069a565b905060006102f96102bf604085018561127e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506106c192505050565b905061034b81610309858061127e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508794939250505060208701356106d0565b6103bd5760405162461bcd60e51b815260206004820152603c60248201527f5478206d65726b6c652070726f6f66206973206e6f742076616c696420666f7260448201527f2070726f76696465642068656164657220616e64207478206861736800000000606482015260840161011b565b6000600284606001356040516020016103d891815260200190565b60408051601f19818403018152908290526103f291611361565b602060405180830381855afa15801561040f573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906104329190611390565b905061048282610445608087018761127e565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525087959493509150506106d0565b6104f45760405162461bcd60e51b815260206004820152603f60248201527f436f696e62617365206d65726b6c652070726f6f66206973206e6f742076616c60448201527f696420666f722070726f76696465642068656164657220616e64206861736800606482015260840161011b565b61053f86610505604087018761127e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061070e92505050565b50505b9392505050565b600080600061055784610a9a565b909250905080158061056a575060001982145b15610579575060009392505050565b60006105868360016113bf565b905060005b828110156105eb57855182106105a75750600095945050505050565b60006105b38784610ab1565b905060001981036105cb575060009695505050505050565b6105d581846113bf565b92505080806105e3906113d2565b91505061058b565b5093519093149392505050565b600080600061060684610a9a565b9092509050801580610619575060001982145b15610628575060009392505050565b60006106358360016113bf565b905060005b828110156105eb57855182106106565750600095945050505050565b60006106628784610b03565b9050600019810361067a575060009695505050505050565b61068481846113bf565b9250508080610692906113d2565b91505061063a565b60006020600083516020850160025afa50602060006020600060025afa5050600051919050565b60448101516000905b92915050565b600083851480156106df575081155b80156106ea57508251155b156106f757506001610706565b61070385848685610b67565b90505b949350505050565b6001820154604080517f113764be000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff90921691600091839163113764be916004808201926020929091908290030181865afa158015610785573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a99190611390565b905060008273ffffffffffffffffffffffffffffffffffffffff16632b97be246040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081c9190611390565b905060008061083261082d87610c11565b610c1e565b9050838103610843578391506108c0565b828103610852578291506108c0565b60405162461bcd60e51b815260206004820152602560248201527f4e6f742061742063757272656e74206f722070726576696f757320646966666960448201527f63756c7479000000000000000000000000000000000000000000000000000000606482015260840161011b565b60006108cb87610c46565b905060001981036109445760405162461bcd60e51b815260206004820152602360248201527f496e76616c6964206c656e677468206f6620746865206865616465727320636860448201527f61696e0000000000000000000000000000000000000000000000000000000000606482015260840161011b565b60011981036109955760405162461bcd60e51b815260206004820152601560248201527f496e76616c6964206865616465727320636861696e0000000000000000000000604482015260640161011b565b60021981036109e65760405162461bcd60e51b815260206004820152601d60248201527f496e73756666696369656e7420776f726b20696e206120686561646572000000604482015260640161011b565b6001880154610a1b907401000000000000000000000000000000000000000090046bffffffffffffffffffffffff16846113eb565b811015610a905760405162461bcd60e51b815260206004820152603360248201527f496e73756666696369656e7420616363756d756c61746564206469666669637560448201527f6c747920696e2068656164657220636861696e00000000000000000000000000606482015260840161011b565b5050505050505050565b600080610aa8836000610e33565b91509150915091565b6000806000610ac08585610fd7565b909250905060018201610ad957600019925050506106ca565b80610ae58360256113bf565b610aef91906113bf565b610afa9060046113bf565b95945050505050565b6000610b108260096113bf565b83511015610b2157506000196106ca565b600080610b3885610b338660086113bf565b610e33565b909250905060018201610b5157600019925050506106ca565b80610b5d8360096113bf565b610afa91906113bf565b600060208451610b779190611418565b15610b8457506000610706565b8351600003610b9557506000610706565b818560005b8651811015610c0457610bae600284611418565b600103610bd257610bcb610bc58883016020015190565b83611019565b9150610beb565b610be882610be38984016020015190565b611019565b91505b60019290921c91610bfd6020826113bf565b9050610b9a565b5090931495945050505050565b60006106ca826000611025565b60006106ca7bffff0000000000000000000000000000000000000000000000000000836110ce565b600060508251610c569190611418565b15610c645750600019919050565b50600080805b8351811015610e2c578015610c9357610c848482846110da565b610c9357506001199392505050565b6000610c9f8583611025565b9050610cad85836050611105565b925080610df18460008190506008817eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff16901b600882901c7eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff161790506010817dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff16901b601082901c7dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff161790506020817bffffffff00000000ffffffff00000000ffffffff00000000ffffffff16901b602082901c7bffffffff00000000ffffffff00000000ffffffff00000000ffffffff1617905060408177ffffffffffffffff0000000000000000ffffffffffffffff16901b604082901c77ffffffffffffffff0000000000000000ffffffffffffffff16179050608081901b608082901c179050919050565b1115610e035750600219949350505050565b610e0c81610c1e565b610e1690856113bf565b9350610e2590506050826113bf565b9050610c6a565b5050919050565b6000806000610e42858561112f565b90508060ff16600003610e77576000858581518110610e6357610e6361142c565b016020015190935060f81c9150610fd09050565b83610e83826001611442565b60ff16610e9091906113bf565b85511015610ea75760001960009250925050610fd0565b60008160ff16600203610eeb57610ee0610ecc610ec58760016113bf565b88906111b5565b62ffff0060e882901c1660f89190911c1790565b61ffff169050610fc6565b8160ff16600403610f3a57610f2d610f07610ec58760016113bf565b60d881901c63ff00ff001662ff00ff60e89290921c9190911617601081811b91901c1790565b63ffffffff169050610fc6565b8160ff16600803610fc657610fb9610f56610ec58760016113bf565b60c01c64ff000000ff600882811c91821665ff000000ff009390911b92831617601090811b67ffffffffffffffff1666ff00ff00ff00ff9290921667ff00ff00ff00ff009093169290921790911c65ffff0000ffff1617602081811c91901b1790565b67ffffffffffffffff1690505b60ff909116925090505b9250929050565b600080610fe58360256113bf565b84511015610ffa575060001990506000610fd0565b60008061100c86610b338760246113bf565b9097909650945050505050565b600061054283836111c4565b60008061103d6110368460486113bf565b85906111b5565b60e81c905060008461105085604b6113bf565b815181106110605761106061142c565b016020015160f81c9050600061109483600060108262ffffff16901c8261ff001660108462ffffff16901b17179050919050565b62ffffff16905060006110a860038461145b565b60ff1690506110b981610100611558565b6110c390836113eb565b979650505050505050565b60006105428284611564565b6000806110e785856111f2565b90508281146110fa576000915050610542565b506001949350505050565b6000602060008385602001870160025afa50602060006020600060025afa50506000519392505050565b60008282815181106111435761114361142c565b016020015160f81c60ff0361115a575060086106ca565b82828151811061116c5761116c61142c565b016020015160f81c60fe03611183575060046106ca565b8282815181106111955761119561142c565b016020015160f81c60fd036111ac575060026106ca565b50600092915050565b60006105428383016020015190565b60008260005281602052602060006040600060025afa50602060006020600060025afa505060005192915050565b60006105426112028360046113bf565b84016020015190565b6000806040838503121561121e57600080fd5b823567ffffffffffffffff8082111561123657600080fd5b908401906080828703121561124a57600080fd5b9092506020840135908082111561126057600080fd5b50830160a0818603121561127357600080fd5b809150509250929050565b6000808335601e1984360301811261129557600080fd5b83018035915067ffffffffffffffff8211156112b057600080fd5b602001915036819003821315610fd057600080fd5b6000602082840312156112d757600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461054257600080fd5b60007fffffffff000000000000000000000000000000000000000000000000000000008089168352868860048501378683016004810160008152868882375093169390920160048101939093525050600801949350505050565b6000825160005b818110156113825760208186018101518583015201611368565b506000920191825250919050565b6000602082840312156113a257600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156106ca576106ca6113a9565b6000600182016113e4576113e46113a9565b5060010190565b80820281158282048414176106ca576106ca6113a9565b634e487b7160e01b600052601260045260246000fd5b60008261142757611427611402565b500690565b634e487b7160e01b600052603260045260246000fd5b60ff81811683821601908111156106ca576106ca6113a9565b60ff82811682821603908111156106ca576106ca6113a9565b600181815b808511156114af578160001904821115611495576114956113a9565b808516156114a257918102915b93841c9390800290611479565b509250929050565b6000826114c6575060016106ca565b816114d3575060006106ca565b81600181146114e957600281146114f35761150f565b60019150506106ca565b60ff841115611504576115046113a9565b50506001821b6106ca565b5060208310610133831016604e8410600b8410161715611532575081810a6106ca565b61153c8383611474565b8060001904821115611550576115506113a9565b029392505050565b600061054283836114b7565b60008261157357611573611402565b50049056fea26469706673582212208ce723efc221c130975f6107a599da9aa87cfedce74300c4816b268e511ea72864736f6c63430008110033",
98
+ "bytecode": "0x608060405234801561001057600080fd5b5060405161164138038061164183398101604081905261002f91610054565b600180546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b6115ae806100936000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063968329ca14610030575b600080fd5b61004361003e36600461120b565b610045565b005b7f1c88088eeda02b407bb426b79c1558c398d9a1edffe0a23e9e49a68b3939496361007260008484610087565b60405190815260200160405180910390a15050565b60006100d3610099602085018561127e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061054992505050565b6101245760405162461bcd60e51b815260206004820152601d60248201527f496e76616c696420696e70757420766563746f722070726f766964656400000060448201526064015b60405180910390fd5b61016e610134604085018561127e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506105f892505050565b6101ba5760405162461bcd60e51b815260206004820152601e60248201527f496e76616c6964206f757470757420766563746f722070726f76696465640000604482015260640161011b565b6101c7608083018361127e565b90506101d3838061127e565b9050146102485760405162461bcd60e51b815260206004820152602f60248201527f5478206e6f74206f6e2073616d65206c6576656c206f66206d65726b6c65207460448201527f72656520617320636f696e626173650000000000000000000000000000000000606482015260840161011b565b6102ab61025860208501856112c5565b610265602086018661127e565b610272604088018861127e565b61028260808a0160608b016112c5565b60405160200161029796959493929190611307565b60405160208183030381529060405261069a565b905060006102f96102bf604085018561127e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506106c192505050565b905061034b81610309858061127e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508794939250505060208701356106d0565b6103bd5760405162461bcd60e51b815260206004820152603c60248201527f5478206d65726b6c652070726f6f66206973206e6f742076616c696420666f7260448201527f2070726f76696465642068656164657220616e64207478206861736800000000606482015260840161011b565b6000600284606001356040516020016103d891815260200190565b60408051601f19818403018152908290526103f291611361565b602060405180830381855afa15801561040f573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906104329190611390565b905061048282610445608087018761127e565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525087959493509150506106d0565b6104f45760405162461bcd60e51b815260206004820152603f60248201527f436f696e62617365206d65726b6c652070726f6f66206973206e6f742076616c60448201527f696420666f722070726f76696465642068656164657220616e64206861736800606482015260840161011b565b61053f86610505604087018761127e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061070e92505050565b50505b9392505050565b600080600061055784610a9a565b909250905080158061056a575060001982145b15610579575060009392505050565b60006105868360016113bf565b905060005b828110156105eb57855182106105a75750600095945050505050565b60006105b38784610ab1565b905060001981036105cb575060009695505050505050565b6105d581846113bf565b92505080806105e3906113d2565b91505061058b565b5093519093149392505050565b600080600061060684610a9a565b9092509050801580610619575060001982145b15610628575060009392505050565b60006106358360016113bf565b905060005b828110156105eb57855182106106565750600095945050505050565b60006106628784610b03565b9050600019810361067a575060009695505050505050565b61068481846113bf565b9250508080610692906113d2565b91505061063a565b60006020600083516020850160025afa50602060006020600060025afa5050600051919050565b60448101516000905b92915050565b600083851480156106df575081155b80156106ea57508251155b156106f757506001610706565b61070385848685610b67565b90505b949350505050565b6001820154604080517f113764be000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff90921691600091839163113764be916004808201926020929091908290030181865afa158015610785573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a99190611390565b905060008273ffffffffffffffffffffffffffffffffffffffff16632b97be246040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081c9190611390565b905060008061083261082d87610c11565b610c1e565b9050838103610843578391506108c0565b828103610852578291506108c0565b60405162461bcd60e51b815260206004820152602560248201527f4e6f742061742063757272656e74206f722070726576696f757320646966666960448201527f63756c7479000000000000000000000000000000000000000000000000000000606482015260840161011b565b60006108cb87610c46565b905060001981036109445760405162461bcd60e51b815260206004820152602360248201527f496e76616c6964206c656e677468206f6620746865206865616465727320636860448201527f61696e0000000000000000000000000000000000000000000000000000000000606482015260840161011b565b60011981036109955760405162461bcd60e51b815260206004820152601560248201527f496e76616c6964206865616465727320636861696e0000000000000000000000604482015260640161011b565b60021981036109e65760405162461bcd60e51b815260206004820152601d60248201527f496e73756666696369656e7420776f726b20696e206120686561646572000000604482015260640161011b565b6001880154610a1b907401000000000000000000000000000000000000000090046bffffffffffffffffffffffff16846113eb565b811015610a905760405162461bcd60e51b815260206004820152603360248201527f496e73756666696369656e7420616363756d756c61746564206469666669637560448201527f6c747920696e2068656164657220636861696e00000000000000000000000000606482015260840161011b565b5050505050505050565b600080610aa8836000610e33565b91509150915091565b6000806000610ac08585610fd7565b909250905060018201610ad957600019925050506106ca565b80610ae58360256113bf565b610aef91906113bf565b610afa9060046113bf565b95945050505050565b6000610b108260096113bf565b83511015610b2157506000196106ca565b600080610b3885610b338660086113bf565b610e33565b909250905060018201610b5157600019925050506106ca565b80610b5d8360096113bf565b610afa91906113bf565b600060208451610b779190611418565b15610b8457506000610706565b8351600003610b9557506000610706565b818560005b8651811015610c0457610bae600284611418565b600103610bd257610bcb610bc58883016020015190565b83611019565b9150610beb565b610be882610be38984016020015190565b611019565b91505b60019290921c91610bfd6020826113bf565b9050610b9a565b5090931495945050505050565b60006106ca826000611025565b60006106ca7bffff0000000000000000000000000000000000000000000000000000836110ce565b600060508251610c569190611418565b15610c645750600019919050565b50600080805b8351811015610e2c578015610c9357610c848482846110da565b610c9357506001199392505050565b6000610c9f8583611025565b9050610cad85836050611105565b925080610df18460008190506008817eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff16901b600882901c7eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff161790506010817dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff16901b601082901c7dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff161790506020817bffffffff00000000ffffffff00000000ffffffff00000000ffffffff16901b602082901c7bffffffff00000000ffffffff00000000ffffffff00000000ffffffff1617905060408177ffffffffffffffff0000000000000000ffffffffffffffff16901b604082901c77ffffffffffffffff0000000000000000ffffffffffffffff16179050608081901b608082901c179050919050565b1115610e035750600219949350505050565b610e0c81610c1e565b610e1690856113bf565b9350610e2590506050826113bf565b9050610c6a565b5050919050565b6000806000610e42858561112f565b90508060ff16600003610e77576000858581518110610e6357610e6361142c565b016020015190935060f81c9150610fd09050565b83610e83826001611442565b60ff16610e9091906113bf565b85511015610ea75760001960009250925050610fd0565b60008160ff16600203610eeb57610ee0610ecc610ec58760016113bf565b88906111b5565b62ffff0060e882901c1660f89190911c1790565b61ffff169050610fc6565b8160ff16600403610f3a57610f2d610f07610ec58760016113bf565b60d881901c63ff00ff001662ff00ff60e89290921c9190911617601081811b91901c1790565b63ffffffff169050610fc6565b8160ff16600803610fc657610fb9610f56610ec58760016113bf565b60c01c64ff000000ff600882811c91821665ff000000ff009390911b92831617601090811b67ffffffffffffffff1666ff00ff00ff00ff9290921667ff00ff00ff00ff009093169290921790911c65ffff0000ffff1617602081811c91901b1790565b67ffffffffffffffff1690505b60ff909116925090505b9250929050565b600080610fe58360256113bf565b84511015610ffa575060001990506000610fd0565b60008061100c86610b338760246113bf565b9097909650945050505050565b600061054283836111c4565b60008061103d6110368460486113bf565b85906111b5565b60e81c905060008461105085604b6113bf565b815181106110605761106061142c565b016020015160f81c9050600061109483600060108262ffffff16901c8261ff001660108462ffffff16901b17179050919050565b62ffffff16905060006110a860038461145b565b60ff1690506110b981610100611558565b6110c390836113eb565b979650505050505050565b60006105428284611564565b6000806110e785856111f2565b90508281146110fa576000915050610542565b506001949350505050565b6000602060008385602001870160025afa50602060006020600060025afa50506000519392505050565b60008282815181106111435761114361142c565b016020015160f81c60ff0361115a575060086106ca565b82828151811061116c5761116c61142c565b016020015160f81c60fe03611183575060046106ca565b8282815181106111955761119561142c565b016020015160f81c60fd036111ac575060026106ca565b50600092915050565b60006105428383016020015190565b60008260005281602052602060006040600060025afa50602060006020600060025afa505060005192915050565b60006105426112028360046113bf565b84016020015190565b6000806040838503121561121e57600080fd5b823567ffffffffffffffff8082111561123657600080fd5b908401906080828703121561124a57600080fd5b9092506020840135908082111561126057600080fd5b50830160a0818603121561127357600080fd5b809150509250929050565b6000808335601e1984360301811261129557600080fd5b83018035915067ffffffffffffffff8211156112b057600080fd5b602001915036819003821315610fd057600080fd5b6000602082840312156112d757600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461054257600080fd5b60007fffffffff000000000000000000000000000000000000000000000000000000008089168352868860048501378683016004810160008152868882375093169390920160048101939093525050600801949350505050565b6000825160005b818110156113825760208186018101518583015201611368565b506000920191825250919050565b6000602082840312156113a257600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156106ca576106ca6113a9565b6000600182016113e4576113e46113a9565b5060010190565b80820281158282048414176106ca576106ca6113a9565b634e487b7160e01b600052601260045260246000fd5b60008261142757611427611402565b500690565b634e487b7160e01b600052603260045260246000fd5b60ff81811683821601908111156106ca576106ca6113a9565b60ff82811682821603908111156106ca576106ca6113a9565b600181815b808511156114af578160001904821115611495576114956113a9565b808516156114a257918102915b93841c9390800290611479565b509250929050565b6000826114c6575060016106ca565b816114d3575060006106ca565b81600181146114e957600281146114f35761150f565b60019150506106ca565b60ff841115611504576115046113a9565b50506001821b6106ca565b5060208310610133831016604e8410600b8410161715611532575081810a6106ca565b61153c8383611474565b8060001904821115611550576115506113a9565b029392505050565b600061054283836114b7565b60008261157357611573611402565b50049056fea26469706673582212209c4c1c2bac30c1844cff2c639f7a658dbfa72bdf403b3bd12f15d60936b71c1464736f6c63430008110033",
99
+ "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063968329ca14610030575b600080fd5b61004361003e36600461120b565b610045565b005b7f1c88088eeda02b407bb426b79c1558c398d9a1edffe0a23e9e49a68b3939496361007260008484610087565b60405190815260200160405180910390a15050565b60006100d3610099602085018561127e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061054992505050565b6101245760405162461bcd60e51b815260206004820152601d60248201527f496e76616c696420696e70757420766563746f722070726f766964656400000060448201526064015b60405180910390fd5b61016e610134604085018561127e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506105f892505050565b6101ba5760405162461bcd60e51b815260206004820152601e60248201527f496e76616c6964206f757470757420766563746f722070726f76696465640000604482015260640161011b565b6101c7608083018361127e565b90506101d3838061127e565b9050146102485760405162461bcd60e51b815260206004820152602f60248201527f5478206e6f74206f6e2073616d65206c6576656c206f66206d65726b6c65207460448201527f72656520617320636f696e626173650000000000000000000000000000000000606482015260840161011b565b6102ab61025860208501856112c5565b610265602086018661127e565b610272604088018861127e565b61028260808a0160608b016112c5565b60405160200161029796959493929190611307565b60405160208183030381529060405261069a565b905060006102f96102bf604085018561127e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506106c192505050565b905061034b81610309858061127e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508794939250505060208701356106d0565b6103bd5760405162461bcd60e51b815260206004820152603c60248201527f5478206d65726b6c652070726f6f66206973206e6f742076616c696420666f7260448201527f2070726f76696465642068656164657220616e64207478206861736800000000606482015260840161011b565b6000600284606001356040516020016103d891815260200190565b60408051601f19818403018152908290526103f291611361565b602060405180830381855afa15801561040f573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906104329190611390565b905061048282610445608087018761127e565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525087959493509150506106d0565b6104f45760405162461bcd60e51b815260206004820152603f60248201527f436f696e62617365206d65726b6c652070726f6f66206973206e6f742076616c60448201527f696420666f722070726f76696465642068656164657220616e64206861736800606482015260840161011b565b61053f86610505604087018761127e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061070e92505050565b50505b9392505050565b600080600061055784610a9a565b909250905080158061056a575060001982145b15610579575060009392505050565b60006105868360016113bf565b905060005b828110156105eb57855182106105a75750600095945050505050565b60006105b38784610ab1565b905060001981036105cb575060009695505050505050565b6105d581846113bf565b92505080806105e3906113d2565b91505061058b565b5093519093149392505050565b600080600061060684610a9a565b9092509050801580610619575060001982145b15610628575060009392505050565b60006106358360016113bf565b905060005b828110156105eb57855182106106565750600095945050505050565b60006106628784610b03565b9050600019810361067a575060009695505050505050565b61068481846113bf565b9250508080610692906113d2565b91505061063a565b60006020600083516020850160025afa50602060006020600060025afa5050600051919050565b60448101516000905b92915050565b600083851480156106df575081155b80156106ea57508251155b156106f757506001610706565b61070385848685610b67565b90505b949350505050565b6001820154604080517f113764be000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff90921691600091839163113764be916004808201926020929091908290030181865afa158015610785573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a99190611390565b905060008273ffffffffffffffffffffffffffffffffffffffff16632b97be246040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081c9190611390565b905060008061083261082d87610c11565b610c1e565b9050838103610843578391506108c0565b828103610852578291506108c0565b60405162461bcd60e51b815260206004820152602560248201527f4e6f742061742063757272656e74206f722070726576696f757320646966666960448201527f63756c7479000000000000000000000000000000000000000000000000000000606482015260840161011b565b60006108cb87610c46565b905060001981036109445760405162461bcd60e51b815260206004820152602360248201527f496e76616c6964206c656e677468206f6620746865206865616465727320636860448201527f61696e0000000000000000000000000000000000000000000000000000000000606482015260840161011b565b60011981036109955760405162461bcd60e51b815260206004820152601560248201527f496e76616c6964206865616465727320636861696e0000000000000000000000604482015260640161011b565b60021981036109e65760405162461bcd60e51b815260206004820152601d60248201527f496e73756666696369656e7420776f726b20696e206120686561646572000000604482015260640161011b565b6001880154610a1b907401000000000000000000000000000000000000000090046bffffffffffffffffffffffff16846113eb565b811015610a905760405162461bcd60e51b815260206004820152603360248201527f496e73756666696369656e7420616363756d756c61746564206469666669637560448201527f6c747920696e2068656164657220636861696e00000000000000000000000000606482015260840161011b565b5050505050505050565b600080610aa8836000610e33565b91509150915091565b6000806000610ac08585610fd7565b909250905060018201610ad957600019925050506106ca565b80610ae58360256113bf565b610aef91906113bf565b610afa9060046113bf565b95945050505050565b6000610b108260096113bf565b83511015610b2157506000196106ca565b600080610b3885610b338660086113bf565b610e33565b909250905060018201610b5157600019925050506106ca565b80610b5d8360096113bf565b610afa91906113bf565b600060208451610b779190611418565b15610b8457506000610706565b8351600003610b9557506000610706565b818560005b8651811015610c0457610bae600284611418565b600103610bd257610bcb610bc58883016020015190565b83611019565b9150610beb565b610be882610be38984016020015190565b611019565b91505b60019290921c91610bfd6020826113bf565b9050610b9a565b5090931495945050505050565b60006106ca826000611025565b60006106ca7bffff0000000000000000000000000000000000000000000000000000836110ce565b600060508251610c569190611418565b15610c645750600019919050565b50600080805b8351811015610e2c578015610c9357610c848482846110da565b610c9357506001199392505050565b6000610c9f8583611025565b9050610cad85836050611105565b925080610df18460008190506008817eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff16901b600882901c7eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff161790506010817dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff16901b601082901c7dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff161790506020817bffffffff00000000ffffffff00000000ffffffff00000000ffffffff16901b602082901c7bffffffff00000000ffffffff00000000ffffffff00000000ffffffff1617905060408177ffffffffffffffff0000000000000000ffffffffffffffff16901b604082901c77ffffffffffffffff0000000000000000ffffffffffffffff16179050608081901b608082901c179050919050565b1115610e035750600219949350505050565b610e0c81610c1e565b610e1690856113bf565b9350610e2590506050826113bf565b9050610c6a565b5050919050565b6000806000610e42858561112f565b90508060ff16600003610e77576000858581518110610e6357610e6361142c565b016020015190935060f81c9150610fd09050565b83610e83826001611442565b60ff16610e9091906113bf565b85511015610ea75760001960009250925050610fd0565b60008160ff16600203610eeb57610ee0610ecc610ec58760016113bf565b88906111b5565b62ffff0060e882901c1660f89190911c1790565b61ffff169050610fc6565b8160ff16600403610f3a57610f2d610f07610ec58760016113bf565b60d881901c63ff00ff001662ff00ff60e89290921c9190911617601081811b91901c1790565b63ffffffff169050610fc6565b8160ff16600803610fc657610fb9610f56610ec58760016113bf565b60c01c64ff000000ff600882811c91821665ff000000ff009390911b92831617601090811b67ffffffffffffffff1666ff00ff00ff00ff9290921667ff00ff00ff00ff009093169290921790911c65ffff0000ffff1617602081811c91901b1790565b67ffffffffffffffff1690505b60ff909116925090505b9250929050565b600080610fe58360256113bf565b84511015610ffa575060001990506000610fd0565b60008061100c86610b338760246113bf565b9097909650945050505050565b600061054283836111c4565b60008061103d6110368460486113bf565b85906111b5565b60e81c905060008461105085604b6113bf565b815181106110605761106061142c565b016020015160f81c9050600061109483600060108262ffffff16901c8261ff001660108462ffffff16901b17179050919050565b62ffffff16905060006110a860038461145b565b60ff1690506110b981610100611558565b6110c390836113eb565b979650505050505050565b60006105428284611564565b6000806110e785856111f2565b90508281146110fa576000915050610542565b506001949350505050565b6000602060008385602001870160025afa50602060006020600060025afa50506000519392505050565b60008282815181106111435761114361142c565b016020015160f81c60ff0361115a575060086106ca565b82828151811061116c5761116c61142c565b016020015160f81c60fe03611183575060046106ca565b8282815181106111955761119561142c565b016020015160f81c60fd036111ac575060026106ca565b50600092915050565b60006105428383016020015190565b60008260005281602052602060006040600060025afa50602060006020600060025afa505060005192915050565b60006105426112028360046113bf565b84016020015190565b6000806040838503121561121e57600080fd5b823567ffffffffffffffff8082111561123657600080fd5b908401906080828703121561124a57600080fd5b9092506020840135908082111561126057600080fd5b50830160a0818603121561127357600080fd5b809150509250929050565b6000808335601e1984360301811261129557600080fd5b83018035915067ffffffffffffffff8211156112b057600080fd5b602001915036819003821315610fd057600080fd5b6000602082840312156112d757600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461054257600080fd5b60007fffffffff000000000000000000000000000000000000000000000000000000008089168352868860048501378683016004810160008152868882375093169390920160048101939093525050600801949350505050565b6000825160005b818110156113825760208186018101518583015201611368565b506000920191825250919050565b6000602082840312156113a257600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156106ca576106ca6113a9565b6000600182016113e4576113e46113a9565b5060010190565b80820281158282048414176106ca576106ca6113a9565b634e487b7160e01b600052601260045260246000fd5b60008261142757611427611402565b500690565b634e487b7160e01b600052603260045260246000fd5b60ff81811683821601908111156106ca576106ca6113a9565b60ff82811682821603908111156106ca576106ca6113a9565b600181815b808511156114af578160001904821115611495576114956113a9565b808516156114a257918102915b93841c9390800290611479565b509250929050565b6000826114c6575060016106ca565b816114d3575060006106ca565b81600181146114e957600281146114f35761150f565b60019150506106ca565b60ff841115611504576115046113a9565b50506001821b6106ca565b5060208310610133831016604e8410600b8410161715611532575081810a6106ca565b61153c8383611474565b8060001904821115611550576115506113a9565b029392505050565b600061054283836114b7565b60008261157357611573611402565b50049056fea26469706673582212209c4c1c2bac30c1844cff2c639f7a658dbfa72bdf403b3bd12f15d60936b71c1464736f6c63430008110033",
100
100
  "linkReferences": {},
101
101
  "deployedLinkReferences": {}
102
102
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/6c0babf96ebde8483548147b6b068efe.json"
3
+ "buildInfo": "../../../build-info/e4f4f26015290869fd592d78bfef40e1.json"
4
4
  }