@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,955 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "Ftso",
4
+ "sourceName": "contracts/ftso/implementation/Ftso.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "string",
10
+ "name": "_symbol",
11
+ "type": "string"
12
+ },
13
+ {
14
+ "internalType": "contract IPriceSubmitter",
15
+ "name": "_priceSubmitter",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "contract IIVPToken",
20
+ "name": "_wNat",
21
+ "type": "address"
22
+ },
23
+ {
24
+ "internalType": "contract IIFtsoManager",
25
+ "name": "_ftsoManager",
26
+ "type": "address"
27
+ },
28
+ {
29
+ "internalType": "uint256",
30
+ "name": "_initialPriceUSD",
31
+ "type": "uint256"
32
+ },
33
+ {
34
+ "internalType": "uint256",
35
+ "name": "_priceDeviationThresholdBIPS",
36
+ "type": "uint256"
37
+ },
38
+ {
39
+ "internalType": "uint256",
40
+ "name": "_cyclicBufferSize",
41
+ "type": "uint256"
42
+ }
43
+ ],
44
+ "stateMutability": "nonpayable",
45
+ "type": "constructor"
46
+ },
47
+ {
48
+ "anonymous": false,
49
+ "inputs": [
50
+ {
51
+ "indexed": true,
52
+ "internalType": "uint256",
53
+ "name": "epochId",
54
+ "type": "uint256"
55
+ },
56
+ {
57
+ "indexed": false,
58
+ "internalType": "uint256",
59
+ "name": "natTurnout",
60
+ "type": "uint256"
61
+ },
62
+ {
63
+ "indexed": false,
64
+ "internalType": "uint256",
65
+ "name": "lowNatTurnoutThresholdBIPS",
66
+ "type": "uint256"
67
+ },
68
+ {
69
+ "indexed": false,
70
+ "internalType": "uint256",
71
+ "name": "timestamp",
72
+ "type": "uint256"
73
+ }
74
+ ],
75
+ "name": "LowTurnout",
76
+ "type": "event"
77
+ },
78
+ {
79
+ "anonymous": false,
80
+ "inputs": [
81
+ {
82
+ "indexed": true,
83
+ "internalType": "uint256",
84
+ "name": "epochId",
85
+ "type": "uint256"
86
+ },
87
+ {
88
+ "indexed": false,
89
+ "internalType": "uint256",
90
+ "name": "endTime",
91
+ "type": "uint256"
92
+ },
93
+ {
94
+ "indexed": false,
95
+ "internalType": "uint256",
96
+ "name": "timestamp",
97
+ "type": "uint256"
98
+ }
99
+ ],
100
+ "name": "PriceEpochInitializedOnFtso",
101
+ "type": "event"
102
+ },
103
+ {
104
+ "anonymous": false,
105
+ "inputs": [
106
+ {
107
+ "indexed": true,
108
+ "internalType": "uint256",
109
+ "name": "epochId",
110
+ "type": "uint256"
111
+ },
112
+ {
113
+ "indexed": false,
114
+ "internalType": "uint256",
115
+ "name": "price",
116
+ "type": "uint256"
117
+ },
118
+ {
119
+ "indexed": false,
120
+ "internalType": "bool",
121
+ "name": "rewardedFtso",
122
+ "type": "bool"
123
+ },
124
+ {
125
+ "indexed": false,
126
+ "internalType": "uint256",
127
+ "name": "lowRewardPrice",
128
+ "type": "uint256"
129
+ },
130
+ {
131
+ "indexed": false,
132
+ "internalType": "uint256",
133
+ "name": "highRewardPrice",
134
+ "type": "uint256"
135
+ },
136
+ {
137
+ "indexed": false,
138
+ "internalType": "enum IFtso.PriceFinalizationType",
139
+ "name": "finalizationType",
140
+ "type": "uint8"
141
+ },
142
+ {
143
+ "indexed": false,
144
+ "internalType": "uint256",
145
+ "name": "timestamp",
146
+ "type": "uint256"
147
+ }
148
+ ],
149
+ "name": "PriceFinalized",
150
+ "type": "event"
151
+ },
152
+ {
153
+ "anonymous": false,
154
+ "inputs": [
155
+ {
156
+ "indexed": true,
157
+ "internalType": "address",
158
+ "name": "submitter",
159
+ "type": "address"
160
+ },
161
+ {
162
+ "indexed": true,
163
+ "internalType": "uint256",
164
+ "name": "epochId",
165
+ "type": "uint256"
166
+ },
167
+ {
168
+ "indexed": false,
169
+ "internalType": "bytes32",
170
+ "name": "hash",
171
+ "type": "bytes32"
172
+ },
173
+ {
174
+ "indexed": false,
175
+ "internalType": "uint256",
176
+ "name": "timestamp",
177
+ "type": "uint256"
178
+ }
179
+ ],
180
+ "name": "PriceHashSubmitted",
181
+ "type": "event"
182
+ },
183
+ {
184
+ "anonymous": false,
185
+ "inputs": [
186
+ {
187
+ "indexed": true,
188
+ "internalType": "address",
189
+ "name": "voter",
190
+ "type": "address"
191
+ },
192
+ {
193
+ "indexed": true,
194
+ "internalType": "uint256",
195
+ "name": "epochId",
196
+ "type": "uint256"
197
+ },
198
+ {
199
+ "indexed": false,
200
+ "internalType": "uint256",
201
+ "name": "price",
202
+ "type": "uint256"
203
+ },
204
+ {
205
+ "indexed": false,
206
+ "internalType": "uint256",
207
+ "name": "random",
208
+ "type": "uint256"
209
+ },
210
+ {
211
+ "indexed": false,
212
+ "internalType": "uint256",
213
+ "name": "timestamp",
214
+ "type": "uint256"
215
+ },
216
+ {
217
+ "indexed": false,
218
+ "internalType": "uint256",
219
+ "name": "votePowerNat",
220
+ "type": "uint256"
221
+ },
222
+ {
223
+ "indexed": false,
224
+ "internalType": "uint256",
225
+ "name": "votePowerAsset",
226
+ "type": "uint256"
227
+ }
228
+ ],
229
+ "name": "PriceRevealed",
230
+ "type": "event"
231
+ },
232
+ {
233
+ "inputs": [],
234
+ "name": "ASSET_PRICE_USD_DECIMALS",
235
+ "outputs": [
236
+ {
237
+ "internalType": "uint256",
238
+ "name": "",
239
+ "type": "uint256"
240
+ }
241
+ ],
242
+ "stateMutability": "view",
243
+ "type": "function"
244
+ },
245
+ {
246
+ "inputs": [
247
+ {
248
+ "internalType": "uint256",
249
+ "name": "_firstEpochStartTime",
250
+ "type": "uint256"
251
+ },
252
+ {
253
+ "internalType": "uint256",
254
+ "name": "_submitPeriod",
255
+ "type": "uint256"
256
+ },
257
+ {
258
+ "internalType": "uint256",
259
+ "name": "_revealPeriod",
260
+ "type": "uint256"
261
+ }
262
+ ],
263
+ "name": "activateFtso",
264
+ "outputs": [],
265
+ "stateMutability": "nonpayable",
266
+ "type": "function"
267
+ },
268
+ {
269
+ "inputs": [],
270
+ "name": "active",
271
+ "outputs": [
272
+ {
273
+ "internalType": "bool",
274
+ "name": "",
275
+ "type": "bool"
276
+ }
277
+ ],
278
+ "stateMutability": "view",
279
+ "type": "function"
280
+ },
281
+ {
282
+ "inputs": [
283
+ {
284
+ "internalType": "uint256",
285
+ "name": "",
286
+ "type": "uint256"
287
+ }
288
+ ],
289
+ "name": "assetFtsos",
290
+ "outputs": [
291
+ {
292
+ "internalType": "contract IIFtso",
293
+ "name": "",
294
+ "type": "address"
295
+ }
296
+ ],
297
+ "stateMutability": "view",
298
+ "type": "function"
299
+ },
300
+ {
301
+ "inputs": [
302
+ {
303
+ "internalType": "uint256",
304
+ "name": "",
305
+ "type": "uint256"
306
+ }
307
+ ],
308
+ "name": "assets",
309
+ "outputs": [
310
+ {
311
+ "internalType": "contract IIVPToken",
312
+ "name": "",
313
+ "type": "address"
314
+ }
315
+ ],
316
+ "stateMutability": "view",
317
+ "type": "function"
318
+ },
319
+ {
320
+ "inputs": [
321
+ {
322
+ "internalType": "uint256",
323
+ "name": "_epochId",
324
+ "type": "uint256"
325
+ }
326
+ ],
327
+ "name": "averageFinalizePriceEpoch",
328
+ "outputs": [],
329
+ "stateMutability": "nonpayable",
330
+ "type": "function"
331
+ },
332
+ {
333
+ "inputs": [
334
+ {
335
+ "internalType": "uint256",
336
+ "name": "_maxVotePowerNatThresholdFraction",
337
+ "type": "uint256"
338
+ },
339
+ {
340
+ "internalType": "uint256",
341
+ "name": "_maxVotePowerAssetThresholdFraction",
342
+ "type": "uint256"
343
+ },
344
+ {
345
+ "internalType": "uint256",
346
+ "name": "_lowAssetUSDThreshold",
347
+ "type": "uint256"
348
+ },
349
+ {
350
+ "internalType": "uint256",
351
+ "name": "_highAssetUSDThreshold",
352
+ "type": "uint256"
353
+ },
354
+ {
355
+ "internalType": "uint256",
356
+ "name": "_highAssetTurnoutThresholdBIPS",
357
+ "type": "uint256"
358
+ },
359
+ {
360
+ "internalType": "uint256",
361
+ "name": "_lowNatTurnoutThresholdBIPS",
362
+ "type": "uint256"
363
+ },
364
+ {
365
+ "internalType": "address[]",
366
+ "name": "_trustedAddresses",
367
+ "type": "address[]"
368
+ }
369
+ ],
370
+ "name": "configureEpochs",
371
+ "outputs": [],
372
+ "stateMutability": "nonpayable",
373
+ "type": "function"
374
+ },
375
+ {
376
+ "inputs": [],
377
+ "name": "deactivateFtso",
378
+ "outputs": [],
379
+ "stateMutability": "nonpayable",
380
+ "type": "function"
381
+ },
382
+ {
383
+ "inputs": [],
384
+ "name": "epochsConfiguration",
385
+ "outputs": [
386
+ {
387
+ "internalType": "uint256",
388
+ "name": "_maxVotePowerNatThresholdFraction",
389
+ "type": "uint256"
390
+ },
391
+ {
392
+ "internalType": "uint256",
393
+ "name": "_maxVotePowerAssetThresholdFraction",
394
+ "type": "uint256"
395
+ },
396
+ {
397
+ "internalType": "uint256",
398
+ "name": "_lowAssetUSDThreshold",
399
+ "type": "uint256"
400
+ },
401
+ {
402
+ "internalType": "uint256",
403
+ "name": "_highAssetUSDThreshold",
404
+ "type": "uint256"
405
+ },
406
+ {
407
+ "internalType": "uint256",
408
+ "name": "_highAssetTurnoutThresholdBIPS",
409
+ "type": "uint256"
410
+ },
411
+ {
412
+ "internalType": "uint256",
413
+ "name": "_lowNatTurnoutThresholdBIPS",
414
+ "type": "uint256"
415
+ },
416
+ {
417
+ "internalType": "address[]",
418
+ "name": "_trustedAddresses",
419
+ "type": "address[]"
420
+ }
421
+ ],
422
+ "stateMutability": "view",
423
+ "type": "function"
424
+ },
425
+ {
426
+ "inputs": [
427
+ {
428
+ "internalType": "uint256",
429
+ "name": "_epochId",
430
+ "type": "uint256"
431
+ },
432
+ {
433
+ "internalType": "bool",
434
+ "name": "_returnRewardData",
435
+ "type": "bool"
436
+ }
437
+ ],
438
+ "name": "finalizePriceEpoch",
439
+ "outputs": [
440
+ {
441
+ "internalType": "address[]",
442
+ "name": "_eligibleAddresses",
443
+ "type": "address[]"
444
+ },
445
+ {
446
+ "internalType": "uint256[]",
447
+ "name": "_natWeights",
448
+ "type": "uint256[]"
449
+ },
450
+ {
451
+ "internalType": "uint256",
452
+ "name": "_natWeightsSum",
453
+ "type": "uint256"
454
+ }
455
+ ],
456
+ "stateMutability": "nonpayable",
457
+ "type": "function"
458
+ },
459
+ {
460
+ "inputs": [
461
+ {
462
+ "internalType": "uint256",
463
+ "name": "_epochId",
464
+ "type": "uint256"
465
+ }
466
+ ],
467
+ "name": "forceFinalizePriceEpoch",
468
+ "outputs": [],
469
+ "stateMutability": "nonpayable",
470
+ "type": "function"
471
+ },
472
+ {
473
+ "inputs": [],
474
+ "name": "ftsoManager",
475
+ "outputs": [
476
+ {
477
+ "internalType": "contract IIFtsoManager",
478
+ "name": "",
479
+ "type": "address"
480
+ }
481
+ ],
482
+ "stateMutability": "view",
483
+ "type": "function"
484
+ },
485
+ {
486
+ "inputs": [],
487
+ "name": "getAsset",
488
+ "outputs": [
489
+ {
490
+ "internalType": "contract IIVPToken",
491
+ "name": "",
492
+ "type": "address"
493
+ }
494
+ ],
495
+ "stateMutability": "view",
496
+ "type": "function"
497
+ },
498
+ {
499
+ "inputs": [],
500
+ "name": "getAssetFtsos",
501
+ "outputs": [
502
+ {
503
+ "internalType": "contract IIFtso[]",
504
+ "name": "",
505
+ "type": "address[]"
506
+ }
507
+ ],
508
+ "stateMutability": "view",
509
+ "type": "function"
510
+ },
511
+ {
512
+ "inputs": [],
513
+ "name": "getCurrentEpochId",
514
+ "outputs": [
515
+ {
516
+ "internalType": "uint256",
517
+ "name": "",
518
+ "type": "uint256"
519
+ }
520
+ ],
521
+ "stateMutability": "view",
522
+ "type": "function"
523
+ },
524
+ {
525
+ "inputs": [],
526
+ "name": "getCurrentPrice",
527
+ "outputs": [
528
+ {
529
+ "internalType": "uint256",
530
+ "name": "_price",
531
+ "type": "uint256"
532
+ },
533
+ {
534
+ "internalType": "uint256",
535
+ "name": "_timestamp",
536
+ "type": "uint256"
537
+ }
538
+ ],
539
+ "stateMutability": "view",
540
+ "type": "function"
541
+ },
542
+ {
543
+ "inputs": [],
544
+ "name": "getCurrentRandom",
545
+ "outputs": [
546
+ {
547
+ "internalType": "uint256",
548
+ "name": "",
549
+ "type": "uint256"
550
+ }
551
+ ],
552
+ "stateMutability": "view",
553
+ "type": "function"
554
+ },
555
+ {
556
+ "inputs": [
557
+ {
558
+ "internalType": "uint256",
559
+ "name": "_timestamp",
560
+ "type": "uint256"
561
+ }
562
+ ],
563
+ "name": "getEpochId",
564
+ "outputs": [
565
+ {
566
+ "internalType": "uint256",
567
+ "name": "",
568
+ "type": "uint256"
569
+ }
570
+ ],
571
+ "stateMutability": "view",
572
+ "type": "function"
573
+ },
574
+ {
575
+ "inputs": [
576
+ {
577
+ "internalType": "uint256",
578
+ "name": "_epochId",
579
+ "type": "uint256"
580
+ }
581
+ ],
582
+ "name": "getEpochPrice",
583
+ "outputs": [
584
+ {
585
+ "internalType": "uint256",
586
+ "name": "",
587
+ "type": "uint256"
588
+ }
589
+ ],
590
+ "stateMutability": "view",
591
+ "type": "function"
592
+ },
593
+ {
594
+ "inputs": [
595
+ {
596
+ "internalType": "uint256",
597
+ "name": "_epochId",
598
+ "type": "uint256"
599
+ },
600
+ {
601
+ "internalType": "address",
602
+ "name": "_voter",
603
+ "type": "address"
604
+ }
605
+ ],
606
+ "name": "getEpochPriceForVoter",
607
+ "outputs": [
608
+ {
609
+ "internalType": "uint256",
610
+ "name": "",
611
+ "type": "uint256"
612
+ }
613
+ ],
614
+ "stateMutability": "view",
615
+ "type": "function"
616
+ },
617
+ {
618
+ "inputs": [],
619
+ "name": "getPriceEpochConfiguration",
620
+ "outputs": [
621
+ {
622
+ "internalType": "uint256",
623
+ "name": "_firstEpochStartTime",
624
+ "type": "uint256"
625
+ },
626
+ {
627
+ "internalType": "uint256",
628
+ "name": "_submitPeriod",
629
+ "type": "uint256"
630
+ },
631
+ {
632
+ "internalType": "uint256",
633
+ "name": "_revealPeriod",
634
+ "type": "uint256"
635
+ }
636
+ ],
637
+ "stateMutability": "view",
638
+ "type": "function"
639
+ },
640
+ {
641
+ "inputs": [],
642
+ "name": "getPriceEpochData",
643
+ "outputs": [
644
+ {
645
+ "internalType": "uint256",
646
+ "name": "_epochId",
647
+ "type": "uint256"
648
+ },
649
+ {
650
+ "internalType": "uint256",
651
+ "name": "_epochSubmitEndTime",
652
+ "type": "uint256"
653
+ },
654
+ {
655
+ "internalType": "uint256",
656
+ "name": "_epochRevealEndTime",
657
+ "type": "uint256"
658
+ },
659
+ {
660
+ "internalType": "uint256",
661
+ "name": "_votePowerBlock",
662
+ "type": "uint256"
663
+ },
664
+ {
665
+ "internalType": "bool",
666
+ "name": "_fallbackMode",
667
+ "type": "bool"
668
+ }
669
+ ],
670
+ "stateMutability": "view",
671
+ "type": "function"
672
+ },
673
+ {
674
+ "inputs": [
675
+ {
676
+ "internalType": "uint256",
677
+ "name": "_epochId",
678
+ "type": "uint256"
679
+ }
680
+ ],
681
+ "name": "getRandom",
682
+ "outputs": [
683
+ {
684
+ "internalType": "uint256",
685
+ "name": "",
686
+ "type": "uint256"
687
+ }
688
+ ],
689
+ "stateMutability": "view",
690
+ "type": "function"
691
+ },
692
+ {
693
+ "inputs": [],
694
+ "name": "getVoteWeightingParameters",
695
+ "outputs": [
696
+ {
697
+ "internalType": "contract IIVPToken[]",
698
+ "name": "_assets",
699
+ "type": "address[]"
700
+ },
701
+ {
702
+ "internalType": "uint256[]",
703
+ "name": "_assetMultipliers",
704
+ "type": "uint256[]"
705
+ },
706
+ {
707
+ "internalType": "uint256",
708
+ "name": "_totalVotePowerNat",
709
+ "type": "uint256"
710
+ },
711
+ {
712
+ "internalType": "uint256",
713
+ "name": "_totalVotePowerAsset",
714
+ "type": "uint256"
715
+ },
716
+ {
717
+ "internalType": "uint256",
718
+ "name": "_assetWeightRatio",
719
+ "type": "uint256"
720
+ },
721
+ {
722
+ "internalType": "uint256",
723
+ "name": "_votePowerBlock",
724
+ "type": "uint256"
725
+ }
726
+ ],
727
+ "stateMutability": "view",
728
+ "type": "function"
729
+ },
730
+ {
731
+ "inputs": [
732
+ {
733
+ "internalType": "uint256",
734
+ "name": "_circulatingSupplyNat",
735
+ "type": "uint256"
736
+ },
737
+ {
738
+ "internalType": "bool",
739
+ "name": "_fallbackMode",
740
+ "type": "bool"
741
+ }
742
+ ],
743
+ "name": "initializeCurrentEpochStateForReveal",
744
+ "outputs": [],
745
+ "stateMutability": "nonpayable",
746
+ "type": "function"
747
+ },
748
+ {
749
+ "inputs": [],
750
+ "name": "priceDeviationThresholdBIPS",
751
+ "outputs": [
752
+ {
753
+ "internalType": "uint256",
754
+ "name": "",
755
+ "type": "uint256"
756
+ }
757
+ ],
758
+ "stateMutability": "view",
759
+ "type": "function"
760
+ },
761
+ {
762
+ "inputs": [],
763
+ "name": "priceEpochCyclicBufferSize",
764
+ "outputs": [
765
+ {
766
+ "internalType": "uint256",
767
+ "name": "",
768
+ "type": "uint256"
769
+ }
770
+ ],
771
+ "stateMutability": "view",
772
+ "type": "function"
773
+ },
774
+ {
775
+ "inputs": [],
776
+ "name": "priceSubmitter",
777
+ "outputs": [
778
+ {
779
+ "internalType": "contract IPriceSubmitter",
780
+ "name": "",
781
+ "type": "address"
782
+ }
783
+ ],
784
+ "stateMutability": "view",
785
+ "type": "function"
786
+ },
787
+ {
788
+ "inputs": [
789
+ {
790
+ "internalType": "address",
791
+ "name": "_voter",
792
+ "type": "address"
793
+ },
794
+ {
795
+ "internalType": "uint256",
796
+ "name": "_epochId",
797
+ "type": "uint256"
798
+ },
799
+ {
800
+ "internalType": "uint256",
801
+ "name": "_price",
802
+ "type": "uint256"
803
+ },
804
+ {
805
+ "internalType": "uint256",
806
+ "name": "_random",
807
+ "type": "uint256"
808
+ },
809
+ {
810
+ "internalType": "uint256",
811
+ "name": "_voterWNatVP",
812
+ "type": "uint256"
813
+ }
814
+ ],
815
+ "name": "revealPriceSubmitter",
816
+ "outputs": [],
817
+ "stateMutability": "nonpayable",
818
+ "type": "function"
819
+ },
820
+ {
821
+ "inputs": [
822
+ {
823
+ "internalType": "contract IIVPToken",
824
+ "name": "_asset",
825
+ "type": "address"
826
+ }
827
+ ],
828
+ "name": "setAsset",
829
+ "outputs": [],
830
+ "stateMutability": "nonpayable",
831
+ "type": "function"
832
+ },
833
+ {
834
+ "inputs": [
835
+ {
836
+ "internalType": "contract IIFtso[]",
837
+ "name": "_assetFtsos",
838
+ "type": "address[]"
839
+ }
840
+ ],
841
+ "name": "setAssetFtsos",
842
+ "outputs": [],
843
+ "stateMutability": "nonpayable",
844
+ "type": "function"
845
+ },
846
+ {
847
+ "inputs": [
848
+ {
849
+ "internalType": "uint256",
850
+ "name": "_votePowerBlock",
851
+ "type": "uint256"
852
+ }
853
+ ],
854
+ "name": "setVotePowerBlock",
855
+ "outputs": [],
856
+ "stateMutability": "nonpayable",
857
+ "type": "function"
858
+ },
859
+ {
860
+ "inputs": [
861
+ {
862
+ "internalType": "address",
863
+ "name": "_sender",
864
+ "type": "address"
865
+ },
866
+ {
867
+ "internalType": "uint256",
868
+ "name": "_epochId",
869
+ "type": "uint256"
870
+ },
871
+ {
872
+ "internalType": "bytes32",
873
+ "name": "_hash",
874
+ "type": "bytes32"
875
+ }
876
+ ],
877
+ "name": "submitPriceHashSubmitter",
878
+ "outputs": [],
879
+ "stateMutability": "nonpayable",
880
+ "type": "function"
881
+ },
882
+ {
883
+ "inputs": [],
884
+ "name": "symbol",
885
+ "outputs": [
886
+ {
887
+ "internalType": "string",
888
+ "name": "",
889
+ "type": "string"
890
+ }
891
+ ],
892
+ "stateMutability": "view",
893
+ "type": "function"
894
+ },
895
+ {
896
+ "inputs": [
897
+ {
898
+ "internalType": "uint256",
899
+ "name": "_initialPriceUSD",
900
+ "type": "uint256"
901
+ },
902
+ {
903
+ "internalType": "uint256",
904
+ "name": "_initialPriceTimestamp",
905
+ "type": "uint256"
906
+ }
907
+ ],
908
+ "name": "updateInitialPrice",
909
+ "outputs": [],
910
+ "stateMutability": "nonpayable",
911
+ "type": "function"
912
+ },
913
+ {
914
+ "inputs": [],
915
+ "name": "wNat",
916
+ "outputs": [
917
+ {
918
+ "internalType": "contract IIVPToken",
919
+ "name": "",
920
+ "type": "address"
921
+ }
922
+ ],
923
+ "stateMutability": "view",
924
+ "type": "function"
925
+ },
926
+ {
927
+ "inputs": [
928
+ {
929
+ "internalType": "address",
930
+ "name": "_owner",
931
+ "type": "address"
932
+ },
933
+ {
934
+ "internalType": "uint256",
935
+ "name": "_epochId",
936
+ "type": "uint256"
937
+ }
938
+ ],
939
+ "name": "wNatVotePowerCached",
940
+ "outputs": [
941
+ {
942
+ "internalType": "uint256",
943
+ "name": "",
944
+ "type": "uint256"
945
+ }
946
+ ],
947
+ "stateMutability": "nonpayable",
948
+ "type": "function"
949
+ }
950
+ ],
951
+ "bytecode": "0x6101206040523480156200001257600080fd5b506040516200507a3803806200507a833981810160405260e08110156200003857600080fd5b81019080805160405193929190846401000000008211156200005957600080fd5b9083019060208201858111156200006f57600080fd5b82516401000000008111828201881017156200008a57600080fd5b82525081516020918201929091019080838360005b83811015620000b95781810151838201526020016200009f565b50505050905090810190601f168015620000e75780820380516001836020036101000a031916815260200191505b506040908152602082810151918301516060840151608085015160a086015160c09096015189519598509296509094909390926200012b916001918a01906200016c565b506001600160601b0319606096871b81166101005294861b851660c0529290941b90921660e0526002919091554260035560809190915260a0525062000218565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282620001a45760008555620001ef565b82601f10620001bf57805160ff1916838001178555620001ef565b82800160010185558215620001ef579182015b82811115620001ef578251825591602001919060010190620001d2565b50620001fd92915062000201565b5090565b5b80821115620001fd576000815560010162000202565b60805160a05160c05160601c60e05160601c6101005160601c614da6620002d460003980610bcb528061111a5280611e745250806109c252806109ef5280610c135280610d245280610ded52806110c45280611620528061168752806117b55280611a535280611af75280611d475250806114d152806116e15280611c0a5280611cfa525080610f4f52806118d152806119ea5280611aca5280611b375280612f72528061315d525080610f2452806117635250614da66000f3fe608060405234801561001057600080fd5b50600436106102275760003560e01c8063974d7a6b11610130578063d89601fd116100b8578063f025bf661161007c578063f025bf661461088f578063f670ebe314610897578063f72cab28146108bc578063f7dba1f5146108e8578063f937d6ad146109af57610227565b8063d89601fd146107a9578063e3749e0c146107b1578063e3b3a3b31461081c578063e536f39614610851578063eb91d37e1461086e57610227565b8063c5d8b9e7116100ff578063c5d8b9e714610715578063cc245ab514610741578063cd4b691414610749578063cf35bdd014610766578063d0d552dd1461078357610227565b8063974d7a6b146106cb5780639de6f927146106e85780639edbf00714610705578063a29a839f1461070d57610227565b80635303548b116101b35780636b52b242116101825780636b52b2421461054f5780637d1d6f1214610557578063826cc76b146105745780638357d08c1461059157806395d89b411461064e57610227565b80635303548b146104d2578063555989da1461050157806355f7b69b146105095780635c222bad1461054757610227565b806318931c35116101fa57806318931c351461033757806327bd2ad51461038f5780632f0a6f3c146103c1578063306ba253146103ea57806340462a2d1461040d57610227565b806302fb0c5e1461022c57806311a7aaaa14610248578063131fdee21461026c578063144e159114610311575b600080fd5b6102346109b7565b604080519115158252519081900360200190f35b6102506109c0565b604080516001600160a01b039092168252519081900360200190f35b61030f6004803603602081101561028257600080fd5b81019060208101813564010000000081111561029d57600080fd5b8201836020820111156102af57600080fd5b803590602001918460208302840111640100000000831117156102d157600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506109e4945050505050565b005b610319610ad9565b60408051938452602084019290925282820152519081900360600190f35b61033f610ae7565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561037b578181015183820152602001610363565b505050509050019250505060405180910390f35b61030f600480360360608110156103a557600080fd5b506001600160a01b038135169060208101359060400135610bae565b61030f600480360360608110156103d757600080fd5b5080359060208101359060400135610c08565b61030f6004803603604081101561040057600080fd5b5080359060200135610d19565b6104326004803603604081101561042357600080fd5b50803590602001351515610ddd565b604051808060200180602001848152602001838103835286818151815260200191508051906020019060200280838360005b8381101561047c578181015183820152602001610464565b50505050905001838103825285818151815260200191508051906020019060200280838360005b838110156104bb5781810151838201526020016104a3565b505050509050019550505050505060405180910390f35b6104ef600480360360208110156104e857600080fd5b5035611094565b60408051918252519081900360200190f35b61030f6110a7565b61030f600480360360a081101561051f57600080fd5b506001600160a01b0381351690602081013590604081013590606081013590608001356110fd565b61025061115b565b6104ef6111db565b6104ef6004803603602081101561056d57600080fd5b50356111e0565b6102506004803603602081101561058a57600080fd5b50356111f5565b61059961121f565b604051808060200180602001878152602001868152602001858152602001848152602001838103835289818151815260200191508051906020019060200280838360005b838110156105f55781810151838201526020016105dd565b50505050905001838103825288818151815260200191508051906020019060200280838360005b8381101561063457818101518382015260200161061c565b505050509050019850505050505050505060405180910390f35b610656611588565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610690578181015183820152602001610678565b50505050905090810190601f1680156106bd5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61030f600480360360208110156106e157600080fd5b5035611615565b61030f600480360360208110156106fe57600080fd5b503561167c565b6102506116df565b6104ef611703565b6104ef6004803603604081101561072b57600080fd5b50803590602001356001600160a01b031661170e565b6104ef611761565b6104ef6004803603602081101561075f57600080fd5b5035611785565b6102506004803603602081101561077c57600080fd5b503561179a565b61030f6004803603602081101561079957600080fd5b50356001600160a01b03166117aa565b6104ef6118af565b6107b9611915565b6040518088815260200187815260200186815260200185815260200184815260200183815260200180602001828103825283818151815260200191508051906020019060200280838360008381101561063457818101518382015260200161061c565b6108246119bc565b60408051958652602086019490945284840192909252606084015215156080830152519081900360a00190f35b61030f6004803603602081101561086757600080fd5b5035611a48565b610876611abe565b6040805192835260208301919091528051918290030190f35b6104ef611ac8565b61030f600480360360408110156108ad57600080fd5b50803590602001351515611aec565b6104ef600480360360408110156108d257600080fd5b506001600160a01b038135169060200135611cf3565b61030f600480360360e08110156108fe57600080fd5b81359160208101359160408201359160608101359160808201359160a08101359181019060e0810160c082013564010000000081111561093d57600080fd5b82018360208201111561094f57600080fd5b8035906020019184602083028401116401000000008311171561097157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550611d3c945050505050565b610250611e72565b60005460ff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a1c57610a1c611e96565b6000815111610a2757fe5b600181511180610a5d5750306001600160a01b031681600081518110610a4957fe5b60200260200101516001600160a01b031614155b610a6357fe5b8051610a76906015906020840190614b60565b5080516001600160401b0381118015610a8e57600080fd5b50604051908082528060200260200182016040528015610ab8578160200160208202803683370190505b508051610acd91601491602090910190614b60565b50610ad6611efe565b50565b600654600754600854909192565b6014546060906001148015610afe57506015546001145b8015610b345750306001600160a01b03166015600081548110610b1d57fe5b6000918252602090912001546001600160a01b0316145b610b98576015805480602002602001604051908101604052809291908181526020018280548015610b8e57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610b70575b5050505050610ba8565b6040805160008152602081019091525b90505b90565b60005460ff16610bc057610bc06120da565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610bf857610bf8611e96565b610c03838383612144565b505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610c4057610c40611e96565b600054604080518082019091526016815275119514d3c8185b1c9958591e481858dd1a5d985d195960521b60208201529060ff1615610cfd5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cc2578181015183820152602001610caa565b50505050905090810190601f168015610cef5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506006929092556007556008556000805460ff19166001179055565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610d5157610d51611e96565b600054604080518082019091526016815275119514d3c8185b1c9958591e481858dd1a5d985d195960521b60208201529060ff1615610dd15760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b50600291909155600355565b6060806000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610e1a57610e1a611e96565b6000610e25866122cf565b60018101805460ff60f01b19169055600581015490915060009015610e5d57816005015461271083600801540281610e5957fe5b0490505b6001820154600160f81b900460ff1680610e7b575081600401548111155b15610eee576001820154600160f81b900460ff16610edb57600482015460408051838152602081019290925242828201525188917fbece8aa526cdc5e528cdaa56c1d03edc19da51e41845aa146f64a7071f74c65a919081900360600190a25b610ee78783600061240b565b505061108d565b6060806060610efc85612575565b919450925090506060610f0d614bc1565b610f17858561270a565b61012081015191935091507f000000000000000000000000000000000000000000000000000000000000000090610f73906004908f907f0000000000000000000000000000000000000000000000000000000000000000612a28565b1115610f9157610f858c88600061240b565b5050505050505061108d565b60108701805460ff19166001179055610120810151600f88018190556002554260035560008b15610fdb57610fc888838587612ab4565b8251929d50909b50995015610fdb575060015b610fe78d838584612d70565b8c7ffe8865c1fe85bbf124b9e0f16cccfeeb6f330454fd79475a31261c8fa250bc3089600f0154838561014001518661016001518d60100160009054906101000a900460ff164260405180878152602001861515815260200185815260200184815260200183600581111561105857fe5b8152602001828152602001965050505050505060405180910390a2505050600190940180546001600160f81b03169055505050505b9250925092565b60006110a1600483612d76565b92915050565b60005460ff166110b9576110b96120da565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146110f1576110f1611e96565b6000805460ff19169055565b60005460ff1661110f5761110f6120da565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461114757611147611e96565b6111548585858585612da7565b5050505050565b601454600090600114801561117257506015546001145b80156111a85750306001600160a01b0316601560008154811061119157fe5b6000918252602090912001546001600160a01b0316145b6111b3576000610ba8565b60146000815481106111c157fe5b6000918252602090912001546001600160a01b0316905090565b600581565b60006111eb82613156565b600f015492915050565b6015818154811061120557600080fd5b6000918252602090912001546001600160a01b0316905081565b606080600080600080601480548060200260200160405190810160405280929190818152602001828054801561127e57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611260575b50506009548451949a506001600160f01b031694506000939250506001600160401b038211905080156112b057600080fd5b506040519080825280602002602001820160405280156112da578160200160208202803683370190505b509050600087516001600160401b03811180156112f657600080fd5b50604051908082528060200260200182016040528015611320578160200160208202803683370190505b50905060005b88518110156114af5760006001600160a01b031689828151811061134657fe5b60200260200101516001600160a01b031614156113645760006113e8565b88818151811061137057fe5b60200260200101516001600160a01b0316633e5aa26a856040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156113bb57600080fd5b505afa1580156113cf573d6000803e3d6000fd5b505050506040513d60208110156113e557600080fd5b50515b8382815181106113f457fe5b6020026020010181815250506015818154811061140d57fe5b9060005260206000200160009054906101000a90046001600160a01b03166001600160a01b031663eb91d37e6040518163ffffffff1660e01b8152600401604080518083038186803b15801561146257600080fd5b505afa158015611476573d6000803e3d6000fd5b505050506040513d604081101561148c57600080fd5b5051825183908390811061149c57fe5b6020908102919091010152600101611326565b5060006114bf60048a858561321e565b90506114cd60048a836133c4565b97507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316633e5aa26a856040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561153357600080fd5b505afa158015611547573d6000803e3d6000fd5b505050506040513d602081101561155d57600080fd5b5051965061156e60048a85846134f8565b955061157b6004876135c0565b9450505050909192939495565b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561160d5780601f106115e25761010080835404028352916020019161160d565b820191906000526020600020905b8154815290600101906020018083116115f057829003601f168201915b505050505081565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461164d5761164d611e96565b6000611658826122cf565b6001808201805460ff60f01b191690559091506116789083908390613615565b5050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146116b4576116b4611e96565b60006116bf826122cf565b6001808201805460ff60f01b19169055909150611678908390839061240b565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610ba842611094565b60008061171a84613156565b9050600061172882856136fd565b90508061173a576000925050506110a1565b600019016000908152600e90910160205260409020546001600160801b0316905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600061179082613156565b600a015492915050565b6014818154811061120557600080fd5b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117e2576117e2611e96565b60408051602081019091523081526117fe906015906001614b60565b5060408051602081019091526001600160a01b0382168152611824906014906001614b60565b50806001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561185e57600080fd5b505afa158015611872573d6000803e3d6000fd5b505050506040513d602081101561188857600080fd5b50516001600160a01b03909116600090815260056020526040902060ff909116600a0a9055565b6000806118ba611703565b9050806118cb576000915050610bab565b600460007f00000000000000000000000000000000000000000000000000000000000000006000198401816118fc57fe5b068152602001908152602001600020600a015491505090565b60008060008060008060606004600601546004600701546004600801546004600901546004600a01546004600b01546004600c018080548060200260200160405190810160405280929190818152602001828054801561199e57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611980575b50505050509050965096509650965096509650965090919293949596565b60008060008060006119cc611703565b94506119d9600486613755565b6008549094508401925060006004817f00000000000000000000000000000000000000000000000000000000000000008881611a1157fe5b0681526020810191909152604001600020600101549596949593946001600160f01b03851694600160f81b900460ff169350915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a8057611a80611e96565b438110611a8c57600080fd5b600160f01b8110611a9c57600080fd5b600980546001600160f01b0319166001600160f01b0392909216919091179055565b6002546003549091565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611b2457611b24611e96565b6000611b2e611703565b905060006004817f00000000000000000000000000000000000000000000000000000000000000008481611b5e57fe5b0681526020810191909152604001600090812060108101805460ff1916905560088101829055600a8101829055600d81019190915560095460018201805486158015600160f81b026001600160f81b036001600160f01b03199093166001600160f01b03909516949094179190911692909217905560028201849055909150611be8575050611678565b606080611bf361376d565b6009549194509250611ca3915084908890611c38907f0000000000000000000000000000000000000000000000000000000000000000906001600160f01b0316613963565b6014805480602002602001604051908101604052809291908181526020018280548015611c8e57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611c70575b5060049796959493508a9250899150506139f4565b6013849055837fc0eaa359541c7c642d9947c9496507c134f3e4f8e1fd433313eb27dc48cb1fb7611cd5600483613755565b604080519182524260208301528051918290030190a2505050505050565b6000611d357f000000000000000000000000000000000000000000000000000000000000000084611d2385613156565b600101546001600160f01b0316613aa0565b9392505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611d7457611d74611e96565b600a879055600b869055600c859055600d849055600e839055600f82905560105460005b81811015611df55760006004600d0160006004600c018481548110611db957fe5b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055600101611d98565b5050805160005b81811015611e535760016004600d016000858481518110611e1957fe5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055600101611dfc565b508151611e67906010906020850190614b60565b505050505050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b604080518082018252600d81526c1058d8d95cdcc819195b9a5959609a1b6020808301918252925162461bcd60e51b81526004810193845282516024820152825192939283926044909201919080838360008315610cc2578181015183820152602001610caa565b6015546001148015611f3a5750306001600160a01b03166015600081548110611f2357fe5b6000918252602090912001546001600160a01b0316145b15611f44576120d8565b60005b601554811015610ad657600060158281548110611f6057fe5b6000918252602091829020015460408051635c222bad60e01b815290516001600160a01b0390921692635c222bad92600480840193829003018186803b158015611fa957600080fd5b505afa158015611fbd573d6000803e3d6000fd5b505050506040513d6020811015611fd357600080fd5b5051601480549192509083908110611fe757fe5b6000918252602090912001546001600160a01b038281169116141561200c57506120d0565b806014838154811061201a57fe5b600091825260209091200180546001600160a01b0319166001600160a01b039283161790558116156120ce57806001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561207f57600080fd5b505afa158015612093573d6000803e3d6000fd5b505050506040513d60208110156120a957600080fd5b50516001600160a01b038216600090815260056020526040902060ff909116600a0a90555b505b600101611f47565b565b604080518082018252600f81526e4654534f206e6f742061637469766560881b6020808301918252925162461bcd60e51b81526004810193845282516024820152825192939283926044909201919080838360008315610cc2578181015183820152602001610caa565b61214c611703565b82146040518060400160405280600e81526020016d15dc9bdb99c8195c1bd8da081a5960921b815250906121c15760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b5060008281526012602090815260408083206001600160a01b0387168452825291829020548251808401909352601983527f4475706c6963617465207375626d697420696e2065706f63680000000000000091830191909152156122665760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b5060008281526012602090815260408083206001600160a01b038716808552908352928190208490558051848152429281019290925280518593927f615c0184a2b16dbbcd09eae0bf239e28977aa4e6ff2204eda59c14016310bb6692908290030190a3505050565b60006122dc600483613b43565b4210156040518060400160405280602081526020017f45706f6368206e6f7420726561647920666f722066696e616c697a6174696f6e815250906123615760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b5061236b82613156565b90506000601082015460ff16600581111561238257fe5b146040518060400160405280601781526020017f45706f636820616c72656164792066696e616c697a6564000000000000000000815250906124055760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b50919050565b600080612475846004600c0180548060200260200160405190810160405280929190818152602001828054801561246b57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161244d575b5050505050613b5c565b9092509050801561256a5780828161248957fe5b04600f8501558261249b57600261249e565b60045b60108501805460ff191660018360058111156124b657fe5b0217905550600f840154600255426003556124d085610ad6565b847ffe8865c1fe85bbf124b9e0f16cccfeeb6f330454fd79475a31261c8fa250bc3085600f015460008060008960100160009054906101000a900460ff164260405180878152602001861515815260200185815260200184815260200183600581111561253957fe5b8152602001828152602001965050505050505060405180910390a26001840180546001600160f81b03169055611154565b611154858585613615565b6060806060600084600d01549050806001600160401b038111801561259957600080fd5b506040519080825280602002602001820160405280156125c3578160200160208202803683370190505b509350806001600160401b03811180156125dc57600080fd5b50604051908082528060200260200182016040528015612606578160200160208202803683370190505b5091506000816001600160401b038111801561262157600080fd5b5060405190808252806020026020018201604052801561264b578160200160208202803683370190505b50905060005b828110156126f3576000818152600e880160205260409020805487516001600160801b039091169088908490811061268557fe5b602090810291909101015280548551600160801b9091046001600160401b0316908690849081106126b257fe5b602090810291909101015280548351600160c01b9091046001600160401b0316908490849081106126df57fe5b602090810291909101015250600101612651565b506126ff868483613c07565b935050509193909250565b6060612714614bc1565b8351806001600160401b038111801561272c57600080fd5b50604051908082528060200260200182016040528015612756578160200160208202803683370190505b50925060005b81811015612784578084828151811061277157fe5b602090810291909101015260010161275c565b5061279b6002600060018403600080888b8b613d1e565b6080850152606084015280835283518591859181106127b657fe5b6020026020010151815181106127c857fe5b602090810291909101015160a0830181905260808301516060840151845192010190612801578251600060c08501526020840152612855565b60048104836060015111612825578251606084015160c08501526020840152612855565b61284960016000600186600001510360008760a00151886080015101898c8c613d1e565b5060c085015260208401525b825160001983011415612876578251600061010085015260408401526128ce565b6004810483608001511161289b578251608084015161010085015260408401526128ce565b6128c160038460000151600101600185038660a001518760600151016000898c8c613d1e565b6101008601525060408401525b85848460000151815181106128df57fe5b6020026020010151815181106128f157fe5b6020908102919091010151610120840152600281048360a0015184606001510114801561291f575060028106155b1561294f576002612939846000015160018503878a613ff9565b846101200151018161294757fe5b046101208401525b612969836020015160006000198660c00151888b8b6140b9565b60c0850152602084015260408301516101008401516129949190600019850190600190888b8b6140b9565b6101008501526040840152602083015184518791869181106129b257fe5b6020026020010151815181106129c457fe5b60200260200101518361014001818152505085848460400151815181106129e757fe5b6020026020010151815181106129f957fe5b602090810291909101015161016084015261010083015160c08401519091030360e08301525090939092509050565b600083612a3757506000612aac565b6000858184600019880181612a4857fe5b068152602001908152602001600020600f0154905080841415612a6f576000915050612aac565b83612a825764e8d4a51000915050612aac565b600084821115612a955750838103612a9a565b508084035b612aa7816127108761418d565b925050505b949350505050565b600a840154602084015160609182916000919082905b88604001518111612b95576000888281518110612ae357fe5b602002602001015190506000888281518110612afb57fe5b60200260200101511115612b8b576000818152600e8c0160205260409020546101408b01516001600160801b0390911690811480612b4657508a6101600151816001600160801b0316145b8015612b7757506000828152600e8d016020526040902060010154612b759086906001600160a01b0316614299565b155b15612b83575050612b8d565b506001909201915b505b600101612aca565b50806001600160401b0381118015612bac57600080fd5b50604051908082528060200260200182016040528015612bd6578160200160208202803683370190505b509450806001600160401b0381118015612bef57600080fd5b50604051908082528060200260200182016040528015612c19578160200160208202803683370190505b5060208901519094506000905b89604001518111612d62576000898281518110612c3f57fe5b602002602001015190506000898281518110612c5757fe5b602002602001015190506000811115612d57576000828152600e8e0160205260409020546101408d01516001600160801b0390911690811480612ca757508c6101600151816001600160801b0316145b8015612cd857506000838152600e8f016020526040902060010154612cd69088906001600160a01b0316614299565b155b15612ce557505050612d5a565b6000838152600e8f0160205260409020600101548a516001600160a01b03909116908b9087908110612d1357fe5b60200260200101906001600160a01b031690816001600160a01b03168152505081898681518110612d4057fe5b602090810291909101015250958601956001909301925b50505b600101612c26565b505050509450945094915050565b50505050565b60008260020154821015612d8c575060006110a1565b82600301548360020154830381612d9f57fe5b0490506110a1565b60408051808201909152600e81526d0a0e4d2c6ca40e8dede40d0d2ced60931b6020820152600160801b8410612e1e5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b50612e2a6004856142d4565b6040518060400160405280601881526020017f52657665616c20706572696f64206e6f7420616374697665000000000000000081525090612eac5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b506040805160208082018690528183018590526001600160a01b0388166060808401829052845180850390910181526080840180865281519184019190912060008a81526012855286812093815292909352908490205460e08401909452602380825293909114929091614d2d9060a0013990612f6a5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b5060006004817f00000000000000000000000000000000000000000000000000000000000000008781612f9957fe5b0681526020810191909152604001600020600181015490915060ff600160f81b8204811691600160f01b8104909116906001600160f01b03168180612ffe5750828015612ffe57506001600160a01b03891660009081526011602052604090205460ff165b6040518060400160405280602081526020017f45706f6368206e6f7420696e697469616c697a656420666f722072657665616c815250906130805760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b50600080613091868c8988876142ff565b915091506130d4868c84848d8d8f60405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c61435f565b60008a81526012602090815260408083206001600160a01b038f168085529083528184209390935580518c81529182018b905242828201526060820185905260808201849052518c92917f408bc8c9d02102257c33373c2df5771b03067bd8ea7ec60c35f314ec4ee99d05919081900360a00190a35050505050505050505050565b60006004817f0000000000000000000000000000000000000000000000000000000000000000848161318457fe5b0681526020019081526020016000209050806002015482146040518060400160405280601881526020017f45706f63682064617461206e6f7420617661696c61626c650000000000000000815250906124055760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b82516060906000816001600160401b038111801561323b57600080fd5b50604051908082528060200260200182016040528015613265578160200160208202803683370190505b5090506000805b8381101561334e5760006001600160a01b031688828151811061328b57fe5b60200260200101516001600160a01b031614156132a757613346565b600061331e8783815181106132b857fe5b60200260200101518b60010160008c86815181106132d257fe5b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020548a858151811061330757fe5b602002602001015161418d9092919063ffffffff16565b90508084838151811061332d57fe5b6020908102919091010152613342838261447c565b9250505b60010161326c565b5080156133b95760005b838110156133b75761339861338b61271088848151811061337557fe5b60200260200101516144d690919063ffffffff16565b8385848151811061330757fe5b8382815181106133a457fe5b6020908102919091010152600101613358565b505b509695505050505050565b8151606090806001600160401b03811180156133df57600080fd5b50604051908082528060200260200182016040528015613409578160200160208202803683370190505b50915060005b818110156134ef5760006001600160a01b031685828151811061342e57fe5b60200260200101516001600160a01b0316146134cc57600086600101600087848151811061345857fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205490506134ae61271064e8d4a510008161349657fe5b04670de0b6b3a7640000028287858151811061330757fe5b8483815181106134ba57fe5b602002602001018181525050506134e7565b60008382815181106134da57fe5b6020026020010181815250505b60010161340f565b50509392505050565b600080805b85518110156135b65760006001600160a01b031686828151811061351d57fe5b60200260200101516001600160a01b0316146135ae57600061271061359687848151811061354757fe5b60200260200101518a60010160008b878151811061356157fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205488868151811061330757fe5b8161359d57fe5b0490506135aa838261447c565b9250505b6001016134fd565b5095945050505050565b60008083600801548310156135d757506000611d35565b836009015483106135eb5750611388611d35565b600884015460098501546101f49190819003908503611194028161360b57fe5b0401949350505050565b821561362857600254600f830155613630565b6000600f8301555b8061363c57600361363f565b60055b60108301805460ff1916600183600581111561365757fe5b021790555061366583610ad6565b827ffe8865c1fe85bbf124b9e0f16cccfeeb6f330454fd79475a31261c8fa250bc3083600f015460008060008760100160009054906101000a900460ff16426040518087815260200186151581526020018581526020018481526020018360058111156136ce57fe5b8152602001828152602001965050505050505060405180910390a25060010180546001600160f81b0316905550565b600d820154600090815b8181101561374a576000818152600e860160205260409020600101546001600160a01b03858116911614156137425760010191506110a19050565b600101613707565b506000949350505050565b60038201546002830154600183019091020192915050565b606080606061377a611efe565b60148054806020026020016040519081016040528092919081815260200182805480156137d057602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116137b2575b5050505050925082516001600160401b03811180156137ee57600080fd5b50604051908082528060200260200182016040528015613818578160200160208202803683370190505b50915082516001600160401b038111801561383257600080fd5b5060405190808252806020026020018201604052801561385c578160200160208202803683370190505b50905060005b835181101561395d5761389684828151811061387a57fe5b60209081029190910101516009546001600160f01b0316613963565b8382815181106138a257fe5b602002602001018181525050601581815481106138bb57fe5b9060005260206000200160009054906101000a90046001600160a01b03166001600160a01b031663eb91d37e6040518163ffffffff1660e01b8152600401604080518083038186803b15801561391057600080fd5b505afa158015613924573d6000803e3d6000fd5b505050506040513d604081101561393a57600080fd5b5051825183908390811061394a57fe5b6020908102919091010152600101613862565b50909192565b60006001600160a01b03831661397b575060006110a1565b826001600160a01b031663caeb942b836040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b1580156139c157600080fd5b505af11580156139d5573d6000803e3d6000fd5b505050506040513d60208110156139eb57600080fd5b505190506110a1565b613a01878785858561452f565b600a8701546003870155600b8701546004870155600586018590556006808701859055870154613a39908581613a3357fe5b04614598565b86546001600160801b0319166001600160801b039190911617865560078781015490870154613a6a919081613a3357fe5b86546001600160801b03918216600160801b0291161786555050506001909201805460ff60f01b1916600160f01b179055505050565b60006001600160a01b038416613ab857506000611d35565b836001600160a01b031663e587497e84846040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015613b0f57600080fd5b505af1158015613b23573d6000803e3d6000fd5b505050506040513d6020811015613b3957600080fd5b5051949350505050565b60008260040154613b548484613755565b019392505050565b600d8201546000908190815b81811015613bfe576000818152600e870160205260408120600101546001600160a01b0316905b8651811015613bf457868181518110613ba457fe5b60200260200101516001600160a01b0316826001600160a01b03161415613bec576000838152600e890160205260409020546001600160801b03169590950194600194909401935b600101613b8f565b5050600101613b68565b50509250929050565b600d830154606090806001600160401b0381118015613c2557600080fd5b50604051908082528060200260200182016040528015613c4f578160200160208202803683370190505b5091506000613c5d856145e0565b90506000613c6a856145e0565b9050600080613c7a898585614625565b90508315613c8a57806127100391505b60005b85811015613d115760008315613cd357613cd08a8381518110613cac57fe5b602002602001015164e8d4a510000261271088028661418d9092919063ffffffff16565b90505b60008315613ced57613cea8a8481518110613cac57fe5b90505b808201898481518110613cfc57fe5b60209081029190910101525050600101613c8d565b5050505050509392505050565b6000806000888a1415613d38575088915086905085613feb565b613d40614c22565b88815260208101889052613d52614c5f565b60208082018d905260408083018d90528051448184015242818301528151808203830181526060909101909152805191012060005b60208301516040840151613db99190816001818303018681613da557fe5b0601876000015188602001518f8f8f61468c565b606087015260408601528084528a518b91908110613dd357fe5b602002602001015183606001818152505087836060015181518110613df457fe5b6020026020010151846080018181525050836060015184604001518560800151010190508e60021415613ecf5760028106600282040160a0850181905280820360c0860152604085015110801590613e4f57508b8460a00151115b15613e7457825160001901604084015260608401516080850151016020850152613eca565b8360c001518460600151118015613e8e57508a8460c00151115b15613eaf578251600101602084015260408401516080850151018452613eca565b50505160408201516060909201519094509092509050613feb565b613fe6565b8e60011415613f60576004810460a0850181905280820360c08601526040850151118015613f0057508b8460a00151115b15613f2557825160001901604084015260608401516080850151016020850152613eca565b8360c00151846060015110158015613e8e57508a8460c001511115613eaf578251600101602084015260408401516080850151018452613eca565b6004810460c08501819052810360a08501819052604085015110801590613f8a57508b8460a00151115b15613faf57825160001901604084015260608401516080850151016020850152613fe6565b8360c001518460600151118015613fc957508a8460c00151115b15613eaf5782516001016020840152604084015160808501510184525b613d87565b985098509895505050505050565b600083851415614031578183868151811061401057fe5b60200260200101518151811061402257fe5b60200260200101519050612aac565b60008284876001018151811061404357fe5b60200260200101518151811061405557fe5b602002602001015190506000808760020190505b8681116140ad578486828151811061407d57fe5b60200260200101518151811061408f57fe5b60200260200101519150828210156140a5578192505b600101614069565b50909695505050505050565b60008085888a03880282136140d45789879250925050614181565b600085878c815181106140e357fe5b6020026020010151815181106140f557fe5b602090810291909101015190508a89016000815b60008c8e830302136141755789818151811061412157fe5b602002602001015191508389838151811061413857fe5b6020026020010151141561416e5787828151811061415257fe5b60200260200101518503945061416983828c614855565b918b01915b8b01614109565b50508990039350909150505b97509795505050505050565b60008082116141d6576040805162461bcd60e51b815260206004820152601060248201526f4469766973696f6e206279207a65726f60801b604482015290519081900360640190fd5b836141e357506000611d35565b838302838582816141f057fe5b0414156142095782818161420057fe5b04915050611d35565b600083868161421457fe5b049050600084878161422257fe5b069050600085878161423057fe5b049050600086888161423e57fe5b06905061428c6142588861425286856144d6565b906148bd565b61428661426586866144d6565b61428661427289876144d6565b6142868d6142808c8b6144d6565b906144d6565b9061447c565b9998505050505050505050565b604080516020808201949094526001600160a01b03929092168282015280518083038201815260609092019052805191012060019081161490565b6000806142e18484613755565b9050428111158015612aac5750836004015481014210949350505050565b600080831561431357506000905080614355565b849150614321878785614924565b87549091506001600160801b0380821691600160801b90041681841115614346578193505b80831115614352578092505b50505b9550959350505050565b600086600d0154905060006143808787878b600601548c60070154896149e2565b63ffffffff838116608083019081526000858152600e8c0160209081526040918290208551815492870151938701516001600160801b03199093166001600160801b039091161767ffffffffffffffff60801b1916600160801b6001600160401b0394851602176001600160c01b0316600160c01b939092169290920217815560608401516001918201805493516001600160a01b03199094166001600160a01b039092169190911763ffffffff60a01b1916600160a01b93851693909302929092179091558401600d8b015560088a01549192506144629190889061447c16565b60088901555050600a909501805490950190945550505050565b600082820183811015611d35576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000826144e5575060006110a1565b828202828482816144f257fe5b0414611d355760405162461bcd60e51b8152600401808060200182810382526021815260200180614d506021913960400191505060405180910390fd5b825161454490600b8601906020860190614b60565b506145518584848461321e565b805161456791600c870191602090910190614c87565b506000614575868685614a3f565b60078601819055905061458886826135c0565b8560090181905550505050505050565b6000600160801b82106145dc5760405162461bcd60e51b8152600401808060200182810382526027815260200180614d066027913960400191505060405180910390fd5b5090565b600080805b835181101561461e576146148482815181106145fd57fe5b60200260200101518361447c90919063ffffffff16565b91506001016145e5565b5092915050565b60008161463457506000611d35565b826146425750612710611d35565b60006146568361271064e8d4a5100061418d565b90508460030154811061466f5750506009830154611d35565b6003850154600986015461468491839061418d565b915050611d35565b60008060008085878b8151811061469f57fe5b6020026020010151815181106146b157fe5b60200260200101519050600060026001600160401b03811180156146d457600080fd5b506040519080825280602002602001820160405280156146fe578160200160208202803683370190505b509050898160008151811061470f57fe5b602002602001018181525050888160018151811061472957fe5b60209081029190910101528c8c6147418d828c614855565b81805b828110156148055760008c828151811061475a57fe5b60200260200101519050868c828151811061477157fe5b602002602001015110156147c8578a818151811061478b57fe5b6020026020010151866000815181106147a057fe5b6020026020010181815101915081815250506147bd83838f614855565b6001909201916147fc565b8a81815181106147d457fe5b6020026020010151866001815181106147e957fe5b6020026020010181815101915081815250505b50600101614744565b5061481182828d614855565b808460008151811061481f57fe5b60200260200101518560018151811061483457fe5b60200260200101519750975097505050505050985098509895505050505050565b8183141561486257610c03565b80828151811061486e57fe5b602002602001015181848151811061488257fe5b602002602001015182858151811061489657fe5b602002602001018385815181106148a957fe5b602090810291909101019190915252505050565b6000808211614913576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161491c57fe5b049392505050565b600b83015460009081906001600160401b038111801561494357600080fd5b5060405190808252806020026020018201604052801561496d578160200160208202803683370190505b50905060005b600b8601548110156149cc576149ad86600b01828154811061499157fe5b6000918252602090912001546001600160a01b03168686613aa0565b8282815181106149b957fe5b6020908102919091010152600101614973565b506149d960048683614a3f565b95945050505050565b6149ea614cc2565b6001600160a01b0387166060820152614a038685614b2f565b6001600160401b03166020820152614a1b8584614b2f565b6001600160401b031660408201526001600160801b03909116815295945050505050565b600080805b600b850154811015614b265760006001600160a01b031685600b018281548110614a6a57fe5b6000918252602090912001546001600160a01b03161415614a8a57614b1e565b614b1b612710614b0b868481518110614a9f57fe5b60200260200101518960010160008a600b018781548110614abc57fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902054600c8a01805487908110614af157fe5b906000526020600020015461418d9092919063ffffffff16565b81614b1257fe5b8491900461447c565b91505b600101614a44565b50949350505050565b6000811580614b3c575082155b15614b49575060006110a1565b614b598364e8d4a510008461418d565b90506110a1565b828054828255906000526020600020908101928215614bb5579160200282015b82811115614bb557825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190614b80565b506145dc929150614cf0565b6040518061018001604052806000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040518060e00160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040518060800160405280600081526020016000815260200160008152602001600081525090565b828054828255906000526020600020908101928215614bb5579160200282015b82811115614bb5578251825591602001919060010190614ca7565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b5b808211156145dc5760008155600101614cf156fe53616665436173743a2076616c756520646f65736e27742066697420696e203132382062697473507269636520616c72656164792072657665616c6564206f72206e6f742076616c6964536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122038ae2937ee38df555350a820be30dfd12d0df95295a6e0be86bfc7c29504342d64736f6c63430007060033",
952
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102275760003560e01c8063974d7a6b11610130578063d89601fd116100b8578063f025bf661161007c578063f025bf661461088f578063f670ebe314610897578063f72cab28146108bc578063f7dba1f5146108e8578063f937d6ad146109af57610227565b8063d89601fd146107a9578063e3749e0c146107b1578063e3b3a3b31461081c578063e536f39614610851578063eb91d37e1461086e57610227565b8063c5d8b9e7116100ff578063c5d8b9e714610715578063cc245ab514610741578063cd4b691414610749578063cf35bdd014610766578063d0d552dd1461078357610227565b8063974d7a6b146106cb5780639de6f927146106e85780639edbf00714610705578063a29a839f1461070d57610227565b80635303548b116101b35780636b52b242116101825780636b52b2421461054f5780637d1d6f1214610557578063826cc76b146105745780638357d08c1461059157806395d89b411461064e57610227565b80635303548b146104d2578063555989da1461050157806355f7b69b146105095780635c222bad1461054757610227565b806318931c35116101fa57806318931c351461033757806327bd2ad51461038f5780632f0a6f3c146103c1578063306ba253146103ea57806340462a2d1461040d57610227565b806302fb0c5e1461022c57806311a7aaaa14610248578063131fdee21461026c578063144e159114610311575b600080fd5b6102346109b7565b604080519115158252519081900360200190f35b6102506109c0565b604080516001600160a01b039092168252519081900360200190f35b61030f6004803603602081101561028257600080fd5b81019060208101813564010000000081111561029d57600080fd5b8201836020820111156102af57600080fd5b803590602001918460208302840111640100000000831117156102d157600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506109e4945050505050565b005b610319610ad9565b60408051938452602084019290925282820152519081900360600190f35b61033f610ae7565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561037b578181015183820152602001610363565b505050509050019250505060405180910390f35b61030f600480360360608110156103a557600080fd5b506001600160a01b038135169060208101359060400135610bae565b61030f600480360360608110156103d757600080fd5b5080359060208101359060400135610c08565b61030f6004803603604081101561040057600080fd5b5080359060200135610d19565b6104326004803603604081101561042357600080fd5b50803590602001351515610ddd565b604051808060200180602001848152602001838103835286818151815260200191508051906020019060200280838360005b8381101561047c578181015183820152602001610464565b50505050905001838103825285818151815260200191508051906020019060200280838360005b838110156104bb5781810151838201526020016104a3565b505050509050019550505050505060405180910390f35b6104ef600480360360208110156104e857600080fd5b5035611094565b60408051918252519081900360200190f35b61030f6110a7565b61030f600480360360a081101561051f57600080fd5b506001600160a01b0381351690602081013590604081013590606081013590608001356110fd565b61025061115b565b6104ef6111db565b6104ef6004803603602081101561056d57600080fd5b50356111e0565b6102506004803603602081101561058a57600080fd5b50356111f5565b61059961121f565b604051808060200180602001878152602001868152602001858152602001848152602001838103835289818151815260200191508051906020019060200280838360005b838110156105f55781810151838201526020016105dd565b50505050905001838103825288818151815260200191508051906020019060200280838360005b8381101561063457818101518382015260200161061c565b505050509050019850505050505050505060405180910390f35b610656611588565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610690578181015183820152602001610678565b50505050905090810190601f1680156106bd5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61030f600480360360208110156106e157600080fd5b5035611615565b61030f600480360360208110156106fe57600080fd5b503561167c565b6102506116df565b6104ef611703565b6104ef6004803603604081101561072b57600080fd5b50803590602001356001600160a01b031661170e565b6104ef611761565b6104ef6004803603602081101561075f57600080fd5b5035611785565b6102506004803603602081101561077c57600080fd5b503561179a565b61030f6004803603602081101561079957600080fd5b50356001600160a01b03166117aa565b6104ef6118af565b6107b9611915565b6040518088815260200187815260200186815260200185815260200184815260200183815260200180602001828103825283818151815260200191508051906020019060200280838360008381101561063457818101518382015260200161061c565b6108246119bc565b60408051958652602086019490945284840192909252606084015215156080830152519081900360a00190f35b61030f6004803603602081101561086757600080fd5b5035611a48565b610876611abe565b6040805192835260208301919091528051918290030190f35b6104ef611ac8565b61030f600480360360408110156108ad57600080fd5b50803590602001351515611aec565b6104ef600480360360408110156108d257600080fd5b506001600160a01b038135169060200135611cf3565b61030f600480360360e08110156108fe57600080fd5b81359160208101359160408201359160608101359160808201359160a08101359181019060e0810160c082013564010000000081111561093d57600080fd5b82018360208201111561094f57600080fd5b8035906020019184602083028401116401000000008311171561097157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550611d3c945050505050565b610250611e72565b60005460ff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a1c57610a1c611e96565b6000815111610a2757fe5b600181511180610a5d5750306001600160a01b031681600081518110610a4957fe5b60200260200101516001600160a01b031614155b610a6357fe5b8051610a76906015906020840190614b60565b5080516001600160401b0381118015610a8e57600080fd5b50604051908082528060200260200182016040528015610ab8578160200160208202803683370190505b508051610acd91601491602090910190614b60565b50610ad6611efe565b50565b600654600754600854909192565b6014546060906001148015610afe57506015546001145b8015610b345750306001600160a01b03166015600081548110610b1d57fe5b6000918252602090912001546001600160a01b0316145b610b98576015805480602002602001604051908101604052809291908181526020018280548015610b8e57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610b70575b5050505050610ba8565b6040805160008152602081019091525b90505b90565b60005460ff16610bc057610bc06120da565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610bf857610bf8611e96565b610c03838383612144565b505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610c4057610c40611e96565b600054604080518082019091526016815275119514d3c8185b1c9958591e481858dd1a5d985d195960521b60208201529060ff1615610cfd5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cc2578181015183820152602001610caa565b50505050905090810190601f168015610cef5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506006929092556007556008556000805460ff19166001179055565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610d5157610d51611e96565b600054604080518082019091526016815275119514d3c8185b1c9958591e481858dd1a5d985d195960521b60208201529060ff1615610dd15760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b50600291909155600355565b6060806000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610e1a57610e1a611e96565b6000610e25866122cf565b60018101805460ff60f01b19169055600581015490915060009015610e5d57816005015461271083600801540281610e5957fe5b0490505b6001820154600160f81b900460ff1680610e7b575081600401548111155b15610eee576001820154600160f81b900460ff16610edb57600482015460408051838152602081019290925242828201525188917fbece8aa526cdc5e528cdaa56c1d03edc19da51e41845aa146f64a7071f74c65a919081900360600190a25b610ee78783600061240b565b505061108d565b6060806060610efc85612575565b919450925090506060610f0d614bc1565b610f17858561270a565b61012081015191935091507f000000000000000000000000000000000000000000000000000000000000000090610f73906004908f907f0000000000000000000000000000000000000000000000000000000000000000612a28565b1115610f9157610f858c88600061240b565b5050505050505061108d565b60108701805460ff19166001179055610120810151600f88018190556002554260035560008b15610fdb57610fc888838587612ab4565b8251929d50909b50995015610fdb575060015b610fe78d838584612d70565b8c7ffe8865c1fe85bbf124b9e0f16cccfeeb6f330454fd79475a31261c8fa250bc3089600f0154838561014001518661016001518d60100160009054906101000a900460ff164260405180878152602001861515815260200185815260200184815260200183600581111561105857fe5b8152602001828152602001965050505050505060405180910390a2505050600190940180546001600160f81b03169055505050505b9250925092565b60006110a1600483612d76565b92915050565b60005460ff166110b9576110b96120da565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146110f1576110f1611e96565b6000805460ff19169055565b60005460ff1661110f5761110f6120da565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461114757611147611e96565b6111548585858585612da7565b5050505050565b601454600090600114801561117257506015546001145b80156111a85750306001600160a01b0316601560008154811061119157fe5b6000918252602090912001546001600160a01b0316145b6111b3576000610ba8565b60146000815481106111c157fe5b6000918252602090912001546001600160a01b0316905090565b600581565b60006111eb82613156565b600f015492915050565b6015818154811061120557600080fd5b6000918252602090912001546001600160a01b0316905081565b606080600080600080601480548060200260200160405190810160405280929190818152602001828054801561127e57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611260575b50506009548451949a506001600160f01b031694506000939250506001600160401b038211905080156112b057600080fd5b506040519080825280602002602001820160405280156112da578160200160208202803683370190505b509050600087516001600160401b03811180156112f657600080fd5b50604051908082528060200260200182016040528015611320578160200160208202803683370190505b50905060005b88518110156114af5760006001600160a01b031689828151811061134657fe5b60200260200101516001600160a01b031614156113645760006113e8565b88818151811061137057fe5b60200260200101516001600160a01b0316633e5aa26a856040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156113bb57600080fd5b505afa1580156113cf573d6000803e3d6000fd5b505050506040513d60208110156113e557600080fd5b50515b8382815181106113f457fe5b6020026020010181815250506015818154811061140d57fe5b9060005260206000200160009054906101000a90046001600160a01b03166001600160a01b031663eb91d37e6040518163ffffffff1660e01b8152600401604080518083038186803b15801561146257600080fd5b505afa158015611476573d6000803e3d6000fd5b505050506040513d604081101561148c57600080fd5b5051825183908390811061149c57fe5b6020908102919091010152600101611326565b5060006114bf60048a858561321e565b90506114cd60048a836133c4565b97507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316633e5aa26a856040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561153357600080fd5b505afa158015611547573d6000803e3d6000fd5b505050506040513d602081101561155d57600080fd5b5051965061156e60048a85846134f8565b955061157b6004876135c0565b9450505050909192939495565b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561160d5780601f106115e25761010080835404028352916020019161160d565b820191906000526020600020905b8154815290600101906020018083116115f057829003601f168201915b505050505081565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461164d5761164d611e96565b6000611658826122cf565b6001808201805460ff60f01b191690559091506116789083908390613615565b5050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146116b4576116b4611e96565b60006116bf826122cf565b6001808201805460ff60f01b19169055909150611678908390839061240b565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610ba842611094565b60008061171a84613156565b9050600061172882856136fd565b90508061173a576000925050506110a1565b600019016000908152600e90910160205260409020546001600160801b0316905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600061179082613156565b600a015492915050565b6014818154811061120557600080fd5b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117e2576117e2611e96565b60408051602081019091523081526117fe906015906001614b60565b5060408051602081019091526001600160a01b0382168152611824906014906001614b60565b50806001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561185e57600080fd5b505afa158015611872573d6000803e3d6000fd5b505050506040513d602081101561188857600080fd5b50516001600160a01b03909116600090815260056020526040902060ff909116600a0a9055565b6000806118ba611703565b9050806118cb576000915050610bab565b600460007f00000000000000000000000000000000000000000000000000000000000000006000198401816118fc57fe5b068152602001908152602001600020600a015491505090565b60008060008060008060606004600601546004600701546004600801546004600901546004600a01546004600b01546004600c018080548060200260200160405190810160405280929190818152602001828054801561199e57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611980575b50505050509050965096509650965096509650965090919293949596565b60008060008060006119cc611703565b94506119d9600486613755565b6008549094508401925060006004817f00000000000000000000000000000000000000000000000000000000000000008881611a1157fe5b0681526020810191909152604001600020600101549596949593946001600160f01b03851694600160f81b900460ff169350915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a8057611a80611e96565b438110611a8c57600080fd5b600160f01b8110611a9c57600080fd5b600980546001600160f01b0319166001600160f01b0392909216919091179055565b6002546003549091565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611b2457611b24611e96565b6000611b2e611703565b905060006004817f00000000000000000000000000000000000000000000000000000000000000008481611b5e57fe5b0681526020810191909152604001600090812060108101805460ff1916905560088101829055600a8101829055600d81019190915560095460018201805486158015600160f81b026001600160f81b036001600160f01b03199093166001600160f01b03909516949094179190911692909217905560028201849055909150611be8575050611678565b606080611bf361376d565b6009549194509250611ca3915084908890611c38907f0000000000000000000000000000000000000000000000000000000000000000906001600160f01b0316613963565b6014805480602002602001604051908101604052809291908181526020018280548015611c8e57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611c70575b5060049796959493508a9250899150506139f4565b6013849055837fc0eaa359541c7c642d9947c9496507c134f3e4f8e1fd433313eb27dc48cb1fb7611cd5600483613755565b604080519182524260208301528051918290030190a2505050505050565b6000611d357f000000000000000000000000000000000000000000000000000000000000000084611d2385613156565b600101546001600160f01b0316613aa0565b9392505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611d7457611d74611e96565b600a879055600b869055600c859055600d849055600e839055600f82905560105460005b81811015611df55760006004600d0160006004600c018481548110611db957fe5b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055600101611d98565b5050805160005b81811015611e535760016004600d016000858481518110611e1957fe5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055600101611dfc565b508151611e67906010906020850190614b60565b505050505050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b604080518082018252600d81526c1058d8d95cdcc819195b9a5959609a1b6020808301918252925162461bcd60e51b81526004810193845282516024820152825192939283926044909201919080838360008315610cc2578181015183820152602001610caa565b6015546001148015611f3a5750306001600160a01b03166015600081548110611f2357fe5b6000918252602090912001546001600160a01b0316145b15611f44576120d8565b60005b601554811015610ad657600060158281548110611f6057fe5b6000918252602091829020015460408051635c222bad60e01b815290516001600160a01b0390921692635c222bad92600480840193829003018186803b158015611fa957600080fd5b505afa158015611fbd573d6000803e3d6000fd5b505050506040513d6020811015611fd357600080fd5b5051601480549192509083908110611fe757fe5b6000918252602090912001546001600160a01b038281169116141561200c57506120d0565b806014838154811061201a57fe5b600091825260209091200180546001600160a01b0319166001600160a01b039283161790558116156120ce57806001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561207f57600080fd5b505afa158015612093573d6000803e3d6000fd5b505050506040513d60208110156120a957600080fd5b50516001600160a01b038216600090815260056020526040902060ff909116600a0a90555b505b600101611f47565b565b604080518082018252600f81526e4654534f206e6f742061637469766560881b6020808301918252925162461bcd60e51b81526004810193845282516024820152825192939283926044909201919080838360008315610cc2578181015183820152602001610caa565b61214c611703565b82146040518060400160405280600e81526020016d15dc9bdb99c8195c1bd8da081a5960921b815250906121c15760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b5060008281526012602090815260408083206001600160a01b0387168452825291829020548251808401909352601983527f4475706c6963617465207375626d697420696e2065706f63680000000000000091830191909152156122665760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b5060008281526012602090815260408083206001600160a01b038716808552908352928190208490558051848152429281019290925280518593927f615c0184a2b16dbbcd09eae0bf239e28977aa4e6ff2204eda59c14016310bb6692908290030190a3505050565b60006122dc600483613b43565b4210156040518060400160405280602081526020017f45706f6368206e6f7420726561647920666f722066696e616c697a6174696f6e815250906123615760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b5061236b82613156565b90506000601082015460ff16600581111561238257fe5b146040518060400160405280601781526020017f45706f636820616c72656164792066696e616c697a6564000000000000000000815250906124055760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b50919050565b600080612475846004600c0180548060200260200160405190810160405280929190818152602001828054801561246b57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161244d575b5050505050613b5c565b9092509050801561256a5780828161248957fe5b04600f8501558261249b57600261249e565b60045b60108501805460ff191660018360058111156124b657fe5b0217905550600f840154600255426003556124d085610ad6565b847ffe8865c1fe85bbf124b9e0f16cccfeeb6f330454fd79475a31261c8fa250bc3085600f015460008060008960100160009054906101000a900460ff164260405180878152602001861515815260200185815260200184815260200183600581111561253957fe5b8152602001828152602001965050505050505060405180910390a26001840180546001600160f81b03169055611154565b611154858585613615565b6060806060600084600d01549050806001600160401b038111801561259957600080fd5b506040519080825280602002602001820160405280156125c3578160200160208202803683370190505b509350806001600160401b03811180156125dc57600080fd5b50604051908082528060200260200182016040528015612606578160200160208202803683370190505b5091506000816001600160401b038111801561262157600080fd5b5060405190808252806020026020018201604052801561264b578160200160208202803683370190505b50905060005b828110156126f3576000818152600e880160205260409020805487516001600160801b039091169088908490811061268557fe5b602090810291909101015280548551600160801b9091046001600160401b0316908690849081106126b257fe5b602090810291909101015280548351600160c01b9091046001600160401b0316908490849081106126df57fe5b602090810291909101015250600101612651565b506126ff868483613c07565b935050509193909250565b6060612714614bc1565b8351806001600160401b038111801561272c57600080fd5b50604051908082528060200260200182016040528015612756578160200160208202803683370190505b50925060005b81811015612784578084828151811061277157fe5b602090810291909101015260010161275c565b5061279b6002600060018403600080888b8b613d1e565b6080850152606084015280835283518591859181106127b657fe5b6020026020010151815181106127c857fe5b602090810291909101015160a0830181905260808301516060840151845192010190612801578251600060c08501526020840152612855565b60048104836060015111612825578251606084015160c08501526020840152612855565b61284960016000600186600001510360008760a00151886080015101898c8c613d1e565b5060c085015260208401525b825160001983011415612876578251600061010085015260408401526128ce565b6004810483608001511161289b578251608084015161010085015260408401526128ce565b6128c160038460000151600101600185038660a001518760600151016000898c8c613d1e565b6101008601525060408401525b85848460000151815181106128df57fe5b6020026020010151815181106128f157fe5b6020908102919091010151610120840152600281048360a0015184606001510114801561291f575060028106155b1561294f576002612939846000015160018503878a613ff9565b846101200151018161294757fe5b046101208401525b612969836020015160006000198660c00151888b8b6140b9565b60c0850152602084015260408301516101008401516129949190600019850190600190888b8b6140b9565b6101008501526040840152602083015184518791869181106129b257fe5b6020026020010151815181106129c457fe5b60200260200101518361014001818152505085848460400151815181106129e757fe5b6020026020010151815181106129f957fe5b602090810291909101015161016084015261010083015160c08401519091030360e08301525090939092509050565b600083612a3757506000612aac565b6000858184600019880181612a4857fe5b068152602001908152602001600020600f0154905080841415612a6f576000915050612aac565b83612a825764e8d4a51000915050612aac565b600084821115612a955750838103612a9a565b508084035b612aa7816127108761418d565b925050505b949350505050565b600a840154602084015160609182916000919082905b88604001518111612b95576000888281518110612ae357fe5b602002602001015190506000888281518110612afb57fe5b60200260200101511115612b8b576000818152600e8c0160205260409020546101408b01516001600160801b0390911690811480612b4657508a6101600151816001600160801b0316145b8015612b7757506000828152600e8d016020526040902060010154612b759086906001600160a01b0316614299565b155b15612b83575050612b8d565b506001909201915b505b600101612aca565b50806001600160401b0381118015612bac57600080fd5b50604051908082528060200260200182016040528015612bd6578160200160208202803683370190505b509450806001600160401b0381118015612bef57600080fd5b50604051908082528060200260200182016040528015612c19578160200160208202803683370190505b5060208901519094506000905b89604001518111612d62576000898281518110612c3f57fe5b602002602001015190506000898281518110612c5757fe5b602002602001015190506000811115612d57576000828152600e8e0160205260409020546101408d01516001600160801b0390911690811480612ca757508c6101600151816001600160801b0316145b8015612cd857506000838152600e8f016020526040902060010154612cd69088906001600160a01b0316614299565b155b15612ce557505050612d5a565b6000838152600e8f0160205260409020600101548a516001600160a01b03909116908b9087908110612d1357fe5b60200260200101906001600160a01b031690816001600160a01b03168152505081898681518110612d4057fe5b602090810291909101015250958601956001909301925b50505b600101612c26565b505050509450945094915050565b50505050565b60008260020154821015612d8c575060006110a1565b82600301548360020154830381612d9f57fe5b0490506110a1565b60408051808201909152600e81526d0a0e4d2c6ca40e8dede40d0d2ced60931b6020820152600160801b8410612e1e5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b50612e2a6004856142d4565b6040518060400160405280601881526020017f52657665616c20706572696f64206e6f7420616374697665000000000000000081525090612eac5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b506040805160208082018690528183018590526001600160a01b0388166060808401829052845180850390910181526080840180865281519184019190912060008a81526012855286812093815292909352908490205460e08401909452602380825293909114929091614d2d9060a0013990612f6a5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b5060006004817f00000000000000000000000000000000000000000000000000000000000000008781612f9957fe5b0681526020810191909152604001600020600181015490915060ff600160f81b8204811691600160f01b8104909116906001600160f01b03168180612ffe5750828015612ffe57506001600160a01b03891660009081526011602052604090205460ff165b6040518060400160405280602081526020017f45706f6368206e6f7420696e697469616c697a656420666f722072657665616c815250906130805760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b50600080613091868c8988876142ff565b915091506130d4868c84848d8d8f60405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c61435f565b60008a81526012602090815260408083206001600160a01b038f168085529083528184209390935580518c81529182018b905242828201526060820185905260808201849052518c92917f408bc8c9d02102257c33373c2df5771b03067bd8ea7ec60c35f314ec4ee99d05919081900360a00190a35050505050505050505050565b60006004817f0000000000000000000000000000000000000000000000000000000000000000848161318457fe5b0681526020019081526020016000209050806002015482146040518060400160405280601881526020017f45706f63682064617461206e6f7420617661696c61626c650000000000000000815250906124055760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cc2578181015183820152602001610caa565b82516060906000816001600160401b038111801561323b57600080fd5b50604051908082528060200260200182016040528015613265578160200160208202803683370190505b5090506000805b8381101561334e5760006001600160a01b031688828151811061328b57fe5b60200260200101516001600160a01b031614156132a757613346565b600061331e8783815181106132b857fe5b60200260200101518b60010160008c86815181106132d257fe5b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020548a858151811061330757fe5b602002602001015161418d9092919063ffffffff16565b90508084838151811061332d57fe5b6020908102919091010152613342838261447c565b9250505b60010161326c565b5080156133b95760005b838110156133b75761339861338b61271088848151811061337557fe5b60200260200101516144d690919063ffffffff16565b8385848151811061330757fe5b8382815181106133a457fe5b6020908102919091010152600101613358565b505b509695505050505050565b8151606090806001600160401b03811180156133df57600080fd5b50604051908082528060200260200182016040528015613409578160200160208202803683370190505b50915060005b818110156134ef5760006001600160a01b031685828151811061342e57fe5b60200260200101516001600160a01b0316146134cc57600086600101600087848151811061345857fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205490506134ae61271064e8d4a510008161349657fe5b04670de0b6b3a7640000028287858151811061330757fe5b8483815181106134ba57fe5b602002602001018181525050506134e7565b60008382815181106134da57fe5b6020026020010181815250505b60010161340f565b50509392505050565b600080805b85518110156135b65760006001600160a01b031686828151811061351d57fe5b60200260200101516001600160a01b0316146135ae57600061271061359687848151811061354757fe5b60200260200101518a60010160008b878151811061356157fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205488868151811061330757fe5b8161359d57fe5b0490506135aa838261447c565b9250505b6001016134fd565b5095945050505050565b60008083600801548310156135d757506000611d35565b836009015483106135eb5750611388611d35565b600884015460098501546101f49190819003908503611194028161360b57fe5b0401949350505050565b821561362857600254600f830155613630565b6000600f8301555b8061363c57600361363f565b60055b60108301805460ff1916600183600581111561365757fe5b021790555061366583610ad6565b827ffe8865c1fe85bbf124b9e0f16cccfeeb6f330454fd79475a31261c8fa250bc3083600f015460008060008760100160009054906101000a900460ff16426040518087815260200186151581526020018581526020018481526020018360058111156136ce57fe5b8152602001828152602001965050505050505060405180910390a25060010180546001600160f81b0316905550565b600d820154600090815b8181101561374a576000818152600e860160205260409020600101546001600160a01b03858116911614156137425760010191506110a19050565b600101613707565b506000949350505050565b60038201546002830154600183019091020192915050565b606080606061377a611efe565b60148054806020026020016040519081016040528092919081815260200182805480156137d057602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116137b2575b5050505050925082516001600160401b03811180156137ee57600080fd5b50604051908082528060200260200182016040528015613818578160200160208202803683370190505b50915082516001600160401b038111801561383257600080fd5b5060405190808252806020026020018201604052801561385c578160200160208202803683370190505b50905060005b835181101561395d5761389684828151811061387a57fe5b60209081029190910101516009546001600160f01b0316613963565b8382815181106138a257fe5b602002602001018181525050601581815481106138bb57fe5b9060005260206000200160009054906101000a90046001600160a01b03166001600160a01b031663eb91d37e6040518163ffffffff1660e01b8152600401604080518083038186803b15801561391057600080fd5b505afa158015613924573d6000803e3d6000fd5b505050506040513d604081101561393a57600080fd5b5051825183908390811061394a57fe5b6020908102919091010152600101613862565b50909192565b60006001600160a01b03831661397b575060006110a1565b826001600160a01b031663caeb942b836040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b1580156139c157600080fd5b505af11580156139d5573d6000803e3d6000fd5b505050506040513d60208110156139eb57600080fd5b505190506110a1565b613a01878785858561452f565b600a8701546003870155600b8701546004870155600586018590556006808701859055870154613a39908581613a3357fe5b04614598565b86546001600160801b0319166001600160801b039190911617865560078781015490870154613a6a919081613a3357fe5b86546001600160801b03918216600160801b0291161786555050506001909201805460ff60f01b1916600160f01b179055505050565b60006001600160a01b038416613ab857506000611d35565b836001600160a01b031663e587497e84846040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015613b0f57600080fd5b505af1158015613b23573d6000803e3d6000fd5b505050506040513d6020811015613b3957600080fd5b5051949350505050565b60008260040154613b548484613755565b019392505050565b600d8201546000908190815b81811015613bfe576000818152600e870160205260408120600101546001600160a01b0316905b8651811015613bf457868181518110613ba457fe5b60200260200101516001600160a01b0316826001600160a01b03161415613bec576000838152600e890160205260409020546001600160801b03169590950194600194909401935b600101613b8f565b5050600101613b68565b50509250929050565b600d830154606090806001600160401b0381118015613c2557600080fd5b50604051908082528060200260200182016040528015613c4f578160200160208202803683370190505b5091506000613c5d856145e0565b90506000613c6a856145e0565b9050600080613c7a898585614625565b90508315613c8a57806127100391505b60005b85811015613d115760008315613cd357613cd08a8381518110613cac57fe5b602002602001015164e8d4a510000261271088028661418d9092919063ffffffff16565b90505b60008315613ced57613cea8a8481518110613cac57fe5b90505b808201898481518110613cfc57fe5b60209081029190910101525050600101613c8d565b5050505050509392505050565b6000806000888a1415613d38575088915086905085613feb565b613d40614c22565b88815260208101889052613d52614c5f565b60208082018d905260408083018d90528051448184015242818301528151808203830181526060909101909152805191012060005b60208301516040840151613db99190816001818303018681613da557fe5b0601876000015188602001518f8f8f61468c565b606087015260408601528084528a518b91908110613dd357fe5b602002602001015183606001818152505087836060015181518110613df457fe5b6020026020010151846080018181525050836060015184604001518560800151010190508e60021415613ecf5760028106600282040160a0850181905280820360c0860152604085015110801590613e4f57508b8460a00151115b15613e7457825160001901604084015260608401516080850151016020850152613eca565b8360c001518460600151118015613e8e57508a8460c00151115b15613eaf578251600101602084015260408401516080850151018452613eca565b50505160408201516060909201519094509092509050613feb565b613fe6565b8e60011415613f60576004810460a0850181905280820360c08601526040850151118015613f0057508b8460a00151115b15613f2557825160001901604084015260608401516080850151016020850152613eca565b8360c00151846060015110158015613e8e57508a8460c001511115613eaf578251600101602084015260408401516080850151018452613eca565b6004810460c08501819052810360a08501819052604085015110801590613f8a57508b8460a00151115b15613faf57825160001901604084015260608401516080850151016020850152613fe6565b8360c001518460600151118015613fc957508a8460c00151115b15613eaf5782516001016020840152604084015160808501510184525b613d87565b985098509895505050505050565b600083851415614031578183868151811061401057fe5b60200260200101518151811061402257fe5b60200260200101519050612aac565b60008284876001018151811061404357fe5b60200260200101518151811061405557fe5b602002602001015190506000808760020190505b8681116140ad578486828151811061407d57fe5b60200260200101518151811061408f57fe5b60200260200101519150828210156140a5578192505b600101614069565b50909695505050505050565b60008085888a03880282136140d45789879250925050614181565b600085878c815181106140e357fe5b6020026020010151815181106140f557fe5b602090810291909101015190508a89016000815b60008c8e830302136141755789818151811061412157fe5b602002602001015191508389838151811061413857fe5b6020026020010151141561416e5787828151811061415257fe5b60200260200101518503945061416983828c614855565b918b01915b8b01614109565b50508990039350909150505b97509795505050505050565b60008082116141d6576040805162461bcd60e51b815260206004820152601060248201526f4469766973696f6e206279207a65726f60801b604482015290519081900360640190fd5b836141e357506000611d35565b838302838582816141f057fe5b0414156142095782818161420057fe5b04915050611d35565b600083868161421457fe5b049050600084878161422257fe5b069050600085878161423057fe5b049050600086888161423e57fe5b06905061428c6142588861425286856144d6565b906148bd565b61428661426586866144d6565b61428661427289876144d6565b6142868d6142808c8b6144d6565b906144d6565b9061447c565b9998505050505050505050565b604080516020808201949094526001600160a01b03929092168282015280518083038201815260609092019052805191012060019081161490565b6000806142e18484613755565b9050428111158015612aac5750836004015481014210949350505050565b600080831561431357506000905080614355565b849150614321878785614924565b87549091506001600160801b0380821691600160801b90041681841115614346578193505b80831115614352578092505b50505b9550959350505050565b600086600d0154905060006143808787878b600601548c60070154896149e2565b63ffffffff838116608083019081526000858152600e8c0160209081526040918290208551815492870151938701516001600160801b03199093166001600160801b039091161767ffffffffffffffff60801b1916600160801b6001600160401b0394851602176001600160c01b0316600160c01b939092169290920217815560608401516001918201805493516001600160a01b03199094166001600160a01b039092169190911763ffffffff60a01b1916600160a01b93851693909302929092179091558401600d8b015560088a01549192506144629190889061447c16565b60088901555050600a909501805490950190945550505050565b600082820183811015611d35576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000826144e5575060006110a1565b828202828482816144f257fe5b0414611d355760405162461bcd60e51b8152600401808060200182810382526021815260200180614d506021913960400191505060405180910390fd5b825161454490600b8601906020860190614b60565b506145518584848461321e565b805161456791600c870191602090910190614c87565b506000614575868685614a3f565b60078601819055905061458886826135c0565b8560090181905550505050505050565b6000600160801b82106145dc5760405162461bcd60e51b8152600401808060200182810382526027815260200180614d066027913960400191505060405180910390fd5b5090565b600080805b835181101561461e576146148482815181106145fd57fe5b60200260200101518361447c90919063ffffffff16565b91506001016145e5565b5092915050565b60008161463457506000611d35565b826146425750612710611d35565b60006146568361271064e8d4a5100061418d565b90508460030154811061466f5750506009830154611d35565b6003850154600986015461468491839061418d565b915050611d35565b60008060008085878b8151811061469f57fe5b6020026020010151815181106146b157fe5b60200260200101519050600060026001600160401b03811180156146d457600080fd5b506040519080825280602002602001820160405280156146fe578160200160208202803683370190505b509050898160008151811061470f57fe5b602002602001018181525050888160018151811061472957fe5b60209081029190910101528c8c6147418d828c614855565b81805b828110156148055760008c828151811061475a57fe5b60200260200101519050868c828151811061477157fe5b602002602001015110156147c8578a818151811061478b57fe5b6020026020010151866000815181106147a057fe5b6020026020010181815101915081815250506147bd83838f614855565b6001909201916147fc565b8a81815181106147d457fe5b6020026020010151866001815181106147e957fe5b6020026020010181815101915081815250505b50600101614744565b5061481182828d614855565b808460008151811061481f57fe5b60200260200101518560018151811061483457fe5b60200260200101519750975097505050505050985098509895505050505050565b8183141561486257610c03565b80828151811061486e57fe5b602002602001015181848151811061488257fe5b602002602001015182858151811061489657fe5b602002602001018385815181106148a957fe5b602090810291909101019190915252505050565b6000808211614913576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161491c57fe5b049392505050565b600b83015460009081906001600160401b038111801561494357600080fd5b5060405190808252806020026020018201604052801561496d578160200160208202803683370190505b50905060005b600b8601548110156149cc576149ad86600b01828154811061499157fe5b6000918252602090912001546001600160a01b03168686613aa0565b8282815181106149b957fe5b6020908102919091010152600101614973565b506149d960048683614a3f565b95945050505050565b6149ea614cc2565b6001600160a01b0387166060820152614a038685614b2f565b6001600160401b03166020820152614a1b8584614b2f565b6001600160401b031660408201526001600160801b03909116815295945050505050565b600080805b600b850154811015614b265760006001600160a01b031685600b018281548110614a6a57fe5b6000918252602090912001546001600160a01b03161415614a8a57614b1e565b614b1b612710614b0b868481518110614a9f57fe5b60200260200101518960010160008a600b018781548110614abc57fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902054600c8a01805487908110614af157fe5b906000526020600020015461418d9092919063ffffffff16565b81614b1257fe5b8491900461447c565b91505b600101614a44565b50949350505050565b6000811580614b3c575082155b15614b49575060006110a1565b614b598364e8d4a510008461418d565b90506110a1565b828054828255906000526020600020908101928215614bb5579160200282015b82811115614bb557825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190614b80565b506145dc929150614cf0565b6040518061018001604052806000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040518060e00160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040518060800160405280600081526020016000815260200160008152602001600081525090565b828054828255906000526020600020908101928215614bb5579160200282015b82811115614bb5578251825591602001919060010190614ca7565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b5b808211156145dc5760008155600101614cf156fe53616665436173743a2076616c756520646f65736e27742066697420696e203132382062697473507269636520616c72656164792072657665616c6564206f72206e6f742076616c6964536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122038ae2937ee38df555350a820be30dfd12d0df95295a6e0be86bfc7c29504342d64736f6c63430007060033",
953
+ "linkReferences": {},
954
+ "deployedLinkReferences": {}
955
+ }