@ercworldio/blockchain-shared 1.0.3-dev.3 → 1.0.3-dev.4

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 (101) hide show
  1. package/build/chains/networks_prod-dz.json +7 -7
  2. package/build/chains/networks_prod-sh.json +41 -5
  3. package/build/chains/networks_prod-yb.json +42 -6
  4. package/build/chains/networks_stg-yb.json +1 -1
  5. package/build/contracts/artifacts/Escrow.json +1831 -342
  6. package/build/contracts/typechain-types/@openzeppelin/contracts/interfaces/index.d.ts +0 -1
  7. package/build/contracts/typechain-types/@openzeppelin/contracts/interfaces/index.d.ts.map +1 -1
  8. package/build/contracts/typechain-types/@openzeppelin/contracts/utils/index.d.ts +0 -6
  9. package/build/contracts/typechain-types/@openzeppelin/contracts/utils/index.d.ts.map +1 -1
  10. package/build/contracts/typechain-types/contracts/escrow/Escrow.d.ts +761 -76
  11. package/build/contracts/typechain-types/contracts/escrow/Escrow.d.ts.map +1 -1
  12. package/build/contracts/typechain-types/contracts/escrow/EscrowAccessControl.d.ts +65 -17
  13. package/build/contracts/typechain-types/contracts/escrow/EscrowAccessControl.d.ts.map +1 -1
  14. package/build/contracts/typechain-types/contracts/index.d.ts +2 -0
  15. package/build/contracts/typechain-types/contracts/index.d.ts.map +1 -1
  16. package/build/contracts/typechain-types/contracts/lib/Events.d.ts +386 -0
  17. package/build/contracts/typechain-types/contracts/lib/Events.d.ts.map +1 -0
  18. package/build/contracts/typechain-types/contracts/lib/Events.js +2 -0
  19. package/build/contracts/typechain-types/contracts/lib/MultisigLib.d.ts +21 -0
  20. package/build/contracts/typechain-types/contracts/lib/MultisigLib.d.ts.map +1 -0
  21. package/build/contracts/typechain-types/contracts/lib/MultisigLib.js +2 -0
  22. package/build/contracts/typechain-types/contracts/lib/index.d.ts +3 -0
  23. package/build/contracts/typechain-types/contracts/lib/index.d.ts.map +1 -0
  24. package/build/contracts/typechain-types/contracts/lib/index.js +2 -0
  25. package/build/contracts/typechain-types/factories/@openzeppelin/contracts/interfaces/index.d.ts +0 -1
  26. package/build/contracts/typechain-types/factories/@openzeppelin/contracts/interfaces/index.d.ts.map +1 -1
  27. package/build/contracts/typechain-types/factories/@openzeppelin/contracts/interfaces/index.js +1 -3
  28. package/build/contracts/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory.d.ts +1 -1
  29. package/build/contracts/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory.d.ts.map +1 -1
  30. package/build/contracts/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory.js +1 -1
  31. package/build/contracts/typechain-types/factories/@openzeppelin/contracts/utils/index.d.ts +0 -4
  32. package/build/contracts/typechain-types/factories/@openzeppelin/contracts/utils/index.d.ts.map +1 -1
  33. package/build/contracts/typechain-types/factories/@openzeppelin/contracts/utils/index.js +1 -7
  34. package/build/contracts/typechain-types/factories/contracts/escrow/EscrowAccessControl__factory.d.ts +286 -12
  35. package/build/contracts/typechain-types/factories/contracts/escrow/EscrowAccessControl__factory.d.ts.map +1 -1
  36. package/build/contracts/typechain-types/factories/contracts/escrow/EscrowAccessControl__factory.js +374 -12
  37. package/build/contracts/typechain-types/factories/contracts/escrow/EscrowErrors__factory.d.ts +137 -1
  38. package/build/contracts/typechain-types/factories/contracts/escrow/EscrowErrors__factory.d.ts.map +1 -1
  39. package/build/contracts/typechain-types/factories/contracts/escrow/EscrowErrors__factory.js +182 -1
  40. package/build/contracts/typechain-types/factories/contracts/escrow/EscrowSignature__factory.d.ts +1 -1
  41. package/build/contracts/typechain-types/factories/contracts/escrow/EscrowSignature__factory.d.ts.map +1 -1
  42. package/build/contracts/typechain-types/factories/contracts/escrow/EscrowSignature__factory.js +1 -1
  43. package/build/contracts/typechain-types/factories/contracts/escrow/Escrow__factory.d.ts +1247 -98
  44. package/build/contracts/typechain-types/factories/contracts/escrow/Escrow__factory.d.ts.map +1 -1
  45. package/build/contracts/typechain-types/factories/contracts/escrow/Escrow__factory.js +1736 -247
  46. package/build/contracts/typechain-types/factories/contracts/escrow/TokensWhitelist__factory.d.ts +1 -1
  47. package/build/contracts/typechain-types/factories/contracts/escrow/TokensWhitelist__factory.d.ts.map +1 -1
  48. package/build/contracts/typechain-types/factories/contracts/escrow/TokensWhitelist__factory.js +1 -1
  49. package/build/contracts/typechain-types/factories/contracts/index.d.ts +1 -0
  50. package/build/contracts/typechain-types/factories/contracts/index.d.ts.map +1 -1
  51. package/build/contracts/typechain-types/factories/contracts/index.js +2 -1
  52. package/build/contracts/typechain-types/factories/contracts/lib/Events__factory.d.ts +373 -0
  53. package/build/contracts/typechain-types/factories/contracts/lib/Events__factory.d.ts.map +1 -0
  54. package/build/contracts/typechain-types/factories/contracts/lib/Events__factory.js +473 -0
  55. package/build/contracts/typechain-types/factories/contracts/lib/MultisigLib__factory.d.ts +55 -0
  56. package/build/contracts/typechain-types/factories/contracts/lib/MultisigLib__factory.d.ts.map +1 -0
  57. package/build/contracts/typechain-types/factories/contracts/lib/MultisigLib__factory.js +82 -0
  58. package/build/contracts/typechain-types/factories/contracts/lib/index.d.ts +3 -0
  59. package/build/contracts/typechain-types/factories/contracts/lib/index.d.ts.map +1 -0
  60. package/build/contracts/typechain-types/factories/contracts/lib/index.js +10 -0
  61. package/build/contracts/typechain-types/factories/contracts/mock/erc20/ERC20Mock__factory.d.ts +1 -1
  62. package/build/contracts/typechain-types/factories/contracts/mock/erc20/ERC20Mock__factory.d.ts.map +1 -1
  63. package/build/contracts/typechain-types/factories/contracts/mock/erc20/ERC20Mock__factory.js +1 -1
  64. package/build/contracts/typechain-types/index.d.ts +4 -10
  65. package/build/contracts/typechain-types/index.d.ts.map +1 -1
  66. package/build/contracts/typechain-types/index.js +5 -11
  67. package/build/entities/AdminOperationThresholds.d.ts +12 -0
  68. package/build/entities/AdminOperationThresholds.d.ts.map +1 -0
  69. package/build/entities/AdminOperationThresholds.js +56 -0
  70. package/build/entities/EscrowRoles.d.ts +12 -0
  71. package/build/entities/EscrowRoles.d.ts.map +1 -0
  72. package/build/entities/EscrowRoles.js +57 -0
  73. package/build/entities/GlobalTimelock.d.ts +14 -0
  74. package/build/entities/GlobalTimelock.d.ts.map +1 -0
  75. package/build/entities/GlobalTimelock.js +64 -0
  76. package/build/entities/GranularTimelock .d.ts +12 -0
  77. package/build/entities/GranularTimelock .d.ts.map +1 -0
  78. package/build/entities/GranularTimelock .js +56 -0
  79. package/build/entities/OperationType.d.ts +18 -0
  80. package/build/entities/OperationType.d.ts.map +1 -0
  81. package/build/entities/OperationType.js +50 -0
  82. package/build/entities/RoleHash.d.ts +11 -0
  83. package/build/entities/RoleHash.d.ts.map +1 -0
  84. package/build/entities/RoleHash.js +52 -0
  85. package/build/entities/Signatures.d.ts +16 -0
  86. package/build/entities/Signatures.d.ts.map +1 -0
  87. package/build/entities/Signatures.js +72 -0
  88. package/build/entities/TokenExecutionThresholds.d.ts +16 -0
  89. package/build/entities/TokenExecutionThresholds.d.ts.map +1 -0
  90. package/build/entities/TokenExecutionThresholds.js +72 -0
  91. package/build/index.d.ts +1 -0
  92. package/build/index.d.ts.map +1 -1
  93. package/build/index.js +4 -2
  94. package/build/services/ChainManager.d.ts.map +1 -1
  95. package/build/services/SweepJobService.d.ts +3 -3
  96. package/build/services/SweepJobService.d.ts.map +1 -1
  97. package/build/services/SweepJobService.js +12 -7
  98. package/build/services/db/roles/ContractRoles.d.ts +54 -0
  99. package/build/services/db/roles/ContractRoles.d.ts.map +1 -0
  100. package/build/services/db/roles/ContractRoles.js +81 -0
  101. package/package.json +1 -1
@@ -14,7 +14,7 @@ export declare class Escrow__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): Escrow__factory;
17
- static readonly bytecode = "0x6080604052348015600e575f5ffd5b506137df8061001c5f395ff3fe608060405260043610610278575f3560e01c80639b19251a1161014a578063cb60ff34116100be578063e88e5cd411610078578063e88e5cd4146107d7578063f470c7e2146107f6578063f5b541a614610822578063f8b2cb4f14610842578063fa13f30a14610861578063fc50455f14610880575f5ffd5b8063cb60ff34146106e4578063d37dbaa21461072d578063d547741f1461074c578063d8a4676f1461076b578063e20c103c14610799578063e5b6337b146107b8575f5ffd5b8063b3ab15fb1161010f578063b3ab15fb14610634578063b5c604ff14610653578063c210296414610667578063c4707a8314610686578063c67515dd146106a6578063c688aa64146106c5575f5ffd5b80639b19251a1461057f578063a217fddf146105ad578063a3a00072146105c0578063ac21242d146105df578063b187bd2614610616575f5ffd5b80633f4ba83a116101ec5780637ecebe00116101a65780637ecebe00146104c75780638456cb59146104fb578063853954741461050f57806385fb709d1461052e5780638f2839701461054157806391d1485414610560575f5ffd5b80633f4ba83a1461042f5780634ae05c7d14610443578063518713d2146104625780635ae6256d146104815780636c3824ef146104955780637c13ba64146104b4575f5ffd5b80632f2ff15d1161023d5780632f2ff15d1461037f57806331993fdf1461039e5780633644e515146103bd57806336568abe146103d25780633aa98a94146103f15780633af32abf14610410575f5ffd5b806301ffc9a7146102c157806311a4b2d0146102f557806312065fe01461031657806312f5ea4014610332578063248a9ca314610351575f5ffd5b366102bd57604080513381525f6020820152348183015290517fb0afe9a71610967b99fda7fda0ed1e6ff47851924352fdf759922dd5427259419181900360600190a1005b5f5ffd5b3480156102cc575f5ffd5b506102e06102db366004612d93565b6108ac565b60405190151581526020015b60405180910390f35b348015610300575f5ffd5b5061031461030f366004612dc1565b6108e2565b005b348015610321575f5ffd5b50475b6040519081526020016102ec565b34801561033d575f5ffd5b5061031461034c366004612df5565b6109c0565b34801561035c575f5ffd5b5061032461036b366004612e34565b5f9081526020819052604090206001015490565b34801561038a575f5ffd5b50610314610399366004612e4b565b610b7a565b3480156103a9575f5ffd5b506103146103b8366004612f28565b610ba4565b3480156103c8575f5ffd5b5061032460015481565b3480156103dd575f5ffd5b506103146103ec366004612e4b565b610be5565b3480156103fc575f5ffd5b5061031461040b366004612f8b565b610c18565b34801561041b575f5ffd5b506102e061042a366004612fb8565b610cbb565b34801561043a575f5ffd5b50610314610cd8565b34801561044e575f5ffd5b5061031461045d366004613068565b610d2e565b34801561046d575f5ffd5b506102e061047c366004612fb8565b610d83565b34801561048c575f5ffd5b50609854610324565b3480156104a0575f5ffd5b506103146104af366004613068565b610dab565b6103146104c23660046130fb565b610dfd565b3480156104d2575f5ffd5b506103246104e1366004612fb8565b6001600160a01b03165f9081526099602052604090205490565b348015610506575f5ffd5b50610314610f98565b34801561051a575f5ffd5b50610314610529366004612dc1565b610ff2565b6102e061053c36600461314b565b611071565b34801561054c575f5ffd5b5061031461055b366004612fb8565b6112b9565b34801561056b575f5ffd5b506102e061057a366004612e4b565b611318565b34801561058a575f5ffd5b506102e0610599366004612fb8565b60336020525f908152604090205460ff1681565b3480156105b8575f5ffd5b506103245f81565b3480156105cb575f5ffd5b506103146105da366004613177565b611340565b3480156105ea575f5ffd5b506105fe6105f93660046131b8565b611505565b6040516001600160a01b0390911681526020016102ec565b348015610621575f5ffd5b50609b546102e090610100900460ff1681565b34801561063f575f5ffd5b5061031461064e366004612fb8565b611579565b34801561065e575f5ffd5b50609754610324565b348015610672575f5ffd5b50610314610681366004613210565b6115ff565b348015610691575f5ffd5b506103245f51602061376a5f395f51905f5281565b3480156106b1575f5ffd5b506103246106c036600461327f565b61193b565b3480156106d0575f5ffd5b506103146106df3660046132ae565b6119ac565b3480156106ef575f5ffd5b506040805180820182525f808252602091820152815180830183526097548082526098549183019182528351908152905191810191909152016102ec565b348015610738575f5ffd5b506105fe6107473660046131b8565b611ad9565b348015610757575f5ffd5b50610314610766366004612e4b565b611b2e565b348015610776575f5ffd5b506102e0610785366004612e34565b5f908152609c602052604090205460ff1690565b3480156107a4575f5ffd5b506103146107b3366004613068565b611b52565b3480156107c3575f5ffd5b506103146107d2366004613335565b611b5a565b3480156107e2575f5ffd5b506103146107f1366004613395565b611d3c565b348015610801575f5ffd5b506108156108103660046133e1565b611f97565b6040516102ec9190613471565b34801561082d575f5ffd5b506103245f51602061378a5f395f51905f5281565b34801561084d575f5ffd5b5061032461085c366004612fb8565b6120ca565b34801561086c575f5ffd5b506102e061087b3660046134b3565b612132565b34801561088b575f5ffd5b5061089f61089a366004612e4b565b612382565b6040516102ec919061353c565b5f6001600160e01b03198216637965db0b60e01b14806108dc57506301ffc9a760e01b6001600160e01b03198316145b92915050565b6108ec5f33611318565b15801561090d575061090b5f51602061376a5f395f51905f5233611318565b155b1561092b5760405163ea8e4eb560e01b815260040160405180910390fd5b80821061097f5760405162461bcd60e51b815260206004820152601b60248201527f5374617274206d757374206265206c657373207468616e20656e64000000000060448201526064015b60405180910390fd5b603261098b8383613597565b10610994575f5ffd5b815b818110156109bb575f818152609c60205260409020805460ff19169055600101610996565b505050565b6109ca5f33611318565b6109e757604051637bfa4b9f60e01b815260040160405180910390fd5b6001600160a01b038116610a3d5760405162461bcd60e51b815260206004820152601f60248201527f43616e6e6f74207472616e7366657220746f207a65726f2061646472657373006044820152606401610976565b82610a478361250d565b1015610a665760405163128bd24d60e31b815260040160405180910390fd5b6001600160a01b038216610b11575f816001600160a01b0316846040515f6040518083038185875af1925050503d805f8114610abd576040519150601f19603f3d011682016040523d82523d5f602084013e610ac2565b606091505b5050905080610b0b5760405162461bcd60e51b8152602060048201526015602482015274115d1a195c881d1c985b9cd9995c8819985a5b1959605a1b6044820152606401610976565b50610b25565b610b256001600160a01b038316828561252b565b604080513381526001600160a01b0383811660208301528183018690528416606082015290517f55dba1a9b1cf7e607f75e6920591e36d121fa2899fbf31c777439ee694747b7b9181900360800190a1505050565b5f82815260208190526040902060010154610b948161258a565b610b9e8383612594565b50505050565b610bac612623565b610bde6040518060800160405280848152602001838152602001468152602001306001600160a01b031681525061264a565b6001555050565b6001600160a01b0381163314610c0e5760405163334bd91960e11b815260040160405180910390fd5b6109bb82826126e5565b610c20612623565b606580546001600160a01b0319166001600160a01b038516179055610c455f83611318565b610c5557610c535f83612594565b505b610c6c5f51602061378a5f395f51905f5284611318565b610c8957610c875f51602061378a5f395f51905f5284612594565b505b610ca05f51602061376a5f395f51905f5282611318565b6109bb57610b9e5f51602061376a5f395f51905f5282612594565b6001600160a01b03165f9081526033602052604090205460ff1690565b610ce25f33611318565b158015610d035750610d015f51602061378a5f395f51905f5233611318565b155b15610d215760405163ea8e4eb560e01b815260040160405180910390fd5b609b805461ff0019169055565b610d385f33611318565b158015610d595750610d575f51602061378a5f395f51905f5233611318565b155b15610d775760405163ea8e4eb560e01b815260040160405180910390fd5b610d808161274e565b50565b5f610d8e8183611318565b806108dc57506108dc5f51602061376a5f395f51905f5283611318565b610db55f33611318565b158015610dd65750610dd45f51602061378a5f395f51905f5233611318565b155b15610df45760405163ea8e4eb560e01b815260040160405180910390fd5b610d808161285e565b609b54610100900460ff1615610e265760405163ab35696f60e01b815260040160405180910390fd5b610e2f5f610cbb565b610e4e5760405163094403b760e41b81525f6004820152602401610976565b345f03610e6e57604051637c946ed760e01b815260040160405180910390fd5b5f81604051602001610e8091906135ba565b60408051601f1981840301815291815281516020928301205f818152609a90935291205490915060ff1615610ec85760405163900bb2c960e01b815260040160405180910390fd5b335f81815260996020526040812054610ef8925f51602061378a5f395f51905f529261057a923492919088611505565b610f1557604051638baa579f60e01b815260040160405180910390fd5b5f818152609a60209081526040808320805460ff1916600117905533835260999091528120805491610f46836135e7565b9190505550610f53612968565b7fef519b7eb82aaf6ac376a6df2d793843ebfd593de5f1a0601d3cc6ab49ebb395335f348787604051610f8a9594939291906135ff565b60405180910390a150505050565b610fa25f33611318565b158015610fc35750610fc15f51602061378a5f395f51905f5233611318565b155b15610fe15760405163ea8e4eb560e01b815260040160405180910390fd5b609b805461ff001916610100179055565b610ffc5f33611318565b61101957604051637bfa4b9f60e01b815260040160405180910390fd5b60408051808201825283815260209081018390526097849055609883905581518481529081018390527fe8110342b5e43ae921859bc8dbf18018fcacba13fe16e5a7ea1239b8b5b8f287910160405180910390a15050565b609b545f90610100900460ff161561109c5760405163ab35696f60e01b815260040160405180910390fd5b609b5460ff16156110c057604051630ef7697f60e01b815260040160405180910390fd5b609b805460ff191660011790556110d75f33611318565b1580156110f857506110f65f51602061376a5f395f51905f5233611318565b155b156111165760405163ea8e4eb560e01b815260040160405180910390fd5b306001600160a01b0384160361113f57604051630d20048960e01b815260040160405180910390fd5b61114882610cbb565b6111705760405163094403b760e41b81526001600160a01b0383166004820152602401610976565b6001600160a01b0382166111e457345f036111a0576040516379ac219b60e01b8152336004820152602401610976565b7f6b32cee72b480eef6a5aeccadee07046ade1c28fec1e418949908f7ac8d7d2283333305f346040516111d795949392919061364f565b60405180910390a16112a7565b6040516370a0823160e01b81526001600160a01b0384811660048301525f91908416906370a0823190602401602060405180830381865afa15801561122b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061124f9190613682565b90506112666001600160a01b03841685308461298c565b7f6b32cee72b480eef6a5aeccadee07046ade1c28fec1e418949908f7ac8d7d228338530868560405161129d95949392919061364f565b60405180910390a1505b5050609b805460ff1916905550600190565b6112c35f33611318565b6112e057604051637bfa4b9f60e01b815260040160405180910390fd5b6112ea5f336126e5565b506112f55f82612594565b50606680546001600160a01b0319166001600160a01b0392909216919091179055565b5f918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b61134a5f33611318565b15801561136b57506113695f51602061376a5f395f51905f5233611318565b155b156113895760405163ea8e4eb560e01b815260040160405180910390fd5b8151602810156113af5760405163af89cf2160e01b815260286004820152602401610976565b5f6113b95f61250d565b9050808284516113c99190613699565b106113e75760405163128bd24d60e31b815260040160405180910390fd5b5f5b83518163ffffffff1610156114d7575f848263ffffffff1681518110611411576114116136b0565b60200260200101516001600160a01b0316846040515f6040518083038185875af1925050503d805f8114611460576040519150601f19603f3d011682016040523d82523d5f602084013e611465565b606091505b50509050806114c45730858363ffffffff1681518110611487576114876136b0565b6020908102919091010151604051633ddff61360e21b81526001600160a01b039283166004820152911660248201525f6044820152606401610976565b50806114cf816136c4565b9150506113e9565b506040517f6e31901a2ad27bd7f19498c4681fc6611bf447147de120c3b5f65c249d599077905f90a1505050565b5f5f6115596040518060a001604052805f600281111561152757611527613528565b8152602001898152602001886001600160a01b03168152602001876001600160a01b03168152602001868152506129c5565b8051602082012090915061156d8185612a2b565b98975050505050505050565b6115835f33611318565b6115a057604051637bfa4b9f60e01b815260040160405180910390fd5b6065546115c4905f51602061378a5f395f51905f52906001600160a01b03166126e5565b506115dc5f51602061378a5f395f51905f5282612594565b50606580546001600160a01b0319166001600160a01b0392909216919091179055565b6116095f33611318565b15801561162a57506116285f51602061376a5f395f51905f5233611318565b155b156116485760405163ea8e4eb560e01b815260040160405180910390fd5b609b5460ff161561166c57604051630ef7697f60e01b815260040160405180910390fd5b609b805460ff191660011790555f81900361169a57604051630b8fc7cd60e21b815260040160405180910390fd5b60288111156116bc5760405163f726140760e01b815260040160405180910390fd5b5f5b63ffffffff811682111561192c576116ff83838363ffffffff168181106116e7576116e76136b0565b905060800201604001602081019061042a9190612fb8565b6117585782828263ffffffff1681811061171b5761171b6136b0565b90506080020160400160208101906117339190612fb8565b60405163094403b760e41b81526001600160a01b039091166004820152602401610976565b82828263ffffffff16818110611770576117706136b0565b9050608002015f01355f0361179857604051637c946ed760e01b815260040160405180910390fd5b5f838363ffffffff84168181106117b1576117b16136b0565b90506080020160600160208101906117c99190612fb8565b6001600160a01b0316036117f05760405163d92e233d60e01b815260040160405180910390fd5b609c5f84848463ffffffff1681811061180b5761180b6136b0565b60206080909102929092018201358352508101919091526040015f205460ff161561186e5782828263ffffffff16818110611848576118486136b0565b90506080020160200135604051631409d1b760e21b815260040161097691815260200190565b61191a83838363ffffffff16818110611889576118896136b0565b9050608002015f013584848463ffffffff168181106118aa576118aa6136b0565b9050608002016020013585858563ffffffff168181106118cc576118cc6136b0565b90506080020160400160208101906118e49190612fb8565b86868663ffffffff168181106118fc576118fc6136b0565b90506080020160600160208101906119149190612fb8565b86612ae1565b80611924816136c4565b9150506116be565b5050609b805460ff1916905550565b5f8082600281111561194f5761194f613528565b0361197257506001600160a01b0382165f908152609960205260409020546108dc565b600182600281111561198657611986613528565b036108dc57506001600160a01b0382165f908152609960205260409020600101546108dc565b5f6119b5612c5d565b805490915060ff600160401b82041615906001600160401b03165f811580156119db5750825b90505f826001600160401b031660011480156119f65750303b155b905081158015611a04575080155b15611a225760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315611a4c57845460ff60401b1916600160401b1785555b611a7460405180604001604052806006815260200165457363726f7760d01b81525088610ba4565b611a7d86611b52565b611a8889338a610c18565b8315611ace57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050505050565b5f5f6115596040518060a0016040528060016002811115611afc57611afc613528565b8152602001898152602001886001600160a01b03168152602001876001600160a01b0316815260200186815250612c85565b5f82815260208190526040902060010154611b488161258a565b610b9e83836126e5565b610d77612623565b609b54610100900460ff1615611b835760405163ab35696f60e01b815260040160405180910390fd5b845f03611ba357604051637c946ed760e01b815260040160405180910390fd5b6001600160a01b038416611bca576040516301cc396360e41b815260040160405180910390fd5b611bd384610cbb565b611bfb5760405163094403b760e41b81526001600160a01b0385166004820152602401610976565b5f81604051602001611c0d91906135ba565b60408051601f1981840301815291815281516020928301205f818152609a90935291205490915060ff1615611c555760405163900bb2c960e01b815260040160405180910390fd5b335f81815260996020526040902054611c85915f51602061378a5f395f51905f529161057a918a918a9088611505565b611ca257604051638baa579f60e01b815260040160405180910390fd5b5f818152609a60209081526040808320805460ff1916600117905533835260999091528120805491611cd3836135e7565b9190505550611ce0612968565b611cf56001600160a01b03861633308961298c565b7fef519b7eb82aaf6ac376a6df2d793843ebfd593de5f1a0601d3cc6ab49ebb3953386888787604051611d2c9594939291906135ff565b60405180910390a1505050505050565b609b54610100900460ff1615611d655760405163ab35696f60e01b815260040160405180910390fd5b609b5460ff1615611d8957604051630ef7697f60e01b815260040160405180910390fd5b609b805460ff19166001179055611d9f83610cbb565b611dc75760405163094403b760e41b81526001600160a01b0384166004820152602401610976565b845f03611de757604051637c946ed760e01b815260040160405180910390fd5b6001600160a01b038216611e0e5760405163d92e233d60e01b815260040160405180910390fd5b5f848152609c602052604090205460ff1615611e4057604051631409d1b760e21b815260048101859052602401610976565b5f81604051602001611e5291906135ba565b60408051601f1981840301815291815281516020928301205f818152609a90935291205490915060ff1615611e9a5760405163900bb2c960e01b815260040160405180910390fd5b611eb85f51602061378a5f395f51905f5261057a8886888a88611ad9565b611ed557604051638baa579f60e01b815260040160405180910390fd5b85611edf8561250d565b1015611f59577f2aa807c191208ec364a49ebc0018975f798050694e1695937b26706e4f0a8858338588611f128861250d565b604080516001600160a01b03958616815294909316602085015291830152606082015260800160405180910390a160405163128bd24d60e31b815260040160405180910390fd5b5f818152609a60205260409020805460ff19166001908117909155611f85908790879087908790612ae1565b5050609b805460ff1916905550505050565b6060611fa35f33611318565b158015611fc45750611fc25f51602061376a5f395f51905f5233611318565b155b15611fe25760405163ea8e4eb560e01b815260040160405180910390fd5b602860ff16825160ff16111561200b5760405163f726140760e01b815260040160405180910390fd5b60408051600a80825261016082019092525f9160208201610140803683370190505090505f805b84518110156120bf57609c5f868381518110612050576120506136b0565b60209081029190910181015182528101919091526040015f205460ff16156120b757848181518110612084576120846136b0565b602002602001015183838151811061209e5761209e6136b0565b6020908102919091010152816120b3816135e7565b9250505b600101612032565b50909150505b919050565b6040516370a0823160e01b81523060048201525f906001600160a01b038316906370a0823190602401602060405180830381865afa15801561210e573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108dc9190613682565b5f61213d8133611318565b15801561215e575061215c5f51602061376a5f395f51905f5233611318565b155b1561217c5760405163ea8e4eb560e01b815260040160405180910390fd5b6001600160a01b0382166121a35760405163d92e233d60e01b815260040160405180910390fd5b60288311156121c85760405163af89cf2160e01b815260286004820152602401610976565b5f5b83811015612377575f8585838181106121e5576121e56136b0565b6121fb9260206040909202019081019150612fb8565b90505f868684818110612210576122106136b0565b90506040020160200160208101906122289190612fb8565b90506001600160a01b03811661225157604051631b71aaf760e31b815260040160405180910390fd5b306001600160a01b0383160361227a57604051630d20048960e01b815260040160405180910390fd5b61228381610cbb565b6122ab5760405163094403b760e41b81526001600160a01b0382166004820152602401610976565b6040516370a0823160e01b81526001600160a01b0383811660048301525f91908316906370a0823190602401602060405180830381865afa1580156122f2573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123169190613682565b905061232d6001600160a01b03831684888461298c565b7f6b32cee72b480eef6a5aeccadee07046ade1c28fec1e418949908f7ac8d7d228338488858560405161236495949392919061364f565b60405180910390a15050506001016121ca565b506001949350505050565b604080516080810182525f8082526020820181905291810182905260608101829052906123ae8361250d565b9050835f036123e957604080516080810182526003815260146020820152908101919091526001600160a01b038316606082015290506108dc565b5f846123fd83670de0b6b3a7640000613699565b61240791906136e8565b9050848210156124425750604080516080810182525f8082526020820152908101919091526001600160a01b038316606082015290506108dc565b6124556014670de0b6b3a7640000613699565b811061248e5750604080516080810182526003815260146020820152908101919091526001600160a01b038316606082015290506108dc565b6124a16005670de0b6b3a7640000613699565b81106124da5750604080516080810182526002815260056020820152908101919091526001600160a01b038316606082015290506108dc565b50604080516080810182526001815260026020820152908101919091526001600160a01b038316606082015290506108dc565b5f6001600160a01b03821661252257476108dc565b6108dc826120ca565b6040516001600160a01b038381166024830152604482018390526109bb91859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050612cd5565b610d808133612d41565b5f61259f8383611318565b61261c575f838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556125d43390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016108dc565b505f6108dc565b61262b612d7a565b61264857604051631afcd79f60e31b815260040160405180910390fd5b565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f825f015180519060200120836020015180519060200120846040015185606001516040516020016126c89594939291909485526020850193909352604084019190915260608301526001600160a01b0316608082015260a00190565b604051602081830303815290604052805190602001209050919050565b5f6126f08383611318565b1561261c575f838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45060016108dc565b5f5b815181101561285a5760335f83838151811061276e5761276e6136b0565b6020908102919091018101516001600160a01b031682528101919091526040015f9081205460ff161515900361285257600160335f8484815181106127b5576127b56136b0565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81548160ff0219169083151502179055507f784c8f4dbf0ffedd6e72c76501c545a70f8b203b30a26ce542bf92ba87c248a4828281518110612825576128256136b0565b602002602001015160405161284991906001600160a01b0391909116815260200190565b60405180910390a15b600101612750565b5050565b5f5b815181101561285a5760335f83838151811061287e5761287e6136b0565b6020908102919091018101516001600160a01b031682528101919091526040015f205460ff161515600103612960575f60335f8484815181106128c3576128c36136b0565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81548160ff0219169083151502179055507f4c910b69fe65a61f7531b9c5042b2329ca7179c77290aa7e2eb3afa3c8511fd3828281518110612933576129336136b0565b602002602001015160405161295791906001600160a01b0391909116815260200190565b60405180910390a15b600101612860565b60978054905f612977836135e7565b90915550506098544311156126485743609855565b6040516001600160a01b038481166024830152838116604483015260648201839052610b9e9186918216906323b872dd90608401612558565b60607fe35cf8b8df51aa49768d4a7859037953b72f9188d7c60825dfd506ac7c8d430c825f01518360200151846040015185606001518660800151604051602001612a1596959493929190613707565b6040516020818303038152906040529050919050565b60015460405161190160f01b60208201526022810191909152604281018390525f90819060620160408051601f19818403018152919052805160209182012091506001908290612a7d90860186613750565b604080515f815260208181018084529490945260ff9092168282015291860135606082015290850135608082015260a0016020604051602081039080840390855afa158015612ace573d5f5f3e3d5ffd5b5050604051601f19015195945050505050565b5f848152609c60209081526040808320805460ff191660019081179091553384526099909252822001805491612b16836135e7565b9190505550612b23612968565b6001600160a01b038316612bdf5784471015612b525760405163128bd24d60e31b815260040160405180910390fd5b5f826001600160a01b0316866040515f6040518083038185875af1925050503d805f8114612b9b576040519150601f19603f3d011682016040523d82523d5f602084013e612ba0565b606091505b5050905080612bd957604051633ddff61360e21b81523060048201526001600160a01b03841660248201525f6044820152606401610976565b50612bf3565b612bf36001600160a01b038416838761252b565b604080513381526001600160a01b038481166020830152851681830152606081018790526080810186905263ffffffff831660a082015290517ffc4d59a46f6143e0496645b06688cceb577d2d0439ad39ac0f1eaf3143a3a48e9181900360c00190a15050505050565b5f807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a006108dc565b60607f30df4329ee18debd99f937f6d70edc594d2957d5c194e77ab788df398c193af2825f01518360200151846040015185606001518660800151604051602001612a1596959493929190613707565b5f5f60205f8451602086015f885af180612cf4576040513d5f823e3d81fd5b50505f513d91508115612d0b578060011415612d18565b6001600160a01b0384163b155b15610b9e57604051635274afe760e01b81526001600160a01b0385166004820152602401610976565b612d4b8282611318565b61285a5760405163e2517d3f60e01b81526001600160a01b038216600482015260248101839052604401610976565b5f612d83612c5d565b54600160401b900460ff16919050565b5f60208284031215612da3575f5ffd5b81356001600160e01b031981168114612dba575f5ffd5b9392505050565b5f5f60408385031215612dd2575f5ffd5b50508035926020909101359150565b6001600160a01b0381168114610d80575f5ffd5b5f5f5f60608486031215612e07575f5ffd5b833592506020840135612e1981612de1565b91506040840135612e2981612de1565b809150509250925092565b5f60208284031215612e44575f5ffd5b5035919050565b5f5f60408385031215612e5c575f5ffd5b823591506020830135612e6e81612de1565b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b0381118282101715612eb557612eb5612e79565b604052919050565b5f82601f830112612ecc575f5ffd5b81356001600160401b03811115612ee557612ee5612e79565b612ef8601f8201601f1916602001612e8d565b818152846020838601011115612f0c575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f5f60408385031215612f39575f5ffd5b82356001600160401b03811115612f4e575f5ffd5b612f5a85828601612ebd565b92505060208301356001600160401b03811115612f75575f5ffd5b612f8185828601612ebd565b9150509250929050565b5f5f5f60608486031215612f9d575f5ffd5b8335612fa881612de1565b92506020840135612e1981612de1565b5f60208284031215612fc8575f5ffd5b8135612dba81612de1565b5f6001600160401b03821115612feb57612feb612e79565b5060051b60200190565b5f82601f830112613004575f5ffd5b813561301761301282612fd3565b612e8d565b8082825260208201915060208360051b860101925085831115613038575f5ffd5b602085015b8381101561305e57803561305081612de1565b83526020928301920161303d565b5095945050505050565b5f60208284031215613078575f5ffd5b81356001600160401b0381111561308d575f5ffd5b61309984828501612ff5565b949350505050565b5f5f83601f8401126130b1575f5ffd5b5081356001600160401b038111156130c7575f5ffd5b6020830191508360208285010111156130de575f5ffd5b9250929050565b5f606082840312156130f5575f5ffd5b50919050565b5f5f5f6080848603121561310d575f5ffd5b83356001600160401b03811115613122575f5ffd5b61312e868287016130a1565b9094509250613142905085602086016130e5565b90509250925092565b5f5f6040838503121561315c575f5ffd5b823561316781612de1565b91506020830135612e6e81612de1565b5f5f60408385031215613188575f5ffd5b82356001600160401b0381111561319d575f5ffd5b6131a985828601612ff5565b95602094909401359450505050565b5f5f5f5f5f60e086880312156131cc575f5ffd5b8535945060208601356131de81612de1565b935060408601356131ee81612de1565b92506060860135915061320487608088016130e5565b90509295509295909350565b5f5f60208385031215613221575f5ffd5b82356001600160401b03811115613236575f5ffd5b8301601f81018513613246575f5ffd5b80356001600160401b0381111561325b575f5ffd5b8560208260071b840101111561326f575f5ffd5b6020919091019590945092505050565b5f5f60408385031215613290575f5ffd5b823561329b81612de1565b9150602083013560038110612e6e575f5ffd5b5f5f5f5f608085870312156132c1575f5ffd5b84356132cc81612de1565b935060208501356132dc81612de1565b925060408501356001600160401b038111156132f6575f5ffd5b61330287828801612ebd565b92505060608501356001600160401b0381111561331d575f5ffd5b61332987828801612ff5565b91505092959194509250565b5f5f5f5f5f60c08688031215613349575f5ffd5b85359450602086013561335b81612de1565b935060408601356001600160401b03811115613375575f5ffd5b613381888289016130a1565b9094509250613204905087606088016130e5565b5f5f5f5f5f60e086880312156133a9575f5ffd5b853594506020860135935060408601356133c281612de1565b925060608601356133d281612de1565b915061320487608088016130e5565b5f602082840312156133f1575f5ffd5b81356001600160401b03811115613406575f5ffd5b8201601f81018413613416575f5ffd5b803561342461301282612fd3565b8082825260208201915060208360051b850101925086831115613445575f5ffd5b6020840193505b8284101561346757833582526020938401939091019061344c565b9695505050505050565b602080825282518282018190525f918401906040840190835b818110156134a857835183526020938401939092019160010161348a565b509095945050505050565b5f5f5f604084860312156134c5575f5ffd5b83356001600160401b038111156134da575f5ffd5b8401601f810186136134ea575f5ffd5b80356001600160401b038111156134ff575f5ffd5b8660208260061b8401011115613513575f5ffd5b602091820194509250840135612e2981612de1565b634e487b7160e01b5f52602160045260245ffd5b815160808201906004811061355357613553613528565b825260208381015190830152604080840151908301526060928301516001600160a01b0316929091019190915290565b634e487b7160e01b5f52601160045260245ffd5b818103818111156108dc576108dc613583565b803560ff811681146120c5575f5ffd5b6060810160ff6135c9846135aa565b16825260208381013590830152604092830135929091019190915290565b5f600182016135f8576135f8613583565b5060010190565b6001600160a01b03868116825285166020820152604081018490526080606082018190528101829052818360a08301375f81830160a090810191909152601f909201601f19160101949350505050565b6001600160a01b039586168152938516602085015291841660408401529092166060820152608081019190915260a00190565b5f60208284031215613692575f5ffd5b5051919050565b80820281158282048414176108dc576108dc613583565b634e487b7160e01b5f52603260045260245ffd5b5f63ffffffff821663ffffffff81036136df576136df613583565b60010192915050565b5f8261370257634e487b7160e01b5f52601260045260245ffd5b500490565b86815260c081016003871061371e5761371e613528565b602082019690965260408101949094526001600160a01b0392831660608501529116608083015260a090910152919050565b5f60208284031215613760575f5ffd5b612dba826135aa56fe9d98d3d08f0062b192694645e127c98e5f96f3bbec331d061acaac3ace2327f997667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929a2646970667358221220fba97ec702b057ee1a290d657495440e1199b62e09ece290409bc0a6ce57c9fa64736f6c634300081c0033";
17
+ static readonly bytecode = "0x608080604052346015576157b0908161001a8239f35b5f80fdfe6080806040526004361015610052575b50361561001a575f80fd5b7fb0afe9a71610967b99fda7fda0ed1e6ff47851924352fdf759922dd54272594160606040513381525f6020820152346040820152a1005b5f3560e01c90816301ffc9a714613598575080630430e9321461327b57806311a4b2d0146131f757806312065fe0146131dc57806317f6939e146131c15780631c599c9a1461310057806320f5117c146130c8578063248a9ca31461309e57806325ea836414612e185780632df4da6e14612c695780632f2ff15d14612c2c57806331993fdf14612b4b5780633462ceff14612b2e5780633644e51514612b1157806336568abe14612acd5780633945c4a614612ab05780633aa98a9414612a095780633af32abf146129eb5780633f4ba83a146129aa578063427ba1a11461276c5780634a78b2f514612732578063518713d2146126eb5780635ba1c1a9146126cf5780635c2598781461235a578063650f2ba5146123145780636c3824ef146121e45780637026cb58146121aa578063759f4eaa14611f3d57806378b61a1514611ede578063798812ea14611eb65780637c13ba6414611ce45780637d4e22f214611c7a5780637ecebe0014611c425780637ef066c814611c085780638456cb5914611bc357806385fb709d14611a045780638e8b3f2f146119e757806391d14854146119b757806395349251146119885780639b19251a1461194b5780639d01005814611923578063a0c7f799146118e9578063a217fddf146118cf578063a31989ad146118b2578063a3a0007214611750578063a3bfd3aa146116cc578063ac21242d14611653578063afbef47b1461157a578063b187bd2614611555578063b2065f601461151b578063b700f456146114e1578063bec4742c146114c4578063bfbe3f2214611457578063c06086671461141d578063c210296414611250578063c4707a8314611229578063c67515dd146111f7578063d37dbaa2146111c9578063d547741f14611185578063d55c16fd146110c6578063d8a4676f14611097578063da6e2ec014610fc2578063e20c103c14610f80578063e5b6337b14610d81578063e88e5cd414610b2b578063eb818b1f14610954578063ebdf690f1461091a578063ef227b56146108a3578063f01068a114610869578063f14280cb14610811578063f470c7e214610720578063f5b541a6146106f9578063f8b2cb4f146106ce578063fa07bb5414610694578063fa13f30a14610460578063fc50455f146103ec5763fddbf3f3146103ad575f61000f565b346103e85760203660031901126103e8576001600160a01b036103ce613601565b165f526067602052602060ff60405f205416604051908152f35b5f80fd5b346103e85760403660031901126103e857610410610408613643565b600435614454565b604051815191600483101561044c5760809282526020810151602083015260408101516040830152606060018060a01b03910151166060820152f35b634e487b7160e01b5f52602160045260245ffd5b346103e85760403660031901126103e8576004356001600160401b0381116103e857366023820112156103e8578060040135906001600160401b0382116103e8576024810190602436918460061b0101116103e8576024356001600160a01b038116908190036103e8576104d333613f98565b1580610684575b6106755780156106665760288311610652575f5b83811061050057602060405160018152f35b61051361050e828686614444565b613aee565b906001600160a01b03610532602061052c848989614444565b01613aee565b168015610643576001600160a01b0383169030821461063457805f52603360205260ff60405f20541615610622576040516370a0823160e01b81526004810183905290602082602481845afa9182156106175786905f936105d3575b5091816105b08260a0956001995f51602061573b5f395f51905f529896615166565b60405192338452602084015287604084015260608301526080820152a1016104ee565b925050916020823d821161060f575b816105ef602093836137a0565b810103126103e85790519091855f51602061573b5f395f51905f5261058e565b3d91506105e2565b6040513d5f823e3d90fd5b63094403b760e41b5f5260045260245ffd5b630d20048960e01b5f5260045ffd5b631b71aaf760e31b5f5260045ffd5b63af89cf2160e01b5f52602860045260245ffd5b63d92e233d60e01b5f5260045ffd5b63ea8e4eb560e01b5f5260045ffd5b5061068e3361401f565b156104da565b346103e8575f3660031901126103e85760206040517faf82374944a6f0200e0a96e99d9d9aa4925409c95c28b14a1d426baddd614aa88152f35b346103e85760203660031901126103e85760206106f16106ec613601565b6143db565b604051908152f35b346103e8575f3660031901126103e85760206040515f5160206156fb5f395f51905f528152f35b346103e85761072e36613a21565b61073733613f98565b1580610801575b806107f1575b61067557602860ff825116116107e2576040519061016061076581846137a0565b600a8352601f19013660208401375f5f5b82518110156107d0576107898184613c49565b515f52609c60205260ff60405f2054166107a6575b600101610776565b906107c86001916107b78486613c49565b516107c28288613c49565b52613c3b565b91905061079e565b604051806107de8682613a9f565b0390f35b63f726140760e01b5f5260045ffd5b506107fb33613eec565b15610744565b5061080b3361401f565b1561073e565b346103e85760203660031901126103e85760043560068110156103e85761083a6107de916143a4565b60405191829182919091604080606083019460ff815116845260ff602082015116602085015201511515910152565b346103e8575f3660031901126103e85760206040517fb7733e58c7517dbd9e44ca467a39c0556186bc3a7271956f0a22baafb5dc93c38152f35b346103e85760203660031901126103e8576107de6108c76108c2613601565b614341565b6040519182918291909160a08060c08301948051845260ff602082015116602085015260ff604082015116604085015260ff606082015116606085015260ff608082015116608085015201511515910152565b346103e8575f3660031901126103e85760206040517fede9dcdb0ce99dc7cec9c7be9246ad08b37853683ad91569c187b647ddf5e21c8152f35b346103e857610962366136df565b61096b33613f98565b15610b1c57606a549060018216610a05575b505050610998604061099160208401613c6d565b9201613c6d565b906001604051926109a884613785565b62ff000061ff0060ff85169485875284604060ff861698896020820152015260081b169160101b16171760695560405160066003101561044c575f51602061571b5f395f51905f52926060926003835260208301526040820152a1005b60608401359060a15492838303610b0557610a1f90614d22565b936001546080873603126103e85760405195610a3a87613734565b873560068110156103e85787610af59682610afa9a5260ff808c6060610a756040610a676020850161389e565b93602089019485520161389e565b956040810196875201938452511692511690519060405192610ac260208501957fd9f156a761105f6361512d31cea845f4ddff720a324d1318ade78663a62bb31887526040860190613b0f565b6060840152608083015260a082015260a08152610ae060c0826137a0565b51902060ff6020818451169301511692614a20565b613c3b565b60a15581808061097d565b82846306427aeb60e01b5f5260045260245260445ffd5b637bfa4b9f60e01b5f5260045ffd5b346103e85760e03660031901126103e857600435602435610b4a613617565b610b5261362d565b9160603660831901126103e857609b5460ff8160081c16610d725760ff8116610d635760ff1916600117609b556001600160a01b0382165f8181526033602052604090205490949060ff1615610d50578015610d41576001600160a01b038416801561066657825f52609c60205260ff60405f205416610d2e57604051602081019060843560ff81168091036103e857825260a435604082015260c435606082015260608152610c036080826137a0565b51902095865f52609a60205260ff60405f205416610d1f576084610c54610c6193610c5c9360405191610c3583613719565b60018352876020840152604083015260608201528660808201526146a0565b6001546153e5565b61415a565b15610d105780610c7084614d6d565b10610ca057610c94945f52609a60205260405f20600160ff19825416179055614b58565b609b805460ff19169055005b7f2aa807c191208ec364a49ebc0018975f798050694e1695937b26706e4f0a88589083610cfe610ccf82614d6d565b604080513381526001600160a01b03909416602085015283019390935260608201929092529081906080820190565b0390a163128bd24d60e31b5f5260045ffd5b638baa579f60e01b5f5260045ffd5b63900bb2c960e01b5f5260045ffd5b82631409d1b760e21b5f5260045260245ffd5b637c946ed760e01b5f5260045ffd5b8463094403b760e41b5f5260045260245ffd5b630ef7697f60e01b5f5260045ffd5b63ab35696f60e01b5f5260045ffd5b346103e85760c03660031901126103e857600435610d9d613643565b906044356001600160401b0381116103e857610dbd9036906004016139a8565b9260603660631901126103e85760ff609b5460081c16610d72578215610d41576001600160a01b03168015610f7157805f52603360205260ff60405f2054161561062257604051602081019060643560ff81168091036103e8578252608435604082015260a435606082015260608152610e386080826137a0565b51902093845f52609a60205260ff60405f205416610d1f57335f526099602052610ed2610c5c606460405f205460405190610e7282613719565b5f825260208083018a9052336040808501829052606085018a905260809094018390529251908101929091610ec7918391610eb9916001600160a01b038c16908e8861464a565b03601f1981018352826137a0565b5190206001546153e5565b15610d10578060a0937fef519b7eb82aaf6ac376a6df2d793843ebfd593de5f1a0601d3cc6ab49ebb395965f52609a60205260405f20600160ff19825416179055335f52609960205260405f20610f298154613c3b565b9055610f3786303387615166565b6040519586943386526020860152604085015260806060850152816080850152848401375f828201840152601f01601f19168101030190a1005b6301cc396360e41b5f5260045ffd5b346103e85760203660031901126103e8576004356001600160401b0381116103e857610fb3610fc0913690600401613839565b610fbb614ec3565b615450565b005b346103e85760203660031901126103e8576004356001600160401b0381116103e857610ff29036906004016138ac565b610ffb33613f98565b1580611087575b61067557604060205f5b8351811015610fc0576001600160a01b036110278286613c49565b5151169061103e6110388287613c49565b51614f5c565b835161104a85826137a0565b60018152602081019084368337805115611073576001938261106d935052615450565b0161100c565b634e487b7160e01b5f52603260045260245ffd5b506110913361415a565b15611002565b346103e85760203660031901126103e8576004355f52609c602052602060ff60405f2054166040519015158152f35b346103e8576110d436613a21565b6110dd33613f98565b1580611175575b80611165575b61067557602860ff825116116107e2576040519061016061110b81846137a0565b600a8352601f19013660208401375f5f5b82518110156107d05761112f8184613c49565b515f52609d60205260ff60405f20541661114c575b60010161111c565b9061115d6001916107b78486613c49565b919050611144565b5061116f33613eec565b156110ea565b5061117f3361401f565b156110e4565b346103e85760403660031901126103e857610fc06004356111a4613643565b906111c46111bd825f525f602052600160405f20015490565b3390615551565b614eee565b346103e85760206111e56111dc366139d5565b939290926142ce565b6040516001600160a01b039091168152f35b346103e85760403660031901126103e857611210613601565b6024359060068210156103e8576020916106f191614278565b346103e8575f3660031901126103e85760206040515f5160206156db5f395f51905f528152f35b346103e85760203660031901126103e8576004356001600160401b0381116103e857611280903690600401613978565b61128933613f98565b158061140d575b61067557609b5460ff8116610d635760ff1916600117609b5580156113fe57602881116107e25763ffffffff811691905f5b63ffffffff811682811015610c94576113016112e4604061052c848789613c5d565b6001600160a01b03165f9081526033602052604090205460ff1690565b156113ce57611311818486613c5d565b3515610d41576001600160a01b0361132f606061052c848789613c5d565b1615610666576020611342828587613c5d565b01355f52609c60205260ff60405f2054166113ad57906113a38584848761139d606061052c611395604061052c8761137e6113a89e8b8a613c5d565b3599602061138d83838c613c5d565b013598613c5d565b948b8d613c5d565b92614c43565b614261565b6112c2565b6113ba6020918486613c5d565b0135631409d1b760e21b5f5260045260245ffd5b604061052c6113de928587613c5d565b63094403b760e41b5f9081526001600160a01b0391909116600452602490fd5b630b8fc7cd60e21b5f5260045ffd5b506114173361401f565b15611290565b346103e8575f3660031901126103e85760206040517ff7401a2aa2d57dbee8bd296c5ac47eac2db8a2db2ff59d50c0534dc8be92dc6e8152f35b346103e85760603660031901126103e85760043560068110156103e8576024359060ff8216918281036103e8576044359160ff8316938484036103e85761149d33613f98565b15610b1c5760408051610fc0966001936114b683613785565b825260208201520152615045565b346103e8575f3660031901126103e8576020606b54604051908152f35b346103e8575f3660031901126103e85760206040517fdd7d143944313e9468ffd66e8786351a1538ac1bd6bac96fbbaac11d42f60a518152f35b346103e8575f3660031901126103e85760206040517f4d7d81d86b902e627e6f0ca462e1191bd8af9cb4b8de2660c10b6349acb6ff9b8152f35b346103e8575f3660031901126103e857602060ff609b5460081c166040519015158152f35b346103e8576115883661366d565b93609b9391935460ff8116610d635760ff1916600117609b81905560081c60ff16610d725760405160208101906115c781610eb9898989898989613b1c565b51902094855f52609e60205260ff60405f205416156116405780421061162a57508185610c94965f52609e60205260405f2060ff1981541690557f51c3dff4f0da80a96e8c3557bb500474d2b07950c09c205189fcf7a426970f775f80a3614b58565b63126b74dd60e11b5f526004524260245260445ffd5b8563836588c960e01b5f5260045260245ffd5b346103e85760206111e5610ec7610eb961166c366139d5565b9592949093608060405161167f81613719565b5f81528a81019283526001600160a01b03978816604080830191825295891660608301908152929091018790529151915190519351808b019790968795909390821692909116908861464a565b346103e8576116da366135eb565b906116e433613f98565b1580611740575b6106755760ff609b5460081c16610d7257611707828210613b55565b60326117138284613ba1565b10156103e8575b81811061172357005b5f818152609d60205260409020805460ff1916905560010161171a565b5061174a3361401f565b156116eb565b346103e85760403660031901126103e8576004356001600160401b0381116103e857611780903690600401613839565b60243561178c33613f98565b15806118a2575b6106755760ff609b5460081c16610d725760a3548111611893576028825111610652574782518281029080820484149015171561187f571015611870575f5b825163ffffffff82169081101561184a575f808080866001600160a01b036117fa878b613c49565b51165af1611806613c0c565b501561181b575061181690614261565b6117d2565b6001600160a01b039061182e9085613c49565b5116633ddff61360e21b5f52306004526024525f60445260645ffd5b7f6e31901a2ad27bd7f19498c4681fc6611bf447147de120c3b5f65c249d5990775f80a1005b63128bd24d60e31b5f5260045ffd5b634e487b7160e01b5f52601160045260245ffd5b6395e28b8560e01b5f5260045ffd5b506118ac3361401f565b15611793565b346103e8575f3660031901126103e857602060a254604051908152f35b346103e8575f3660031901126103e85760206040515f8152f35b346103e8575f3660031901126103e85760206040517fbbfb55d933c2bfa638763473275b1d84c4418e58d26cf9d2cd5758237756d9f08152f35b346103e85760203660031901126103e85761193c613bae565b506107de61083a600435614d22565b346103e85760203660031901126103e8576001600160a01b0361196c613601565b165f526033602052602060ff60405f2054166040519015158152f35b346103e85760203660031901126103e8576004355f52609e602052602060ff60405f2054166040519015158152f35b346103e85760403660031901126103e85760206119dd6119d5613643565b6004356141ee565b6040519015158152f35b346103e8575f3660031901126103e8576020606954604051908152f35b60403660031901126103e857611a18613601565b611a20613643565b609b5460ff8160081c16610d725760ff8116610d635760ff1916600117609b55611a4933613f98565b1580611bb3575b610675576001600160a01b03821690308214610634576001600160a01b03165f8181526033602052604090205490929060ff1615611ba05782611aee575050503415611adb575f51602061573b5f395f51905f5260a06040513381523360208201523060408201525f6060820152346080820152a15b60ff19609b5416609b55602060405160018152f35b6379ac219b60e01b5f523360045260245ffd5b6040516370a0823160e01b81526004810183905290602082602481875afa918215610617575f92611b5d575b50905f51602061573b5f395f51905f5293611b3b8260a09594309084615166565b60405192338452602084015230604084015260608301526080820152a1611ac6565b9291506020833d602011611b98575b81611b79602093836137a0565b810103126103e857915190915f51602061573b5f395f51905f52611b1a565b3d9150611b6c565b8263094403b760e41b5f5260045260245ffd5b50611bbd3361401f565b15611a50565b346103e8575f3660031901126103e857611bdc33613f98565b1580611bf8575b61067557609b805461ff001916610100179055005b50611c023361415a565b15611be3565b346103e8575f3660031901126103e85760206040517f20eabc094169e10bc6be263d742d992b10fb206c3c0411e1cbabdd3cf47922298152f35b346103e85760203660031901126103e8576001600160a01b03611c63613601565b165f526099602052602060405f2054604051908152f35b346103e8576101003660031901126103e857611c94613617565b611c9c61362d565b60603660831901126103e85760e4356001600160401b0381116103e857611cc79036906004016136af565b9160ff609b5460081c16610d7257610fc093602435600435613cab565b60803660031901126103e8576004356001600160401b0381116103e857611d0f9036906004016139a8565b60603660231901126103e85760ff609b5460081c16610d72575f805260336020527f44496df070da3f045064f6d6f394484a8de10d5710290d619b67d975ec89320f5460ff1615611ea3573415610d4157604051602081019060243560ff81168091036103e85782526044356040820152606435606082015260608152611d976080826137a0565b519020805f52609a60205260ff60405f205416610d1f57335f526099602052611e0e610c5c602460405f205460405190611dd082613719565b5f8083523460208085018290523360408087018290526060870185905260809096018590529451908101949093610ec7938593610eb993908861464a565b15610d10577fef519b7eb82aaf6ac376a6df2d793843ebfd593de5f1a0601d3cc6ab49ebb3959260a0915f52609a60205260405f20600160ff19825416179055335f52609960205260405f20611e648154613c3b565b9055826040519384923384525f602085015234604085015260806060850152816080850152848401375f828201840152601f01601f19168101030190a1005b63094403b760e41b5f525f60045260245ffd5b346103e85760203660031901126103e857611ecf613c7b565b506107de6108c760043561510b565b346103e85760203660031901126103e8576001600160a01b03611eff613601565b165f52609f602052608060405f2080549060018101549060ff6003600283015492015416916040519384526020840152604083015215156060820152f35b346103e857366003190161012081126103e857610100136103e857610104356001600160401b0381116103e857611f789036906004016136af565b90611f8233613f98565b15610b1c57606a54906001821661201f575b505050611f9f613ad8565b6064359060ff8216918281036103e857506084359160ff8316928381036103e8575060a43560ff8116908181036103e8575060c4359360ff8516928386036103e857610fc0955060405194611ff38661376a565b6001600160a01b03168552604435602086015260408501526060840152608083015260a0820152614f5c565b60e4359260a154928385036121925761203790614d22565b916001546040519361010085018581106001600160401b0382111761217e5760405260043560068110156103e857808652612070613643565b9760208701988952604087019060443582526064359060ff821682036103e8576060890191825260843560ff811681036103e85760808a0190815260a43560ff811681036103e85760a08b0190815260c4359160ff831683036103e85760ff806121739f81610af59f9160e08360c0849501998a520198895260018060a01b0390511699519851169351169351169351169351946040519661213d60208901997ff7c85f4c562133d25a5a2a8cfb32d68080a42c5189d5a1a655e1216b2364c3598b5260408a0190613b0f565b6060880152608087015260a086015260c085015260e08401526101008301526101208201526101208152610ae0610140826137a0565b60a155808080611f94565b634e487b7160e01b5f52604160045260245ffd5b5050506306427aeb60e01b5f5260045260245260445ffd5b346103e8575f3660031901126103e85760206040517f3261beaeb016c41750eb5ecd6c92c85305d1a0aecaaaa6e0f4cf499f7ae258fb8152f35b346103e85760203660031901126103e8576004356001600160401b0381116103e857612214903690600401613839565b61221d33613f98565b1580612304575b610675575f5b81518110156122ce576001906001600160a01b036122488285613c49565b51165f5260336020528160ff60405f205416151514612268575b0161222a565b818060a01b036122788285613c49565b51165f52603360205260405f2060ff1981541690557f4c910b69fe65a61f7531b9c5042b2329ca7179c77290aa7e2eb3afa3c8511fd36020838060a01b036122c08487613c49565b5116604051908152a1612262565b505f5b8151811015610fc0576001906001600160a01b036122ef8285613c49565b51165f5260686020525f6040812055016122d1565b5061230e3361415a565b15612224565b346103e85760203660031901126103e8576001600160a01b03612335613601565b165f5260a06020526040805f2060ff6001825492015416825191825215156020820152f35b346103e85760e03660031901126103e857612373613601565b61237b613643565b906044356001600160401b0381116103e85761239b9036906004016137dc565b6064356001600160401b0381116103e8576123ba903690600401613839565b6084356001600160401b0381116103e8576123d99036906004016138ac565b9360a4356001600160401b0381116103e8576123f9903690600401613978565b9190945f51602061575b5f395f51905f525460ff8160401c1615946001600160401b038216801590816126c7575b60011490816126bd575b1590816126b4575b506126a55767ffffffffffffffff1982166001175f51602061575b5f395f51905f525561251a9186612679575b50604096875161247689826137a0565b60068152602081019065457363726f7760d01b8252612493614ec3565b895161249e81613734565b818152836020820152468b820152606030910152519020906020815191012088519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f84528a83015260608201524660808201523060a082015260a0815261250c60c0826137a0565b519020600155610fbb614ec3565b612522614ec3565b606580546001600160a01b0319166001600160a01b03831617905561254633613f98565b1561266a575b6125558161415a565b1561265a575b506125658161401f565b1561264a575b5060c43560a3555f5b8551811015612593578061258d61103860019389613c49565b01612574565b50835f5b8281106125fd575050506125a757005b60207fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29168ff0000000000000000195f51602061575b5f395f51905f5254165f51602061575b5f395f51905f52555160018152a1005b612608818484613c5d565b359060068210156103e85761264460019261262f6020612629858989613c5d565b01613c6d565b61263e89612629868a8a613c5d565b91615045565b01612597565b61265390614e81565b508561256b565b61266390614e53565b508661255b565b61267333614dc9565b5061254c565b68ffffffffffffffffff191668010000000000000001175f51602061575b5f395f51905f525589612466565b63f92ee8a960e01b5f5260045ffd5b9050158a612439565b303b159150612431565b879150612427565b346103e8575f3660031901126103e85760206040516103848152f35b346103e85760203660031901126103e8576020612706613601565b61270f81613f98565b908115612722575b506040519015158152f35b61272c915061401f565b82612717565b346103e8575f3660031901126103e85760206040517fd64fcb6a6f590e3ec3e331a5d9c60e0ca7468054939fe8e8dfe25f11ad1c1e7a8152f35b346103e857366003190160e081126103e85760c0136103e85760c4356001600160401b0381116103e8576127a49036906004016136af565b906127ae33613f98565b15610b1c576004359160068310156103e8576005830361299b57606b549160018316612883575b6127dd613ad8565b7fdecad5d2d09e135bd441d251aac8169cfc87fbaa724441620c4433eec310740e60606044356064356084359061287060405161281981613734565b84815260036020820198848a5260408301868152888401916001835260018060a01b03169a8b5f52609f60205260405f209451855551600185015551600284015551151591019060ff801983541691151516179055565b60405192835260208301526040820152a2005b60a4359360a254938486036129845794610af59392916128a561297897614d22565b9060015492604051906128b78261376a565b8282526128c2613643565b60208381018290526044356040808601829052606435606087018190526084356080880181905260a090970186905281517f938950981d332bb13f775a3387daf26ee4c6574ace3e04ca5d9c0f6b267e611f948101948552939793969490936001600160a01b039091169161293a9190880190613b0f565b6060860152608085015260a084015260c083015260e082015260e08152612963610100826137a0565b51902060ff6020818451169301511692614953565b60a255808080806127d5565b85856306427aeb60e01b5f5260045260245260445ffd5b631cc6a69960e11b5f5260045ffd5b346103e8575f3660031901126103e8576129c333613f98565b15806129db575b61067557609b805461ff0019169055005b506129e53361415a565b156129ca565b346103e85760203660031901126103e85760206119dd6112e4613601565b346103e85760603660031901126103e857612a22613601565b612a2a613643565b90612a33613617565b91612a3c614ec3565b606580546001600160a01b0319166001600160a01b038416179055612a6081613f98565b15612aa0575b50612a708161415a565b15612a90575b50612a808161401f565b15612a8757005b610fc090614e81565b612a9990614e53565b5081612a76565b612aa990614dc9565b5082612a66565b346103e8575f3660031901126103e8576020606a54604051908152f35b346103e85760403660031901126103e857612ae6613643565b336001600160a01b03821603612b0257610fc090600435614eee565b63334bd91960e11b5f5260045ffd5b346103e8575f3660031901126103e8576020600154604051908152f35b346103e8575f3660031901126103e857602060a154604051908152f35b346103e85760403660031901126103e8576004356001600160401b0381116103e857612b7b9036906004016137dc565b6024356001600160401b0381116103e857612b9a9036906004016137dc565b90612ba3614ec3565b604051612baf81613734565b8181528260208201524660408201526060309101526020815191012090602081519101206040519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a08152612c2460c0826137a0565b519020600155005b346103e85760403660031901126103e857610fc0600435612c4b613643565b90612c646111bd825f525f602052600160405f20015490565b614eaf565b346103e857612c77366136df565b612c8033613f98565b15610b1c5782359160068310156103e8576005830361299b57606b549160018316612d2b575b847fbfb20345012f7f594509a481f64d54cf8b3b081b4a40b1c69410fee9590f89c360206040612cd7828501613aee565b930135612d22604051612ce98161374f565b828152600184820196818852818060a01b031696875f5260a0865260405f209251835551151591019060ff801983541691151516179055565b604051908152a2005b60608501359160a25493848403612e0157612d4590614d22565b600154906080883603126103e857612df59688610af596604051612d6881613734565b8381526060612d7960208501613659565b9160208101928352604080820195013585520191825260018060a01b03905116915190519060405192612dd760208501957f17b10d4ca0ee847f6681ca5e4205d5402614b1149ae7a25cd473872ae40df18187526040860190613b0f565b6060840152608083015260a082015260a0815261296360c0826137a0565b60a25581808080612ca6565b83856306427aeb60e01b5f5260045260245260445ffd5b346103e85760a03660031901126103e857600435602435612e37613617565b91612e4061362d565b906084356001600160401b0381116103e857612e609036906004016136af565b929094612e6c33613eec565b158061308e575b6106755760ff609b5460081c16610d72576001600160a01b0382169384156130495760695496600188161561303a57845f52609d60205260ff60405f20541661302757612ebf846140b3565b156130185786612ece84614d6d565b1061187057612f2f92612f1160405191612ee783613719565b6003835289602084015288604084015260018060a01b0316998a6060840152876080840152614d22565b612f1d600154926146a0565b60ff6020818451169301511692614886565b84612fe357505f80808086865af1612f45613c0c565b5015612fa6577f90e7666b7fc6e8b2de33377c01b0f07a65ea33e7596f355b4a107492af5fbe429360a0935b825f52609d60205260405f20600160ff19825416179055604051933385526020850152604084015260608301526080820152a1005b60405162461bcd60e51b8152602060048201526015602482015274115d1a195c881d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b938361301360a0957f90e7666b7fc6e8b2de33377c01b0f07a65ea33e7596f355b4a107492af5fbe429784614d89565b612f71565b63178e01cf60e01b5f5260045ffd5b84631409d1b760e21b5f5260045260245ffd5b630845dc8960e31b5f5260045ffd5b60405162461bcd60e51b815260206004820152601f60248201527f43616e6e6f74207472616e7366657220746f207a65726f2061646472657373006044820152606490fd5b5061309833613f98565b15612e73565b346103e85760203660031901126103e85760206106f16004355f525f602052600160405f20015490565b346103e85760203660031901126103e8576001600160a01b036130e9613601565b165f526068602052602060405f2054604051908152f35b346103e85761310e3661366d565b909161311c94939433613f98565b15806131b1575b6106755760ff609b5460081c16610d7257610eb961314d9260405194859388602086019889613b1c565b519020805f52609e60205260ff60405f2054161561319f57805f52609e60205260405f2060ff1981541690557fbc42d977c60745c9544af4d5bc56c88c6f21914f291dfd327af4eb04098e90085f80a3005b63836588c960e01b5f5260045260245ffd5b506131bb3361401f565b15613123565b346103e8575f3660031901126103e8576107de61083a613bcc565b346103e8575f3660031901126103e857602047604051908152f35b346103e857613205366135eb565b9061320f33613f98565b158061326b575b6106755760ff609b5460081c16610d7257613232828210613b55565b603261323e8284613ba1565b10156103e8575b81811061324e57005b5f818152609c60205260409020805460ff19169055600101613245565b506132753361401f565b15613216565b346103e85760203660031901126103e8576004356001600160401b0381116103e857366023820112156103e8578060040135906001600160401b0382116103e8573660248360051b830101116103e8576132d433613eec565b1580613588575b61067557609b5460ff8116610d635760ff1916600117609b81905560081c60ff16610d725781156113fe57602882116107e2573681900360c219015f5b83811015610c945760248160051b84010135828112156103e8578301606481016133446112e482613aee565b1561357f5760248201358015610d415760848301906001600160a01b0361336a83613aee565b161561066657604484013593845f52609c60205260ff60405f2054166130275761339383613aee565b9061339d85613aee565b604051926133aa84613719565b60018452602084018590526001600160a01b039081166040850152166060830152608082018690526133e46133de86613aee565b846145ae565b906133f1600154936146a0565b60208301519251909160a481013560421936839003018112156103e85701602401803593906001600160401b0385116103e8576020019260608502360384136103e85761343d95614735565b61345961344984613aee565b61345284613aee565b9083614aef565b8015613550576134699042613b02565b61347284613aee565b8161349561347f86613aee565b610eb960405193849260208401968c8a89613b1c565b51902093845f52609e60205260ff60405f20541661353d57916135338594926135016134fb7f0c9f9de35e5087cd15d9d8b1e477c3fe1500157465e3737550a4395936b5c49a9660019b9a995f52609e60205260405f208c60ff19825416179055613aee565b94613aee565b604080519485526001600160a01b03958616602086015294169383019390935260608201929092529081906080820190565b0390a35b01613318565b856352fcbb3b60e11b5f5260045260245ffd5b5090926001949361356c61356661357a95613aee565b91613aee565b9163ffffffff8a1693614c43565b613537565b6113de90613aee565b5061359233613f98565b156132db565b346103e85760203660031901126103e8576004359063ffffffff60e01b82168092036103e857602091637965db0b60e01b81149081156135da575b5015158152f35b6301ffc9a760e01b149050836135d3565b60409060031901126103e8576004359060243590565b600435906001600160a01b03821682036103e857565b604435906001600160a01b03821682036103e857565b606435906001600160a01b03821682036103e857565b602435906001600160a01b03821682036103e857565b35906001600160a01b03821682036103e857565b60a09060031901126103e85760043590602435906044356001600160a01b03811681036103e857906064356001600160a01b03811681036103e8579060843590565b9181601f840112156103e8578235916001600160401b0383116103e857602080850194606085020101116103e857565b90600319820160a081126103e8576080136103e857600491608435906001600160401b0382116103e857613715916004016136af565b9091565b60a081019081106001600160401b0382111761217e57604052565b608081019081106001600160401b0382111761217e57604052565b604081019081106001600160401b0382111761217e57604052565b60c081019081106001600160401b0382111761217e57604052565b606081019081106001600160401b0382111761217e57604052565b90601f801991011681019081106001600160401b0382111761217e57604052565b6001600160401b03811161217e57601f01601f191660200190565b81601f820112156103e8578035906137f3826137c1565b9261380160405194856137a0565b828452602083830101116103e857815f926020809301838601378301015290565b6001600160401b03811161217e5760051b60200190565b9080601f830112156103e857813561385081613822565b9261385e60405194856137a0565b81845260208085019260051b8201019283116103e857602001905b8282106138865750505090565b6020809161389384613659565b815201910190613879565b359060ff821682036103e857565b81601f820112156103e8578035906138c382613822565b926138d160405194856137a0565b828452602060c08186019402830101918183116103e857602001925b8284106138fb575050505090565b60c0848303126103e857602060c0916040516139168161376a565b61391f87613659565b815282870135838201526139356040880161389e565b60408201526139466060880161389e565b60608201526139576080880161389e565b608082015261396860a0880161389e565b60a08201528152019301926138ed565b9181601f840112156103e8578235916001600160401b0383116103e8576020808501948460071b0101116103e857565b9181601f840112156103e8578235916001600160401b0383116103e857602083818601950101116103e857565b60e06003198201126103e857600435916024356001600160a01b03811681036103e857916044356001600160a01b03811681036103e8579160606064359260831901126103e857608490565b60206003198201126103e857600435906001600160401b0382116103e857806023830112156103e8578160040135613a5881613822565b92613a6660405194856137a0565b8184526024602085019260051b8201019283116103e857602401905b828210613a8f5750505090565b8135815260209182019101613a82565b60206040818301928281528451809452019201905f5b818110613ac25750505090565b8251845260209384019390920191600101613ab5565b6024356001600160a01b03811681036103e85790565b356001600160a01b03811681036103e85790565b9190820180921161187f57565b90600682101561044c5752565b60018152602081019190915260408101919091526001600160a01b0391821660608201529116608082015260a081019190915260c00190565b15613b5c57565b60405162461bcd60e51b815260206004820152601b60248201527f5374617274206d757374206265206c657373207468616e20656e6400000000006044820152606490fd5b9190820391821161187f57565b60405190613bbb82613785565b5f6040838281528260208201520152565b613bd4613bae565b506069546001811615613bed57613bea90614d22565b90565b50604051613bfa81613785565b5f81525f60208201525f604082015290565b3d15613c36573d90613c1d826137c1565b91613c2b60405193846137a0565b82523d5f602084013e565b606090565b5f19811461187f5760010190565b80518210156110735760209160051b010190565b91908110156110735760071b0190565b3560ff811681036103e85790565b60405190613c888261376a565b5f60a0838281528260208201528260408201528260608201528260808201520152565b919293909460018060a01b03841690815f52603360205260ff60405f20541615613ed9578315610d41576001600160a01b03861692831561066657875f52609c60205260ff60405f205416613ec657604051602081019060843560ff811681036103e85760ff16825260a435604082015260c435606082015260608152613d336080826137a0565b51902093845f52609a60205260ff60405f205416610d1f57613d5c610c5c60848b8a8c8b6142ce565b15610d1057613daf9360405191613d7283613719565b6001835287602084015260408301526060820152886080820152613d9687876145ae565b613da2600154926146a0565b6020820151915192614735565b81613db984614d6d565b10613e97575f52609a60205260405f20600160ff19825416179055613ddf838383614aef565b8015613e8a57613def9042613b02565b6040516020810190613e0981610eb98589898c8a89613b1c565b51902093845f52609e60205260ff60405f20541661353d575f858152609e6020908152604091829020805460ff1916600117905581519485526001600160a01b039586169085015293169282019290925260608101919091527f0c9f9de35e5087cd15d9d8b1e477c3fe1500157465e3737550a4395936b5c49a90608090a3565b5092613e9593614b58565b565b5081610cfe610ccf7f2aa807c191208ec364a49ebc0018975f798050694e1695937b26706e4f0a885894614d6d565b87631409d1b760e21b5f5260045260245ffd5b5063094403b760e41b5f5260045260245ffd5b613f157fdd7d143944313e9468ffd66e8786351a1538ac1bd6bac96fbbaac11d42f60a516151aa565b90602082015115613f5a576001600160a01b03165f90815260676020526040902054905190600882101561044c57600160ff8093161b1616613f55575f90565b600190565b6001600160a01b03165f9081527f73d1b004bb899057e159bfa3bc586cb8ff49a8aafbfaf45c482f2c16f8bdf303602052604090205460ff16919050565b613fa15f6151aa565b90602082015115613fe1576001600160a01b03165f90815260676020526040902054905190600882101561044c57600160ff8093161b1616613f55575f90565b6001600160a01b03165f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff16919050565b6140355f5160206156db5f395f51905f526151aa565b90602082015115614075576001600160a01b03165f90815260676020526040902054905190600882101561044c57600160ff8093161b1616613f55575f90565b6001600160a01b03165f9081527f4272c0e29c36ddb672dd25a254bda59e4d959f5c13bec396162edadccdbf7935602052604090205460ff16919050565b6140dc7fb7733e58c7517dbd9e44ca467a39c0556186bc3a7271956f0a22baafb5dc93c36151aa565b9060208201511561411c576001600160a01b03165f90815260676020526040902054905190600882101561044c57600160ff8093161b1616613f55575f90565b6001600160a01b03165f9081527fe2b47d1c3d5450b2075d143367420d4b6d23efa60d1222723e42a52350332748602052604090205460ff16919050565b6141705f5160206156fb5f395f51905f526151aa565b906020820151156141b0576001600160a01b03165f90815260676020526040902054905190600882101561044c57600160ff8093161b1616613f55575f90565b6001600160a01b03165f9081527fee57cd81e84075558e8fcc182a1f4393f91fc97f963a136e66b7f949a62f319f602052604090205460ff16919050565b906141f8826151aa565b9160208301511561423957506001600160a01b03165f90815260676020526040902054905190600882101561044c57600160ff8093161b1616613f55575f90565b5f908152602081815260408083206001600160a01b039094168352929052205460ff16919050565b63ffffffff1663ffffffff811461187f5760010190565b5f9291600681101561044c5780156142b2576001146142945750565b6001600160a01b03165f908152609960205260409020600101549150565b506001600160a01b03165f908152609960205260409020549150565b9092610c5492613bea9594604051936142e685613719565b6001855260208501526001600160a01b03908116604085015216606083015260808201526146a0565b9061431982613822565b61432660405191826137a0565b8281528092614337601f1991613822565b0190602036910137565b614349613c7b565b506001600160a01b03165f90815260686020526040902054600181161561437357613bea9061510b565b506040516143808161376a565b5f81525f60208201525f60408201525f60608201525f60808201525f60a082015290565b6143ac613bae565b50600681101561044c576004036143d357606a545b6001811615613bed57613bea90614d22565b606b546143c1565b6040516370a0823160e01b815230600482015290602090829060249082906001600160a01b03165afa908115610617575f91614415575090565b90506020813d60201161443c575b81614430602093836137a0565b810103126103e8575190565b3d9150614423565b91908110156110735760061b0190565b9060405161446181613734565b5f81525f60208201525f60408201525f60608201525061448081614d6d565b91801561458857670de0b6b3a76400008302838104670de0b6b3a7640000148415171561187f57819004908310156144df5750604051916144c083613734565b5f808452602084015260408301526001600160a01b0316606082015290565b6801158e460913d00000811061451e5750604051916144fd83613734565b600383526014602084015260408301526001600160a01b0316606082015290565b674563918244f400001161455a576040519161453983613734565b600283526005602084015260408301526001600160a01b0316606082015290565b6040519161456783613734565b600183526002602084015260408301526001600160a01b0316606082015290565b50604051916144fd83613734565b604051906145a38261374f565b5f6020838281520152565b906145b7614596565b506001600160a01b03165f81815260686020526040902054906001821615614638575060ff6145e6819261510b565b928351111592835f1461462b5781604082015116935b156146215760800151165b81604051936146158561374f565b16835216602082015290565b6060015116614607565b81602082015116936145fc565b6304ca686f60e01b5f5260045260245ffd5b7fe35cf8b8df51aa49768d4a7859037953b72f9188d7c60825dfd506ac7c8d430c81525f602082015260408101919091526001600160a01b0391821660608201529116608082015260a081019190915260c00190565b805190600682101561044c5760208101519060018060a01b0360408201511690608060018060a01b03606083015116910151916040519361470c60208601967f30df4329ee18debd99f937f6d70edc594d2957d5c194e77ab788df398c193af288526040870190613b0f565b6060850152608084015260a083015260c082015260c0815261472f60e0826137a0565b51902090565b919295936147438785613b02565b1561487d575f96959487946147578761430f565b975f995b888b10156148345761477360608c02860187896153e5565b6001600160a01b0316905f5b8c81106147ff57505f8281526067602052604090205460028116156147c657509a6001916147bb826147b58e9f9e9c9d9e613c3b565b9b613c49565b52019998979661475b565b909890600116156147ec579a6001916147bb826147e68e9f9e9d9e613c3b565b9c613c49565b8b63b20230bd60e01b5f5260045260245ffd5b826001600160a01b03614812838f613c49565b5116146148215760010161477f565b8c63b20230bd60e01b5f5260045260245ffd5b9698509450955096505050808210614868575050808210614853575050565b63ec65672960e01b5f5260045260245260445ffd5b63153482d760e01b5f5260045260245260445ffd5b50505050915050565b919295936148948785613b02565b1561487d575f96959487946148a88761430f565b975f995b888b1015614834576148c460608c02860187896153e5565b6001600160a01b0316905f5b8c811061493157505f82815260676020526040902054600881161561491157509a600191614906826147b58e9f9e9c9d9e613c3b565b5201999897966148ac565b909890600416156147ec579a600191614906826147e68e9f9e9d9e613c3b565b826001600160a01b03614944838f613c49565b511614614821576001016148d0565b919295936149618785613b02565b1561487d575f96959487946149758761430f565b975f995b888b10156148345761499160608c02860187896153e5565b6001600160a01b0316905f5b8c81106149fe57505f8281526067602052604090205460808116156149de57509a6001916149d3826147b58e9f9e9c9d9e613c3b565b520199989796614979565b909890604016156147ec579a6001916149d3826147e68e9f9e9d9e613c3b565b826001600160a01b03614a11838f613c49565b5116146148215760010161499d565b91929593614a2e8785613b02565b1561487d575f9695948794614a428761430f565b975f995b888b101561483457614a5e60608c02860187896153e5565b6001600160a01b0316905f5b8c8110614acd5750815f52606760205260405f20546020811615155f14614aad57509a600191614aa2826147b58e9f9e9c9d9e613c3b565b520199989796614a46565b909890601016156147ec579a600191614aa2826147e68e9f9e9d9e613c3b565b826001600160a01b03614ae0838f613c49565b51161461482157600101614a6a565b6001600160a01b039092165f90815260a060205260409020600181015460ff16614b51575060018060a01b03165f52609f60205260405f209060ff600383015416614b3c57505061038490565b815411614b4a576002015490565b6001015490565b9150505490565b9091825f52609c60205260405f20600160ff19825416179055335f526099602052600160405f2001614b8a8154613c3b565b90556001600160a01b031680614c1f57814710611870576001600160a01b0384165f80808086855af1614bbb613c0c565b5015614c055750915f5160206156bb5f395f51905f52939160c0935b604080513381526001600160a01b03909516602086015284015260608301526080820152600160a0820152a1565b633ddff61360e21b5f52306004526024525f60445260645ffd5b918183614c3e86945f5160206156bb5f395f51905f529760c097614d89565b614bd7565b9091939293825f52609c60205260405f20600160ff19825416179055335f526099602052600160405f2001614c788154613c3b565b90556001600160a01b031680614cf857814710611870576001600160a01b0385165f80808086855af1614ca9613c0c565b5015614c055750925f5160206156bb5f395f51905f52949263ffffffff9260c0955b604080513381526001600160a01b039097166020880152860152606085015260808401521660a0820152a1565b9284928285614d1d63ffffffff955f5160206156bb5f395f51905f529960c099614d89565b614ccb565b614d2a613bae565b506001811615614d5e5760ff60405191614d4383613785565b818160081c16835260101c1660208201526001604082015290565b6306b7c75960e31b5f5260045ffd5b6001600160a01b038116614d8057504790565b613bea906143db565b60405163a9059cbb60e01b60208201526001600160a01b039092166024830152604480830193909352918152613e9591614dc46064836137a0565b6154f9565b614dd3815f6155e4565b90614ddd5f6151aa565b90602082015115614e4e576001600160a01b03165f8181526067602052604090205490919060ff16614e3b575190600882101561044c575f52606760205260ff8060018160405f2094161b1681835416171660ff1982541617905590565b5063f893a86f60e01b5f5260045260245ffd5b505090565b614e6a815f5160206156fb5f395f51905f526155e4565b90614ddd5f5160206156fb5f395f51905f526151aa565b614e98815f5160206156db5f395f51905f526155e4565b90614ddd5f5160206156db5f395f51905f526151aa565b90614ddd614ebd82846155e4565b926151aa565b60ff5f51602061575b5f395f51905f525460401c1615614edf57565b631afcd79f60e31b5f5260045ffd5b90614efc614ebd8284615653565b90602082015115614e4e576001600160a01b03165f8181526067602052604090205490919060ff1615614e4e575190600882101561044c575f52606760205260ff808060018160405f2095161b1619835416161660ff1982541617905590565b6080810160ff8151169060a083019160ff83511610614d5e576040830160ff815116606085019060ff82511610614d5e577fdc6ddbf1e030d2d29f974619e12442d5506a4bdfbf9fc60c74d37e0612b1bdec9360c09360ff80808060208b019a60018c5160a01b64ff000000008a5160201b161763ff0000008b5160181b161762ff0000895160101b161761ff00885160081b16171760018060a01b038251165f52606860205260405f205560018060a01b039051169a51975116955116925116925116926040519460018652602086015260408501526060840152608083015260a0820152a2565b909160016040519161505683613785565b62ff000061ff0060ff87169687865284604060ff861697886020820152015260081b169160101b161717600683101561044c57600383036150c357905f51602061571b5f395f51905f5293606093926069555b6150b66040518094613b0f565b60208301526040820152a1565b600583036150e757905f51602061571b5f395f51905f529360609392606b556150a9565b91906004820361299b575f51602061571b5f395f51905f5293606093606a556150a9565b615113613c7b565b506001811615614d5e5760ff6040519161512c8361376a565b8060a01c8352818160181c166020840152818160201c166040840152818160081c16606084015260101c166080820152600160a082015290565b6040516323b872dd60e01b60208201526001600160a01b039283166024820152929091166044830152606480830193909352918152613e9591614dc46084836137a0565b6040516151b68161374f565b5f8082526020909101527fede9dcdb0ce99dc7cec9c7be9246ad08b37853683ad91569c187b647ddf5e21c810361520157506040516151f48161374f565b5f81526001602082015290565b7ff7401a2aa2d57dbee8bd296c5ac47eac2db8a2db2ff59d50c0534dc8be92dc6e810361524357506040516152358161374f565b600181526001602082015290565b7f4d7d81d86b902e627e6f0ca462e1191bd8af9cb4b8de2660c10b6349acb6ff9b810361528557506040516152778161374f565b600281526001602082015290565b7f20eabc094169e10bc6be263d742d992b10fb206c3c0411e1cbabdd3cf479222981036152c757506040516152b98161374f565b600381526001602082015290565b7fbbfb55d933c2bfa638763473275b1d84c4418e58d26cf9d2cd5758237756d9f0810361530957506040516152fb8161374f565b600481526001602082015290565b7f3261beaeb016c41750eb5ecd6c92c85305d1a0aecaaaa6e0f4cf499f7ae258fb810361534b575060405161533d8161374f565b600581526001602082015290565b7fd64fcb6a6f590e3ec3e331a5d9c60e0ca7468054939fe8e8dfe25f11ad1c1e7a810361538d575060405161537f8161374f565b600681526001602082015290565b7faf82374944a6f0200e0a96e99d9d9aa4925409c95c28b14a1d426baddd614aa8146153cb576040516153bf8161374f565b5f81525f602082015290565b6040516153d78161374f565b600781526001602082015290565b60209260406080925f948251908782019261190160f01b845260228301526042820152604281526154176062826137a0565b5190209160ff61542682613c6d565b8351948552168684015285810135828401520135606082015282805260015afa15610617575f5190565b5f5b81518110156154f5576001906001600160a01b036154708285613c49565b51165f52603360205260ff60405f2054161561548d575b01615452565b818060a01b0361549d8285613c49565b51165f52603360205260405f208260ff198254161790557f784c8f4dbf0ffedd6e72c76501c545a70f8b203b30a26ce542bf92ba87c248a46020838060a01b036154e78487613c49565b5116604051908152a1615487565b5050565b905f602091828151910182855af115610617575f513d61554857506001600160a01b0381163b155b6155285750565b635274afe760e01b5f9081526001600160a01b0391909116600452602490fd5b60011415615521565b9061555b826151aa565b906020820151156155b2576001600160a01b03165f8181526067602052604090205491519091600882101561044c57600160ff8093161b16161561559d575050565b63e2517d3f60e01b5f5260045260245260445ffd5b90506155be81836141ee565b156155c7575050565b63e2517d3f60e01b5f5260018060a01b031660045260245260445ffd5b6155ee82826141ee565b61564d575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b61565d82826141ee565b1561564d575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a460019056fefc4d59a46f6143e0496645b06688cceb577d2d0439ad39ac0f1eaf3143a3a48e9d98d3d08f0062b192694645e127c98e5f96f3bbec331d061acaac3ace2327f997667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929edb00a5a19c16f441c369a47bcf9dff05b73e88628d23e9cf3a5b159fd0d12c86b32cee72b480eef6a5aeccadee07046ade1c28fec1e418949908f7ac8d7d228f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a26469706673582212202d0187260b7dee383b335f2a924abb345e5e4d3ecb55a4bcd94327a62dd19a1064736f6c634300081c0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [];
20
20
  readonly name: "AccessControlBadConfirmation";
@@ -31,6 +31,38 @@ export declare class Escrow__factory extends ContractFactory {
31
31
  }];
32
32
  readonly name: "AccessControlUnauthorizedAccount";
33
33
  readonly type: "error";
34
+ }, {
35
+ readonly inputs: readonly [{
36
+ readonly internalType: "address";
37
+ readonly name: "account";
38
+ readonly type: "address";
39
+ }];
40
+ readonly name: "AccountAlreadyHasSignerRole";
41
+ readonly type: "error";
42
+ }, {
43
+ readonly inputs: readonly [];
44
+ readonly name: "AdminMultisigConfigNotSet";
45
+ readonly type: "error";
46
+ }, {
47
+ readonly inputs: readonly [{
48
+ readonly internalType: "uint256";
49
+ readonly name: "requestId";
50
+ readonly type: "uint256";
51
+ }];
52
+ readonly name: "AlreadyCreatedTransaction";
53
+ readonly type: "error";
54
+ }, {
55
+ readonly inputs: readonly [{
56
+ readonly internalType: "bytes32";
57
+ readonly name: "commitmentHash";
58
+ readonly type: "bytes32";
59
+ }];
60
+ readonly name: "CommitmentNotFound";
61
+ readonly type: "error";
62
+ }, {
63
+ readonly inputs: readonly [];
64
+ readonly name: "ConfigGroupNotSet";
65
+ readonly type: "error";
34
66
  }, {
35
67
  readonly inputs: readonly [];
36
68
  readonly name: "ContractBusy";
@@ -59,6 +91,10 @@ export declare class Escrow__factory extends ContractFactory {
59
91
  }];
60
92
  readonly name: "ExceedsLimit";
61
93
  readonly type: "error";
94
+ }, {
95
+ readonly inputs: readonly [];
96
+ readonly name: "ExceedsMax";
97
+ readonly type: "error";
62
98
  }, {
63
99
  readonly inputs: readonly [];
64
100
  readonly name: "ExceedsMaxBatch";
@@ -83,18 +119,114 @@ export declare class Escrow__factory extends ContractFactory {
83
119
  }];
84
120
  readonly name: "InsufficientBalance";
85
121
  readonly type: "error";
122
+ }, {
123
+ readonly inputs: readonly [{
124
+ readonly internalType: "uint256";
125
+ readonly name: "required";
126
+ readonly type: "uint256";
127
+ }, {
128
+ readonly internalType: "uint256";
129
+ readonly name: "provided";
130
+ readonly type: "uint256";
131
+ }];
132
+ readonly name: "InsufficientExecutiveSigs";
133
+ readonly type: "error";
134
+ }, {
135
+ readonly inputs: readonly [{
136
+ readonly internalType: "uint256";
137
+ readonly name: "required";
138
+ readonly type: "uint256";
139
+ }, {
140
+ readonly internalType: "uint256";
141
+ readonly name: "provided";
142
+ readonly type: "uint256";
143
+ }];
144
+ readonly name: "InsufficientExecutiveSigs";
145
+ readonly type: "error";
146
+ }, {
147
+ readonly inputs: readonly [{
148
+ readonly internalType: "uint256";
149
+ readonly name: "required";
150
+ readonly type: "uint256";
151
+ }, {
152
+ readonly internalType: "uint256";
153
+ readonly name: "provided";
154
+ readonly type: "uint256";
155
+ }];
156
+ readonly name: "InsufficientManagerSigs";
157
+ readonly type: "error";
158
+ }, {
159
+ readonly inputs: readonly [{
160
+ readonly internalType: "uint256";
161
+ readonly name: "required";
162
+ readonly type: "uint256";
163
+ }, {
164
+ readonly internalType: "uint256";
165
+ readonly name: "provided";
166
+ readonly type: "uint256";
167
+ }];
168
+ readonly name: "InsufficientManagerSigs";
169
+ readonly type: "error";
86
170
  }, {
87
171
  readonly inputs: readonly [];
88
172
  readonly name: "InsufficientReserves";
89
173
  readonly type: "error";
174
+ }, {
175
+ readonly inputs: readonly [];
176
+ readonly name: "InvalidConfig";
177
+ readonly type: "error";
90
178
  }, {
91
179
  readonly inputs: readonly [];
92
180
  readonly name: "InvalidInitialization";
93
181
  readonly type: "error";
182
+ }, {
183
+ readonly inputs: readonly [{
184
+ readonly internalType: "uint256";
185
+ readonly name: "sig_idx";
186
+ readonly type: "uint256";
187
+ }];
188
+ readonly name: "InvalidMultiSig";
189
+ readonly type: "error";
190
+ }, {
191
+ readonly inputs: readonly [{
192
+ readonly internalType: "uint256";
193
+ readonly name: "sig_idx";
194
+ readonly type: "uint256";
195
+ }];
196
+ readonly name: "InvalidMultiSig";
197
+ readonly type: "error";
198
+ }, {
199
+ readonly inputs: readonly [{
200
+ readonly internalType: "uint256";
201
+ readonly name: "expected";
202
+ readonly type: "uint256";
203
+ }, {
204
+ readonly internalType: "uint256";
205
+ readonly name: "provided";
206
+ readonly type: "uint256";
207
+ }];
208
+ readonly name: "InvalidNonce";
209
+ readonly type: "error";
210
+ }, {
211
+ readonly inputs: readonly [];
212
+ readonly name: "InvalidOperation";
213
+ readonly type: "error";
94
214
  }, {
95
215
  readonly inputs: readonly [];
96
216
  readonly name: "InvalidSignature";
97
217
  readonly type: "error";
218
+ }, {
219
+ readonly inputs: readonly [];
220
+ readonly name: "InvalidSignatures";
221
+ readonly type: "error";
222
+ }, {
223
+ readonly inputs: readonly [{
224
+ readonly internalType: "address";
225
+ readonly name: "tokenAddress";
226
+ readonly type: "address";
227
+ }];
228
+ readonly name: "MultisigConfigNotSet";
229
+ readonly type: "error";
98
230
  }, {
99
231
  readonly inputs: readonly [];
100
232
  readonly name: "NotAdmin";
@@ -123,6 +255,18 @@ export declare class Escrow__factory extends ContractFactory {
123
255
  }];
124
256
  readonly name: "RequestAlreadyFulfilled";
125
257
  readonly type: "error";
258
+ }, {
259
+ readonly inputs: readonly [{
260
+ readonly internalType: "uint8";
261
+ readonly name: "required_number";
262
+ readonly type: "uint8";
263
+ }];
264
+ readonly name: "RequireMultiSig";
265
+ readonly type: "error";
266
+ }, {
267
+ readonly inputs: readonly [];
268
+ readonly name: "RequireTreasuryReceiverRole";
269
+ readonly type: "error";
126
270
  }, {
127
271
  readonly inputs: readonly [{
128
272
  readonly internalType: "address";
@@ -135,6 +279,30 @@ export declare class Escrow__factory extends ContractFactory {
135
279
  readonly inputs: readonly [];
136
280
  readonly name: "SignatureAlreadyUsed";
137
281
  readonly type: "error";
282
+ }, {
283
+ readonly inputs: readonly [];
284
+ readonly name: "TimelockConfigGroupNotSet";
285
+ readonly type: "error";
286
+ }, {
287
+ readonly inputs: readonly [{
288
+ readonly internalType: "address";
289
+ readonly name: "tokenAddress";
290
+ readonly type: "address";
291
+ }];
292
+ readonly name: "TimelockConfigNotSet";
293
+ readonly type: "error";
294
+ }, {
295
+ readonly inputs: readonly [{
296
+ readonly internalType: "uint256";
297
+ readonly name: "executeAt";
298
+ readonly type: "uint256";
299
+ }, {
300
+ readonly internalType: "uint256";
301
+ readonly name: "currentTime";
302
+ readonly type: "uint256";
303
+ }];
304
+ readonly name: "TimelockNotExpired";
305
+ readonly type: "error";
138
306
  }, {
139
307
  readonly inputs: readonly [{
140
308
  readonly internalType: "address";
@@ -197,9 +365,74 @@ export declare class Escrow__factory extends ContractFactory {
197
365
  readonly internalType: "address";
198
366
  readonly name: "tokenAddress";
199
367
  readonly type: "address";
368
+ }, {
369
+ readonly indexed: false;
370
+ readonly internalType: "uint256";
371
+ readonly name: "requestId";
372
+ readonly type: "uint256";
200
373
  }];
201
374
  readonly name: "AdminWithdraw";
202
375
  readonly type: "event";
376
+ }, {
377
+ readonly anonymous: false;
378
+ readonly inputs: readonly [{
379
+ readonly indexed: false;
380
+ readonly internalType: "enum Types.OperationType";
381
+ readonly name: "opType";
382
+ readonly type: "uint8";
383
+ }, {
384
+ readonly indexed: false;
385
+ readonly internalType: "uint256";
386
+ readonly name: "sigsManagerRequired";
387
+ readonly type: "uint256";
388
+ }, {
389
+ readonly indexed: false;
390
+ readonly internalType: "uint256";
391
+ readonly name: "sigsExecutiveRequired";
392
+ readonly type: "uint256";
393
+ }];
394
+ readonly name: "ConfigureAdminMultisig";
395
+ readonly type: "event";
396
+ }, {
397
+ readonly anonymous: false;
398
+ readonly inputs: readonly [{
399
+ readonly indexed: false;
400
+ readonly internalType: "enum Types.OperationType";
401
+ readonly name: "opType";
402
+ readonly type: "uint8";
403
+ }, {
404
+ readonly indexed: true;
405
+ readonly internalType: "address";
406
+ readonly name: "tokenAddress";
407
+ readonly type: "address";
408
+ }, {
409
+ readonly indexed: false;
410
+ readonly internalType: "uint256";
411
+ readonly name: "thresholdAmount";
412
+ readonly type: "uint256";
413
+ }, {
414
+ readonly indexed: false;
415
+ readonly internalType: "uint8";
416
+ readonly name: "sigsExecutiveBelow";
417
+ readonly type: "uint8";
418
+ }, {
419
+ readonly indexed: false;
420
+ readonly internalType: "uint8";
421
+ readonly name: "sigsExecutiveAbove";
422
+ readonly type: "uint8";
423
+ }, {
424
+ readonly indexed: false;
425
+ readonly internalType: "uint8";
426
+ readonly name: "sigsManagerBelow";
427
+ readonly type: "uint8";
428
+ }, {
429
+ readonly indexed: false;
430
+ readonly internalType: "uint8";
431
+ readonly name: "sigsManagerAbove";
432
+ readonly type: "uint8";
433
+ }];
434
+ readonly name: "ConfigureTokenMultisig";
435
+ readonly type: "event";
203
436
  }, {
204
437
  readonly anonymous: false;
205
438
  readonly inputs: readonly [{
@@ -345,6 +578,46 @@ export declare class Escrow__factory extends ContractFactory {
345
578
  }];
346
579
  readonly name: "RoleRevoked";
347
580
  readonly type: "event";
581
+ }, {
582
+ readonly anonymous: false;
583
+ readonly inputs: readonly [{
584
+ readonly indexed: true;
585
+ readonly internalType: "address";
586
+ readonly name: "receiverAddress";
587
+ readonly type: "address";
588
+ }, {
589
+ readonly indexed: false;
590
+ readonly internalType: "uint256";
591
+ readonly name: "duration";
592
+ readonly type: "uint256";
593
+ }];
594
+ readonly name: "SetTimelockGranular";
595
+ readonly type: "event";
596
+ }, {
597
+ readonly anonymous: false;
598
+ readonly inputs: readonly [{
599
+ readonly indexed: true;
600
+ readonly internalType: "address";
601
+ readonly name: "tokenAddress";
602
+ readonly type: "address";
603
+ }, {
604
+ readonly indexed: false;
605
+ readonly internalType: "uint256";
606
+ readonly name: "thresholdAmount";
607
+ readonly type: "uint256";
608
+ }, {
609
+ readonly indexed: false;
610
+ readonly internalType: "uint256";
611
+ readonly name: "durationBelow";
612
+ readonly type: "uint256";
613
+ }, {
614
+ readonly indexed: false;
615
+ readonly internalType: "uint256";
616
+ readonly name: "durationAbove";
617
+ readonly type: "uint256";
618
+ }];
619
+ readonly name: "SetTokenTimelock";
620
+ readonly type: "event";
348
621
  }, {
349
622
  readonly anonymous: false;
350
623
  readonly inputs: readonly [{
@@ -395,21 +668,6 @@ export declare class Escrow__factory extends ContractFactory {
395
668
  }];
396
669
  readonly name: "TokenRemoved";
397
670
  readonly type: "event";
398
- }, {
399
- readonly anonymous: false;
400
- readonly inputs: readonly [{
401
- readonly indexed: false;
402
- readonly internalType: "uint256";
403
- readonly name: "amount";
404
- readonly type: "uint256";
405
- }, {
406
- readonly indexed: false;
407
- readonly internalType: "uint256";
408
- readonly name: "blockNumber";
409
- readonly type: "uint256";
410
- }];
411
- readonly name: "TransactionCount";
412
- readonly type: "event";
413
671
  }, {
414
672
  readonly anonymous: false;
415
673
  readonly inputs: readonly [{
@@ -446,23 +704,128 @@ export declare class Escrow__factory extends ContractFactory {
446
704
  readonly name: "Withdrawal";
447
705
  readonly type: "event";
448
706
  }, {
449
- readonly inputs: readonly [];
450
- readonly name: "DEFAULT_ADMIN_ROLE";
451
- readonly outputs: readonly [{
707
+ readonly anonymous: false;
708
+ readonly inputs: readonly [{
709
+ readonly indexed: true;
452
710
  readonly internalType: "bytes32";
453
- readonly name: "";
711
+ readonly name: "commitmentHash";
454
712
  readonly type: "bytes32";
713
+ }, {
714
+ readonly indexed: true;
715
+ readonly internalType: "uint256";
716
+ readonly name: "requestId";
717
+ readonly type: "uint256";
455
718
  }];
456
- readonly stateMutability: "view";
457
- readonly type: "function";
719
+ readonly name: "WithdrawalCancelled";
720
+ readonly type: "event";
458
721
  }, {
459
- readonly inputs: readonly [];
460
- readonly name: "DOMAIN_SEPARATOR";
461
- readonly outputs: readonly [{
722
+ readonly anonymous: false;
723
+ readonly inputs: readonly [{
724
+ readonly indexed: true;
462
725
  readonly internalType: "bytes32";
463
- readonly name: "";
726
+ readonly name: "commitmentHash";
464
727
  readonly type: "bytes32";
465
- }];
728
+ }, {
729
+ readonly indexed: true;
730
+ readonly internalType: "uint256";
731
+ readonly name: "requestId";
732
+ readonly type: "uint256";
733
+ }];
734
+ readonly name: "WithdrawalExecuted";
735
+ readonly type: "event";
736
+ }, {
737
+ readonly anonymous: false;
738
+ readonly inputs: readonly [{
739
+ readonly indexed: true;
740
+ readonly internalType: "bytes32";
741
+ readonly name: "commitmentHash";
742
+ readonly type: "bytes32";
743
+ }, {
744
+ readonly indexed: true;
745
+ readonly internalType: "uint256";
746
+ readonly name: "requestId";
747
+ readonly type: "uint256";
748
+ }, {
749
+ readonly indexed: false;
750
+ readonly internalType: "uint256";
751
+ readonly name: "amount";
752
+ readonly type: "uint256";
753
+ }, {
754
+ readonly indexed: false;
755
+ readonly internalType: "address";
756
+ readonly name: "tokenAddress";
757
+ readonly type: "address";
758
+ }, {
759
+ readonly indexed: false;
760
+ readonly internalType: "address";
761
+ readonly name: "receiverAddress";
762
+ readonly type: "address";
763
+ }, {
764
+ readonly indexed: false;
765
+ readonly internalType: "uint256";
766
+ readonly name: "executeAt";
767
+ readonly type: "uint256";
768
+ }];
769
+ readonly name: "WithdrawalScheduled";
770
+ readonly type: "event";
771
+ }, {
772
+ readonly inputs: readonly [];
773
+ readonly name: "ADMIN_TREASURY_EXECUTIVE_ROLE";
774
+ readonly outputs: readonly [{
775
+ readonly internalType: "bytes32";
776
+ readonly name: "";
777
+ readonly type: "bytes32";
778
+ }];
779
+ readonly stateMutability: "view";
780
+ readonly type: "function";
781
+ }, {
782
+ readonly inputs: readonly [];
783
+ readonly name: "ADMIN_TREASURY_MANAGER_ROLE";
784
+ readonly outputs: readonly [{
785
+ readonly internalType: "bytes32";
786
+ readonly name: "";
787
+ readonly type: "bytes32";
788
+ }];
789
+ readonly stateMutability: "view";
790
+ readonly type: "function";
791
+ }, {
792
+ readonly inputs: readonly [];
793
+ readonly name: "CONFIG_EXECUTIVE_ROLE";
794
+ readonly outputs: readonly [{
795
+ readonly internalType: "bytes32";
796
+ readonly name: "";
797
+ readonly type: "bytes32";
798
+ }];
799
+ readonly stateMutability: "view";
800
+ readonly type: "function";
801
+ }, {
802
+ readonly inputs: readonly [];
803
+ readonly name: "CONFIG_MANAGER_ROLE";
804
+ readonly outputs: readonly [{
805
+ readonly internalType: "bytes32";
806
+ readonly name: "";
807
+ readonly type: "bytes32";
808
+ }];
809
+ readonly stateMutability: "view";
810
+ readonly type: "function";
811
+ }, {
812
+ readonly inputs: readonly [];
813
+ readonly name: "DEFAULT_ADMIN_ROLE";
814
+ readonly outputs: readonly [{
815
+ readonly internalType: "bytes32";
816
+ readonly name: "";
817
+ readonly type: "bytes32";
818
+ }];
819
+ readonly stateMutability: "view";
820
+ readonly type: "function";
821
+ }, {
822
+ readonly inputs: readonly [];
823
+ readonly name: "DOMAIN_SEPARATOR";
824
+ readonly outputs: readonly [{
825
+ readonly internalType: "bytes32";
826
+ readonly name: "";
827
+ readonly type: "bytes32";
828
+ }];
466
829
  readonly stateMutability: "view";
467
830
  readonly type: "function";
468
831
  }, {
@@ -485,6 +848,76 @@ export declare class Escrow__factory extends ContractFactory {
485
848
  }];
486
849
  readonly stateMutability: "view";
487
850
  readonly type: "function";
851
+ }, {
852
+ readonly inputs: readonly [];
853
+ readonly name: "TIMELOCK_CONFIG_EXECUTIVE_ROLE";
854
+ readonly outputs: readonly [{
855
+ readonly internalType: "bytes32";
856
+ readonly name: "";
857
+ readonly type: "bytes32";
858
+ }];
859
+ readonly stateMutability: "view";
860
+ readonly type: "function";
861
+ }, {
862
+ readonly inputs: readonly [];
863
+ readonly name: "TIMELOCK_CONFIG_MANAGER_ROLE";
864
+ readonly outputs: readonly [{
865
+ readonly internalType: "bytes32";
866
+ readonly name: "";
867
+ readonly type: "bytes32";
868
+ }];
869
+ readonly stateMutability: "view";
870
+ readonly type: "function";
871
+ }, {
872
+ readonly inputs: readonly [];
873
+ readonly name: "TIMELOCK_DELAY";
874
+ readonly outputs: readonly [{
875
+ readonly internalType: "uint256";
876
+ readonly name: "";
877
+ readonly type: "uint256";
878
+ }];
879
+ readonly stateMutability: "view";
880
+ readonly type: "function";
881
+ }, {
882
+ readonly inputs: readonly [];
883
+ readonly name: "TREASURY_DISPATCH_ROLE";
884
+ readonly outputs: readonly [{
885
+ readonly internalType: "bytes32";
886
+ readonly name: "";
887
+ readonly type: "bytes32";
888
+ }];
889
+ readonly stateMutability: "view";
890
+ readonly type: "function";
891
+ }, {
892
+ readonly inputs: readonly [];
893
+ readonly name: "TREASURY_EXECUTIVE_ROLE";
894
+ readonly outputs: readonly [{
895
+ readonly internalType: "bytes32";
896
+ readonly name: "";
897
+ readonly type: "bytes32";
898
+ }];
899
+ readonly stateMutability: "view";
900
+ readonly type: "function";
901
+ }, {
902
+ readonly inputs: readonly [];
903
+ readonly name: "TREASURY_MANAGER_ROLE";
904
+ readonly outputs: readonly [{
905
+ readonly internalType: "bytes32";
906
+ readonly name: "";
907
+ readonly type: "bytes32";
908
+ }];
909
+ readonly stateMutability: "view";
910
+ readonly type: "function";
911
+ }, {
912
+ readonly inputs: readonly [];
913
+ readonly name: "TREASURY_RECEIVER_ROLE";
914
+ readonly outputs: readonly [{
915
+ readonly internalType: "bytes32";
916
+ readonly name: "";
917
+ readonly type: "bytes32";
918
+ }];
919
+ readonly stateMutability: "view";
920
+ readonly type: "function";
488
921
  }, {
489
922
  readonly inputs: readonly [{
490
923
  readonly internalType: "address";
@@ -529,16 +962,55 @@ export declare class Escrow__factory extends ContractFactory {
529
962
  readonly type: "function";
530
963
  }, {
531
964
  readonly inputs: readonly [{
532
- readonly internalType: "address[]";
533
- readonly name: "tokens";
534
- readonly type: "address[]";
965
+ readonly components: readonly [{
966
+ readonly internalType: "address";
967
+ readonly name: "tokenAddress";
968
+ readonly type: "address";
969
+ }, {
970
+ readonly internalType: "uint256";
971
+ readonly name: "thresholdAmount";
972
+ readonly type: "uint256";
973
+ }, {
974
+ readonly internalType: "uint8";
975
+ readonly name: "sigsExecutiveBelow";
976
+ readonly type: "uint8";
977
+ }, {
978
+ readonly internalType: "uint8";
979
+ readonly name: "sigsExecutiveAbove";
980
+ readonly type: "uint8";
981
+ }, {
982
+ readonly internalType: "uint8";
983
+ readonly name: "sigsBelow";
984
+ readonly type: "uint8";
985
+ }, {
986
+ readonly internalType: "uint8";
987
+ readonly name: "sigsAbove";
988
+ readonly type: "uint8";
989
+ }];
990
+ readonly internalType: "struct Types.MultisigConfigInput[]";
991
+ readonly name: "configs";
992
+ readonly type: "tuple[]";
535
993
  }];
536
994
  readonly name: "addTokens";
537
995
  readonly outputs: readonly [];
538
996
  readonly stateMutability: "nonpayable";
539
997
  readonly type: "function";
998
+ }, {
999
+ readonly inputs: readonly [];
1000
+ readonly name: "adminTokenThresholdSettings";
1001
+ readonly outputs: readonly [{
1002
+ readonly internalType: "uint256";
1003
+ readonly name: "";
1004
+ readonly type: "uint256";
1005
+ }];
1006
+ readonly stateMutability: "view";
1007
+ readonly type: "function";
540
1008
  }, {
541
1009
  readonly inputs: readonly [{
1010
+ readonly internalType: "uint256";
1011
+ readonly name: "requestId";
1012
+ readonly type: "uint256";
1013
+ }, {
542
1014
  readonly internalType: "uint256";
543
1015
  readonly name: "amount";
544
1016
  readonly type: "uint256";
@@ -550,6 +1022,23 @@ export declare class Escrow__factory extends ContractFactory {
550
1022
  readonly internalType: "address";
551
1023
  readonly name: "receiver";
552
1024
  readonly type: "address";
1025
+ }, {
1026
+ readonly components: readonly [{
1027
+ readonly internalType: "uint8";
1028
+ readonly name: "v";
1029
+ readonly type: "uint8";
1030
+ }, {
1031
+ readonly internalType: "bytes32";
1032
+ readonly name: "r";
1033
+ readonly type: "bytes32";
1034
+ }, {
1035
+ readonly internalType: "bytes32";
1036
+ readonly name: "s";
1037
+ readonly type: "bytes32";
1038
+ }];
1039
+ readonly internalType: "struct Types.Signature[]";
1040
+ readonly name: "signatures";
1041
+ readonly type: "tuple[]";
553
1042
  }];
554
1043
  readonly name: "adminWithdraw";
555
1044
  readonly outputs: readonly [];
@@ -600,51 +1089,58 @@ export declare class Escrow__factory extends ContractFactory {
600
1089
  readonly internalType: "address";
601
1090
  readonly name: "receiverAddress";
602
1091
  readonly type: "address";
1092
+ }, {
1093
+ readonly components: readonly [{
1094
+ readonly internalType: "uint8";
1095
+ readonly name: "v";
1096
+ readonly type: "uint8";
1097
+ }, {
1098
+ readonly internalType: "bytes32";
1099
+ readonly name: "r";
1100
+ readonly type: "bytes32";
1101
+ }, {
1102
+ readonly internalType: "bytes32";
1103
+ readonly name: "s";
1104
+ readonly type: "bytes32";
1105
+ }];
1106
+ readonly internalType: "struct Types.Signature[]";
1107
+ readonly name: "signatures";
1108
+ readonly type: "tuple[]";
603
1109
  }];
604
- readonly internalType: "struct Types.BatchWithdraw[]";
1110
+ readonly internalType: "struct Types.BatchWithdrawWithTimelock[]";
605
1111
  readonly name: "requests";
606
1112
  readonly type: "tuple[]";
607
1113
  }];
608
- readonly name: "batch_withdraw";
609
- readonly outputs: readonly [];
610
- readonly stateMutability: "nonpayable";
611
- readonly type: "function";
612
- }, {
613
- readonly inputs: readonly [{
614
- readonly internalType: "address";
615
- readonly name: "newAdmin";
616
- readonly type: "address";
617
- }];
618
- readonly name: "changeAdmin";
1114
+ readonly name: "batchWithdrawWithTimelock";
619
1115
  readonly outputs: readonly [];
620
1116
  readonly stateMutability: "nonpayable";
621
1117
  readonly type: "function";
622
1118
  }, {
623
1119
  readonly inputs: readonly [{
624
- readonly internalType: "string";
625
- readonly name: "bonusCode";
626
- readonly type: "string";
627
- }, {
628
1120
  readonly components: readonly [{
629
- readonly internalType: "uint8";
630
- readonly name: "v";
631
- readonly type: "uint8";
1121
+ readonly internalType: "uint256";
1122
+ readonly name: "amount";
1123
+ readonly type: "uint256";
632
1124
  }, {
633
- readonly internalType: "bytes32";
634
- readonly name: "r";
635
- readonly type: "bytes32";
1125
+ readonly internalType: "uint256";
1126
+ readonly name: "requestId";
1127
+ readonly type: "uint256";
636
1128
  }, {
637
- readonly internalType: "bytes32";
638
- readonly name: "s";
639
- readonly type: "bytes32";
1129
+ readonly internalType: "address";
1130
+ readonly name: "tokenAddress";
1131
+ readonly type: "address";
1132
+ }, {
1133
+ readonly internalType: "address";
1134
+ readonly name: "receiverAddress";
1135
+ readonly type: "address";
640
1136
  }];
641
- readonly internalType: "struct Types.Signature";
642
- readonly name: "signature";
643
- readonly type: "tuple";
1137
+ readonly internalType: "struct Types.BatchWithdraw[]";
1138
+ readonly name: "requests";
1139
+ readonly type: "tuple[]";
644
1140
  }];
645
- readonly name: "deposit";
1141
+ readonly name: "batch_withdraw";
646
1142
  readonly outputs: readonly [];
647
- readonly stateMutability: "payable";
1143
+ readonly stateMutability: "nonpayable";
648
1144
  readonly type: "function";
649
1145
  }, {
650
1146
  readonly inputs: readonly [{
@@ -652,7 +1148,80 @@ export declare class Escrow__factory extends ContractFactory {
652
1148
  readonly name: "amount";
653
1149
  readonly type: "uint256";
654
1150
  }, {
655
- readonly internalType: "address";
1151
+ readonly internalType: "uint256";
1152
+ readonly name: "requestId";
1153
+ readonly type: "uint256";
1154
+ }, {
1155
+ readonly internalType: "address";
1156
+ readonly name: "tokenAddress";
1157
+ readonly type: "address";
1158
+ }, {
1159
+ readonly internalType: "address";
1160
+ readonly name: "receiverAddress";
1161
+ readonly type: "address";
1162
+ }, {
1163
+ readonly internalType: "uint256";
1164
+ readonly name: "executeAt";
1165
+ readonly type: "uint256";
1166
+ }];
1167
+ readonly name: "cancelWithdrawal";
1168
+ readonly outputs: readonly [];
1169
+ readonly stateMutability: "nonpayable";
1170
+ readonly type: "function";
1171
+ }, {
1172
+ readonly inputs: readonly [];
1173
+ readonly name: "configNonce";
1174
+ readonly outputs: readonly [{
1175
+ readonly internalType: "uint256";
1176
+ readonly name: "";
1177
+ readonly type: "uint256";
1178
+ }];
1179
+ readonly stateMutability: "view";
1180
+ readonly type: "function";
1181
+ }, {
1182
+ readonly inputs: readonly [];
1183
+ readonly name: "configThresholdSettings";
1184
+ readonly outputs: readonly [{
1185
+ readonly internalType: "uint256";
1186
+ readonly name: "";
1187
+ readonly type: "uint256";
1188
+ }];
1189
+ readonly stateMutability: "view";
1190
+ readonly type: "function";
1191
+ }, {
1192
+ readonly inputs: readonly [{
1193
+ readonly internalType: "string";
1194
+ readonly name: "bonusCode";
1195
+ readonly type: "string";
1196
+ }, {
1197
+ readonly components: readonly [{
1198
+ readonly internalType: "uint8";
1199
+ readonly name: "v";
1200
+ readonly type: "uint8";
1201
+ }, {
1202
+ readonly internalType: "bytes32";
1203
+ readonly name: "r";
1204
+ readonly type: "bytes32";
1205
+ }, {
1206
+ readonly internalType: "bytes32";
1207
+ readonly name: "s";
1208
+ readonly type: "bytes32";
1209
+ }];
1210
+ readonly internalType: "struct Types.Signature";
1211
+ readonly name: "signature";
1212
+ readonly type: "tuple";
1213
+ }];
1214
+ readonly name: "deposit";
1215
+ readonly outputs: readonly [];
1216
+ readonly stateMutability: "payable";
1217
+ readonly type: "function";
1218
+ }, {
1219
+ readonly inputs: readonly [{
1220
+ readonly internalType: "uint256";
1221
+ readonly name: "amount";
1222
+ readonly type: "uint256";
1223
+ }, {
1224
+ readonly internalType: "address";
656
1225
  readonly name: "tokenAddress";
657
1226
  readonly type: "address";
658
1227
  }, {
@@ -681,6 +1250,32 @@ export declare class Escrow__factory extends ContractFactory {
681
1250
  readonly outputs: readonly [];
682
1251
  readonly stateMutability: "nonpayable";
683
1252
  readonly type: "function";
1253
+ }, {
1254
+ readonly inputs: readonly [{
1255
+ readonly internalType: "uint256";
1256
+ readonly name: "amount";
1257
+ readonly type: "uint256";
1258
+ }, {
1259
+ readonly internalType: "uint256";
1260
+ readonly name: "requestId";
1261
+ readonly type: "uint256";
1262
+ }, {
1263
+ readonly internalType: "address";
1264
+ readonly name: "tokenAddress";
1265
+ readonly type: "address";
1266
+ }, {
1267
+ readonly internalType: "address";
1268
+ readonly name: "receiverAddress";
1269
+ readonly type: "address";
1270
+ }, {
1271
+ readonly internalType: "uint256";
1272
+ readonly name: "executeAt";
1273
+ readonly type: "uint256";
1274
+ }];
1275
+ readonly name: "executeWithdrawal";
1276
+ readonly outputs: readonly [];
1277
+ readonly stateMutability: "nonpayable";
1278
+ readonly type: "function";
684
1279
  }, {
685
1280
  readonly inputs: readonly [{
686
1281
  readonly internalType: "address[]";
@@ -695,6 +1290,29 @@ export declare class Escrow__factory extends ContractFactory {
695
1290
  readonly outputs: readonly [];
696
1291
  readonly stateMutability: "nonpayable";
697
1292
  readonly type: "function";
1293
+ }, {
1294
+ readonly inputs: readonly [];
1295
+ readonly name: "getAdminMultisigConfig";
1296
+ readonly outputs: readonly [{
1297
+ readonly components: readonly [{
1298
+ readonly internalType: "uint8";
1299
+ readonly name: "sigsManagerRequired";
1300
+ readonly type: "uint8";
1301
+ }, {
1302
+ readonly internalType: "uint8";
1303
+ readonly name: "sigsExecutiveRequired";
1304
+ readonly type: "uint8";
1305
+ }, {
1306
+ readonly internalType: "bool";
1307
+ readonly name: "configured";
1308
+ readonly type: "bool";
1309
+ }];
1310
+ readonly internalType: "struct Types.AdminMultisigConfig";
1311
+ readonly name: "";
1312
+ readonly type: "tuple";
1313
+ }];
1314
+ readonly stateMutability: "view";
1315
+ readonly type: "function";
698
1316
  }, {
699
1317
  readonly inputs: readonly [];
700
1318
  readonly name: "getBalance";
@@ -763,12 +1381,29 @@ export declare class Escrow__factory extends ContractFactory {
763
1381
  readonly stateMutability: "view";
764
1382
  readonly type: "function";
765
1383
  }, {
766
- readonly inputs: readonly [];
767
- readonly name: "getLastBlockNumber";
1384
+ readonly inputs: readonly [{
1385
+ readonly internalType: "enum Types.OperationType";
1386
+ readonly name: "opType";
1387
+ readonly type: "uint8";
1388
+ }];
1389
+ readonly name: "getGroupConfig";
768
1390
  readonly outputs: readonly [{
769
- readonly internalType: "uint256";
1391
+ readonly components: readonly [{
1392
+ readonly internalType: "uint8";
1393
+ readonly name: "sigsManagerRequired";
1394
+ readonly type: "uint8";
1395
+ }, {
1396
+ readonly internalType: "uint8";
1397
+ readonly name: "sigsExecutiveRequired";
1398
+ readonly type: "uint8";
1399
+ }, {
1400
+ readonly internalType: "bool";
1401
+ readonly name: "configured";
1402
+ readonly type: "bool";
1403
+ }];
1404
+ readonly internalType: "struct Types.AdminMultisigConfig";
770
1405
  readonly name: "";
771
- readonly type: "uint256";
1406
+ readonly type: "tuple";
772
1407
  }];
773
1408
  readonly stateMutability: "view";
774
1409
  readonly type: "function";
@@ -854,29 +1489,39 @@ export declare class Escrow__factory extends ContractFactory {
854
1489
  readonly stateMutability: "view";
855
1490
  readonly type: "function";
856
1491
  }, {
857
- readonly inputs: readonly [];
858
- readonly name: "getTotalTransactions";
859
- readonly outputs: readonly [{
860
- readonly internalType: "uint256";
861
- readonly name: "";
862
- readonly type: "uint256";
1492
+ readonly inputs: readonly [{
1493
+ readonly internalType: "address";
1494
+ readonly name: "tokenAddress";
1495
+ readonly type: "address";
863
1496
  }];
864
- readonly stateMutability: "view";
865
- readonly type: "function";
866
- }, {
867
- readonly inputs: readonly [];
868
- readonly name: "getTransactionStatus";
1497
+ readonly name: "getTokenMultisigConfig";
869
1498
  readonly outputs: readonly [{
870
1499
  readonly components: readonly [{
871
1500
  readonly internalType: "uint256";
872
- readonly name: "totalCount";
1501
+ readonly name: "thresholdAmount";
873
1502
  readonly type: "uint256";
874
1503
  }, {
875
- readonly internalType: "uint256";
876
- readonly name: "lastBlockNumber";
877
- readonly type: "uint256";
1504
+ readonly internalType: "uint8";
1505
+ readonly name: "sigsExecutiveBelow";
1506
+ readonly type: "uint8";
1507
+ }, {
1508
+ readonly internalType: "uint8";
1509
+ readonly name: "sigsExecutiveAbove";
1510
+ readonly type: "uint8";
1511
+ }, {
1512
+ readonly internalType: "uint8";
1513
+ readonly name: "sigsBelow";
1514
+ readonly type: "uint8";
1515
+ }, {
1516
+ readonly internalType: "uint8";
1517
+ readonly name: "sigsAbove";
1518
+ readonly type: "uint8";
1519
+ }, {
1520
+ readonly internalType: "bool";
1521
+ readonly name: "configured";
1522
+ readonly type: "bool";
878
1523
  }];
879
- readonly internalType: "struct Types.TransactionStatus";
1524
+ readonly internalType: "struct Types.MultisigConfig";
880
1525
  readonly name: "";
881
1526
  readonly type: "tuple";
882
1527
  }];
@@ -925,6 +1570,20 @@ export declare class Escrow__factory extends ContractFactory {
925
1570
  }];
926
1571
  readonly stateMutability: "view";
927
1572
  readonly type: "function";
1573
+ }, {
1574
+ readonly inputs: readonly [{
1575
+ readonly internalType: "uint256[]";
1576
+ readonly name: "ids";
1577
+ readonly type: "uint256[]";
1578
+ }];
1579
+ readonly name: "get_admin_used_ids";
1580
+ readonly outputs: readonly [{
1581
+ readonly internalType: "uint256[]";
1582
+ readonly name: "used_ids";
1583
+ readonly type: "uint256[]";
1584
+ }];
1585
+ readonly stateMutability: "view";
1586
+ readonly type: "function";
928
1587
  }, {
929
1588
  readonly inputs: readonly [{
930
1589
  readonly internalType: "uint256[]";
@@ -988,6 +1647,60 @@ export declare class Escrow__factory extends ContractFactory {
988
1647
  readonly internalType: "address[]";
989
1648
  readonly name: "_tokens";
990
1649
  readonly type: "address[]";
1650
+ }, {
1651
+ readonly components: readonly [{
1652
+ readonly internalType: "address";
1653
+ readonly name: "tokenAddress";
1654
+ readonly type: "address";
1655
+ }, {
1656
+ readonly internalType: "uint256";
1657
+ readonly name: "thresholdAmount";
1658
+ readonly type: "uint256";
1659
+ }, {
1660
+ readonly internalType: "uint8";
1661
+ readonly name: "sigsExecutiveBelow";
1662
+ readonly type: "uint8";
1663
+ }, {
1664
+ readonly internalType: "uint8";
1665
+ readonly name: "sigsExecutiveAbove";
1666
+ readonly type: "uint8";
1667
+ }, {
1668
+ readonly internalType: "uint8";
1669
+ readonly name: "sigsBelow";
1670
+ readonly type: "uint8";
1671
+ }, {
1672
+ readonly internalType: "uint8";
1673
+ readonly name: "sigsAbove";
1674
+ readonly type: "uint8";
1675
+ }];
1676
+ readonly internalType: "struct Types.MultisigConfigInput[]";
1677
+ readonly name: "_multisigConfigs";
1678
+ readonly type: "tuple[]";
1679
+ }, {
1680
+ readonly components: readonly [{
1681
+ readonly internalType: "enum Types.OperationType";
1682
+ readonly name: "opType";
1683
+ readonly type: "uint8";
1684
+ }, {
1685
+ readonly internalType: "uint8";
1686
+ readonly name: "sigsManagerRequired";
1687
+ readonly type: "uint8";
1688
+ }, {
1689
+ readonly internalType: "uint8";
1690
+ readonly name: "sigsExecutiveRequired";
1691
+ readonly type: "uint8";
1692
+ }, {
1693
+ readonly internalType: "bool";
1694
+ readonly name: "configured";
1695
+ readonly type: "bool";
1696
+ }];
1697
+ readonly internalType: "struct Types.AdminMultisigConfigSetup[]";
1698
+ readonly name: "_adminMultisigConfigs";
1699
+ readonly type: "tuple[]";
1700
+ }, {
1701
+ readonly internalType: "uint256";
1702
+ readonly name: "_maxFundWalletAmount";
1703
+ readonly type: "uint256";
991
1704
  }];
992
1705
  readonly name: "initialize";
993
1706
  readonly outputs: readonly [];
@@ -1051,6 +1764,24 @@ export declare class Escrow__factory extends ContractFactory {
1051
1764
  readonly outputs: readonly [];
1052
1765
  readonly stateMutability: "nonpayable";
1053
1766
  readonly type: "function";
1767
+ }, {
1768
+ readonly inputs: readonly [{
1769
+ readonly internalType: "address";
1770
+ readonly name: "";
1771
+ readonly type: "address";
1772
+ }];
1773
+ readonly name: "receiverTimelockConfig";
1774
+ readonly outputs: readonly [{
1775
+ readonly internalType: "uint256";
1776
+ readonly name: "duration";
1777
+ readonly type: "uint256";
1778
+ }, {
1779
+ readonly internalType: "bool";
1780
+ readonly name: "configured";
1781
+ readonly type: "bool";
1782
+ }];
1783
+ readonly stateMutability: "view";
1784
+ readonly type: "function";
1054
1785
  }, {
1055
1786
  readonly inputs: readonly [{
1056
1787
  readonly internalType: "address[]";
@@ -1085,48 +1816,270 @@ export declare class Escrow__factory extends ContractFactory {
1085
1816
  readonly name: "end";
1086
1817
  readonly type: "uint256";
1087
1818
  }];
1088
- readonly name: "reset_request_ids";
1819
+ readonly name: "reset_admin_request_ids";
1089
1820
  readonly outputs: readonly [];
1090
1821
  readonly stateMutability: "nonpayable";
1091
1822
  readonly type: "function";
1092
1823
  }, {
1093
1824
  readonly inputs: readonly [{
1094
- readonly internalType: "bytes32";
1095
- readonly name: "role";
1096
- readonly type: "bytes32";
1825
+ readonly internalType: "uint256";
1826
+ readonly name: "start";
1827
+ readonly type: "uint256";
1097
1828
  }, {
1098
- readonly internalType: "address";
1099
- readonly name: "account";
1100
- readonly type: "address";
1829
+ readonly internalType: "uint256";
1830
+ readonly name: "end";
1831
+ readonly type: "uint256";
1101
1832
  }];
1102
- readonly name: "revokeRole";
1833
+ readonly name: "reset_request_ids";
1103
1834
  readonly outputs: readonly [];
1104
1835
  readonly stateMutability: "nonpayable";
1105
1836
  readonly type: "function";
1106
1837
  }, {
1107
1838
  readonly inputs: readonly [{
1839
+ readonly internalType: "bytes32";
1840
+ readonly name: "role";
1841
+ readonly type: "bytes32";
1842
+ }, {
1108
1843
  readonly internalType: "address";
1109
- readonly name: "_operator";
1844
+ readonly name: "account";
1110
1845
  readonly type: "address";
1111
1846
  }];
1112
- readonly name: "setOperator";
1847
+ readonly name: "revokeRole";
1113
1848
  readonly outputs: readonly [];
1114
1849
  readonly stateMutability: "nonpayable";
1115
1850
  readonly type: "function";
1116
1851
  }, {
1117
1852
  readonly inputs: readonly [{
1118
- readonly internalType: "uint256";
1119
- readonly name: "totalCount";
1120
- readonly type: "uint256";
1853
+ readonly components: readonly [{
1854
+ readonly internalType: "enum Types.OperationType";
1855
+ readonly name: "operationType";
1856
+ readonly type: "uint8";
1857
+ }, {
1858
+ readonly internalType: "uint8";
1859
+ readonly name: "sigsManagerRequired";
1860
+ readonly type: "uint8";
1861
+ }, {
1862
+ readonly internalType: "uint8";
1863
+ readonly name: "sigsExecutiveRequired";
1864
+ readonly type: "uint8";
1865
+ }, {
1866
+ readonly internalType: "uint256";
1867
+ readonly name: "nonce";
1868
+ readonly type: "uint256";
1869
+ }];
1870
+ readonly internalType: "struct Types.SetAdminMultisigConfigSignData";
1871
+ readonly name: "configData";
1872
+ readonly type: "tuple";
1121
1873
  }, {
1122
- readonly internalType: "uint256";
1123
- readonly name: "blockNumber";
1124
- readonly type: "uint256";
1874
+ readonly components: readonly [{
1875
+ readonly internalType: "uint8";
1876
+ readonly name: "v";
1877
+ readonly type: "uint8";
1878
+ }, {
1879
+ readonly internalType: "bytes32";
1880
+ readonly name: "r";
1881
+ readonly type: "bytes32";
1882
+ }, {
1883
+ readonly internalType: "bytes32";
1884
+ readonly name: "s";
1885
+ readonly type: "bytes32";
1886
+ }];
1887
+ readonly internalType: "struct Types.Signature[]";
1888
+ readonly name: "signatures";
1889
+ readonly type: "tuple[]";
1890
+ }];
1891
+ readonly name: "setAdminTokenMultisigThreshold";
1892
+ readonly outputs: readonly [];
1893
+ readonly stateMutability: "nonpayable";
1894
+ readonly type: "function";
1895
+ }, {
1896
+ readonly inputs: readonly [{
1897
+ readonly internalType: "enum Types.OperationType";
1898
+ readonly name: "opType";
1899
+ readonly type: "uint8";
1900
+ }, {
1901
+ readonly internalType: "uint8";
1902
+ readonly name: "sigsManager";
1903
+ readonly type: "uint8";
1904
+ }, {
1905
+ readonly internalType: "uint8";
1906
+ readonly name: "sigsExecutive";
1907
+ readonly type: "uint8";
1908
+ }];
1909
+ readonly name: "setGroupConfig";
1910
+ readonly outputs: readonly [];
1911
+ readonly stateMutability: "nonpayable";
1912
+ readonly type: "function";
1913
+ }, {
1914
+ readonly inputs: readonly [{
1915
+ readonly components: readonly [{
1916
+ readonly internalType: "enum Types.OperationType";
1917
+ readonly name: "operationType";
1918
+ readonly type: "uint8";
1919
+ }, {
1920
+ readonly internalType: "address";
1921
+ readonly name: "tokenAddress";
1922
+ readonly type: "address";
1923
+ }, {
1924
+ readonly internalType: "uint256";
1925
+ readonly name: "thresholdAmount";
1926
+ readonly type: "uint256";
1927
+ }, {
1928
+ readonly internalType: "uint256";
1929
+ readonly name: "durationBelow";
1930
+ readonly type: "uint256";
1931
+ }, {
1932
+ readonly internalType: "uint256";
1933
+ readonly name: "durationAbove";
1934
+ readonly type: "uint256";
1935
+ }, {
1936
+ readonly internalType: "uint256";
1937
+ readonly name: "nonce";
1938
+ readonly type: "uint256";
1939
+ }];
1940
+ readonly internalType: "struct Types.SetTimelockConfigSignData";
1941
+ readonly name: "configData";
1942
+ readonly type: "tuple";
1943
+ }, {
1944
+ readonly components: readonly [{
1945
+ readonly internalType: "uint8";
1946
+ readonly name: "v";
1947
+ readonly type: "uint8";
1948
+ }, {
1949
+ readonly internalType: "bytes32";
1950
+ readonly name: "r";
1951
+ readonly type: "bytes32";
1952
+ }, {
1953
+ readonly internalType: "bytes32";
1954
+ readonly name: "s";
1955
+ readonly type: "bytes32";
1956
+ }];
1957
+ readonly internalType: "struct Types.Signature[]";
1958
+ readonly name: "signatures";
1959
+ readonly type: "tuple[]";
1960
+ }];
1961
+ readonly name: "setTimelock";
1962
+ readonly outputs: readonly [];
1963
+ readonly stateMutability: "nonpayable";
1964
+ readonly type: "function";
1965
+ }, {
1966
+ readonly inputs: readonly [{
1967
+ readonly components: readonly [{
1968
+ readonly internalType: "enum Types.OperationType";
1969
+ readonly name: "operationType";
1970
+ readonly type: "uint8";
1971
+ }, {
1972
+ readonly internalType: "address";
1973
+ readonly name: "receiverAddress";
1974
+ readonly type: "address";
1975
+ }, {
1976
+ readonly internalType: "uint256";
1977
+ readonly name: "duration";
1978
+ readonly type: "uint256";
1979
+ }, {
1980
+ readonly internalType: "uint256";
1981
+ readonly name: "nonce";
1982
+ readonly type: "uint256";
1983
+ }];
1984
+ readonly internalType: "struct Types.SetReceiverTimelockConfigSignData";
1985
+ readonly name: "configData";
1986
+ readonly type: "tuple";
1987
+ }, {
1988
+ readonly components: readonly [{
1989
+ readonly internalType: "uint8";
1990
+ readonly name: "v";
1991
+ readonly type: "uint8";
1992
+ }, {
1993
+ readonly internalType: "bytes32";
1994
+ readonly name: "r";
1995
+ readonly type: "bytes32";
1996
+ }, {
1997
+ readonly internalType: "bytes32";
1998
+ readonly name: "s";
1999
+ readonly type: "bytes32";
2000
+ }];
2001
+ readonly internalType: "struct Types.Signature[]";
2002
+ readonly name: "signatures";
2003
+ readonly type: "tuple[]";
1125
2004
  }];
1126
- readonly name: "setTransactionStatus";
2005
+ readonly name: "setTimelockGranular";
1127
2006
  readonly outputs: readonly [];
1128
2007
  readonly stateMutability: "nonpayable";
1129
2008
  readonly type: "function";
2009
+ }, {
2010
+ readonly inputs: readonly [{
2011
+ readonly components: readonly [{
2012
+ readonly internalType: "enum Types.OperationType";
2013
+ readonly name: "operationType";
2014
+ readonly type: "uint8";
2015
+ }, {
2016
+ readonly internalType: "address";
2017
+ readonly name: "tokenAddress";
2018
+ readonly type: "address";
2019
+ }, {
2020
+ readonly internalType: "uint256";
2021
+ readonly name: "thresholdAmount";
2022
+ readonly type: "uint256";
2023
+ }, {
2024
+ readonly internalType: "uint8";
2025
+ readonly name: "sigsExecutiveBelow";
2026
+ readonly type: "uint8";
2027
+ }, {
2028
+ readonly internalType: "uint8";
2029
+ readonly name: "sigsExecutiveAbove";
2030
+ readonly type: "uint8";
2031
+ }, {
2032
+ readonly internalType: "uint8";
2033
+ readonly name: "sigsBelow";
2034
+ readonly type: "uint8";
2035
+ }, {
2036
+ readonly internalType: "uint8";
2037
+ readonly name: "sigsAbove";
2038
+ readonly type: "uint8";
2039
+ }, {
2040
+ readonly internalType: "uint256";
2041
+ readonly name: "nonce";
2042
+ readonly type: "uint256";
2043
+ }];
2044
+ readonly internalType: "struct Types.SetMultisigConfigSignData";
2045
+ readonly name: "configData";
2046
+ readonly type: "tuple";
2047
+ }, {
2048
+ readonly components: readonly [{
2049
+ readonly internalType: "uint8";
2050
+ readonly name: "v";
2051
+ readonly type: "uint8";
2052
+ }, {
2053
+ readonly internalType: "bytes32";
2054
+ readonly name: "r";
2055
+ readonly type: "bytes32";
2056
+ }, {
2057
+ readonly internalType: "bytes32";
2058
+ readonly name: "s";
2059
+ readonly type: "bytes32";
2060
+ }];
2061
+ readonly internalType: "struct Types.Signature[]";
2062
+ readonly name: "signatures";
2063
+ readonly type: "tuple[]";
2064
+ }];
2065
+ readonly name: "setTokenMultisigThreshold";
2066
+ readonly outputs: readonly [];
2067
+ readonly stateMutability: "nonpayable";
2068
+ readonly type: "function";
2069
+ }, {
2070
+ readonly inputs: readonly [{
2071
+ readonly internalType: "address";
2072
+ readonly name: "";
2073
+ readonly type: "address";
2074
+ }];
2075
+ readonly name: "signerBitmap";
2076
+ readonly outputs: readonly [{
2077
+ readonly internalType: "uint8";
2078
+ readonly name: "";
2079
+ readonly type: "uint8";
2080
+ }];
2081
+ readonly stateMutability: "view";
2082
+ readonly type: "function";
1130
2083
  }, {
1131
2084
  readonly inputs: readonly [{
1132
2085
  readonly internalType: "bytes4";
@@ -1159,6 +2112,146 @@ export declare class Escrow__factory extends ContractFactory {
1159
2112
  }];
1160
2113
  readonly stateMutability: "payable";
1161
2114
  readonly type: "function";
2115
+ }, {
2116
+ readonly inputs: readonly [{
2117
+ readonly internalType: "bytes32";
2118
+ readonly name: "";
2119
+ readonly type: "bytes32";
2120
+ }];
2121
+ readonly name: "timelockCommitments";
2122
+ readonly outputs: readonly [{
2123
+ readonly internalType: "bool";
2124
+ readonly name: "";
2125
+ readonly type: "bool";
2126
+ }];
2127
+ readonly stateMutability: "view";
2128
+ readonly type: "function";
2129
+ }, {
2130
+ readonly inputs: readonly [{
2131
+ readonly internalType: "address";
2132
+ readonly name: "";
2133
+ readonly type: "address";
2134
+ }];
2135
+ readonly name: "timelockConfig";
2136
+ readonly outputs: readonly [{
2137
+ readonly internalType: "uint256";
2138
+ readonly name: "thresholdAmount";
2139
+ readonly type: "uint256";
2140
+ }, {
2141
+ readonly internalType: "uint256";
2142
+ readonly name: "durationBelow";
2143
+ readonly type: "uint256";
2144
+ }, {
2145
+ readonly internalType: "uint256";
2146
+ readonly name: "durationAbove";
2147
+ readonly type: "uint256";
2148
+ }, {
2149
+ readonly internalType: "bool";
2150
+ readonly name: "configured";
2151
+ readonly type: "bool";
2152
+ }];
2153
+ readonly stateMutability: "view";
2154
+ readonly type: "function";
2155
+ }, {
2156
+ readonly inputs: readonly [];
2157
+ readonly name: "timelockConfigNonce";
2158
+ readonly outputs: readonly [{
2159
+ readonly internalType: "uint256";
2160
+ readonly name: "";
2161
+ readonly type: "uint256";
2162
+ }];
2163
+ readonly stateMutability: "view";
2164
+ readonly type: "function";
2165
+ }, {
2166
+ readonly inputs: readonly [];
2167
+ readonly name: "timelockThresholdSettings";
2168
+ readonly outputs: readonly [{
2169
+ readonly internalType: "uint256";
2170
+ readonly name: "";
2171
+ readonly type: "uint256";
2172
+ }];
2173
+ readonly stateMutability: "view";
2174
+ readonly type: "function";
2175
+ }, {
2176
+ readonly inputs: readonly [{
2177
+ readonly internalType: "address";
2178
+ readonly name: "";
2179
+ readonly type: "address";
2180
+ }];
2181
+ readonly name: "tokenThresholdSettings";
2182
+ readonly outputs: readonly [{
2183
+ readonly internalType: "uint256";
2184
+ readonly name: "";
2185
+ readonly type: "uint256";
2186
+ }];
2187
+ readonly stateMutability: "view";
2188
+ readonly type: "function";
2189
+ }, {
2190
+ readonly inputs: readonly [{
2191
+ readonly internalType: "uint256";
2192
+ readonly name: "packed";
2193
+ readonly type: "uint256";
2194
+ }];
2195
+ readonly name: "unpackAdminThresholds";
2196
+ readonly outputs: readonly [{
2197
+ readonly components: readonly [{
2198
+ readonly internalType: "uint8";
2199
+ readonly name: "sigsManagerRequired";
2200
+ readonly type: "uint8";
2201
+ }, {
2202
+ readonly internalType: "uint8";
2203
+ readonly name: "sigsExecutiveRequired";
2204
+ readonly type: "uint8";
2205
+ }, {
2206
+ readonly internalType: "bool";
2207
+ readonly name: "configured";
2208
+ readonly type: "bool";
2209
+ }];
2210
+ readonly internalType: "struct Types.AdminMultisigConfig";
2211
+ readonly name: "";
2212
+ readonly type: "tuple";
2213
+ }];
2214
+ readonly stateMutability: "view";
2215
+ readonly type: "function";
2216
+ }, {
2217
+ readonly inputs: readonly [{
2218
+ readonly internalType: "uint256";
2219
+ readonly name: "packed";
2220
+ readonly type: "uint256";
2221
+ }];
2222
+ readonly name: "unpackTokenThresholds";
2223
+ readonly outputs: readonly [{
2224
+ readonly components: readonly [{
2225
+ readonly internalType: "uint256";
2226
+ readonly name: "thresholdAmount";
2227
+ readonly type: "uint256";
2228
+ }, {
2229
+ readonly internalType: "uint8";
2230
+ readonly name: "sigsExecutiveBelow";
2231
+ readonly type: "uint8";
2232
+ }, {
2233
+ readonly internalType: "uint8";
2234
+ readonly name: "sigsExecutiveAbove";
2235
+ readonly type: "uint8";
2236
+ }, {
2237
+ readonly internalType: "uint8";
2238
+ readonly name: "sigsBelow";
2239
+ readonly type: "uint8";
2240
+ }, {
2241
+ readonly internalType: "uint8";
2242
+ readonly name: "sigsAbove";
2243
+ readonly type: "uint8";
2244
+ }, {
2245
+ readonly internalType: "bool";
2246
+ readonly name: "configured";
2247
+ readonly type: "bool";
2248
+ }];
2249
+ readonly internalType: "struct Types.MultisigConfig";
2250
+ readonly name: "";
2251
+ readonly type: "tuple";
2252
+ }];
2253
+ readonly stateMutability: "view";
2254
+ readonly type: "function";
1162
2255
  }, {
1163
2256
  readonly inputs: readonly [];
1164
2257
  readonly name: "unpause";
@@ -1218,6 +2311,62 @@ export declare class Escrow__factory extends ContractFactory {
1218
2311
  readonly outputs: readonly [];
1219
2312
  readonly stateMutability: "nonpayable";
1220
2313
  readonly type: "function";
2314
+ }, {
2315
+ readonly inputs: readonly [{
2316
+ readonly internalType: "uint256";
2317
+ readonly name: "amount";
2318
+ readonly type: "uint256";
2319
+ }, {
2320
+ readonly internalType: "uint256";
2321
+ readonly name: "requestId";
2322
+ readonly type: "uint256";
2323
+ }, {
2324
+ readonly internalType: "address";
2325
+ readonly name: "tokenAddress";
2326
+ readonly type: "address";
2327
+ }, {
2328
+ readonly internalType: "address";
2329
+ readonly name: "receiverAddress";
2330
+ readonly type: "address";
2331
+ }, {
2332
+ readonly components: readonly [{
2333
+ readonly internalType: "uint8";
2334
+ readonly name: "v";
2335
+ readonly type: "uint8";
2336
+ }, {
2337
+ readonly internalType: "bytes32";
2338
+ readonly name: "r";
2339
+ readonly type: "bytes32";
2340
+ }, {
2341
+ readonly internalType: "bytes32";
2342
+ readonly name: "s";
2343
+ readonly type: "bytes32";
2344
+ }];
2345
+ readonly internalType: "struct Types.Signature";
2346
+ readonly name: "operatorSignature";
2347
+ readonly type: "tuple";
2348
+ }, {
2349
+ readonly components: readonly [{
2350
+ readonly internalType: "uint8";
2351
+ readonly name: "v";
2352
+ readonly type: "uint8";
2353
+ }, {
2354
+ readonly internalType: "bytes32";
2355
+ readonly name: "r";
2356
+ readonly type: "bytes32";
2357
+ }, {
2358
+ readonly internalType: "bytes32";
2359
+ readonly name: "s";
2360
+ readonly type: "bytes32";
2361
+ }];
2362
+ readonly internalType: "struct Types.Signature[]";
2363
+ readonly name: "signatures";
2364
+ readonly type: "tuple[]";
2365
+ }];
2366
+ readonly name: "withdrawWithTimelock";
2367
+ readonly outputs: readonly [];
2368
+ readonly stateMutability: "nonpayable";
2369
+ readonly type: "function";
1221
2370
  }, {
1222
2371
  readonly stateMutability: "payable";
1223
2372
  readonly type: "receive";