@flarenetwork/flare-periphery-contract-artifacts 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (498) hide show
  1. package/dist/README.md +5 -0
  2. package/dist/coston/abis.coston.d.ts +4 -0
  3. package/dist/coston/abis.coston.d.ts.map +1 -0
  4. package/dist/coston/abis.coston.js +213 -0
  5. package/dist/coston/abis.coston.js.map +1 -0
  6. package/dist/coston/artifacts/contracts/addressUpdater/implementation/AddressUpdatable.sol/AddressUpdatable.json +42 -0
  7. package/dist/coston/artifacts/contracts/addressUpdater/implementation/AddressUpdater.sol/AddressUpdater.json +381 -0
  8. package/dist/coston/artifacts/contracts/addressUpdater/interface/IIAddressUpdatable.sol/IIAddressUpdatable.json +29 -0
  9. package/dist/coston/artifacts/contracts/addressUpdater/interface/IIAddressUpdater.sol/IIAddressUpdater.json +105 -0
  10. package/dist/coston/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +1151 -0
  11. package/dist/coston/artifacts/contracts/claiming/implementation/CloneFactory.sol/CloneFactory.json +10 -0
  12. package/dist/coston/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +346 -0
  13. package/dist/coston/artifacts/contracts/claiming/interface/IIClaimSetupManager.sol/IIClaimSetupManager.json +795 -0
  14. package/dist/coston/artifacts/contracts/claiming/interface/IIDelegationAccount.sol/IIDelegationAccount.json +316 -0
  15. package/dist/coston/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +1104 -0
  16. package/dist/coston/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +1723 -0
  17. package/dist/coston/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +953 -0
  18. package/dist/coston/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +878 -0
  19. package/dist/coston/artifacts/contracts/ftso/interface/IIFtsoManagerV1.sol/IIFtsoManagerV1.json +102 -0
  20. package/dist/coston/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +10 -0
  21. package/dist/coston/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +43 -0
  22. package/dist/coston/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +10 -0
  23. package/dist/coston/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +10 -0
  24. package/dist/coston/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +10 -0
  25. package/dist/coston/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +624 -0
  26. package/dist/coston/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +241 -0
  27. package/dist/coston/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +198 -0
  28. package/dist/coston/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +1048 -0
  29. package/dist/coston/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +676 -0
  30. package/dist/coston/artifacts/contracts/genesis/implementation/GovernanceSettings.sol/GovernanceSettings.json +224 -0
  31. package/dist/coston/artifacts/contracts/genesis/implementation/PriceSubmitter.sol/PriceSubmitter.json +407 -0
  32. package/dist/coston/artifacts/contracts/genesis/implementation/StateConnector.sol/StateConnector.json +324 -0
  33. package/dist/coston/artifacts/contracts/genesis/interface/IFlareDaemonize.sol/IFlareDaemonize.json +37 -0
  34. package/dist/coston/artifacts/contracts/genesis/interface/IFtsoGenesis.sol/IFtsoGenesis.json +91 -0
  35. package/dist/coston/artifacts/contracts/genesis/interface/IFtsoManagerGenesis.sol/IFtsoManagerGenesis.json +24 -0
  36. package/dist/coston/artifacts/contracts/genesis/interface/IFtsoRegistryGenesis.sol/IFtsoRegistryGenesis.json +30 -0
  37. package/dist/coston/artifacts/contracts/genesis/interface/IIPriceSubmitter.sol/IIPriceSubmitter.json +285 -0
  38. package/dist/coston/artifacts/contracts/genesis/interface/IInflationGenesis.sol/IInflationGenesis.json +18 -0
  39. package/dist/coston/artifacts/contracts/governance/implementation/Governed.sol/Governed.json +126 -0
  40. package/dist/coston/artifacts/contracts/governance/implementation/GovernedAtGenesis.sol/GovernedAtGenesis.json +139 -0
  41. package/dist/coston/artifacts/contracts/governance/implementation/GovernedBase.sol/GovernedBase.json +115 -0
  42. package/dist/coston/artifacts/contracts/governance/implementation/GovernedBaseV2.sol/GovernedBaseV2.json +209 -0
  43. package/dist/coston/artifacts/contracts/governance/implementation/GovernedV2.sol/GovernedV2.json +220 -0
  44. package/dist/coston/artifacts/contracts/governance/implementation/Governor.sol/Governor.json +653 -0
  45. package/dist/coston/artifacts/contracts/governance/implementation/GovernorProposals.sol/GovernorProposals.json +24 -0
  46. package/dist/coston/artifacts/contracts/governance/implementation/GovernorProposer.sol/GovernorProposer.json +265 -0
  47. package/dist/coston/artifacts/contracts/governance/implementation/GovernorVotePower.sol/GovernorVotePower.json +24 -0
  48. package/dist/coston/artifacts/contracts/governance/implementation/GovernorVotes.sol/GovernorVotes.json +10 -0
  49. package/dist/coston/artifacts/contracts/governance/implementation/InflationAllocation.sol/InflationAllocation.json +351 -0
  50. package/dist/coston/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +1065 -0
  51. package/dist/coston/artifacts/contracts/governance/interface/IIGovernorProposer.sol/IIGovernorProposer.json +30 -0
  52. package/dist/coston/artifacts/contracts/governance/interface/IIPollingFoundation.sol/IIPollingFoundation.json +640 -0
  53. package/dist/coston/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +879 -0
  54. package/dist/coston/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +403 -0
  55. package/dist/coston/artifacts/contracts/inflation/interface/IIInflationPercentageProvider.sol/IIInflationPercentageProvider.json +24 -0
  56. package/dist/coston/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +44 -0
  57. package/dist/coston/artifacts/contracts/inflation/interface/IIInflationSharingPercentageProvider.sol/IIInflationSharingPercentageProvider.json +36 -0
  58. package/dist/coston/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +88 -0
  59. package/dist/coston/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +10 -0
  60. package/dist/coston/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +10 -0
  61. package/dist/coston/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +30 -0
  62. package/dist/coston/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +49 -0
  63. package/dist/coston/artifacts/contracts/mockXAsset/interface/ICollateralizable.sol/ICollateralizable.json +234 -0
  64. package/dist/coston/artifacts/contracts/token/implementation/CheckPointable.sol/CheckPointable.json +129 -0
  65. package/dist/coston/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +254 -0
  66. package/dist/coston/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +222 -0
  67. package/dist/coston/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +324 -0
  68. package/dist/coston/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +774 -0
  69. package/dist/coston/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +1102 -0
  70. package/dist/coston/artifacts/contracts/token/implementation/WNat.sol/WNat.json +1195 -0
  71. package/dist/coston/artifacts/contracts/token/interface/IICleanable.sol/IICleanable.json +63 -0
  72. package/dist/coston/artifacts/contracts/token/interface/IIGovernanceVotePower.sol/IIGovernanceVotePower.json +252 -0
  73. package/dist/coston/artifacts/contracts/token/interface/IIVPContract.sol/IIVPContract.json +609 -0
  74. package/dist/coston/artifacts/contracts/token/interface/IIVPToken.sol/IIVPToken.json +790 -0
  75. package/dist/coston/artifacts/contracts/token/lib/CheckPointHistory.sol/CheckPointHistory.json +10 -0
  76. package/dist/coston/artifacts/contracts/token/lib/CheckPointHistoryCache.sol/CheckPointHistoryCache.json +10 -0
  77. package/dist/coston/artifacts/contracts/token/lib/CheckPointsByAddress.sol/CheckPointsByAddress.json +10 -0
  78. package/dist/coston/artifacts/contracts/token/lib/DelegateCheckPointHistory.sol/DelegateCheckPointHistory.json +10 -0
  79. package/dist/coston/artifacts/contracts/token/lib/DelegateCheckPointsByAddress.sol/DelegateCheckPointsByAddress.json +10 -0
  80. package/dist/coston/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +24 -0
  81. package/dist/coston/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +10 -0
  82. package/dist/coston/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +24 -0
  83. package/dist/coston/artifacts/contracts/token/lib/VotePower.sol/VotePower.json +10 -0
  84. package/dist/coston/artifacts/contracts/token/lib/VotePowerCache.sol/VotePowerCache.json +10 -0
  85. package/dist/coston/artifacts/contracts/tokenPools/implementation/Distribution.sol/Distribution.json +414 -0
  86. package/dist/coston/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +1027 -0
  87. package/dist/coston/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +627 -0
  88. package/dist/coston/artifacts/contracts/tokenPools/interface/IIFtsoRewardManagerV2.sol/IIFtsoRewardManagerV2.json +949 -0
  89. package/dist/coston/artifacts/contracts/tokenPools/interface/IITokenPool.sol/IITokenPool.json +34 -0
  90. package/dist/coston/artifacts/contracts/tokenPools/lib/DataProviderFee.sol/DataProviderFee.json +10 -0
  91. package/dist/coston/artifacts/contracts/utils/implementation/AddressSet.sol/AddressSet.json +10 -0
  92. package/dist/coston/artifacts/contracts/utils/implementation/DateTimeLibrary.sol/BokkyPooBahsDateTimeLibrary.json +154 -0
  93. package/dist/coston/artifacts/contracts/utils/implementation/FlareContractRegistry.sol/FlareContractRegistry.json +147 -0
  94. package/dist/coston/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +769 -0
  95. package/dist/coston/artifacts/contracts/utils/implementation/FtsoRegistryProxy.sol/FtsoRegistryProxy.json +272 -0
  96. package/dist/coston/artifacts/contracts/utils/implementation/FtsoV2Upgrader.sol/FtsoV2Upgrader.json +440 -0
  97. package/dist/coston/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +144 -0
  98. package/dist/coston/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonizedV2.sol/GovernedAndFlareDaemonizedV2.json +238 -0
  99. package/dist/coston/artifacts/contracts/utils/implementation/ProxyGoverned.sol/ProxyGoverned.json +256 -0
  100. package/dist/coston/artifacts/contracts/utils/implementation/RevertErrorTracking.sol/RevertErrorTracking.json +131 -0
  101. package/dist/coston/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +10 -0
  102. package/dist/coston/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +418 -0
  103. package/dist/coston/artifacts/contracts/utils/interface/IIFtsoRegistry.sol/IIFtsoRegistry.json +477 -0
  104. package/dist/coston/artifacts/contracts/utils/interface/IIFtsoRegistryV1.sol/IIFtsoRegistryV1.json +120 -0
  105. package/dist/coston/artifacts/contracts/utils/interface/IIRandomProvider.sol/IIRandomProvider.json +60 -0
  106. package/dist/coston/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +236 -0
  107. package/dist/coston/artifacts/contracts/utils/interface/IUpdateValidators.sol/IUpdateValidators.json +18 -0
  108. package/dist/coston/deploys/contractAddresses.d.ts +31 -0
  109. package/dist/coston/deploys/contractAddresses.d.ts.map +1 -0
  110. package/dist/coston/deploys/contractAddresses.js +34 -0
  111. package/dist/coston/deploys/contractAddresses.js.map +1 -0
  112. package/dist/coston/deploys/coston.json +142 -0
  113. package/dist/coston/deploys/mapper.d.ts +7 -0
  114. package/dist/coston/deploys/mapper.d.ts.map +1 -0
  115. package/dist/coston/deploys/mapper.js +40 -0
  116. package/dist/coston/deploys/mapper.js.map +1 -0
  117. package/dist/coston/index.d.ts +3 -0
  118. package/dist/coston/index.d.ts.map +1 -0
  119. package/dist/coston/index.js +20 -0
  120. package/dist/coston/index.js.map +1 -0
  121. package/dist/coston2/abis.coston2.d.ts +4 -0
  122. package/dist/coston2/abis.coston2.d.ts.map +1 -0
  123. package/dist/coston2/abis.coston2.js +253 -0
  124. package/dist/coston2/abis.coston2.js.map +1 -0
  125. package/dist/coston2/artifacts/contracts/addressUpdater/implementation/AddressUpdatable.sol/AddressUpdatable.json +42 -0
  126. package/dist/coston2/artifacts/contracts/addressUpdater/implementation/AddressUpdater.sol/AddressUpdater.json +311 -0
  127. package/dist/coston2/artifacts/contracts/addressUpdater/interface/IIAddressUpdatable.sol/IIAddressUpdatable.json +29 -0
  128. package/dist/coston2/artifacts/contracts/assetRegistry/implementation/FlareAssetRegistry.sol/FlareAssetRegistry.json +525 -0
  129. package/dist/coston2/artifacts/contracts/assetRegistry/implementation/WNatRegistryProvider.sol/WNatRegistryProvider.json +113 -0
  130. package/dist/coston2/artifacts/contracts/assetRegistry/interface/IIERC20WithMetadata.sol/IIERC20WithMetadata.json +233 -0
  131. package/dist/coston2/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistry.sol/IIFlareAssetRegistry.json +316 -0
  132. package/dist/coston2/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistryProvider.sol/IIFlareAssetRegistryProvider.json +66 -0
  133. package/dist/coston2/artifacts/contracts/assetRegistry/lib/StandardAttributes.sol/StandardAttributes.json +10 -0
  134. package/dist/coston2/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +1151 -0
  135. package/dist/coston2/artifacts/contracts/claiming/implementation/CloneFactory.sol/CloneFactory.json +10 -0
  136. package/dist/coston2/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +346 -0
  137. package/dist/coston2/artifacts/contracts/claiming/interface/IIClaimSetupManager.sol/IIClaimSetupManager.json +795 -0
  138. package/dist/coston2/artifacts/contracts/claiming/interface/IIDelegationAccount.sol/IIDelegationAccount.json +316 -0
  139. package/dist/coston2/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +1007 -0
  140. package/dist/coston2/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +1647 -0
  141. package/dist/coston2/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +856 -0
  142. package/dist/coston2/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +837 -0
  143. package/dist/coston2/artifacts/contracts/ftso/interface/IIFtsoManagerV1.sol/IIFtsoManagerV1.json +102 -0
  144. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +10 -0
  145. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +43 -0
  146. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +10 -0
  147. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +10 -0
  148. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +10 -0
  149. package/dist/coston2/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +718 -0
  150. package/dist/coston2/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +338 -0
  151. package/dist/coston2/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +198 -0
  152. package/dist/coston2/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +951 -0
  153. package/dist/coston2/artifacts/contracts/genesis/implementation/DistributionTreasury.sol/DistributionTreasury.json +336 -0
  154. package/dist/coston2/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +794 -0
  155. package/dist/coston2/artifacts/contracts/genesis/implementation/GovernanceSettings.sol/GovernanceSettings.json +219 -0
  156. package/dist/coston2/artifacts/contracts/genesis/implementation/IncentivePoolTreasury.sol/IncentivePoolTreasury.json +292 -0
  157. package/dist/coston2/artifacts/contracts/genesis/implementation/InitialAirdrop.sol/InitialAirdrop.json +493 -0
  158. package/dist/coston2/artifacts/contracts/genesis/implementation/PriceSubmitter.sol/PriceSubmitter.json +569 -0
  159. package/dist/coston2/artifacts/contracts/genesis/implementation/StateConnector.sol/StateConnector.json +324 -0
  160. package/dist/coston2/artifacts/contracts/genesis/interface/IFlareDaemonize.sol/IFlareDaemonize.json +50 -0
  161. package/dist/coston2/artifacts/contracts/genesis/interface/IFtsoGenesis.sol/IFtsoGenesis.json +63 -0
  162. package/dist/coston2/artifacts/contracts/genesis/interface/IFtsoManagerGenesis.sol/IFtsoManagerGenesis.json +24 -0
  163. package/dist/coston2/artifacts/contracts/genesis/interface/IFtsoRegistryGenesis.sol/IFtsoRegistryGenesis.json +30 -0
  164. package/dist/coston2/artifacts/contracts/genesis/interface/IIPriceSubmitter.sol/IIPriceSubmitter.json +283 -0
  165. package/dist/coston2/artifacts/contracts/genesis/interface/IInflationGenesis.sol/IInflationGenesis.json +18 -0
  166. package/dist/coston2/artifacts/contracts/governance/implementation/Governed.sol/Governed.json +220 -0
  167. package/dist/coston2/artifacts/contracts/governance/implementation/GovernedAtGenesis.sol/GovernedAtGenesis.json +233 -0
  168. package/dist/coston2/artifacts/contracts/governance/implementation/GovernedBase.sol/GovernedBase.json +209 -0
  169. package/dist/coston2/artifacts/contracts/governance/implementation/Governor.sol/Governor.json +653 -0
  170. package/dist/coston2/artifacts/contracts/governance/implementation/GovernorProposals.sol/GovernorProposals.json +24 -0
  171. package/dist/coston2/artifacts/contracts/governance/implementation/GovernorProposer.sol/GovernorProposer.json +265 -0
  172. package/dist/coston2/artifacts/contracts/governance/implementation/GovernorVotePower.sol/GovernorVotePower.json +24 -0
  173. package/dist/coston2/artifacts/contracts/governance/implementation/GovernorVotes.sol/GovernorVotes.json +10 -0
  174. package/dist/coston2/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +1070 -0
  175. package/dist/coston2/artifacts/contracts/governance/interface/IIGovernorProposer.sol/IIGovernorProposer.json +30 -0
  176. package/dist/coston2/artifacts/contracts/governance/interface/IIPollingFoundation.sol/IIPollingFoundation.json +640 -0
  177. package/dist/coston2/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +926 -0
  178. package/dist/coston2/artifacts/contracts/inflation/implementation/InflationAllocation.sol/InflationAllocation.json +463 -0
  179. package/dist/coston2/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +543 -0
  180. package/dist/coston2/artifacts/contracts/inflation/interface/IIInflationAllocation.sol/IIInflationAllocation.json +49 -0
  181. package/dist/coston2/artifacts/contracts/inflation/interface/IIInflationPercentageProvider.sol/IIInflationPercentageProvider.json +24 -0
  182. package/dist/coston2/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +57 -0
  183. package/dist/coston2/artifacts/contracts/inflation/interface/IIInflationSharingPercentageProvider.sol/IIInflationSharingPercentageProvider.json +36 -0
  184. package/dist/coston2/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +82 -0
  185. package/dist/coston2/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +10 -0
  186. package/dist/coston2/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +10 -0
  187. package/dist/coston2/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +30 -0
  188. package/dist/coston2/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +49 -0
  189. package/dist/coston2/artifacts/contracts/mockXAsset/interface/ICollateralizable.sol/ICollateralizable.json +234 -0
  190. package/dist/coston2/artifacts/contracts/token/implementation/CheckPointable.sol/CheckPointable.json +142 -0
  191. package/dist/coston2/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +389 -0
  192. package/dist/coston2/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +235 -0
  193. package/dist/coston2/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +324 -0
  194. package/dist/coston2/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +798 -0
  195. package/dist/coston2/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +1264 -0
  196. package/dist/coston2/artifacts/contracts/token/implementation/WNat.sol/WNat.json +1357 -0
  197. package/dist/coston2/artifacts/contracts/token/interface/IICleanable.sol/IICleanable.json +50 -0
  198. package/dist/coston2/artifacts/contracts/token/interface/IIGovernanceVotePower.sol/IIGovernanceVotePower.json +252 -0
  199. package/dist/coston2/artifacts/contracts/token/interface/IIVPContract.sol/IIVPContract.json +620 -0
  200. package/dist/coston2/artifacts/contracts/token/interface/IIVPToken.sol/IIVPToken.json +832 -0
  201. package/dist/coston2/artifacts/contracts/token/lib/CheckPointHistory.sol/CheckPointHistory.json +10 -0
  202. package/dist/coston2/artifacts/contracts/token/lib/CheckPointHistoryCache.sol/CheckPointHistoryCache.json +10 -0
  203. package/dist/coston2/artifacts/contracts/token/lib/CheckPointsByAddress.sol/CheckPointsByAddress.json +10 -0
  204. package/dist/coston2/artifacts/contracts/token/lib/DelegateCheckPointHistory.sol/DelegateCheckPointHistory.json +10 -0
  205. package/dist/coston2/artifacts/contracts/token/lib/DelegateCheckPointsByAddress.sol/DelegateCheckPointsByAddress.json +10 -0
  206. package/dist/coston2/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +24 -0
  207. package/dist/coston2/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +10 -0
  208. package/dist/coston2/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +24 -0
  209. package/dist/coston2/artifacts/contracts/token/lib/VotePower.sol/VotePower.json +10 -0
  210. package/dist/coston2/artifacts/contracts/token/lib/VotePowerCache.sol/VotePowerCache.json +10 -0
  211. package/dist/coston2/artifacts/contracts/tokenPools/implementation/AttestationProviderRewardManager.sol/AttestationProviderRewardManager.json +741 -0
  212. package/dist/coston2/artifacts/contracts/tokenPools/implementation/Distribution.sol/Distribution.json +561 -0
  213. package/dist/coston2/artifacts/contracts/tokenPools/implementation/DistributionToDelegators.sol/DistributionToDelegators.json +1121 -0
  214. package/dist/coston2/artifacts/contracts/tokenPools/implementation/Escrow.sol/Escrow.json +769 -0
  215. package/dist/coston2/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +1412 -0
  216. package/dist/coston2/artifacts/contracts/tokenPools/implementation/GenericRewardManager.sol/GenericRewardManager.json +720 -0
  217. package/dist/coston2/artifacts/contracts/tokenPools/implementation/IncentivePool.sol/IncentivePool.json +927 -0
  218. package/dist/coston2/artifacts/contracts/tokenPools/implementation/IncentivePoolAllocation.sol/IncentivePoolAllocation.json +463 -0
  219. package/dist/coston2/artifacts/contracts/tokenPools/implementation/ValidatorRewardManager.sol/ValidatorRewardManager.json +741 -0
  220. package/dist/coston2/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +962 -0
  221. package/dist/coston2/artifacts/contracts/tokenPools/interface/IIGenericRewardManager.sol/IIGenericRewardManager.json +413 -0
  222. package/dist/coston2/artifacts/contracts/tokenPools/interface/IIIncentivePoolAllocation.sol/IIIncentivePoolAllocation.json +49 -0
  223. package/dist/coston2/artifacts/contracts/tokenPools/interface/IIIncentivePoolPercentageProvider.sol/IIIncentivePoolPercentageProvider.json +24 -0
  224. package/dist/coston2/artifacts/contracts/tokenPools/interface/IIIncentivePoolReceiver.sol/IIIncentivePoolReceiver.json +57 -0
  225. package/dist/coston2/artifacts/contracts/tokenPools/interface/IIIncentivePoolSharingPercentageProvider.sol/IIIncentivePoolSharingPercentageProvider.json +36 -0
  226. package/dist/coston2/artifacts/contracts/tokenPools/interface/IITokenPool.sol/IITokenPool.json +34 -0
  227. package/dist/coston2/artifacts/contracts/tokenPools/lib/DataProviderFee.sol/DataProviderFee.json +10 -0
  228. package/dist/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolAnnum.sol/IncentivePoolAnnum.json +10 -0
  229. package/dist/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolAnnums.sol/IncentivePoolAnnums.json +10 -0
  230. package/dist/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolRewardService.sol/IncentivePoolRewardService.json +30 -0
  231. package/dist/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolRewardServices.sol/IncentivePoolRewardServices.json +49 -0
  232. package/dist/coston2/artifacts/contracts/utils/implementation/AddressSet.sol/AddressSet.json +10 -0
  233. package/dist/coston2/artifacts/contracts/utils/implementation/DateTimeLibrary.sol/BokkyPooBahsDateTimeLibrary.json +154 -0
  234. package/dist/coston2/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +769 -0
  235. package/dist/coston2/artifacts/contracts/utils/implementation/FtsoRegistryProxy.sol/FtsoRegistryProxy.json +272 -0
  236. package/dist/coston2/artifacts/contracts/utils/implementation/FundDistributor.sol/FundDistributor.json +71 -0
  237. package/dist/coston2/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +238 -0
  238. package/dist/coston2/artifacts/contracts/utils/implementation/ProxyGoverned.sol/ProxyGoverned.json +256 -0
  239. package/dist/coston2/artifacts/contracts/utils/implementation/RevertErrorTracking.sol/RevertErrorTracking.json +131 -0
  240. package/dist/coston2/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +10 -0
  241. package/dist/coston2/artifacts/contracts/utils/implementation/SelfdestructTransfer.sol/SelfdestructTransfer.json +91 -0
  242. package/dist/coston2/artifacts/contracts/utils/implementation/ValidatorRegistry.sol/ValidatorRegistry.json +149 -0
  243. package/dist/coston2/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +530 -0
  244. package/dist/coston2/artifacts/contracts/utils/interface/IIFtsoRegistry.sol/IIFtsoRegistry.json +477 -0
  245. package/dist/coston2/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +236 -0
  246. package/dist/coston2/artifacts/contracts/utils/interface/IUpdateValidators.sol/IUpdateValidators.json +18 -0
  247. package/dist/coston2/deploys/contractAddresses.d.ts +45 -0
  248. package/dist/coston2/deploys/contractAddresses.d.ts.map +1 -0
  249. package/dist/coston2/deploys/contractAddresses.js +48 -0
  250. package/dist/coston2/deploys/contractAddresses.js.map +1 -0
  251. package/dist/coston2/deploys/coston2.json +212 -0
  252. package/dist/coston2/deploys/mapper.d.ts +7 -0
  253. package/dist/coston2/deploys/mapper.d.ts.map +1 -0
  254. package/dist/coston2/deploys/mapper.js +40 -0
  255. package/dist/coston2/deploys/mapper.js.map +1 -0
  256. package/dist/coston2/index.d.ts +3 -0
  257. package/dist/coston2/index.d.ts.map +1 -0
  258. package/dist/coston2/index.js +20 -0
  259. package/dist/coston2/index.js.map +1 -0
  260. package/dist/flare/abis.flare.d.ts +4 -0
  261. package/dist/flare/abis.flare.d.ts.map +1 -0
  262. package/dist/flare/abis.flare.js +251 -0
  263. package/dist/flare/abis.flare.js.map +1 -0
  264. package/dist/flare/artifacts/contracts/addressUpdater/implementation/AddressUpdatable.sol/AddressUpdatable.json +42 -0
  265. package/dist/flare/artifacts/contracts/addressUpdater/implementation/AddressUpdater.sol/AddressUpdater.json +311 -0
  266. package/dist/flare/artifacts/contracts/addressUpdater/interface/IIAddressUpdatable.sol/IIAddressUpdatable.json +29 -0
  267. package/dist/flare/artifacts/contracts/assetRegistry/implementation/FlareAssetRegistry.sol/FlareAssetRegistry.json +525 -0
  268. package/dist/flare/artifacts/contracts/assetRegistry/implementation/WNatRegistryProvider.sol/WNatRegistryProvider.json +113 -0
  269. package/dist/flare/artifacts/contracts/assetRegistry/interface/IIERC20WithMetadata.sol/IIERC20WithMetadata.json +233 -0
  270. package/dist/flare/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistry.sol/IIFlareAssetRegistry.json +316 -0
  271. package/dist/flare/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistryProvider.sol/IIFlareAssetRegistryProvider.json +66 -0
  272. package/dist/flare/artifacts/contracts/assetRegistry/lib/StandardAttributes.sol/StandardAttributes.json +10 -0
  273. package/dist/flare/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +1151 -0
  274. package/dist/flare/artifacts/contracts/claiming/implementation/CloneFactory.sol/CloneFactory.json +10 -0
  275. package/dist/flare/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +346 -0
  276. package/dist/flare/artifacts/contracts/claiming/interface/IIClaimSetupManager.sol/IIClaimSetupManager.json +795 -0
  277. package/dist/flare/artifacts/contracts/claiming/interface/IIDelegationAccount.sol/IIDelegationAccount.json +316 -0
  278. package/dist/flare/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +1007 -0
  279. package/dist/flare/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +1647 -0
  280. package/dist/flare/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +856 -0
  281. package/dist/flare/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +837 -0
  282. package/dist/flare/artifacts/contracts/ftso/interface/IIFtsoManagerV1.sol/IIFtsoManagerV1.json +102 -0
  283. package/dist/flare/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +10 -0
  284. package/dist/flare/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +43 -0
  285. package/dist/flare/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +10 -0
  286. package/dist/flare/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +10 -0
  287. package/dist/flare/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +10 -0
  288. package/dist/flare/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +718 -0
  289. package/dist/flare/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +338 -0
  290. package/dist/flare/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +198 -0
  291. package/dist/flare/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +951 -0
  292. package/dist/flare/artifacts/contracts/genesis/implementation/DistributionTreasury.sol/DistributionTreasury.json +336 -0
  293. package/dist/flare/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +794 -0
  294. package/dist/flare/artifacts/contracts/genesis/implementation/GovernanceSettings.sol/GovernanceSettings.json +219 -0
  295. package/dist/flare/artifacts/contracts/genesis/implementation/IncentivePoolTreasury.sol/IncentivePoolTreasury.json +292 -0
  296. package/dist/flare/artifacts/contracts/genesis/implementation/InitialAirdrop.sol/InitialAirdrop.json +493 -0
  297. package/dist/flare/artifacts/contracts/genesis/implementation/PriceSubmitter.sol/PriceSubmitter.json +569 -0
  298. package/dist/flare/artifacts/contracts/genesis/implementation/StateConnector.sol/StateConnector.json +324 -0
  299. package/dist/flare/artifacts/contracts/genesis/interface/IFlareDaemonize.sol/IFlareDaemonize.json +50 -0
  300. package/dist/flare/artifacts/contracts/genesis/interface/IFtsoGenesis.sol/IFtsoGenesis.json +63 -0
  301. package/dist/flare/artifacts/contracts/genesis/interface/IFtsoManagerGenesis.sol/IFtsoManagerGenesis.json +24 -0
  302. package/dist/flare/artifacts/contracts/genesis/interface/IFtsoRegistryGenesis.sol/IFtsoRegistryGenesis.json +30 -0
  303. package/dist/flare/artifacts/contracts/genesis/interface/IIPriceSubmitter.sol/IIPriceSubmitter.json +283 -0
  304. package/dist/flare/artifacts/contracts/genesis/interface/IInflationGenesis.sol/IInflationGenesis.json +18 -0
  305. package/dist/flare/artifacts/contracts/governance/implementation/Governed.sol/Governed.json +220 -0
  306. package/dist/flare/artifacts/contracts/governance/implementation/GovernedAtGenesis.sol/GovernedAtGenesis.json +233 -0
  307. package/dist/flare/artifacts/contracts/governance/implementation/GovernedBase.sol/GovernedBase.json +209 -0
  308. package/dist/flare/artifacts/contracts/governance/implementation/Governor.sol/Governor.json +653 -0
  309. package/dist/flare/artifacts/contracts/governance/implementation/GovernorProposals.sol/GovernorProposals.json +24 -0
  310. package/dist/flare/artifacts/contracts/governance/implementation/GovernorProposer.sol/GovernorProposer.json +265 -0
  311. package/dist/flare/artifacts/contracts/governance/implementation/GovernorVotePower.sol/GovernorVotePower.json +24 -0
  312. package/dist/flare/artifacts/contracts/governance/implementation/GovernorVotes.sol/GovernorVotes.json +10 -0
  313. package/dist/flare/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +1070 -0
  314. package/dist/flare/artifacts/contracts/governance/interface/IIGovernorProposer.sol/IIGovernorProposer.json +30 -0
  315. package/dist/flare/artifacts/contracts/governance/interface/IIPollingFoundation.sol/IIPollingFoundation.json +640 -0
  316. package/dist/flare/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +926 -0
  317. package/dist/flare/artifacts/contracts/inflation/implementation/InflationAllocation.sol/InflationAllocation.json +463 -0
  318. package/dist/flare/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +543 -0
  319. package/dist/flare/artifacts/contracts/inflation/interface/IIInflationAllocation.sol/IIInflationAllocation.json +49 -0
  320. package/dist/flare/artifacts/contracts/inflation/interface/IIInflationPercentageProvider.sol/IIInflationPercentageProvider.json +24 -0
  321. package/dist/flare/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +57 -0
  322. package/dist/flare/artifacts/contracts/inflation/interface/IIInflationSharingPercentageProvider.sol/IIInflationSharingPercentageProvider.json +36 -0
  323. package/dist/flare/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +82 -0
  324. package/dist/flare/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +10 -0
  325. package/dist/flare/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +10 -0
  326. package/dist/flare/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +30 -0
  327. package/dist/flare/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +49 -0
  328. package/dist/flare/artifacts/contracts/mockXAsset/interface/ICollateralizable.sol/ICollateralizable.json +234 -0
  329. package/dist/flare/artifacts/contracts/token/implementation/CheckPointable.sol/CheckPointable.json +142 -0
  330. package/dist/flare/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +389 -0
  331. package/dist/flare/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +235 -0
  332. package/dist/flare/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +324 -0
  333. package/dist/flare/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +798 -0
  334. package/dist/flare/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +1264 -0
  335. package/dist/flare/artifacts/contracts/token/implementation/WNat.sol/WNat.json +1357 -0
  336. package/dist/flare/artifacts/contracts/token/interface/IICleanable.sol/IICleanable.json +50 -0
  337. package/dist/flare/artifacts/contracts/token/interface/IIGovernanceVotePower.sol/IIGovernanceVotePower.json +252 -0
  338. package/dist/flare/artifacts/contracts/token/interface/IIVPContract.sol/IIVPContract.json +620 -0
  339. package/dist/flare/artifacts/contracts/token/interface/IIVPToken.sol/IIVPToken.json +832 -0
  340. package/dist/flare/artifacts/contracts/token/lib/CheckPointHistory.sol/CheckPointHistory.json +10 -0
  341. package/dist/flare/artifacts/contracts/token/lib/CheckPointHistoryCache.sol/CheckPointHistoryCache.json +10 -0
  342. package/dist/flare/artifacts/contracts/token/lib/CheckPointsByAddress.sol/CheckPointsByAddress.json +10 -0
  343. package/dist/flare/artifacts/contracts/token/lib/DelegateCheckPointHistory.sol/DelegateCheckPointHistory.json +10 -0
  344. package/dist/flare/artifacts/contracts/token/lib/DelegateCheckPointsByAddress.sol/DelegateCheckPointsByAddress.json +10 -0
  345. package/dist/flare/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +24 -0
  346. package/dist/flare/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +10 -0
  347. package/dist/flare/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +24 -0
  348. package/dist/flare/artifacts/contracts/token/lib/VotePower.sol/VotePower.json +10 -0
  349. package/dist/flare/artifacts/contracts/token/lib/VotePowerCache.sol/VotePowerCache.json +10 -0
  350. package/dist/flare/artifacts/contracts/tokenPools/implementation/AttestationProviderRewardManager.sol/AttestationProviderRewardManager.json +741 -0
  351. package/dist/flare/artifacts/contracts/tokenPools/implementation/Distribution.sol/Distribution.json +561 -0
  352. package/dist/flare/artifacts/contracts/tokenPools/implementation/DistributionToDelegators.sol/DistributionToDelegators.json +1121 -0
  353. package/dist/flare/artifacts/contracts/tokenPools/implementation/Escrow.sol/Escrow.json +769 -0
  354. package/dist/flare/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +1412 -0
  355. package/dist/flare/artifacts/contracts/tokenPools/implementation/GenericRewardManager.sol/GenericRewardManager.json +720 -0
  356. package/dist/flare/artifacts/contracts/tokenPools/implementation/IncentivePool.sol/IncentivePool.json +927 -0
  357. package/dist/flare/artifacts/contracts/tokenPools/implementation/IncentivePoolAllocation.sol/IncentivePoolAllocation.json +463 -0
  358. package/dist/flare/artifacts/contracts/tokenPools/implementation/ValidatorRewardManager.sol/ValidatorRewardManager.json +741 -0
  359. package/dist/flare/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +962 -0
  360. package/dist/flare/artifacts/contracts/tokenPools/interface/IIGenericRewardManager.sol/IIGenericRewardManager.json +413 -0
  361. package/dist/flare/artifacts/contracts/tokenPools/interface/IIIncentivePoolAllocation.sol/IIIncentivePoolAllocation.json +49 -0
  362. package/dist/flare/artifacts/contracts/tokenPools/interface/IIIncentivePoolPercentageProvider.sol/IIIncentivePoolPercentageProvider.json +24 -0
  363. package/dist/flare/artifacts/contracts/tokenPools/interface/IIIncentivePoolReceiver.sol/IIIncentivePoolReceiver.json +57 -0
  364. package/dist/flare/artifacts/contracts/tokenPools/interface/IIIncentivePoolSharingPercentageProvider.sol/IIIncentivePoolSharingPercentageProvider.json +36 -0
  365. package/dist/flare/artifacts/contracts/tokenPools/interface/IITokenPool.sol/IITokenPool.json +34 -0
  366. package/dist/flare/artifacts/contracts/tokenPools/lib/DataProviderFee.sol/DataProviderFee.json +10 -0
  367. package/dist/flare/artifacts/contracts/tokenPools/lib/IncentivePoolAnnum.sol/IncentivePoolAnnum.json +10 -0
  368. package/dist/flare/artifacts/contracts/tokenPools/lib/IncentivePoolAnnums.sol/IncentivePoolAnnums.json +10 -0
  369. package/dist/flare/artifacts/contracts/tokenPools/lib/IncentivePoolRewardService.sol/IncentivePoolRewardService.json +30 -0
  370. package/dist/flare/artifacts/contracts/tokenPools/lib/IncentivePoolRewardServices.sol/IncentivePoolRewardServices.json +49 -0
  371. package/dist/flare/artifacts/contracts/utils/implementation/AddressSet.sol/AddressSet.json +10 -0
  372. package/dist/flare/artifacts/contracts/utils/implementation/DateTimeLibrary.sol/BokkyPooBahsDateTimeLibrary.json +154 -0
  373. package/dist/flare/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +769 -0
  374. package/dist/flare/artifacts/contracts/utils/implementation/FtsoRegistryProxy.sol/FtsoRegistryProxy.json +272 -0
  375. package/dist/flare/artifacts/contracts/utils/implementation/FundDistributor.sol/FundDistributor.json +71 -0
  376. package/dist/flare/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +238 -0
  377. package/dist/flare/artifacts/contracts/utils/implementation/ProxyGoverned.sol/ProxyGoverned.json +256 -0
  378. package/dist/flare/artifacts/contracts/utils/implementation/RevertErrorTracking.sol/RevertErrorTracking.json +131 -0
  379. package/dist/flare/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +10 -0
  380. package/dist/flare/artifacts/contracts/utils/implementation/ValidatorRegistry.sol/ValidatorRegistry.json +149 -0
  381. package/dist/flare/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +530 -0
  382. package/dist/flare/artifacts/contracts/utils/interface/IIFtsoRegistry.sol/IIFtsoRegistry.json +477 -0
  383. package/dist/flare/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +236 -0
  384. package/dist/flare/artifacts/contracts/utils/interface/IUpdateValidators.sol/IUpdateValidators.json +18 -0
  385. package/dist/flare/deploys/contractAddresses.d.ts +44 -0
  386. package/dist/flare/deploys/contractAddresses.d.ts.map +1 -0
  387. package/dist/flare/deploys/contractAddresses.js +47 -0
  388. package/dist/flare/deploys/contractAddresses.js.map +1 -0
  389. package/dist/flare/deploys/flare.json +207 -0
  390. package/dist/flare/deploys/mapper.d.ts +7 -0
  391. package/dist/flare/deploys/mapper.d.ts.map +1 -0
  392. package/dist/flare/deploys/mapper.js +40 -0
  393. package/dist/flare/deploys/mapper.js.map +1 -0
  394. package/dist/flare/index.d.ts +3 -0
  395. package/dist/flare/index.d.ts.map +1 -0
  396. package/dist/flare/index.js +20 -0
  397. package/dist/flare/index.js.map +1 -0
  398. package/dist/index.d.ts +7 -0
  399. package/dist/index.d.ts.map +1 -0
  400. package/dist/index.js +48 -0
  401. package/dist/index.js.map +1 -0
  402. package/dist/package.json +28 -0
  403. package/dist/songbird/abis.songbird.d.ts +4 -0
  404. package/dist/songbird/abis.songbird.d.ts.map +1 -0
  405. package/dist/songbird/abis.songbird.js +165 -0
  406. package/dist/songbird/abis.songbird.js.map +1 -0
  407. package/dist/songbird/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +955 -0
  408. package/dist/songbird/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +1111 -0
  409. package/dist/songbird/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +811 -0
  410. package/dist/songbird/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +603 -0
  411. package/dist/songbird/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +10 -0
  412. package/dist/songbird/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +10 -0
  413. package/dist/songbird/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +10 -0
  414. package/dist/songbird/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +10 -0
  415. package/dist/songbird/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +443 -0
  416. package/dist/songbird/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +241 -0
  417. package/dist/songbird/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +198 -0
  418. package/dist/songbird/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +906 -0
  419. package/dist/songbird/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +676 -0
  420. package/dist/songbird/artifacts/contracts/genesis/implementation/PriceSubmitter.sol/PriceSubmitter.json +407 -0
  421. package/dist/songbird/artifacts/contracts/genesis/implementation/StateConnector.sol/StateConnector.json +1003 -0
  422. package/dist/songbird/artifacts/contracts/genesis/interface/IFlareDaemonize.sol/IFlareDaemonize.json +37 -0
  423. package/dist/songbird/artifacts/contracts/genesis/interface/IFtsoGenesis.sol/IFtsoGenesis.json +91 -0
  424. package/dist/songbird/artifacts/contracts/genesis/interface/IFtsoRegistryGenesis.sol/IFtsoRegistryGenesis.json +30 -0
  425. package/dist/songbird/artifacts/contracts/genesis/interface/IIPriceSubmitter.sol/IIPriceSubmitter.json +285 -0
  426. package/dist/songbird/artifacts/contracts/genesis/interface/IInflationGenesis.sol/IInflationGenesis.json +18 -0
  427. package/dist/songbird/artifacts/contracts/governance/implementation/Governed.sol/Governed.json +126 -0
  428. package/dist/songbird/artifacts/contracts/governance/implementation/GovernedAtGenesis.sol/GovernedAtGenesis.json +139 -0
  429. package/dist/songbird/artifacts/contracts/governance/implementation/GovernedBase.sol/GovernedBase.json +115 -0
  430. package/dist/songbird/artifacts/contracts/governance/implementation/Governor.sol/Governor.json +785 -0
  431. package/dist/songbird/artifacts/contracts/governance/implementation/GovernorProposals.sol/GovernorProposals.json +24 -0
  432. package/dist/songbird/artifacts/contracts/governance/implementation/GovernorProposer.sol/GovernorProposer.json +171 -0
  433. package/dist/songbird/artifacts/contracts/governance/implementation/GovernorVotePower.sol/GovernorVotePower.json +24 -0
  434. package/dist/songbird/artifacts/contracts/governance/implementation/GovernorVotes.sol/GovernorVotes.json +10 -0
  435. package/dist/songbird/artifacts/contracts/governance/implementation/InflationAllocation.sol/InflationAllocation.json +351 -0
  436. package/dist/songbird/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +994 -0
  437. package/dist/songbird/artifacts/contracts/governance/interface/IIGovernorProposer.sol/IIGovernorProposer.json +30 -0
  438. package/dist/songbird/artifacts/contracts/governance/interface/IIPollingFoundation.sol/IIPollingFoundation.json +671 -0
  439. package/dist/songbird/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +879 -0
  440. package/dist/songbird/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +403 -0
  441. package/dist/songbird/artifacts/contracts/inflation/interface/IIInflationPercentageProvider.sol/IIInflationPercentageProvider.json +24 -0
  442. package/dist/songbird/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +44 -0
  443. package/dist/songbird/artifacts/contracts/inflation/interface/IIInflationSharingPercentageProvider.sol/IIInflationSharingPercentageProvider.json +36 -0
  444. package/dist/songbird/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +88 -0
  445. package/dist/songbird/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +10 -0
  446. package/dist/songbird/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +10 -0
  447. package/dist/songbird/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +30 -0
  448. package/dist/songbird/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +49 -0
  449. package/dist/songbird/artifacts/contracts/mockXAsset/interface/ICollateralizable.sol/ICollateralizable.json +234 -0
  450. package/dist/songbird/artifacts/contracts/token/implementation/CheckPointable.sol/CheckPointable.json +129 -0
  451. package/dist/songbird/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +254 -0
  452. package/dist/songbird/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +222 -0
  453. package/dist/songbird/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +324 -0
  454. package/dist/songbird/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +774 -0
  455. package/dist/songbird/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +1102 -0
  456. package/dist/songbird/artifacts/contracts/token/implementation/WNat.sol/WNat.json +1195 -0
  457. package/dist/songbird/artifacts/contracts/token/interface/IICleanable.sol/IICleanable.json +63 -0
  458. package/dist/songbird/artifacts/contracts/token/interface/IIGovernanceVotePower.sol/IIGovernanceVotePower.json +252 -0
  459. package/dist/songbird/artifacts/contracts/token/interface/IIVPContract.sol/IIVPContract.json +609 -0
  460. package/dist/songbird/artifacts/contracts/token/interface/IIVPToken.sol/IIVPToken.json +790 -0
  461. package/dist/songbird/artifacts/contracts/token/lib/CheckPointHistory.sol/CheckPointHistory.json +10 -0
  462. package/dist/songbird/artifacts/contracts/token/lib/CheckPointHistoryCache.sol/CheckPointHistoryCache.json +10 -0
  463. package/dist/songbird/artifacts/contracts/token/lib/CheckPointsByAddress.sol/CheckPointsByAddress.json +10 -0
  464. package/dist/songbird/artifacts/contracts/token/lib/DelegateCheckPointHistory.sol/DelegateCheckPointHistory.json +10 -0
  465. package/dist/songbird/artifacts/contracts/token/lib/DelegateCheckPointsByAddress.sol/DelegateCheckPointsByAddress.json +10 -0
  466. package/dist/songbird/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +24 -0
  467. package/dist/songbird/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +10 -0
  468. package/dist/songbird/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +24 -0
  469. package/dist/songbird/artifacts/contracts/token/lib/VotePower.sol/VotePower.json +10 -0
  470. package/dist/songbird/artifacts/contracts/token/lib/VotePowerCache.sol/VotePowerCache.json +10 -0
  471. package/dist/songbird/artifacts/contracts/tokenPools/implementation/DataAvailabilityRewardManager.sol/DataAvailabilityRewardManager.json +566 -0
  472. package/dist/songbird/artifacts/contracts/tokenPools/implementation/Distribution.sol/Distribution.json +391 -0
  473. package/dist/songbird/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +1027 -0
  474. package/dist/songbird/artifacts/contracts/tokenPools/interface/IIDataAvailabilityRewardManager.sol/IIDataAvailabilityRewardManager.json +203 -0
  475. package/dist/songbird/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +558 -0
  476. package/dist/songbird/artifacts/contracts/tokenPools/interface/IITokenPool.sol/IITokenPool.json +34 -0
  477. package/dist/songbird/artifacts/contracts/utils/implementation/DateTimeLibrary.sol/BokkyPooBahsDateTimeLibrary.json +154 -0
  478. package/dist/songbird/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +475 -0
  479. package/dist/songbird/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +144 -0
  480. package/dist/songbird/artifacts/contracts/utils/implementation/RevertErrorTracking.sol/RevertErrorTracking.json +149 -0
  481. package/dist/songbird/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +10 -0
  482. package/dist/songbird/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +418 -0
  483. package/dist/songbird/artifacts/contracts/utils/interface/IIFtsoRegistry.sol/IIFtsoRegistry.json +315 -0
  484. package/dist/songbird/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +236 -0
  485. package/dist/songbird/deploys/contractAddresses.d.ts +29 -0
  486. package/dist/songbird/deploys/contractAddresses.d.ts.map +1 -0
  487. package/dist/songbird/deploys/contractAddresses.js +32 -0
  488. package/dist/songbird/deploys/contractAddresses.js.map +1 -0
  489. package/dist/songbird/deploys/mapper.d.ts +7 -0
  490. package/dist/songbird/deploys/mapper.d.ts.map +1 -0
  491. package/dist/songbird/deploys/mapper.js +40 -0
  492. package/dist/songbird/deploys/mapper.js.map +1 -0
  493. package/dist/songbird/deploys/songbird.json +132 -0
  494. package/dist/songbird/index.d.ts +3 -0
  495. package/dist/songbird/index.d.ts.map +1 -0
  496. package/dist/songbird/index.js +20 -0
  497. package/dist/songbird/index.js.map +1 -0
  498. package/package.json +28 -0
@@ -0,0 +1,1111 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "FtsoManager",
4
+ "sourceName": "contracts/ftso/implementation/FtsoManager.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "_governance",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "contract FlareDaemon",
15
+ "name": "_flareDaemon",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "contract IIPriceSubmitter",
20
+ "name": "_priceSubmitter",
21
+ "type": "address"
22
+ },
23
+ {
24
+ "internalType": "uint256",
25
+ "name": "_firstEpochStartTs",
26
+ "type": "uint256"
27
+ },
28
+ {
29
+ "internalType": "uint256",
30
+ "name": "_priceEpochDurationSeconds",
31
+ "type": "uint256"
32
+ },
33
+ {
34
+ "internalType": "uint256",
35
+ "name": "_revealEpochDurationSeconds",
36
+ "type": "uint256"
37
+ },
38
+ {
39
+ "internalType": "uint256",
40
+ "name": "_rewardEpochsStartTs",
41
+ "type": "uint256"
42
+ },
43
+ {
44
+ "internalType": "uint256",
45
+ "name": "_rewardEpochDurationSeconds",
46
+ "type": "uint256"
47
+ },
48
+ {
49
+ "internalType": "uint256",
50
+ "name": "_votePowerIntervalFraction",
51
+ "type": "uint256"
52
+ }
53
+ ],
54
+ "stateMutability": "nonpayable",
55
+ "type": "constructor"
56
+ },
57
+ {
58
+ "anonymous": false,
59
+ "inputs": [
60
+ {
61
+ "indexed": false,
62
+ "internalType": "uint256",
63
+ "name": "blockNumber",
64
+ "type": "uint256"
65
+ }
66
+ ],
67
+ "name": "CleanupBlockNumberManagerFailedForBlock",
68
+ "type": "event"
69
+ },
70
+ {
71
+ "anonymous": false,
72
+ "inputs": [],
73
+ "name": "CleanupBlockNumberManagerUnset",
74
+ "type": "event"
75
+ },
76
+ {
77
+ "anonymous": false,
78
+ "inputs": [
79
+ {
80
+ "indexed": false,
81
+ "internalType": "uint256",
82
+ "name": "_rewardEpoch",
83
+ "type": "uint256"
84
+ }
85
+ ],
86
+ "name": "ClosingExpiredRewardEpochFailed",
87
+ "type": "event"
88
+ },
89
+ {
90
+ "anonymous": false,
91
+ "inputs": [
92
+ {
93
+ "indexed": false,
94
+ "internalType": "address",
95
+ "name": "theContract",
96
+ "type": "address"
97
+ },
98
+ {
99
+ "indexed": false,
100
+ "internalType": "uint256",
101
+ "name": "atBlock",
102
+ "type": "uint256"
103
+ },
104
+ {
105
+ "indexed": false,
106
+ "internalType": "string",
107
+ "name": "theMessage",
108
+ "type": "string"
109
+ }
110
+ ],
111
+ "name": "ContractRevertError",
112
+ "type": "event"
113
+ },
114
+ {
115
+ "anonymous": false,
116
+ "inputs": [
117
+ {
118
+ "indexed": false,
119
+ "internalType": "address",
120
+ "name": "ftso",
121
+ "type": "address"
122
+ },
123
+ {
124
+ "indexed": false,
125
+ "internalType": "uint256",
126
+ "name": "epochId",
127
+ "type": "uint256"
128
+ }
129
+ ],
130
+ "name": "DistributingRewardsFailed",
131
+ "type": "event"
132
+ },
133
+ {
134
+ "anonymous": false,
135
+ "inputs": [
136
+ {
137
+ "indexed": false,
138
+ "internalType": "bool",
139
+ "name": "fallbackMode",
140
+ "type": "bool"
141
+ }
142
+ ],
143
+ "name": "FallbackMode",
144
+ "type": "event"
145
+ },
146
+ {
147
+ "anonymous": false,
148
+ "inputs": [
149
+ {
150
+ "indexed": false,
151
+ "internalType": "contract IIFtso",
152
+ "name": "ftso",
153
+ "type": "address"
154
+ },
155
+ {
156
+ "indexed": false,
157
+ "internalType": "uint256",
158
+ "name": "epochId",
159
+ "type": "uint256"
160
+ },
161
+ {
162
+ "indexed": false,
163
+ "internalType": "enum IFtso.PriceFinalizationType",
164
+ "name": "failingType",
165
+ "type": "uint8"
166
+ }
167
+ ],
168
+ "name": "FinalizingPriceEpochFailed",
169
+ "type": "event"
170
+ },
171
+ {
172
+ "anonymous": false,
173
+ "inputs": [
174
+ {
175
+ "indexed": false,
176
+ "internalType": "contract IIFtso",
177
+ "name": "ftso",
178
+ "type": "address"
179
+ },
180
+ {
181
+ "indexed": false,
182
+ "internalType": "bool",
183
+ "name": "add",
184
+ "type": "bool"
185
+ }
186
+ ],
187
+ "name": "FtsoAdded",
188
+ "type": "event"
189
+ },
190
+ {
191
+ "anonymous": false,
192
+ "inputs": [
193
+ {
194
+ "indexed": false,
195
+ "internalType": "contract IIFtso",
196
+ "name": "ftso",
197
+ "type": "address"
198
+ },
199
+ {
200
+ "indexed": false,
201
+ "internalType": "bool",
202
+ "name": "fallbackMode",
203
+ "type": "bool"
204
+ }
205
+ ],
206
+ "name": "FtsoFallbackMode",
207
+ "type": "event"
208
+ },
209
+ {
210
+ "anonymous": false,
211
+ "inputs": [
212
+ {
213
+ "indexed": false,
214
+ "internalType": "address",
215
+ "name": "proposedGovernance",
216
+ "type": "address"
217
+ }
218
+ ],
219
+ "name": "GovernanceProposed",
220
+ "type": "event"
221
+ },
222
+ {
223
+ "anonymous": false,
224
+ "inputs": [
225
+ {
226
+ "indexed": false,
227
+ "internalType": "address",
228
+ "name": "oldGovernance",
229
+ "type": "address"
230
+ },
231
+ {
232
+ "indexed": false,
233
+ "internalType": "address",
234
+ "name": "newGoveranance",
235
+ "type": "address"
236
+ }
237
+ ],
238
+ "name": "GovernanceUpdated",
239
+ "type": "event"
240
+ },
241
+ {
242
+ "anonymous": false,
243
+ "inputs": [
244
+ {
245
+ "indexed": false,
246
+ "internalType": "contract IIFtso",
247
+ "name": "ftso",
248
+ "type": "address"
249
+ },
250
+ {
251
+ "indexed": false,
252
+ "internalType": "uint256",
253
+ "name": "epochId",
254
+ "type": "uint256"
255
+ }
256
+ ],
257
+ "name": "InitializingCurrentEpochStateForRevealFailed",
258
+ "type": "event"
259
+ },
260
+ {
261
+ "anonymous": false,
262
+ "inputs": [
263
+ {
264
+ "indexed": false,
265
+ "internalType": "address",
266
+ "name": "chosenFtso",
267
+ "type": "address"
268
+ },
269
+ {
270
+ "indexed": false,
271
+ "internalType": "uint256",
272
+ "name": "rewardEpochId",
273
+ "type": "uint256"
274
+ }
275
+ ],
276
+ "name": "PriceEpochFinalized",
277
+ "type": "event"
278
+ },
279
+ {
280
+ "anonymous": false,
281
+ "inputs": [
282
+ {
283
+ "indexed": false,
284
+ "internalType": "uint256",
285
+ "name": "votepowerBlock",
286
+ "type": "uint256"
287
+ },
288
+ {
289
+ "indexed": false,
290
+ "internalType": "uint256",
291
+ "name": "startBlock",
292
+ "type": "uint256"
293
+ }
294
+ ],
295
+ "name": "RewardEpochFinalized",
296
+ "type": "event"
297
+ },
298
+ {
299
+ "inputs": [],
300
+ "name": "MAX_TRUSTED_ADDRESSES_LENGTH",
301
+ "outputs": [
302
+ {
303
+ "internalType": "uint256",
304
+ "name": "",
305
+ "type": "uint256"
306
+ }
307
+ ],
308
+ "stateMutability": "view",
309
+ "type": "function"
310
+ },
311
+ {
312
+ "inputs": [],
313
+ "name": "activate",
314
+ "outputs": [],
315
+ "stateMutability": "nonpayable",
316
+ "type": "function"
317
+ },
318
+ {
319
+ "inputs": [],
320
+ "name": "active",
321
+ "outputs": [
322
+ {
323
+ "internalType": "bool",
324
+ "name": "",
325
+ "type": "bool"
326
+ }
327
+ ],
328
+ "stateMutability": "view",
329
+ "type": "function"
330
+ },
331
+ {
332
+ "inputs": [
333
+ {
334
+ "internalType": "contract IIFtso",
335
+ "name": "_ftso",
336
+ "type": "address"
337
+ }
338
+ ],
339
+ "name": "addFtso",
340
+ "outputs": [],
341
+ "stateMutability": "nonpayable",
342
+ "type": "function"
343
+ },
344
+ {
345
+ "inputs": [
346
+ {
347
+ "internalType": "address",
348
+ "name": "revertedContract",
349
+ "type": "address"
350
+ },
351
+ {
352
+ "internalType": "string",
353
+ "name": "message",
354
+ "type": "string"
355
+ }
356
+ ],
357
+ "name": "addRevertError",
358
+ "outputs": [],
359
+ "stateMutability": "nonpayable",
360
+ "type": "function"
361
+ },
362
+ {
363
+ "inputs": [],
364
+ "name": "claimGovernance",
365
+ "outputs": [],
366
+ "stateMutability": "nonpayable",
367
+ "type": "function"
368
+ },
369
+ {
370
+ "inputs": [],
371
+ "name": "cleanupBlockNumberManager",
372
+ "outputs": [
373
+ {
374
+ "internalType": "contract CleanupBlockNumberManager",
375
+ "name": "",
376
+ "type": "address"
377
+ }
378
+ ],
379
+ "stateMutability": "view",
380
+ "type": "function"
381
+ },
382
+ {
383
+ "inputs": [],
384
+ "name": "daemonize",
385
+ "outputs": [
386
+ {
387
+ "internalType": "bool",
388
+ "name": "",
389
+ "type": "bool"
390
+ }
391
+ ],
392
+ "stateMutability": "nonpayable",
393
+ "type": "function"
394
+ },
395
+ {
396
+ "inputs": [],
397
+ "name": "errorData",
398
+ "outputs": [
399
+ {
400
+ "internalType": "uint192",
401
+ "name": "totalRevertedErrors",
402
+ "type": "uint192"
403
+ },
404
+ {
405
+ "internalType": "uint64",
406
+ "name": "lastErrorTypeIndex",
407
+ "type": "uint64"
408
+ }
409
+ ],
410
+ "stateMutability": "view",
411
+ "type": "function"
412
+ },
413
+ {
414
+ "inputs": [],
415
+ "name": "flareDaemon",
416
+ "outputs": [
417
+ {
418
+ "internalType": "contract FlareDaemon",
419
+ "name": "",
420
+ "type": "address"
421
+ }
422
+ ],
423
+ "stateMutability": "view",
424
+ "type": "function"
425
+ },
426
+ {
427
+ "inputs": [],
428
+ "name": "ftsoRegistry",
429
+ "outputs": [
430
+ {
431
+ "internalType": "contract IIFtsoRegistry",
432
+ "name": "",
433
+ "type": "address"
434
+ }
435
+ ],
436
+ "stateMutability": "view",
437
+ "type": "function"
438
+ },
439
+ {
440
+ "inputs": [],
441
+ "name": "getCurrentPriceEpochData",
442
+ "outputs": [
443
+ {
444
+ "internalType": "uint256",
445
+ "name": "priceEpochId",
446
+ "type": "uint256"
447
+ },
448
+ {
449
+ "internalType": "uint256",
450
+ "name": "priceEpochStartTimestamp",
451
+ "type": "uint256"
452
+ },
453
+ {
454
+ "internalType": "uint256",
455
+ "name": "priceEpochEndTimestamp",
456
+ "type": "uint256"
457
+ },
458
+ {
459
+ "internalType": "uint256",
460
+ "name": "priceEpochRevealEndTimestamp",
461
+ "type": "uint256"
462
+ },
463
+ {
464
+ "internalType": "uint256",
465
+ "name": "currentTimestamp",
466
+ "type": "uint256"
467
+ }
468
+ ],
469
+ "stateMutability": "view",
470
+ "type": "function"
471
+ },
472
+ {
473
+ "inputs": [],
474
+ "name": "getCurrentRewardEpoch",
475
+ "outputs": [
476
+ {
477
+ "internalType": "uint256",
478
+ "name": "",
479
+ "type": "uint256"
480
+ }
481
+ ],
482
+ "stateMutability": "view",
483
+ "type": "function"
484
+ },
485
+ {
486
+ "inputs": [],
487
+ "name": "getFallbackMode",
488
+ "outputs": [
489
+ {
490
+ "internalType": "bool",
491
+ "name": "_fallbackMode",
492
+ "type": "bool"
493
+ },
494
+ {
495
+ "internalType": "contract IIFtso[]",
496
+ "name": "_ftsos",
497
+ "type": "address[]"
498
+ },
499
+ {
500
+ "internalType": "bool[]",
501
+ "name": "_ftsoInFallbackMode",
502
+ "type": "bool[]"
503
+ }
504
+ ],
505
+ "stateMutability": "view",
506
+ "type": "function"
507
+ },
508
+ {
509
+ "inputs": [],
510
+ "name": "getFtsos",
511
+ "outputs": [
512
+ {
513
+ "internalType": "contract IIFtso[]",
514
+ "name": "_ftsos",
515
+ "type": "address[]"
516
+ }
517
+ ],
518
+ "stateMutability": "view",
519
+ "type": "function"
520
+ },
521
+ {
522
+ "inputs": [],
523
+ "name": "getPriceEpochConfiguration",
524
+ "outputs": [
525
+ {
526
+ "internalType": "uint256",
527
+ "name": "_firstPriceEpochStartTs",
528
+ "type": "uint256"
529
+ },
530
+ {
531
+ "internalType": "uint256",
532
+ "name": "_priceEpochDurationSeconds",
533
+ "type": "uint256"
534
+ },
535
+ {
536
+ "internalType": "uint256",
537
+ "name": "_revealEpochDurationSeconds",
538
+ "type": "uint256"
539
+ }
540
+ ],
541
+ "stateMutability": "view",
542
+ "type": "function"
543
+ },
544
+ {
545
+ "inputs": [],
546
+ "name": "getPriceSubmitter",
547
+ "outputs": [
548
+ {
549
+ "internalType": "contract IPriceSubmitter",
550
+ "name": "",
551
+ "type": "address"
552
+ }
553
+ ],
554
+ "stateMutability": "view",
555
+ "type": "function"
556
+ },
557
+ {
558
+ "inputs": [
559
+ {
560
+ "internalType": "uint256",
561
+ "name": "_rewardEpoch",
562
+ "type": "uint256"
563
+ }
564
+ ],
565
+ "name": "getRewardEpochVotePowerBlock",
566
+ "outputs": [
567
+ {
568
+ "internalType": "uint256",
569
+ "name": "",
570
+ "type": "uint256"
571
+ }
572
+ ],
573
+ "stateMutability": "view",
574
+ "type": "function"
575
+ },
576
+ {
577
+ "inputs": [],
578
+ "name": "getVotePowerIntervalFraction",
579
+ "outputs": [
580
+ {
581
+ "internalType": "uint256",
582
+ "name": "",
583
+ "type": "uint256"
584
+ }
585
+ ],
586
+ "stateMutability": "view",
587
+ "type": "function"
588
+ },
589
+ {
590
+ "inputs": [],
591
+ "name": "governance",
592
+ "outputs": [
593
+ {
594
+ "internalType": "address",
595
+ "name": "",
596
+ "type": "address"
597
+ }
598
+ ],
599
+ "stateMutability": "view",
600
+ "type": "function"
601
+ },
602
+ {
603
+ "inputs": [
604
+ {
605
+ "internalType": "address",
606
+ "name": "_governance",
607
+ "type": "address"
608
+ }
609
+ ],
610
+ "name": "initialise",
611
+ "outputs": [],
612
+ "stateMutability": "nonpayable",
613
+ "type": "function"
614
+ },
615
+ {
616
+ "inputs": [],
617
+ "name": "lastRewardedFtsoAddress",
618
+ "outputs": [
619
+ {
620
+ "internalType": "address",
621
+ "name": "",
622
+ "type": "address"
623
+ }
624
+ ],
625
+ "stateMutability": "view",
626
+ "type": "function"
627
+ },
628
+ {
629
+ "inputs": [],
630
+ "name": "priceSubmitter",
631
+ "outputs": [
632
+ {
633
+ "internalType": "contract IIPriceSubmitter",
634
+ "name": "",
635
+ "type": "address"
636
+ }
637
+ ],
638
+ "stateMutability": "view",
639
+ "type": "function"
640
+ },
641
+ {
642
+ "inputs": [
643
+ {
644
+ "internalType": "address",
645
+ "name": "_governance",
646
+ "type": "address"
647
+ }
648
+ ],
649
+ "name": "proposeGovernance",
650
+ "outputs": [],
651
+ "stateMutability": "nonpayable",
652
+ "type": "function"
653
+ },
654
+ {
655
+ "inputs": [],
656
+ "name": "proposedGovernance",
657
+ "outputs": [
658
+ {
659
+ "internalType": "address",
660
+ "name": "",
661
+ "type": "address"
662
+ }
663
+ ],
664
+ "stateMutability": "view",
665
+ "type": "function"
666
+ },
667
+ {
668
+ "inputs": [
669
+ {
670
+ "internalType": "contract IIFtso",
671
+ "name": "_ftso",
672
+ "type": "address"
673
+ }
674
+ ],
675
+ "name": "removeFtso",
676
+ "outputs": [],
677
+ "stateMutability": "nonpayable",
678
+ "type": "function"
679
+ },
680
+ {
681
+ "inputs": [
682
+ {
683
+ "internalType": "contract IIFtso",
684
+ "name": "_ftsoToRemove",
685
+ "type": "address"
686
+ },
687
+ {
688
+ "internalType": "contract IIFtso",
689
+ "name": "_ftsoToAdd",
690
+ "type": "address"
691
+ },
692
+ {
693
+ "internalType": "bool",
694
+ "name": "_copyCurrentPrice",
695
+ "type": "bool"
696
+ },
697
+ {
698
+ "internalType": "bool",
699
+ "name": "_copyAssetOrAssetFtsos",
700
+ "type": "bool"
701
+ }
702
+ ],
703
+ "name": "replaceFtso",
704
+ "outputs": [],
705
+ "stateMutability": "nonpayable",
706
+ "type": "function"
707
+ },
708
+ {
709
+ "inputs": [],
710
+ "name": "rewardEpochDurationSeconds",
711
+ "outputs": [
712
+ {
713
+ "internalType": "uint256",
714
+ "name": "",
715
+ "type": "uint256"
716
+ }
717
+ ],
718
+ "stateMutability": "view",
719
+ "type": "function"
720
+ },
721
+ {
722
+ "inputs": [
723
+ {
724
+ "internalType": "uint256",
725
+ "name": "",
726
+ "type": "uint256"
727
+ }
728
+ ],
729
+ "name": "rewardEpochs",
730
+ "outputs": [
731
+ {
732
+ "internalType": "uint256",
733
+ "name": "votepowerBlock",
734
+ "type": "uint256"
735
+ },
736
+ {
737
+ "internalType": "uint256",
738
+ "name": "startBlock",
739
+ "type": "uint256"
740
+ },
741
+ {
742
+ "internalType": "uint256",
743
+ "name": "startTimestamp",
744
+ "type": "uint256"
745
+ }
746
+ ],
747
+ "stateMutability": "view",
748
+ "type": "function"
749
+ },
750
+ {
751
+ "inputs": [],
752
+ "name": "rewardEpochsStartTs",
753
+ "outputs": [
754
+ {
755
+ "internalType": "uint256",
756
+ "name": "",
757
+ "type": "uint256"
758
+ }
759
+ ],
760
+ "stateMutability": "view",
761
+ "type": "function"
762
+ },
763
+ {
764
+ "inputs": [],
765
+ "name": "rewardManager",
766
+ "outputs": [
767
+ {
768
+ "internalType": "contract IIFtsoRewardManager",
769
+ "name": "",
770
+ "type": "address"
771
+ }
772
+ ],
773
+ "stateMutability": "view",
774
+ "type": "function"
775
+ },
776
+ {
777
+ "inputs": [
778
+ {
779
+ "internalType": "contract IIFtsoRewardManager",
780
+ "name": "_rewardManager",
781
+ "type": "address"
782
+ },
783
+ {
784
+ "internalType": "contract IIFtsoRegistry",
785
+ "name": "_ftsoRegistry",
786
+ "type": "address"
787
+ },
788
+ {
789
+ "internalType": "contract IIVoterWhitelister",
790
+ "name": "_voterWhitelister",
791
+ "type": "address"
792
+ },
793
+ {
794
+ "internalType": "contract IISupply",
795
+ "name": "_supply",
796
+ "type": "address"
797
+ },
798
+ {
799
+ "internalType": "contract CleanupBlockNumberManager",
800
+ "name": "_cleanupBlockNumberManager",
801
+ "type": "address"
802
+ }
803
+ ],
804
+ "name": "setContractAddresses",
805
+ "outputs": [],
806
+ "stateMutability": "nonpayable",
807
+ "type": "function"
808
+ },
809
+ {
810
+ "inputs": [
811
+ {
812
+ "internalType": "bool",
813
+ "name": "_fallbackMode",
814
+ "type": "bool"
815
+ }
816
+ ],
817
+ "name": "setFallbackMode",
818
+ "outputs": [],
819
+ "stateMutability": "nonpayable",
820
+ "type": "function"
821
+ },
822
+ {
823
+ "inputs": [
824
+ {
825
+ "internalType": "contract IIFtso",
826
+ "name": "_ftso",
827
+ "type": "address"
828
+ },
829
+ {
830
+ "internalType": "contract IIVPToken",
831
+ "name": "_asset",
832
+ "type": "address"
833
+ }
834
+ ],
835
+ "name": "setFtsoAsset",
836
+ "outputs": [],
837
+ "stateMutability": "nonpayable",
838
+ "type": "function"
839
+ },
840
+ {
841
+ "inputs": [
842
+ {
843
+ "internalType": "contract IIFtso",
844
+ "name": "_ftso",
845
+ "type": "address"
846
+ },
847
+ {
848
+ "internalType": "contract IIFtso[]",
849
+ "name": "_assetFtsos",
850
+ "type": "address[]"
851
+ }
852
+ ],
853
+ "name": "setFtsoAssetFtsos",
854
+ "outputs": [],
855
+ "stateMutability": "nonpayable",
856
+ "type": "function"
857
+ },
858
+ {
859
+ "inputs": [
860
+ {
861
+ "internalType": "contract IIFtso",
862
+ "name": "_ftso",
863
+ "type": "address"
864
+ },
865
+ {
866
+ "internalType": "bool",
867
+ "name": "_fallbackMode",
868
+ "type": "bool"
869
+ }
870
+ ],
871
+ "name": "setFtsoFallbackMode",
872
+ "outputs": [],
873
+ "stateMutability": "nonpayable",
874
+ "type": "function"
875
+ },
876
+ {
877
+ "inputs": [
878
+ {
879
+ "internalType": "uint256",
880
+ "name": "_maxVotePowerNatThresholdFraction",
881
+ "type": "uint256"
882
+ },
883
+ {
884
+ "internalType": "uint256",
885
+ "name": "_maxVotePowerAssetThresholdFraction",
886
+ "type": "uint256"
887
+ },
888
+ {
889
+ "internalType": "uint256",
890
+ "name": "_lowAssetUSDThreshold",
891
+ "type": "uint256"
892
+ },
893
+ {
894
+ "internalType": "uint256",
895
+ "name": "_highAssetUSDThreshold",
896
+ "type": "uint256"
897
+ },
898
+ {
899
+ "internalType": "uint256",
900
+ "name": "_highAssetTurnoutThresholdBIPS",
901
+ "type": "uint256"
902
+ },
903
+ {
904
+ "internalType": "uint256",
905
+ "name": "_lowNatTurnoutThresholdBIPS",
906
+ "type": "uint256"
907
+ },
908
+ {
909
+ "internalType": "uint256",
910
+ "name": "_rewardExpiryOffsetSeconds",
911
+ "type": "uint256"
912
+ },
913
+ {
914
+ "internalType": "address[]",
915
+ "name": "_trustedAddresses",
916
+ "type": "address[]"
917
+ }
918
+ ],
919
+ "name": "setGovernanceParameters",
920
+ "outputs": [],
921
+ "stateMutability": "nonpayable",
922
+ "type": "function"
923
+ },
924
+ {
925
+ "inputs": [],
926
+ "name": "settings",
927
+ "outputs": [
928
+ {
929
+ "internalType": "uint256",
930
+ "name": "maxVotePowerNatThresholdFraction",
931
+ "type": "uint256"
932
+ },
933
+ {
934
+ "internalType": "uint256",
935
+ "name": "maxVotePowerAssetThresholdFraction",
936
+ "type": "uint256"
937
+ },
938
+ {
939
+ "internalType": "uint256",
940
+ "name": "lowAssetUSDThreshold",
941
+ "type": "uint256"
942
+ },
943
+ {
944
+ "internalType": "uint256",
945
+ "name": "highAssetUSDThreshold",
946
+ "type": "uint256"
947
+ },
948
+ {
949
+ "internalType": "uint256",
950
+ "name": "highAssetTurnoutThresholdBIPS",
951
+ "type": "uint256"
952
+ },
953
+ {
954
+ "internalType": "uint256",
955
+ "name": "lowNatTurnoutThresholdBIPS",
956
+ "type": "uint256"
957
+ },
958
+ {
959
+ "internalType": "uint256",
960
+ "name": "rewardExpiryOffsetSeconds",
961
+ "type": "uint256"
962
+ },
963
+ {
964
+ "internalType": "bool",
965
+ "name": "changed",
966
+ "type": "bool"
967
+ },
968
+ {
969
+ "internalType": "bool",
970
+ "name": "initialized",
971
+ "type": "bool"
972
+ }
973
+ ],
974
+ "stateMutability": "view",
975
+ "type": "function"
976
+ },
977
+ {
978
+ "inputs": [],
979
+ "name": "showLastRevertedError",
980
+ "outputs": [
981
+ {
982
+ "internalType": "uint256[]",
983
+ "name": "_lastErrorBlock",
984
+ "type": "uint256[]"
985
+ },
986
+ {
987
+ "internalType": "uint256[]",
988
+ "name": "_numErrors",
989
+ "type": "uint256[]"
990
+ },
991
+ {
992
+ "internalType": "string[]",
993
+ "name": "_errorString",
994
+ "type": "string[]"
995
+ },
996
+ {
997
+ "internalType": "address[]",
998
+ "name": "_erroringContract",
999
+ "type": "address[]"
1000
+ },
1001
+ {
1002
+ "internalType": "uint256",
1003
+ "name": "_totalRevertedErrors",
1004
+ "type": "uint256"
1005
+ }
1006
+ ],
1007
+ "stateMutability": "view",
1008
+ "type": "function"
1009
+ },
1010
+ {
1011
+ "inputs": [
1012
+ {
1013
+ "internalType": "uint256",
1014
+ "name": "startIndex",
1015
+ "type": "uint256"
1016
+ },
1017
+ {
1018
+ "internalType": "uint256",
1019
+ "name": "numErrorTypesToShow",
1020
+ "type": "uint256"
1021
+ }
1022
+ ],
1023
+ "name": "showRevertedErrors",
1024
+ "outputs": [
1025
+ {
1026
+ "internalType": "uint256[]",
1027
+ "name": "_lastErrorBlock",
1028
+ "type": "uint256[]"
1029
+ },
1030
+ {
1031
+ "internalType": "uint256[]",
1032
+ "name": "_numErrors",
1033
+ "type": "uint256[]"
1034
+ },
1035
+ {
1036
+ "internalType": "string[]",
1037
+ "name": "_errorString",
1038
+ "type": "string[]"
1039
+ },
1040
+ {
1041
+ "internalType": "address[]",
1042
+ "name": "_erroringContract",
1043
+ "type": "address[]"
1044
+ },
1045
+ {
1046
+ "internalType": "uint256",
1047
+ "name": "_totalRevertedErrors",
1048
+ "type": "uint256"
1049
+ }
1050
+ ],
1051
+ "stateMutability": "view",
1052
+ "type": "function"
1053
+ },
1054
+ {
1055
+ "inputs": [],
1056
+ "name": "supply",
1057
+ "outputs": [
1058
+ {
1059
+ "internalType": "contract IISupply",
1060
+ "name": "",
1061
+ "type": "address"
1062
+ }
1063
+ ],
1064
+ "stateMutability": "view",
1065
+ "type": "function"
1066
+ },
1067
+ {
1068
+ "inputs": [],
1069
+ "name": "switchToFallbackMode",
1070
+ "outputs": [
1071
+ {
1072
+ "internalType": "bool",
1073
+ "name": "",
1074
+ "type": "bool"
1075
+ }
1076
+ ],
1077
+ "stateMutability": "nonpayable",
1078
+ "type": "function"
1079
+ },
1080
+ {
1081
+ "inputs": [
1082
+ {
1083
+ "internalType": "address",
1084
+ "name": "_governance",
1085
+ "type": "address"
1086
+ }
1087
+ ],
1088
+ "name": "transferGovernance",
1089
+ "outputs": [],
1090
+ "stateMutability": "nonpayable",
1091
+ "type": "function"
1092
+ },
1093
+ {
1094
+ "inputs": [],
1095
+ "name": "voterWhitelister",
1096
+ "outputs": [
1097
+ {
1098
+ "internalType": "contract IIVoterWhitelister",
1099
+ "name": "",
1100
+ "type": "address"
1101
+ }
1102
+ ],
1103
+ "stateMutability": "view",
1104
+ "type": "function"
1105
+ }
1106
+ ],
1107
+ "bytecode": "0x6101806040523480156200001257600080fd5b5060405162005a4f38038062005a4f833981016040819052620000359162000519565b888881806001600160a01b038116156200005457620000548162000435565b506001600160a01b038116620000a4576040805162461bcd60e51b815260206004820152601060248201526f5f676f7665726e616e6365207a65726f60801b604482015290519081900360640190fd5b506001600160a01b038116620000f5576040805162461bcd60e51b8152602060048201526011602482015270666c617265206461656d6f6e207a65726f60781b604482015290519081900360640190fd5b6001600160601b0319606091821b166080526040805191820190526025808252428911159250620059df6020830139906200014e5760405162461bcd60e51b8152600401620001459190620005a7565b60405180910390fd5b5060408051808201909152600e81526d05265776172642065706f636820360941b602082015282620001955760405162461bcd60e51b8152600401620001459190620005a7565b5060408051808201909152600d81526c050726963652065706f6368203609c1b602082015285620001db5760405162461bcd60e51b8152600401620001459190620005a7565b5060408051808201909152601481527f52657665616c2070726963652065706f63682030000000000000000000000000602082015284620002315760405162461bcd60e51b8152600401620001459190620005a7565b5060408051808201909152601e81527f566f746520706f77657220696e74657276616c206672616374696f6e20300000602082015281620002875760405162461bcd60e51b8152600401620001459190620005a7565b5060408051808201909152601b81527f52657665616c2070726963652065706f636820746f6f206c6f6e6700000000006020820152858510620002df5760405162461bcd60e51b8152600401620001459190620005a7565b508284870111156040518060400160405280601b81526020017f5265776172642065706f636820737461727420746f6f20736f6f6e0000000000815250906200033d5760405162461bcd60e51b8152600401620001459190620005a7565b50848685850303816200034c57fe5b0660001460405180606001604052806024815260200162005a2b60249139906200038b5760405162461bcd60e51b8152600401620001459190620005a7565b508482816200039657fe5b0660001460405180606001604052806027815260200162005a046027913990620003d55760405162461bcd60e51b8152600401620001459190620005a7565b5061010082905261012083905261014081905282820160135560a086905260c085905260e0849052601283905584868403816200040e57fe5b04601155505050505060609190911b6001600160601b031916610160525062000616915050565b600154600160a01b900460ff161562000495576040805162461bcd60e51b815260206004820152601460248201527f696e697469616c6973656420213d2066616c7365000000000000000000000000604482015290519081900360640190fd5b6001805460ff60a01b1916600160a01b179055600054604080516001600160a01b039283168152918316602083015280517f434a2db650703b36c824e745330d6397cdaa9ee2cc891a4938ae853e1c50b68d9281900390910190a1600080546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b60008060008060008060008060006101208a8c03121562000538578485fd5b89516200054581620005fd565b60208b01519099506200055881620005fd565b60408b01519098506200056b81620005fd565b8097505060608a0151955060808a0151945060a08a0151935060c08a0151925060e08a015191506101008a015190509295985092959850929598565b6000602080835283518082850152825b81811015620005d557858101830151858201604001528201620005b7565b81811115620005e75783604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146200061357600080fd5b50565b60805160601c60a05160c05160e0516101005161012051610140516101605160601c6152fc620006e360003980610545528061241952806138ca5250806108b5528061337652508061123a525080610e155280612b3f528061356052508061061b528061110f52806127ea52806143185250806105fa52806110de52806127c85280612fc05280613dd65280613ffb52806142f55250806105d952806110bd52806127a65280613df75280613fd652806142d05250806109ab52806112165280611aec52506152fc6000f3fe608060405234801561001057600080fd5b50600436106102745760003560e01c806393a7902511610151578063ce69f833116100c3578063e7a0d01e11610087578063e7a0d01e146104cf578063e7c830d4146104e2578063e847ae1e146104ea578063f2edab5a146104fd578063f937d6ad14610510578063ff882fbb1461051857610274565b8063ce69f8331461046c578063d38bfff414610481578063e06174e414610494578063e22fdece146104b1578063e371aef0146104b957610274565b8063a795f40911610115578063a795f40914610405578063a93a6f4214610418578063af946af71461042b578063c0ffe9081461043e578063c2b0d47b14610451578063c373a08e1461045957610274565b806393a79025146103b65780639d6a890f146103cf578063a1077532146103e2578063a578f55b146103ea578063a670ff87146103f257610274565b80634eac870f116101ea57806369b11ac6116101ae57806369b11ac6146103655780636b65cc341461036d5780636d0e8c34146103805780636ea0aa311461038857806385f3c9c91461039b5780639131205b146103a357610274565b80634eac870f146103305780635aa6e675146103385780635d36b1901461034057806360f2c5b21461034857806360f7ac971461035d57610274565b8063144e15911161023c578063144e1591146102c65780632663f1b4146102dd5780632b3c41a4146102f05780632fd8eb7d1461030957806338b5f869146103115780634b48dd5e1461031957610274565b806302fb0c5e14610279578063047fc9aa146102975780630e063d7d146102ac5780630f15f4c0146102b45780630f4ef8a6146102be575b600080fd5b61028161052b565b60405161028e9190614e8e565b60405180910390f35b61029f610534565b60405161028e9190614cde565b61029f610543565b6102bc610568565b005b61029f6105c8565b6102ce6105d7565b60405161028e93929190614f8f565b6102bc6102eb3660046145d4565b61063f565b6102f861069e565b60405161028e959493929190614def565b61029f6106d9565b61029f6106e8565b6103216106f7565b60405161028e93929190614e99565b61029f6107d3565b61029f6107e2565b6102bc6107f1565b6103506108b3565b60405161028e9190614f78565b61029f6108d7565b6103506108e6565b6102bc61037b366004614a2b565b6108eb565b61028161099e565b6102f8610396366004614ae1565b610aaf565b610350610e13565b6102bc6103b1366004614b25565b610e37565b6103be6110a7565b60405161028e959493929190614fa5565b6102bc6103dd3660046145d4565b61113a565b61029f611214565b610350611238565b6102bc6104003660046145d4565b61125c565b6102ce610413366004614ab1565b611486565b6102bc6104263660046148f3565b6114b9565b6102bc6104393660046149a0565b611649565b6102bc61044c3660046145f7565b61175a565b61029f611933565b6102bc6104673660046145d4565b611942565b6104746119e7565b60405161028e9190614ddc565b6102bc61048f3660046145d4565b6119f6565b61049c611ab8565b60405161028e9998979695949392919061500c565b610281611adf565b6104c1611bbd565b60405161028e929190614f56565b6102bc6104dd3660046149d4565b611bde565b6103506122db565b6102bc6104f8366004614883565b61233e565b61035061050b366004614ab1565b6123ee565b61029f612417565b6102bc610526366004614869565b61243b565b60055460ff1681565b601a546001600160a01b031681565b7f00000000000000000000000000000000000000000000000000000000000000005b90565b6000546001600160a01b031633146105b9576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b6005805460ff19166001179055565b6017546001600160a01b031681565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000909192565b6000546001600160a01b03163314610690576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b61069b8160016124de565b50565b6004546060908190819081906000906106c890600160c01b90046001600160401b03166001610aaf565b945094509450945094509091929394565b6007546001600160a01b031681565b6018546001600160a01b031681565b601b54600160a81b900460ff1660608061070f612abc565b8051909250806001600160401b038111801561072a57600080fd5b50604051908082528060200260200182016040528015610754578160200160208202803683370190505b50915060005b818110156107cc57601c600085838151811061077257fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060009054906101000a900460ff168382815181106107b457fe5b9115156020928302919091019091015260010161075a565b5050909192565b601b546001600160a01b031681565b6000546001600160a01b031681565b6001546001600160a01b03163314610840576040805162461bcd60e51b815260206004820152600d60248201526c1b9bdd0818db185a5b585a5b9d609a1b604482015290519081900360640190fd5b600054600154604080516001600160a01b03938416815292909116602083015280517f434a2db650703b36c824e745330d6397cdaa9ee2cc891a4938ae853e1c50b68d9281900390910190a160018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b7f000000000000000000000000000000000000000000000000000000000000000090565b6001546001600160a01b031681565b600581565b6000546001600160a01b0316331461093c576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b60405163d0d552dd60e01b81526001600160a01b0383169063d0d552dd90610968908490600401614cde565b600060405180830381600087803b15801561098257600080fd5b505af1158015610996573d6000803e3d6000fd5b505050505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a11576040805162461bcd60e51b815260206004820152601160248201527037b7363c90333630b932903230b2b6b7b760791b604482015290519081900360640190fd5b60055460ff16610a2357506000610565565b600654610a3757610a32612b3d565b610aa9565b601b54600160a01b900460ff168015610a5257504260125411155b15610a5f57610a32612cb2565b601b54600160a01b900460ff16158015610a7b57504260135411155b15610a9857610a88613293565b610a90613588565b610a32613717565b4260125411610aa957610aa96138a8565b50600190565b606080606080600060038054905087106040518060400160405280601081526020016f0e6e8c2e4e840d2dcc8caf040d0d2ced60831b81525090610b0f5760405162461bcd60e51b8152600401610b069190614f43565b60405180910390fd5b506003546000908888011115610b2a57600354889003610b2c565b865b9050806001600160401b0381118015610b4457600080fd5b50604051908082528060200260200182016040528015610b6e578160200160208202803683370190505b509550806001600160401b0381118015610b8757600080fd5b50604051908082528060200260200182016040528015610bb1578160200160208202803683370190505b509450806001600160401b0381118015610bca57600080fd5b50604051908082528060200260200182016040528015610bfe57816020015b6060815260200190600190039081610be95790505b509350806001600160401b0381118015610c1757600080fd5b50604051908082528060200260200182016040528015610c41578160200160208202803683370190505b50925060005b81811015610df75760006003828b0181548110610c6057fe5b6000918252602080832090910154808352600290915260409091205489519192506001600160c01b031690899084908110610c9757fe5b6020026020010181815250506002600082815260200190815260200160002060000160189054906101000a90046001600160401b03166001600160401b0316878381518110610ce257fe5b602090810291909101810191909152600082815260028083526040918290208101805483516001821615610100026000190190911692909204601f81018590048502830185019093528282529092909190830182828015610d845780601f10610d5957610100808354040283529160200191610d84565b820191906000526020600020905b815481529060010190602001808311610d6757829003601f168201915b5050505050868381518110610d9557fe5b60200260200101819052506002600082815260200190815260200160002060010160009054906101000a90046001600160a01b0316858381518110610dd657fe5b6001600160a01b039092166020928302919091019091015250600101610c47565b50506004549497939650919450926001600160c01b0316919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000546001600160a01b03163314610e88576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b60408051808201909152601381527211dbdd8b881c185c985b5cc81a5b9d985b1a59606a1b602082015288610ed05760405162461bcd60e51b8152600401610b069190614f43565b5060408051808201909152601381527211dbdd8b881c185c985b5cc81a5b9d985b1a59606a1b602082015287610f195760405162461bcd60e51b8152600401610b069190614f43565b5060408051808201909152601381527211dbdd8b881c185c985b5cc81a5b9d985b1a59606a1b602082015286861015610f655760405162461bcd60e51b8152600401610b069190614f43565b5060408051808201909152601381527211dbdd8b881c185c985b5cc81a5b9d985b1a59606a1b6020820152612710851115610fb35760405162461bcd60e51b8152600401610b069190614f43565b5060408051808201909152601381527211dbdd8b881c185c985b5cc81a5b9d985b1a59606a1b60208201526127108411156110015760405162461bcd60e51b8152600401610b069190614f43565b5060408051808201909152601581527414995dd85c9908195e1c1a5c9e481a5b9d985b1a59605a1b60208201528261104c5760405162461bcd60e51b8152600401610b069190614f43565b5060058151111560405180606001604052806025815260200161519c602591399061108a5760405162461bcd60e51b8152600401610b069190614f43565b5061109d60088989898989898989613bd9565b5050505050505050565b6000806000806000806110b8613dd2565b9550507f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000808702820195506001870102019250507f000000000000000000000000000000000000000000000000000000000000000082019050429091929394565b600154600160a01b900460ff1615611190576040805162461bcd60e51b8152602060048201526014602482015273696e697469616c6973656420213d2066616c736560601b604482015290519081900360640190fd5b6001805460ff60a01b1916600160a01b179055600054604080516001600160a01b039283168152918316602083015280517f434a2db650703b36c824e745330d6397cdaa9ee2cc891a4938ae853e1c50b68d9281900390910190a1600080546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000546001600160a01b031633146112ad576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b6000601860009054906101000a90046001600160a01b03166001600160a01b031663e848da30836001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b15801561130c57600080fd5b505afa158015611320573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113489190810190614a7f565b6040518263ffffffff1660e01b81526004016113649190614f43565b60206040518083038186803b15801561137c57600080fd5b505afa158015611390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113b49190614ac9565b60195460405163d873617160e01b81529192506001600160a01b03169063d8736171906113e5908490600401614f78565b600060405180830381600087803b1580156113ff57600080fd5b505af1158015611413573d6000803e3d6000fd5b505060185460405163a670ff8760e01b81526001600160a01b03909116925063a670ff879150611447908590600401614cde565b600060405180830381600087803b15801561146157600080fd5b505af1158015611475573d6000803e3d6000fd5b5050505061148282613e25565b5050565b6006818154811061149657600080fd5b600091825260209091206003909102018054600182015460029092015490925083565b6000546001600160a01b0316331461150a576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b80516040805180820190915260168152754173736574206674736f73206c69737420656d70747960501b6020820152816115575760405162461bcd60e51b8152600401610b069190614f43565b5060005b818110156115dc5782818151811061156f57fe5b60200260200101516001600160a01b0316846001600160a01b031614156115d45760408051808201825260168152756674736f20657175616c73206173736574206674736f60501b6020820152905162461bcd60e51b8152610b069190600401614f43565b60010161155b565b506115e682613efc565b60405163098fef7160e11b81526001600160a01b0384169063131fdee290611612908590600401614ddc565b600060405180830381600087803b15801561162c57600080fd5b505af1158015611640573d6000803e3d6000fd5b50505050505050565b6000546001600160a01b0316331461169a576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b6001600160a01b0382166000908152601560209081526040918290205482518084019093526009835268139bdd08199bdd5b9960ba1b9183019190915260ff166116f75760405162461bcd60e51b8152600401610b069190614f43565b506001600160a01b0382166000908152601c602052604090819020805460ff1916831515179055517f24462ede4d3e8e5a69fecec6290d42a311016ca752216d9a3d681e284791b7ac9061174e9084908490614ee9565b60405180910390a15050565b6000828260405160200161176f929190614d0b565b60408051601f198184030181528282528051602091820120600081815260029092529190208054436001600160c01b038181166001600160401b03600160c01b80860482166001019091160291909316176001600160c01b031916919091179091559092507f1a601cf5e0efbd558b2778b7389af04741d1c49bcab104c40daa2da194593617916118039186918690614d2f565b60405180910390a1600480546001600160c01b0319811660016001600160c01b03928316810190921617909155600082815260026020526040902054600160c01b90046001600160401b0316111561185b5750611482565b6003805460018082019092557fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b01829055600082815260026020818152604090922092830180546001600160a01b0319166001600160a01b03881617905584516118cb9390910191850190614417565b50600354600091825260026020526040909120600101805467ffffffffffffffff60a01b1916600160a01b6000199093016001600160401b0390811684029190911791829055600480546001600160c01b03169390920416600160c01b029190911790555050565b6019546001600160a01b031681565b6000546001600160a01b03163314611993576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b600180546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f1f95fb40be3a947982072902a887b521248d1d8931a39eb38f84f4d6fd758b699181900360200190a150565b60606119f1612abc565b905090565b6000546001600160a01b03163314611a47576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b600054604080516001600160a01b039283168152918316602083015280517f434a2db650703b36c824e745330d6397cdaa9ee2cc891a4938ae853e1c50b68d9281900390910190a1600080546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b600854600954600a54600b54600c54600d54600e5460105460ff8082169161010090041689565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611b52576040805162461bcd60e51b815260206004820152601160248201527037b7363c90333630b932903230b2b6b7b760791b604482015290519081900360640190fd5b601b54600160a81b900460ff16611bb757601b805460ff60a81b1916600160a81b1790556040517f217a37a37fc40a97159886f80c3d45986e6fc4330ce6ad7283478b5e5ab705bc90611ba790600190614e8e565b60405180910390a1506001610565565b50600090565b6004546001600160c01b03811690600160c01b90046001600160401b031682565b6000546001600160a01b03163314611c2f576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b826001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b158015611c6857600080fd5b505afa158015611c7c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ca49190810190614a7f565b604051602001611cb49190614f43565b60405160208183030381529060405280519060200120846001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b158015611d0357600080fd5b505afa158015611d17573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611d3f9190810190614a7f565b604051602001611d4f9190614f43565b60405160208183030381529060405280519060200120146040518060400160405280601781526020017f4654534f2073796d626f6c73206d757374206d6174636800000000000000000081525090611dba5760405162461bcd60e51b8152600401610b069190614f43565b506000611dc5612abc565b805190915060005b81811015611e0f57866001600160a01b0316838281518110611deb57fe5b60200260200101516001600160a01b03161415611e0757611e0f565b600101611dcd565b81811415611e4e576040805180820182526009815268139bdd08199bdd5b9960ba1b6020820152905162461bcd60e51b8152610b069190600401614f43565b8415611f2f57600080886001600160a01b031663eb91d37e6040518163ffffffff1660e01b8152600401604080518083038186803b158015611e8f57600080fd5b505afa158015611ea3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ec79190614b02565b60405163306ba25360e01b815291935091506001600160a01b0389169063306ba25390611efa9085908590600401614f81565b600060405180830381600087803b158015611f1457600080fd5b505af1158015611f28573d6000803e3d6000fd5b5050505050505b8315612100576000876001600160a01b0316635c222bad6040518163ffffffff1660e01b815260040160206040518083038186803b158015611f7057600080fd5b505afa158015611f84573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fa89190614a63565b90506001600160a01b0381161561201c5760405163d0d552dd60e01b81526001600160a01b0388169063d0d552dd90611fe5908490600401614cde565b600060405180830381600087803b158015611fff57600080fd5b505af1158015612013573d6000803e3d6000fd5b505050506120fe565b6000886001600160a01b03166318931c356040518163ffffffff1660e01b815260040160006040518083038186803b15801561205757600080fd5b505afa15801561206b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526120939190810190614749565b8051909150156120fc5760405163098fef7160e11b81526001600160a01b0389169063131fdee2906120c9908490600401614ddc565b600060405180830381600087803b1580156120e357600080fd5b505af11580156120f7573d6000803e3d6000fd5b505050505b505b505b61210b8660006124de565b6000612115612abc565b805190915060005b818110156122c657600083828151811061213357fe5b602002602001015190508a6001600160a01b0316816001600160a01b0316141561215d57506122be565b6000816001600160a01b03166318931c356040518163ffffffff1660e01b815260040160006040518083038186803b15801561219857600080fd5b505afa1580156121ac573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526121d49190810190614749565b805190915080156122ba576000805b82811015612252578e6001600160a01b031684828151811061220157fe5b60200260200101516001600160a01b0316141561224a578d84828151811061222557fe5b60200260200101906001600160a01b031690816001600160a01b031681525050600191505b6001016121e3565b5080156122b85760405163098fef7160e11b81526001600160a01b0385169063131fdee290612285908690600401614ddc565b600060405180830381600087803b15801561229f57600080fd5b505af11580156122b3573d6000803e3d6000fd5b505050505b505b5050505b60010161211d565b506122d089613e25565b505050505050505050565b6006546040805180820190915260208082527f5265776172642065706f6368206e6f7420696e697469616c697a6564207965749082015260009190816123345760405162461bcd60e51b8152600401610b069190614f43565b5060001901905090565b6000546001600160a01b0316331461238f576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b601780546001600160a01b03199081166001600160a01b03978816179091556018805482169587169590951790945560198054851693861693909317909255601a80548416918516919091179055601b80549092169216919091179055565b6000600682815481106123fd57fe5b90600052602060002090600302016000015490505b919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000546001600160a01b0316331461248c576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b601b805460ff60a81b1916600160a81b831515021790556040517f217a37a37fc40a97159886f80c3d45986e6fc4330ce6ad7283478b5e5ab705bc906124d3908390614e8e565b60405180910390a150565b60105460408051808201909152601b81527f476f762e20706172616d73206e6f7420696e697469616c697a65640000000000602082015290610100900460ff1661253b5760405162461bcd60e51b8152600401610b069190614f43565b506125b9826001600160a01b03166318931c356040518163ffffffff1660e01b815260040160006040518083038186803b15801561257857600080fd5b505afa15801561258c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526125b49190810190614749565b613efc565b8015612782576000826001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156125fa57600080fd5b505afa15801561260e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526126369190810190614a7f565b6040516020016126469190614f43565b6040516020818303038152906040528051906020012090506000601860009054906101000a90046001600160a01b03166001600160a01b031663ce1c0e4d6040518163ffffffff1660e01b815260040160006040518083038186803b1580156126ae57600080fd5b505afa1580156126c2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526126ea91908101906147e1565b80519091505b801561277e57806001900390508282828151811061270a57fe5b60200260200101516040516020016127229190614f43565b60405160208183030381529060405280519060200120141561277957604080518082018252600d81526c105b1c9958591e481859191959609a1b6020820152905162461bcd60e51b8152610b069190600401614f43565b6126f0565b5050505b604051630bc29bcf60e21b81526001600160a01b03831690632f0a6f3c90612812907f0000000000000000000000000000000000000000000000000000000000000000907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090600401614f8f565b600060405180830381600087803b15801561282c57600080fd5b505af1158015612840573d6000803e3d6000fd5b50506006541591506128d2905057600680546001600160a01b0384169163e536f39691600019810190811061287157fe5b9060005260206000209060030201600001546040518263ffffffff1660e01b815260040161289f9190614f78565b600060405180830381600087803b1580156128b957600080fd5b505af11580156128cd573d6000803e3d6000fd5b505050505b600854600954600a54600b54600c54600d5460405163f7dba1f560e01b81526001600160a01b0389169663f7dba1f596612919969195909491939092600f90600401614fc8565b600060405180830381600087803b15801561293357600080fd5b505af1158015612947573d6000803e3d6000fd5b5050601b546001600160a01b038086166000908152601660209081526040808320805460ff600160a01b90970496909616151560ff19968716179055601590915280822080549094166001179093556018549251630998fc6d60e21b815290945091169150632663f1b4906129c0908690600401614cde565b602060405180830381600087803b1580156129da57600080fd5b505af11580156129ee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a129190614ac9565b90508115612a7d57601954604051630d15c16960e21b81526001600160a01b039091169063345705a490612a4a908490600401614f78565b600060405180830381600087803b158015612a6457600080fd5b505af1158015612a78573d6000803e3d6000fd5b505050505b7fa0985424f2efdcae4b57a7c84bbf0a0b19f93054f21e9eb1cfcd5a59813fe1da836001604051612aaf929190614ee9565b60405180910390a1505050565b60185460408051635200305d60e11b815290516060926001600160a01b03169163a40060ba916004808301926000929190829003018186803b158015612b0157600080fd5b505afa158015612b15573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526119f19190810190614749565b7f0000000000000000000000000000000000000000000000000000000000000000601354034210612cb0576000612b72612abc565b8051604080516060810182524360001981018252602082019081524292820192835260068054600181018255600091825283517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f60039092029182015591517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4083015592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d41909101559293509091905b82811015612cab57838181518110612c3757fe5b60200260200101516001600160a01b031663e536f39683600001516040518263ffffffff1660e01b8152600401612c6e9190614f78565b600060405180830381600087803b158015612c8857600080fd5b505af1158015612c9c573d6000803e3d6000fd5b50505050806001019050612c23565b505050505b565b6000612cbc612abc565b80519091508015801590612cda5750601b54600160a81b900460ff16155b156131ae576007546000906001600160a01b0316612d2e57814442604051602001612d06929190614f81565b6040516020818303038152906040528051906020012060001c81612d2657fe5b069050612e04565b6000805b83811015612dca57848181518110612d4657fe5b60200260200101516001600160a01b031663d89601fd6040518163ffffffff1660e01b815260040160206040518083038186803b158015612d8657600080fd5b505afa158015612d9a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dbe9190614ac9565b90910190600101612d32565b50828142604051602001612ddf929190614f81565b6040516020818303038152906040528051906020012060001c81612dff57fe5b069150505b60608060008080805b87811015612f8c5760008882890181612e2257fe5b06905060008a8281518110612e3357fe5b6020908102919091018101516001600160a01b0381166000908152601690925260409091205490915060ff1615612e89576001600160a01b03166000908152601660205260409020805460ff1916905550612f84565b6011546040516340462a2d60e01b81526001600160a01b038316916340462a2d91612eba9190891590600401614f33565b600060405180830381600087803b158015612ed457600080fd5b505af1925050508015612f0957506040513d6000823e601f3d908101601f19168201604052612f06919081019061467e565b60015b612f5757612f156150e2565b80612f205750612f30565b612f2a8282613f83565b50612f52565b612f528160405180606001604052806022815260200161520f60229139613f83565b612f81565b87158015612f66575060008351115b15612f7d5791995097509550600194509250828787875b5050505b50505b600101612e0d565b506000612f976122db565b9050821561314d576017546011546001600160a01b039091169063a9b79e1790889088908890877f0000000000000000000000000000000000000000000000000000000000000000886001612feb85613fd4565b0360068b81548110612ff957fe5b9060005260206000209060030201600001546040518a63ffffffff1660e01b815260040161302f99989796959493929190614d5f565b600060405180830381600087803b15801561304957600080fd5b505af192505050801561305a575060015b61314d576130666150e2565b8061307157506130c8565b7f175a1d13d190d6a1e14461c214b3ecf6118b828797750b7bffd7c4f2c1eba54c836011546040516130a4929190614cf2565b60405180910390a16017546130c2906001600160a01b03168261175a565b5061314d565b7f175a1d13d190d6a1e14461c214b3ecf6118b828797750b7bffd7c4f2c1eba54c826011546040516130fb929190614cf2565b60405180910390a16017546040805180820190915260208082527f756e6b6e6f776e206661696c2e206469737472696275746520726577617264739082015261314d916001600160a01b03169061175a565b600780546001600160a01b0319166001600160a01b0384161790556040517f98b050a4042fbd1b89934ef40b9342e593f15081a348af940573a0179031f4ad9061319a9084908490614cf2565b60405180910390a150505050505050613282565b60005b8181101561322f5760008382815181106131c757fe5b6020908102919091018101516001600160a01b0381166000908152601690925260409091205490915060ff161561321c576001600160a01b03166000908152601660205260409020805460ff19169055613227565b61322581614021565b505b6001016131b1565b50600780546001600160a01b03191690557f98b050a4042fbd1b89934ef40b9342e593f15081a348af940573a0179031f4ad600061326b6122db565b604051613279929190614cf2565b60405180910390a15b5050601b805460ff60a01b19169055565b600061329d612abc565b80519091504281156133465760005b82811015613344578381815181106132c057fe5b60200260200101516001600160a01b031663d89601fd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561330057600080fd5b505afa158015613314573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133389190614ac9565b909101906001016132ac565b505b806040516020016133579190614f78565b6040516020818303038152906040528051906020012060001c905060007f0000000000000000000000000000000000000000000000000000000000000000600661339f6122db565b815481106133a957fe5b9060005260206000209060030201600101544303816133c457fe5b049050806133d0575060015b60008183816133db57fe5b069050806133e7575060015b60408051606081018252438381038252602082019081524292820192835260068054600181018255600091825283517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f60039092029182015591517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4083015592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190910155905b85811015613518578681815181106134a357fe5b60200260200101516001600160a01b031663e536f39683600001516040518263ffffffff1660e01b81526004016134da9190614f78565b600060405180830381600087803b1580156134f457600080fd5b505af1158015613508573d6000803e3d6000fd5b50506001909201915061348f9050565b50805160208201516040517f1813f880dc24666c8b69c9d771a487ea620a27fde1514be3112847056c0c532292613550929091614f81565b60405180910390a15050601380547f000000000000000000000000000000000000000000000000000000000000000001905550505050565b60006135926122db565b600e5490915042035b816014541080156135cf5750806006601454600101815481106135ba57fe5b90600052602060002090600302016002015411155b1561148257601754601454604051636b60edf760e11b81526001600160a01b039092169163d6c1dbee9161360591600401614f78565b600060405180830381600087803b15801561361f57600080fd5b505af1925050508015613630575060015b6137095761363c6150e2565b80613647575061369c565b7fa819a21065ad87bdde9e6d398d3213e0d3634afd87aceb7092236483f5d7ca8d6014546040516136789190614f78565b60405180910390a1601754613696906001600160a01b03168261175a565b50611482565b7fa819a21065ad87bdde9e6d398d3213e0d3634afd87aceb7092236483f5d7ca8d6014546040516136cd9190614f78565b60405180910390a160175460408051606081019091526021808252613704926001600160a01b03169190615231602083013961175a565b611482565b60148054600101905561359b565b601b546001600160a01b0316613755576040517f9a880a9e2a01928f1a99d7b0e2ea1147f52e2eb381f8d9345c110932d57bce8d90600090a1612cb0565b600060066014548154811061376657fe5b6000918252602090912060039091020154601b5460405163cbc31cf760e01b81529192506001600160a01b03169063cbc31cf7906137a8908490600401614f78565b600060405180830381600087803b1580156137c257600080fd5b505af19250505080156137d3575060015b61069b576137df6150e2565b806137ea575061383d565b7f9f874ea08c7014cce74622bfe71434f81aba7598ad65126a6aea86945bdfa18d826040516138199190614f78565b60405180910390a1601b54613837906001600160a01b03168261175a565b506138a3565b7f9f874ea08c7014cce74622bfe71434f81aba7598ad65126a6aea86945bdfa18d8160405161386c9190614f78565b60405180910390a1601b54604080516060810190915260238082526138a3926001600160a01b031691906151c1602083013961175a565b61069b565b60105460ff161561393357604051639ec2b58160e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690639ec2b5819061390090600f90600401614dc9565b600060405180830381600087803b15801561391a57600080fd5b505af115801561392e573d6000803e3d6000fd5b505050505b600061393d612abc565b80519091506000811580159061395d5750601b54600160a81b900460ff16155b15613a0f576006805460009190600019810190811061397857fe5b6000918252602090912060039091020154601a546040516237b08960e41b81529192506001600160a01b03169063037b0890906139b9908490600401614f78565b602060405180830381600087803b1580156139d357600080fd5b505af11580156139e7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a0b9190614ac9565b9150505b60005b82811015613b98576000848281518110613a2857fe5b602090810291909101015160105490915060ff1615613abb57600854600954600a54600b54600c54600d5460405163f7dba1f560e01b81526001600160a01b0388169663f7dba1f596613a88969195909491939092600f90600401614fc8565b600060405180830381600087803b158015613aa257600080fd5b505af1158015613ab6573d6000803e3d6000fd5b505050505b806001600160a01b031663f670ebe384601b60159054906101000a900460ff1680613afe57506001600160a01b0384166000908152601c602052604090205460ff165b6040518363ffffffff1660e01b8152600401613b1b929190614f33565b600060405180830381600087803b158015613b3557600080fd5b505af1925050508015613b46575060015b613b8f57613b526150e2565b80613b5d5750613b6d565b613b6782826140bd565b50613b8f565b613b8f8160405180606001604052806023815260200161527e602391396140bd565b50600101613a12565b506010805460ff191690556000613bad613dd2565b60118190559050613bbd816142ce565b6012555050601b805460ff60a01b1916600160a01b1790555050565b88548814613bf45760088901805460ff191660011790558789555b86896001015414613c175760088901805460ff1916600190811790915589018790555b85896002015414613c395760088901805460ff19166001179055600289018690555b84896003015414613c5b5760088901805460ff19166001179055600389018590555b83896004015414613c7d5760088901805460ff19166001179055600489018490555b82896005015414613c9f5760088901805460ff19166001179055600589018390555b81896006015414613cc15760088901805460ff19166001179055600689018290555b805160078a015414613cf7578051613ce29060078b019060208401906144a3565b5060088901805460ff19166001179055613db6565b60005b8151811015613db457818181518110613d0f57fe5b60200260200101516001600160a01b03168a6007018281548110613d2f57fe5b6000918252602090912001546001600160a01b031614613dac5760088a01805460ff191660011790558151829082908110613d6657fe5b60200260200101518a6007018281548110613d7d57fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055505b600101613cfa565b505b5050506008909501805461ff0019166101001790555050505050565b60007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000420381613e1f57fe5b04905090565b806001600160a01b031663555989da6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015613e6057600080fd5b505af1158015613e74573d6000803e3d6000fd5b5050506001600160a01b0382166000908152601c60209081526040808320805460ff199081169091556016835281842080548216905560159092529091208054909116905550613eca613ec5612abc565b61433d565b7fa0985424f2efdcae4b57a7c84bbf0a0b19f93054f21e9eb1cfcd5a59813fe1da8160006040516124d3929190614ee9565b805160005b81811015613f7e5760156000848381518110613f1957fe5b6020908102919091018101516001600160a01b031682528101919091526040016000205460ff16613f76576040518060600160405280602681526020016152a16026913960405162461bcd60e51b8152600401610b069190614f43565b600101613f01565b505050565b7f79f4c7cc43bfb79f5a3aad0d92f75b6fed7db061bb5cc2580a01c8132711b881826011546001604051613fb993929190614f04565b60405180910390a1613fcb828261175a565b61148282614021565b7f0000000000000000000000000000000000000000000000000000000000000000600182017f00000000000000000000000000000000000000000000000000000000000000000201919050565b601154604051639de6f92760e01b81526001600160a01b03831691639de6f9279161404f9190600401614f78565b600060405180830381600087803b15801561406957600080fd5b505af192505050801561407a575060015b61069b576140866150e2565b80614091575061409b565b61383782826143a1565b6138a3816040518060600160405280602b81526020016151e4602b91396143a1565b7f61156899176547b8075bfa81fa2996c6057ce9c71320884b11c0179d9dc2e462826140e7613dd2565b6040516140f5929190614cf2565b60405180910390a1614107828261175a565b601b54600160a81b900460ff168061413757506001600160a01b0382166000908152601c602052604090205460ff165b15614164576001600160a01b0382166000908152601660205260409020805460ff19166001179055611482565b60405163f670ebe360e01b81526001600160a01b0383169063f670ebe39061419490600090600190600401614f33565b600060405180830381600087803b1580156141ae57600080fd5b505af19250505080156141bf575060015b611482576141cb6150e2565b806141d65750614249565b6001600160a01b0383166000908152601660205260409020805460ff191660011790557f61156899176547b8075bfa81fa2996c6057ce9c71320884b11c0179d9dc2e46283614223613dd2565b604051614231929190614cf2565b60405180910390a1614243838261175a565b50613704565b6001600160a01b0382166000908152601660205260409020805460ff191660011790557f61156899176547b8075bfa81fa2996c6057ce9c71320884b11c0179d9dc2e46282614296613dd2565b6040516142a4929190614cf2565b60405180910390a1613704826040518060600160405280602c8152602001615252602c913961175a565b7f0000000000000000000000000000000000000000000000000000000000000000600182017f000000000000000000000000000000000000000000000000000000000000000002017f000000000000000000000000000000000000000000000000000000000000000001919050565b805160005b81811015613f7e5761439983828151811061435957fe5b60200260200101516001600160a01b03166318931c356040518163ffffffff1660e01b815260040160006040518083038186803b15801561257857600080fd5b600101614342565b7f79f4c7cc43bfb79f5a3aad0d92f75b6fed7db061bb5cc2580a01c8132711b8818260115460026040516143d793929190614f04565b60405180910390a16143e9828261175a565b60115460405163974d7a6b60e01b81526001600160a01b0384169163974d7a6b916109689190600401614f78565b828054600181600116156101000203166002900490600052602060002090601f01602090048101928261444d5760008555614493565b82601f1061446657805160ff1916838001178555614493565b82800160010185558215614493579182015b82811115614493578251825591602001919060010190614478565b5061449f9291506144f8565b5090565b828054828255906000526020600020908101928215614493579160200282015b8281111561449357825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906144c3565b5b8082111561449f57600081556001016144f9565b600082601f83011261451d578081fd5b8151602061453261452d83615072565b61504f565b828152818101908583018385028701840188101561454e578586fd5b855b8581101561456c57815184529284019290840190600101614550565b5090979650505050505050565b8035801515811461241257600080fd5b600082601f830112614599578081fd5b81516145a761452d8261508f565b8181528460208386010111156145bb578283fd5b6145cc8260208301602087016150b0565b949350505050565b6000602082840312156145e5578081fd5b81356145f081615186565b9392505050565b60008060408385031215614609578081fd5b823561461481615186565b915060208301356001600160401b0381111561462e578182fd5b8301601f8101851361463e578182fd5b803561464c61452d8261508f565b818152866020838501011115614660578384fd5b81602084016020830137908101602001929092525090939092509050565b600080600060608486031215614692578081fd5b83516001600160401b03808211156146a8578283fd5b818601915086601f8301126146bb578283fd5b815160206146cb61452d83615072565b82815281810190858301838502870184018c10156146e7578788fd5b8796505b848710156147125780516146fe81615186565b8352600196909601959183019183016146eb565b509189015191975090935050508082111561472b578283fd5b506147388682870161450d565b925050604084015190509250925092565b6000602080838503121561475b578182fd5b82516001600160401b03811115614770578283fd5b8301601f81018513614780578283fd5b805161478e61452d82615072565b81815283810190838501858402850186018910156147aa578687fd5b8694505b838510156147d55780516147c181615186565b8352600194909401939185019185016147ae565b50979650505050505050565b600060208083850312156147f3578182fd5b82516001600160401b03811115614808578283fd5b8301601f81018513614818578283fd5b805161482661452d82615072565b81815283810190838501865b8481101561485b576148498a888451890101614589565b84529286019290860190600101614832565b509098975050505050505050565b60006020828403121561487a578081fd5b6145f082614579565b600080600080600060a0868803121561489a578283fd5b85356148a581615186565b945060208601356148b581615186565b935060408601356148c581615186565b925060608601356148d581615186565b915060808601356148e581615186565b809150509295509295909350565b60008060408385031215614905578182fd5b823561491081615186565b91506020838101356001600160401b0381111561492b578283fd5b8401601f8101861361493b578283fd5b803561494961452d82615072565b81815283810190838501858402850186018a1015614965578687fd5b8694505b8385101561499057803561497c81615186565b835260019490940193918501918501614969565b5080955050505050509250929050565b600080604083850312156149b2578182fd5b82356149bd81615186565b91506149cb60208401614579565b90509250929050565b600080600080608085870312156149e9578182fd5b84356149f481615186565b93506020850135614a0481615186565b9250614a1260408601614579565b9150614a2060608601614579565b905092959194509250565b60008060408385031215614a3d578182fd5b8235614a4881615186565b91506020830135614a5881615186565b809150509250929050565b600060208284031215614a74578081fd5b81516145f081615186565b600060208284031215614a90578081fd5b81516001600160401b03811115614aa5578182fd5b6145cc84828501614589565b600060208284031215614ac2578081fd5b5035919050565b600060208284031215614ada578081fd5b5051919050565b60008060408385031215614af3578182fd5b50508035926020909101359150565b60008060408385031215614b14578182fd5b505080516020909101519092909150565b600080600080600080600080610100898b031215614b41578586fd5b883597506020808a0135975060408a0135965060608a0135955060808a0135945060a08a0135935060c08a0135925060e08a01356001600160401b03811115614b88578283fd5b8a01601f81018c13614b98578283fd5b8035614ba661452d82615072565b8082825284820191508484018f868786028701011115614bc4578687fd5b8694505b83851015614bef578035614bdb81615186565b835260019490940193918501918501614bc8565b5080955050505050509295985092959890939650565b6000815180845260208085019450808401835b83811015614c3d5781516001600160a01b031687529582019590820190600101614c18565b509495945050505050565b6000815480845260208085019450838352808320835b83811015614c3d5781546001600160a01b031687529582019560019182019101614c5e565b6000815180845260208085019450808401835b83811015614c3d57815187529582019590820190600101614c96565b60008151808452614cca8160208601602086016150b0565b601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b03831681526040602082018190526000906145cc90830184614cb2565b600060018060a01b038516825283602083015260606040830152614d566060830184614cb2565b95945050505050565b6000610120808352614d738184018d614c05565b90508281036020840152614d87818c614c83565b604084019a909a52505060608101969096526001600160a01b0394909416608086015260a085019290925260c084015260e08301526101009091015292915050565b6000602082526145f06020830184614c48565b6000602082526145f06020830184614c05565b600060a08252614e0260a0830188614c83565b602083820381850152614e158289614c83565b848103604086015287518082529092508183019082810284018301838a01865b83811015614e6357601f19878403018552614e51838351614cb2565b94860194925090850190600101614e35565b50508681036060880152614e77818a614c05565b955050505050508260808301529695505050505050565b901515815260200190565b600084151582526020606081840152614eb56060840186614c05565b8381036040850152845180825282860191830190845b8181101561485b578351151583529284019291840191600101614ecb565b6001600160a01b039290921682521515602082015260400190565b6001600160a01b0384168152602081018390526060810160068310614f2557fe5b826040830152949350505050565b9182521515602082015260400190565b6000602082526145f06020830184614cb2565b6001600160c01b039290921682526001600160401b0316602082015260400190565b90815260200190565b918252602082015260400190565b9283526020830191909152604082015260600190565b948552602085019390935260408401919091526060830152608082015260a00190565b60008882528760208301528660408301528560608301528460808301528360a083015260e060c0830152614fff60e0830184614c48565b9998505050505050505050565b988952602089019790975260408801959095526060870193909352608086019190915260a085015260c0840152151560e083015215156101008201526101200190565b6040518181016001600160401b038111828210171561506a57fe5b604052919050565b60006001600160401b0382111561508557fe5b5060209081020190565b60006001600160401b038211156150a257fe5b50601f01601f191660200190565b60005b838110156150cb5781810151838201526020016150b3565b83811115612cab5750506000910152565b60e01c90565b600060443d10156150f257610565565b600481823e6308c379a061510682516150dc565b1461511057610565565b6040513d600319016004823e80513d6001600160401b03816024840111818411171561513f5750505050610565565b828401925082519150808211156151595750505050610565565b503d8301602082840101111561517157505050610565565b601f01601f1916810160200160405291505090565b6001600160a01b038116811461069b57600080fdfe4d6178207472757374656420616464726573736573206c656e677468206578636565646564756e6b6e6f776e206661696c2e2073657474696e6720636c65616e757020626c6f636b756e6b6e6f776e206661696c2e2066616c6c6261636b2066696e616c697a652070726963652065706f6368756e6b6e6f776e206661696c2e2066696e616c697a652070726963652065706f6368556e6b6e6f776e206661696c207768656e20636c6f73696e672065787069726564756e6b6e6f776e206661696c2e2066616c6c6261636b20696e69742065706f636820666f722072657665616c756e6b6e6f776e206661696c2e20696e69742065706f636820666f722072657665616c4173736574204654534f206e6f74206d616e61676564206279206674736f206d616e61676572a264697066735822122037183781e849483e9668a37b1936a2cb6baa0cbe644df48f79b1a41c4081783464736f6c6343000706003346697273742065706f63682073746172742074696d657374616d7020696e206675747572655265776172642065706f6368206475726174696f6e20636f6e646974696f6e20696e76616c69645265776172642065706f636820737461727420636f6e646974696f6e20696e76616c6964",
1108
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102745760003560e01c806393a7902511610151578063ce69f833116100c3578063e7a0d01e11610087578063e7a0d01e146104cf578063e7c830d4146104e2578063e847ae1e146104ea578063f2edab5a146104fd578063f937d6ad14610510578063ff882fbb1461051857610274565b8063ce69f8331461046c578063d38bfff414610481578063e06174e414610494578063e22fdece146104b1578063e371aef0146104b957610274565b8063a795f40911610115578063a795f40914610405578063a93a6f4214610418578063af946af71461042b578063c0ffe9081461043e578063c2b0d47b14610451578063c373a08e1461045957610274565b806393a79025146103b65780639d6a890f146103cf578063a1077532146103e2578063a578f55b146103ea578063a670ff87146103f257610274565b80634eac870f116101ea57806369b11ac6116101ae57806369b11ac6146103655780636b65cc341461036d5780636d0e8c34146103805780636ea0aa311461038857806385f3c9c91461039b5780639131205b146103a357610274565b80634eac870f146103305780635aa6e675146103385780635d36b1901461034057806360f2c5b21461034857806360f7ac971461035d57610274565b8063144e15911161023c578063144e1591146102c65780632663f1b4146102dd5780632b3c41a4146102f05780632fd8eb7d1461030957806338b5f869146103115780634b48dd5e1461031957610274565b806302fb0c5e14610279578063047fc9aa146102975780630e063d7d146102ac5780630f15f4c0146102b45780630f4ef8a6146102be575b600080fd5b61028161052b565b60405161028e9190614e8e565b60405180910390f35b61029f610534565b60405161028e9190614cde565b61029f610543565b6102bc610568565b005b61029f6105c8565b6102ce6105d7565b60405161028e93929190614f8f565b6102bc6102eb3660046145d4565b61063f565b6102f861069e565b60405161028e959493929190614def565b61029f6106d9565b61029f6106e8565b6103216106f7565b60405161028e93929190614e99565b61029f6107d3565b61029f6107e2565b6102bc6107f1565b6103506108b3565b60405161028e9190614f78565b61029f6108d7565b6103506108e6565b6102bc61037b366004614a2b565b6108eb565b61028161099e565b6102f8610396366004614ae1565b610aaf565b610350610e13565b6102bc6103b1366004614b25565b610e37565b6103be6110a7565b60405161028e959493929190614fa5565b6102bc6103dd3660046145d4565b61113a565b61029f611214565b610350611238565b6102bc6104003660046145d4565b61125c565b6102ce610413366004614ab1565b611486565b6102bc6104263660046148f3565b6114b9565b6102bc6104393660046149a0565b611649565b6102bc61044c3660046145f7565b61175a565b61029f611933565b6102bc6104673660046145d4565b611942565b6104746119e7565b60405161028e9190614ddc565b6102bc61048f3660046145d4565b6119f6565b61049c611ab8565b60405161028e9998979695949392919061500c565b610281611adf565b6104c1611bbd565b60405161028e929190614f56565b6102bc6104dd3660046149d4565b611bde565b6103506122db565b6102bc6104f8366004614883565b61233e565b61035061050b366004614ab1565b6123ee565b61029f612417565b6102bc610526366004614869565b61243b565b60055460ff1681565b601a546001600160a01b031681565b7f00000000000000000000000000000000000000000000000000000000000000005b90565b6000546001600160a01b031633146105b9576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b6005805460ff19166001179055565b6017546001600160a01b031681565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000909192565b6000546001600160a01b03163314610690576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b61069b8160016124de565b50565b6004546060908190819081906000906106c890600160c01b90046001600160401b03166001610aaf565b945094509450945094509091929394565b6007546001600160a01b031681565b6018546001600160a01b031681565b601b54600160a81b900460ff1660608061070f612abc565b8051909250806001600160401b038111801561072a57600080fd5b50604051908082528060200260200182016040528015610754578160200160208202803683370190505b50915060005b818110156107cc57601c600085838151811061077257fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060009054906101000a900460ff168382815181106107b457fe5b9115156020928302919091019091015260010161075a565b5050909192565b601b546001600160a01b031681565b6000546001600160a01b031681565b6001546001600160a01b03163314610840576040805162461bcd60e51b815260206004820152600d60248201526c1b9bdd0818db185a5b585a5b9d609a1b604482015290519081900360640190fd5b600054600154604080516001600160a01b03938416815292909116602083015280517f434a2db650703b36c824e745330d6397cdaa9ee2cc891a4938ae853e1c50b68d9281900390910190a160018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b7f000000000000000000000000000000000000000000000000000000000000000090565b6001546001600160a01b031681565b600581565b6000546001600160a01b0316331461093c576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b60405163d0d552dd60e01b81526001600160a01b0383169063d0d552dd90610968908490600401614cde565b600060405180830381600087803b15801561098257600080fd5b505af1158015610996573d6000803e3d6000fd5b505050505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a11576040805162461bcd60e51b815260206004820152601160248201527037b7363c90333630b932903230b2b6b7b760791b604482015290519081900360640190fd5b60055460ff16610a2357506000610565565b600654610a3757610a32612b3d565b610aa9565b601b54600160a01b900460ff168015610a5257504260125411155b15610a5f57610a32612cb2565b601b54600160a01b900460ff16158015610a7b57504260135411155b15610a9857610a88613293565b610a90613588565b610a32613717565b4260125411610aa957610aa96138a8565b50600190565b606080606080600060038054905087106040518060400160405280601081526020016f0e6e8c2e4e840d2dcc8caf040d0d2ced60831b81525090610b0f5760405162461bcd60e51b8152600401610b069190614f43565b60405180910390fd5b506003546000908888011115610b2a57600354889003610b2c565b865b9050806001600160401b0381118015610b4457600080fd5b50604051908082528060200260200182016040528015610b6e578160200160208202803683370190505b509550806001600160401b0381118015610b8757600080fd5b50604051908082528060200260200182016040528015610bb1578160200160208202803683370190505b509450806001600160401b0381118015610bca57600080fd5b50604051908082528060200260200182016040528015610bfe57816020015b6060815260200190600190039081610be95790505b509350806001600160401b0381118015610c1757600080fd5b50604051908082528060200260200182016040528015610c41578160200160208202803683370190505b50925060005b81811015610df75760006003828b0181548110610c6057fe5b6000918252602080832090910154808352600290915260409091205489519192506001600160c01b031690899084908110610c9757fe5b6020026020010181815250506002600082815260200190815260200160002060000160189054906101000a90046001600160401b03166001600160401b0316878381518110610ce257fe5b602090810291909101810191909152600082815260028083526040918290208101805483516001821615610100026000190190911692909204601f81018590048502830185019093528282529092909190830182828015610d845780601f10610d5957610100808354040283529160200191610d84565b820191906000526020600020905b815481529060010190602001808311610d6757829003601f168201915b5050505050868381518110610d9557fe5b60200260200101819052506002600082815260200190815260200160002060010160009054906101000a90046001600160a01b0316858381518110610dd657fe5b6001600160a01b039092166020928302919091019091015250600101610c47565b50506004549497939650919450926001600160c01b0316919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000546001600160a01b03163314610e88576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b60408051808201909152601381527211dbdd8b881c185c985b5cc81a5b9d985b1a59606a1b602082015288610ed05760405162461bcd60e51b8152600401610b069190614f43565b5060408051808201909152601381527211dbdd8b881c185c985b5cc81a5b9d985b1a59606a1b602082015287610f195760405162461bcd60e51b8152600401610b069190614f43565b5060408051808201909152601381527211dbdd8b881c185c985b5cc81a5b9d985b1a59606a1b602082015286861015610f655760405162461bcd60e51b8152600401610b069190614f43565b5060408051808201909152601381527211dbdd8b881c185c985b5cc81a5b9d985b1a59606a1b6020820152612710851115610fb35760405162461bcd60e51b8152600401610b069190614f43565b5060408051808201909152601381527211dbdd8b881c185c985b5cc81a5b9d985b1a59606a1b60208201526127108411156110015760405162461bcd60e51b8152600401610b069190614f43565b5060408051808201909152601581527414995dd85c9908195e1c1a5c9e481a5b9d985b1a59605a1b60208201528261104c5760405162461bcd60e51b8152600401610b069190614f43565b5060058151111560405180606001604052806025815260200161519c602591399061108a5760405162461bcd60e51b8152600401610b069190614f43565b5061109d60088989898989898989613bd9565b5050505050505050565b6000806000806000806110b8613dd2565b9550507f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000808702820195506001870102019250507f000000000000000000000000000000000000000000000000000000000000000082019050429091929394565b600154600160a01b900460ff1615611190576040805162461bcd60e51b8152602060048201526014602482015273696e697469616c6973656420213d2066616c736560601b604482015290519081900360640190fd5b6001805460ff60a01b1916600160a01b179055600054604080516001600160a01b039283168152918316602083015280517f434a2db650703b36c824e745330d6397cdaa9ee2cc891a4938ae853e1c50b68d9281900390910190a1600080546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000546001600160a01b031633146112ad576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b6000601860009054906101000a90046001600160a01b03166001600160a01b031663e848da30836001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b15801561130c57600080fd5b505afa158015611320573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113489190810190614a7f565b6040518263ffffffff1660e01b81526004016113649190614f43565b60206040518083038186803b15801561137c57600080fd5b505afa158015611390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113b49190614ac9565b60195460405163d873617160e01b81529192506001600160a01b03169063d8736171906113e5908490600401614f78565b600060405180830381600087803b1580156113ff57600080fd5b505af1158015611413573d6000803e3d6000fd5b505060185460405163a670ff8760e01b81526001600160a01b03909116925063a670ff879150611447908590600401614cde565b600060405180830381600087803b15801561146157600080fd5b505af1158015611475573d6000803e3d6000fd5b5050505061148282613e25565b5050565b6006818154811061149657600080fd5b600091825260209091206003909102018054600182015460029092015490925083565b6000546001600160a01b0316331461150a576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b80516040805180820190915260168152754173736574206674736f73206c69737420656d70747960501b6020820152816115575760405162461bcd60e51b8152600401610b069190614f43565b5060005b818110156115dc5782818151811061156f57fe5b60200260200101516001600160a01b0316846001600160a01b031614156115d45760408051808201825260168152756674736f20657175616c73206173736574206674736f60501b6020820152905162461bcd60e51b8152610b069190600401614f43565b60010161155b565b506115e682613efc565b60405163098fef7160e11b81526001600160a01b0384169063131fdee290611612908590600401614ddc565b600060405180830381600087803b15801561162c57600080fd5b505af1158015611640573d6000803e3d6000fd5b50505050505050565b6000546001600160a01b0316331461169a576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b6001600160a01b0382166000908152601560209081526040918290205482518084019093526009835268139bdd08199bdd5b9960ba1b9183019190915260ff166116f75760405162461bcd60e51b8152600401610b069190614f43565b506001600160a01b0382166000908152601c602052604090819020805460ff1916831515179055517f24462ede4d3e8e5a69fecec6290d42a311016ca752216d9a3d681e284791b7ac9061174e9084908490614ee9565b60405180910390a15050565b6000828260405160200161176f929190614d0b565b60408051601f198184030181528282528051602091820120600081815260029092529190208054436001600160c01b038181166001600160401b03600160c01b80860482166001019091160291909316176001600160c01b031916919091179091559092507f1a601cf5e0efbd558b2778b7389af04741d1c49bcab104c40daa2da194593617916118039186918690614d2f565b60405180910390a1600480546001600160c01b0319811660016001600160c01b03928316810190921617909155600082815260026020526040902054600160c01b90046001600160401b0316111561185b5750611482565b6003805460018082019092557fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b01829055600082815260026020818152604090922092830180546001600160a01b0319166001600160a01b03881617905584516118cb9390910191850190614417565b50600354600091825260026020526040909120600101805467ffffffffffffffff60a01b1916600160a01b6000199093016001600160401b0390811684029190911791829055600480546001600160c01b03169390920416600160c01b029190911790555050565b6019546001600160a01b031681565b6000546001600160a01b03163314611993576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b600180546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f1f95fb40be3a947982072902a887b521248d1d8931a39eb38f84f4d6fd758b699181900360200190a150565b60606119f1612abc565b905090565b6000546001600160a01b03163314611a47576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b600054604080516001600160a01b039283168152918316602083015280517f434a2db650703b36c824e745330d6397cdaa9ee2cc891a4938ae853e1c50b68d9281900390910190a1600080546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b600854600954600a54600b54600c54600d54600e5460105460ff8082169161010090041689565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611b52576040805162461bcd60e51b815260206004820152601160248201527037b7363c90333630b932903230b2b6b7b760791b604482015290519081900360640190fd5b601b54600160a81b900460ff16611bb757601b805460ff60a81b1916600160a81b1790556040517f217a37a37fc40a97159886f80c3d45986e6fc4330ce6ad7283478b5e5ab705bc90611ba790600190614e8e565b60405180910390a1506001610565565b50600090565b6004546001600160c01b03811690600160c01b90046001600160401b031682565b6000546001600160a01b03163314611c2f576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b826001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b158015611c6857600080fd5b505afa158015611c7c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ca49190810190614a7f565b604051602001611cb49190614f43565b60405160208183030381529060405280519060200120846001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b158015611d0357600080fd5b505afa158015611d17573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611d3f9190810190614a7f565b604051602001611d4f9190614f43565b60405160208183030381529060405280519060200120146040518060400160405280601781526020017f4654534f2073796d626f6c73206d757374206d6174636800000000000000000081525090611dba5760405162461bcd60e51b8152600401610b069190614f43565b506000611dc5612abc565b805190915060005b81811015611e0f57866001600160a01b0316838281518110611deb57fe5b60200260200101516001600160a01b03161415611e0757611e0f565b600101611dcd565b81811415611e4e576040805180820182526009815268139bdd08199bdd5b9960ba1b6020820152905162461bcd60e51b8152610b069190600401614f43565b8415611f2f57600080886001600160a01b031663eb91d37e6040518163ffffffff1660e01b8152600401604080518083038186803b158015611e8f57600080fd5b505afa158015611ea3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ec79190614b02565b60405163306ba25360e01b815291935091506001600160a01b0389169063306ba25390611efa9085908590600401614f81565b600060405180830381600087803b158015611f1457600080fd5b505af1158015611f28573d6000803e3d6000fd5b5050505050505b8315612100576000876001600160a01b0316635c222bad6040518163ffffffff1660e01b815260040160206040518083038186803b158015611f7057600080fd5b505afa158015611f84573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fa89190614a63565b90506001600160a01b0381161561201c5760405163d0d552dd60e01b81526001600160a01b0388169063d0d552dd90611fe5908490600401614cde565b600060405180830381600087803b158015611fff57600080fd5b505af1158015612013573d6000803e3d6000fd5b505050506120fe565b6000886001600160a01b03166318931c356040518163ffffffff1660e01b815260040160006040518083038186803b15801561205757600080fd5b505afa15801561206b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526120939190810190614749565b8051909150156120fc5760405163098fef7160e11b81526001600160a01b0389169063131fdee2906120c9908490600401614ddc565b600060405180830381600087803b1580156120e357600080fd5b505af11580156120f7573d6000803e3d6000fd5b505050505b505b505b61210b8660006124de565b6000612115612abc565b805190915060005b818110156122c657600083828151811061213357fe5b602002602001015190508a6001600160a01b0316816001600160a01b0316141561215d57506122be565b6000816001600160a01b03166318931c356040518163ffffffff1660e01b815260040160006040518083038186803b15801561219857600080fd5b505afa1580156121ac573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526121d49190810190614749565b805190915080156122ba576000805b82811015612252578e6001600160a01b031684828151811061220157fe5b60200260200101516001600160a01b0316141561224a578d84828151811061222557fe5b60200260200101906001600160a01b031690816001600160a01b031681525050600191505b6001016121e3565b5080156122b85760405163098fef7160e11b81526001600160a01b0385169063131fdee290612285908690600401614ddc565b600060405180830381600087803b15801561229f57600080fd5b505af11580156122b3573d6000803e3d6000fd5b505050505b505b5050505b60010161211d565b506122d089613e25565b505050505050505050565b6006546040805180820190915260208082527f5265776172642065706f6368206e6f7420696e697469616c697a6564207965749082015260009190816123345760405162461bcd60e51b8152600401610b069190614f43565b5060001901905090565b6000546001600160a01b0316331461238f576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b601780546001600160a01b03199081166001600160a01b03978816179091556018805482169587169590951790945560198054851693861693909317909255601a80548416918516919091179055601b80549092169216919091179055565b6000600682815481106123fd57fe5b90600052602060002090600302016000015490505b919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000546001600160a01b0316331461248c576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b601b805460ff60a81b1916600160a81b831515021790556040517f217a37a37fc40a97159886f80c3d45986e6fc4330ce6ad7283478b5e5ab705bc906124d3908390614e8e565b60405180910390a150565b60105460408051808201909152601b81527f476f762e20706172616d73206e6f7420696e697469616c697a65640000000000602082015290610100900460ff1661253b5760405162461bcd60e51b8152600401610b069190614f43565b506125b9826001600160a01b03166318931c356040518163ffffffff1660e01b815260040160006040518083038186803b15801561257857600080fd5b505afa15801561258c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526125b49190810190614749565b613efc565b8015612782576000826001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156125fa57600080fd5b505afa15801561260e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526126369190810190614a7f565b6040516020016126469190614f43565b6040516020818303038152906040528051906020012090506000601860009054906101000a90046001600160a01b03166001600160a01b031663ce1c0e4d6040518163ffffffff1660e01b815260040160006040518083038186803b1580156126ae57600080fd5b505afa1580156126c2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526126ea91908101906147e1565b80519091505b801561277e57806001900390508282828151811061270a57fe5b60200260200101516040516020016127229190614f43565b60405160208183030381529060405280519060200120141561277957604080518082018252600d81526c105b1c9958591e481859191959609a1b6020820152905162461bcd60e51b8152610b069190600401614f43565b6126f0565b5050505b604051630bc29bcf60e21b81526001600160a01b03831690632f0a6f3c90612812907f0000000000000000000000000000000000000000000000000000000000000000907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090600401614f8f565b600060405180830381600087803b15801561282c57600080fd5b505af1158015612840573d6000803e3d6000fd5b50506006541591506128d2905057600680546001600160a01b0384169163e536f39691600019810190811061287157fe5b9060005260206000209060030201600001546040518263ffffffff1660e01b815260040161289f9190614f78565b600060405180830381600087803b1580156128b957600080fd5b505af11580156128cd573d6000803e3d6000fd5b505050505b600854600954600a54600b54600c54600d5460405163f7dba1f560e01b81526001600160a01b0389169663f7dba1f596612919969195909491939092600f90600401614fc8565b600060405180830381600087803b15801561293357600080fd5b505af1158015612947573d6000803e3d6000fd5b5050601b546001600160a01b038086166000908152601660209081526040808320805460ff600160a01b90970496909616151560ff19968716179055601590915280822080549094166001179093556018549251630998fc6d60e21b815290945091169150632663f1b4906129c0908690600401614cde565b602060405180830381600087803b1580156129da57600080fd5b505af11580156129ee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a129190614ac9565b90508115612a7d57601954604051630d15c16960e21b81526001600160a01b039091169063345705a490612a4a908490600401614f78565b600060405180830381600087803b158015612a6457600080fd5b505af1158015612a78573d6000803e3d6000fd5b505050505b7fa0985424f2efdcae4b57a7c84bbf0a0b19f93054f21e9eb1cfcd5a59813fe1da836001604051612aaf929190614ee9565b60405180910390a1505050565b60185460408051635200305d60e11b815290516060926001600160a01b03169163a40060ba916004808301926000929190829003018186803b158015612b0157600080fd5b505afa158015612b15573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526119f19190810190614749565b7f0000000000000000000000000000000000000000000000000000000000000000601354034210612cb0576000612b72612abc565b8051604080516060810182524360001981018252602082019081524292820192835260068054600181018255600091825283517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f60039092029182015591517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4083015592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d41909101559293509091905b82811015612cab57838181518110612c3757fe5b60200260200101516001600160a01b031663e536f39683600001516040518263ffffffff1660e01b8152600401612c6e9190614f78565b600060405180830381600087803b158015612c8857600080fd5b505af1158015612c9c573d6000803e3d6000fd5b50505050806001019050612c23565b505050505b565b6000612cbc612abc565b80519091508015801590612cda5750601b54600160a81b900460ff16155b156131ae576007546000906001600160a01b0316612d2e57814442604051602001612d06929190614f81565b6040516020818303038152906040528051906020012060001c81612d2657fe5b069050612e04565b6000805b83811015612dca57848181518110612d4657fe5b60200260200101516001600160a01b031663d89601fd6040518163ffffffff1660e01b815260040160206040518083038186803b158015612d8657600080fd5b505afa158015612d9a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dbe9190614ac9565b90910190600101612d32565b50828142604051602001612ddf929190614f81565b6040516020818303038152906040528051906020012060001c81612dff57fe5b069150505b60608060008080805b87811015612f8c5760008882890181612e2257fe5b06905060008a8281518110612e3357fe5b6020908102919091018101516001600160a01b0381166000908152601690925260409091205490915060ff1615612e89576001600160a01b03166000908152601660205260409020805460ff1916905550612f84565b6011546040516340462a2d60e01b81526001600160a01b038316916340462a2d91612eba9190891590600401614f33565b600060405180830381600087803b158015612ed457600080fd5b505af1925050508015612f0957506040513d6000823e601f3d908101601f19168201604052612f06919081019061467e565b60015b612f5757612f156150e2565b80612f205750612f30565b612f2a8282613f83565b50612f52565b612f528160405180606001604052806022815260200161520f60229139613f83565b612f81565b87158015612f66575060008351115b15612f7d5791995097509550600194509250828787875b5050505b50505b600101612e0d565b506000612f976122db565b9050821561314d576017546011546001600160a01b039091169063a9b79e1790889088908890877f0000000000000000000000000000000000000000000000000000000000000000886001612feb85613fd4565b0360068b81548110612ff957fe5b9060005260206000209060030201600001546040518a63ffffffff1660e01b815260040161302f99989796959493929190614d5f565b600060405180830381600087803b15801561304957600080fd5b505af192505050801561305a575060015b61314d576130666150e2565b8061307157506130c8565b7f175a1d13d190d6a1e14461c214b3ecf6118b828797750b7bffd7c4f2c1eba54c836011546040516130a4929190614cf2565b60405180910390a16017546130c2906001600160a01b03168261175a565b5061314d565b7f175a1d13d190d6a1e14461c214b3ecf6118b828797750b7bffd7c4f2c1eba54c826011546040516130fb929190614cf2565b60405180910390a16017546040805180820190915260208082527f756e6b6e6f776e206661696c2e206469737472696275746520726577617264739082015261314d916001600160a01b03169061175a565b600780546001600160a01b0319166001600160a01b0384161790556040517f98b050a4042fbd1b89934ef40b9342e593f15081a348af940573a0179031f4ad9061319a9084908490614cf2565b60405180910390a150505050505050613282565b60005b8181101561322f5760008382815181106131c757fe5b6020908102919091018101516001600160a01b0381166000908152601690925260409091205490915060ff161561321c576001600160a01b03166000908152601660205260409020805460ff19169055613227565b61322581614021565b505b6001016131b1565b50600780546001600160a01b03191690557f98b050a4042fbd1b89934ef40b9342e593f15081a348af940573a0179031f4ad600061326b6122db565b604051613279929190614cf2565b60405180910390a15b5050601b805460ff60a01b19169055565b600061329d612abc565b80519091504281156133465760005b82811015613344578381815181106132c057fe5b60200260200101516001600160a01b031663d89601fd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561330057600080fd5b505afa158015613314573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133389190614ac9565b909101906001016132ac565b505b806040516020016133579190614f78565b6040516020818303038152906040528051906020012060001c905060007f0000000000000000000000000000000000000000000000000000000000000000600661339f6122db565b815481106133a957fe5b9060005260206000209060030201600101544303816133c457fe5b049050806133d0575060015b60008183816133db57fe5b069050806133e7575060015b60408051606081018252438381038252602082019081524292820192835260068054600181018255600091825283517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f60039092029182015591517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4083015592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190910155905b85811015613518578681815181106134a357fe5b60200260200101516001600160a01b031663e536f39683600001516040518263ffffffff1660e01b81526004016134da9190614f78565b600060405180830381600087803b1580156134f457600080fd5b505af1158015613508573d6000803e3d6000fd5b50506001909201915061348f9050565b50805160208201516040517f1813f880dc24666c8b69c9d771a487ea620a27fde1514be3112847056c0c532292613550929091614f81565b60405180910390a15050601380547f000000000000000000000000000000000000000000000000000000000000000001905550505050565b60006135926122db565b600e5490915042035b816014541080156135cf5750806006601454600101815481106135ba57fe5b90600052602060002090600302016002015411155b1561148257601754601454604051636b60edf760e11b81526001600160a01b039092169163d6c1dbee9161360591600401614f78565b600060405180830381600087803b15801561361f57600080fd5b505af1925050508015613630575060015b6137095761363c6150e2565b80613647575061369c565b7fa819a21065ad87bdde9e6d398d3213e0d3634afd87aceb7092236483f5d7ca8d6014546040516136789190614f78565b60405180910390a1601754613696906001600160a01b03168261175a565b50611482565b7fa819a21065ad87bdde9e6d398d3213e0d3634afd87aceb7092236483f5d7ca8d6014546040516136cd9190614f78565b60405180910390a160175460408051606081019091526021808252613704926001600160a01b03169190615231602083013961175a565b611482565b60148054600101905561359b565b601b546001600160a01b0316613755576040517f9a880a9e2a01928f1a99d7b0e2ea1147f52e2eb381f8d9345c110932d57bce8d90600090a1612cb0565b600060066014548154811061376657fe5b6000918252602090912060039091020154601b5460405163cbc31cf760e01b81529192506001600160a01b03169063cbc31cf7906137a8908490600401614f78565b600060405180830381600087803b1580156137c257600080fd5b505af19250505080156137d3575060015b61069b576137df6150e2565b806137ea575061383d565b7f9f874ea08c7014cce74622bfe71434f81aba7598ad65126a6aea86945bdfa18d826040516138199190614f78565b60405180910390a1601b54613837906001600160a01b03168261175a565b506138a3565b7f9f874ea08c7014cce74622bfe71434f81aba7598ad65126a6aea86945bdfa18d8160405161386c9190614f78565b60405180910390a1601b54604080516060810190915260238082526138a3926001600160a01b031691906151c1602083013961175a565b61069b565b60105460ff161561393357604051639ec2b58160e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690639ec2b5819061390090600f90600401614dc9565b600060405180830381600087803b15801561391a57600080fd5b505af115801561392e573d6000803e3d6000fd5b505050505b600061393d612abc565b80519091506000811580159061395d5750601b54600160a81b900460ff16155b15613a0f576006805460009190600019810190811061397857fe5b6000918252602090912060039091020154601a546040516237b08960e41b81529192506001600160a01b03169063037b0890906139b9908490600401614f78565b602060405180830381600087803b1580156139d357600080fd5b505af11580156139e7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a0b9190614ac9565b9150505b60005b82811015613b98576000848281518110613a2857fe5b602090810291909101015160105490915060ff1615613abb57600854600954600a54600b54600c54600d5460405163f7dba1f560e01b81526001600160a01b0388169663f7dba1f596613a88969195909491939092600f90600401614fc8565b600060405180830381600087803b158015613aa257600080fd5b505af1158015613ab6573d6000803e3d6000fd5b505050505b806001600160a01b031663f670ebe384601b60159054906101000a900460ff1680613afe57506001600160a01b0384166000908152601c602052604090205460ff165b6040518363ffffffff1660e01b8152600401613b1b929190614f33565b600060405180830381600087803b158015613b3557600080fd5b505af1925050508015613b46575060015b613b8f57613b526150e2565b80613b5d5750613b6d565b613b6782826140bd565b50613b8f565b613b8f8160405180606001604052806023815260200161527e602391396140bd565b50600101613a12565b506010805460ff191690556000613bad613dd2565b60118190559050613bbd816142ce565b6012555050601b805460ff60a01b1916600160a01b1790555050565b88548814613bf45760088901805460ff191660011790558789555b86896001015414613c175760088901805460ff1916600190811790915589018790555b85896002015414613c395760088901805460ff19166001179055600289018690555b84896003015414613c5b5760088901805460ff19166001179055600389018590555b83896004015414613c7d5760088901805460ff19166001179055600489018490555b82896005015414613c9f5760088901805460ff19166001179055600589018390555b81896006015414613cc15760088901805460ff19166001179055600689018290555b805160078a015414613cf7578051613ce29060078b019060208401906144a3565b5060088901805460ff19166001179055613db6565b60005b8151811015613db457818181518110613d0f57fe5b60200260200101516001600160a01b03168a6007018281548110613d2f57fe5b6000918252602090912001546001600160a01b031614613dac5760088a01805460ff191660011790558151829082908110613d6657fe5b60200260200101518a6007018281548110613d7d57fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055505b600101613cfa565b505b5050506008909501805461ff0019166101001790555050505050565b60007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000420381613e1f57fe5b04905090565b806001600160a01b031663555989da6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015613e6057600080fd5b505af1158015613e74573d6000803e3d6000fd5b5050506001600160a01b0382166000908152601c60209081526040808320805460ff199081169091556016835281842080548216905560159092529091208054909116905550613eca613ec5612abc565b61433d565b7fa0985424f2efdcae4b57a7c84bbf0a0b19f93054f21e9eb1cfcd5a59813fe1da8160006040516124d3929190614ee9565b805160005b81811015613f7e5760156000848381518110613f1957fe5b6020908102919091018101516001600160a01b031682528101919091526040016000205460ff16613f76576040518060600160405280602681526020016152a16026913960405162461bcd60e51b8152600401610b069190614f43565b600101613f01565b505050565b7f79f4c7cc43bfb79f5a3aad0d92f75b6fed7db061bb5cc2580a01c8132711b881826011546001604051613fb993929190614f04565b60405180910390a1613fcb828261175a565b61148282614021565b7f0000000000000000000000000000000000000000000000000000000000000000600182017f00000000000000000000000000000000000000000000000000000000000000000201919050565b601154604051639de6f92760e01b81526001600160a01b03831691639de6f9279161404f9190600401614f78565b600060405180830381600087803b15801561406957600080fd5b505af192505050801561407a575060015b61069b576140866150e2565b80614091575061409b565b61383782826143a1565b6138a3816040518060600160405280602b81526020016151e4602b91396143a1565b7f61156899176547b8075bfa81fa2996c6057ce9c71320884b11c0179d9dc2e462826140e7613dd2565b6040516140f5929190614cf2565b60405180910390a1614107828261175a565b601b54600160a81b900460ff168061413757506001600160a01b0382166000908152601c602052604090205460ff165b15614164576001600160a01b0382166000908152601660205260409020805460ff19166001179055611482565b60405163f670ebe360e01b81526001600160a01b0383169063f670ebe39061419490600090600190600401614f33565b600060405180830381600087803b1580156141ae57600080fd5b505af19250505080156141bf575060015b611482576141cb6150e2565b806141d65750614249565b6001600160a01b0383166000908152601660205260409020805460ff191660011790557f61156899176547b8075bfa81fa2996c6057ce9c71320884b11c0179d9dc2e46283614223613dd2565b604051614231929190614cf2565b60405180910390a1614243838261175a565b50613704565b6001600160a01b0382166000908152601660205260409020805460ff191660011790557f61156899176547b8075bfa81fa2996c6057ce9c71320884b11c0179d9dc2e46282614296613dd2565b6040516142a4929190614cf2565b60405180910390a1613704826040518060600160405280602c8152602001615252602c913961175a565b7f0000000000000000000000000000000000000000000000000000000000000000600182017f000000000000000000000000000000000000000000000000000000000000000002017f000000000000000000000000000000000000000000000000000000000000000001919050565b805160005b81811015613f7e5761439983828151811061435957fe5b60200260200101516001600160a01b03166318931c356040518163ffffffff1660e01b815260040160006040518083038186803b15801561257857600080fd5b600101614342565b7f79f4c7cc43bfb79f5a3aad0d92f75b6fed7db061bb5cc2580a01c8132711b8818260115460026040516143d793929190614f04565b60405180910390a16143e9828261175a565b60115460405163974d7a6b60e01b81526001600160a01b0384169163974d7a6b916109689190600401614f78565b828054600181600116156101000203166002900490600052602060002090601f01602090048101928261444d5760008555614493565b82601f1061446657805160ff1916838001178555614493565b82800160010185558215614493579182015b82811115614493578251825591602001919060010190614478565b5061449f9291506144f8565b5090565b828054828255906000526020600020908101928215614493579160200282015b8281111561449357825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906144c3565b5b8082111561449f57600081556001016144f9565b600082601f83011261451d578081fd5b8151602061453261452d83615072565b61504f565b828152818101908583018385028701840188101561454e578586fd5b855b8581101561456c57815184529284019290840190600101614550565b5090979650505050505050565b8035801515811461241257600080fd5b600082601f830112614599578081fd5b81516145a761452d8261508f565b8181528460208386010111156145bb578283fd5b6145cc8260208301602087016150b0565b949350505050565b6000602082840312156145e5578081fd5b81356145f081615186565b9392505050565b60008060408385031215614609578081fd5b823561461481615186565b915060208301356001600160401b0381111561462e578182fd5b8301601f8101851361463e578182fd5b803561464c61452d8261508f565b818152866020838501011115614660578384fd5b81602084016020830137908101602001929092525090939092509050565b600080600060608486031215614692578081fd5b83516001600160401b03808211156146a8578283fd5b818601915086601f8301126146bb578283fd5b815160206146cb61452d83615072565b82815281810190858301838502870184018c10156146e7578788fd5b8796505b848710156147125780516146fe81615186565b8352600196909601959183019183016146eb565b509189015191975090935050508082111561472b578283fd5b506147388682870161450d565b925050604084015190509250925092565b6000602080838503121561475b578182fd5b82516001600160401b03811115614770578283fd5b8301601f81018513614780578283fd5b805161478e61452d82615072565b81815283810190838501858402850186018910156147aa578687fd5b8694505b838510156147d55780516147c181615186565b8352600194909401939185019185016147ae565b50979650505050505050565b600060208083850312156147f3578182fd5b82516001600160401b03811115614808578283fd5b8301601f81018513614818578283fd5b805161482661452d82615072565b81815283810190838501865b8481101561485b576148498a888451890101614589565b84529286019290860190600101614832565b509098975050505050505050565b60006020828403121561487a578081fd5b6145f082614579565b600080600080600060a0868803121561489a578283fd5b85356148a581615186565b945060208601356148b581615186565b935060408601356148c581615186565b925060608601356148d581615186565b915060808601356148e581615186565b809150509295509295909350565b60008060408385031215614905578182fd5b823561491081615186565b91506020838101356001600160401b0381111561492b578283fd5b8401601f8101861361493b578283fd5b803561494961452d82615072565b81815283810190838501858402850186018a1015614965578687fd5b8694505b8385101561499057803561497c81615186565b835260019490940193918501918501614969565b5080955050505050509250929050565b600080604083850312156149b2578182fd5b82356149bd81615186565b91506149cb60208401614579565b90509250929050565b600080600080608085870312156149e9578182fd5b84356149f481615186565b93506020850135614a0481615186565b9250614a1260408601614579565b9150614a2060608601614579565b905092959194509250565b60008060408385031215614a3d578182fd5b8235614a4881615186565b91506020830135614a5881615186565b809150509250929050565b600060208284031215614a74578081fd5b81516145f081615186565b600060208284031215614a90578081fd5b81516001600160401b03811115614aa5578182fd5b6145cc84828501614589565b600060208284031215614ac2578081fd5b5035919050565b600060208284031215614ada578081fd5b5051919050565b60008060408385031215614af3578182fd5b50508035926020909101359150565b60008060408385031215614b14578182fd5b505080516020909101519092909150565b600080600080600080600080610100898b031215614b41578586fd5b883597506020808a0135975060408a0135965060608a0135955060808a0135945060a08a0135935060c08a0135925060e08a01356001600160401b03811115614b88578283fd5b8a01601f81018c13614b98578283fd5b8035614ba661452d82615072565b8082825284820191508484018f868786028701011115614bc4578687fd5b8694505b83851015614bef578035614bdb81615186565b835260019490940193918501918501614bc8565b5080955050505050509295985092959890939650565b6000815180845260208085019450808401835b83811015614c3d5781516001600160a01b031687529582019590820190600101614c18565b509495945050505050565b6000815480845260208085019450838352808320835b83811015614c3d5781546001600160a01b031687529582019560019182019101614c5e565b6000815180845260208085019450808401835b83811015614c3d57815187529582019590820190600101614c96565b60008151808452614cca8160208601602086016150b0565b601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b03831681526040602082018190526000906145cc90830184614cb2565b600060018060a01b038516825283602083015260606040830152614d566060830184614cb2565b95945050505050565b6000610120808352614d738184018d614c05565b90508281036020840152614d87818c614c83565b604084019a909a52505060608101969096526001600160a01b0394909416608086015260a085019290925260c084015260e08301526101009091015292915050565b6000602082526145f06020830184614c48565b6000602082526145f06020830184614c05565b600060a08252614e0260a0830188614c83565b602083820381850152614e158289614c83565b848103604086015287518082529092508183019082810284018301838a01865b83811015614e6357601f19878403018552614e51838351614cb2565b94860194925090850190600101614e35565b50508681036060880152614e77818a614c05565b955050505050508260808301529695505050505050565b901515815260200190565b600084151582526020606081840152614eb56060840186614c05565b8381036040850152845180825282860191830190845b8181101561485b578351151583529284019291840191600101614ecb565b6001600160a01b039290921682521515602082015260400190565b6001600160a01b0384168152602081018390526060810160068310614f2557fe5b826040830152949350505050565b9182521515602082015260400190565b6000602082526145f06020830184614cb2565b6001600160c01b039290921682526001600160401b0316602082015260400190565b90815260200190565b918252602082015260400190565b9283526020830191909152604082015260600190565b948552602085019390935260408401919091526060830152608082015260a00190565b60008882528760208301528660408301528560608301528460808301528360a083015260e060c0830152614fff60e0830184614c48565b9998505050505050505050565b988952602089019790975260408801959095526060870193909352608086019190915260a085015260c0840152151560e083015215156101008201526101200190565b6040518181016001600160401b038111828210171561506a57fe5b604052919050565b60006001600160401b0382111561508557fe5b5060209081020190565b60006001600160401b038211156150a257fe5b50601f01601f191660200190565b60005b838110156150cb5781810151838201526020016150b3565b83811115612cab5750506000910152565b60e01c90565b600060443d10156150f257610565565b600481823e6308c379a061510682516150dc565b1461511057610565565b6040513d600319016004823e80513d6001600160401b03816024840111818411171561513f5750505050610565565b828401925082519150808211156151595750505050610565565b503d8301602082840101111561517157505050610565565b601f01601f1916810160200160405291505090565b6001600160a01b038116811461069b57600080fdfe4d6178207472757374656420616464726573736573206c656e677468206578636565646564756e6b6e6f776e206661696c2e2073657474696e6720636c65616e757020626c6f636b756e6b6e6f776e206661696c2e2066616c6c6261636b2066696e616c697a652070726963652065706f6368756e6b6e6f776e206661696c2e2066696e616c697a652070726963652065706f6368556e6b6e6f776e206661696c207768656e20636c6f73696e672065787069726564756e6b6e6f776e206661696c2e2066616c6c6261636b20696e69742065706f636820666f722072657665616c756e6b6e6f776e206661696c2e20696e69742065706f636820666f722072657665616c4173736574204654534f206e6f74206d616e61676564206279206674736f206d616e61676572a264697066735822122037183781e849483e9668a37b1936a2cb6baa0cbe644df48f79b1a41c4081783464736f6c63430007060033",
1109
+ "linkReferences": {},
1110
+ "deployedLinkReferences": {}
1111
+ }