@towns-protocol/generated 0.0.227 → 0.0.229

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 (97) hide show
  1. package/dev/abis/DropFacet.abi.json +11 -16
  2. package/dev/abis/DropFacet.abi.ts +11 -16
  3. package/dev/abis/IAppRegistry.abi.json +362 -0
  4. package/dev/abis/IAppRegistry.abi.ts +362 -0
  5. package/dev/abis/IAppRegistryBase.abi.json +136 -0
  6. package/dev/abis/IAppRegistryBase.abi.ts +136 -0
  7. package/dev/abis/ISwapFacet.abi.json +8 -3
  8. package/dev/abis/ISwapFacet.abi.ts +8 -3
  9. package/dev/abis/ISwapRouter.abi.json +51 -2
  10. package/dev/abis/ISwapRouter.abi.ts +51 -2
  11. package/dev/abis/ISwapRouterBase.abi.json +7 -2
  12. package/dev/abis/ISwapRouterBase.abi.ts +7 -2
  13. package/dev/abis/PlatformRequirementsFacet.abi.json +3 -3
  14. package/dev/abis/PlatformRequirementsFacet.abi.ts +3 -3
  15. package/dev/typings/DropFacet.ts +38 -36
  16. package/dev/typings/IAppRegistry.ts +513 -0
  17. package/dev/typings/IDropFacet.ts +37 -35
  18. package/dev/typings/ISwapFacet.ts +9 -9
  19. package/dev/typings/ISwapRouter.ts +78 -8
  20. package/dev/typings/PlatformRequirementsFacet.ts +11 -11
  21. package/dev/typings/factories/DropFacet__factory.ts +12 -17
  22. package/dev/typings/factories/IAppRegistry__factory.ts +383 -0
  23. package/dev/typings/factories/IDropFacet__factory.ts +10 -15
  24. package/dev/typings/factories/ISwapFacet__factory.ts +8 -3
  25. package/dev/typings/factories/ISwapRouter__factory.ts +51 -2
  26. package/dev/typings/factories/MembershipFacet__factory.ts +1 -1
  27. package/dev/typings/factories/PlatformRequirementsFacet__factory.ts +3 -3
  28. package/dev/typings/factories/index.ts +1 -0
  29. package/dev/typings/index.ts +2 -0
  30. package/package.json +2 -2
  31. package/dev/abis/Architect.json +0 -1
  32. package/dev/abis/Channels.json +0 -1
  33. package/dev/abis/Diamond.json +0 -1
  34. package/dev/abis/DiamondCutFacet.json +0 -1
  35. package/dev/abis/DropFacet.json +0 -1
  36. package/dev/abis/ERC721A__IERC721ReceiverUpgradeable.json +0 -1
  37. package/dev/abis/EntitlementsManager.json +0 -1
  38. package/dev/abis/IBanning.json +0 -1
  39. package/dev/abis/IBanningBase.json +0 -1
  40. package/dev/abis/ICreateSpace.json +0 -1
  41. package/dev/abis/ICrossChainEntitlement.json +0 -1
  42. package/dev/abis/IERC5267.json +0 -1
  43. package/dev/abis/IERC721A.json +0 -1
  44. package/dev/abis/IERC721ABase.json +0 -1
  45. package/dev/abis/IERC721AQueryable.json +0 -1
  46. package/dev/abis/IEntitlementChecker.json +0 -1
  47. package/dev/abis/IEntitlementCheckerBase.json +0 -1
  48. package/dev/abis/IEntitlementDataQueryable.json +0 -1
  49. package/dev/abis/IEntitlementDataQueryableBase.json +0 -1
  50. package/dev/abis/IEntitlementGated.json +0 -1
  51. package/dev/abis/IEntitlementGatedBase.json +0 -1
  52. package/dev/abis/IMembershipMetadata.json +0 -1
  53. package/dev/abis/IMulticall.json +0 -1
  54. package/dev/abis/INodeOperator.json +0 -1
  55. package/dev/abis/INodeOperatorBase.json +0 -1
  56. package/dev/abis/IPausable.json +0 -1
  57. package/dev/abis/IPausableBase.json +0 -1
  58. package/dev/abis/IPricingModules.json +0 -1
  59. package/dev/abis/IPricingModulesBase.json +0 -1
  60. package/dev/abis/IReview.json +0 -1
  61. package/dev/abis/IReviewBase.json +0 -1
  62. package/dev/abis/IRuleEntitlement.json +0 -1
  63. package/dev/abis/IRuleEntitlementBase.json +0 -1
  64. package/dev/abis/IRuleEntitlementV2.json +0 -1
  65. package/dev/abis/ISpaceDelegation.json +0 -1
  66. package/dev/abis/ISpaceDelegationBase.json +0 -1
  67. package/dev/abis/ISwapFacet.json +0 -1
  68. package/dev/abis/ISwapFacetBase.json +0 -1
  69. package/dev/abis/ISwapRouter.json +0 -1
  70. package/dev/abis/ISwapRouterBase.json +0 -1
  71. package/dev/abis/ITipping.json +0 -1
  72. package/dev/abis/ITippingBase.json +0 -1
  73. package/dev/abis/ITownsPoints.json +0 -1
  74. package/dev/abis/ITownsPointsBase.json +0 -1
  75. package/dev/abis/ITreasury.json +0 -1
  76. package/dev/abis/Member.json +0 -1
  77. package/dev/abis/MembershipFacet.json +0 -1
  78. package/dev/abis/MockCrossChainEntitlement.json +0 -1
  79. package/dev/abis/MockERC721A.json +0 -1
  80. package/dev/abis/MockEntitlementGated.json +0 -1
  81. package/dev/abis/MockLegacyArchitect.json +0 -1
  82. package/dev/abis/MockRiverRegistry.json +0 -1
  83. package/dev/abis/MockWalletLink.json +0 -1
  84. package/dev/abis/MockWalletLinkStorage.json +0 -1
  85. package/dev/abis/NodeRegistry.json +0 -1
  86. package/dev/abis/OperatorRegistry.json +0 -1
  87. package/dev/abis/OwnableFacet.json +0 -1
  88. package/dev/abis/PlatformRequirementsFacet.json +0 -1
  89. package/dev/abis/PrepayFacet.json +0 -1
  90. package/dev/abis/ProxyManager.json +0 -1
  91. package/dev/abis/Roles.json +0 -1
  92. package/dev/abis/SpaceOwner.json +0 -1
  93. package/dev/abis/StreamFlags.json +0 -1
  94. package/dev/abis/StreamRegistry.json +0 -1
  95. package/dev/abis/TokenPausableFacet.json +0 -1
  96. package/dev/abis/UserEntitlement.json +0 -1
  97. package/dev/abis/WalletLink.json +0 -1
@@ -27,7 +27,7 @@ const _abi = [
27
27
  {
28
28
  name: "condition",
29
29
  type: "tuple",
30
- internalType: "struct DropClaimLib.ClaimCondition",
30
+ internalType: "struct DropGroup.ClaimCondition",
31
31
  components: [
32
32
  {
33
33
  name: "currency",
@@ -75,9 +75,9 @@ const _abi = [
75
75
  name: "claimAndStake",
76
76
  inputs: [
77
77
  {
78
- name: "claim",
78
+ name: "req",
79
79
  type: "tuple",
80
- internalType: "struct DropClaimLib.Claim",
80
+ internalType: "struct DropClaim.Claim",
81
81
  components: [
82
82
  {
83
83
  name: "conditionId",
@@ -124,7 +124,7 @@ const _abi = [
124
124
  ],
125
125
  outputs: [
126
126
  {
127
- name: "",
127
+ name: "amount",
128
128
  type: "uint256",
129
129
  internalType: "uint256",
130
130
  },
@@ -136,9 +136,9 @@ const _abi = [
136
136
  name: "claimWithPenalty",
137
137
  inputs: [
138
138
  {
139
- name: "claim",
139
+ name: "req",
140
140
  type: "tuple",
141
- internalType: "struct DropClaimLib.Claim",
141
+ internalType: "struct DropClaim.Claim",
142
142
  components: [
143
143
  {
144
144
  name: "conditionId",
@@ -209,7 +209,7 @@ const _abi = [
209
209
  {
210
210
  name: "condition",
211
211
  type: "tuple",
212
- internalType: "struct DropClaimLib.ClaimCondition",
212
+ internalType: "struct DropGroup.ClaimCondition",
213
213
  components: [
214
214
  {
215
215
  name: "currency",
@@ -259,7 +259,7 @@ const _abi = [
259
259
  {
260
260
  name: "",
261
261
  type: "tuple[]",
262
- internalType: "struct DropClaimLib.ClaimCondition[]",
262
+ internalType: "struct DropGroup.ClaimCondition[]",
263
263
  components: [
264
264
  {
265
265
  name: "currency",
@@ -356,7 +356,7 @@ const _abi = [
356
356
  {
357
357
  name: "conditions",
358
358
  type: "tuple[]",
359
- internalType: "struct DropClaimLib.ClaimCondition[]",
359
+ internalType: "struct DropGroup.ClaimCondition[]",
360
360
  components: [
361
361
  {
362
362
  name: "currency",
@@ -413,7 +413,7 @@ const _abi = [
413
413
  name: "condition",
414
414
  type: "tuple",
415
415
  indexed: false,
416
- internalType: "struct DropClaimLib.ClaimCondition",
416
+ internalType: "struct DropGroup.ClaimCondition",
417
417
  components: [
418
418
  {
419
419
  name: "currency",
@@ -469,7 +469,7 @@ const _abi = [
469
469
  name: "conditions",
470
470
  type: "tuple[]",
471
471
  indexed: false,
472
- internalType: "struct DropClaimLib.ClaimCondition[]",
472
+ internalType: "struct DropGroup.ClaimCondition[]",
473
473
  components: [
474
474
  {
475
475
  name: "currency",
@@ -686,11 +686,6 @@ const _abi = [
686
686
  name: "DropFacet__NoActiveClaimCondition",
687
687
  inputs: [],
688
688
  },
689
- {
690
- type: "error",
691
- name: "DropFacet__PointsMustBeGreaterThanZero",
692
- inputs: [],
693
- },
694
689
  {
695
690
  type: "error",
696
691
  name: "DropFacet__QuantityMustBeGreaterThanZero",
@@ -766,7 +761,7 @@ const _abi = [
766
761
  ] as const;
767
762
 
768
763
  const _bytecode =
769
- "0x6080604052348015600e575f5ffd5b5060156019565b60bd565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef520008054640100000000900460ff16156064576040516366008a2d60e01b815260040160405180910390fd5b805463ffffffff908116101560ba57805463ffffffff191663ffffffff90811782556040519081527fe9c9b456cb2994b80aeef036cf59d26e9617df80f816a6ee5a5b4166e07e2f5c9060200160405180910390a15b50565b612677806100ca5f395ff3fe608060405234801561000f575f5ffd5b50600436106100b9575f3560e01c806381045e3611610072578063c68907de11610058578063c68907de14610166578063c9ac93681461016e578063fff9637414610181575f5ffd5b806381045e361461013e578063a1550b2f14610151575f5ffd5b806364843393116100a257806364843393146100f85780636f8934f41461010b5780637a05557c1461012b575f5ffd5b806314c9fcbc146100bd57806333d42dc6146100d2575b5f5ffd5b6100d06100cb366004611de6565b610194565b005b6100e56100e0366004611e01565b61022c565b6040519081526020015b60405180910390f35b6100d0610106366004611e2b565b610291565b61011e610119366004611e44565b610332565b6040516100ef9190611e5b565b6100e5610139366004611e01565b61045d565b6100e561014c366004611eff565b610494565b61015961061a565b6040516100ef9190611f4e565b6100e561064a565b6100d061017c366004612002565b610674565b6100e561018f366004612073565b610715565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef5200054640100000000900460ff166101f7576040517f77a399b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6102207f9251dd0600000000000000000000000000000000000000000000000000000000610956565b61022981610aab565b50565b5f61028782847feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab005b5f9283526001016020908152604080842073ffffffffffffffffffffffffffffffffffffffff9093168452919052902090565b5490505b92915050565b7f4675fa8241f86f37157864d3d49b85ad4b164352c516da28e1678a90470ae3005473ffffffffffffffffffffffffffffffffffffffff163314610308576040517f65f490650000000000000000000000000000000000000000000000000000000081523360048201526024015b60405180910390fd5b6102297feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab0082610ad5565b604080515f80825260208201819052818301819052606082018190526080820181905260a0820181905260c08201529081905261039c827feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab005b5f9182526002016020526040902090565b6040805160e081018252825473ffffffffffffffffffffffffffffffffffffffff8116825274010000000000000000000000000000000000000000810464ffffffffff9081166020840152790100000000000000000000000000000000000000000000000000820416928201929092527e0100000000000000000000000000000000000000000000000000000000000090910461ffff16606082015260018201546080820152600282015460a082015260039091015460c082015292915050565b5f61048982847feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab00610254565b600101549392505050565b5f806104c184357feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab0061038b565b90505f6104ff85356104d96040880160208901611de6565b7feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab00610254565b905061050c828287610d87565b610517828686611046565b92506105248282856110da565b7f25a22d57af6f735dc617e9781981413da3bc5a71376b4237270a04c144aaf7006105646105586040880160208901611de6565b829060608901356110fa565b82546105979073ffffffffffffffffffffffffffffffffffffffff163061059160408a0160208b01611de6565b87611116565b6105a76040870160208801611de6565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16875f01357f970af01ab25e63f8131277859b2c17e9a07c2eb257e6db87449000d91c0f84018760405161060991815260200190565b60405180910390a450505092915050565b60606106457feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab006111af565b905090565b5f6106457feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab006113da565b7f4675fa8241f86f37157864d3d49b85ad4b164352c516da28e1678a90470ae3005473ffffffffffffffffffffffffffffffffffffffff1633146106e6576040517f65f490650000000000000000000000000000000000000000000000000000000081523360048201526024016102ff565b6107117feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab008383611549565b5050565b5f8061074287357feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab0061038b565b90505f61075a88356104d960408b0160208c01611de6565b905061076782828a610d87565b610776828260408b01356110da565b7f25a22d57af6f735dc617e9781981413da3bc5a71376b4237270a04c144aaf7006107b66107aa60408b0160208c01611de6565b829060608c01356110fa565b6107e57feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab008460408c01356117fb565b5f7feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab005473ffffffffffffffffffffffffffffffffffffffff1663e69f949561083060408d0135611895565b8b8d60200160208101906108449190611de6565b8e60200160208101906108579190611de6565b8d8d8d6040518863ffffffff1660e01b815260040161087c9796959493929190612124565b6020604051808303815f875af1158015610898573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108bc91906121e3565b6001840181905590506108d560408b0160208c01611de6565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff168b5f01357ff08f338c8905e343697a35fef11af2f611a36658016e0653521354c865373ea78d6040013560405161093b91815260200190565b60405180910390a45050506040909601359695505050505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081165f9081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b00602052604090205460ff16610a2a577fffffffff0000000000000000000000000000000000000000000000000000000081165f9081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b006020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055610a5c565b6040517ff2cfeefa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517fffffffff000000000000000000000000000000000000000000000000000000008216907f78f84e5b1c5c05be2b5ad3800781dd404d6d6c6302bc755c0fe20f58a33a7f22905f90a250565b6102297feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab00826118b6565b815465ffffffffffff7401000000000000000000000000000000000000000082048116917a0100000000000000000000000000000000000000000000000000009004165f610b238284612227565b905065ffffffffffff821615610cb0576040805160e0810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c08101919091525065ffffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8201165f90815260028087016020908152604092839020835160e081018552815473ffffffffffffffffffffffffffffffffffffffff8116825264ffffffffff7401000000000000000000000000000000000000000082048116838601527901000000000000000000000000000000000000000000000000008204168287015261ffff7e01000000000000000000000000000000000000000000000000000000000000909104166060820152600182015460808201529281015460a08401526003015460c08301529091610c6d91908701908701612257565b64ffffffffff16816020015164ffffffffff1610610cae57610cae7f7b10269c0000000000000000000000000000000000000000000000000000000061193c565b505b610cca610cc06020860186611de6565b8560800135611944565b65ffffffffffff81165f90815260028601602052604090208490610cee828261228a565b50610cfc9050826001612227565b855479ffffffffffffffffffffffffffffffffffffffffffffffffffff167a01000000000000000000000000000000000000000000000000000065ffffffffffff92831602178655604051908216907fb2d7f7a48138c995ec7024ac4e176fad4415d42377559f3178e3830941b0484190610d78908790612493565b60405180910390a25050505050565b6003830154610db957610db97ff235dd010000000000000000000000000000000000000000000000000000000061193c565b80604001355f03610ded57610ded7fdf4e56a50000000000000000000000000000000000000000000000000000000061193c565b80606001355f03610e2157610e217f14574b490000000000000000000000000000000000000000000000000000000061193c565b825473ffffffffffffffffffffffffffffffffffffffff16610e6657610e667fe211c34c0000000000000000000000000000000000000000000000000000000061193c565b826001015481604001358460020154610e7f91906124a1565b1115610eae57610eae7fb0b4e6d40000000000000000000000000000000000000000000000000000000061193c565b825474010000000000000000000000000000000000000000900464ffffffffff16421015610eff57610eff7f4b3950d80000000000000000000000000000000000000000000000000000000061193c565b8254790100000000000000000000000000000000000000000000000000900464ffffffffff1615801590610f5857508254790100000000000000000000000000000000000000000000000000900464ffffffffff164210155b15610f8657610f867fd87c5b1d0000000000000000000000000000000000000000000000000000000061193c565b815415610fb657610fb67f7f76444f0000000000000000000000000000000000000000000000000000000061193c565b5f610ff0610fca6040840160208501611de6565b604080515f92835281860135602090815260608088013584528420845290922091905290565b6003850154909150611013908261100a60808601866124b4565b90929091611a00565b611040576110407f592fca340000000000000000000000000000000000000000000000000000000061193c565b50505050565b82545f9061ffff7e01000000000000000000000000000000000000000000000000000000000000909104811690831681146110a4576110a47f70566c000000000000000000000000000000000000000000000000000000000061193c565b6040840135915061ffff8116156110d2575f6110c885604001358361ffff16611a38565b6040860135039250505b509392505050565b80836002015f8282546110ed91906124a1565b9091555050815401905550565b611105838383611ae9565b600290920180549290920390915550565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160315611040573073ffffffffffffffffffffffffffffffffffffffff84160361118d5761118873ffffffffffffffffffffffffffffffffffffffff85168383611b5f565b611040565b61104073ffffffffffffffffffffffffffffffffffffffff8516848484611bb2565b80546060907a010000000000000000000000000000000000000000000000000000900465ffffffffffff1667ffffffffffffffff8111156111f2576111f261251f565b60405190808252806020026020018201604052801561127657816020015b6040805160e0810182525f8082526020808301829052928201819052606082018190526080820181905260a0820181905260c082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816112105790505b5090505f5b82547a010000000000000000000000000000000000000000000000000000900465ffffffffffff168110156113d457825460028401905f906112de90849074010000000000000000000000000000000000000000900465ffffffffffff166124a1565b815260208082019290925260409081015f20815160e081018352815473ffffffffffffffffffffffffffffffffffffffff8116825274010000000000000000000000000000000000000000810464ffffffffff908116958301959095527901000000000000000000000000000000000000000000000000008104909416928101929092527e0100000000000000000000000000000000000000000000000000000000000090920461ffff16606082015260018201546080820152600282015460a082015260039091015460c082015282518390839081106113c1576113c161254c565b602090810291909101015260010161127b565b50919050565b80545f9065ffffffffffff7401000000000000000000000000000000000000000082048116917a01000000000000000000000000000000000000000000000000000090041680830361144f5761144f7f44d5f0940000000000000000000000000000000000000000000000000000000061193c565b65ffffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8383010116805b8365ffffffffffff168110611517575f8181526002870160205260409020805464ffffffffff79010000000000000000000000000000000000000000000000000082048116917401000000000000000000000000000000000000000090041642108015906114f357508015806114f357508042105b156115045750909695505050505050565b50508061151090612579565b905061147e565b506115417f44d5f0940000000000000000000000000000000000000000000000000000000061193c565b505050919050565b825465ffffffffffff7401000000000000000000000000000000000000000082048116917a010000000000000000000000000000000000000000000000000000900481169061159884846124a1565b11156115c7576115c77fae4eeeb10000000000000000000000000000000000000000000000000000000061193c565b825f80805b8365ffffffffffff1681101561170357368888838181106115ef576115ef61254c565b905060e00201905080602001602081019061160a9190612257565b64ffffffffff168465ffffffffffff1610611648576116487f7b10269c0000000000000000000000000000000000000000000000000000000061193c565b5f60028b01816116608565ffffffffffff8c166124a1565b81526020019081526020015f2090505f8160020154905082608001358111156116ac576116ac7fae4eeeb10000000000000000000000000000000000000000000000000000000061193c565b6116b68284611c14565b6116c66040840160208501612257565b64ffffffffff1695506116dd6080840135866124a1565b94506116f56116ef6020850185611de6565b86611944565b5050508060010190506115cc565b50875465ffffffffffff8085167a010000000000000000000000000000000000000000000000000000810279ffffffffffffffffffffffffffffffffffffffffffffffffffff909316929092178a55851611156117af5765ffffffffffff83165b8465ffffffffffff168110156117ad5765ffffffffffff861681015f9081526002808b016020526040822082815560018082018490559181018390556003019190915501611764565b505b8465ffffffffffff167ff91c9c864018770f197086e7e64354d3a54259e85887953cbbe7d02ba32aba8e88886040516117e99291906125ad565b60405180910390a25050505050505050565b815483546040517f095ea7b300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff91821660048201526024810184905291169063095ea7b3906044016020604051808303815f875af1158015611871573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061104091906125ee565b5f6c0100000000000000000000000082106118b2576118b2611d91565b5090565b73ffffffffffffffffffffffffffffffffffffffff81166118fa576118fa7fe3224c780000000000000000000000000000000000000000000000000000000061193c565b81547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff91909116179055565b805f5260045ffd5b6040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8316906370a0823190602401602060405180830381865afa1580156119ac573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119d091906121e3565b811115610711576107117f42e1bedf0000000000000000000000000000000000000000000000000000000061193c565b5f8315611a30578360051b8501855b803580851160051b94855260209485185260405f209301818110611a0f5750505b501492915050565b5f612710821115611acb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f426173697320706f696e74732063616e6e6f74206578636565642031305f303060448201527f300000000000000000000000000000000000000000000000000000000000000060648201526084016102ff565b612710611ad8838561260d565b611ae29190612624565b9392505050565b5f5f611af6858585611d9e565b915091508115611b58576040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8516600482015260248101829052604481018490526064016102ff565b5050505050565b81601452806034526fa9059cbb0000000000000000000000005f5260205f604460105f875af18060015f511416611ba857803d853b151710611ba8576390b8ec185f526004601cfd5b505f603452505050565b60405181606052826040528360601b602c526f23b872dd000000000000000000000000600c5260205f6064601c5f895af18060015f511416611c0657803d873b151710611c0657637939f4245f526004601cfd5b505f60605260405250505050565b611c246040820160208301612257565b825464ffffffffff9190911674010000000000000000000000000000000000000000027fffffffffffffff0000000000ffffffffffffffffffffffffffffffffffffffff909116178255611c7e6060820160408301612257565b825464ffffffffff91909116790100000000000000000000000000000000000000000000000000027fffff0000000000ffffffffffffffffffffffffffffffffffffffffffffffffff9091161782556080810135600183015560c08101356003830155611cee6020820182611de6565b82547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff91909116178255611d3e608082016060830161265c565b825461ffff919091167e01000000000000000000000000000000000000000000000000000000000000027dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9091161790915550565b6335278d125f526004601cfd5b5f82815260208490526040902080548281109182611dbc5783820381555b50935093915050565b73ffffffffffffffffffffffffffffffffffffffff81168114610229575f5ffd5b5f60208284031215611df6575f5ffd5b8135611ae281611dc5565b5f5f60408385031215611e12575f5ffd5b8235611e1d81611dc5565b946020939093013593505050565b5f60e0828403128015611e3c575f5ffd5b509092915050565b5f60208284031215611e54575f5ffd5b5035919050565b60e0810161028b828473ffffffffffffffffffffffffffffffffffffffff815116825264ffffffffff602082015116602083015264ffffffffff604082015116604083015261ffff60608201511660608301526080810151608083015260a081015160a083015260c081015160c08301525050565b5f60a082840312156113d4575f5ffd5b61ffff81168114610229575f5ffd5b8035611efa81611ee0565b919050565b5f5f60408385031215611f10575f5ffd5b823567ffffffffffffffff811115611f26575f5ffd5b611f3285828601611ed0565b9250506020830135611f4381611ee0565b809150509250929050565b602080825282518282018190525f918401906040840190835b81811015611ff757611fe183855173ffffffffffffffffffffffffffffffffffffffff815116825264ffffffffff602082015116602083015264ffffffffff604082015116604083015261ffff60608201511660608301526080810151608083015260a081015160a083015260c081015160c08301525050565b6020939093019260e09290920191600101611f67565b509095945050505050565b5f5f60208385031215612013575f5ffd5b823567ffffffffffffffff811115612029575f5ffd5b8301601f81018513612039575f5ffd5b803567ffffffffffffffff81111561204f575f5ffd5b85602060e083028401011115612063575f5ffd5b6020919091019590945092505050565b5f5f5f5f5f60808688031215612087575f5ffd5b853567ffffffffffffffff81111561209d575f5ffd5b6120a988828901611ed0565b95505060208601356120ba81611dc5565b935060408601359250606086013567ffffffffffffffff8111156120dc575f5ffd5b8601601f810188136120ec575f5ffd5b803567ffffffffffffffff811115612102575f5ffd5b886020828401011115612113575f5ffd5b959894975092955050506020019190565b6bffffffffffffffffffffffff8816815273ffffffffffffffffffffffffffffffffffffffff8716602082015273ffffffffffffffffffffffffffffffffffffffff8616604082015273ffffffffffffffffffffffffffffffffffffffff8516606082015283608082015260c060a08201528160c0820152818360e08301375f81830160e090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019695505050505050565b5f602082840312156121f3575f5ffd5b5051919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b65ffffffffffff818116838216019081111561028b5761028b6121fa565b64ffffffffff81168114610229575f5ffd5b5f60208284031215612267575f5ffd5b8135611ae281612245565b5f813561028b81612245565b5f813561028b81611ee0565b813561229581611dc5565b73ffffffffffffffffffffffffffffffffffffffff81167fffffffffffffffffffffffff00000000000000000000000000000000000000008354161782555060208201356122e281612245565b81547fffffffffffffff0000000000ffffffffffffffffffffffffffffffffffffffff1660a09190911b78ffffffffff00000000000000000000000000000000000000001617815561238861233960408401612272565b82547fffff0000000000ffffffffffffffffffffffffffffffffffffffffffffffffff1660c89190911b7dffffffffff0000000000000000000000000000000000000000000000000016178255565b6123e66123976060840161227e565b82547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1660f09190911b7fffff00000000000000000000000000000000000000000000000000000000000016178255565b6080820135600182015560a0820135600282015560c090910135600390910155565b803561241381611dc5565b73ffffffffffffffffffffffffffffffffffffffff168252602081013561243981612245565b64ffffffffff166020830152604081013561245381612245565b64ffffffffff16604083015261246b60608201611eef565b61ffff1660608301526080818101359083015260a0808201359083015260c090810135910152565b60e0810161028b8284612408565b8082018082111561028b5761028b6121fa565b5f5f83357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126124e7575f5ffd5b83018035915067ffffffffffffffff821115612501575f5ffd5b6020019150600581901b3603821315612518575f5ffd5b9250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81612587576125876121fa565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b602080825281018290525f8360408301825b858110156125e4576125d18284612408565b60e09283019291909101906001016125bf565b5095945050505050565b5f602082840312156125fe575f5ffd5b81518015158114611ae2575f5ffd5b808202811582820484141761028b5761028b6121fa565b5f82612657577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b5f6020828403121561266c575f5ffd5b8135611ae281611ee056";
764
+ "0x6080604052348015600e575f5ffd5b5060156019565b60bd565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef520008054640100000000900460ff16156064576040516366008a2d60e01b815260040160405180910390fd5b805463ffffffff908116101560ba57805463ffffffff191663ffffffff90811782556040519081527fe9c9b456cb2994b80aeef036cf59d26e9617df80f816a6ee5a5b4166e07e2f5c9060200160405180910390a15b50565b6124ea806100ca5f395ff3fe608060405234801561000f575f5ffd5b50600436106100b9575f3560e01c806381045e3611610072578063c68907de11610058578063c68907de146101b6578063c9ac9368146101be578063fff96374146101d1575f5ffd5b806381045e361461018e578063a1550b2f146101a1575f5ffd5b806364843393116100a257806364843393146100f85780636f8934f41461010b5780637a05557c1461012b575f5ffd5b806314c9fcbc146100bd57806333d42dc6146100d2575b5f5ffd5b6100d06100cb366004611c72565b6101e4565b005b6100e56100e0366004611c8d565b61027c565b6040519081526020015b60405180910390f35b6100d0610106366004611cb7565b6102d1565b61011e610119366004611cd0565b610351565b6040516100ef9190611ce7565b6100e5610139366004611c8d565b5f9081527feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab016020908152604080832073ffffffffffffffffffffffffffffffffffffffff949094168352929052206001015490565b6100e561019c366004611d91565b61047b565b6101a9610614565b6040516100ef9190611de0565b6100e5610623565b6100d06101cc366004611e94565b61062c565b6100e56101df366004611f05565b6106ac565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef5200054640100000000900460ff16610247576040517f77a399b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6102707f9251dd060000000000000000000000000000000000000000000000000000000061090f565b61027981610a64565b50565b5f8181527feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab016020908152604080832073ffffffffffffffffffffffffffffffffffffffff861684529091529020545b92915050565b7f4675fa8241f86f37157864d3d49b85ad4b164352c516da28e1678a90470ae3005473ffffffffffffffffffffffffffffffffffffffff163314610348576040517f65f490650000000000000000000000000000000000000000000000000000000081523360048201526024015b60405180910390fd5b61027981610a6d565b604080515f80825260208201819052818301819052606082018190526080820181905260a0820181905260c0820152908190526103ba825f9081527feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab016020526040902060010190565b6040805160e081018252825473ffffffffffffffffffffffffffffffffffffffff8116825274010000000000000000000000000000000000000000810464ffffffffff9081166020840152790100000000000000000000000000000000000000000000000000820416928201929092527e0100000000000000000000000000000000000000000000000000000000000090910461ffff16606082015260018201546080820152600282015460a082015260039091015460c082015292915050565b81355f9081527feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab016020526040808220600181015490916104e69190860135907e01000000000000000000000000000000000000000000000000000000000000900461ffff1685610cca565b91506104f28183610d2a565b6004810154610502908590610ef7565b61051d6105156040860160208701611c72565b829084610f4b565b7f25a22d57af6f735dc617e9781981413da3bc5a71376b4237270a04c144aaf70061055d6105516040870160208801611c72565b82906060880135610fbf565b6105926105706040870160208801611c72565b600184015473ffffffffffffffffffffffffffffffffffffffff169085610fdb565b6105a26040860160208701611c72565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16865f01357f970af01ab25e63f8131277859b2c17e9a07c2eb257e6db87449000d91c0f84018660405161060491815260200190565b60405180910390a4505092915050565b606061061e61102e565b905090565b5f61061e61128a565b7f4675fa8241f86f37157864d3d49b85ad4b164352c516da28e1678a90470ae3005473ffffffffffffffffffffffffffffffffffffffff16331461069e576040517f65f4906500000000000000000000000000000000000000000000000000000000815233600482015260240161033f565b6106a88282611445565b5050565b84355f9081527feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab0160205260409081902090860135906106eb8183610d2a565b60048101546106fb908890610ef7565b61070e6105156040890160208a01611c72565b7f25a22d57af6f735dc617e9781981413da3bc5a71376b4237270a04c144aaf70061074e61074260408a0160208b01611c72565b829060608b0135610fbf565b60018201546107739073ffffffffffffffffffffffffffffffffffffffff168461171b565b5f7feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab005473ffffffffffffffffffffffffffffffffffffffff1663e69f94956107ba86611760565b8a6107cb60408e0160208f01611c72565b8d60200160208101906107de9190611c72565b8c8c8c6040518863ffffffff1660e01b81526004016108039796959493929190611fb6565b6020604051808303815f875af115801561081f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108439190612075565b90505f838161085860408d0160208e01611c72565b73ffffffffffffffffffffffffffffffffffffffff16815260208082019290925260409081015f2060018101859055925061089891908c01908c01611c72565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff168b5f01357ff08f338c8905e343697a35fef11af2f611a36658016e0653521354c865373ea7886040516108fa91815260200190565b60405180910390a45050505095945050505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081165f9081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b00602052604090205460ff166109e3577fffffffff0000000000000000000000000000000000000000000000000000000081165f9081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b006020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055610a15565b6040517ff2cfeefa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517fffffffff000000000000000000000000000000000000000000000000000000008216907f78f84e5b1c5c05be2b5ad3800781dd404d6d6c6302bc755c0fe20f58a33a7f22905f90a250565b61027981611781565b7feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab005465ffffffffffff7401000000000000000000000000000000000000000082048116917a0100000000000000000000000000000000000000000000000000009004165f610adb82846120b9565b905065ffffffffffff821615610bae5765ffffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8201165f9081527feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab01602052604081206001019050610b5760408601602087016120e9565b815464ffffffffff9182167401000000000000000000000000000000000000000090910490911610610bac57610bac7f7b10269c0000000000000000000000000000000000000000000000000000000061182b565b505b610bc8610bbe6020860186611c72565b8560800135611833565b83610c048265ffffffffffff165f9081527feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab016020526040902090565b600101610c11828261211c565b50610c1f90508260016120b9565b7feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab00805479ffffffffffffffffffffffffffffffffffffffffffffffffffff167a01000000000000000000000000000000000000000000000000000065ffffffffffff93841602179055604051908216907fb2d7f7a48138c995ec7024ac4e176fad4415d42377559f3178e3830941b0484190610cbc908790612325565b60405180910390a250505050565b5f8161ffff168361ffff1614610d0357610d037f70566c000000000000000000000000000000000000000000000000000000000061182b565b61ffff831615610d22575f610d1c858561ffff16611883565b90940393505b509192915050565b60048201546001830190610d6157610d617ff235dd010000000000000000000000000000000000000000000000000000000061182b565b815f03610d9157610d917fdf4e56a50000000000000000000000000000000000000000000000000000000061182b565b805473ffffffffffffffffffffffffffffffffffffffff16610dd657610dd67fe211c34c0000000000000000000000000000000000000000000000000000000061182b565b8060010154828260020154610deb9190612333565b1115610e1a57610e1a7fb0b4e6d40000000000000000000000000000000000000000000000000000000061182b565b805474010000000000000000000000000000000000000000900464ffffffffff16421015610e6b57610e6b7f4b3950d80000000000000000000000000000000000000000000000000000000061182b565b8054790100000000000000000000000000000000000000000000000000900464ffffffffff1615801590610ec457508054790100000000000000000000000000000000000000000000000000900464ffffffffff164210155b15610ef257610ef27fd87c5b1d0000000000000000000000000000000000000000000000000000000061182b565b505050565b5f610f0183611934565b9050610f1e8282610f156080870187612346565b90929091611972565b610ef257610ef27f592fca340000000000000000000000000000000000000000000000000000000061182b565b73ffffffffffffffffffffffffffffffffffffffff82165f908152602084905260409020805415610f9f57610f9f7f7f76444f0000000000000000000000000000000000000000000000000000000061182b565b81846001016002015f828254610fb59190612333565b9091555050555050565b610fca8383836119aa565b600290920180549290920390915550565b81601452806034526fa9059cbb0000000000000000000000005f5260205f604460105f875af18060015f51141661102457803d853b151710611024576390b8ec185f526004601cfd5b505f603452505050565b60605f5f61109d7feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab005474010000000000000000000000000000000000000000810465ffffffffffff908116927a0100000000000000000000000000000000000000000000000000009092041690565b915091508065ffffffffffff1667ffffffffffffffff8111156110c2576110c26123b1565b60405190808252806020026020018201604052801561114657816020015b6040805160e0810182525f8082526020808301829052928201819052606082018190526080820181905260a0820181905260c082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816110e05790505b5092505f5b8165ffffffffffff16811015611284576111a26111708265ffffffffffff8616612333565b5f9081527feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab016020526040902060010190565b6040805160e081018252825473ffffffffffffffffffffffffffffffffffffffff8116825274010000000000000000000000000000000000000000810464ffffffffff9081166020840152790100000000000000000000000000000000000000000000000000820416928201929092527e0100000000000000000000000000000000000000000000000000000000000090910461ffff16606082015260018201546080820152600282015460a082015260039091015460c08201528451859083908110611271576112716123de565b602090810291909101015260010161114b565b50505090565b5f5f5f6112f87feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab005474010000000000000000000000000000000000000000810465ffffffffffff908116927a0100000000000000000000000000000000000000000000000000009092041690565b915091508065ffffffffffff165f03611334576113347f44d5f0940000000000000000000000000000000000000000000000000000000061182b565b65ffffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8383010116805b8365ffffffffffff16811061141b575f8181527feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab0160205260409020600101805464ffffffffff79010000000000000000000000000000000000000000000000000082048116917401000000000000000000000000000000000000000090041642108015906113f857508015806113f857508042105b1561140857509095945050505050565b5050806114149061240b565b9050611363565b506112847f44d5f0940000000000000000000000000000000000000000000000000000000061182b565b7feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab00805465ffffffffffff7401000000000000000000000000000000000000000082048116917a01000000000000000000000000000000000000000000000000000090048116906114b58584612333565b11156114e4576114e47fae4eeeb10000000000000000000000000000000000000000000000000000000061182b565b835f80805b8365ffffffffffff16811015611620573689898381811061150c5761150c6123de565b905060e00201905080602001602081019061152791906120e9565b64ffffffffff168465ffffffffffff1610611565576115657f7b10269c0000000000000000000000000000000000000000000000000000000061182b565b5f600189018161157d8565ffffffffffff8c16612333565b815260208101919091526040015f20600381015490915060808301358111156115c9576115c97fae4eeeb10000000000000000000000000000000000000000000000000000000061182b565b6115d38284611a20565b6115e360408401602085016120e9565b64ffffffffff1695506115fa608084013586612333565b945061161261160c6020850185611c72565b86611833565b5050508060010190506114e9565b50855465ffffffffffff8085167a010000000000000000000000000000000000000000000000000000810279ffffffffffffffffffffffffffffffffffffffffffffffffffff909316929092178855851611156116cf5765ffffffffffff83165b8465ffffffffffff168110156116cd5765ffffffffffff861681015f90815260018089016020526040822080820183905560028101839055600381018390556004019190915501611681565b505b8465ffffffffffff167ff91c9c864018770f197086e7e64354d3a54259e85887953cbbe7d02ba32aba8e898960405161170992919061243f565b60405180910390a25050505050505050565b6106a87feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab005473ffffffffffffffffffffffffffffffffffffffff848116911683611ba1565b5f6c01000000000000000000000000821061177d5761177d611bea565b5090565b73ffffffffffffffffffffffffffffffffffffffff81166117c5576117c57fe3224c780000000000000000000000000000000000000000000000000000000061182b565b7feda6a1e2ce6f1639b6d3066254ca87a2daf51c4f0ad5038d408bbab6cc2cab0080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b805f5260045ffd5b61185373ffffffffffffffffffffffffffffffffffffffff831630611bf7565b8111156106a8576106a87f42e1bedf0000000000000000000000000000000000000000000000000000000061182b565b5f612710821115611916576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f426173697320706f696e74732063616e6e6f74206578636565642031305f303060448201527f3000000000000000000000000000000000000000000000000000000000000000606482015260840161033f565b6127106119238385612480565b61192d9190612497565b9392505050565b5f806119466040840160208501611c72565b604080515f92835281860135602090815260609687013583529583208352949091209390525090919050565b5f83156119a2578360051b8501855b803580851160051b94855260209485185260405f2093018181106119815750505b501492915050565b5f5f6119b7858585611c2a565b915091508115611a19576040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602481018290526044810184905260640161033f565b5050505050565b60018201611a3460408301602084016120e9565b815464ffffffffff9190911674010000000000000000000000000000000000000000027fffffffffffffff0000000000ffffffffffffffffffffffffffffffffffffffff909116178155611a8e60608301604084016120e9565b815464ffffffffff91909116790100000000000000000000000000000000000000000000000000027fffff0000000000ffffffffffffffffffffffffffffffffffffffffffffffffff9091161781556080820135600182015560c08201356003820155611afe6020830183611c72565b81547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff91909116178155611b4e60808301606084016124cf565b815461ffff919091167e01000000000000000000000000000000000000000000000000000000000000027dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9091161790555050565b81601452806034526f095ea7b30000000000000000000000005f5260205f604460105f875af18060015f51141661102457803d853b15171061102457633e3f8f735f526004601cfd5b6335278d125f526004601cfd5b5f816014526f70a082310000000000000000000000005f5260208060246010865afa601f3d111660205102905092915050565b5f82815260208490526040902080548281109182611c485783820381555b50935093915050565b73ffffffffffffffffffffffffffffffffffffffff81168114610279575f5ffd5b5f60208284031215611c82575f5ffd5b813561192d81611c51565b5f5f60408385031215611c9e575f5ffd5b8235611ca981611c51565b946020939093013593505050565b5f60e0828403128015611cc8575f5ffd5b509092915050565b5f60208284031215611ce0575f5ffd5b5035919050565b60e081016102cb828473ffffffffffffffffffffffffffffffffffffffff815116825264ffffffffff602082015116602083015264ffffffffff604082015116604083015261ffff60608201511660608301526080810151608083015260a081015160a083015260c081015160c08301525050565b5f60a08284031215611d6c575f5ffd5b50919050565b61ffff81168114610279575f5ffd5b8035611d8c81611d72565b919050565b5f5f60408385031215611da2575f5ffd5b823567ffffffffffffffff811115611db8575f5ffd5b611dc485828601611d5c565b9250506020830135611dd581611d72565b809150509250929050565b602080825282518282018190525f918401906040840190835b81811015611e8957611e7383855173ffffffffffffffffffffffffffffffffffffffff815116825264ffffffffff602082015116602083015264ffffffffff604082015116604083015261ffff60608201511660608301526080810151608083015260a081015160a083015260c081015160c08301525050565b6020939093019260e09290920191600101611df9565b509095945050505050565b5f5f60208385031215611ea5575f5ffd5b823567ffffffffffffffff811115611ebb575f5ffd5b8301601f81018513611ecb575f5ffd5b803567ffffffffffffffff811115611ee1575f5ffd5b85602060e083028401011115611ef5575f5ffd5b6020919091019590945092505050565b5f5f5f5f5f60808688031215611f19575f5ffd5b853567ffffffffffffffff811115611f2f575f5ffd5b611f3b88828901611d5c565b9550506020860135611f4c81611c51565b935060408601359250606086013567ffffffffffffffff811115611f6e575f5ffd5b8601601f81018813611f7e575f5ffd5b803567ffffffffffffffff811115611f94575f5ffd5b886020828401011115611fa5575f5ffd5b959894975092955050506020019190565b6bffffffffffffffffffffffff8816815273ffffffffffffffffffffffffffffffffffffffff8716602082015273ffffffffffffffffffffffffffffffffffffffff8616604082015273ffffffffffffffffffffffffffffffffffffffff8516606082015283608082015260c060a08201528160c0820152818360e08301375f81830160e090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019695505050505050565b5f60208284031215612085575f5ffd5b5051919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b65ffffffffffff81811683821601908111156102cb576102cb61208c565b64ffffffffff81168114610279575f5ffd5b5f602082840312156120f9575f5ffd5b813561192d816120d7565b5f81356102cb816120d7565b5f81356102cb81611d72565b813561212781611c51565b73ffffffffffffffffffffffffffffffffffffffff81167fffffffffffffffffffffffff0000000000000000000000000000000000000000835416178255506020820135612174816120d7565b81547fffffffffffffff0000000000ffffffffffffffffffffffffffffffffffffffff1660a09190911b78ffffffffff00000000000000000000000000000000000000001617815561221a6121cb60408401612104565b82547fffff0000000000ffffffffffffffffffffffffffffffffffffffffffffffffff1660c89190911b7dffffffffff0000000000000000000000000000000000000000000000000016178255565b61227861222960608401612110565b82547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1660f09190911b7fffff00000000000000000000000000000000000000000000000000000000000016178255565b6080820135600182015560a0820135600282015560c090910135600390910155565b80356122a581611c51565b73ffffffffffffffffffffffffffffffffffffffff16825260208101356122cb816120d7565b64ffffffffff16602083015260408101356122e5816120d7565b64ffffffffff1660408301526122fd60608201611d81565b61ffff1660608301526080818101359083015260a0808201359083015260c090810135910152565b60e081016102cb828461229a565b808201808211156102cb576102cb61208c565b5f5f83357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112612379575f5ffd5b83018035915067ffffffffffffffff821115612393575f5ffd5b6020019150600581901b36038213156123aa575f5ffd5b9250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f816124195761241961208c565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b602080825281018290525f8360408301825b8581101561247657612463828461229a565b60e0928301929190910190600101612451565b5095945050505050565b80820281158282048414176102cb576102cb61208c565b5f826124ca577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b5f602082840312156124df575f5ffd5b813561192d81611d7256";
770
765
 
771
766
  type DropFacetConstructorParams =
772
767
  | [signer?: Signer]
@@ -0,0 +1,383 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import { Contract, Signer, utils } from "ethers";
6
+ import type { Provider } from "@ethersproject/providers";
7
+ import type { IAppRegistry, IAppRegistryInterface } from "../IAppRegistry";
8
+
9
+ const _abi = [
10
+ {
11
+ type: "function",
12
+ name: "adminBanApp",
13
+ inputs: [
14
+ {
15
+ name: "app",
16
+ type: "address",
17
+ internalType: "address",
18
+ },
19
+ ],
20
+ outputs: [
21
+ {
22
+ name: "",
23
+ type: "bytes32",
24
+ internalType: "bytes32",
25
+ },
26
+ ],
27
+ stateMutability: "nonpayable",
28
+ },
29
+ {
30
+ type: "function",
31
+ name: "adminRegisterAppSchema",
32
+ inputs: [
33
+ {
34
+ name: "schema",
35
+ type: "string",
36
+ internalType: "string",
37
+ },
38
+ {
39
+ name: "resolver",
40
+ type: "address",
41
+ internalType: "contract ISchemaResolver",
42
+ },
43
+ {
44
+ name: "revocable",
45
+ type: "bool",
46
+ internalType: "bool",
47
+ },
48
+ ],
49
+ outputs: [
50
+ {
51
+ name: "",
52
+ type: "bytes32",
53
+ internalType: "bytes32",
54
+ },
55
+ ],
56
+ stateMutability: "nonpayable",
57
+ },
58
+ {
59
+ type: "function",
60
+ name: "getAppById",
61
+ inputs: [
62
+ {
63
+ name: "appId",
64
+ type: "bytes32",
65
+ internalType: "bytes32",
66
+ },
67
+ ],
68
+ outputs: [
69
+ {
70
+ name: "",
71
+ type: "tuple",
72
+ internalType: "struct Attestation",
73
+ components: [
74
+ {
75
+ name: "uid",
76
+ type: "bytes32",
77
+ internalType: "bytes32",
78
+ },
79
+ {
80
+ name: "schema",
81
+ type: "bytes32",
82
+ internalType: "bytes32",
83
+ },
84
+ {
85
+ name: "time",
86
+ type: "uint64",
87
+ internalType: "uint64",
88
+ },
89
+ {
90
+ name: "expirationTime",
91
+ type: "uint64",
92
+ internalType: "uint64",
93
+ },
94
+ {
95
+ name: "revocationTime",
96
+ type: "uint64",
97
+ internalType: "uint64",
98
+ },
99
+ {
100
+ name: "refUID",
101
+ type: "bytes32",
102
+ internalType: "bytes32",
103
+ },
104
+ {
105
+ name: "recipient",
106
+ type: "address",
107
+ internalType: "address",
108
+ },
109
+ {
110
+ name: "attester",
111
+ type: "address",
112
+ internalType: "address",
113
+ },
114
+ {
115
+ name: "revocable",
116
+ type: "bool",
117
+ internalType: "bool",
118
+ },
119
+ {
120
+ name: "data",
121
+ type: "bytes",
122
+ internalType: "bytes",
123
+ },
124
+ ],
125
+ },
126
+ ],
127
+ stateMutability: "view",
128
+ },
129
+ {
130
+ type: "function",
131
+ name: "getAppSchema",
132
+ inputs: [],
133
+ outputs: [
134
+ {
135
+ name: "",
136
+ type: "string",
137
+ internalType: "string",
138
+ },
139
+ ],
140
+ stateMutability: "view",
141
+ },
142
+ {
143
+ type: "function",
144
+ name: "getAppSchemaId",
145
+ inputs: [],
146
+ outputs: [
147
+ {
148
+ name: "",
149
+ type: "bytes32",
150
+ internalType: "bytes32",
151
+ },
152
+ ],
153
+ stateMutability: "view",
154
+ },
155
+ {
156
+ type: "function",
157
+ name: "getLatestAppId",
158
+ inputs: [
159
+ {
160
+ name: "app",
161
+ type: "address",
162
+ internalType: "address",
163
+ },
164
+ ],
165
+ outputs: [
166
+ {
167
+ name: "",
168
+ type: "bytes32",
169
+ internalType: "bytes32",
170
+ },
171
+ ],
172
+ stateMutability: "view",
173
+ },
174
+ {
175
+ type: "function",
176
+ name: "isAppBanned",
177
+ inputs: [
178
+ {
179
+ name: "app",
180
+ type: "address",
181
+ internalType: "address",
182
+ },
183
+ ],
184
+ outputs: [
185
+ {
186
+ name: "",
187
+ type: "bool",
188
+ internalType: "bool",
189
+ },
190
+ ],
191
+ stateMutability: "view",
192
+ },
193
+ {
194
+ type: "function",
195
+ name: "registerApp",
196
+ inputs: [
197
+ {
198
+ name: "app",
199
+ type: "address",
200
+ internalType: "address",
201
+ },
202
+ {
203
+ name: "clients",
204
+ type: "address[]",
205
+ internalType: "address[]",
206
+ },
207
+ ],
208
+ outputs: [
209
+ {
210
+ name: "appId",
211
+ type: "bytes32",
212
+ internalType: "bytes32",
213
+ },
214
+ ],
215
+ stateMutability: "payable",
216
+ },
217
+ {
218
+ type: "function",
219
+ name: "removeApp",
220
+ inputs: [
221
+ {
222
+ name: "appId",
223
+ type: "bytes32",
224
+ internalType: "bytes32",
225
+ },
226
+ ],
227
+ outputs: [
228
+ {
229
+ name: "",
230
+ type: "bytes32",
231
+ internalType: "bytes32",
232
+ },
233
+ ],
234
+ stateMutability: "nonpayable",
235
+ },
236
+ {
237
+ type: "event",
238
+ name: "AppBanned",
239
+ inputs: [
240
+ {
241
+ name: "app",
242
+ type: "address",
243
+ indexed: true,
244
+ internalType: "address",
245
+ },
246
+ {
247
+ name: "uid",
248
+ type: "bytes32",
249
+ indexed: false,
250
+ internalType: "bytes32",
251
+ },
252
+ ],
253
+ anonymous: false,
254
+ },
255
+ {
256
+ type: "event",
257
+ name: "AppRegistered",
258
+ inputs: [
259
+ {
260
+ name: "app",
261
+ type: "address",
262
+ indexed: true,
263
+ internalType: "address",
264
+ },
265
+ {
266
+ name: "uid",
267
+ type: "bytes32",
268
+ indexed: false,
269
+ internalType: "bytes32",
270
+ },
271
+ ],
272
+ anonymous: false,
273
+ },
274
+ {
275
+ type: "event",
276
+ name: "AppSchemaSet",
277
+ inputs: [
278
+ {
279
+ name: "uid",
280
+ type: "bytes32",
281
+ indexed: false,
282
+ internalType: "bytes32",
283
+ },
284
+ ],
285
+ anonymous: false,
286
+ },
287
+ {
288
+ type: "event",
289
+ name: "AppUnregistered",
290
+ inputs: [
291
+ {
292
+ name: "app",
293
+ type: "address",
294
+ indexed: true,
295
+ internalType: "address",
296
+ },
297
+ {
298
+ name: "uid",
299
+ type: "bytes32",
300
+ indexed: false,
301
+ internalType: "bytes32",
302
+ },
303
+ ],
304
+ anonymous: false,
305
+ },
306
+ {
307
+ type: "event",
308
+ name: "AppUpdated",
309
+ inputs: [
310
+ {
311
+ name: "app",
312
+ type: "address",
313
+ indexed: true,
314
+ internalType: "address",
315
+ },
316
+ {
317
+ name: "uid",
318
+ type: "bytes32",
319
+ indexed: false,
320
+ internalType: "bytes32",
321
+ },
322
+ ],
323
+ anonymous: false,
324
+ },
325
+ {
326
+ type: "error",
327
+ name: "AppAlreadyRegistered",
328
+ inputs: [],
329
+ },
330
+ {
331
+ type: "error",
332
+ name: "AppDoesNotImplementInterface",
333
+ inputs: [],
334
+ },
335
+ {
336
+ type: "error",
337
+ name: "AppNotRegistered",
338
+ inputs: [],
339
+ },
340
+ {
341
+ type: "error",
342
+ name: "AppRevoked",
343
+ inputs: [],
344
+ },
345
+ {
346
+ type: "error",
347
+ name: "BannedApp",
348
+ inputs: [],
349
+ },
350
+ {
351
+ type: "error",
352
+ name: "InvalidAddressInput",
353
+ inputs: [],
354
+ },
355
+ {
356
+ type: "error",
357
+ name: "InvalidAppId",
358
+ inputs: [],
359
+ },
360
+ {
361
+ type: "error",
362
+ name: "InvalidArrayInput",
363
+ inputs: [],
364
+ },
365
+ {
366
+ type: "error",
367
+ name: "NotAppOwner",
368
+ inputs: [],
369
+ },
370
+ ] as const;
371
+
372
+ export class IAppRegistry__factory {
373
+ static readonly abi = _abi;
374
+ static createInterface(): IAppRegistryInterface {
375
+ return new utils.Interface(_abi) as IAppRegistryInterface;
376
+ }
377
+ static connect(
378
+ address: string,
379
+ signerOrProvider: Signer | Provider
380
+ ): IAppRegistry {
381
+ return new Contract(address, _abi, signerOrProvider) as IAppRegistry;
382
+ }
383
+ }
@@ -14,7 +14,7 @@ const _abi = [
14
14
  {
15
15
  name: "condition",
16
16
  type: "tuple",
17
- internalType: "struct DropClaimLib.ClaimCondition",
17
+ internalType: "struct DropGroup.ClaimCondition",
18
18
  components: [
19
19
  {
20
20
  name: "currency",
@@ -62,9 +62,9 @@ const _abi = [
62
62
  name: "claimAndStake",
63
63
  inputs: [
64
64
  {
65
- name: "claim",
65
+ name: "req",
66
66
  type: "tuple",
67
- internalType: "struct DropClaimLib.Claim",
67
+ internalType: "struct DropClaim.Claim",
68
68
  components: [
69
69
  {
70
70
  name: "conditionId",
@@ -123,9 +123,9 @@ const _abi = [
123
123
  name: "claimWithPenalty",
124
124
  inputs: [
125
125
  {
126
- name: "claim",
126
+ name: "req",
127
127
  type: "tuple",
128
- internalType: "struct DropClaimLib.Claim",
128
+ internalType: "struct DropClaim.Claim",
129
129
  components: [
130
130
  {
131
131
  name: "conditionId",
@@ -196,7 +196,7 @@ const _abi = [
196
196
  {
197
197
  name: "",
198
198
  type: "tuple",
199
- internalType: "struct DropClaimLib.ClaimCondition",
199
+ internalType: "struct DropGroup.ClaimCondition",
200
200
  components: [
201
201
  {
202
202
  name: "currency",
@@ -246,7 +246,7 @@ const _abi = [
246
246
  {
247
247
  name: "",
248
248
  type: "tuple[]",
249
- internalType: "struct DropClaimLib.ClaimCondition[]",
249
+ internalType: "struct DropGroup.ClaimCondition[]",
250
250
  components: [
251
251
  {
252
252
  name: "currency",
@@ -343,7 +343,7 @@ const _abi = [
343
343
  {
344
344
  name: "conditions",
345
345
  type: "tuple[]",
346
- internalType: "struct DropClaimLib.ClaimCondition[]",
346
+ internalType: "struct DropGroup.ClaimCondition[]",
347
347
  components: [
348
348
  {
349
349
  name: "currency",
@@ -400,7 +400,7 @@ const _abi = [
400
400
  name: "condition",
401
401
  type: "tuple",
402
402
  indexed: false,
403
- internalType: "struct DropClaimLib.ClaimCondition",
403
+ internalType: "struct DropGroup.ClaimCondition",
404
404
  components: [
405
405
  {
406
406
  name: "currency",
@@ -456,7 +456,7 @@ const _abi = [
456
456
  name: "conditions",
457
457
  type: "tuple[]",
458
458
  indexed: false,
459
- internalType: "struct DropClaimLib.ClaimCondition[]",
459
+ internalType: "struct DropGroup.ClaimCondition[]",
460
460
  components: [
461
461
  {
462
462
  name: "currency",
@@ -615,11 +615,6 @@ const _abi = [
615
615
  name: "DropFacet__NoActiveClaimCondition",
616
616
  inputs: [],
617
617
  },
618
- {
619
- type: "error",
620
- name: "DropFacet__PointsMustBeGreaterThanZero",
621
- inputs: [],
622
- },
623
618
  {
624
619
  type: "error",
625
620
  name: "DropFacet__QuantityMustBeGreaterThanZero",
@@ -86,7 +86,7 @@ const _abi = [
86
86
  inputs: [],
87
87
  outputs: [
88
88
  {
89
- name: "treasuryBps",
89
+ name: "protocolBps",
90
90
  type: "uint16",
91
91
  internalType: "uint16",
92
92
  },
@@ -145,7 +145,7 @@ const _abi = [
145
145
  internalType: "address",
146
146
  },
147
147
  {
148
- name: "treasury",
148
+ name: "protocol",
149
149
  type: "address",
150
150
  indexed: true,
151
151
  internalType: "address",
@@ -157,7 +157,7 @@ const _abi = [
157
157
  internalType: "address",
158
158
  },
159
159
  {
160
- name: "treasuryAmount",
160
+ name: "protocolAmount",
161
161
  type: "uint256",
162
162
  indexed: false,
163
163
  internalType: "uint256",
@@ -320,6 +320,11 @@ const _abi = [
320
320
  name: "SwapRouter__InvalidAmount",
321
321
  inputs: [],
322
322
  },
323
+ {
324
+ type: "error",
325
+ name: "SwapRouter__InvalidBps",
326
+ inputs: [],
327
+ },
323
328
  {
324
329
  type: "error",
325
330
  name: "SwapRouter__InvalidRouter",