@ercworldio/blockchain-shared 1.0.2-dev.9 → 1.0.3-dev.0-PROJ-1281
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.
- package/build/chains/networks_dev.json +65 -17
- package/build/chains/networks_prod-bu.json +52 -13
- package/build/chains/networks_prod-dz.json +64 -16
- package/build/chains/networks_stg-bu.json +54 -14
- package/build/chains/networks_stg-dz.json +69 -18
- package/build/chains/networks_stg-sh.json +573 -0
- package/build/chains/networks_stg-yb.json +573 -0
- package/build/chains/stg-sh.json +93 -0
- package/build/contracts/Escrow.d.ts +1 -1
- package/build/contracts/Escrow.d.ts.map +1 -1
- package/build/contracts/Escrow.js +2 -2
- package/build/contracts/artifacts/Escrow.json +16 -0
- package/build/contracts/typechain-types/@openzeppelin/contracts/interfaces/IERC1363.d.ts +232 -0
- package/build/contracts/typechain-types/@openzeppelin/contracts/interfaces/IERC1363.d.ts.map +1 -0
- package/build/contracts/typechain-types/@openzeppelin/contracts/interfaces/IERC1363.js +2 -0
- package/build/contracts/typechain-types/@openzeppelin/contracts/interfaces/index.d.ts +1 -0
- package/build/contracts/typechain-types/@openzeppelin/contracts/interfaces/index.d.ts.map +1 -1
- package/build/contracts/typechain-types/@openzeppelin/contracts/token/ERC20/index.d.ts +2 -0
- package/build/contracts/typechain-types/@openzeppelin/contracts/token/ERC20/index.d.ts.map +1 -1
- package/build/contracts/typechain-types/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.d.ts +21 -0
- package/build/contracts/typechain-types/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.d.ts.map +1 -0
- package/build/contracts/typechain-types/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.js +2 -0
- package/build/contracts/typechain-types/@openzeppelin/contracts/token/ERC20/utils/index.d.ts +2 -0
- package/build/contracts/typechain-types/@openzeppelin/contracts/token/ERC20/utils/index.d.ts.map +1 -0
- package/build/contracts/typechain-types/@openzeppelin/contracts/token/ERC20/utils/index.js +2 -0
- package/build/contracts/typechain-types/contracts/escrow/Escrow.d.ts +5 -3
- package/build/contracts/typechain-types/contracts/escrow/Escrow.d.ts.map +1 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1363__factory.d.ts +290 -0
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1363__factory.d.ts.map +1 -0
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1363__factory.js +390 -0
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/interfaces/index.d.ts +1 -0
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/interfaces/index.d.ts.map +1 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/interfaces/index.js +3 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts +1 -0
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts.map +1 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/token/ERC20/index.js +2 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory.d.ts +47 -0
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory.d.ts.map +1 -0
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory.js +71 -0
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/index.d.ts +2 -0
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/index.d.ts.map +1 -0
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/index.js +8 -0
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.d.ts +1 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.d.ts.map +1 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.js +1 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.d.ts +1 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.d.ts.map +1 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.js +1 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.d.ts +1 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.d.ts.map +1 -1
- package/build/contracts/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.js +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/EscrowAccessControl__factory.d.ts +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/EscrowAccessControl__factory.d.ts.map +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/EscrowAccessControl__factory.js +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/EscrowErrors__factory.d.ts +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/EscrowErrors__factory.d.ts.map +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/EscrowErrors__factory.js +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/EscrowSignature__factory.d.ts +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/EscrowSignature__factory.d.ts.map +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/EscrowSignature__factory.js +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/Escrow__factory.d.ts +13 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/Escrow__factory.d.ts.map +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/Escrow__factory.js +17 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/TokensWhitelist__factory.d.ts +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/TokensWhitelist__factory.d.ts.map +1 -1
- package/build/contracts/typechain-types/factories/contracts/escrow/TokensWhitelist__factory.js +1 -1
- package/build/contracts/typechain-types/index.d.ts +4 -0
- package/build/contracts/typechain-types/index.d.ts.map +1 -1
- package/build/contracts/typechain-types/index.js +5 -1
- package/build/interfaces.d.ts +5 -1
- package/build/interfaces.d.ts.map +1 -1
- package/build/interfaces.js +1 -0
- package/build/services/Redis.d.ts +9 -0
- package/build/services/Redis.d.ts.map +1 -1
- package/build/services/Redis.js +63 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Escrow__factory.d.ts","sourceRoot":"","sources":["../../../../../../src/contracts/typechain-types/factories/contracts/escrow/Escrow__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AA+
|
|
1
|
+
{"version":3,"file":"Escrow__factory.d.ts","sourceRoot":"","sources":["../../../../../../src/contracts/typechain-types/factories/contracts/escrow/Escrow__factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -145,6 +145,17 @@ const _abi = [
|
|
|
145
145
|
name: "RequestAlreadyFulfilled",
|
|
146
146
|
type: "error",
|
|
147
147
|
},
|
|
148
|
+
{
|
|
149
|
+
inputs: [
|
|
150
|
+
{
|
|
151
|
+
internalType: "address",
|
|
152
|
+
name: "token",
|
|
153
|
+
type: "address",
|
|
154
|
+
},
|
|
155
|
+
],
|
|
156
|
+
name: "SafeERC20FailedOperation",
|
|
157
|
+
type: "error",
|
|
158
|
+
},
|
|
148
159
|
{
|
|
149
160
|
inputs: [],
|
|
150
161
|
name: "SignatureAlreadyUsed",
|
|
@@ -701,6 +712,11 @@ const _abi = [
|
|
|
701
712
|
name: "jobs",
|
|
702
713
|
type: "tuple[]",
|
|
703
714
|
},
|
|
715
|
+
{
|
|
716
|
+
internalType: "address payable",
|
|
717
|
+
name: "receiver",
|
|
718
|
+
type: "address",
|
|
719
|
+
},
|
|
704
720
|
],
|
|
705
721
|
name: "batchSweepERC20",
|
|
706
722
|
outputs: [
|
|
@@ -1550,7 +1566,7 @@ const _abi = [
|
|
|
1550
1566
|
type: "receive",
|
|
1551
1567
|
},
|
|
1552
1568
|
];
|
|
1553
|
-
const _bytecode = "0x608060405234801561001057600080fd5b50613ab6806100206000396000f3fe6080604052600436106102815760003560e01c80639b19251a1161014f578063c688aa64116100c1578063e5b6337b1161007a578063e5b6337b1461080c578063e88e5cd41461082c578063f470c7e21461084c578063f5b541a614610879578063f8b2cb4f1461089b578063fc50455f146108bb57600080fd5b8063c688aa6414610711578063cb60ff3414610731578063d37dbaa21461077c578063d547741f1461079c578063d8a4676f146107bc578063e20c103c146107ec57600080fd5b8063b187bd2611610113578063b187bd261461065b578063b3ab15fb1461067a578063b5c604ff1461069a578063c2102964146106af578063c4707a83146106cf578063c67515dd146106f157600080fd5b80639b19251a1461059e578063a217fddf146105ce578063a3a00072146105e3578063a44617d914610603578063ac21242d1461062357600080fd5b80633f4ba83a116101f35780637ecebe00116101ac5780637ecebe00146104e05780638456cb5914610516578063853954741461052b57806385fb709d1461054b5780638f2839701461055e57806391d148541461057e57600080fd5b80633f4ba83a146104435780634ae05c7d14610458578063518713d2146104785780635ae6256d146104985780636c3824ef146104ad5780637c13ba64146104cd57600080fd5b80632f2ff15d116102455780632f2ff15d1461038d57806331993fdf146103ad5780633644e515146103cd57806336568abe146103e35780633aa98a94146104035780633af32abf1461042357600080fd5b806301ffc9a7146102c957806311a4b2d0146102fe57806312065fe01461032057806312f5ea401461033d578063248a9ca31461035d57600080fd5b366102c4577fb0afe9a71610967b99fda7fda0ed1e6ff47851924352fdf759922dd542725941336000346040516102ba93929190612fce565b60405180910390a1005b600080fd5b3480156102d557600080fd5b506102e96102e4366004612ff2565b6108e8565b60405190151581526020015b60405180910390f35b34801561030a57600080fd5b5061031e610319366004613023565b61091f565b005b34801561032c57600080fd5b50475b6040519081526020016102f5565b34801561034957600080fd5b5061031e61035836600461305c565b610a14565b34801561036957600080fd5b5061032f610378366004613098565b60009081526020819052604090206001015490565b34801561039957600080fd5b5061031e6103a83660046130b1565b610c7f565b3480156103b957600080fd5b5061031e6103c8366004613192565b610caa565b3480156103d957600080fd5b5061032f60015481565b3480156103ef57600080fd5b5061031e6103fe3660046130b1565b610ceb565b34801561040f57600080fd5b5061031e61041e3660046131f5565b610d1e565b34801561042f57600080fd5b506102e961043e366004613221565b610dc7565b34801561044f57600080fd5b5061031e610de5565b34801561046457600080fd5b5061031e6104733660046132d1565b610e3d565b34801561048457600080fd5b506102e9610493366004613221565b610e94565b3480156104a457600080fd5b5060985461032f565b3480156104b957600080fd5b5061031e6104c83660046132d1565b610ebe565b61031e6104db36600461336d565b610f12565b3480156104ec57600080fd5b5061032f6104fb366004613221565b6001600160a01b031660009081526099602052604090205490565b34801561052257600080fd5b5061031e6110b6565b34801561053757600080fd5b5061031e610546366004613023565b611112565b6102e96105593660046133b8565b611192565b34801561056a57600080fd5b5061031e610579366004613221565b611442565b34801561058a57600080fd5b506102e96105993660046130b1565b6114a4565b3480156105aa57600080fd5b506102e96105b9366004613221565b60336020526000908152604090205460ff1681565b3480156105da57600080fd5b5061032f600081565b3480156105ef57600080fd5b5061031e6105fe3660046133e2565b6114cd565b34801561060f57600080fd5b506102e961061e366004613426565b611685565b34801561062f57600080fd5b5061064361063e36600461349a565b611920565b6040516001600160a01b0390911681526020016102f5565b34801561066757600080fd5b50609b546102e990610100900460ff1681565b34801561068657600080fd5b5061031e610695366004613221565b611996565b3480156106a657600080fd5b5060975461032f565b3480156106bb57600080fd5b5061031e6106ca3660046134f2565b611a1f565b3480156106db57600080fd5b5061032f600080516020613a4183398151915281565b3480156106fd57600080fd5b5061032f61070c366004613554565b611d65565b34801561071d57600080fd5b5061031e61072c36600461358f565b611dd9565b34801561073d57600080fd5b506040805180820182526000808252602091820152815180830183526097548082526098549183019182528351908152905191810191909152016102f5565b34801561078857600080fd5b5061064361079736600461349a565b611f09565b3480156107a857600080fd5b5061031e6107b73660046130b1565b611f5f565b3480156107c857600080fd5b506102e96107d7366004613098565b6000908152609c602052604090205460ff1690565b3480156107f857600080fd5b5061031e6108073660046132d1565b611f84565b34801561081857600080fd5b5061031e610827366004613613565b611f8c565b34801561083857600080fd5b5061031e610847366004613676565b6121fc565b34801561085857600080fd5b5061086c6108673660046136c2565b61245d565b6040516102f59190613752565b34801561088557600080fd5b5061032f600080516020613a6183398151915281565b3480156108a757600080fd5b5061032f6108b6366004613221565b6125a0565b3480156108c757600080fd5b506108db6108d63660046130b1565b61260b565b6040516102f591906137ac565b60006001600160e01b03198216637965db0b60e01b148061091957506301ffc9a760e01b6001600160e01b03198316145b92915050565b61092a6000336114a4565b15801561094c575061094a600080516020613a41833981519152336114a4565b155b1561096a5760405163ea8e4eb560e01b815260040160405180910390fd5b8082106109be5760405162461bcd60e51b815260206004820152601b60248201527f5374617274206d757374206265206c657373207468616e20656e64000000000060448201526064015b60405180910390fd5b60326109ca8383613809565b106109d457600080fd5b815b6109e0828461381c565b811015610a0f576000818152609c60205260409020805460ff1916905580610a078161382f565b9150506109d6565b505050565b610a1f6000336114a4565b610a3c57604051637bfa4b9f60e01b815260040160405180910390fd5b6001600160a01b038116610a925760405162461bcd60e51b815260206004820152601f60248201527f43616e6e6f74207472616e7366657220746f207a65726f20616464726573730060448201526064016109b5565b82610a9c8361279a565b1015610abb5760405163128bd24d60e31b815260040160405180910390fd5b6001600160a01b038216610b6a576000816001600160a01b03168460405160006040518083038185875af1925050503d8060008114610b16576040519150601f19603f3d011682016040523d82523d6000602084013e610b1b565b606091505b5050905080610b645760405162461bcd60e51b8152602060048201526015602482015274115d1a195c881d1c985b9cd9995c8819985a5b1959605a1b60448201526064016109b5565b50610c2a565b60405163a9059cbb60e01b81526001600160a01b038281166004830152602482018590526000919084169063a9059cbb906044016020604051808303816000875af1158015610bbd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be19190613848565b905080610c285760405162461bcd60e51b8152602060048201526015602482015274151bdad95b881d1c985b9cd9995c8819985a5b1959605a1b60448201526064016109b5565b505b604080513381526001600160a01b0383811660208301528183018690528416606082015290517f55dba1a9b1cf7e607f75e6920591e36d121fa2899fbf31c777439ee694747b7b9181900360800190a1505050565b600082815260208190526040902060010154610c9a816127b9565b610ca483836127c3565b50505050565b610cb2612855565b610ce46040518060800160405280848152602001838152602001468152602001306001600160a01b031681525061287c565b6001555050565b6001600160a01b0381163314610d145760405163334bd91960e11b815260040160405180910390fd5b610a0f8282612919565b610d26612855565b606580546001600160a01b0319166001600160a01b038516179055610d4c6000836114a4565b610d5d57610d5b6000836127c3565b505b610d75600080516020613a61833981519152846114a4565b610d9357610d91600080516020613a61833981519152846127c3565b505b610dab600080516020613a41833981519152826114a4565b610a0f57610ca4600080516020613a41833981519152826127c3565b6001600160a01b031660009081526033602052604090205460ff1690565b610df06000336114a4565b158015610e125750610e10600080516020613a61833981519152336114a4565b155b15610e305760405163ea8e4eb560e01b815260040160405180910390fd5b609b805461ff0019169055565b610e486000336114a4565b158015610e6a5750610e68600080516020613a61833981519152336114a4565b155b15610e885760405163ea8e4eb560e01b815260040160405180910390fd5b610e9181612984565b50565b6000610ea081836114a4565b806109195750610919600080516020613a41833981519152836114a4565b610ec96000336114a4565b158015610eeb5750610ee9600080516020613a61833981519152336114a4565b155b15610f095760405163ea8e4eb560e01b815260040160405180910390fd5b610e9181612aa4565b609b54610100900460ff1615610f3b5760405163ab35696f60e01b815260040160405180910390fd5b610f456000610dc7565b610f655760405163094403b760e41b8152600060048201526024016109b5565b34600003610f8657604051637c946ed760e01b815260040160405180910390fd5b600081604051602001610f99919061387b565b60408051601f1981840301815291815281516020928301206000818152609a90935291205490915060ff1615610fe25760405163900bb2c960e01b815260040160405180910390fd5b3360008181526099602052604081205461101492600080516020613a6183398151915292610599923492919088611920565b61103157604051638baa579f60e01b815260040160405180910390fd5b6000818152609a60209081526040808320805460ff19166001179055338352609990915281208054916110638361382f565b9190505550611070612bbf565b7fef519b7eb82aaf6ac376a6df2d793843ebfd593de5f1a0601d3cc6ab49ebb3953360003487876040516110a89594939291906138a7565b60405180910390a150505050565b6110c16000336114a4565b1580156110e357506110e1600080516020613a61833981519152336114a4565b155b156111015760405163ea8e4eb560e01b815260040160405180910390fd5b609b805461ff001916610100179055565b61111d6000336114a4565b61113a57604051637bfa4b9f60e01b815260040160405180910390fd5b60408051808201825283815260209081018390526097849055609883905581518481529081018390527fe8110342b5e43ae921859bc8dbf18018fcacba13fe16e5a7ea1239b8b5b8f287910160405180910390a15050565b609b54600090610100900460ff16156111be5760405163ab35696f60e01b815260040160405180910390fd5b609b5460ff16156111e257604051630ef7697f60e01b815260040160405180910390fd5b609b805460ff191660011790556111fa6000336114a4565b15801561121c575061121a600080516020613a41833981519152336114a4565b155b1561123a5760405163ea8e4eb560e01b815260040160405180910390fd5b306001600160a01b0384160361126357604051630d20048960e01b815260040160405180910390fd5b61126c82610dc7565b6112945760405163094403b760e41b81526001600160a01b03831660048201526024016109b5565b6001600160a01b03821661130a57346000036112c5576040516379ac219b60e01b81523360048201526024016109b5565b7f6b32cee72b480eef6a5aeccadee07046ade1c28fec1e418949908f7ac8d7d2283333306000346040516112fd9594939291906138fb565b60405180910390a1611430565b6040516370a0823160e01b81526001600160a01b038481166004830152600091908416906370a0823190602401602060405180830381865afa158015611354573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611378919061392e565b6040516323b872dd60e01b81529091506001600160a01b038416906323b872dd906113ab90879030908690600401612fce565b6020604051808303816000875af11580156113ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ee9190613848565b507f6b32cee72b480eef6a5aeccadee07046ade1c28fec1e418949908f7ac8d7d22833853086856040516114269594939291906138fb565b60405180910390a1505b5050609b805460ff1916905550600190565b61144d6000336114a4565b61146a57604051637bfa4b9f60e01b815260040160405180910390fd5b611475600033612919565b506114816000826127c3565b50606680546001600160a01b0319166001600160a01b0392909216919091179055565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b6114d86000336114a4565b1580156114fa57506114f8600080516020613a41833981519152336114a4565b155b156115185760405163ea8e4eb560e01b815260040160405180910390fd5b81516028101561153e5760405163af89cf2160e01b8152602860048201526024016109b5565b600061154a600061279a565b90508082845161155a9190613947565b106115785760405163128bd24d60e31b815260040160405180910390fd5b60005b83518163ffffffff161015611656576000848263ffffffff16815181106115a4576115a461395e565b60200260200101516001600160a01b03168460405160006040518083038185875af1925050503d80600081146115f6576040519150601f19603f3d011682016040523d82523d6000602084013e6115fb565b606091505b50509050806116435730858363ffffffff168151811061161d5761161d61395e565b60200260200101516000604051633ddff61360e21b81526004016109b593929190613974565b508061164e81613997565b91505061157b565b506040517f6e31901a2ad27bd7f19498c4681fc6611bf447147de120c3b5f65c249d59907790600090a1505050565b600061169181336114a4565b1580156116b357506116b1600080516020613a41833981519152336114a4565b155b156116d15760405163ea8e4eb560e01b815260040160405180910390fd5b60288211156116f65760405163af89cf2160e01b8152602860048201526024016109b5565b60005b828110156119165760008484838181106117155761171561395e565b61172b9260206040909202019081019150613221565b905060008585848181106117415761174161395e565b90506040020160200160208101906117599190613221565b90506001600160a01b03811661178257604051631b71aaf760e31b815260040160405180910390fd5b306001600160a01b038316036117ab57604051630d20048960e01b815260040160405180910390fd5b6117b481610dc7565b6117dc5760405163094403b760e41b81526001600160a01b03821660048201526024016109b5565b6040516370a0823160e01b81526001600160a01b038381166004830152600091908316906370a0823190602401602060405180830381865afa158015611826573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061184a919061392e565b6040516323b872dd60e01b81529091506001600160a01b038316906323b872dd9061187d90869030908690600401612fce565b6020604051808303816000875af115801561189c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118c09190613848565b507f6b32cee72b480eef6a5aeccadee07046ade1c28fec1e418949908f7ac8d7d22833843085856040516118f89594939291906138fb565b60405180910390a1505050808061190e9061382f565b9150506116f9565b5060019392505050565b6000806119766040518060a001604052806000600281111561194457611944613796565b8152602001898152602001886001600160a01b03168152602001876001600160a01b0316815260200186815250612be4565b8051602082012090915061198a8185612c4b565b98975050505050505050565b6119a16000336114a4565b6119be57604051637bfa4b9f60e01b815260040160405180910390fd5b6065546119e390600080516020613a61833981519152906001600160a01b0316612919565b506119fc600080516020613a61833981519152826127c3565b50606580546001600160a01b0319166001600160a01b0392909216919091179055565b611a2a6000336114a4565b158015611a4c5750611a4a600080516020613a41833981519152336114a4565b155b15611a6a5760405163ea8e4eb560e01b815260040160405180910390fd5b609b5460ff1615611a8e57604051630ef7697f60e01b815260040160405180910390fd5b609b805460ff191660011790556000819003611abd57604051630b8fc7cd60e21b815260040160405180910390fd5b6028811115611adf5760405163f726140760e01b815260040160405180910390fd5b60005b63ffffffff8116821115611d5657611b2383838363ffffffff16818110611b0b57611b0b61395e565b905060800201604001602081019061043e9190613221565b611b7c5782828263ffffffff16818110611b3f57611b3f61395e565b9050608002016040016020810190611b579190613221565b60405163094403b760e41b81526001600160a01b0390911660048201526024016109b5565b82828263ffffffff16818110611b9457611b9461395e565b90506080020160000135600003611bbe57604051637c946ed760e01b815260040160405180910390fd5b6000838363ffffffff8416818110611bd857611bd861395e565b9050608002016060016020810190611bf09190613221565b6001600160a01b031603611c175760405163d92e233d60e01b815260040160405180910390fd5b609c600084848463ffffffff16818110611c3357611c3361395e565b60206080909102929092018201358352508101919091526040016000205460ff1615611c975782828263ffffffff16818110611c7157611c7161395e565b90506080020160200135604051631409d1b760e21b81526004016109b591815260200190565b611d4483838363ffffffff16818110611cb257611cb261395e565b9050608002016000013584848463ffffffff16818110611cd457611cd461395e565b9050608002016020013585858563ffffffff16818110611cf657611cf661395e565b9050608002016040016020810190611d0e9190613221565b86868663ffffffff16818110611d2657611d2661395e565b9050608002016060016020810190611d3e9190613221565b86612d05565b80611d4e81613997565b915050611ae2565b5050609b805460ff1916905550565b600080826002811115611d7a57611d7a613796565b03611d9e57506001600160a01b038216600090815260996020526040902054610919565b6001826002811115611db257611db2613796565b0361091957506001600160a01b038216600090815260996020526040902060010154610919565b6000611de3612f01565b805490915060ff600160401b82041615906001600160401b0316600081158015611e0a5750825b90506000826001600160401b03166001148015611e265750303b155b905081158015611e34575080155b15611e525760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315611e7c57845460ff60401b1916600160401b1785555b611ea460405180604001604052806006815260200165457363726f7760d01b81525088610caa565b611ead86611f84565b611eb889338a610d1e565b8315611efe57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050505050565b6000806119766040518060a0016040528060016002811115611f2d57611f2d613796565b8152602001898152602001886001600160a01b03168152602001876001600160a01b0316815260200186815250612f2a565b600082815260208190526040902060010154611f7a816127b9565b610ca48383612919565b610e88612855565b609b54610100900460ff1615611fb55760405163ab35696f60e01b815260040160405180910390fd5b84600003611fd657604051637c946ed760e01b815260040160405180910390fd5b6001600160a01b038416611ffd576040516301cc396360e41b815260040160405180910390fd5b61200684610dc7565b61202e5760405163094403b760e41b81526001600160a01b03851660048201526024016109b5565b600081604051602001612041919061387b565b60408051601f1981840301815291815281516020928301206000818152609a90935291205490915060ff161561208a5760405163900bb2c960e01b815260040160405180910390fd5b336000818152609960205260409020546120bc91600080516020613a6183398151915291610599918a918a9088611920565b6120d957604051638baa579f60e01b815260040160405180910390fd5b6000818152609a60209081526040808320805460ff191660011790553383526099909152812080549161210b8361382f565b9190505550612118612bbf565b6040516323b872dd60e01b81526000906001600160a01b038716906323b872dd9061214b90339030908c90600401612fce565b6020604051808303816000875af115801561216a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061218e9190613848565b9050806121b457333087604051633ddff61360e21b81526004016109b593929190613974565b7fef519b7eb82aaf6ac376a6df2d793843ebfd593de5f1a0601d3cc6ab49ebb39533878988886040516121eb9594939291906138a7565b60405180910390a150505050505050565b609b54610100900460ff16156122255760405163ab35696f60e01b815260040160405180910390fd5b609b5460ff161561224957604051630ef7697f60e01b815260040160405180910390fd5b609b805460ff1916600117905561225f83610dc7565b6122875760405163094403b760e41b81526001600160a01b03841660048201526024016109b5565b846000036122a857604051637c946ed760e01b815260040160405180910390fd5b6001600160a01b0382166122cf5760405163d92e233d60e01b815260040160405180910390fd5b6000848152609c602052604090205460ff161561230257604051631409d1b760e21b8152600481018590526024016109b5565b600081604051602001612315919061387b565b60408051601f1981840301815291815281516020928301206000818152609a90935291205490915060ff161561235e5760405163900bb2c960e01b815260040160405180910390fd5b61237d600080516020613a618339815191526105998886888a88611f09565b61239a57604051638baa579f60e01b815260040160405180910390fd5b856123a48561279a565b101561241e577f2aa807c191208ec364a49ebc0018975f798050694e1695937b26706e4f0a88583385886123d78861279a565b604080516001600160a01b03958616815294909316602085015291830152606082015260800160405180910390a160405163128bd24d60e31b815260040160405180910390fd5b6000818152609a60205260409020805460ff1916600190811790915561244b908790879087908790612d05565b5050609b805460ff1916905550505050565b606061246a6000336114a4565b15801561248c575061248a600080516020613a41833981519152336114a4565b155b156124aa5760405163ea8e4eb560e01b815260040160405180910390fd5b602860ff16825160ff1611156124d35760405163f726140760e01b815260040160405180910390fd5b60408051600a808252610160820190925260009160208201610140803683370190505090506000805b845181101561259557609c600086838151811061251b5761251b61395e565b60209081029190910181015182528101919091526040016000205460ff1615612583578481815181106125505761255061395e565b602002602001015183838151811061256a5761256a61395e565b60209081029190910101528161257f8161382f565b9250505b8061258d8161382f565b9150506124fc565b50909150505b919050565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa1580156125e7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610919919061392e565b6040805160808101825260008082526020820181905291810182905260608101829052906126388361279a565b90508360000361267457604080516080810182526003815260146020820152908101919091526001600160a01b03831660608201529050610919565b60008461268983670de0b6b3a7640000613947565b61269391906139ba565b9050848210156126cf57506040805160808101825260008082526020820152908101919091526001600160a01b03831660608201529050610919565b6126e26014670de0b6b3a7640000613947565b811061271b5750604080516080810182526003815260146020820152908101919091526001600160a01b03831660608201529050610919565b61272e6005670de0b6b3a7640000613947565b81106127675750604080516080810182526002815260056020820152908101919091526001600160a01b03831660608201529050610919565b50604080516080810182526001815260026020820152908101919091526001600160a01b03831660608201529050610919565b60006001600160a01b0382166127b05747610919565b610919826125a0565b610e918133612f7b565b60006127cf83836114a4565b61284d576000838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556128053390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610919565b506000610919565b61285d612fb4565b61287a57604051631afcd79f60e31b815260040160405180910390fd5b565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f826000015180519060200120836020015180519060200120846040015185606001516040516020016128fc9594939291909485526020850193909352604084019190915260608301526001600160a01b0316608082015260a00190565b604051602081830303815290604052805190602001209050919050565b600061292583836114a4565b1561284d576000838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4506001610919565b60005b8151811015612aa057603360008383815181106129a6576129a661395e565b6020908102919091018101516001600160a01b0316825281019190915260400160009081205460ff1615159003612a8e576001603360008484815181106129ef576129ef61395e565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055507f784c8f4dbf0ffedd6e72c76501c545a70f8b203b30a26ce542bf92ba87c248a4828281518110612a6157612a6161395e565b6020026020010151604051612a8591906001600160a01b0391909116815260200190565b60405180910390a15b80612a988161382f565b915050612987565b5050565b60005b8151811015612aa05760336000838381518110612ac657612ac661395e565b6020908102919091018101516001600160a01b031682528101919091526040016000205460ff161515600103612bad57600060336000848481518110612b0e57612b0e61395e565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055507f4c910b69fe65a61f7531b9c5042b2329ca7179c77290aa7e2eb3afa3c8511fd3828281518110612b8057612b8061395e565b6020026020010151604051612ba491906001600160a01b0391909116815260200190565b60405180910390a15b80612bb78161382f565b915050612aa7565b60978054906000612bcf8361382f565b909155505060985443111561287a5743609855565b60607fe35cf8b8df51aa49768d4a7859037953b72f9188d7c60825dfd506ac7c8d430c82600001518360200151846040015185606001518660800151604051602001612c35969594939291906139dc565b6040516020818303038152906040529050919050565b60015460405161190160f01b6020820152602281019190915260428101839052600090819060620160408051601f19818403018152919052805160209182012091506001908290612c9e90860186613a25565b604080516000815260208181018084529490945260ff9092168282015291860135606082015290850135608082015260a0016020604051602081039080840390855afa158015612cf2573d6000803e3d6000fd5b5050604051601f19015195945050505050565b6000848152609c60209081526040808320805460ff191660019081179091553384526099909252822001805491612d3b8361382f565b9190505550612d48612bbf565b6001600160a01b038316612df85784471015612d775760405163128bd24d60e31b815260040160405180910390fd5b6000826001600160a01b03168660405160006040518083038185875af1925050503d8060008114612dc4576040519150601f19603f3d011682016040523d82523d6000602084013e612dc9565b606091505b5050905080612df25730836000604051633ddff61360e21b81526004016109b593929190613974565b50612e97565b60405163a9059cbb60e01b81526001600160a01b038381166004830152602482018790526000919085169063a9059cbb906044016020604051808303816000875af1158015612e4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e6f9190613848565b905080612e9557308385604051633ddff61360e21b81526004016109b593929190613974565b505b604080513381526001600160a01b038481166020830152851681830152606081018790526080810186905263ffffffff831660a082015290517ffc4d59a46f6143e0496645b06688cceb577d2d0439ad39ac0f1eaf3143a3a48e9181900360c00190a15050505050565b6000807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00610919565b60607f30df4329ee18debd99f937f6d70edc594d2957d5c194e77ab788df398c193af282600001518360200151846040015185606001518660800151604051602001612c35969594939291906139dc565b612f8582826114a4565b612aa05760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016109b5565b6000612fbe612f01565b54600160401b900460ff16919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b60006020828403121561300457600080fd5b81356001600160e01b03198116811461301c57600080fd5b9392505050565b6000806040838503121561303657600080fd5b50508035926020909101359150565b80356001600160a01b038116811461259b57600080fd5b60008060006060848603121561307157600080fd5b8335925061308160208501613045565b915061308f60408501613045565b90509250925092565b6000602082840312156130aa57600080fd5b5035919050565b600080604083850312156130c457600080fd5b823591506130d460208401613045565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561311b5761311b6130dd565b604052919050565b600082601f83011261313457600080fd5b81356001600160401b0381111561314d5761314d6130dd565b613160601f8201601f19166020016130f3565b81815284602083860101111561317557600080fd5b816020850160208301376000918101602001919091529392505050565b600080604083850312156131a557600080fd5b82356001600160401b03808211156131bc57600080fd5b6131c886838701613123565b935060208501359150808211156131de57600080fd5b506131eb85828601613123565b9150509250929050565b60008060006060848603121561320a57600080fd5b61321384613045565b925061308160208501613045565b60006020828403121561323357600080fd5b61301c82613045565b60006001600160401b03821115613255576132556130dd565b5060051b60200190565b600082601f83011261327057600080fd5b813560206132856132808361323c565b6130f3565b82815260059290921b840181019181810190868411156132a457600080fd5b8286015b848110156132c6576132b981613045565b83529183019183016132a8565b509695505050505050565b6000602082840312156132e357600080fd5b81356001600160401b038111156132f957600080fd5b6133058482850161325f565b949350505050565b60008083601f84011261331f57600080fd5b5081356001600160401b0381111561333657600080fd5b60208301915083602082850101111561334e57600080fd5b9250929050565b60006060828403121561336757600080fd5b50919050565b60008060006080848603121561338257600080fd5b83356001600160401b0381111561339857600080fd5b6133a48682870161330d565b909450925061308f90508560208601613355565b600080604083850312156133cb57600080fd5b6133d483613045565b91506130d460208401613045565b600080604083850312156133f557600080fd5b82356001600160401b0381111561340b57600080fd5b6134178582860161325f565b95602094909401359450505050565b6000806020838503121561343957600080fd5b82356001600160401b038082111561345057600080fd5b818501915085601f83011261346457600080fd5b81358181111561347357600080fd5b8660208260061b850101111561348857600080fd5b60209290920196919550909350505050565b600080600080600060e086880312156134b257600080fd5b853594506134c260208701613045565b93506134d060408701613045565b9250606086013591506134e68760808801613355565b90509295509295909350565b6000806020838503121561350557600080fd5b82356001600160401b038082111561351c57600080fd5b818501915085601f83011261353057600080fd5b81358181111561353f57600080fd5b8660208260071b850101111561348857600080fd5b6000806040838503121561356757600080fd5b61357083613045565b915060208301356003811061358457600080fd5b809150509250929050565b600080600080608085870312156135a557600080fd5b6135ae85613045565b93506135bc60208601613045565b925060408501356001600160401b03808211156135d857600080fd5b6135e488838901613123565b935060608701359150808211156135fa57600080fd5b506136078782880161325f565b91505092959194509250565b600080600080600060c0868803121561362b57600080fd5b8535945061363b60208701613045565b935060408601356001600160401b0381111561365657600080fd5b6136628882890161330d565b90945092506134e690508760608801613355565b600080600080600060e0868803121561368e57600080fd5b85359450602086013593506136a560408701613045565b92506136b360608701613045565b91506134e68760808801613355565b600060208083850312156136d557600080fd5b82356001600160401b038111156136eb57600080fd5b8301601f810185136136fc57600080fd5b803561370a6132808261323c565b81815260059190911b8201830190838101908783111561372957600080fd5b928401925b828410156137475783358252928401929084019061372e565b979650505050505050565b6020808252825182820181905260009190848201906040850190845b8181101561378a5783518352928401929184019160010161376e565b50909695505050505050565b634e487b7160e01b600052602160045260246000fd5b81516080820190600481106137c3576137c3613796565b825260208381015190830152604080840151908301526060928301516001600160a01b0316929091019190915290565b634e487b7160e01b600052601160045260246000fd5b81810381811115610919576109196137f3565b80820180821115610919576109196137f3565b600060018201613841576138416137f3565b5060010190565b60006020828403121561385a57600080fd5b8151801515811461301c57600080fd5b803560ff8116811461259b57600080fd5b6060810160ff61388a8461386a565b168252602083013560208301526040830135604083015292915050565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b6001600160a01b039586168152938516602085015291841660408401529092166060820152608081019190915260a00190565b60006020828403121561394057600080fd5b5051919050565b8082028115828204841417610919576109196137f3565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0393841681529183166020830152909116604082015260600190565b600063ffffffff8083168181036139b0576139b06137f3565b6001019392505050565b6000826139d757634e487b7160e01b600052601260045260246000fd5b500490565b86815260c08101600387106139f3576139f3613796565b602082019690965260408101949094526001600160a01b0392831660608501529116608083015260a090910152919050565b600060208284031215613a3757600080fd5b61301c8261386a56fe9d98d3d08f0062b192694645e127c98e5f96f3bbec331d061acaac3ace2327f997667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929a264697066735822122010119a0d251aa199117729e181e77749668c15fdafa29c40520b7e72320661dc64736f6c63430008140033";
|
|
1569
|
+
const _bytecode = "0x6080604052348015600e575f5ffd5b506137df8061001c5f395ff3fe608060405260043610610278575f3560e01c80639b19251a1161014a578063cb60ff34116100be578063e88e5cd411610078578063e88e5cd4146107d7578063f470c7e2146107f6578063f5b541a614610822578063f8b2cb4f14610842578063fa13f30a14610861578063fc50455f14610880575f5ffd5b8063cb60ff34146106e4578063d37dbaa21461072d578063d547741f1461074c578063d8a4676f1461076b578063e20c103c14610799578063e5b6337b146107b8575f5ffd5b8063b3ab15fb1161010f578063b3ab15fb14610634578063b5c604ff14610653578063c210296414610667578063c4707a8314610686578063c67515dd146106a6578063c688aa64146106c5575f5ffd5b80639b19251a1461057f578063a217fddf146105ad578063a3a00072146105c0578063ac21242d146105df578063b187bd2614610616575f5ffd5b80633f4ba83a116101ec5780637ecebe00116101a65780637ecebe00146104c75780638456cb59146104fb578063853954741461050f57806385fb709d1461052e5780638f2839701461054157806391d1485414610560575f5ffd5b80633f4ba83a1461042f5780634ae05c7d14610443578063518713d2146104625780635ae6256d146104815780636c3824ef146104955780637c13ba64146104b4575f5ffd5b80632f2ff15d1161023d5780632f2ff15d1461037f57806331993fdf1461039e5780633644e515146103bd57806336568abe146103d25780633aa98a94146103f15780633af32abf14610410575f5ffd5b806301ffc9a7146102c157806311a4b2d0146102f557806312065fe01461031657806312f5ea4014610332578063248a9ca314610351575f5ffd5b366102bd57604080513381525f6020820152348183015290517fb0afe9a71610967b99fda7fda0ed1e6ff47851924352fdf759922dd5427259419181900360600190a1005b5f5ffd5b3480156102cc575f5ffd5b506102e06102db366004612d93565b6108ac565b60405190151581526020015b60405180910390f35b348015610300575f5ffd5b5061031461030f366004612dc1565b6108e2565b005b348015610321575f5ffd5b50475b6040519081526020016102ec565b34801561033d575f5ffd5b5061031461034c366004612df5565b6109c0565b34801561035c575f5ffd5b5061032461036b366004612e34565b5f9081526020819052604090206001015490565b34801561038a575f5ffd5b50610314610399366004612e4b565b610b7a565b3480156103a9575f5ffd5b506103146103b8366004612f28565b610ba4565b3480156103c8575f5ffd5b5061032460015481565b3480156103dd575f5ffd5b506103146103ec366004612e4b565b610be5565b3480156103fc575f5ffd5b5061031461040b366004612f8b565b610c18565b34801561041b575f5ffd5b506102e061042a366004612fb8565b610cbb565b34801561043a575f5ffd5b50610314610cd8565b34801561044e575f5ffd5b5061031461045d366004613068565b610d2e565b34801561046d575f5ffd5b506102e061047c366004612fb8565b610d83565b34801561048c575f5ffd5b50609854610324565b3480156104a0575f5ffd5b506103146104af366004613068565b610dab565b6103146104c23660046130fb565b610dfd565b3480156104d2575f5ffd5b506103246104e1366004612fb8565b6001600160a01b03165f9081526099602052604090205490565b348015610506575f5ffd5b50610314610f98565b34801561051a575f5ffd5b50610314610529366004612dc1565b610ff2565b6102e061053c36600461314b565b611071565b34801561054c575f5ffd5b5061031461055b366004612fb8565b6112b9565b34801561056b575f5ffd5b506102e061057a366004612e4b565b611318565b34801561058a575f5ffd5b506102e0610599366004612fb8565b60336020525f908152604090205460ff1681565b3480156105b8575f5ffd5b506103245f81565b3480156105cb575f5ffd5b506103146105da366004613177565b611340565b3480156105ea575f5ffd5b506105fe6105f93660046131b8565b611505565b6040516001600160a01b0390911681526020016102ec565b348015610621575f5ffd5b50609b546102e090610100900460ff1681565b34801561063f575f5ffd5b5061031461064e366004612fb8565b611579565b34801561065e575f5ffd5b50609754610324565b348015610672575f5ffd5b50610314610681366004613210565b6115ff565b348015610691575f5ffd5b506103245f51602061376a5f395f51905f5281565b3480156106b1575f5ffd5b506103246106c036600461327f565b61193b565b3480156106d0575f5ffd5b506103146106df3660046132ae565b6119ac565b3480156106ef575f5ffd5b506040805180820182525f808252602091820152815180830183526097548082526098549183019182528351908152905191810191909152016102ec565b348015610738575f5ffd5b506105fe6107473660046131b8565b611ad9565b348015610757575f5ffd5b50610314610766366004612e4b565b611b2e565b348015610776575f5ffd5b506102e0610785366004612e34565b5f908152609c602052604090205460ff1690565b3480156107a4575f5ffd5b506103146107b3366004613068565b611b52565b3480156107c3575f5ffd5b506103146107d2366004613335565b611b5a565b3480156107e2575f5ffd5b506103146107f1366004613395565b611d3c565b348015610801575f5ffd5b506108156108103660046133e1565b611f97565b6040516102ec9190613471565b34801561082d575f5ffd5b506103245f51602061378a5f395f51905f5281565b34801561084d575f5ffd5b5061032461085c366004612fb8565b6120ca565b34801561086c575f5ffd5b506102e061087b3660046134b3565b612132565b34801561088b575f5ffd5b5061089f61089a366004612e4b565b612382565b6040516102ec919061353c565b5f6001600160e01b03198216637965db0b60e01b14806108dc57506301ffc9a760e01b6001600160e01b03198316145b92915050565b6108ec5f33611318565b15801561090d575061090b5f51602061376a5f395f51905f5233611318565b155b1561092b5760405163ea8e4eb560e01b815260040160405180910390fd5b80821061097f5760405162461bcd60e51b815260206004820152601b60248201527f5374617274206d757374206265206c657373207468616e20656e64000000000060448201526064015b60405180910390fd5b603261098b8383613597565b10610994575f5ffd5b815b818110156109bb575f818152609c60205260409020805460ff19169055600101610996565b505050565b6109ca5f33611318565b6109e757604051637bfa4b9f60e01b815260040160405180910390fd5b6001600160a01b038116610a3d5760405162461bcd60e51b815260206004820152601f60248201527f43616e6e6f74207472616e7366657220746f207a65726f2061646472657373006044820152606401610976565b82610a478361250d565b1015610a665760405163128bd24d60e31b815260040160405180910390fd5b6001600160a01b038216610b11575f816001600160a01b0316846040515f6040518083038185875af1925050503d805f8114610abd576040519150601f19603f3d011682016040523d82523d5f602084013e610ac2565b606091505b5050905080610b0b5760405162461bcd60e51b8152602060048201526015602482015274115d1a195c881d1c985b9cd9995c8819985a5b1959605a1b6044820152606401610976565b50610b25565b610b256001600160a01b038316828561252b565b604080513381526001600160a01b0383811660208301528183018690528416606082015290517f55dba1a9b1cf7e607f75e6920591e36d121fa2899fbf31c777439ee694747b7b9181900360800190a1505050565b5f82815260208190526040902060010154610b948161258a565b610b9e8383612594565b50505050565b610bac612623565b610bde6040518060800160405280848152602001838152602001468152602001306001600160a01b031681525061264a565b6001555050565b6001600160a01b0381163314610c0e5760405163334bd91960e11b815260040160405180910390fd5b6109bb82826126e5565b610c20612623565b606580546001600160a01b0319166001600160a01b038516179055610c455f83611318565b610c5557610c535f83612594565b505b610c6c5f51602061378a5f395f51905f5284611318565b610c8957610c875f51602061378a5f395f51905f5284612594565b505b610ca05f51602061376a5f395f51905f5282611318565b6109bb57610b9e5f51602061376a5f395f51905f5282612594565b6001600160a01b03165f9081526033602052604090205460ff1690565b610ce25f33611318565b158015610d035750610d015f51602061378a5f395f51905f5233611318565b155b15610d215760405163ea8e4eb560e01b815260040160405180910390fd5b609b805461ff0019169055565b610d385f33611318565b158015610d595750610d575f51602061378a5f395f51905f5233611318565b155b15610d775760405163ea8e4eb560e01b815260040160405180910390fd5b610d808161274e565b50565b5f610d8e8183611318565b806108dc57506108dc5f51602061376a5f395f51905f5283611318565b610db55f33611318565b158015610dd65750610dd45f51602061378a5f395f51905f5233611318565b155b15610df45760405163ea8e4eb560e01b815260040160405180910390fd5b610d808161285e565b609b54610100900460ff1615610e265760405163ab35696f60e01b815260040160405180910390fd5b610e2f5f610cbb565b610e4e5760405163094403b760e41b81525f6004820152602401610976565b345f03610e6e57604051637c946ed760e01b815260040160405180910390fd5b5f81604051602001610e8091906135ba565b60408051601f1981840301815291815281516020928301205f818152609a90935291205490915060ff1615610ec85760405163900bb2c960e01b815260040160405180910390fd5b335f81815260996020526040812054610ef8925f51602061378a5f395f51905f529261057a923492919088611505565b610f1557604051638baa579f60e01b815260040160405180910390fd5b5f818152609a60209081526040808320805460ff1916600117905533835260999091528120805491610f46836135e7565b9190505550610f53612968565b7fef519b7eb82aaf6ac376a6df2d793843ebfd593de5f1a0601d3cc6ab49ebb395335f348787604051610f8a9594939291906135ff565b60405180910390a150505050565b610fa25f33611318565b158015610fc35750610fc15f51602061378a5f395f51905f5233611318565b155b15610fe15760405163ea8e4eb560e01b815260040160405180910390fd5b609b805461ff001916610100179055565b610ffc5f33611318565b61101957604051637bfa4b9f60e01b815260040160405180910390fd5b60408051808201825283815260209081018390526097849055609883905581518481529081018390527fe8110342b5e43ae921859bc8dbf18018fcacba13fe16e5a7ea1239b8b5b8f287910160405180910390a15050565b609b545f90610100900460ff161561109c5760405163ab35696f60e01b815260040160405180910390fd5b609b5460ff16156110c057604051630ef7697f60e01b815260040160405180910390fd5b609b805460ff191660011790556110d75f33611318565b1580156110f857506110f65f51602061376a5f395f51905f5233611318565b155b156111165760405163ea8e4eb560e01b815260040160405180910390fd5b306001600160a01b0384160361113f57604051630d20048960e01b815260040160405180910390fd5b61114882610cbb565b6111705760405163094403b760e41b81526001600160a01b0383166004820152602401610976565b6001600160a01b0382166111e457345f036111a0576040516379ac219b60e01b8152336004820152602401610976565b7f6b32cee72b480eef6a5aeccadee07046ade1c28fec1e418949908f7ac8d7d2283333305f346040516111d795949392919061364f565b60405180910390a16112a7565b6040516370a0823160e01b81526001600160a01b0384811660048301525f91908416906370a0823190602401602060405180830381865afa15801561122b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061124f9190613682565b90506112666001600160a01b03841685308461298c565b7f6b32cee72b480eef6a5aeccadee07046ade1c28fec1e418949908f7ac8d7d228338530868560405161129d95949392919061364f565b60405180910390a1505b5050609b805460ff1916905550600190565b6112c35f33611318565b6112e057604051637bfa4b9f60e01b815260040160405180910390fd5b6112ea5f336126e5565b506112f55f82612594565b50606680546001600160a01b0319166001600160a01b0392909216919091179055565b5f918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b61134a5f33611318565b15801561136b57506113695f51602061376a5f395f51905f5233611318565b155b156113895760405163ea8e4eb560e01b815260040160405180910390fd5b8151602810156113af5760405163af89cf2160e01b815260286004820152602401610976565b5f6113b95f61250d565b9050808284516113c99190613699565b106113e75760405163128bd24d60e31b815260040160405180910390fd5b5f5b83518163ffffffff1610156114d7575f848263ffffffff1681518110611411576114116136b0565b60200260200101516001600160a01b0316846040515f6040518083038185875af1925050503d805f8114611460576040519150601f19603f3d011682016040523d82523d5f602084013e611465565b606091505b50509050806114c45730858363ffffffff1681518110611487576114876136b0565b6020908102919091010151604051633ddff61360e21b81526001600160a01b039283166004820152911660248201525f6044820152606401610976565b50806114cf816136c4565b9150506113e9565b506040517f6e31901a2ad27bd7f19498c4681fc6611bf447147de120c3b5f65c249d599077905f90a1505050565b5f5f6115596040518060a001604052805f600281111561152757611527613528565b8152602001898152602001886001600160a01b03168152602001876001600160a01b03168152602001868152506129c5565b8051602082012090915061156d8185612a2b565b98975050505050505050565b6115835f33611318565b6115a057604051637bfa4b9f60e01b815260040160405180910390fd5b6065546115c4905f51602061378a5f395f51905f52906001600160a01b03166126e5565b506115dc5f51602061378a5f395f51905f5282612594565b50606580546001600160a01b0319166001600160a01b0392909216919091179055565b6116095f33611318565b15801561162a57506116285f51602061376a5f395f51905f5233611318565b155b156116485760405163ea8e4eb560e01b815260040160405180910390fd5b609b5460ff161561166c57604051630ef7697f60e01b815260040160405180910390fd5b609b805460ff191660011790555f81900361169a57604051630b8fc7cd60e21b815260040160405180910390fd5b60288111156116bc5760405163f726140760e01b815260040160405180910390fd5b5f5b63ffffffff811682111561192c576116ff83838363ffffffff168181106116e7576116e76136b0565b905060800201604001602081019061042a9190612fb8565b6117585782828263ffffffff1681811061171b5761171b6136b0565b90506080020160400160208101906117339190612fb8565b60405163094403b760e41b81526001600160a01b039091166004820152602401610976565b82828263ffffffff16818110611770576117706136b0565b9050608002015f01355f0361179857604051637c946ed760e01b815260040160405180910390fd5b5f838363ffffffff84168181106117b1576117b16136b0565b90506080020160600160208101906117c99190612fb8565b6001600160a01b0316036117f05760405163d92e233d60e01b815260040160405180910390fd5b609c5f84848463ffffffff1681811061180b5761180b6136b0565b60206080909102929092018201358352508101919091526040015f205460ff161561186e5782828263ffffffff16818110611848576118486136b0565b90506080020160200135604051631409d1b760e21b815260040161097691815260200190565b61191a83838363ffffffff16818110611889576118896136b0565b9050608002015f013584848463ffffffff168181106118aa576118aa6136b0565b9050608002016020013585858563ffffffff168181106118cc576118cc6136b0565b90506080020160400160208101906118e49190612fb8565b86868663ffffffff168181106118fc576118fc6136b0565b90506080020160600160208101906119149190612fb8565b86612ae1565b80611924816136c4565b9150506116be565b5050609b805460ff1916905550565b5f8082600281111561194f5761194f613528565b0361197257506001600160a01b0382165f908152609960205260409020546108dc565b600182600281111561198657611986613528565b036108dc57506001600160a01b0382165f908152609960205260409020600101546108dc565b5f6119b5612c5d565b805490915060ff600160401b82041615906001600160401b03165f811580156119db5750825b90505f826001600160401b031660011480156119f65750303b155b905081158015611a04575080155b15611a225760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315611a4c57845460ff60401b1916600160401b1785555b611a7460405180604001604052806006815260200165457363726f7760d01b81525088610ba4565b611a7d86611b52565b611a8889338a610c18565b8315611ace57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050505050565b5f5f6115596040518060a0016040528060016002811115611afc57611afc613528565b8152602001898152602001886001600160a01b03168152602001876001600160a01b0316815260200186815250612c85565b5f82815260208190526040902060010154611b488161258a565b610b9e83836126e5565b610d77612623565b609b54610100900460ff1615611b835760405163ab35696f60e01b815260040160405180910390fd5b845f03611ba357604051637c946ed760e01b815260040160405180910390fd5b6001600160a01b038416611bca576040516301cc396360e41b815260040160405180910390fd5b611bd384610cbb565b611bfb5760405163094403b760e41b81526001600160a01b0385166004820152602401610976565b5f81604051602001611c0d91906135ba565b60408051601f1981840301815291815281516020928301205f818152609a90935291205490915060ff1615611c555760405163900bb2c960e01b815260040160405180910390fd5b335f81815260996020526040902054611c85915f51602061378a5f395f51905f529161057a918a918a9088611505565b611ca257604051638baa579f60e01b815260040160405180910390fd5b5f818152609a60209081526040808320805460ff1916600117905533835260999091528120805491611cd3836135e7565b9190505550611ce0612968565b611cf56001600160a01b03861633308961298c565b7fef519b7eb82aaf6ac376a6df2d793843ebfd593de5f1a0601d3cc6ab49ebb3953386888787604051611d2c9594939291906135ff565b60405180910390a1505050505050565b609b54610100900460ff1615611d655760405163ab35696f60e01b815260040160405180910390fd5b609b5460ff1615611d8957604051630ef7697f60e01b815260040160405180910390fd5b609b805460ff19166001179055611d9f83610cbb565b611dc75760405163094403b760e41b81526001600160a01b0384166004820152602401610976565b845f03611de757604051637c946ed760e01b815260040160405180910390fd5b6001600160a01b038216611e0e5760405163d92e233d60e01b815260040160405180910390fd5b5f848152609c602052604090205460ff1615611e4057604051631409d1b760e21b815260048101859052602401610976565b5f81604051602001611e5291906135ba565b60408051601f1981840301815291815281516020928301205f818152609a90935291205490915060ff1615611e9a5760405163900bb2c960e01b815260040160405180910390fd5b611eb85f51602061378a5f395f51905f5261057a8886888a88611ad9565b611ed557604051638baa579f60e01b815260040160405180910390fd5b85611edf8561250d565b1015611f59577f2aa807c191208ec364a49ebc0018975f798050694e1695937b26706e4f0a8858338588611f128861250d565b604080516001600160a01b03958616815294909316602085015291830152606082015260800160405180910390a160405163128bd24d60e31b815260040160405180910390fd5b5f818152609a60205260409020805460ff19166001908117909155611f85908790879087908790612ae1565b5050609b805460ff1916905550505050565b6060611fa35f33611318565b158015611fc45750611fc25f51602061376a5f395f51905f5233611318565b155b15611fe25760405163ea8e4eb560e01b815260040160405180910390fd5b602860ff16825160ff16111561200b5760405163f726140760e01b815260040160405180910390fd5b60408051600a80825261016082019092525f9160208201610140803683370190505090505f805b84518110156120bf57609c5f868381518110612050576120506136b0565b60209081029190910181015182528101919091526040015f205460ff16156120b757848181518110612084576120846136b0565b602002602001015183838151811061209e5761209e6136b0565b6020908102919091010152816120b3816135e7565b9250505b600101612032565b50909150505b919050565b6040516370a0823160e01b81523060048201525f906001600160a01b038316906370a0823190602401602060405180830381865afa15801561210e573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108dc9190613682565b5f61213d8133611318565b15801561215e575061215c5f51602061376a5f395f51905f5233611318565b155b1561217c5760405163ea8e4eb560e01b815260040160405180910390fd5b6001600160a01b0382166121a35760405163d92e233d60e01b815260040160405180910390fd5b60288311156121c85760405163af89cf2160e01b815260286004820152602401610976565b5f5b83811015612377575f8585838181106121e5576121e56136b0565b6121fb9260206040909202019081019150612fb8565b90505f868684818110612210576122106136b0565b90506040020160200160208101906122289190612fb8565b90506001600160a01b03811661225157604051631b71aaf760e31b815260040160405180910390fd5b306001600160a01b0383160361227a57604051630d20048960e01b815260040160405180910390fd5b61228381610cbb565b6122ab5760405163094403b760e41b81526001600160a01b0382166004820152602401610976565b6040516370a0823160e01b81526001600160a01b0383811660048301525f91908316906370a0823190602401602060405180830381865afa1580156122f2573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123169190613682565b905061232d6001600160a01b03831684888461298c565b7f6b32cee72b480eef6a5aeccadee07046ade1c28fec1e418949908f7ac8d7d228338488858560405161236495949392919061364f565b60405180910390a15050506001016121ca565b506001949350505050565b604080516080810182525f8082526020820181905291810182905260608101829052906123ae8361250d565b9050835f036123e957604080516080810182526003815260146020820152908101919091526001600160a01b038316606082015290506108dc565b5f846123fd83670de0b6b3a7640000613699565b61240791906136e8565b9050848210156124425750604080516080810182525f8082526020820152908101919091526001600160a01b038316606082015290506108dc565b6124556014670de0b6b3a7640000613699565b811061248e5750604080516080810182526003815260146020820152908101919091526001600160a01b038316606082015290506108dc565b6124a16005670de0b6b3a7640000613699565b81106124da5750604080516080810182526002815260056020820152908101919091526001600160a01b038316606082015290506108dc565b50604080516080810182526001815260026020820152908101919091526001600160a01b038316606082015290506108dc565b5f6001600160a01b03821661252257476108dc565b6108dc826120ca565b6040516001600160a01b038381166024830152604482018390526109bb91859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050612cd5565b610d808133612d41565b5f61259f8383611318565b61261c575f838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556125d43390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016108dc565b505f6108dc565b61262b612d7a565b61264857604051631afcd79f60e31b815260040160405180910390fd5b565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f825f015180519060200120836020015180519060200120846040015185606001516040516020016126c89594939291909485526020850193909352604084019190915260608301526001600160a01b0316608082015260a00190565b604051602081830303815290604052805190602001209050919050565b5f6126f08383611318565b1561261c575f838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45060016108dc565b5f5b815181101561285a5760335f83838151811061276e5761276e6136b0565b6020908102919091018101516001600160a01b031682528101919091526040015f9081205460ff161515900361285257600160335f8484815181106127b5576127b56136b0565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81548160ff0219169083151502179055507f784c8f4dbf0ffedd6e72c76501c545a70f8b203b30a26ce542bf92ba87c248a4828281518110612825576128256136b0565b602002602001015160405161284991906001600160a01b0391909116815260200190565b60405180910390a15b600101612750565b5050565b5f5b815181101561285a5760335f83838151811061287e5761287e6136b0565b6020908102919091018101516001600160a01b031682528101919091526040015f205460ff161515600103612960575f60335f8484815181106128c3576128c36136b0565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81548160ff0219169083151502179055507f4c910b69fe65a61f7531b9c5042b2329ca7179c77290aa7e2eb3afa3c8511fd3828281518110612933576129336136b0565b602002602001015160405161295791906001600160a01b0391909116815260200190565b60405180910390a15b600101612860565b60978054905f612977836135e7565b90915550506098544311156126485743609855565b6040516001600160a01b038481166024830152838116604483015260648201839052610b9e9186918216906323b872dd90608401612558565b60607fe35cf8b8df51aa49768d4a7859037953b72f9188d7c60825dfd506ac7c8d430c825f01518360200151846040015185606001518660800151604051602001612a1596959493929190613707565b6040516020818303038152906040529050919050565b60015460405161190160f01b60208201526022810191909152604281018390525f90819060620160408051601f19818403018152919052805160209182012091506001908290612a7d90860186613750565b604080515f815260208181018084529490945260ff9092168282015291860135606082015290850135608082015260a0016020604051602081039080840390855afa158015612ace573d5f5f3e3d5ffd5b5050604051601f19015195945050505050565b5f848152609c60209081526040808320805460ff191660019081179091553384526099909252822001805491612b16836135e7565b9190505550612b23612968565b6001600160a01b038316612bdf5784471015612b525760405163128bd24d60e31b815260040160405180910390fd5b5f826001600160a01b0316866040515f6040518083038185875af1925050503d805f8114612b9b576040519150601f19603f3d011682016040523d82523d5f602084013e612ba0565b606091505b5050905080612bd957604051633ddff61360e21b81523060048201526001600160a01b03841660248201525f6044820152606401610976565b50612bf3565b612bf36001600160a01b038416838761252b565b604080513381526001600160a01b038481166020830152851681830152606081018790526080810186905263ffffffff831660a082015290517ffc4d59a46f6143e0496645b06688cceb577d2d0439ad39ac0f1eaf3143a3a48e9181900360c00190a15050505050565b5f807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a006108dc565b60607f30df4329ee18debd99f937f6d70edc594d2957d5c194e77ab788df398c193af2825f01518360200151846040015185606001518660800151604051602001612a1596959493929190613707565b5f5f60205f8451602086015f885af180612cf4576040513d5f823e3d81fd5b50505f513d91508115612d0b578060011415612d18565b6001600160a01b0384163b155b15610b9e57604051635274afe760e01b81526001600160a01b0385166004820152602401610976565b612d4b8282611318565b61285a5760405163e2517d3f60e01b81526001600160a01b038216600482015260248101839052604401610976565b5f612d83612c5d565b54600160401b900460ff16919050565b5f60208284031215612da3575f5ffd5b81356001600160e01b031981168114612dba575f5ffd5b9392505050565b5f5f60408385031215612dd2575f5ffd5b50508035926020909101359150565b6001600160a01b0381168114610d80575f5ffd5b5f5f5f60608486031215612e07575f5ffd5b833592506020840135612e1981612de1565b91506040840135612e2981612de1565b809150509250925092565b5f60208284031215612e44575f5ffd5b5035919050565b5f5f60408385031215612e5c575f5ffd5b823591506020830135612e6e81612de1565b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b0381118282101715612eb557612eb5612e79565b604052919050565b5f82601f830112612ecc575f5ffd5b81356001600160401b03811115612ee557612ee5612e79565b612ef8601f8201601f1916602001612e8d565b818152846020838601011115612f0c575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f5f60408385031215612f39575f5ffd5b82356001600160401b03811115612f4e575f5ffd5b612f5a85828601612ebd565b92505060208301356001600160401b03811115612f75575f5ffd5b612f8185828601612ebd565b9150509250929050565b5f5f5f60608486031215612f9d575f5ffd5b8335612fa881612de1565b92506020840135612e1981612de1565b5f60208284031215612fc8575f5ffd5b8135612dba81612de1565b5f6001600160401b03821115612feb57612feb612e79565b5060051b60200190565b5f82601f830112613004575f5ffd5b813561301761301282612fd3565b612e8d565b8082825260208201915060208360051b860101925085831115613038575f5ffd5b602085015b8381101561305e57803561305081612de1565b83526020928301920161303d565b5095945050505050565b5f60208284031215613078575f5ffd5b81356001600160401b0381111561308d575f5ffd5b61309984828501612ff5565b949350505050565b5f5f83601f8401126130b1575f5ffd5b5081356001600160401b038111156130c7575f5ffd5b6020830191508360208285010111156130de575f5ffd5b9250929050565b5f606082840312156130f5575f5ffd5b50919050565b5f5f5f6080848603121561310d575f5ffd5b83356001600160401b03811115613122575f5ffd5b61312e868287016130a1565b9094509250613142905085602086016130e5565b90509250925092565b5f5f6040838503121561315c575f5ffd5b823561316781612de1565b91506020830135612e6e81612de1565b5f5f60408385031215613188575f5ffd5b82356001600160401b0381111561319d575f5ffd5b6131a985828601612ff5565b95602094909401359450505050565b5f5f5f5f5f60e086880312156131cc575f5ffd5b8535945060208601356131de81612de1565b935060408601356131ee81612de1565b92506060860135915061320487608088016130e5565b90509295509295909350565b5f5f60208385031215613221575f5ffd5b82356001600160401b03811115613236575f5ffd5b8301601f81018513613246575f5ffd5b80356001600160401b0381111561325b575f5ffd5b8560208260071b840101111561326f575f5ffd5b6020919091019590945092505050565b5f5f60408385031215613290575f5ffd5b823561329b81612de1565b9150602083013560038110612e6e575f5ffd5b5f5f5f5f608085870312156132c1575f5ffd5b84356132cc81612de1565b935060208501356132dc81612de1565b925060408501356001600160401b038111156132f6575f5ffd5b61330287828801612ebd565b92505060608501356001600160401b0381111561331d575f5ffd5b61332987828801612ff5565b91505092959194509250565b5f5f5f5f5f60c08688031215613349575f5ffd5b85359450602086013561335b81612de1565b935060408601356001600160401b03811115613375575f5ffd5b613381888289016130a1565b9094509250613204905087606088016130e5565b5f5f5f5f5f60e086880312156133a9575f5ffd5b853594506020860135935060408601356133c281612de1565b925060608601356133d281612de1565b915061320487608088016130e5565b5f602082840312156133f1575f5ffd5b81356001600160401b03811115613406575f5ffd5b8201601f81018413613416575f5ffd5b803561342461301282612fd3565b8082825260208201915060208360051b850101925086831115613445575f5ffd5b6020840193505b8284101561346757833582526020938401939091019061344c565b9695505050505050565b602080825282518282018190525f918401906040840190835b818110156134a857835183526020938401939092019160010161348a565b509095945050505050565b5f5f5f604084860312156134c5575f5ffd5b83356001600160401b038111156134da575f5ffd5b8401601f810186136134ea575f5ffd5b80356001600160401b038111156134ff575f5ffd5b8660208260061b8401011115613513575f5ffd5b602091820194509250840135612e2981612de1565b634e487b7160e01b5f52602160045260245ffd5b815160808201906004811061355357613553613528565b825260208381015190830152604080840151908301526060928301516001600160a01b0316929091019190915290565b634e487b7160e01b5f52601160045260245ffd5b818103818111156108dc576108dc613583565b803560ff811681146120c5575f5ffd5b6060810160ff6135c9846135aa565b16825260208381013590830152604092830135929091019190915290565b5f600182016135f8576135f8613583565b5060010190565b6001600160a01b03868116825285166020820152604081018490526080606082018190528101829052818360a08301375f81830160a090810191909152601f909201601f19160101949350505050565b6001600160a01b039586168152938516602085015291841660408401529092166060820152608081019190915260a00190565b5f60208284031215613692575f5ffd5b5051919050565b80820281158282048414176108dc576108dc613583565b634e487b7160e01b5f52603260045260245ffd5b5f63ffffffff821663ffffffff81036136df576136df613583565b60010192915050565b5f8261370257634e487b7160e01b5f52601260045260245ffd5b500490565b86815260c081016003871061371e5761371e613528565b602082019690965260408101949094526001600160a01b0392831660608501529116608083015260a090910152919050565b5f60208284031215613760575f5ffd5b612dba826135aa56fe9d98d3d08f0062b192694645e127c98e5f96f3bbec331d061acaac3ace2327f997667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929a2646970667358221220fba97ec702b057ee1a290d657495440e1199b62e09ece290409bc0a6ce57c9fa64736f6c634300081c0033";
|
|
1554
1570
|
const isSuperArgs = (xs) => xs.length > 1;
|
|
1555
1571
|
class Escrow__factory extends ethers_1.ContractFactory {
|
|
1556
1572
|
constructor(...args) {
|
package/build/contracts/typechain-types/factories/contracts/escrow/TokensWhitelist__factory.d.ts
CHANGED
|
@@ -14,7 +14,7 @@ export declare class TokensWhitelist__factory extends ContractFactory {
|
|
|
14
14
|
deploymentTransaction(): ContractTransactionResponse;
|
|
15
15
|
}>;
|
|
16
16
|
connect(runner: ContractRunner | null): TokensWhitelist__factory;
|
|
17
|
-
static readonly bytecode = "
|
|
17
|
+
static readonly bytecode = "0x6080604052348015600e575f5ffd5b5061038f8061001c5f395ff3fe608060405234801561000f575f5ffd5b506004361061003f575f3560e01c80633af32abf146100435780639b19251a14610082578063e20c103c146100a4575b5f5ffd5b61006e610051366004610246565b6001600160a01b03165f9081526020819052604090205460ff1690565b604051901515815260200160405180910390f35b61006e610090366004610246565b5f6020819052908152604090205460ff1681565b6100b76100b236600461027a565b6100b9565b005b6100c16100cd565b6100ca8161011d565b50565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005468010000000000000000900460ff1661011b57604051631afcd79f60e31b815260040160405180910390fd5b565b5f5b8151811015610227575f5f83838151811061013c5761013c610345565b6020908102919091018101516001600160a01b031682528101919091526040015f9081205460ff161515900361021f5760015f5f84848151811061018257610182610345565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81548160ff0219169083151502179055507f784c8f4dbf0ffedd6e72c76501c545a70f8b203b30a26ce542bf92ba87c248a48282815181106101f2576101f2610345565b602002602001015160405161021691906001600160a01b0391909116815260200190565b60405180910390a15b60010161011f565b5050565b80356001600160a01b0381168114610241575f5ffd5b919050565b5f60208284031215610256575f5ffd5b61025f8261022b565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f6020828403121561028a575f5ffd5b813567ffffffffffffffff8111156102a0575f5ffd5b8201601f810184136102b0575f5ffd5b803567ffffffffffffffff8111156102ca576102ca610266565b8060051b604051601f19603f830116810181811067ffffffffffffffff821117156102f7576102f7610266565b604052918252602081840181019290810187841115610314575f5ffd5b6020850194505b8385101561033a5761032c8561022b565b81526020948501940161031b565b509695505050505050565b634e487b7160e01b5f52603260045260245ffdfea2646970667358221220978d27cd4f7e363771fed2abe591d0130d24908ee584264bb3f97221c54bf04b64736f6c634300081c0033";
|
|
18
18
|
static readonly abi: readonly [{
|
|
19
19
|
readonly inputs: readonly [];
|
|
20
20
|
readonly name: "InvalidInitialization";
|
package/build/contracts/typechain-types/factories/contracts/escrow/TokensWhitelist__factory.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokensWhitelist__factory.d.ts","sourceRoot":"","sources":["../../../../../../src/contracts/typechain-types/factories/contracts/escrow/TokensWhitelist__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,2CAA2C,CAAC;AA4GnD,KAAK,gCAAgC,GACjC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,wBAAyB,SAAQ,eAAe;gBAC/C,GAAG,IAAI,EAAE,gCAAgC;IAQ5C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GACzB,OAAO,CAC7C,eAAe,GAAG;QAChB,qBAAqB,IAAI,2BAA2B,CAAC;KACtD,CACF;IAEM,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,wBAAwB;IAIzE,MAAM,CAAC,QAAQ,CAAC,QAAQ,
|
|
1
|
+
{"version":3,"file":"TokensWhitelist__factory.d.ts","sourceRoot":"","sources":["../../../../../../src/contracts/typechain-types/factories/contracts/escrow/TokensWhitelist__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,2CAA2C,CAAC;AA4GnD,KAAK,gCAAgC,GACjC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,wBAAyB,SAAQ,eAAe;gBAC/C,GAAG,IAAI,EAAE,gCAAgC;IAQ5C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GACzB,OAAO,CAC7C,eAAe,GAAG;QAChB,qBAAqB,IAAI,2BAA2B,CAAC;KACtD,CACF;IAEM,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,wBAAwB;IAIzE,MAAM,CAAC,QAAQ,CAAC,QAAQ,81DAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"}
|
package/build/contracts/typechain-types/factories/contracts/escrow/TokensWhitelist__factory.js
CHANGED
|
@@ -107,7 +107,7 @@ const _abi = [
|
|
|
107
107
|
type: "function",
|
|
108
108
|
},
|
|
109
109
|
];
|
|
110
|
-
const _bytecode = "
|
|
110
|
+
const _bytecode = "0x6080604052348015600e575f5ffd5b5061038f8061001c5f395ff3fe608060405234801561000f575f5ffd5b506004361061003f575f3560e01c80633af32abf146100435780639b19251a14610082578063e20c103c146100a4575b5f5ffd5b61006e610051366004610246565b6001600160a01b03165f9081526020819052604090205460ff1690565b604051901515815260200160405180910390f35b61006e610090366004610246565b5f6020819052908152604090205460ff1681565b6100b76100b236600461027a565b6100b9565b005b6100c16100cd565b6100ca8161011d565b50565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005468010000000000000000900460ff1661011b57604051631afcd79f60e31b815260040160405180910390fd5b565b5f5b8151811015610227575f5f83838151811061013c5761013c610345565b6020908102919091018101516001600160a01b031682528101919091526040015f9081205460ff161515900361021f5760015f5f84848151811061018257610182610345565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81548160ff0219169083151502179055507f784c8f4dbf0ffedd6e72c76501c545a70f8b203b30a26ce542bf92ba87c248a48282815181106101f2576101f2610345565b602002602001015160405161021691906001600160a01b0391909116815260200190565b60405180910390a15b60010161011f565b5050565b80356001600160a01b0381168114610241575f5ffd5b919050565b5f60208284031215610256575f5ffd5b61025f8261022b565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f6020828403121561028a575f5ffd5b813567ffffffffffffffff8111156102a0575f5ffd5b8201601f810184136102b0575f5ffd5b803567ffffffffffffffff8111156102ca576102ca610266565b8060051b604051601f19603f830116810181811067ffffffffffffffff821117156102f7576102f7610266565b604052918252602081840181019290810187841115610314575f5ffd5b6020850194505b8385101561033a5761032c8561022b565b81526020948501940161031b565b509695505050505050565b634e487b7160e01b5f52603260045260245ffdfea2646970667358221220978d27cd4f7e363771fed2abe591d0130d24908ee584264bb3f97221c54bf04b64736f6c634300081c0033";
|
|
111
111
|
const isSuperArgs = (xs) => xs.length > 1;
|
|
112
112
|
class TokensWhitelist__factory extends ethers_1.ContractFactory {
|
|
113
113
|
constructor(...args) {
|
|
@@ -17,6 +17,8 @@ export type { IERC20Errors } from "./@openzeppelin/contracts/interfaces/draft-IE
|
|
|
17
17
|
export { IERC20Errors__factory } from "./factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors__factory";
|
|
18
18
|
export type { IERC721Errors } from "./@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors";
|
|
19
19
|
export { IERC721Errors__factory } from "./factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors__factory";
|
|
20
|
+
export type { IERC1363 } from "./@openzeppelin/contracts/interfaces/IERC1363";
|
|
21
|
+
export { IERC1363__factory } from "./factories/@openzeppelin/contracts/interfaces/IERC1363__factory";
|
|
20
22
|
export type { IERC5267 } from "./@openzeppelin/contracts/interfaces/IERC5267";
|
|
21
23
|
export { IERC5267__factory } from "./factories/@openzeppelin/contracts/interfaces/IERC5267__factory";
|
|
22
24
|
export type { ERC20 } from "./@openzeppelin/contracts/token/ERC20/ERC20";
|
|
@@ -25,6 +27,8 @@ export type { IERC20Metadata } from "./@openzeppelin/contracts/token/ERC20/exten
|
|
|
25
27
|
export { IERC20Metadata__factory } from "./factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory";
|
|
26
28
|
export type { IERC20 } from "./@openzeppelin/contracts/token/ERC20/IERC20";
|
|
27
29
|
export { IERC20__factory } from "./factories/@openzeppelin/contracts/token/ERC20/IERC20__factory";
|
|
30
|
+
export type { SafeERC20 } from "./@openzeppelin/contracts/token/ERC20/utils/SafeERC20";
|
|
31
|
+
export { SafeERC20__factory } from "./factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory";
|
|
28
32
|
export type { EIP712 } from "./@openzeppelin/contracts/utils/cryptography/EIP712";
|
|
29
33
|
export { EIP712__factory } from "./factories/@openzeppelin/contracts/utils/cryptography/EIP712__factory";
|
|
30
34
|
export type { ERC165 } from "./@openzeppelin/contracts/utils/introspection/ERC165";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contracts/typechain-types/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contracts/typechain-types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.ERC20Mock__factory = exports.TokensWhitelist__factory = exports.EscrowSignature__factory = exports.EscrowErrors__factory = exports.EscrowAccessControl__factory = exports.Escrow__factory = exports.Strings__factory = exports.ShortStrings__factory = exports.SafeCast__factory = exports.IERC165__factory = exports.ERC165__factory = exports.EIP712__factory = exports.IERC20__factory = exports.IERC20Metadata__factory = exports.ERC20__factory = exports.IERC5267__factory = exports.IERC721Errors__factory = exports.IERC20Errors__factory = exports.IERC1155Errors__factory = exports.Ownable__factory = exports.IAccessControl__factory = exports.AccessControl__factory = exports.Initializable__factory = exports.factories = void 0;
|
|
36
|
+
exports.ERC20Mock__factory = exports.TokensWhitelist__factory = exports.EscrowSignature__factory = exports.EscrowErrors__factory = exports.EscrowAccessControl__factory = exports.Escrow__factory = exports.Strings__factory = exports.ShortStrings__factory = exports.SafeCast__factory = exports.IERC165__factory = exports.ERC165__factory = exports.EIP712__factory = exports.SafeERC20__factory = exports.IERC20__factory = exports.IERC20Metadata__factory = exports.ERC20__factory = exports.IERC5267__factory = exports.IERC1363__factory = exports.IERC721Errors__factory = exports.IERC20Errors__factory = exports.IERC1155Errors__factory = exports.Ownable__factory = exports.IAccessControl__factory = exports.AccessControl__factory = exports.Initializable__factory = exports.factories = void 0;
|
|
37
37
|
exports.factories = __importStar(require("./factories"));
|
|
38
38
|
var Initializable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory");
|
|
39
39
|
Object.defineProperty(exports, "Initializable__factory", { enumerable: true, get: function () { return Initializable__factory_1.Initializable__factory; } });
|
|
@@ -49,6 +49,8 @@ var IERC20Errors__factory_1 = require("./factories/@openzeppelin/contracts/inter
|
|
|
49
49
|
Object.defineProperty(exports, "IERC20Errors__factory", { enumerable: true, get: function () { return IERC20Errors__factory_1.IERC20Errors__factory; } });
|
|
50
50
|
var IERC721Errors__factory_1 = require("./factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors__factory");
|
|
51
51
|
Object.defineProperty(exports, "IERC721Errors__factory", { enumerable: true, get: function () { return IERC721Errors__factory_1.IERC721Errors__factory; } });
|
|
52
|
+
var IERC1363__factory_1 = require("./factories/@openzeppelin/contracts/interfaces/IERC1363__factory");
|
|
53
|
+
Object.defineProperty(exports, "IERC1363__factory", { enumerable: true, get: function () { return IERC1363__factory_1.IERC1363__factory; } });
|
|
52
54
|
var IERC5267__factory_1 = require("./factories/@openzeppelin/contracts/interfaces/IERC5267__factory");
|
|
53
55
|
Object.defineProperty(exports, "IERC5267__factory", { enumerable: true, get: function () { return IERC5267__factory_1.IERC5267__factory; } });
|
|
54
56
|
var ERC20__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC20/ERC20__factory");
|
|
@@ -57,6 +59,8 @@ var IERC20Metadata__factory_1 = require("./factories/@openzeppelin/contracts/tok
|
|
|
57
59
|
Object.defineProperty(exports, "IERC20Metadata__factory", { enumerable: true, get: function () { return IERC20Metadata__factory_1.IERC20Metadata__factory; } });
|
|
58
60
|
var IERC20__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC20/IERC20__factory");
|
|
59
61
|
Object.defineProperty(exports, "IERC20__factory", { enumerable: true, get: function () { return IERC20__factory_1.IERC20__factory; } });
|
|
62
|
+
var SafeERC20__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory");
|
|
63
|
+
Object.defineProperty(exports, "SafeERC20__factory", { enumerable: true, get: function () { return SafeERC20__factory_1.SafeERC20__factory; } });
|
|
60
64
|
var EIP712__factory_1 = require("./factories/@openzeppelin/contracts/utils/cryptography/EIP712__factory");
|
|
61
65
|
Object.defineProperty(exports, "EIP712__factory", { enumerable: true, get: function () { return EIP712__factory_1.EIP712__factory; } });
|
|
62
66
|
var ERC165__factory_1 = require("./factories/@openzeppelin/contracts/utils/introspection/ERC165__factory");
|
package/build/interfaces.d.ts
CHANGED
|
@@ -124,7 +124,8 @@ export declare enum TokenStandard {
|
|
|
124
124
|
BSC = "BEP-20",
|
|
125
125
|
AVAX = "AVAXC",
|
|
126
126
|
SOL = "SOL",
|
|
127
|
-
LIGHTNING = "LIGHTNING"
|
|
127
|
+
LIGHTNING = "LIGHTNING",
|
|
128
|
+
TRON = "TRX"
|
|
128
129
|
}
|
|
129
130
|
export interface ChainDetails {
|
|
130
131
|
status: boolean;
|
|
@@ -144,6 +145,9 @@ export interface PaymentToken {
|
|
|
144
145
|
token_standard: TokenStandard;
|
|
145
146
|
sweepThreshold: number;
|
|
146
147
|
sweepWalletMinBalance: number;
|
|
148
|
+
recommendedMinBalanceFundingWallet: number;
|
|
149
|
+
recommendedMinBalanceEscrow: number;
|
|
150
|
+
recommendedMinBalanceRentEnergy: number;
|
|
147
151
|
}
|
|
148
152
|
export interface EthersEvent {
|
|
149
153
|
transactionHash: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"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"}
|
package/build/interfaces.js
CHANGED
|
@@ -14,6 +14,7 @@ declare class Redis {
|
|
|
14
14
|
subscriber?: RedisClientType;
|
|
15
15
|
private prefix;
|
|
16
16
|
private logger;
|
|
17
|
+
private duplicates;
|
|
17
18
|
private connectPromise;
|
|
18
19
|
private subscriberConnectPromise;
|
|
19
20
|
private expiryPattern;
|
|
@@ -21,8 +22,16 @@ declare class Redis {
|
|
|
21
22
|
private constructor();
|
|
22
23
|
static getInstance(config: IConfig): Redis;
|
|
23
24
|
private createClient;
|
|
25
|
+
create_managed_duplicate(): Promise<RedisClientType>;
|
|
24
26
|
private attachMainClientListeners;
|
|
25
27
|
private attachSubscriberListeners;
|
|
28
|
+
/**
|
|
29
|
+
* Attaches listeners and attempts to reconnect duplicate on 'end'
|
|
30
|
+
* @param duplicate The duplicate client from the main Redis Client
|
|
31
|
+
*/
|
|
32
|
+
private attachDuplicateListeners;
|
|
33
|
+
private wait_for_main_client;
|
|
34
|
+
private recreate_duplicate;
|
|
26
35
|
private connectClient;
|
|
27
36
|
private connectSubscriber;
|
|
28
37
|
private _doConnectSubscriber;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Redis.d.ts","sourceRoot":"","sources":["../../src/services/Redis.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGhD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,UAAU,UAAU;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9B;AAED,cAAM,KAAK;IACP,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC;IACvB,OAAO,CAAC,MAAM,CAAU;IACjB,MAAM,EAAE,eAAe,CAAC;IACxB,UAAU,CAAC,EAAE,eAAe,CAAC;IACpC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAS;
|
|
1
|
+
{"version":3,"file":"Redis.d.ts","sourceRoot":"","sources":["../../src/services/Redis.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGhD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,UAAU,UAAU;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9B;AAED,cAAM,KAAK;IACP,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC;IACvB,OAAO,CAAC,MAAM,CAAU;IACjB,MAAM,EAAE,eAAe,CAAC;IACxB,UAAU,CAAC,EAAE,eAAe,CAAC;IACpC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,UAAU,CAAuB;IAGzC,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,wBAAwB,CAA8B;IAG9D,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,aAAa,CAAiD;IAEtE,OAAO;IAQP,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,GAAG,KAAK;IAW1C,OAAO,CAAC,YAAY;IA8BP,wBAAwB,IAAI,OAAO,CAAC,eAAe,CAAC;IAWjE,OAAO,CAAC,yBAAyB;IAsCjC,OAAO,CAAC,yBAAyB;IAYjC;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAoBhC,OAAO,CAAC,oBAAoB;YAad,kBAAkB;YAWlB,aAAa;YASb,iBAAiB;YAQjB,oBAAoB;IAclC;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IA0Bb,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;YAkB1B,aAAa;IAed,iBAAiB,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IA2CpF,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,UAAO,GAAG,MAAM;YAQxC,eAAe;YAIf,IAAI;YAKJ,IAAI;YAuBJ,OAAO;IASR,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAIzC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAIxE,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIrC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAI5E,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,UAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAOzD,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAQ3C,WAAW;CA4B5B;AAED,eAAe,KAAK,CAAC"}
|
package/build/services/Redis.js
CHANGED
|
@@ -28,6 +28,7 @@ class Redis {
|
|
|
28
28
|
this.prefix = `${config.serverConfig.projectName}-${config.serverConfig.environment}`;
|
|
29
29
|
this.logger = (0, Logger_1.createLogger)("Redis", config.pipelineConfig.azureAppName);
|
|
30
30
|
this.client = this.createClient();
|
|
31
|
+
this.duplicates = new Set();
|
|
31
32
|
}
|
|
32
33
|
static getInstance(config) {
|
|
33
34
|
if (!this.instance) {
|
|
@@ -67,6 +68,16 @@ class Redis {
|
|
|
67
68
|
this.attachMainClientListeners(client);
|
|
68
69
|
return client;
|
|
69
70
|
}
|
|
71
|
+
create_managed_duplicate() {
|
|
72
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
73
|
+
yield this.wait_for_main_client();
|
|
74
|
+
const duplicate = this.client.duplicate();
|
|
75
|
+
yield duplicate.connect();
|
|
76
|
+
this.duplicates.add(duplicate);
|
|
77
|
+
this.attachDuplicateListeners(duplicate);
|
|
78
|
+
return duplicate;
|
|
79
|
+
});
|
|
80
|
+
}
|
|
70
81
|
attachMainClientListeners(client) {
|
|
71
82
|
client.on("error", (err) => {
|
|
72
83
|
var _a;
|
|
@@ -90,6 +101,14 @@ class Redis {
|
|
|
90
101
|
return; // already recovering
|
|
91
102
|
this.client = this.createClient();
|
|
92
103
|
this.connectPromise = this.connectClient(this.client)
|
|
104
|
+
.then(() => {
|
|
105
|
+
// All existing duplicates were cloned from the dead client — they must be
|
|
106
|
+
// recreated from the new this.client now that it is connected.
|
|
107
|
+
const dead_duplicates = [...this.duplicates];
|
|
108
|
+
for (const dup of dead_duplicates) {
|
|
109
|
+
this.recreate_duplicate(dup).catch((err) => this.logger.error("Redis: duplicate recreation after main reconnect failed", { data: { error: err } }));
|
|
110
|
+
}
|
|
111
|
+
})
|
|
93
112
|
.catch((err) => this.logger.error("Redis: fresh client connect failed", { data: { error: err } }))
|
|
94
113
|
.finally(() => { this.connectPromise = null; });
|
|
95
114
|
});
|
|
@@ -105,6 +124,50 @@ class Redis {
|
|
|
105
124
|
this.recreateSubscriber();
|
|
106
125
|
});
|
|
107
126
|
}
|
|
127
|
+
/**
|
|
128
|
+
* Attaches listeners and attempts to reconnect duplicate on 'end'
|
|
129
|
+
* @param duplicate The duplicate client from the main Redis Client
|
|
130
|
+
*/
|
|
131
|
+
attachDuplicateListeners(duplicate) {
|
|
132
|
+
duplicate.on("error", (err) => this.logger.warn("Redis: duplicate error", { data: { error: err === null || err === void 0 ? void 0 : err.message } }));
|
|
133
|
+
duplicate.on("reconnecting", () => this.logger.warn("Redis: duplicate reconnecting"));
|
|
134
|
+
duplicate.on("connect", () => this.logger.info("Redis: duplicate connected"));
|
|
135
|
+
duplicate.on("ready", () => {
|
|
136
|
+
this.logger.info("Redis: duplicate ready");
|
|
137
|
+
const stream = duplicate.socket;
|
|
138
|
+
if (stream === null || stream === void 0 ? void 0 : stream.setKeepAlive)
|
|
139
|
+
stream.setKeepAlive(true, 10000);
|
|
140
|
+
});
|
|
141
|
+
duplicate.on("end", () => {
|
|
142
|
+
this.logger.warn("Redis: duplicate ended — recreating");
|
|
143
|
+
this.recreate_duplicate(duplicate).catch(err => this.logger.error("Redis: duplicate recreation failed", { data: { error: err } }));
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
// Waits until the main client is open and ready.
|
|
147
|
+
// Re-registers on this.client at each step so it follows the reference if the main
|
|
148
|
+
// client was replaced by a fresh one in the 'end' handler.
|
|
149
|
+
wait_for_main_client() {
|
|
150
|
+
if (this.client.isOpen)
|
|
151
|
+
return Promise.resolve();
|
|
152
|
+
return new Promise((resolve) => {
|
|
153
|
+
const check = () => {
|
|
154
|
+
if (this.client.isOpen)
|
|
155
|
+
return resolve();
|
|
156
|
+
this.client.once("ready", check);
|
|
157
|
+
};
|
|
158
|
+
this.client.once("ready", check);
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
// Removes the dead duplicate from the managed set and creates a fresh one.
|
|
162
|
+
// Defers creation until the main client is ready so we never duplicate a dead socket.
|
|
163
|
+
recreate_duplicate(dead) {
|
|
164
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
165
|
+
this.duplicates.delete(dead);
|
|
166
|
+
yield this.wait_for_main_client();
|
|
167
|
+
yield this.create_managed_duplicate();
|
|
168
|
+
this.logger.info("Redis: duplicate recreated successfully");
|
|
169
|
+
});
|
|
170
|
+
}
|
|
108
171
|
// -------------------------------------------------------------------------
|
|
109
172
|
// Connection management
|
|
110
173
|
// -------------------------------------------------------------------------
|