@towns-labs/generated 2.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 (576) hide show
  1. package/README.md +35 -0
  2. package/config/deployments.json +179 -0
  3. package/deployments/alpha/.env +19 -0
  4. package/deployments/alpha/.env.vite +19 -0
  5. package/deployments/alpha/base/addresses/accountModules.json +3 -0
  6. package/deployments/alpha/base/addresses/appRegistry.json +3 -0
  7. package/deployments/alpha/base/addresses/baseRegistry.json +1 -0
  8. package/deployments/alpha/base/addresses/l2Registrar.json +3 -0
  9. package/deployments/alpha/base/addresses/l2Resolver.json +3 -0
  10. package/deployments/alpha/base/addresses/riverAirdrop.json +3 -0
  11. package/deployments/alpha/base/addresses/simpleAppBeacon.json +3 -0
  12. package/deployments/alpha/base/addresses/space.json +1 -0
  13. package/deployments/alpha/base/addresses/spaceFactory.json +1 -0
  14. package/deployments/alpha/base/addresses/spaceOwner.json +1 -0
  15. package/deployments/alpha/base/addresses/subscriptionModule.json +3 -0
  16. package/deployments/alpha/base/addresses/swapRouter.json +3 -0
  17. package/deployments/alpha/base/addresses/utils/towns.json +3 -0
  18. package/deployments/alpha/base/chainId.json +1 -0
  19. package/deployments/alpha/mainnet/addresses/l1Resolver.json +3 -0
  20. package/deployments/alpha/mainnet/chainId.json +3 -0
  21. package/deployments/alpha/river/addresses/riverRegistry.json +1 -0
  22. package/deployments/alpha/river/chainId.json +1 -0
  23. package/deployments/beta/.env +16 -0
  24. package/deployments/beta/.env.vite +16 -0
  25. package/deployments/beta/base/addresses/accountModules.json +3 -0
  26. package/deployments/beta/base/addresses/appRegistry.json +3 -0
  27. package/deployments/beta/base/addresses/baseRegistry.json +3 -0
  28. package/deployments/beta/base/addresses/riverAirdrop.json +3 -0
  29. package/deployments/beta/base/addresses/space.json +3 -0
  30. package/deployments/beta/base/addresses/spaceFactory.json +3 -0
  31. package/deployments/beta/base/addresses/spaceOwner.json +3 -0
  32. package/deployments/beta/base/addresses/subscriptionModule.json +3 -0
  33. package/deployments/beta/base/addresses/swapRouter.json +3 -0
  34. package/deployments/beta/base/addresses/utils/tieredLogPricingV2.json +3 -0
  35. package/deployments/beta/base/addresses/utils/tieredLogPricingV3.json +3 -0
  36. package/deployments/beta/base/addresses/utils/towns.json +3 -0
  37. package/deployments/beta/base/chainId.json +3 -0
  38. package/deployments/beta/river/addresses/riverRegistry.json +3 -0
  39. package/deployments/beta/river/chainId.json +3 -0
  40. package/deployments/delta/.env +13 -0
  41. package/deployments/delta/.env.vite +13 -0
  42. package/deployments/delta/base/addresses/appRegistry.json +3 -0
  43. package/deployments/delta/base/addresses/baseRegistry.json +3 -0
  44. package/deployments/delta/base/addresses/riverAirdrop.json +3 -0
  45. package/deployments/delta/base/addresses/space.json +3 -0
  46. package/deployments/delta/base/addresses/spaceFactory.json +3 -0
  47. package/deployments/delta/base/addresses/spaceOwner.json +3 -0
  48. package/deployments/delta/base/addresses/subscriptionModule.json +3 -0
  49. package/deployments/delta/base/addresses/swapRouter.json +3 -0
  50. package/deployments/delta/base/addresses/utils/towns.json +3 -0
  51. package/deployments/delta/base/chainId.json +3 -0
  52. package/deployments/delta/river/addresses/riverRegistry.json +3 -0
  53. package/deployments/delta/river/chainId.json +3 -0
  54. package/deployments/gamma/.env +19 -0
  55. package/deployments/gamma/.env.vite +19 -0
  56. package/deployments/gamma/base/addresses/appRegistry.json +3 -0
  57. package/deployments/gamma/base/addresses/baseRegistry.json +1 -0
  58. package/deployments/gamma/base/addresses/riverAirdrop.json +3 -0
  59. package/deployments/gamma/base/addresses/space.json +1 -0
  60. package/deployments/gamma/base/addresses/spaceFactory.json +1 -0
  61. package/deployments/gamma/base/addresses/spaceOwner.json +1 -0
  62. package/deployments/gamma/base/addresses/subscriptionModule.json +3 -0
  63. package/deployments/gamma/base/addresses/swapRouter.json +3 -0
  64. package/deployments/gamma/base/addresses/utils/towns.json +3 -0
  65. package/deployments/gamma/base/chainId.json +1 -0
  66. package/deployments/gamma/bnb/addresses/utils/towns.json +3 -0
  67. package/deployments/gamma/bnb/chainId.json +3 -0
  68. package/deployments/gamma/river/addresses/riverRegistry.json +1 -0
  69. package/deployments/gamma/river/chainId.json +1 -0
  70. package/deployments/gamma/sepolia/addresses/townsMainnet.json +3 -0
  71. package/deployments/gamma/sepolia/addresses/utils/proxyBatchDelegation.json +3 -0
  72. package/deployments/gamma/sepolia/addresses/utils/wrappedTowns.json +3 -0
  73. package/deployments/gamma/sepolia/chainId.json +3 -0
  74. package/deployments/local_dev/.env +16 -0
  75. package/deployments/omega/.env +25 -0
  76. package/deployments/omega/.env.vite +25 -0
  77. package/deployments/omega/base/addresses/accountModules.json +3 -0
  78. package/deployments/omega/base/addresses/appRegistry.json +3 -0
  79. package/deployments/omega/base/addresses/baseRegistry.json +1 -0
  80. package/deployments/omega/base/addresses/entryPoint.json +3 -0
  81. package/deployments/omega/base/addresses/riverAirdrop.json +3 -0
  82. package/deployments/omega/base/addresses/simpleAppBeacon.json +3 -0
  83. package/deployments/omega/base/addresses/space.json +1 -0
  84. package/deployments/omega/base/addresses/spaceFactory.json +1 -0
  85. package/deployments/omega/base/addresses/spaceOwner.json +1 -0
  86. package/deployments/omega/base/addresses/subscriptionModule.json +3 -0
  87. package/deployments/omega/base/addresses/swapRouter.json +3 -0
  88. package/deployments/omega/base/addresses/utils/towns.json +3 -0
  89. package/deployments/omega/base/chainId.json +1 -0
  90. package/deployments/omega/bnb/addresses/townsBnb.json +3 -0
  91. package/deployments/omega/bnb/chainId.json +3 -0
  92. package/deployments/omega/gnosis/addresses/poapEntitlement.json +3 -0
  93. package/deployments/omega/gnosis/chainId.json +3 -0
  94. package/deployments/omega/mainnet/addresses/townsMainnet.json +3 -0
  95. package/deployments/omega/mainnet/addresses/utils/proxyBatchDelegation.json +3 -0
  96. package/deployments/omega/mainnet/addresses/wTowns.json +3 -0
  97. package/deployments/omega/mainnet/chainId.json +3 -0
  98. package/deployments/omega/mainnet/river.json +3 -0
  99. package/deployments/omega/river/addresses/riverRegistry.json +1 -0
  100. package/deployments/omega/river/chainId.json +1 -0
  101. package/dev/.contracts-hash +1 -0
  102. package/dev/abis/Architect.abi.json +299 -0
  103. package/dev/abis/Architect.abi.ts +299 -0
  104. package/dev/abis/Channels.abi.json +1619 -0
  105. package/dev/abis/Channels.abi.ts +1619 -0
  106. package/dev/abis/Diamond.abi.json +244 -0
  107. package/dev/abis/Diamond.abi.ts +244 -0
  108. package/dev/abis/DiamondCutFacet.abi.json +314 -0
  109. package/dev/abis/DiamondCutFacet.abi.ts +314 -0
  110. package/dev/abis/DropFacet.abi.json +834 -0
  111. package/dev/abis/DropFacet.abi.ts +834 -0
  112. package/dev/abis/ERC721A__IERC721ReceiverUpgradeable.abi.json +36 -0
  113. package/dev/abis/ERC721A__IERC721ReceiverUpgradeable.abi.ts +36 -0
  114. package/dev/abis/EntitlementsManager.abi.json +1251 -0
  115. package/dev/abis/EntitlementsManager.abi.ts +1251 -0
  116. package/dev/abis/GuardianFacet.abi.json +246 -0
  117. package/dev/abis/GuardianFacet.abi.ts +246 -0
  118. package/dev/abis/IAppAccount.abi.json +477 -0
  119. package/dev/abis/IAppAccount.abi.ts +477 -0
  120. package/dev/abis/IAppAccountBase.abi.json +280 -0
  121. package/dev/abis/IAppAccountBase.abi.ts +280 -0
  122. package/dev/abis/IAppFactory.abi.json +317 -0
  123. package/dev/abis/IAppFactory.abi.ts +317 -0
  124. package/dev/abis/IAppFactoryBase.abi.json +114 -0
  125. package/dev/abis/IAppFactoryBase.abi.ts +114 -0
  126. package/dev/abis/IAppInstaller.abi.json +89 -0
  127. package/dev/abis/IAppInstaller.abi.ts +89 -0
  128. package/dev/abis/IAppRegistry.abi.json +634 -0
  129. package/dev/abis/IAppRegistry.abi.ts +634 -0
  130. package/dev/abis/IAppRegistryBase.abi.json +287 -0
  131. package/dev/abis/IAppRegistryBase.abi.ts +287 -0
  132. package/dev/abis/IBanning.abi.json +141 -0
  133. package/dev/abis/IBanning.abi.ts +141 -0
  134. package/dev/abis/IBanningBase.abi.json +83 -0
  135. package/dev/abis/IBanningBase.abi.ts +83 -0
  136. package/dev/abis/ICreateSpace.abi.json +724 -0
  137. package/dev/abis/ICreateSpace.abi.ts +724 -0
  138. package/dev/abis/ICreateSpaceBase.abi.json +7 -0
  139. package/dev/abis/ICreateSpaceBase.abi.ts +7 -0
  140. package/dev/abis/ICrossChainEntitlement.abi.json +56 -0
  141. package/dev/abis/ICrossChainEntitlement.abi.ts +56 -0
  142. package/dev/abis/IERC5267.abi.json +51 -0
  143. package/dev/abis/IERC5267.abi.ts +51 -0
  144. package/dev/abis/IERC721A.abi.json +422 -0
  145. package/dev/abis/IERC721A.abi.ts +422 -0
  146. package/dev/abis/IERC721ABase.abi.json +173 -0
  147. package/dev/abis/IERC721ABase.abi.ts +173 -0
  148. package/dev/abis/IERC721AQueryable.abi.json +308 -0
  149. package/dev/abis/IERC721AQueryable.abi.ts +308 -0
  150. package/dev/abis/IEntitlementChecker.abi.json +357 -0
  151. package/dev/abis/IEntitlementChecker.abi.ts +357 -0
  152. package/dev/abis/IEntitlementCheckerBase.abi.json +168 -0
  153. package/dev/abis/IEntitlementCheckerBase.abi.ts +168 -0
  154. package/dev/abis/IEntitlementDataQueryable.abi.json +105 -0
  155. package/dev/abis/IEntitlementDataQueryable.abi.ts +105 -0
  156. package/dev/abis/IEntitlementDataQueryableBase.abi.json +1 -0
  157. package/dev/abis/IEntitlementDataQueryableBase.abi.ts +1 -0
  158. package/dev/abis/IEntitlementGated.abi.json +209 -0
  159. package/dev/abis/IEntitlementGated.abi.ts +209 -0
  160. package/dev/abis/IEntitlementGatedBase.abi.json +71 -0
  161. package/dev/abis/IEntitlementGatedBase.abi.ts +71 -0
  162. package/dev/abis/IIdentityRegistry.abi.json +265 -0
  163. package/dev/abis/IIdentityRegistry.abi.ts +265 -0
  164. package/dev/abis/IIdentityRegistryBase.abi.json +113 -0
  165. package/dev/abis/IIdentityRegistryBase.abi.ts +113 -0
  166. package/dev/abis/IMembershipMetadata.abi.json +28 -0
  167. package/dev/abis/IMembershipMetadata.abi.ts +28 -0
  168. package/dev/abis/IMulticall.abi.json +21 -0
  169. package/dev/abis/IMulticall.abi.ts +21 -0
  170. package/dev/abis/INodeOperator.abi.json +299 -0
  171. package/dev/abis/INodeOperator.abi.ts +299 -0
  172. package/dev/abis/INodeOperatorBase.abi.json +148 -0
  173. package/dev/abis/INodeOperatorBase.abi.ts +148 -0
  174. package/dev/abis/IPausable.abi.json +65 -0
  175. package/dev/abis/IPausable.abi.ts +65 -0
  176. package/dev/abis/IPausableBase.abi.json +38 -0
  177. package/dev/abis/IPausableBase.abi.ts +38 -0
  178. package/dev/abis/IPricingModules.abi.json +127 -0
  179. package/dev/abis/IPricingModules.abi.ts +127 -0
  180. package/dev/abis/IPricingModulesBase.abi.json +52 -0
  181. package/dev/abis/IPricingModulesBase.abi.ts +52 -0
  182. package/dev/abis/IReputationRegistry.abi.json +440 -0
  183. package/dev/abis/IReputationRegistry.abi.ts +440 -0
  184. package/dev/abis/IReputationRegistryBase.abi.json +119 -0
  185. package/dev/abis/IReputationRegistryBase.abi.ts +119 -0
  186. package/dev/abis/IReview.abi.json +184 -0
  187. package/dev/abis/IReview.abi.ts +184 -0
  188. package/dev/abis/IReviewBase.abi.json +85 -0
  189. package/dev/abis/IReviewBase.abi.ts +85 -0
  190. package/dev/abis/IRuleEntitlement.abi.json +448 -0
  191. package/dev/abis/IRuleEntitlement.abi.ts +448 -0
  192. package/dev/abis/IRuleEntitlementBase.abi.json +110 -0
  193. package/dev/abis/IRuleEntitlementBase.abi.ts +110 -0
  194. package/dev/abis/IRuleEntitlementV2.abi.json +448 -0
  195. package/dev/abis/IRuleEntitlementV2.abi.ts +448 -0
  196. package/dev/abis/ISimpleApp.abi.json +276 -0
  197. package/dev/abis/ISimpleApp.abi.ts +276 -0
  198. package/dev/abis/ISimpleAppBase.abi.json +170 -0
  199. package/dev/abis/ISimpleAppBase.abi.ts +170 -0
  200. package/dev/abis/ISpaceDelegation.abi.json +207 -0
  201. package/dev/abis/ISpaceDelegation.abi.ts +207 -0
  202. package/dev/abis/ISpaceDelegationBase.abi.json +93 -0
  203. package/dev/abis/ISpaceDelegationBase.abi.ts +93 -0
  204. package/dev/abis/ISwapFacet.abi.json +467 -0
  205. package/dev/abis/ISwapFacet.abi.ts +467 -0
  206. package/dev/abis/ISwapFacetBase.abi.json +84 -0
  207. package/dev/abis/ISwapFacetBase.abi.ts +84 -0
  208. package/dev/abis/ISwapRouter.abi.json +504 -0
  209. package/dev/abis/ISwapRouter.abi.ts +504 -0
  210. package/dev/abis/ISwapRouterBase.abi.json +146 -0
  211. package/dev/abis/ISwapRouterBase.abi.ts +146 -0
  212. package/dev/abis/ITipping.abi.json +330 -0
  213. package/dev/abis/ITipping.abi.ts +330 -0
  214. package/dev/abis/ITippingBase.abi.json +144 -0
  215. package/dev/abis/ITippingBase.abi.ts +144 -0
  216. package/dev/abis/ITownsApp.abi.json +194 -0
  217. package/dev/abis/ITownsApp.abi.ts +194 -0
  218. package/dev/abis/ITownsPoints.abi.json +153 -0
  219. package/dev/abis/ITownsPoints.abi.ts +153 -0
  220. package/dev/abis/ITownsPointsBase.abi.json +53 -0
  221. package/dev/abis/ITownsPointsBase.abi.ts +53 -0
  222. package/dev/abis/ITreasury.abi.json +132 -0
  223. package/dev/abis/ITreasury.abi.ts +132 -0
  224. package/dev/abis/MainnetDelegation.abi.json +517 -0
  225. package/dev/abis/MainnetDelegation.abi.ts +517 -0
  226. package/dev/abis/Member.abi.json +795 -0
  227. package/dev/abis/Member.abi.ts +795 -0
  228. package/dev/abis/MembershipFacet.abi.json +2347 -0
  229. package/dev/abis/MembershipFacet.abi.ts +2347 -0
  230. package/dev/abis/MockCrossChainEntitlement.abi.json +98 -0
  231. package/dev/abis/MockCrossChainEntitlement.abi.ts +98 -0
  232. package/dev/abis/MockERC721A.abi.json +554 -0
  233. package/dev/abis/MockERC721A.abi.ts +554 -0
  234. package/dev/abis/MockEntitlementGated.abi.json +976 -0
  235. package/dev/abis/MockEntitlementGated.abi.ts +976 -0
  236. package/dev/abis/MockLegacyArchitect.abi.json +366 -0
  237. package/dev/abis/MockLegacyArchitect.abi.ts +366 -0
  238. package/dev/abis/MockRiverRegistry.abi.json +1351 -0
  239. package/dev/abis/MockRiverRegistry.abi.ts +1351 -0
  240. package/dev/abis/MockWalletLink.abi.json +472 -0
  241. package/dev/abis/MockWalletLink.abi.ts +472 -0
  242. package/dev/abis/MockWalletLinkStorage.abi.json +1 -0
  243. package/dev/abis/MockWalletLinkStorage.abi.ts +1 -0
  244. package/dev/abis/NodeRegistry.abi.json +389 -0
  245. package/dev/abis/NodeRegistry.abi.ts +389 -0
  246. package/dev/abis/OperatorRegistry.abi.json +193 -0
  247. package/dev/abis/OperatorRegistry.abi.ts +193 -0
  248. package/dev/abis/OwnableFacet.abi.json +135 -0
  249. package/dev/abis/OwnableFacet.abi.ts +135 -0
  250. package/dev/abis/PlatformRequirementsFacet.abi.json +522 -0
  251. package/dev/abis/PlatformRequirementsFacet.abi.ts +522 -0
  252. package/dev/abis/ProxyManager.abi.json +165 -0
  253. package/dev/abis/ProxyManager.abi.ts +165 -0
  254. package/dev/abis/RewardsDistributionV2.abi.json +1295 -0
  255. package/dev/abis/RewardsDistributionV2.abi.ts +1295 -0
  256. package/dev/abis/Roles.abi.json +1583 -0
  257. package/dev/abis/Roles.abi.ts +1583 -0
  258. package/dev/abis/SpaceOwner.abi.json +1136 -0
  259. package/dev/abis/SpaceOwner.abi.ts +1136 -0
  260. package/dev/abis/StreamFlags.abi.json +1 -0
  261. package/dev/abis/StreamFlags.abi.ts +1 -0
  262. package/dev/abis/StreamRegistry.abi.json +543 -0
  263. package/dev/abis/StreamRegistry.abi.ts +543 -0
  264. package/dev/abis/SubscriptionModuleFacet.abi.json +1132 -0
  265. package/dev/abis/SubscriptionModuleFacet.abi.ts +1132 -0
  266. package/dev/abis/TokenPausableFacet.abi.json +166 -0
  267. package/dev/abis/TokenPausableFacet.abi.ts +166 -0
  268. package/dev/abis/Towns.abi.json +1202 -0
  269. package/dev/abis/Towns.abi.ts +1202 -0
  270. package/dev/abis/UserEntitlement.abi.json +331 -0
  271. package/dev/abis/UserEntitlement.abi.ts +331 -0
  272. package/dev/abis/WalletLink.abi.json +841 -0
  273. package/dev/abis/WalletLink.abi.ts +841 -0
  274. package/dev/typings/Architect.ts +421 -0
  275. package/dev/typings/Channels.ts +1435 -0
  276. package/dev/typings/DropFacet.ts +733 -0
  277. package/dev/typings/ERC721A/IERC721A.ts +596 -0
  278. package/dev/typings/ERC721A/index.ts +4 -0
  279. package/dev/typings/EntitlementsManager.ts +1054 -0
  280. package/dev/typings/GuardianFacet.ts +419 -0
  281. package/dev/typings/IAppAccount.ts +542 -0
  282. package/dev/typings/IAppFactory.ts +440 -0
  283. package/dev/typings/IAppInstaller.ts +239 -0
  284. package/dev/typings/IAppRegistry.ts +724 -0
  285. package/dev/typings/IArchitect.ts +275 -0
  286. package/dev/typings/IBanning.ts +211 -0
  287. package/dev/typings/IChannel.ts +574 -0
  288. package/dev/typings/ICreateSpace.ts +505 -0
  289. package/dev/typings/ICrossChainEntitlement.ts +142 -0
  290. package/dev/typings/IDiamond.ts +55 -0
  291. package/dev/typings/IDiamondCut.ts +157 -0
  292. package/dev/typings/IDropFacet.ts +573 -0
  293. package/dev/typings/IERC5267.ts +143 -0
  294. package/dev/typings/IERC721A.ts +596 -0
  295. package/dev/typings/IERC721AQueryable.ts +346 -0
  296. package/dev/typings/IEntitlementChecker.ts +533 -0
  297. package/dev/typings/IEntitlementDataQueryable.ts +198 -0
  298. package/dev/typings/IEntitlementsManager.ts +399 -0
  299. package/dev/typings/IIdentityRegistry.ts +418 -0
  300. package/dev/typings/IMembershipMetadata.ts +125 -0
  301. package/dev/typings/IMockLegacyArchitect.sol/ILegacyArchitect.ts +294 -0
  302. package/dev/typings/IMockLegacyArchitect.sol/index.ts +4 -0
  303. package/dev/typings/IMulticall.ts +98 -0
  304. package/dev/typings/INodeOperator.ts +457 -0
  305. package/dev/typings/INodeRegistry.ts +556 -0
  306. package/dev/typings/IOperatorRegistry.ts +212 -0
  307. package/dev/typings/IPausable.ts +153 -0
  308. package/dev/typings/IPricingModules.ts +277 -0
  309. package/dev/typings/IProxyManager.ts +168 -0
  310. package/dev/typings/IReputationRegistry.ts +678 -0
  311. package/dev/typings/IReview.ts +258 -0
  312. package/dev/typings/IRoles.ts +758 -0
  313. package/dev/typings/IRuleEntitlement.sol/IRuleEntitlement.ts +452 -0
  314. package/dev/typings/IRuleEntitlement.sol/IRuleEntitlementV2.ts +452 -0
  315. package/dev/typings/IRuleEntitlement.sol/index.ts +5 -0
  316. package/dev/typings/ISimpleApp.ts +437 -0
  317. package/dev/typings/ISpaceDelegation.ts +371 -0
  318. package/dev/typings/IStreamRegistry.ts +709 -0
  319. package/dev/typings/ISwapFacet.ts +495 -0
  320. package/dev/typings/ISwapRouter.ts +507 -0
  321. package/dev/typings/ITipping.ts +456 -0
  322. package/dev/typings/ITownsApp.ts +371 -0
  323. package/dev/typings/ITownsPoints.ts +291 -0
  324. package/dev/typings/ITreasury.ts +270 -0
  325. package/dev/typings/IWalletLink.ts +849 -0
  326. package/dev/typings/MainnetDelegation.ts +707 -0
  327. package/dev/typings/Member.ts +1009 -0
  328. package/dev/typings/MembershipFacet.ts +2164 -0
  329. package/dev/typings/MockERC721A.ts +771 -0
  330. package/dev/typings/MockEntitlementGated.ts +734 -0
  331. package/dev/typings/MockLegacyArchitect.ts +396 -0
  332. package/dev/typings/NodeRegistry.ts +579 -0
  333. package/dev/typings/OperatorRegistry.ts +319 -0
  334. package/dev/typings/OwnableFacet.ts +228 -0
  335. package/dev/typings/PlatformRequirementsFacet.ts +883 -0
  336. package/dev/typings/RewardsDistributionV2.ts +1723 -0
  337. package/dev/typings/Roles.ts +1416 -0
  338. package/dev/typings/SpaceOwner.ts +1466 -0
  339. package/dev/typings/StreamRegistry.ts +715 -0
  340. package/dev/typings/SubscriptionModuleFacet.ts +1450 -0
  341. package/dev/typings/TokenPausableFacet.ts +252 -0
  342. package/dev/typings/Towns.ts +1709 -0
  343. package/dev/typings/UserEntitlement.ts +490 -0
  344. package/dev/typings/WalletLink.ts +959 -0
  345. package/dev/typings/apps/ITownsApp.ts +371 -0
  346. package/dev/typings/apps/index.ts +4 -0
  347. package/dev/typings/banning/IBanning.ts +211 -0
  348. package/dev/typings/banning/index.ts +4 -0
  349. package/dev/typings/base/Towns.ts +1709 -0
  350. package/dev/typings/base/index.ts +4 -0
  351. package/dev/typings/channels/IChannel.ts +574 -0
  352. package/dev/typings/channels/index.ts +4 -0
  353. package/dev/typings/common.ts +44 -0
  354. package/dev/typings/cut/IDiamondCut.ts +157 -0
  355. package/dev/typings/cut/index.ts +4 -0
  356. package/dev/typings/delegation/ISpaceDelegation.ts +371 -0
  357. package/dev/typings/delegation/index.ts +4 -0
  358. package/dev/typings/drop/IDropFacet.ts +573 -0
  359. package/dev/typings/drop/index.ts +4 -0
  360. package/dev/typings/entitlements/ICrossChainEntitlement.ts +142 -0
  361. package/dev/typings/entitlements/IEntitlementsManager.ts +399 -0
  362. package/dev/typings/entitlements/index.ts +5 -0
  363. package/dev/typings/extensions/IERC721AQueryable.ts +346 -0
  364. package/dev/typings/extensions/IEntitlementDataQueryable.ts +198 -0
  365. package/dev/typings/extensions/index.ts +5 -0
  366. package/dev/typings/factories/Architect__factory.ts +356 -0
  367. package/dev/typings/factories/Channels__factory.ts +1676 -0
  368. package/dev/typings/factories/DropFacet__factory.ts +891 -0
  369. package/dev/typings/factories/ERC721A/IERC721A__factory.ts +443 -0
  370. package/dev/typings/factories/ERC721A/index.ts +4 -0
  371. package/dev/typings/factories/EntitlementsManager__factory.ts +1311 -0
  372. package/dev/typings/factories/GuardianFacet__factory.ts +303 -0
  373. package/dev/typings/factories/IAppAccount__factory.ts +498 -0
  374. package/dev/typings/factories/IAppFactory__factory.ts +338 -0
  375. package/dev/typings/factories/IAppInstaller__factory.ts +110 -0
  376. package/dev/typings/factories/IAppRegistry__factory.ts +655 -0
  377. package/dev/typings/factories/IArchitect__factory.ts +157 -0
  378. package/dev/typings/factories/IBanning__factory.ts +162 -0
  379. package/dev/typings/factories/IChannel__factory.ts +380 -0
  380. package/dev/typings/factories/ICreateSpace__factory.ts +745 -0
  381. package/dev/typings/factories/ICrossChainEntitlement__factory.ts +84 -0
  382. package/dev/typings/factories/IDiamondCut__factory.ts +207 -0
  383. package/dev/typings/factories/IDiamond__factory.ts +28 -0
  384. package/dev/typings/factories/IDropFacet__factory.ts +666 -0
  385. package/dev/typings/factories/IERC5267__factory.ts +72 -0
  386. package/dev/typings/factories/IERC721AQueryable__factory.ts +332 -0
  387. package/dev/typings/factories/IERC721A__factory.ts +443 -0
  388. package/dev/typings/factories/IEntitlementChecker__factory.ts +381 -0
  389. package/dev/typings/factories/IEntitlementDataQueryable__factory.ts +133 -0
  390. package/dev/typings/factories/IEntitlementsManager__factory.ts +236 -0
  391. package/dev/typings/factories/IIdentityRegistry__factory.ts +289 -0
  392. package/dev/typings/factories/IMembershipMetadata__factory.ts +52 -0
  393. package/dev/typings/factories/IMockLegacyArchitect.sol/ILegacyArchitect__factory.ts +289 -0
  394. package/dev/typings/factories/IMockLegacyArchitect.sol/index.ts +4 -0
  395. package/dev/typings/factories/IMulticall__factory.ts +42 -0
  396. package/dev/typings/factories/INodeOperator__factory.ts +320 -0
  397. package/dev/typings/factories/INodeRegistry__factory.ts +375 -0
  398. package/dev/typings/factories/IOperatorRegistry__factory.ts +110 -0
  399. package/dev/typings/factories/IPausable__factory.ts +86 -0
  400. package/dev/typings/factories/IPricingModules__factory.ts +151 -0
  401. package/dev/typings/factories/IProxyManager__factory.ts +79 -0
  402. package/dev/typings/factories/IReputationRegistry__factory.ts +464 -0
  403. package/dev/typings/factories/IReview__factory.ts +205 -0
  404. package/dev/typings/factories/IRoles__factory.ts +552 -0
  405. package/dev/typings/factories/IRuleEntitlement.sol/IRuleEntitlementV2__factory.ts +472 -0
  406. package/dev/typings/factories/IRuleEntitlement.sol/IRuleEntitlement__factory.ts +472 -0
  407. package/dev/typings/factories/IRuleEntitlement.sol/index.ts +5 -0
  408. package/dev/typings/factories/ISimpleApp__factory.ts +297 -0
  409. package/dev/typings/factories/ISpaceDelegation__factory.ts +231 -0
  410. package/dev/typings/factories/IStreamRegistry__factory.ts +567 -0
  411. package/dev/typings/factories/ISwapFacet__factory.ts +488 -0
  412. package/dev/typings/factories/ISwapRouter__factory.ts +525 -0
  413. package/dev/typings/factories/ITipping__factory.ts +351 -0
  414. package/dev/typings/factories/ITownsApp__factory.ts +215 -0
  415. package/dev/typings/factories/ITownsPoints__factory.ts +174 -0
  416. package/dev/typings/factories/ITreasury__factory.ts +153 -0
  417. package/dev/typings/factories/IWalletLink__factory.ts +739 -0
  418. package/dev/typings/factories/MainnetDelegation__factory.ts +577 -0
  419. package/dev/typings/factories/Member__factory.ts +876 -0
  420. package/dev/typings/factories/MembershipFacet__factory.ts +2407 -0
  421. package/dev/typings/factories/MockERC721A__factory.ts +611 -0
  422. package/dev/typings/factories/MockEntitlementGated__factory.ts +1045 -0
  423. package/dev/typings/factories/MockLegacyArchitect__factory.ts +432 -0
  424. package/dev/typings/factories/NodeRegistry__factory.ts +446 -0
  425. package/dev/typings/factories/OperatorRegistry__factory.ts +253 -0
  426. package/dev/typings/factories/OwnableFacet__factory.ts +192 -0
  427. package/dev/typings/factories/PlatformRequirementsFacet__factory.ts +586 -0
  428. package/dev/typings/factories/RewardsDistributionV2__factory.ts +1359 -0
  429. package/dev/typings/factories/Roles__factory.ts +1635 -0
  430. package/dev/typings/factories/SpaceOwner__factory.ts +1193 -0
  431. package/dev/typings/factories/StreamRegistry__factory.ts +603 -0
  432. package/dev/typings/factories/SubscriptionModuleFacet__factory.ts +1196 -0
  433. package/dev/typings/factories/TokenPausableFacet__factory.ts +226 -0
  434. package/dev/typings/factories/Towns__factory.ts +1254 -0
  435. package/dev/typings/factories/UserEntitlement__factory.ts +391 -0
  436. package/dev/typings/factories/WalletLink__factory.ts +898 -0
  437. package/dev/typings/factories/apps/ITownsApp__factory.ts +215 -0
  438. package/dev/typings/factories/apps/index.ts +4 -0
  439. package/dev/typings/factories/banning/IBanning__factory.ts +162 -0
  440. package/dev/typings/factories/banning/index.ts +4 -0
  441. package/dev/typings/factories/base/Towns__factory.ts +1254 -0
  442. package/dev/typings/factories/base/index.ts +4 -0
  443. package/dev/typings/factories/channels/IChannel__factory.ts +380 -0
  444. package/dev/typings/factories/channels/index.ts +4 -0
  445. package/dev/typings/factories/cut/IDiamondCut__factory.ts +207 -0
  446. package/dev/typings/factories/cut/index.ts +4 -0
  447. package/dev/typings/factories/delegation/ISpaceDelegation__factory.ts +231 -0
  448. package/dev/typings/factories/delegation/index.ts +4 -0
  449. package/dev/typings/factories/drop/IDropFacet__factory.ts +666 -0
  450. package/dev/typings/factories/drop/index.ts +4 -0
  451. package/dev/typings/factories/entitlements/ICrossChainEntitlement__factory.ts +84 -0
  452. package/dev/typings/factories/entitlements/IEntitlementsManager__factory.ts +236 -0
  453. package/dev/typings/factories/entitlements/index.ts +5 -0
  454. package/dev/typings/factories/extensions/IERC721AQueryable__factory.ts +332 -0
  455. package/dev/typings/factories/extensions/IEntitlementDataQueryable__factory.ts +133 -0
  456. package/dev/typings/factories/extensions/index.ts +5 -0
  457. package/dev/typings/factories/factory/IAppFactory__factory.ts +341 -0
  458. package/dev/typings/factories/factory/index.ts +4 -0
  459. package/dev/typings/factories/guardian/GuardianFacet__factory.ts +306 -0
  460. package/dev/typings/factories/guardian/index.ts +4 -0
  461. package/dev/typings/factories/index.ts +101 -0
  462. package/dev/typings/factories/interfaces/IERC5267__factory.ts +72 -0
  463. package/dev/typings/factories/interfaces/IMulticall__factory.ts +45 -0
  464. package/dev/typings/factories/interfaces/index.ts +5 -0
  465. package/dev/typings/factories/mainnet/MainnetDelegation__factory.ts +577 -0
  466. package/dev/typings/factories/mainnet/Towns__factory.ts +1350 -0
  467. package/dev/typings/factories/mainnet/index.ts +5 -0
  468. package/dev/typings/factories/manager/IProxyManager__factory.ts +82 -0
  469. package/dev/typings/factories/manager/index.ts +4 -0
  470. package/dev/typings/factories/metadata/IMembershipMetadata__factory.ts +52 -0
  471. package/dev/typings/factories/metadata/index.ts +4 -0
  472. package/dev/typings/factories/mocks/MockERC721A__factory.ts +614 -0
  473. package/dev/typings/factories/mocks/index.ts +4 -0
  474. package/dev/typings/factories/multichain/Towns__factory.ts +1687 -0
  475. package/dev/typings/factories/multichain/index.ts +4 -0
  476. package/dev/typings/factories/operator/INodeOperator__factory.ts +323 -0
  477. package/dev/typings/factories/operator/IOperatorRegistry__factory.ts +110 -0
  478. package/dev/typings/factories/operator/index.ts +5 -0
  479. package/dev/typings/factories/ownable/OwnableFacet__factory.ts +195 -0
  480. package/dev/typings/factories/ownable/index.ts +4 -0
  481. package/dev/typings/factories/pausable/IPausable__factory.ts +86 -0
  482. package/dev/typings/factories/pausable/index.ts +4 -0
  483. package/dev/typings/factories/points/ITownsPoints__factory.ts +177 -0
  484. package/dev/typings/factories/points/index.ts +4 -0
  485. package/dev/typings/factories/pricing/IPricingModules__factory.ts +151 -0
  486. package/dev/typings/factories/pricing/index.ts +4 -0
  487. package/dev/typings/factories/requirements/PlatformRequirementsFacet__factory.ts +586 -0
  488. package/dev/typings/factories/requirements/index.ts +4 -0
  489. package/dev/typings/factories/roles/IRoles__factory.ts +552 -0
  490. package/dev/typings/factories/roles/index.ts +4 -0
  491. package/dev/typings/factories/router/ISwapRouter__factory.ts +528 -0
  492. package/dev/typings/factories/router/index.ts +4 -0
  493. package/dev/typings/factories/rule/IRuleEntitlement.sol/IRuleEntitlementV2__factory.ts +472 -0
  494. package/dev/typings/factories/rule/IRuleEntitlement.sol/IRuleEntitlement__factory.ts +472 -0
  495. package/dev/typings/factories/rule/IRuleEntitlement.sol/index.ts +5 -0
  496. package/dev/typings/factories/rule/index.ts +4 -0
  497. package/dev/typings/factories/src/IDiamond__factory.ts +28 -0
  498. package/dev/typings/factories/src/index.ts +4 -0
  499. package/dev/typings/factories/swap/ISwapFacet__factory.ts +488 -0
  500. package/dev/typings/factories/swap/index.ts +4 -0
  501. package/dev/typings/factories/token/TokenPausableFacet__factory.ts +226 -0
  502. package/dev/typings/factories/token/index.ts +4 -0
  503. package/dev/typings/factories/user/UserEntitlement__factory.ts +391 -0
  504. package/dev/typings/factories/user/index.ts +4 -0
  505. package/dev/typings/factories/wallet-link/IWalletLink__factory.ts +742 -0
  506. package/dev/typings/factories/wallet-link/index.ts +4 -0
  507. package/dev/typings/factory/IAppFactory.ts +440 -0
  508. package/dev/typings/factory/index.ts +4 -0
  509. package/dev/typings/guardian/GuardianFacet.ts +419 -0
  510. package/dev/typings/guardian/index.ts +4 -0
  511. package/dev/typings/index.ts +224 -0
  512. package/dev/typings/interfaces/IERC5267.ts +143 -0
  513. package/dev/typings/interfaces/IMulticall.ts +98 -0
  514. package/dev/typings/interfaces/index.ts +5 -0
  515. package/dev/typings/mainnet/MainnetDelegation.ts +707 -0
  516. package/dev/typings/mainnet/Towns.ts +1918 -0
  517. package/dev/typings/mainnet/index.ts +5 -0
  518. package/dev/typings/manager/IProxyManager.ts +168 -0
  519. package/dev/typings/manager/index.ts +4 -0
  520. package/dev/typings/metadata/IMembershipMetadata.ts +125 -0
  521. package/dev/typings/metadata/index.ts +4 -0
  522. package/dev/typings/mocks/MockERC721A.ts +771 -0
  523. package/dev/typings/mocks/index.ts +4 -0
  524. package/dev/typings/multichain/Towns.ts +1671 -0
  525. package/dev/typings/multichain/index.ts +4 -0
  526. package/dev/typings/operator/INodeOperator.ts +457 -0
  527. package/dev/typings/operator/IOperatorRegistry.ts +212 -0
  528. package/dev/typings/operator/index.ts +5 -0
  529. package/dev/typings/ownable/OwnableFacet.ts +228 -0
  530. package/dev/typings/ownable/index.ts +4 -0
  531. package/dev/typings/pausable/IPausable.ts +153 -0
  532. package/dev/typings/pausable/index.ts +4 -0
  533. package/dev/typings/points/ITownsPoints.ts +291 -0
  534. package/dev/typings/points/index.ts +4 -0
  535. package/dev/typings/pricing/IPricingModules.ts +277 -0
  536. package/dev/typings/pricing/index.ts +4 -0
  537. package/dev/typings/requirements/PlatformRequirementsFacet.ts +883 -0
  538. package/dev/typings/requirements/index.ts +4 -0
  539. package/dev/typings/roles/IRoles.ts +758 -0
  540. package/dev/typings/roles/index.ts +4 -0
  541. package/dev/typings/router/ISwapRouter.ts +507 -0
  542. package/dev/typings/router/index.ts +4 -0
  543. package/dev/typings/rule/IRuleEntitlement.sol/IRuleEntitlement.ts +452 -0
  544. package/dev/typings/rule/IRuleEntitlement.sol/IRuleEntitlementV2.ts +452 -0
  545. package/dev/typings/rule/IRuleEntitlement.sol/index.ts +5 -0
  546. package/dev/typings/rule/index.ts +5 -0
  547. package/dev/typings/src/IDiamond.ts +55 -0
  548. package/dev/typings/src/index.ts +4 -0
  549. package/dev/typings/swap/ISwapFacet.ts +495 -0
  550. package/dev/typings/swap/index.ts +4 -0
  551. package/dev/typings/token/TokenPausableFacet.ts +252 -0
  552. package/dev/typings/token/index.ts +4 -0
  553. package/dev/typings/user/UserEntitlement.ts +490 -0
  554. package/dev/typings/user/index.ts +4 -0
  555. package/dev/typings/wallet-link/IWalletLink.ts +849 -0
  556. package/dev/typings/wallet-link/index.ts +4 -0
  557. package/package.json +37 -0
  558. package/scripts/build-contract-types.sh +42 -0
  559. package/scripts/copy-addresses.sh +10 -0
  560. package/scripts/make-config.js +95 -0
  561. package/scripts/make-config.sh +6 -0
  562. package/scripts/prepare.js +176 -0
  563. package/v3/abis/IERC5267.abi.json +51 -0
  564. package/v3/abis/IERC5267.abi.ts +51 -0
  565. package/v3/abis/WalletLink.abi.json +446 -0
  566. package/v3/abis/WalletLink.abi.ts +446 -0
  567. package/v3/typings/IERC5267.ts +144 -0
  568. package/v3/typings/IWalletLink.ts +419 -0
  569. package/v3/typings/cryptography/IERC5267.ts +144 -0
  570. package/v3/typings/cryptography/index.ts +4 -0
  571. package/v3/typings/factories/IERC5267__factory.ts +72 -0
  572. package/v3/typings/factories/IWalletLink__factory.ts +358 -0
  573. package/v3/typings/factories/cryptography/IERC5267__factory.ts +72 -0
  574. package/v3/typings/factories/cryptography/index.ts +4 -0
  575. package/v3/typings/factories/index.ts +35 -0
  576. package/v3/typings/index.ts +69 -0
@@ -0,0 +1,1350 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
5
+ import type { Provider, TransactionRequest } from "@ethersproject/providers";
6
+ import type { Towns, TownsInterface, ITownsBase } from "../../mainnet/Towns";
7
+
8
+ const _abi = [
9
+ {
10
+ type: "constructor",
11
+ inputs: [
12
+ {
13
+ name: "vault",
14
+ type: "address",
15
+ internalType: "address",
16
+ },
17
+ {
18
+ name: "manager",
19
+ type: "address",
20
+ internalType: "address",
21
+ },
22
+ {
23
+ name: "config",
24
+ type: "tuple",
25
+ internalType: "struct ITownsBase.InflationConfig",
26
+ components: [
27
+ {
28
+ name: "initialMintTime",
29
+ type: "uint256",
30
+ internalType: "uint256",
31
+ },
32
+ {
33
+ name: "initialInflationRate",
34
+ type: "uint256",
35
+ internalType: "uint256",
36
+ },
37
+ {
38
+ name: "finalInflationRate",
39
+ type: "uint256",
40
+ internalType: "uint256",
41
+ },
42
+ {
43
+ name: "finalInflationYears",
44
+ type: "uint256",
45
+ internalType: "uint256",
46
+ },
47
+ {
48
+ name: "inflationDecayRate",
49
+ type: "uint256",
50
+ internalType: "uint256",
51
+ },
52
+ {
53
+ name: "inflationReceiver",
54
+ type: "address",
55
+ internalType: "address",
56
+ },
57
+ ],
58
+ },
59
+ ],
60
+ stateMutability: "nonpayable",
61
+ },
62
+ {
63
+ type: "function",
64
+ name: "CLOCK_MODE",
65
+ inputs: [],
66
+ outputs: [
67
+ {
68
+ name: "",
69
+ type: "string",
70
+ internalType: "string",
71
+ },
72
+ ],
73
+ stateMutability: "pure",
74
+ },
75
+ {
76
+ type: "function",
77
+ name: "DOMAIN_SEPARATOR",
78
+ inputs: [],
79
+ outputs: [
80
+ {
81
+ name: "result",
82
+ type: "bytes32",
83
+ internalType: "bytes32",
84
+ },
85
+ ],
86
+ stateMutability: "view",
87
+ },
88
+ {
89
+ type: "function",
90
+ name: "ROLE_INFLATION_MANAGER",
91
+ inputs: [],
92
+ outputs: [
93
+ {
94
+ name: "",
95
+ type: "uint256",
96
+ internalType: "uint256",
97
+ },
98
+ ],
99
+ stateMutability: "view",
100
+ },
101
+ {
102
+ type: "function",
103
+ name: "ROLE_INFLATION_RATE_MANAGER",
104
+ inputs: [],
105
+ outputs: [
106
+ {
107
+ name: "",
108
+ type: "uint256",
109
+ internalType: "uint256",
110
+ },
111
+ ],
112
+ stateMutability: "view",
113
+ },
114
+ {
115
+ type: "function",
116
+ name: "allowance",
117
+ inputs: [
118
+ {
119
+ name: "owner",
120
+ type: "address",
121
+ internalType: "address",
122
+ },
123
+ {
124
+ name: "spender",
125
+ type: "address",
126
+ internalType: "address",
127
+ },
128
+ ],
129
+ outputs: [
130
+ {
131
+ name: "result",
132
+ type: "uint256",
133
+ internalType: "uint256",
134
+ },
135
+ ],
136
+ stateMutability: "view",
137
+ },
138
+ {
139
+ type: "function",
140
+ name: "approve",
141
+ inputs: [
142
+ {
143
+ name: "spender",
144
+ type: "address",
145
+ internalType: "address",
146
+ },
147
+ {
148
+ name: "amount",
149
+ type: "uint256",
150
+ internalType: "uint256",
151
+ },
152
+ ],
153
+ outputs: [
154
+ {
155
+ name: "",
156
+ type: "bool",
157
+ internalType: "bool",
158
+ },
159
+ ],
160
+ stateMutability: "nonpayable",
161
+ },
162
+ {
163
+ type: "function",
164
+ name: "balanceOf",
165
+ inputs: [
166
+ {
167
+ name: "owner",
168
+ type: "address",
169
+ internalType: "address",
170
+ },
171
+ ],
172
+ outputs: [
173
+ {
174
+ name: "result",
175
+ type: "uint256",
176
+ internalType: "uint256",
177
+ },
178
+ ],
179
+ stateMutability: "view",
180
+ },
181
+ {
182
+ type: "function",
183
+ name: "cancelOwnershipHandover",
184
+ inputs: [],
185
+ outputs: [],
186
+ stateMutability: "payable",
187
+ },
188
+ {
189
+ type: "function",
190
+ name: "checkpointAt",
191
+ inputs: [
192
+ {
193
+ name: "account",
194
+ type: "address",
195
+ internalType: "address",
196
+ },
197
+ {
198
+ name: "i",
199
+ type: "uint256",
200
+ internalType: "uint256",
201
+ },
202
+ ],
203
+ outputs: [
204
+ {
205
+ name: "checkpointClock",
206
+ type: "uint48",
207
+ internalType: "uint48",
208
+ },
209
+ {
210
+ name: "checkpointValue",
211
+ type: "uint256",
212
+ internalType: "uint256",
213
+ },
214
+ ],
215
+ stateMutability: "view",
216
+ },
217
+ {
218
+ type: "function",
219
+ name: "checkpointCount",
220
+ inputs: [
221
+ {
222
+ name: "account",
223
+ type: "address",
224
+ internalType: "address",
225
+ },
226
+ ],
227
+ outputs: [
228
+ {
229
+ name: "result",
230
+ type: "uint256",
231
+ internalType: "uint256",
232
+ },
233
+ ],
234
+ stateMutability: "view",
235
+ },
236
+ {
237
+ type: "function",
238
+ name: "clock",
239
+ inputs: [],
240
+ outputs: [
241
+ {
242
+ name: "",
243
+ type: "uint48",
244
+ internalType: "uint48",
245
+ },
246
+ ],
247
+ stateMutability: "view",
248
+ },
249
+ {
250
+ type: "function",
251
+ name: "completeOwnershipHandover",
252
+ inputs: [
253
+ {
254
+ name: "pendingOwner",
255
+ type: "address",
256
+ internalType: "address",
257
+ },
258
+ ],
259
+ outputs: [],
260
+ stateMutability: "payable",
261
+ },
262
+ {
263
+ type: "function",
264
+ name: "createInflation",
265
+ inputs: [],
266
+ outputs: [],
267
+ stateMutability: "nonpayable",
268
+ },
269
+ {
270
+ type: "function",
271
+ name: "currentInflationRate",
272
+ inputs: [],
273
+ outputs: [
274
+ {
275
+ name: "",
276
+ type: "uint256",
277
+ internalType: "uint256",
278
+ },
279
+ ],
280
+ stateMutability: "view",
281
+ },
282
+ {
283
+ type: "function",
284
+ name: "decimals",
285
+ inputs: [],
286
+ outputs: [
287
+ {
288
+ name: "",
289
+ type: "uint8",
290
+ internalType: "uint8",
291
+ },
292
+ ],
293
+ stateMutability: "view",
294
+ },
295
+ {
296
+ type: "function",
297
+ name: "delegate",
298
+ inputs: [
299
+ {
300
+ name: "delegatee",
301
+ type: "address",
302
+ internalType: "address",
303
+ },
304
+ ],
305
+ outputs: [],
306
+ stateMutability: "nonpayable",
307
+ },
308
+ {
309
+ type: "function",
310
+ name: "delegateBySig",
311
+ inputs: [
312
+ {
313
+ name: "delegatee",
314
+ type: "address",
315
+ internalType: "address",
316
+ },
317
+ {
318
+ name: "nonce",
319
+ type: "uint256",
320
+ internalType: "uint256",
321
+ },
322
+ {
323
+ name: "expiry",
324
+ type: "uint256",
325
+ internalType: "uint256",
326
+ },
327
+ {
328
+ name: "v",
329
+ type: "uint8",
330
+ internalType: "uint8",
331
+ },
332
+ {
333
+ name: "r",
334
+ type: "bytes32",
335
+ internalType: "bytes32",
336
+ },
337
+ {
338
+ name: "s",
339
+ type: "bytes32",
340
+ internalType: "bytes32",
341
+ },
342
+ ],
343
+ outputs: [],
344
+ stateMutability: "nonpayable",
345
+ },
346
+ {
347
+ type: "function",
348
+ name: "delegates",
349
+ inputs: [
350
+ {
351
+ name: "delegator",
352
+ type: "address",
353
+ internalType: "address",
354
+ },
355
+ ],
356
+ outputs: [
357
+ {
358
+ name: "result",
359
+ type: "address",
360
+ internalType: "address",
361
+ },
362
+ ],
363
+ stateMutability: "view",
364
+ },
365
+ {
366
+ type: "function",
367
+ name: "finalInflationRate",
368
+ inputs: [],
369
+ outputs: [
370
+ {
371
+ name: "",
372
+ type: "uint256",
373
+ internalType: "uint256",
374
+ },
375
+ ],
376
+ stateMutability: "view",
377
+ },
378
+ {
379
+ type: "function",
380
+ name: "getDelegationTimeForDelegator",
381
+ inputs: [
382
+ {
383
+ name: "delegator",
384
+ type: "address",
385
+ internalType: "address",
386
+ },
387
+ ],
388
+ outputs: [
389
+ {
390
+ name: "",
391
+ type: "uint256",
392
+ internalType: "uint256",
393
+ },
394
+ ],
395
+ stateMutability: "view",
396
+ },
397
+ {
398
+ type: "function",
399
+ name: "getDelegators",
400
+ inputs: [],
401
+ outputs: [
402
+ {
403
+ name: "",
404
+ type: "address[]",
405
+ internalType: "address[]",
406
+ },
407
+ ],
408
+ stateMutability: "view",
409
+ },
410
+ {
411
+ type: "function",
412
+ name: "getDelegatorsByDelegatee",
413
+ inputs: [
414
+ {
415
+ name: "delegatee",
416
+ type: "address",
417
+ internalType: "address",
418
+ },
419
+ ],
420
+ outputs: [
421
+ {
422
+ name: "",
423
+ type: "address[]",
424
+ internalType: "address[]",
425
+ },
426
+ ],
427
+ stateMutability: "view",
428
+ },
429
+ {
430
+ type: "function",
431
+ name: "getDelegatorsCount",
432
+ inputs: [],
433
+ outputs: [
434
+ {
435
+ name: "",
436
+ type: "uint256",
437
+ internalType: "uint256",
438
+ },
439
+ ],
440
+ stateMutability: "view",
441
+ },
442
+ {
443
+ type: "function",
444
+ name: "getPaginatedDelegators",
445
+ inputs: [
446
+ {
447
+ name: "cursor",
448
+ type: "uint256",
449
+ internalType: "uint256",
450
+ },
451
+ {
452
+ name: "size",
453
+ type: "uint256",
454
+ internalType: "uint256",
455
+ },
456
+ ],
457
+ outputs: [
458
+ {
459
+ name: "delegators",
460
+ type: "address[]",
461
+ internalType: "address[]",
462
+ },
463
+ {
464
+ name: "next",
465
+ type: "uint256",
466
+ internalType: "uint256",
467
+ },
468
+ ],
469
+ stateMutability: "view",
470
+ },
471
+ {
472
+ type: "function",
473
+ name: "getPastVotes",
474
+ inputs: [
475
+ {
476
+ name: "account",
477
+ type: "address",
478
+ internalType: "address",
479
+ },
480
+ {
481
+ name: "timepoint",
482
+ type: "uint256",
483
+ internalType: "uint256",
484
+ },
485
+ ],
486
+ outputs: [
487
+ {
488
+ name: "",
489
+ type: "uint256",
490
+ internalType: "uint256",
491
+ },
492
+ ],
493
+ stateMutability: "view",
494
+ },
495
+ {
496
+ type: "function",
497
+ name: "getPastVotesTotalSupply",
498
+ inputs: [
499
+ {
500
+ name: "timepoint",
501
+ type: "uint256",
502
+ internalType: "uint256",
503
+ },
504
+ ],
505
+ outputs: [
506
+ {
507
+ name: "",
508
+ type: "uint256",
509
+ internalType: "uint256",
510
+ },
511
+ ],
512
+ stateMutability: "view",
513
+ },
514
+ {
515
+ type: "function",
516
+ name: "getVotes",
517
+ inputs: [
518
+ {
519
+ name: "account",
520
+ type: "address",
521
+ internalType: "address",
522
+ },
523
+ ],
524
+ outputs: [
525
+ {
526
+ name: "",
527
+ type: "uint256",
528
+ internalType: "uint256",
529
+ },
530
+ ],
531
+ stateMutability: "view",
532
+ },
533
+ {
534
+ type: "function",
535
+ name: "getVotesTotalSupply",
536
+ inputs: [],
537
+ outputs: [
538
+ {
539
+ name: "",
540
+ type: "uint256",
541
+ internalType: "uint256",
542
+ },
543
+ ],
544
+ stateMutability: "view",
545
+ },
546
+ {
547
+ type: "function",
548
+ name: "grantRoles",
549
+ inputs: [
550
+ {
551
+ name: "user",
552
+ type: "address",
553
+ internalType: "address",
554
+ },
555
+ {
556
+ name: "roles",
557
+ type: "uint256",
558
+ internalType: "uint256",
559
+ },
560
+ ],
561
+ outputs: [],
562
+ stateMutability: "payable",
563
+ },
564
+ {
565
+ type: "function",
566
+ name: "hasAllRoles",
567
+ inputs: [
568
+ {
569
+ name: "user",
570
+ type: "address",
571
+ internalType: "address",
572
+ },
573
+ {
574
+ name: "roles",
575
+ type: "uint256",
576
+ internalType: "uint256",
577
+ },
578
+ ],
579
+ outputs: [
580
+ {
581
+ name: "",
582
+ type: "bool",
583
+ internalType: "bool",
584
+ },
585
+ ],
586
+ stateMutability: "view",
587
+ },
588
+ {
589
+ type: "function",
590
+ name: "hasAnyRole",
591
+ inputs: [
592
+ {
593
+ name: "user",
594
+ type: "address",
595
+ internalType: "address",
596
+ },
597
+ {
598
+ name: "roles",
599
+ type: "uint256",
600
+ internalType: "uint256",
601
+ },
602
+ ],
603
+ outputs: [
604
+ {
605
+ name: "",
606
+ type: "bool",
607
+ internalType: "bool",
608
+ },
609
+ ],
610
+ stateMutability: "view",
611
+ },
612
+ {
613
+ type: "function",
614
+ name: "inflationReceiver",
615
+ inputs: [],
616
+ outputs: [
617
+ {
618
+ name: "",
619
+ type: "address",
620
+ internalType: "address",
621
+ },
622
+ ],
623
+ stateMutability: "view",
624
+ },
625
+ {
626
+ type: "function",
627
+ name: "initialMintTime",
628
+ inputs: [],
629
+ outputs: [
630
+ {
631
+ name: "",
632
+ type: "uint256",
633
+ internalType: "uint256",
634
+ },
635
+ ],
636
+ stateMutability: "view",
637
+ },
638
+ {
639
+ type: "function",
640
+ name: "lastMintTime",
641
+ inputs: [],
642
+ outputs: [
643
+ {
644
+ name: "",
645
+ type: "uint256",
646
+ internalType: "uint256",
647
+ },
648
+ ],
649
+ stateMutability: "view",
650
+ },
651
+ {
652
+ type: "function",
653
+ name: "mintInitialSupply",
654
+ inputs: [
655
+ {
656
+ name: "to",
657
+ type: "address",
658
+ internalType: "address",
659
+ },
660
+ ],
661
+ outputs: [],
662
+ stateMutability: "nonpayable",
663
+ },
664
+ {
665
+ type: "function",
666
+ name: "name",
667
+ inputs: [],
668
+ outputs: [
669
+ {
670
+ name: "",
671
+ type: "string",
672
+ internalType: "string",
673
+ },
674
+ ],
675
+ stateMutability: "pure",
676
+ },
677
+ {
678
+ type: "function",
679
+ name: "nonces",
680
+ inputs: [
681
+ {
682
+ name: "owner",
683
+ type: "address",
684
+ internalType: "address",
685
+ },
686
+ ],
687
+ outputs: [
688
+ {
689
+ name: "result",
690
+ type: "uint256",
691
+ internalType: "uint256",
692
+ },
693
+ ],
694
+ stateMutability: "view",
695
+ },
696
+ {
697
+ type: "function",
698
+ name: "owner",
699
+ inputs: [],
700
+ outputs: [
701
+ {
702
+ name: "result",
703
+ type: "address",
704
+ internalType: "address",
705
+ },
706
+ ],
707
+ stateMutability: "view",
708
+ },
709
+ {
710
+ type: "function",
711
+ name: "ownershipHandoverExpiresAt",
712
+ inputs: [
713
+ {
714
+ name: "pendingOwner",
715
+ type: "address",
716
+ internalType: "address",
717
+ },
718
+ ],
719
+ outputs: [
720
+ {
721
+ name: "result",
722
+ type: "uint256",
723
+ internalType: "uint256",
724
+ },
725
+ ],
726
+ stateMutability: "view",
727
+ },
728
+ {
729
+ type: "function",
730
+ name: "permit",
731
+ inputs: [
732
+ {
733
+ name: "owner",
734
+ type: "address",
735
+ internalType: "address",
736
+ },
737
+ {
738
+ name: "spender",
739
+ type: "address",
740
+ internalType: "address",
741
+ },
742
+ {
743
+ name: "value",
744
+ type: "uint256",
745
+ internalType: "uint256",
746
+ },
747
+ {
748
+ name: "deadline",
749
+ type: "uint256",
750
+ internalType: "uint256",
751
+ },
752
+ {
753
+ name: "v",
754
+ type: "uint8",
755
+ internalType: "uint8",
756
+ },
757
+ {
758
+ name: "r",
759
+ type: "bytes32",
760
+ internalType: "bytes32",
761
+ },
762
+ {
763
+ name: "s",
764
+ type: "bytes32",
765
+ internalType: "bytes32",
766
+ },
767
+ ],
768
+ outputs: [],
769
+ stateMutability: "nonpayable",
770
+ },
771
+ {
772
+ type: "function",
773
+ name: "renounceOwnership",
774
+ inputs: [],
775
+ outputs: [],
776
+ stateMutability: "payable",
777
+ },
778
+ {
779
+ type: "function",
780
+ name: "renounceRoles",
781
+ inputs: [
782
+ {
783
+ name: "roles",
784
+ type: "uint256",
785
+ internalType: "uint256",
786
+ },
787
+ ],
788
+ outputs: [],
789
+ stateMutability: "payable",
790
+ },
791
+ {
792
+ type: "function",
793
+ name: "requestOwnershipHandover",
794
+ inputs: [],
795
+ outputs: [],
796
+ stateMutability: "payable",
797
+ },
798
+ {
799
+ type: "function",
800
+ name: "revokeRoles",
801
+ inputs: [
802
+ {
803
+ name: "user",
804
+ type: "address",
805
+ internalType: "address",
806
+ },
807
+ {
808
+ name: "roles",
809
+ type: "uint256",
810
+ internalType: "uint256",
811
+ },
812
+ ],
813
+ outputs: [],
814
+ stateMutability: "payable",
815
+ },
816
+ {
817
+ type: "function",
818
+ name: "rolesOf",
819
+ inputs: [
820
+ {
821
+ name: "user",
822
+ type: "address",
823
+ internalType: "address",
824
+ },
825
+ ],
826
+ outputs: [
827
+ {
828
+ name: "roles",
829
+ type: "uint256",
830
+ internalType: "uint256",
831
+ },
832
+ ],
833
+ stateMutability: "view",
834
+ },
835
+ {
836
+ type: "function",
837
+ name: "setInflationReceiver",
838
+ inputs: [
839
+ {
840
+ name: "receiver",
841
+ type: "address",
842
+ internalType: "address",
843
+ },
844
+ ],
845
+ outputs: [],
846
+ stateMutability: "nonpayable",
847
+ },
848
+ {
849
+ type: "function",
850
+ name: "setOverrideInflation",
851
+ inputs: [
852
+ {
853
+ name: "overrideInflation",
854
+ type: "bool",
855
+ internalType: "bool",
856
+ },
857
+ {
858
+ name: "overrideInflationRate",
859
+ type: "uint256",
860
+ internalType: "uint256",
861
+ },
862
+ ],
863
+ outputs: [],
864
+ stateMutability: "nonpayable",
865
+ },
866
+ {
867
+ type: "function",
868
+ name: "supportsInterface",
869
+ inputs: [
870
+ {
871
+ name: "interfaceId",
872
+ type: "bytes4",
873
+ internalType: "bytes4",
874
+ },
875
+ ],
876
+ outputs: [
877
+ {
878
+ name: "",
879
+ type: "bool",
880
+ internalType: "bool",
881
+ },
882
+ ],
883
+ stateMutability: "view",
884
+ },
885
+ {
886
+ type: "function",
887
+ name: "symbol",
888
+ inputs: [],
889
+ outputs: [
890
+ {
891
+ name: "",
892
+ type: "string",
893
+ internalType: "string",
894
+ },
895
+ ],
896
+ stateMutability: "pure",
897
+ },
898
+ {
899
+ type: "function",
900
+ name: "totalSupply",
901
+ inputs: [],
902
+ outputs: [
903
+ {
904
+ name: "result",
905
+ type: "uint256",
906
+ internalType: "uint256",
907
+ },
908
+ ],
909
+ stateMutability: "view",
910
+ },
911
+ {
912
+ type: "function",
913
+ name: "transfer",
914
+ inputs: [
915
+ {
916
+ name: "to",
917
+ type: "address",
918
+ internalType: "address",
919
+ },
920
+ {
921
+ name: "amount",
922
+ type: "uint256",
923
+ internalType: "uint256",
924
+ },
925
+ ],
926
+ outputs: [
927
+ {
928
+ name: "",
929
+ type: "bool",
930
+ internalType: "bool",
931
+ },
932
+ ],
933
+ stateMutability: "nonpayable",
934
+ },
935
+ {
936
+ type: "function",
937
+ name: "transferFrom",
938
+ inputs: [
939
+ {
940
+ name: "from",
941
+ type: "address",
942
+ internalType: "address",
943
+ },
944
+ {
945
+ name: "to",
946
+ type: "address",
947
+ internalType: "address",
948
+ },
949
+ {
950
+ name: "amount",
951
+ type: "uint256",
952
+ internalType: "uint256",
953
+ },
954
+ ],
955
+ outputs: [
956
+ {
957
+ name: "",
958
+ type: "bool",
959
+ internalType: "bool",
960
+ },
961
+ ],
962
+ stateMutability: "nonpayable",
963
+ },
964
+ {
965
+ type: "function",
966
+ name: "transferOwnership",
967
+ inputs: [
968
+ {
969
+ name: "newOwner",
970
+ type: "address",
971
+ internalType: "address",
972
+ },
973
+ ],
974
+ outputs: [],
975
+ stateMutability: "payable",
976
+ },
977
+ {
978
+ type: "event",
979
+ name: "Approval",
980
+ inputs: [
981
+ {
982
+ name: "owner",
983
+ type: "address",
984
+ indexed: true,
985
+ internalType: "address",
986
+ },
987
+ {
988
+ name: "spender",
989
+ type: "address",
990
+ indexed: true,
991
+ internalType: "address",
992
+ },
993
+ {
994
+ name: "amount",
995
+ type: "uint256",
996
+ indexed: false,
997
+ internalType: "uint256",
998
+ },
999
+ ],
1000
+ anonymous: false,
1001
+ },
1002
+ {
1003
+ type: "event",
1004
+ name: "DelegateChanged",
1005
+ inputs: [
1006
+ {
1007
+ name: "delegator",
1008
+ type: "address",
1009
+ indexed: true,
1010
+ internalType: "address",
1011
+ },
1012
+ {
1013
+ name: "from",
1014
+ type: "address",
1015
+ indexed: true,
1016
+ internalType: "address",
1017
+ },
1018
+ {
1019
+ name: "to",
1020
+ type: "address",
1021
+ indexed: true,
1022
+ internalType: "address",
1023
+ },
1024
+ ],
1025
+ anonymous: false,
1026
+ },
1027
+ {
1028
+ type: "event",
1029
+ name: "DelegateVotesChanged",
1030
+ inputs: [
1031
+ {
1032
+ name: "delegate",
1033
+ type: "address",
1034
+ indexed: true,
1035
+ internalType: "address",
1036
+ },
1037
+ {
1038
+ name: "oldValue",
1039
+ type: "uint256",
1040
+ indexed: false,
1041
+ internalType: "uint256",
1042
+ },
1043
+ {
1044
+ name: "newValue",
1045
+ type: "uint256",
1046
+ indexed: false,
1047
+ internalType: "uint256",
1048
+ },
1049
+ ],
1050
+ anonymous: false,
1051
+ },
1052
+ {
1053
+ type: "event",
1054
+ name: "InterfaceAdded",
1055
+ inputs: [
1056
+ {
1057
+ name: "interfaceId",
1058
+ type: "bytes4",
1059
+ indexed: true,
1060
+ internalType: "bytes4",
1061
+ },
1062
+ ],
1063
+ anonymous: false,
1064
+ },
1065
+ {
1066
+ type: "event",
1067
+ name: "InterfaceRemoved",
1068
+ inputs: [
1069
+ {
1070
+ name: "interfaceId",
1071
+ type: "bytes4",
1072
+ indexed: true,
1073
+ internalType: "bytes4",
1074
+ },
1075
+ ],
1076
+ anonymous: false,
1077
+ },
1078
+ {
1079
+ type: "event",
1080
+ name: "OwnershipHandoverCanceled",
1081
+ inputs: [
1082
+ {
1083
+ name: "pendingOwner",
1084
+ type: "address",
1085
+ indexed: true,
1086
+ internalType: "address",
1087
+ },
1088
+ ],
1089
+ anonymous: false,
1090
+ },
1091
+ {
1092
+ type: "event",
1093
+ name: "OwnershipHandoverRequested",
1094
+ inputs: [
1095
+ {
1096
+ name: "pendingOwner",
1097
+ type: "address",
1098
+ indexed: true,
1099
+ internalType: "address",
1100
+ },
1101
+ ],
1102
+ anonymous: false,
1103
+ },
1104
+ {
1105
+ type: "event",
1106
+ name: "OwnershipTransferred",
1107
+ inputs: [
1108
+ {
1109
+ name: "oldOwner",
1110
+ type: "address",
1111
+ indexed: true,
1112
+ internalType: "address",
1113
+ },
1114
+ {
1115
+ name: "newOwner",
1116
+ type: "address",
1117
+ indexed: true,
1118
+ internalType: "address",
1119
+ },
1120
+ ],
1121
+ anonymous: false,
1122
+ },
1123
+ {
1124
+ type: "event",
1125
+ name: "RolesUpdated",
1126
+ inputs: [
1127
+ {
1128
+ name: "user",
1129
+ type: "address",
1130
+ indexed: true,
1131
+ internalType: "address",
1132
+ },
1133
+ {
1134
+ name: "roles",
1135
+ type: "uint256",
1136
+ indexed: true,
1137
+ internalType: "uint256",
1138
+ },
1139
+ ],
1140
+ anonymous: false,
1141
+ },
1142
+ {
1143
+ type: "event",
1144
+ name: "Transfer",
1145
+ inputs: [
1146
+ {
1147
+ name: "from",
1148
+ type: "address",
1149
+ indexed: true,
1150
+ internalType: "address",
1151
+ },
1152
+ {
1153
+ name: "to",
1154
+ type: "address",
1155
+ indexed: true,
1156
+ internalType: "address",
1157
+ },
1158
+ {
1159
+ name: "amount",
1160
+ type: "uint256",
1161
+ indexed: false,
1162
+ internalType: "uint256",
1163
+ },
1164
+ ],
1165
+ anonymous: false,
1166
+ },
1167
+ {
1168
+ type: "error",
1169
+ name: "AllowanceOverflow",
1170
+ inputs: [],
1171
+ },
1172
+ {
1173
+ type: "error",
1174
+ name: "AllowanceUnderflow",
1175
+ inputs: [],
1176
+ },
1177
+ {
1178
+ type: "error",
1179
+ name: "AlreadyInitialized",
1180
+ inputs: [],
1181
+ },
1182
+ {
1183
+ type: "error",
1184
+ name: "ERC5805CheckpointIndexOutOfBounds",
1185
+ inputs: [],
1186
+ },
1187
+ {
1188
+ type: "error",
1189
+ name: "ERC5805CheckpointValueOverflow",
1190
+ inputs: [],
1191
+ },
1192
+ {
1193
+ type: "error",
1194
+ name: "ERC5805CheckpointValueUnderflow",
1195
+ inputs: [],
1196
+ },
1197
+ {
1198
+ type: "error",
1199
+ name: "ERC5805DelegateInvalidSignature",
1200
+ inputs: [],
1201
+ },
1202
+ {
1203
+ type: "error",
1204
+ name: "ERC5805DelegateSignatureExpired",
1205
+ inputs: [],
1206
+ },
1207
+ {
1208
+ type: "error",
1209
+ name: "ERC5805FutureLookup",
1210
+ inputs: [],
1211
+ },
1212
+ {
1213
+ type: "error",
1214
+ name: "IndexOutOfBounds",
1215
+ inputs: [],
1216
+ },
1217
+ {
1218
+ type: "error",
1219
+ name: "InitialSupplyAlreadyMinted",
1220
+ inputs: [],
1221
+ },
1222
+ {
1223
+ type: "error",
1224
+ name: "InsufficientAllowance",
1225
+ inputs: [],
1226
+ },
1227
+ {
1228
+ type: "error",
1229
+ name: "InsufficientBalance",
1230
+ inputs: [],
1231
+ },
1232
+ {
1233
+ type: "error",
1234
+ name: "Introspection_AlreadySupported",
1235
+ inputs: [],
1236
+ },
1237
+ {
1238
+ type: "error",
1239
+ name: "Introspection_NotSupported",
1240
+ inputs: [],
1241
+ },
1242
+ {
1243
+ type: "error",
1244
+ name: "InvalidAddress",
1245
+ inputs: [],
1246
+ },
1247
+ {
1248
+ type: "error",
1249
+ name: "InvalidInflationRate",
1250
+ inputs: [],
1251
+ },
1252
+ {
1253
+ type: "error",
1254
+ name: "InvalidPermit",
1255
+ inputs: [],
1256
+ },
1257
+ {
1258
+ type: "error",
1259
+ name: "MintingTooSoon",
1260
+ inputs: [],
1261
+ },
1262
+ {
1263
+ type: "error",
1264
+ name: "NewOwnerIsZeroAddress",
1265
+ inputs: [],
1266
+ },
1267
+ {
1268
+ type: "error",
1269
+ name: "NoHandoverRequest",
1270
+ inputs: [],
1271
+ },
1272
+ {
1273
+ type: "error",
1274
+ name: "Permit2AllowanceIsFixedAtInfinity",
1275
+ inputs: [],
1276
+ },
1277
+ {
1278
+ type: "error",
1279
+ name: "PermitExpired",
1280
+ inputs: [],
1281
+ },
1282
+ {
1283
+ type: "error",
1284
+ name: "TotalSupplyOverflow",
1285
+ inputs: [],
1286
+ },
1287
+ {
1288
+ type: "error",
1289
+ name: "Unauthorized",
1290
+ inputs: [],
1291
+ },
1292
+ ] as const;
1293
+
1294
+ const _bytecode =
1295
+ "0x60a060405234801561000f575f5ffd5b5060405161304538038061304583398101604081905261002e916103a6565b6001600160a01b038316158061004b57506001600160a01b038216155b156100605761006063e6c4247b60e01b610231565b60a08101516001600160a01b03166100825761008263e6c4247b60e01b610231565b61008b83610239565b610096836001610274565b6100a1826002610274565b6100b16397dc62f760e01b610284565b6100c16336372b0760e01b610284565b6100d163a219a02560e01b610284565b6100e1634ec7fbed60e11b610284565b6100f16352c665d960e01b610284565b6101016301ffc9a760e01b610284565b610111637487d9fb60e11b610284565b61012163da287a1d60e01b610284565b8051608090815281517f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af005560a08201517f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af0180546001600160a01b0319166001600160a01b0390921691909117905560208201517f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af025560408201517f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af03558101517f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af045560608101517f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af0555505050610464565b805f5260045ffd5b6001600160a01b0316638b78c6d819819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b61028082826001610334565b5050565b6001600160e01b031981165f9081525f5160206130255f395f51905f52602052604090205460ff166102e4576001600160e01b031981165f9081525f5160206130255f395f51905f5260205260409020805460ff191660011790556102fd565b604051637967f77d60e11b815260040160405180910390fd5b6040516001600160e01b03198216907f78f84e5b1c5c05be2b5ad3800781dd404d6d6c6302bc755c0fe20f58a33a7f22905f90a250565b638b78c6d8600c52825f526020600c20805483811783610355575080841681185b80835580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f5fa3505050505050565b80516001600160a01b03811681146103a1575f5ffd5b919050565b5f5f5f8385036101008112156103ba575f5ffd5b6103c38561038b565b93506103d16020860161038b565b925060c0603f19820112156103e4575f5ffd5b5060405160c081016001600160401b038111828210171561041357634e487b7160e01b5f52604160045260245ffd5b604090815285810151825260608087015160208401526080808801519284019290925260a08701519083015260c08601519082015261045460e0860161038b565b60a0820152809150509250925092565b608051612b9b61048a5f395f8181610acb01528181610eb4015261118d0152612b9b5ff3fe60806040526004361061033a575f3560e01c8063715018a6116101b2578063b7c178cb116100f2578063d505accf11610092578063f04e283e1161006d578063f04e283e14610a94578063f2fde38b14610aa7578063f64964ed14610aba578063fee81cf414610aed575f5ffd5b8063d505accf14610a37578063dd62ed3e14610a56578063e142254614610a75575f5ffd5b8063c6da2e5d116100cd578063c6da2e5d146109dc578063c7a2f1de146109f0578063caca168814610a0f578063cd63c4d214610a23575f5ffd5b8063b7c178cb1461098a578063c1ce0e9b146109a9578063c3cda520146109bd575f5ffd5b806391ddadf41161015d5780639d463520116101385780639d46352014610916578063a563c3d51461092a578063a9059cbb1461093e578063afaabdce1461095d575f5ffd5b806391ddadf41461089057806395d89b41146108b25780639ab24eb0146108f7575f5ffd5b806383a96e161161018d57806383a96e161461080c57806384a0e082146108205780638da5cb5b1461085d575f5ffd5b8063715018a61461079b57806376a82342146107a35780637ecebe00146107db575f5ffd5b8063303371f41161027d5780634bf5d7e911610228578063587cde1e11610203578063587cde1e146106ff5780635c19a95c1461072c5780635db532021461074b57806370a082311461076a575f5ffd5b80634bf5d7e91461067d578063514e62fc146106c257806354d1f13d146106f7575f5ffd5b80633a46b1a8116102585780633a46b1a81461061257806348984176146106315780634a4ee7b11461066a575f5ffd5b8063303371f414610519578063313ce5671461052d5780633644e51514610548575f5ffd5b80631b180447116102e857806323b872dd116102c357806323b872dd146104ad57806325692962146104cc5780632b51c58a146104d45780632de94807146104e8575f5ffd5b80631b180447146104465780631c10893f146104655780631cd64df414610478575f5ffd5b8063095ea7b311610318578063095ea7b3146103ec57806318160ddd1461040b578063183a4f6e14610431575f5ffd5b806301ffc9a71461033e57806306fdde031461037257806308cac051146103c0575b5f5ffd5b348015610349575f5ffd5b5061035d61035836600461277f565b610b1e565b60405190151581526020015b60405180910390f35b34801561037d575f5ffd5b5060408051808201909152600581527f546f776e7300000000000000000000000000000000000000000000000000000060208201525b60405161036991906127be565b3480156103cb575f5ffd5b506103df6103da366004612834565b610b78565b604051610369919061289d565b3480156103f7575f5ffd5b5061035d6104063660046128af565b610b83565b348015610416575f5ffd5b506805345cdf77eb68f44c545b604051908152602001610369565b61044461043f3660046128d7565b610c0f565b005b348015610451575f5ffd5b50610444610460366004612834565b610c1c565b6104446104733660046128af565b610cd2565b348015610483575f5ffd5b5061035d6104923660046128af565b638b78c6d8600c9081525f9290925260209091205481161490565b3480156104b8575f5ffd5b5061035d6104c73660046128ee565b610ce4565b610444610dbe565b3480156104df575f5ffd5b50610423610e0b565b3480156104f3575f5ffd5b50610423610502366004612834565b638b78c6d8600c9081525f91909152602090205490565b348015610524575f5ffd5b50610444610e39565b348015610538575f5ffd5b5060405160128152602001610369565b348015610553575f5ffd5b50604080518082018252600581527f546f776e7300000000000000000000000000000000000000000000000000000060209182015281517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81527fa40fbb70ec34ea8f6c23cf82b55213860ae24ffafadff8e9ae4cb556f54d1958918101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc69181019190915246606082015230608082015260a09020610423565b34801561061d575f5ffd5b5061042361062c3660046128af565b610f71565b34801561063c575f5ffd5b50610645610faf565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610369565b6104446106783660046128af565b610fee565b348015610688575f5ffd5b5060408051808201909152600e81527f6d6f64653d74696d657374616d7000000000000000000000000000000000000060208201526103b3565b3480156106cd575f5ffd5b5061035d6106dc3660046128af565b638b78c6d8600c9081525f9290925260209091205416151590565b610444611000565b34801561070a575f5ffd5b50610645610719366004612834565b63ff466c9f6004525f526018600c205490565b348015610737575f5ffd5b50610444610746366004612834565b611039565b348015610756575f5ffd5b50610444610765366004612834565b611043565b348015610775575f5ffd5b50610423610784366004612834565b6387a211a2600c9081525f91909152602090205490565b6104446110c1565b3480156107ae575f5ffd5b506104236107bd366004612834565b63ff466c9f6004525f526017600c205460301c65ffffffffffff1690565b3480156107e6575f5ffd5b506104236107f5366004612834565b6338377508600c9081525f91909152602090205490565b348015610817575f5ffd5b506103df6110d4565b34801561082b575f5ffd5b5061083f61083a3660046128af565b6110de565b6040805165ffffffffffff9093168352602083019190915201610369565b348015610868575f5ffd5b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754610645565b34801561089b575f5ffd5b5060405165ffffffffffff42168152602001610369565b3480156108bd575f5ffd5b5060408051808201909152600581527f544f574e5300000000000000000000000000000000000000000000000000000060208201526103b3565b348015610902575f5ffd5b50610423610911366004612834565b61113f565b348015610921575f5ffd5b5061042361115e565b348015610935575f5ffd5b50610423611187565b348015610949575f5ffd5b5061035d6109583660046128af565b6111b1565b348015610968575f5ffd5b5061097c610977366004612928565b611233565b604051610369929190612948565b348015610995575f5ffd5b506104236109a4366004612834565b61124c565b3480156109b4575f5ffd5b50610423611295565b3480156109c8575f5ffd5b506104446109d7366004612979565b61129e565b3480156109e7575f5ffd5b50610423600281565b3480156109fb575f5ffd5b50610423610a0a3660046128d7565b611447565b348015610a1a575f5ffd5b50610423600181565b348015610a2e575f5ffd5b50610423611479565b348015610a42575f5ffd5b50610444610a513660046129cd565b611493565b348015610a61575f5ffd5b50610423610a70366004612a33565b6116a9565b348015610a80575f5ffd5b50610444610a8f366004612a64565b611729565b610444610aa2366004612834565b6117ff565b610444610ab5366004612834565b611839565b348015610ac5575f5ffd5b506104237f000000000000000000000000000000000000000000000000000000000000000081565b348015610af8575f5ffd5b50610423610b07366004612834565b63389a75e1600c9081525f91909152602090205490565b7fffffffff0000000000000000000000000000000000000000000000000000000081165f9081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b00602052604081205460ff165b92915050565b6060610b728261185f565b5f73ffffffffffffffffffffffffffffffffffffffff83166e22d473030f116ddee9f6b43ac78ba31882191517610bc157633f68539a5f526004601cfd5b82602052637f5e9f20600c52335f52816034600c2055815f52602c5160601c337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560205fa350600192915050565b610c1933826118ae565b50565b6001610c27816118b9565b73ffffffffffffffffffffffffffffffffffffffff8216610c6b57610c6b7fe6c4247b000000000000000000000000000000000000000000000000000000006118dd565b7f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af0180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790555050565b5050565b610cda6118e5565b610cce828261191a565b5f8360601b6e22d473030f116ddee9f6b43ac78ba33314610d395733602052637f5e9f208117600c526034600c208054801915610d365780851115610d30576313be252b5f526004601cfd5b84810382555b50505b6387a211a28117600c526020600c20805480851115610d5f5763f4d678b85f526004601cfd5b84810382555050835f526020600c208381540181555082602052600c5160601c8160601c7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602080a350610db4848484611926565b5060019392505050565b5f6202a30067ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f5fa250565b5f610e347f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af035490565b905090565b6001610e44816118b9565b5f610e6d7f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af005490565b610e779042612ab1565b90506301e13380811015610eae57610eae7ffe2bb169000000000000000000000000000000000000000000000000000000006118dd565b5f610ed87f0000000000000000000000000000000000000000000000000000000000000000611931565b90505f610ef5610eef6805345cdf77eb68f44c5490565b836119f6565b90505f610f367f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af015473ffffffffffffffffffffffffffffffffffffffff1690565b9050610f428183611a42565b610f6a427f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af0055565b5050505050565b5f4265ffffffffffff168210610f8957610f89611ac5565b610fa8610fa28463ff466c9f6004525f526017600c2090565b83611ad2565b9392505050565b5f610e347f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af015473ffffffffffffffffffffffffffffffffffffffff1690565b610ff66118e5565b610cce82826118ae565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f5fa2565b610c193382611ba0565b61104b6118e5565b5f5460ff161561107e5761107e7fdfa00f89000000000000000000000000000000000000000000000000000000006118dd565b611094816b204fce5e3e25026110000000611a42565b505f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055565b6110c96118e5565b6110d25f611bc7565b565b6060610e34611c2c565b5f5f5f6110f78563ff466c9f6004525f526017600c2090565b9050805460a01b60d01c8410611114576386df9d105f526004601cfd5b8381015465ffffffffffff8116935060601c915030820361113757808401195491505b509250929050565b5f610b726111598363ff466c9f6004525f526017600c2090565b611c57565b5f610e347f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af005490565b5f610e347f0000000000000000000000000000000000000000000000000000000000000000611931565b5f6387a211a2600c52335f526020600c208054808411156111d95763f4d678b85f526004601cfd5b83810382555050825f526020600c208281540181555081602052600c5160601c337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602080a361122a338484611926565b50600192915050565b60605f6112408484611ca1565b915091505b9250929050565b73ffffffffffffffffffffffffffffffffffffffff81165f9081527fed095a1d53cef9e2be0aab14d20856bfa3fbcc76a945321739a0da68a6078e026020526040812054610b72565b5f610e34611dd2565b60408051808201909152600581527f546f776e730000000000000000000000000000000000000000000000000000006020909101525f7fa40fbb70ec34ea8f6c23cf82b55213860ae24ffafadff8e9ae4cb556f54d19587fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc64287101561132b57633480e9e15f526004601cfd5b6040517fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf5f528960601b60601c602052886040528760605260805f206040526119015f527f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815282602082015281604082015246606082015230608082015260a081206020526042601e205f528660ff1660205285604052846060526020600160805f60015afa51935080604052505f6060523d15965086886113ff856338377508600c9081525f91909152602090205490565b18171561141357631838d95c5f526004601cfd5b611432836338377508600c52805f526020600c20805460010181555050565b61143c838a611ba0565b505050505050505050565b5f4265ffffffffffff16821061145f5761145f611ac5565b610b726fff466c9f00000000000000000000000083611ad2565b5f610e346fff466c9f000000000000000000000000611c57565b73ffffffffffffffffffffffffffffffffffffffff86166e22d473030f116ddee9f6b43ac78ba318851915176114d057633f68539a5f526004601cfd5b60408051808201909152600581527f546f776e730000000000000000000000000000000000000000000000000000006020909101527fa40fbb70ec34ea8f6c23cf82b55213860ae24ffafadff8e9ae4cb556f54d19587fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc64286101561155c57631a15a3cc5f526004601cfd5b6040518960601b60601c99508860601b60601c985065383775081901600e52895f526020600c2080547f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f835284602084015283604084015246606084015230608084015260a08320602e527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c983528b60208401528a60408401528960608401528060808401528860a084015260c08320604e526042602c205f528760ff16602052866040528560605260208060805f60015afa8c3d51146116445763ddafbaef5f526004601cfd5b019055777f5e9f20000000000000000000000000000000000000000089176040526034602c20889055888a7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925602060608501a360405250505f60605250505050505050565b5f7fffffffffffffffffffffffffffffffffffdd2b8cfcf0ee922116094bc538745d73ffffffffffffffffffffffffffffffffffffffff83160161170e57507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610b72565b50602052637f5e9f20600c9081525f91909152603490205490565b6002611734816118b9565b7f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af0354821115611786576117867f57e4ff39000000000000000000000000000000000000000000000000000000006118dd565b7f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af0680547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168415151790557f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af07829055505050565b505050565b6118076118e5565b63389a75e1600c52805f526020600c20805442111561182d57636f5e88185f526004601cfd5b5f9055610c1981611bc7565b6118416118e5565b8060601b61185657637448fbae5f526004601cfd5b610c1981611bc7565b73ffffffffffffffffffffffffffffffffffffffff81165f9081527fed095a1d53cef9e2be0aab14d20856bfa3fbcc76a945321739a0da68a6078e0160205260409020606090610b7290611dfc565b610cce82825f611ed0565b638b78c6d8600c52335f52806020600c205416610c19576382b429005f526004601cfd5b805f5260045ffd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739275433146110d2576382b429005f526004601cfd5b610cce82826001611ed0565b6117fa838383611f27565b7f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af06545f907f366bbacac8c1291905a47c4b12670e7c8ce975e09c84414dddf77ba98c85af009060ff1615611989576007015492915050565b5f6301e133806119998542612ab1565b6119a39190612af1565b9050816005015481106119bb57506003015492915050565b5f82600501548360040154836119d19190612b04565b6119db9190612af1565b90508083600201546119ed9190612ab1565b95945050505050565b5f612710821115611a2b57611a2b7f197f19620000000000000000000000000000000000000000000000000000000083611fe3565b612710611a388385612b04565b610fa89190612af1565b6805345cdf77eb68f44c5481810181811015611a655763e5cfe9575f526004601cfd5b806805345cdf77eb68f44c5550506387a211a2600c52815f526020600c208181540181555080602052600c5160601c5f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602080a3610cce5f8383611926565b63f98744645f526004601cfd5b5f5f835460a01b60d01c60068110611b4657601061ffff821160041b82811c60ff1060031b17600190811c9190911b80830401811c80830401811c80830401811c80830401811c80830401811c80830401901c81038581015465ffffffffffff168510611b43576001019150611b46565b90505b5b80821015611b785780820160011c65ffffffffffff86820154168510611b71576001019150611b47565b9050611b47565b8460018203019150815460601c81151502925050308203611b995780195491505b5092915050565b63ff466c9f6004525f8290526018600c2054611bbc8383611fef565b6117fa83838361204f565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805473ffffffffffffffffffffffffffffffffffffffff9092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b6060610e347fed095a1d53cef9e2be0aab14d20856bfa3fbcc76a945321739a0da68a6078e00611dfc565b5f815460a01b60d01c90508015611c9c57017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01805460601c308103611c9c57508019545b919050565b60605f7fed095a1d53cef9e2be0aab14d20856bfa3fbcc76a945321739a0da68a6078e0081611ccf82612180565b9050808610611cf2575050604080515f8082526020820190925292509050611245565b5f611d0c86611d018985612ab1565b808218908211021890565b90508067ffffffffffffffff811115611d2757611d27612b1b565b604051908082528060200260200182016040528015611d50578160200160208202803683370190505b5094505f5b81811015611db057611d71611d6a828a612b48565b85906121d1565b868281518110611d8357611d83612b5b565b73ffffffffffffffffffffffffffffffffffffffff90921660209283029190910190910152600101611d55565b5081611dbc8289612b48565b611dc69190612b88565b93505050509250929050565b5f610e347fed095a1d53cef9e2be0aab14d20856bfa3fbcc76a945321739a0da68a6078e00612180565b63978aab926004525f818152602481206060915068fbb67fda52d4bfb8bf81548060a01b60a01c6040519450846020018260601c9250838314158302815281611e8a578215611e8557600191508185015460601c92508215611e85578284141590920260208301525060028381015460601c918215611e85576003915083831415830260408201525b611eba565b600191821c915b82811015611eb8578581015460601c858114158102600583901b8401529350600101611e91565b505b8186528160051b81016040525050505050919050565b638b78c6d8600c52825f526020600c20805483811783611ef1575080841681185b80835580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f5fa3505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316611f6a57611f676fff466c9f0000000000000000000000004265ffffffffffff1683600161223c565b50505b73ffffffffffffffffffffffffffffffffffffffff8216611fac57611fa96fff466c9f0000000000000000000000004265ffffffffffff16835f61223c565b50505b6117fa611fc68463ff466c9f6004525f526018600c205490565b611fdd8463ff466c9f6004525f526018600c205490565b8361236a565b815f528060045260245ffd5b5f8160601b60601c63ff466c9f600452835f526018600c2080549250818155508082600c5160601c7f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f5f5fa4506117fa818361204a8661246e565b61236a565b7fed095a1d53cef9e2be0aab14d20856bfa3fbcc76a945321739a0da68a6078e0073ffffffffffffffffffffffffffffffffffffffff821661209b576120958185612487565b506120cd565b73ffffffffffffffffffffffffffffffffffffffff82165f90815260018201602052604090206120cb908561260b565b505b73ffffffffffffffffffffffffffffffffffffffff831661211f576120f2818561260b565b5073ffffffffffffffffffffffffffffffffffffffff84165f90815260028201602052604081205561217a565b73ffffffffffffffffffffffffffffffffffffffff83165f908152600182016020526040902061214f9085612487565b5073ffffffffffffffffffffffffffffffffffffffff84165f90815260028201602052604090204290555b50505050565b63978aab926004525f8181526024812080548060a01b60a01c8060011c9350808260601c15176121c9576001935083830154156121c9576002935083830154156121c957600393505b505050919050565b63978aab926004525f828152602481208281015460601c915068fbb67fda52d4bfb8bf8214158202915061220484612180565b8310611b99576040517f4e23d03500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5f85548060a01b60d01c806122a2578515851761226157635915f6865f526004601cfd5b8592508260a01c3084141761228757606083901b8717660100000000000017885561235f565b3060601b87176601000000000000178855871983905561235f565b87600182030180548060601c95503086036122bd5781195495505b866122dc578786039450858511156122f657635915f6865f526004601cfd5b8786019450858510156122f657639dbbeb755f526004601cfd5b65ffffffffffff1688811461231d57660100000000000084018a5560019283019291909101905b8260301c898211171561232c57fe5b508360a01c3085141761234c578360601b8260301b89171781555061235f565b3060601b8260301b891717815583811955505b505094509492505050565b8061237457505050565b73ffffffffffffffffffffffffffffffffffffffff80841690831680820361239d575050505050565b8115612402575f5f6123ce6123be8863ff466c9f6004525f526017600c2090565b4265ffffffffffff16875f61223c565b91509150815f5280602052837fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72460405fa250505b8015610f6a575f5f6124346124238763ff466c9f6004525f526017600c2090565b4265ffffffffffff1687600161223c565b91509150815f5280602052827fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72460405fa250505050505050565b6387a211a2600c9081525f828152602090912054610b72565b63978aab926004525f8281526024812073ffffffffffffffffffffffffffffffffffffffff92909216917fffffffffffffffffffffffffffffffffffffffffffffff04498025ad2b40474183016124e55763f5a267f15f526004601cfd5b826124f75768fbb67fda52d4bfb8bf92505b80546bffffffffffffffffffffffff811682602052806125be578160601c8061252a578560601b84556001945050612602565b8581036125375750612602565b600184015460601c80612558578660601b6001860155600195505050612602565b868103612566575050612602565b600285015460601c80612588578760601b600287015560019650505050612602565b87810361259757505050612602565b5f928352604080842060019055918352818320600290558252902060039055506007908117905b845f5260405f20805461260057600191821c8083018255919450816125ec578560601b600317845550612602565b8560601b8285015582600201845550612602565b505b50505092915050565b63978aab926004525f8281526024812073ffffffffffffffffffffffffffffffffffffffff92909216917fffffffffffffffffffffffffffffffffffffffffffffff04498025ad2b40474183016126695763f5a267f15f526004601cfd5b8261267b5768fbb67fda52d4bfb8bf92505b80546bffffffffffffffffffffffff8116806126fa5760019350848260601c036126b85760018301805484556002840180549091555f9055612602565b84600184015460601c036126d95760028301805460018501555f9055612602565b84600284015460601c036126f2575f6002840155612602565b5f9350612602565b82602052845f5260405f20805480612713575050612602565b60018360011c039250826001820314612743578285015460601c8060601b60018303870155805f52508060405f20555b5083547fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016600192831b1782179093555f909255509392505050565b5f6020828403121561278f575f5ffd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610fa8575f5ffd5b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611c9c575f5ffd5b5f60208284031215612844575f5ffd5b610fa882612811565b5f8151808452602084019350602083015f5b8281101561289357815173ffffffffffffffffffffffffffffffffffffffff1686526020958601959091019060010161285f565b5093949350505050565b602081525f610fa8602083018461284d565b5f5f604083850312156128c0575f5ffd5b6128c983612811565b946020939093013593505050565b5f602082840312156128e7575f5ffd5b5035919050565b5f5f5f60608486031215612900575f5ffd5b61290984612811565b925061291760208501612811565b929592945050506040919091013590565b5f5f60408385031215612939575f5ffd5b50508035926020909101359150565b604081525f61295a604083018561284d565b90508260208301529392505050565b803560ff81168114611c9c575f5ffd5b5f5f5f5f5f5f60c0878903121561298e575f5ffd5b61299787612811565b955060208701359450604087013593506129b360608801612969565b9598949750929560808101359460a0909101359350915050565b5f5f5f5f5f5f5f60e0888a0312156129e3575f5ffd5b6129ec88612811565b96506129fa60208901612811565b95506040880135945060608801359350612a1660808901612969565b9699959850939692959460a0840135945060c09093013592915050565b5f5f60408385031215612a44575f5ffd5b612a4d83612811565b9150612a5b60208401612811565b90509250929050565b5f5f60408385031215612a75575f5ffd5b823580151581146128c9575f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b81810381811115610b7257610b72612a84565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f82612aff57612aff612ac4565b500490565b8082028115828204841417610b7257610b72612a84565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b80820180821115610b7257610b72612a84565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f82612b9657612b96612ac4565b5006905681088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b00";
1296
+
1297
+ type TownsConstructorParams =
1298
+ | [signer?: Signer]
1299
+ | ConstructorParameters<typeof ContractFactory>;
1300
+
1301
+ const isSuperArgs = (
1302
+ xs: TownsConstructorParams
1303
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
1304
+
1305
+ export class Towns__factory extends ContractFactory {
1306
+ constructor(...args: TownsConstructorParams) {
1307
+ if (isSuperArgs(args)) {
1308
+ super(...args);
1309
+ } else {
1310
+ super(_abi, _bytecode, args[0]);
1311
+ }
1312
+ }
1313
+
1314
+ override deploy(
1315
+ vault: string,
1316
+ manager: string,
1317
+ config: ITownsBase.InflationConfigStruct,
1318
+ overrides?: Overrides & { from?: string }
1319
+ ): Promise<Towns> {
1320
+ return super.deploy(
1321
+ vault,
1322
+ manager,
1323
+ config,
1324
+ overrides || {}
1325
+ ) as Promise<Towns>;
1326
+ }
1327
+ override getDeployTransaction(
1328
+ vault: string,
1329
+ manager: string,
1330
+ config: ITownsBase.InflationConfigStruct,
1331
+ overrides?: Overrides & { from?: string }
1332
+ ): TransactionRequest {
1333
+ return super.getDeployTransaction(vault, manager, config, overrides || {});
1334
+ }
1335
+ override attach(address: string): Towns {
1336
+ return super.attach(address) as Towns;
1337
+ }
1338
+ override connect(signer: Signer): Towns__factory {
1339
+ return super.connect(signer) as Towns__factory;
1340
+ }
1341
+
1342
+ static readonly bytecode = _bytecode;
1343
+ static readonly abi = _abi;
1344
+ static createInterface(): TownsInterface {
1345
+ return new utils.Interface(_abi) as TownsInterface;
1346
+ }
1347
+ static connect(address: string, signerOrProvider: Signer | Provider): Towns {
1348
+ return new Contract(address, _abi, signerOrProvider) as Towns;
1349
+ }
1350
+ }