@1inch/solidity-utils 4.2.1 → 5.1.0
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/contracts/libraries/AddressArray.sol +12 -1
- package/contracts/libraries/AddressSet.sol +11 -1
- package/contracts/mixins/BySig.sol +1 -1
- package/dist/src/bySig.d.ts +50 -0
- package/dist/src/bySig.js +77 -0
- package/dist/src/bySig.js.map +1 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/typechain-types/contracts/tests/mocks/AddressArrayMock.d.ts +5 -1
- package/dist/typechain-types/contracts/tests/mocks/AddressSetMock.d.ts +5 -1
- package/dist/typechain-types/factories/contracts/libraries/AddressArray__factory.d.ts +1 -1
- package/dist/typechain-types/factories/contracts/libraries/AddressArray__factory.js +1 -1
- package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.d.ts +15 -1
- package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.js +20 -1
- package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.js.map +1 -1
- package/dist/typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.d.ts +15 -1
- package/dist/typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.js +20 -1
- package/dist/typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.js.map +1 -1
- package/dist/typechain-types/factories/contracts/tests/mocks/TokenWithBySig__factory.d.ts +1 -1
- package/dist/typechain-types/factories/contracts/tests/mocks/TokenWithBySig__factory.js +1 -1
- package/package.json +1 -1
|
@@ -46,12 +46,23 @@ library AddressArray {
|
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
/**
|
|
49
|
-
* @notice Retrieves the address at a specified index in the array.
|
|
49
|
+
* @notice Retrieves the address at a specified index in the array. Reverts if the index is out of bounds.
|
|
50
50
|
* @param self The instance of the Data struct.
|
|
51
51
|
* @param i The index to retrieve the address from.
|
|
52
52
|
* @return The address stored at the specified index.
|
|
53
53
|
*/
|
|
54
54
|
function at(Data storage self, uint256 i) internal view returns (address) {
|
|
55
|
+
if (length(self) <= i) revert IndexOutOfBounds();
|
|
56
|
+
return address(uint160(self._raw[i] & _ADDRESS_MASK));
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* @notice Retrieves the address at a specified index in the array without bounds checking.
|
|
61
|
+
* @param self The instance of the Data struct.
|
|
62
|
+
* @param i The index to retrieve the address from.
|
|
63
|
+
* @return The address stored at the specified index.
|
|
64
|
+
*/
|
|
65
|
+
function unsafeAt(Data storage self, uint256 i) internal view returns (address) {
|
|
55
66
|
if (i >= 1 << 32) revert IndexOutOfBounds();
|
|
56
67
|
return address(uint160(self._raw[i] & _ADDRESS_MASK));
|
|
57
68
|
}
|
|
@@ -33,7 +33,7 @@ library AddressSet {
|
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
/**
|
|
36
|
-
* @notice Retrieves the address at a specified index in the set.
|
|
36
|
+
* @notice Retrieves the address at a specified index in the set. Reverts if the index is out of bounds.
|
|
37
37
|
* @param s The set of addresses.
|
|
38
38
|
* @param index The index of the address to retrieve.
|
|
39
39
|
* @return The address at the specified index.
|
|
@@ -42,6 +42,16 @@ library AddressSet {
|
|
|
42
42
|
return s.items.at(index);
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
+
/**
|
|
46
|
+
* @notice Retrieves the address at a specified index in the set without bounds checking.
|
|
47
|
+
* @param s The set of addresses.
|
|
48
|
+
* @param index The index of the address to retrieve.
|
|
49
|
+
* @return The address at the specified index.
|
|
50
|
+
*/
|
|
51
|
+
function unsafeAt(Data storage s, uint256 index) internal view returns (address) {
|
|
52
|
+
return s.items.unsafeAt(index);
|
|
53
|
+
}
|
|
54
|
+
|
|
45
55
|
/**
|
|
46
56
|
* @notice Checks if the set contains the specified address.
|
|
47
57
|
* @param s The set of addresses.
|
|
@@ -197,7 +197,7 @@ abstract contract BySig is Context, EIP712 {
|
|
|
197
197
|
if (length == 0) {
|
|
198
198
|
return super._msgSender();
|
|
199
199
|
}
|
|
200
|
-
return _msgSenders.
|
|
200
|
+
return _msgSenders.unsafeAt(length - 1);
|
|
201
201
|
}
|
|
202
202
|
|
|
203
203
|
function _useNonce(address signer, BySigTraits.Value traits, bytes calldata data) private returns(bool) {
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Wallet } from 'ethers';
|
|
2
|
+
import { SignerWithAddress } from '@nomicfoundation/hardhat-ethers/signers';
|
|
3
|
+
/**
|
|
4
|
+
* Enum defining types of nonces.
|
|
5
|
+
*/
|
|
6
|
+
export declare enum NonceType {
|
|
7
|
+
Account = 0,// Nonce for account
|
|
8
|
+
Selector = 1,// Nonce for selector
|
|
9
|
+
Unique = 2
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Builds traits for {bySig} contract by combining params.
|
|
13
|
+
* @param nonceType The type of nonce to use. Default is NonceType.Account.
|
|
14
|
+
* @param deadline The deadline for the message. Default is 0.
|
|
15
|
+
* @param relayer The relayer address. Default is the zero address.
|
|
16
|
+
* @param nonce The nonce. Default is 0.
|
|
17
|
+
* @returns A bigint representing the combined traits.
|
|
18
|
+
* @throws Error if provided with invalid parameters.
|
|
19
|
+
*/
|
|
20
|
+
export declare function buildBySigTraits({ nonceType, deadline, relayer, nonce, }?: {
|
|
21
|
+
nonceType?: NonceType | undefined;
|
|
22
|
+
deadline?: number | undefined;
|
|
23
|
+
relayer?: string | undefined;
|
|
24
|
+
nonce?: number | undefined;
|
|
25
|
+
}): bigint;
|
|
26
|
+
export interface SignedCallStruct {
|
|
27
|
+
traits: bigint;
|
|
28
|
+
data: string;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Computes the EIP-712 hash for a given bySig call.
|
|
32
|
+
* @param name The user readable name of EIP-712 domain.
|
|
33
|
+
* @param version The version of the EIP-712 domain.
|
|
34
|
+
* @param chainId The unique identifier for the blockchain network.
|
|
35
|
+
* @param verifyingContract The Ethereum address of the contract that will verify the signature. This ties the signature to a specific contract.
|
|
36
|
+
* @param sig The data to be signed.
|
|
37
|
+
* @returns The EIP-712 hash of the fully encoded data.
|
|
38
|
+
*/
|
|
39
|
+
export declare function hashBySig(name: string, version: string, chainId: bigint, verifyingContract: string, sig: SignedCallStruct): string;
|
|
40
|
+
/**
|
|
41
|
+
* Signs a given data for {bySig} contract call using EIP-712 standard.
|
|
42
|
+
* @param name The user readable name of EIP-712 domain.
|
|
43
|
+
* @param version The version of the EIP-712 domain.
|
|
44
|
+
* @param chainId The unique identifier for the blockchain network.
|
|
45
|
+
* @param verifyingContract The Ethereum address of the contract that will verify the signature. This ties the signature to a specific contract.
|
|
46
|
+
* @param signer The wallet or signer to sign the data.
|
|
47
|
+
* @param signedCall The call data to be signed, consisting of traits and data.
|
|
48
|
+
* @returns A Promise that resolves to the signature.
|
|
49
|
+
*/
|
|
50
|
+
export declare function signSignedCall(name: string, version: string, chainId: bigint | string, verifyingContract: string, signer: Wallet | SignerWithAddress, signedCall: SignedCallStruct): Promise<string>;
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.signSignedCall = exports.hashBySig = exports.buildBySigTraits = exports.NonceType = void 0;
|
|
4
|
+
const hardhat_1 = require("hardhat");
|
|
5
|
+
const prelude_1 = require("./prelude");
|
|
6
|
+
/**
|
|
7
|
+
* Enum defining types of nonces.
|
|
8
|
+
*/
|
|
9
|
+
var NonceType;
|
|
10
|
+
(function (NonceType) {
|
|
11
|
+
NonceType[NonceType["Account"] = 0] = "Account";
|
|
12
|
+
NonceType[NonceType["Selector"] = 1] = "Selector";
|
|
13
|
+
NonceType[NonceType["Unique"] = 2] = "Unique";
|
|
14
|
+
})(NonceType || (exports.NonceType = NonceType = {}));
|
|
15
|
+
/**
|
|
16
|
+
* Builds traits for {bySig} contract by combining params.
|
|
17
|
+
* @param nonceType The type of nonce to use. Default is NonceType.Account.
|
|
18
|
+
* @param deadline The deadline for the message. Default is 0.
|
|
19
|
+
* @param relayer The relayer address. Default is the zero address.
|
|
20
|
+
* @param nonce The nonce. Default is 0.
|
|
21
|
+
* @returns A bigint representing the combined traits.
|
|
22
|
+
* @throws Error if provided with invalid parameters.
|
|
23
|
+
*/
|
|
24
|
+
function buildBySigTraits({ nonceType = NonceType.Account, deadline = 0, relayer = prelude_1.constants.ZERO_ADDRESS.toString(), nonce = 0, } = {}) {
|
|
25
|
+
if (nonceType > 3) {
|
|
26
|
+
throw new Error('Wrong nonce type, it should be less than 4');
|
|
27
|
+
}
|
|
28
|
+
if (deadline > 0xffffffffff) {
|
|
29
|
+
throw new Error('Wrong deadline, it should be less than 0xffffffff');
|
|
30
|
+
}
|
|
31
|
+
if (relayer.length > 42) {
|
|
32
|
+
throw new Error('Wrong relayer address, it should be less than 42 symbols');
|
|
33
|
+
}
|
|
34
|
+
if (nonce > 0xffffffffffffffffffffffffffffffffn) {
|
|
35
|
+
throw new Error('Wrong nonce, it should not be more than 128 bits');
|
|
36
|
+
}
|
|
37
|
+
return (BigInt(nonceType) << 254n) +
|
|
38
|
+
(BigInt(deadline) << 208n) +
|
|
39
|
+
((BigInt(relayer) & 0xffffffffffffffffffffn) << 128n) +
|
|
40
|
+
BigInt(nonce);
|
|
41
|
+
}
|
|
42
|
+
exports.buildBySigTraits = buildBySigTraits;
|
|
43
|
+
/**
|
|
44
|
+
* Computes the EIP-712 hash for a given bySig call.
|
|
45
|
+
* @param name The user readable name of EIP-712 domain.
|
|
46
|
+
* @param version The version of the EIP-712 domain.
|
|
47
|
+
* @param chainId The unique identifier for the blockchain network.
|
|
48
|
+
* @param verifyingContract The Ethereum address of the contract that will verify the signature. This ties the signature to a specific contract.
|
|
49
|
+
* @param sig The data to be signed.
|
|
50
|
+
* @returns The EIP-712 hash of the fully encoded data.
|
|
51
|
+
*/
|
|
52
|
+
function hashBySig(name, version, chainId, verifyingContract, sig) {
|
|
53
|
+
const domain = { name, version, chainId, verifyingContract };
|
|
54
|
+
const types = {
|
|
55
|
+
SignedCall: [
|
|
56
|
+
{ name: 'traits', type: 'uint256' },
|
|
57
|
+
{ name: 'data', type: 'bytes' },
|
|
58
|
+
],
|
|
59
|
+
};
|
|
60
|
+
return hardhat_1.ethers.TypedDataEncoder.hash(domain, types, sig);
|
|
61
|
+
}
|
|
62
|
+
exports.hashBySig = hashBySig;
|
|
63
|
+
/**
|
|
64
|
+
* Signs a given data for {bySig} contract call using EIP-712 standard.
|
|
65
|
+
* @param name The user readable name of EIP-712 domain.
|
|
66
|
+
* @param version The version of the EIP-712 domain.
|
|
67
|
+
* @param chainId The unique identifier for the blockchain network.
|
|
68
|
+
* @param verifyingContract The Ethereum address of the contract that will verify the signature. This ties the signature to a specific contract.
|
|
69
|
+
* @param signer The wallet or signer to sign the data.
|
|
70
|
+
* @param signedCall The call data to be signed, consisting of traits and data.
|
|
71
|
+
* @returns A Promise that resolves to the signature.
|
|
72
|
+
*/
|
|
73
|
+
function signSignedCall(name, version, chainId, verifyingContract, signer, signedCall) {
|
|
74
|
+
return signer.signTypedData({ name, version, chainId, verifyingContract }, { SignedCall: [{ name: 'traits', type: 'uint256' }, { name: 'data', type: 'bytes' }] }, signedCall);
|
|
75
|
+
}
|
|
76
|
+
exports.signSignedCall = signSignedCall;
|
|
77
|
+
//# sourceMappingURL=bySig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bySig.js","sourceRoot":"","sources":["../../src/bySig.ts"],"names":[],"mappings":";;;AAAA,qCAAiC;AACjC,uCAAsC;AAItC;;GAEG;AACH,IAAY,SAIX;AAJD,WAAY,SAAS;IACjB,+CAAO,CAAA;IACP,iDAAQ,CAAA;IACR,6CAAM,CAAA;AACV,CAAC,EAJW,SAAS,yBAAT,SAAS,QAIpB;AAED;;;;;;;;GAQG;AACH,SAAgB,gBAAgB,CAAC,EAC7B,SAAS,GAAG,SAAS,CAAC,OAAO,EAC7B,QAAQ,GAAG,CAAC,EACZ,OAAO,GAAG,mBAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,EAC3C,KAAK,GAAG,CAAC,GACZ,GAAG,EAAE;IACF,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,QAAQ,GAAG,YAAY,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,KAAK,GAAG,mCAAmC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC;QAC1B,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;QAC1B,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,uBAAuB,CAAC,IAAI,IAAI,CAAC;QACrD,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1B,CAAC;AAvBD,4CAuBC;AAOD;;;;;;;;GAQG;AACH,SAAgB,SAAS,CAAC,IAAY,EAAE,OAAe,EAAE,OAAe,EAAE,iBAAyB,EAAE,GAAqB;IACtH,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7D,MAAM,KAAK,GAAG;QACV,UAAU,EAAE;YACR,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE;SAClC;KACJ,CAAC;IACF,OAAO,gBAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;AAC5D,CAAC;AATD,8BASC;AAED;;;;;;;;;GASG;AACH,SAAgB,cAAc,CAC1B,IAAY,EACZ,OAAe,EACf,OAAwB,EACxB,iBAAyB,EACzB,MAAkC,EAClC,UAA4B;IAE5B,OAAO,MAAM,CAAC,aAAa,CACvB,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAC7C,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,EACtF,UAAU,CACb,CAAC;AACN,CAAC;AAbD,wCAaC"}
|
package/dist/src/index.d.ts
CHANGED
package/dist/src/index.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// created from 'create-ts-index'
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
+
tslib_1.__exportStar(require("./bySig"), exports);
|
|
5
6
|
tslib_1.__exportStar(require("./expect"), exports);
|
|
6
7
|
tslib_1.__exportStar(require("./permit"), exports);
|
|
7
8
|
tslib_1.__exportStar(require("./prelude"), exports);
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,iCAAiC;;;AAEjC,mDAAyB;AACzB,mDAAyB;AACzB,oDAA0B;AAC1B,uDAA6B;AAC7B,kDAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,iCAAiC;;;AAEjC,kDAAwB;AACxB,mDAAyB;AACzB,mDAAyB;AACzB,oDAA0B;AAC1B,uDAA6B;AAC7B,kDAAwB"}
|
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
|
|
2
2
|
import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common";
|
|
3
3
|
export interface AddressArrayMockInterface extends Interface {
|
|
4
|
-
getFunction(nameOrSignature: "at" | "get" | "length" | "pop" | "push" | "set"): FunctionFragment;
|
|
4
|
+
getFunction(nameOrSignature: "at" | "get" | "length" | "pop" | "push" | "set" | "unsafeAt"): FunctionFragment;
|
|
5
5
|
encodeFunctionData(functionFragment: "at", values: [BigNumberish]): string;
|
|
6
6
|
encodeFunctionData(functionFragment: "get", values?: undefined): string;
|
|
7
7
|
encodeFunctionData(functionFragment: "length", values?: undefined): string;
|
|
8
8
|
encodeFunctionData(functionFragment: "pop", values?: undefined): string;
|
|
9
9
|
encodeFunctionData(functionFragment: "push", values: [AddressLike]): string;
|
|
10
10
|
encodeFunctionData(functionFragment: "set", values: [BigNumberish, AddressLike]): string;
|
|
11
|
+
encodeFunctionData(functionFragment: "unsafeAt", values: [BigNumberish]): string;
|
|
11
12
|
decodeFunctionResult(functionFragment: "at", data: BytesLike): Result;
|
|
12
13
|
decodeFunctionResult(functionFragment: "get", data: BytesLike): Result;
|
|
13
14
|
decodeFunctionResult(functionFragment: "length", data: BytesLike): Result;
|
|
14
15
|
decodeFunctionResult(functionFragment: "pop", data: BytesLike): Result;
|
|
15
16
|
decodeFunctionResult(functionFragment: "push", data: BytesLike): Result;
|
|
16
17
|
decodeFunctionResult(functionFragment: "set", data: BytesLike): Result;
|
|
18
|
+
decodeFunctionResult(functionFragment: "unsafeAt", data: BytesLike): Result;
|
|
17
19
|
}
|
|
18
20
|
export interface AddressArrayMock extends BaseContract {
|
|
19
21
|
connect(runner?: ContractRunner | null): AddressArrayMock;
|
|
@@ -39,6 +41,7 @@ export interface AddressArrayMock extends BaseContract {
|
|
|
39
41
|
], [
|
|
40
42
|
void
|
|
41
43
|
], "nonpayable">;
|
|
44
|
+
unsafeAt: TypedContractMethod<[i: BigNumberish], [string], "view">;
|
|
42
45
|
getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
|
|
43
46
|
getFunction(nameOrSignature: "at"): TypedContractMethod<[i: BigNumberish], [string], "view">;
|
|
44
47
|
getFunction(nameOrSignature: "get"): TypedContractMethod<[], [string[]], "view">;
|
|
@@ -51,5 +54,6 @@ export interface AddressArrayMock extends BaseContract {
|
|
|
51
54
|
], [
|
|
52
55
|
void
|
|
53
56
|
], "nonpayable">;
|
|
57
|
+
getFunction(nameOrSignature: "unsafeAt"): TypedContractMethod<[i: BigNumberish], [string], "view">;
|
|
54
58
|
filters: {};
|
|
55
59
|
}
|
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
|
|
2
2
|
import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common";
|
|
3
3
|
export interface AddressSetMockInterface extends Interface {
|
|
4
|
-
getFunction(nameOrSignature: "add" | "at" | "contains" | "get" | "length" | "remove"): FunctionFragment;
|
|
4
|
+
getFunction(nameOrSignature: "add" | "at" | "contains" | "get" | "length" | "remove" | "unsafeAt"): FunctionFragment;
|
|
5
5
|
encodeFunctionData(functionFragment: "add", values: [AddressLike]): string;
|
|
6
6
|
encodeFunctionData(functionFragment: "at", values: [BigNumberish]): string;
|
|
7
7
|
encodeFunctionData(functionFragment: "contains", values: [AddressLike]): string;
|
|
8
8
|
encodeFunctionData(functionFragment: "get", values?: undefined): string;
|
|
9
9
|
encodeFunctionData(functionFragment: "length", values?: undefined): string;
|
|
10
10
|
encodeFunctionData(functionFragment: "remove", values: [AddressLike]): string;
|
|
11
|
+
encodeFunctionData(functionFragment: "unsafeAt", values: [BigNumberish]): string;
|
|
11
12
|
decodeFunctionResult(functionFragment: "add", data: BytesLike): Result;
|
|
12
13
|
decodeFunctionResult(functionFragment: "at", data: BytesLike): Result;
|
|
13
14
|
decodeFunctionResult(functionFragment: "contains", data: BytesLike): Result;
|
|
14
15
|
decodeFunctionResult(functionFragment: "get", data: BytesLike): Result;
|
|
15
16
|
decodeFunctionResult(functionFragment: "length", data: BytesLike): Result;
|
|
16
17
|
decodeFunctionResult(functionFragment: "remove", data: BytesLike): Result;
|
|
18
|
+
decodeFunctionResult(functionFragment: "unsafeAt", data: BytesLike): Result;
|
|
17
19
|
}
|
|
18
20
|
export interface AddressSetMock extends BaseContract {
|
|
19
21
|
connect(runner?: ContractRunner | null): AddressSetMock;
|
|
@@ -34,6 +36,7 @@ export interface AddressSetMock extends BaseContract {
|
|
|
34
36
|
get: TypedContractMethod<[], [string[]], "view">;
|
|
35
37
|
length: TypedContractMethod<[], [bigint], "view">;
|
|
36
38
|
remove: TypedContractMethod<[item: AddressLike], [boolean], "nonpayable">;
|
|
39
|
+
unsafeAt: TypedContractMethod<[index: BigNumberish], [string], "view">;
|
|
37
40
|
getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
|
|
38
41
|
getFunction(nameOrSignature: "add"): TypedContractMethod<[item: AddressLike], [boolean], "nonpayable">;
|
|
39
42
|
getFunction(nameOrSignature: "at"): TypedContractMethod<[index: BigNumberish], [string], "view">;
|
|
@@ -41,5 +44,6 @@ export interface AddressSetMock extends BaseContract {
|
|
|
41
44
|
getFunction(nameOrSignature: "get"): TypedContractMethod<[], [string[]], "view">;
|
|
42
45
|
getFunction(nameOrSignature: "length"): TypedContractMethod<[], [bigint], "view">;
|
|
43
46
|
getFunction(nameOrSignature: "remove"): TypedContractMethod<[item: AddressLike], [boolean], "nonpayable">;
|
|
47
|
+
getFunction(nameOrSignature: "unsafeAt"): TypedContractMethod<[index: BigNumberish], [string], "view">;
|
|
44
48
|
filters: {};
|
|
45
49
|
}
|
|
@@ -14,7 +14,7 @@ export declare class AddressArray__factory extends ContractFactory {
|
|
|
14
14
|
deploymentTransaction(): ContractTransactionResponse;
|
|
15
15
|
}>;
|
|
16
16
|
connect(runner: ContractRunner | null): AddressArray__factory;
|
|
17
|
-
static readonly bytecode = "
|
|
17
|
+
static readonly bytecode = "0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220ac40e8ed11ad952f383ac1aa1791ad65cc386cdbf08aadb5466ed1687991bf1664736f6c63430008190033";
|
|
18
18
|
static readonly abi: readonly [{
|
|
19
19
|
readonly inputs: readonly [];
|
|
20
20
|
readonly name: "IndexOutOfBounds";
|
|
@@ -22,7 +22,7 @@ const _abi = [
|
|
|
22
22
|
type: "error",
|
|
23
23
|
},
|
|
24
24
|
];
|
|
25
|
-
const _bytecode = "
|
|
25
|
+
const _bytecode = "0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220ac40e8ed11ad952f383ac1aa1791ad65cc386cdbf08aadb5466ed1687991bf1664736f6c63430008190033";
|
|
26
26
|
const isSuperArgs = (xs) => xs.length > 1;
|
|
27
27
|
class AddressArray__factory extends ethers_1.ContractFactory {
|
|
28
28
|
constructor(...args) {
|
|
@@ -14,7 +14,7 @@ export declare class AddressArrayMock__factory extends ContractFactory {
|
|
|
14
14
|
deploymentTransaction(): ContractTransactionResponse;
|
|
15
15
|
}>;
|
|
16
16
|
connect(runner: ContractRunner | null): AddressArrayMock__factory;
|
|
17
|
-
static readonly bytecode = "
|
|
17
|
+
static readonly bytecode = "0x60808060405234601557610554908161001a8239f35b5f80fdfe6080604081815260049182361015610015575f80fd5b5f3560e01c9081631f7b6d321461049f575080632f30c6f6146103db5780636d4ce63c146102f757806389b09de71461022a578063a4ece52c1461016c578063e0886f90146101065763ec2fd5a11461006c575f80fd5b346101025760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610102578135916401000000008310156100db575073ffffffffffffffffffffffffffffffffffffffff6100cc6020936104df565b92905490519260031b1c168152f35b90517f4e23d035000000000000000000000000000000000000000000000000000000008152fd5b5f80fd5b50346101025760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610102578135918263ffffffff5f5460a01c1611156100db575073ffffffffffffffffffffffffffffffffffffffff6100cc6020936104df565b8234610102575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610102575f549063ffffffff8260a01c1690815f1461020457506001146101de577fffffffffffffffffffffffff0000000000000000000000000000000000000000015f55005b507f80000000000000000000000000000000000000000000000000000000000000005f55005b7f06a2af9e000000000000000000000000000000000000000000000000000000005f525ffd5b5090346101025760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610102573573ffffffffffffffffffffffffffffffffffffffff811681036101025760016020925f5463ffffffff8160a01c1693845f146102d857740100000000000000000000000000000000000000007f800000000000000000000000000000000000000000000000000000000000000092015f551783555b5191018152f35b74010000000000000000000000000000000000000000175f55506102d1565b5034610102575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610102575f549063ffffffff8260a01c1673ffffffffffffffffffffffffffffffffffffffff918051916001946005908260010160051b85018452828086526103ab575b5050509182939193519260208080860192818752875180945286019601925f905b8382106103945786880387f35b845181168852968201969382019390850190610387565b856020911660208601528660015b8481106103c7575050610366565b878154168382861b890101520187906103b9565b5034610102577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610102578035906024359073ffffffffffffffffffffffffffffffffffffffff8083168303610102575f549163ffffffff8360a01c16851015610479575083156104715750507f8000000000000000000000000000000000000000000000000000000000000000179055005b811618175f55005b7f4e23d035000000000000000000000000000000000000000000000000000000005f525ffd5b34610102575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101025760209063ffffffff5f5460a01c168152f35b6401000000008110156104f157905f90565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea2646970667358221220e5c45ad16eb25c7125b95e518a95d19878378e62e6985f11573bce7486b8927c64736f6c63430008190033";
|
|
18
18
|
static readonly abi: readonly [{
|
|
19
19
|
readonly inputs: readonly [];
|
|
20
20
|
readonly name: "IndexOutOfBounds";
|
|
@@ -91,6 +91,20 @@ export declare class AddressArrayMock__factory extends ContractFactory {
|
|
|
91
91
|
readonly outputs: readonly [];
|
|
92
92
|
readonly stateMutability: "nonpayable";
|
|
93
93
|
readonly type: "function";
|
|
94
|
+
}, {
|
|
95
|
+
readonly inputs: readonly [{
|
|
96
|
+
readonly internalType: "uint256";
|
|
97
|
+
readonly name: "i";
|
|
98
|
+
readonly type: "uint256";
|
|
99
|
+
}];
|
|
100
|
+
readonly name: "unsafeAt";
|
|
101
|
+
readonly outputs: readonly [{
|
|
102
|
+
readonly internalType: "address";
|
|
103
|
+
readonly name: "";
|
|
104
|
+
readonly type: "address";
|
|
105
|
+
}];
|
|
106
|
+
readonly stateMutability: "view";
|
|
107
|
+
readonly type: "function";
|
|
94
108
|
}];
|
|
95
109
|
static createInterface(): AddressArrayMockInterface;
|
|
96
110
|
static connect(address: string, runner?: ContractRunner | null): AddressArrayMock;
|
|
@@ -105,8 +105,27 @@ const _abi = [
|
|
|
105
105
|
stateMutability: "nonpayable",
|
|
106
106
|
type: "function",
|
|
107
107
|
},
|
|
108
|
+
{
|
|
109
|
+
inputs: [
|
|
110
|
+
{
|
|
111
|
+
internalType: "uint256",
|
|
112
|
+
name: "i",
|
|
113
|
+
type: "uint256",
|
|
114
|
+
},
|
|
115
|
+
],
|
|
116
|
+
name: "unsafeAt",
|
|
117
|
+
outputs: [
|
|
118
|
+
{
|
|
119
|
+
internalType: "address",
|
|
120
|
+
name: "",
|
|
121
|
+
type: "address",
|
|
122
|
+
},
|
|
123
|
+
],
|
|
124
|
+
stateMutability: "view",
|
|
125
|
+
type: "function",
|
|
126
|
+
},
|
|
108
127
|
];
|
|
109
|
-
const _bytecode = "
|
|
128
|
+
const _bytecode = "0x60808060405234601557610554908161001a8239f35b5f80fdfe6080604081815260049182361015610015575f80fd5b5f3560e01c9081631f7b6d321461049f575080632f30c6f6146103db5780636d4ce63c146102f757806389b09de71461022a578063a4ece52c1461016c578063e0886f90146101065763ec2fd5a11461006c575f80fd5b346101025760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610102578135916401000000008310156100db575073ffffffffffffffffffffffffffffffffffffffff6100cc6020936104df565b92905490519260031b1c168152f35b90517f4e23d035000000000000000000000000000000000000000000000000000000008152fd5b5f80fd5b50346101025760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610102578135918263ffffffff5f5460a01c1611156100db575073ffffffffffffffffffffffffffffffffffffffff6100cc6020936104df565b8234610102575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610102575f549063ffffffff8260a01c1690815f1461020457506001146101de577fffffffffffffffffffffffff0000000000000000000000000000000000000000015f55005b507f80000000000000000000000000000000000000000000000000000000000000005f55005b7f06a2af9e000000000000000000000000000000000000000000000000000000005f525ffd5b5090346101025760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610102573573ffffffffffffffffffffffffffffffffffffffff811681036101025760016020925f5463ffffffff8160a01c1693845f146102d857740100000000000000000000000000000000000000007f800000000000000000000000000000000000000000000000000000000000000092015f551783555b5191018152f35b74010000000000000000000000000000000000000000175f55506102d1565b5034610102575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610102575f549063ffffffff8260a01c1673ffffffffffffffffffffffffffffffffffffffff918051916001946005908260010160051b85018452828086526103ab575b5050509182939193519260208080860192818752875180945286019601925f905b8382106103945786880387f35b845181168852968201969382019390850190610387565b856020911660208601528660015b8481106103c7575050610366565b878154168382861b890101520187906103b9565b5034610102577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610102578035906024359073ffffffffffffffffffffffffffffffffffffffff8083168303610102575f549163ffffffff8360a01c16851015610479575083156104715750507f8000000000000000000000000000000000000000000000000000000000000000179055005b811618175f55005b7f4e23d035000000000000000000000000000000000000000000000000000000005f525ffd5b34610102575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101025760209063ffffffff5f5460a01c168152f35b6401000000008110156104f157905f90565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea2646970667358221220e5c45ad16eb25c7125b95e518a95d19878378e62e6985f11573bce7486b8927c64736f6c63430008190033";
|
|
110
129
|
const isSuperArgs = (xs) => xs.length > 1;
|
|
111
130
|
class AddressArrayMock__factory extends ethers_1.ContractFactory {
|
|
112
131
|
constructor(...args) {
|
package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AddressArrayMock__factory.js","sourceRoot":"","sources":["../../../../../../typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,mCAKgB;AAQhB,MAAM,IAAI,GAAG;IACX;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,IAAI;QACV,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,KAAK;QACX,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,WAAW;gBACzB,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,WAAW;aAClB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;CACO,CAAC;AAEX,MAAM,SAAS,GACb,
|
|
1
|
+
{"version":3,"file":"AddressArrayMock__factory.js","sourceRoot":"","sources":["../../../../../../typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,mCAKgB;AAQhB,MAAM,IAAI,GAAG;IACX;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,IAAI;QACV,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,KAAK;QACX,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,WAAW;gBACzB,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,WAAW;aAClB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACO,CAAC;AAEX,MAAM,SAAS,GACb,guFAAguF,CAAC;AAMnuF,MAAM,WAAW,GAAG,CAClB,EAAqC,EACgB,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAExE,MAAa,yBAA0B,SAAQ,wBAAe;IAC5D,YAAY,GAAG,IAAuC;QACpD,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAEQ,oBAAoB,CAC3B,SAAmD;QAEnD,OAAO,KAAK,CAAC,oBAAoB,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IACQ,MAAM,CAAC,SAAmD;QACjE,OAAO,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAIlC,CAAC;IACJ,CAAC;IACQ,OAAO,CAAC,MAA6B;QAC5C,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAA8B,CAAC;IAC5D,CAAC;IAID,MAAM,CAAC,eAAe;QACpB,OAAO,IAAI,kBAAS,CAAC,IAAI,CAA8B,CAAC;IAC1D,CAAC;IACD,MAAM,CAAC,OAAO,CACZ,OAAe,EACf,MAA8B;QAE9B,OAAO,IAAI,iBAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAgC,CAAC;IAC5E,CAAC;;AAnCH,8DAoCC;AAXiB,kCAAQ,GAAG,SAAS,CAAC;AACrB,6BAAG,GAAG,IAAI,CAAC"}
|
|
@@ -14,7 +14,7 @@ export declare class AddressSetMock__factory extends ContractFactory {
|
|
|
14
14
|
deploymentTransaction(): ContractTransactionResponse;
|
|
15
15
|
}>;
|
|
16
16
|
connect(runner: ContractRunner | null): AddressSetMock__factory;
|
|
17
|
-
static readonly bytecode = "
|
|
17
|
+
static readonly bytecode = "0x608080604052346015576106f9908161001a8239f35b5f80fdfe60406080815260049081361015610014575f80fd5b5f3560e01c80630a3b0a4f146103965780631f7b6d321461035257806329092d0e146102ee5780635dbe47e81461024d5780636d4ce63c14610169578063e0886f90146101035763ec2fd5a114610069575f80fd5b346100ff5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff578135916401000000008310156100d8575073ffffffffffffffffffffffffffffffffffffffff6100c9602093610684565b92905490519260031b1c168152f35b90517f4e23d035000000000000000000000000000000000000000000000000000000008152fd5b5f80fd5b50346100ff5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff578135918263ffffffff5f5460a01c1611156100d8575073ffffffffffffffffffffffffffffffffffffffff6100c9602093610684565b50346100ff575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff575f549063ffffffff8260a01c1673ffffffffffffffffffffffffffffffffffffffff918051916001946005908260010160051b850184528280865261021d575b5050509182939193519260208080860192818752875180945286019601925f905b8382106102065786880387f35b8451811688529682019693820193908501906101f9565b856020911660208601528660015b8481106102395750506101d8565b878154168382861b8901015201879061022b565b5090346100ff5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff57359073ffffffffffffffffffffffffffffffffffffffff82168092036100ff576020915f526401000000008252805f20549081151591826102c3575b50519015158152f35b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff141591505f6102ba565b5090346100ff5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff57359073ffffffffffffffffffffffffffffffffffffffff821682036100ff576103496020926104d2565b90519015158152f35b50346100ff575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff5760209063ffffffff5f5460a01c169051908152f35b5090346100ff5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff57359073ffffffffffffffffffffffffffffffffffffffff821682036100ff5761034960209273ffffffffffffffffffffffffffffffffffffffff81165f5264010000000060205260405f2090815480151590816104a7575b506104a1576001905f5463ffffffff8160a01c1691825f1461048257740100000000000000000000000000000000000000007f800000000000000000000000000000000000000000000000000000000000000092015f551781555b019055600190565b74010000000000000000000000000000000000000000175f555061047a565b50505f90565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff915014155f61041f565b73ffffffffffffffffffffffffffffffffffffffff809116805f52640100000000908160205260405f20928354937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8091558415801561067b575b610672575f549063ffffffff90818360a01c1680815f1461064a57859160011461061d5790827fffffffffffffffffffffffff00000000000000000000000000000000000000009201541693015f555b838316948503610594575b50505050505050600190565b8601925f54918260a01c168410156105f55783156105e95750507f80000000000000000000000000000000000000000000000000000000000000001790555b5f5260205260405f20555f808080808080610588565b811618175f55506105d3565b7f4e23d035000000000000000000000000000000000000000000000000000000005f5260045ffd5b50909216917f80000000000000000000000000000000000000000000000000000000000000005f5561057d565b7f06a2af9e000000000000000000000000000000000000000000000000000000005f5260045ffd5b50505050505f90565b5080851461052d565b64010000000081101561069657905f90565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea264697066735822122030f6547b429cc93ff163d91581a04b537659e627ade095d96d006d957a1db6d864736f6c63430008190033";
|
|
18
18
|
static readonly abi: readonly [{
|
|
19
19
|
readonly inputs: readonly [];
|
|
20
20
|
readonly name: "IndexOutOfBounds";
|
|
@@ -95,6 +95,20 @@ export declare class AddressSetMock__factory extends ContractFactory {
|
|
|
95
95
|
}];
|
|
96
96
|
readonly stateMutability: "nonpayable";
|
|
97
97
|
readonly type: "function";
|
|
98
|
+
}, {
|
|
99
|
+
readonly inputs: readonly [{
|
|
100
|
+
readonly internalType: "uint256";
|
|
101
|
+
readonly name: "index";
|
|
102
|
+
readonly type: "uint256";
|
|
103
|
+
}];
|
|
104
|
+
readonly name: "unsafeAt";
|
|
105
|
+
readonly outputs: readonly [{
|
|
106
|
+
readonly internalType: "address";
|
|
107
|
+
readonly name: "";
|
|
108
|
+
readonly type: "address";
|
|
109
|
+
}];
|
|
110
|
+
readonly stateMutability: "view";
|
|
111
|
+
readonly type: "function";
|
|
98
112
|
}];
|
|
99
113
|
static createInterface(): AddressSetMockInterface;
|
|
100
114
|
static connect(address: string, runner?: ContractRunner | null): AddressSetMock;
|
|
@@ -113,8 +113,27 @@ const _abi = [
|
|
|
113
113
|
stateMutability: "nonpayable",
|
|
114
114
|
type: "function",
|
|
115
115
|
},
|
|
116
|
+
{
|
|
117
|
+
inputs: [
|
|
118
|
+
{
|
|
119
|
+
internalType: "uint256",
|
|
120
|
+
name: "index",
|
|
121
|
+
type: "uint256",
|
|
122
|
+
},
|
|
123
|
+
],
|
|
124
|
+
name: "unsafeAt",
|
|
125
|
+
outputs: [
|
|
126
|
+
{
|
|
127
|
+
internalType: "address",
|
|
128
|
+
name: "",
|
|
129
|
+
type: "address",
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
stateMutability: "view",
|
|
133
|
+
type: "function",
|
|
134
|
+
},
|
|
116
135
|
];
|
|
117
|
-
const _bytecode = "
|
|
136
|
+
const _bytecode = "0x608080604052346015576106f9908161001a8239f35b5f80fdfe60406080815260049081361015610014575f80fd5b5f3560e01c80630a3b0a4f146103965780631f7b6d321461035257806329092d0e146102ee5780635dbe47e81461024d5780636d4ce63c14610169578063e0886f90146101035763ec2fd5a114610069575f80fd5b346100ff5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff578135916401000000008310156100d8575073ffffffffffffffffffffffffffffffffffffffff6100c9602093610684565b92905490519260031b1c168152f35b90517f4e23d035000000000000000000000000000000000000000000000000000000008152fd5b5f80fd5b50346100ff5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff578135918263ffffffff5f5460a01c1611156100d8575073ffffffffffffffffffffffffffffffffffffffff6100c9602093610684565b50346100ff575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff575f549063ffffffff8260a01c1673ffffffffffffffffffffffffffffffffffffffff918051916001946005908260010160051b850184528280865261021d575b5050509182939193519260208080860192818752875180945286019601925f905b8382106102065786880387f35b8451811688529682019693820193908501906101f9565b856020911660208601528660015b8481106102395750506101d8565b878154168382861b8901015201879061022b565b5090346100ff5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff57359073ffffffffffffffffffffffffffffffffffffffff82168092036100ff576020915f526401000000008252805f20549081151591826102c3575b50519015158152f35b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff141591505f6102ba565b5090346100ff5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff57359073ffffffffffffffffffffffffffffffffffffffff821682036100ff576103496020926104d2565b90519015158152f35b50346100ff575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff5760209063ffffffff5f5460a01c169051908152f35b5090346100ff5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ff57359073ffffffffffffffffffffffffffffffffffffffff821682036100ff5761034960209273ffffffffffffffffffffffffffffffffffffffff81165f5264010000000060205260405f2090815480151590816104a7575b506104a1576001905f5463ffffffff8160a01c1691825f1461048257740100000000000000000000000000000000000000007f800000000000000000000000000000000000000000000000000000000000000092015f551781555b019055600190565b74010000000000000000000000000000000000000000175f555061047a565b50505f90565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff915014155f61041f565b73ffffffffffffffffffffffffffffffffffffffff809116805f52640100000000908160205260405f20928354937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8091558415801561067b575b610672575f549063ffffffff90818360a01c1680815f1461064a57859160011461061d5790827fffffffffffffffffffffffff00000000000000000000000000000000000000009201541693015f555b838316948503610594575b50505050505050600190565b8601925f54918260a01c168410156105f55783156105e95750507f80000000000000000000000000000000000000000000000000000000000000001790555b5f5260205260405f20555f808080808080610588565b811618175f55506105d3565b7f4e23d035000000000000000000000000000000000000000000000000000000005f5260045ffd5b50909216917f80000000000000000000000000000000000000000000000000000000000000005f5561057d565b7f06a2af9e000000000000000000000000000000000000000000000000000000005f5260045ffd5b50505050505f90565b5080851461052d565b64010000000081101561069657905f90565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea264697066735822122030f6547b429cc93ff163d91581a04b537659e627ade095d96d006d957a1db6d864736f6c63430008190033";
|
|
118
137
|
const isSuperArgs = (xs) => xs.length > 1;
|
|
119
138
|
class AddressSetMock__factory extends ethers_1.ContractFactory {
|
|
120
139
|
constructor(...args) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AddressSetMock__factory.js","sourceRoot":"","sources":["../../../../../../typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,mCAKgB;AAQhB,MAAM,IAAI,GAAG;IACX;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,KAAK;QACX,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,IAAI;QACV,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,KAAK;QACX,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,WAAW;gBACzB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,WAAW;aAClB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;CACO,CAAC;AAEX,MAAM,SAAS,GACb,
|
|
1
|
+
{"version":3,"file":"AddressSetMock__factory.js","sourceRoot":"","sources":["../../../../../../typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,mCAKgB;AAQhB,MAAM,IAAI,GAAG;IACX;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,KAAK;QACX,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,IAAI;QACV,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,KAAK;QACX,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,WAAW;gBACzB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,WAAW;aAClB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACO,CAAC;AAEX,MAAM,SAAS,GACb,0iHAA0iH,CAAC;AAM7iH,MAAM,WAAW,GAAG,CAClB,EAAmC,EACkB,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAExE,MAAa,uBAAwB,SAAQ,wBAAe;IAC1D,YAAY,GAAG,IAAqC;QAClD,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAEQ,oBAAoB,CAC3B,SAAmD;QAEnD,OAAO,KAAK,CAAC,oBAAoB,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IACQ,MAAM,CAAC,SAAmD;QACjE,OAAO,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAIlC,CAAC;IACJ,CAAC;IACQ,OAAO,CAAC,MAA6B;QAC5C,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAA4B,CAAC;IAC1D,CAAC;IAID,MAAM,CAAC,eAAe;QACpB,OAAO,IAAI,kBAAS,CAAC,IAAI,CAA4B,CAAC;IACxD,CAAC;IACD,MAAM,CAAC,OAAO,CACZ,OAAe,EACf,MAA8B;QAE9B,OAAO,IAAI,iBAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAA8B,CAAC;IAC1E,CAAC;;AAnCH,0DAoCC;AAXiB,gCAAQ,GAAG,SAAS,CAAC;AACrB,2BAAG,GAAG,IAAI,CAAC"}
|
|
@@ -14,7 +14,7 @@ export declare class TokenWithBySig__factory extends ContractFactory {
|
|
|
14
14
|
deploymentTransaction(): ContractTransactionResponse;
|
|
15
15
|
}>;
|
|
16
16
|
connect(runner: ContractRunner | null): TokenWithBySig__factory;
|
|
17
|
-
static readonly bytecode = "0x61016060408181523461042457612a5f803803809161001e8286610428565b84398201916060818403126104245780516001600160401b039290838111610424578461004c91840161044b565b9160209081810151858111610424578661006791830161044b565b95838201518681116104245761007d920161044b565b9083518581116103475760038054906001928383811c9316801561041a575b8584101461040657601f928381116103c3575b508085848211600114610366575f9161035b575b505f1982841b1c191690841b1781555b885191888311610347576004998a548581811c9116801561033d575b8782101461032a578281116102e7575b5085918411600114610285579383949184925f9561027a575b50501b925f19911b1c19161786555b33156102645760058054336001600160a01b0319821681179092556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3610178846104a0565b9261012093845261018883610628565b94610140958652828151910120928360e05282815191012096610100978089524660a0528251938401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f86528385015260608401524660808401523060a084015260a0835260c08301968388109088111761025157508590525190206080523060c0526122fa93846107658539608051846121d2015260a0518461229e015260c051846121a3015260e051846122210152518361224701525182610867015251816108910152f35b604190634e487b7160e01b5f525260245ffd5b8251631e4fbdf760e01b81525f81880152602490fd5b015193505f80610118565b9190601f198416928b5f5284875f20945f5b89898383106102d057505050106102b7575b50505050811b018655610127565b01519060f8845f19921b161c191690555f8080806102a9565b868601518955909701969485019488935001610297565b8b5f52865f208380870160051c820192898810610321575b0160051c019086905b8281106103165750506100ff565b5f8155018690610308565b925081926102ff565b60228c634e487b7160e01b5f525260245ffd5b90607f16906100ef565b634e487b7160e01b5f52604160045260245ffd5b90508801515f6100c3565b859250601f19821690845f52875f20915f5b898d8383106103ae575050508311610397575b5050811b0181556100d3565b8a01515f1983861b60f8161c191690555f8061038b565b84015185558996909401939283019201610378565b825f52855f208480840160051c8201928885106103fd575b0160051c019085905b8281106103f25750506100af565b5f81550185906103e4565b925081926103db565b634e487b7160e01b5f52602260045260245ffd5b92607f169261009c565b5f80fd5b601f909101601f19168101906001600160401b0382119082101761034757604052565b81601f82011215610424578051906001600160401b038211610347576040519261047f601f8401601f191660200185610428565b8284526020838301011161042457815f9260208093018386015e8301015290565b8051602090818110156105165750601f8251116104d857808251920151908083106104ca57501790565b825f19910360031b1b161790565b60448260405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b906001600160401b03821161034757600654926001938481811c9116801561061e575b8382101461040657601f81116105ea575b5081601f841160011461058657509282939183925f9461057b575b50501b915f199060031b1c19161760065560ff90565b015192505f80610565565b919083601f19811660065f52845f20945f905b888383106105d057505050106105b8575b505050811b0160065560ff90565b01515f1960f88460031b161c191690555f80806105aa565b858701518855909601959485019487935090810190610599565b60065f5284601f845f20920160051c820191601f860160051c015b82811061061357505061054a565b5f8155018590610605565b90607f1690610539565b8051602090818110156106525750601f8251116104d857808251920151908083106104ca57501790565b906001600160401b03821161034757600754926001938481811c9116801561075a575b8382101461040657601f8111610726575b5081601f84116001146106c257509282939183925f946106b7575b50501b915f199060031b1c19161760075560ff90565b015192505f806106a1565b919083601f19811660075f52845f20945f905b8883831061070c57505050106106f4575b505050811b0160075560ff90565b01515f1960f88460031b161c191690555f80806106e6565b8587015188559096019594850194879350908101906106d5565b60075f5284601f845f20920160051c820191601f860160051c015b82811061074f575050610686565b5f8155018590610741565b90607f169061067556fe608060409080825260049081361015610016575f80fd5b5f3560e01c90816306fdde03146114b75750806308b8ae3e14611439578063095ea7b3146113295780630acebbb3146112b757806318160ddd1461127b57806323b872dd146110ca5780632ca6f77114610e065780632dffc93814610dae578063313ce56714610d755780633408e47014610d3d57806334dd202614610ca25780633cc67ac714610c28578063404f551d14610b7c57806340c10f1914610aa057806370a0823114610a3f578063715018a6146109a357806384b0196e146108335780638c3adb0a146107b85780638d7e4ea0146107545780638da5cb5b1461070257806395d89b41146105df5780639dc29fac14610498578063a9059cbb14610443578063dd62ed3e146103ce578063e032e04f14610368578063eb24bae41461022f5763f2fde38b14610149575f80fd5b3461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610180611605565b90610189611e00565b73ffffffffffffffffffffffffffffffffffffffff8092169283156101fc575050600554827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b905f60249251917f1e4fbdf7000000000000000000000000000000000000000000000000000000008352820152fd5b5f80fd5b5060807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610262611605565b9160243567ffffffffffffffff60443581811161022b57610286903690860161164b565b919060643591821161022b576102b5926102a66102af933690890161164b565b505036916117df565b30611db9565b926102be611e66565b9473ffffffffffffffffffffffffffffffffffffffff809116913083036103415750948260809261033d976103157f91d424c26d66241302801829dc5d75ac3b3036414855f2088205e8f2705c051b963386611901565b865193168352336020840152858301526060820152a1519182916020835260208301906115c2565b0390f35b84517fa0f3feea000000000000000000000000000000000000000000000000000000008152fd5b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff6103b8611605565b165f526401000000088252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090610408611605565b610410611628565b9073ffffffffffffffffffffffffffffffffffffffff8091165f5260018452825f2091165f528252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090610491610480611605565b6024359061048c611e66565b611901565b5160018152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576104d0611605565b90602435926104dd611e00565b73ffffffffffffffffffffffffffffffffffffffff83169283156105b057835f525f602052825f205491858310610551575f857fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020898881898688528785520381872055816002540360025551908152a3005b6105ac868486519485947fe450d38c000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b0390fd5b505f60249251917f96c6fd1e000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57815191825f835461061e81611679565b90818452602095600191876001821691825f146106bd575050600114610661575b50505061033d9291610652910385611713565b519282849384528301906115c2565b5f90815286935091907f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8284106106a5575050508201018161065261033d61063f565b8054848a01860152889550879490930192810161068c565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168782015293151560051b86019093019350849250610652915061033d905061063f565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff600554169051908152f35b50903461022b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9160208336011261022b5780359267ffffffffffffffff841161022b578290843603011261022b576020926107b1910161184f565b9051908152f35b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57359063ffffffff821680920361022b5761082f9073ffffffffffffffffffffffffffffffffffffffff610819611e66565b165f526401000000086020525f20918254611815565b9055005b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5761088b7f0000000000000000000000000000000000000000000000000000000000000000611f9a565b916108b57f00000000000000000000000000000000000000000000000000000000000000006120cf565b815191602091602084019484861067ffffffffffffffff871117610977575061092c826020928761091f99989795525f855281519889987f0f000000000000000000000000000000000000000000000000000000000000008a5260e0868b015260e08a01906115c2565b91888303908901526115c2565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b82811061096057505050500390f35b835185528695509381019392810192600101610951565b6041907f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b3461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576109d9611e00565b5f73ffffffffffffffffffffffffffffffffffffffff6005547fffffffffffffffffffffffff00000000000000000000000000000000000000008116600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff610a8f611605565b165f525f8252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610ad8611605565b9073ffffffffffffffffffffffffffffffffffffffff60243592610afa611e00565b16928315610b4e57506020827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92610b355f95600254611815565b60025585855284835280852082815401905551908152a3005b5f60249251917fec442f05000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b576024359163ffffffff831680930361022b5761082f9173ffffffffffffffffffffffffffffffffffffffff610c09611e66565b165f52640100000009602052815f20905f526020525f20918254611815565b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760ff600191359273ffffffffffffffffffffffffffffffffffffffff610c7c611e66565b165f5264010000000a602052805f208460081c5f526020525f2092161b81541790555f80f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610cd9611605565b906024357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b5773ffffffffffffffffffffffffffffffffffffffff602093165f526401000000098352815f20905f528252805f20549051908152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209051468152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020905160128152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090517f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648152f35b50907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9060608236011261022b57610e3c611605565b9160243567ffffffffffffffff80821161022b578382870193833603011261022b5760443590811161022b57610e75903690870161164b565b9083359264ffffffffff8460d01c1642116110a257610e92611e66565b69ffffffffffffffffffff808660801c16908115928315611096575b5050501561106e576024610ecf910193610ec88587611754565b9189611a6b565b156110465790610ee891610ee28561184f565b87611c30565b1561101e576102af610f54610f5b92600894855463ffffffff98898260a01c1691825f14610ffe57740100000000000000000000000000000000000000000188557f80000000000000000000000000000000000000000000000000000000000000001790870155611754565b36916117df565b928154908160a01c16805f14610fd75761033d9550600114610fae577fffffffffffffffffffffffff00000000000000000000000000000000000000000190555b519182916020835260208301906115c2565b507f80000000000000000000000000000000000000000000000000000000000000009055610f9c565b857f06a2af9e000000000000000000000000000000000000000000000000000000005f525ffd5b507401000000000000000000000000000000000000000017875550611754565b8483517f356a4418000000000000000000000000000000000000000000000000000000008152fd5b8685517fd9c6386f000000000000000000000000000000000000000000000000000000008152fd5b8786517f3b06dcfb000000000000000000000000000000000000000000000000000000008152fd5b161490505f8080610eae565b8786517f559895a3000000000000000000000000000000000000000000000000000000008152fd5b503461022b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57611102611605565b61110a611628565b9060443592611117611e66565b9073ffffffffffffffffffffffffffffffffffffffff9081841690815f526001602052875f2092841692835f52602052875f2054937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8503611182575b6020896104918a8a8a611901565b87851061121f575081156111f05782156111c157505f908152600160209081528782209282529182528681209286900390925583916104919080611174565b6024905f8951917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024905f8951917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b906105ac88868b519485947ffb8f41b2000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020906002549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff611306611605565b165f5264010000000a8252805f2060243560081c5f528252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57611361611605565b6024359073ffffffffffffffffffffffffffffffffffffffff80611383611e66565b1691821561140a57169182156113db5760208095507f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f5260018252855f20855f52825280865f20558551908152a35160018152f35b6024855f8651917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024865f8751917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090611473611605565b9073ffffffffffffffffffffffffffffffffffffffff60243592165f5264010000000a8352805f208260081c5f528352600160ff825f2054925193161b1615158152f35b833461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760035490825f6114f584611679565b808352602094600190866001821691825f14611582575050600114611527575b505061033d9291610652910385611713565b9085925060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b915f925b82841061156a5750505082010181610652611515565b8054848a018601528895508794909301928101611554565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168682015292151560051b850190920192508391506106529050611515565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b9181601f8401121561022b5782359167ffffffffffffffff831161022b576020838186019501011161022b57565b90600182811c921680156116c0575b602083101461169357565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691611688565b6040810190811067ffffffffffffffff8211176116e657604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176116e657604052565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18136030182121561022b570180359067ffffffffffffffff821161022b5760200191813603831361022b57565b67ffffffffffffffff81116116e657601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926117eb826117a5565b916117f96040519384611713565b82948184528183011161022b578281602093845f960137010152565b9190820180921161182257565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b61185f610f546020830183611754565b60208151910120906040519160208301917f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648352356040840152606083015260608252608082019180831067ffffffffffffffff8411176116e6576042926040525190206118cb61218c565b90604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522090565b9173ffffffffffffffffffffffffffffffffffffffff808416928315611a0e57169283156119de57825f525f60205260405f2054908282106119865750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f5260405f20818154019055604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101829052606490fd5b60246040517fec442f050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60246040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f6004820152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146118225760010190565b9190928360fe1c9160028311611c06576003831015611bd9576fffffffffffffffffffffffffffffffff8516918315611ba25760018414611b0d57505050600214611ab65750505f90565b73ffffffffffffffffffffffffffffffffffffffff165f5264010000000a60205260405f206effffffffffffffffffffffffffffff8260081c165f5260205260405f2090600160ff835492161b8117809255141590565b92509273ffffffffffffffffffffffffffffffffffffffff919450165f5264010000000960205260405f2091357fffffffff000000000000000000000000000000000000000000000000000000009181838093169160048110611b8c575b50509050165f5260205260405f2090815491611b8683611a3e565b90551490565b8391925060040360031b1b161681905f80611b6b565b505092505073ffffffffffffffffffffffffffffffffffffffff165f5264010000000860205260405f2090815491611b8683611a3e565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60046040517f5f640821000000000000000000000000000000000000000000000000000000008152fd5b90919273ffffffffffffffffffffffffffffffffffffffff91828116928315611daf57604093848414918215611da4575b82611cd7575b5050611ccd57602092825f9384978351937f1626ba7e0000000000000000000000000000000000000000000000000000000098898652600486015260248501528160448501526064840137606401915afa611cc0575090565b5f51143d60201416919050565b5050505050600190565b9091505f85518580604114611d8c57604014611d4757505f805b611d00575b5016145f80611c67565b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a160608201511015611cf65760209150608081895f935282805260015afa505f515f611cf6565b807f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208b01358060ff1c601b01602084015260208c8b850137166060820152611cf1565b50868901355f1a602082015280878a81830137611cf1565b604185149250611c61565b5050505050505f90565b5f80611df593602081519101845af43d15611df8573d91611dd9836117a5565b92611de76040519485611713565b83523d5f602085013e611efa565b90565b606091611efa565b73ffffffffffffffffffffffffffffffffffffffff806005541681611e23611e66565b1603611e2c5750565b602490611e37611e66565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815291166004820152fd5b63ffffffff60085460a01c168015611ef5577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8101818111611822576401000000001115611ecb576007015473ffffffffffffffffffffffffffffffffffffffff1690565b60046040517f4e23d035000000000000000000000000000000000000000000000000000000008152fd5b503390565b90611f395750805115611f0f57805190602001fd5b60046040517f1425ea42000000000000000000000000000000000000000000000000000000008152fd5b81511580611f91575b611f4a575090565b60249073ffffffffffffffffffffffffffffffffffffffff604051917f9996b315000000000000000000000000000000000000000000000000000000008352166004820152fd5b50803b15611f42565b60ff8114611ff05760ff811690601f8211611fc65760405191611fbc836116ca565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b50604051600654815f61200283611679565b8083529260209060019081811690811561208c575060011461202d575b5050611df592500382611713565b91509260065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f935f925b8284106120745750611df59450505081016020015f8061201f565b85548785018301529485019486945092810192612059565b905060209350611df59592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f8061201f565b60ff81146120f15760ff811690601f8211611fc65760405191611fbc836116ca565b50604051600754815f61210383611679565b8083529260209060019081811690811561208c575060011461212d575050611df592500382611713565b91509260075f527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688935f925b8284106121745750611df59450505081016020015f8061201f565b85548785018301529485019486945092810192612159565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630148061229b575b156121f4577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff8211176116e65760405251902090565b507f000000000000000000000000000000000000000000000000000000000000000046146121cb56fea26469706673582212208a65b092836e1f5939c009688896508c421640ebd0bc63112364c8926163b45e64736f6c63430008190033";
|
|
17
|
+
static readonly bytecode = "0x61016060408181523461042457612a5f803803809161001e8286610428565b84398201916060818403126104245780516001600160401b039290838111610424578461004c91840161044b565b9160209081810151858111610424578661006791830161044b565b95838201518681116104245761007d920161044b565b9083518581116103475760038054906001928383811c9316801561041a575b8584101461040657601f928381116103c3575b508085848211600114610366575f9161035b575b505f1982841b1c191690841b1781555b885191888311610347576004998a548581811c9116801561033d575b8782101461032a578281116102e7575b5085918411600114610285579383949184925f9561027a575b50501b925f19911b1c19161786555b33156102645760058054336001600160a01b0319821681179092556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3610178846104a0565b9261012093845261018883610628565b94610140958652828151910120928360e05282815191012096610100978089524660a0528251938401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f86528385015260608401524660808401523060a084015260a0835260c08301968388109088111761025157508590525190206080523060c0526122fa93846107658539608051846121d2015260a0518461229e015260c051846121a3015260e051846122210152518361224701525182610867015251816108910152f35b604190634e487b7160e01b5f525260245ffd5b8251631e4fbdf760e01b81525f81880152602490fd5b015193505f80610118565b9190601f198416928b5f5284875f20945f5b89898383106102d057505050106102b7575b50505050811b018655610127565b01519060f8845f19921b161c191690555f8080806102a9565b868601518955909701969485019488935001610297565b8b5f52865f208380870160051c820192898810610321575b0160051c019086905b8281106103165750506100ff565b5f8155018690610308565b925081926102ff565b60228c634e487b7160e01b5f525260245ffd5b90607f16906100ef565b634e487b7160e01b5f52604160045260245ffd5b90508801515f6100c3565b859250601f19821690845f52875f20915f5b898d8383106103ae575050508311610397575b5050811b0181556100d3565b8a01515f1983861b60f8161c191690555f8061038b565b84015185558996909401939283019201610378565b825f52855f208480840160051c8201928885106103fd575b0160051c019085905b8281106103f25750506100af565b5f81550185906103e4565b925081926103db565b634e487b7160e01b5f52602260045260245ffd5b92607f169261009c565b5f80fd5b601f909101601f19168101906001600160401b0382119082101761034757604052565b81601f82011215610424578051906001600160401b038211610347576040519261047f601f8401601f191660200185610428565b8284526020838301011161042457815f9260208093018386015e8301015290565b8051602090818110156105165750601f8251116104d857808251920151908083106104ca57501790565b825f19910360031b1b161790565b60448260405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b906001600160401b03821161034757600654926001938481811c9116801561061e575b8382101461040657601f81116105ea575b5081601f841160011461058657509282939183925f9461057b575b50501b915f199060031b1c19161760065560ff90565b015192505f80610565565b919083601f19811660065f52845f20945f905b888383106105d057505050106105b8575b505050811b0160065560ff90565b01515f1960f88460031b161c191690555f80806105aa565b858701518855909601959485019487935090810190610599565b60065f5284601f845f20920160051c820191601f860160051c015b82811061061357505061054a565b5f8155018590610605565b90607f1690610539565b8051602090818110156106525750601f8251116104d857808251920151908083106104ca57501790565b906001600160401b03821161034757600754926001938481811c9116801561075a575b8382101461040657601f8111610726575b5081601f84116001146106c257509282939183925f946106b7575b50501b915f199060031b1c19161760075560ff90565b015192505f806106a1565b919083601f19811660075f52845f20945f905b8883831061070c57505050106106f4575b505050811b0160075560ff90565b01515f1960f88460031b161c191690555f80806106e6565b8587015188559096019594850194879350908101906106d5565b60075f5284601f845f20920160051c820191601f860160051c015b82811061074f575050610686565b5f8155018590610741565b90607f169061067556fe608060409080825260049081361015610016575f80fd5b5f3560e01c90816306fdde03146114b75750806308b8ae3e14611439578063095ea7b3146113295780630acebbb3146112b757806318160ddd1461127b57806323b872dd146110ca5780632ca6f77114610e065780632dffc93814610dae578063313ce56714610d755780633408e47014610d3d57806334dd202614610ca25780633cc67ac714610c28578063404f551d14610b7c57806340c10f1914610aa057806370a0823114610a3f578063715018a6146109a357806384b0196e146108335780638c3adb0a146107b85780638d7e4ea0146107545780638da5cb5b1461070257806395d89b41146105df5780639dc29fac14610498578063a9059cbb14610443578063dd62ed3e146103ce578063e032e04f14610368578063eb24bae41461022f5763f2fde38b14610149575f80fd5b3461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610180611605565b90610189611e00565b73ffffffffffffffffffffffffffffffffffffffff8092169283156101fc575050600554827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b905f60249251917f1e4fbdf7000000000000000000000000000000000000000000000000000000008352820152fd5b5f80fd5b5060807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610262611605565b9160243567ffffffffffffffff60443581811161022b57610286903690860161164b565b919060643591821161022b576102b5926102a66102af933690890161164b565b505036916117df565b30611db9565b926102be611e66565b9473ffffffffffffffffffffffffffffffffffffffff809116913083036103415750948260809261033d976103157f91d424c26d66241302801829dc5d75ac3b3036414855f2088205e8f2705c051b963386611901565b865193168352336020840152858301526060820152a1519182916020835260208301906115c2565b0390f35b84517fa0f3feea000000000000000000000000000000000000000000000000000000008152fd5b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff6103b8611605565b165f526401000000088252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090610408611605565b610410611628565b9073ffffffffffffffffffffffffffffffffffffffff8091165f5260018452825f2091165f528252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090610491610480611605565b6024359061048c611e66565b611901565b5160018152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576104d0611605565b90602435926104dd611e00565b73ffffffffffffffffffffffffffffffffffffffff83169283156105b057835f525f602052825f205491858310610551575f857fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020898881898688528785520381872055816002540360025551908152a3005b6105ac868486519485947fe450d38c000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b0390fd5b505f60249251917f96c6fd1e000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57815191825f835461061e81611679565b90818452602095600191876001821691825f146106bd575050600114610661575b50505061033d9291610652910385611713565b519282849384528301906115c2565b5f90815286935091907f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8284106106a5575050508201018161065261033d61063f565b8054848a01860152889550879490930192810161068c565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168782015293151560051b86019093019350849250610652915061033d905061063f565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff600554169051908152f35b50903461022b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9160208336011261022b5780359267ffffffffffffffff841161022b578290843603011261022b576020926107b1910161184f565b9051908152f35b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57359063ffffffff821680920361022b5761082f9073ffffffffffffffffffffffffffffffffffffffff610819611e66565b165f526401000000086020525f20918254611815565b9055005b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5761088b7f0000000000000000000000000000000000000000000000000000000000000000611f9a565b916108b57f00000000000000000000000000000000000000000000000000000000000000006120cf565b815191602091602084019484861067ffffffffffffffff871117610977575061092c826020928761091f99989795525f855281519889987f0f000000000000000000000000000000000000000000000000000000000000008a5260e0868b015260e08a01906115c2565b91888303908901526115c2565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b82811061096057505050500390f35b835185528695509381019392810192600101610951565b6041907f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b3461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576109d9611e00565b5f73ffffffffffffffffffffffffffffffffffffffff6005547fffffffffffffffffffffffff00000000000000000000000000000000000000008116600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff610a8f611605565b165f525f8252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610ad8611605565b9073ffffffffffffffffffffffffffffffffffffffff60243592610afa611e00565b16928315610b4e57506020827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92610b355f95600254611815565b60025585855284835280852082815401905551908152a3005b5f60249251917fec442f05000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b576024359163ffffffff831680930361022b5761082f9173ffffffffffffffffffffffffffffffffffffffff610c09611e66565b165f52640100000009602052815f20905f526020525f20918254611815565b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760ff600191359273ffffffffffffffffffffffffffffffffffffffff610c7c611e66565b165f5264010000000a602052805f208460081c5f526020525f2092161b81541790555f80f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610cd9611605565b906024357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b5773ffffffffffffffffffffffffffffffffffffffff602093165f526401000000098352815f20905f528252805f20549051908152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209051468152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020905160128152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090517f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648152f35b50907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9060608236011261022b57610e3c611605565b9160243567ffffffffffffffff80821161022b578382870193833603011261022b5760443590811161022b57610e75903690870161164b565b9083359264ffffffffff8460d01c1642116110a257610e92611e66565b69ffffffffffffffffffff808660801c16908115928315611096575b5050501561106e576024610ecf910193610ec88587611754565b9189611a6b565b156110465790610ee891610ee28561184f565b87611c30565b1561101e576102af610f54610f5b92600894855463ffffffff98898260a01c1691825f14610ffe57740100000000000000000000000000000000000000000188557f80000000000000000000000000000000000000000000000000000000000000001790870155611754565b36916117df565b928154908160a01c16805f14610fd75761033d9550600114610fae577fffffffffffffffffffffffff00000000000000000000000000000000000000000190555b519182916020835260208301906115c2565b507f80000000000000000000000000000000000000000000000000000000000000009055610f9c565b857f06a2af9e000000000000000000000000000000000000000000000000000000005f525ffd5b507401000000000000000000000000000000000000000017875550611754565b8483517f356a4418000000000000000000000000000000000000000000000000000000008152fd5b8685517fd9c6386f000000000000000000000000000000000000000000000000000000008152fd5b8786517f3b06dcfb000000000000000000000000000000000000000000000000000000008152fd5b161490505f8080610eae565b8786517f559895a3000000000000000000000000000000000000000000000000000000008152fd5b503461022b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57611102611605565b61110a611628565b9060443592611117611e66565b9073ffffffffffffffffffffffffffffffffffffffff9081841690815f526001602052875f2092841692835f52602052875f2054937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8503611182575b6020896104918a8a8a611901565b87851061121f575081156111f05782156111c157505f908152600160209081528782209282529182528681209286900390925583916104919080611174565b6024905f8951917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024905f8951917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b906105ac88868b519485947ffb8f41b2000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020906002549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff611306611605565b165f5264010000000a8252805f2060243560081c5f528252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57611361611605565b6024359073ffffffffffffffffffffffffffffffffffffffff80611383611e66565b1691821561140a57169182156113db5760208095507f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f5260018252855f20855f52825280865f20558551908152a35160018152f35b6024855f8651917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024865f8751917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090611473611605565b9073ffffffffffffffffffffffffffffffffffffffff60243592165f5264010000000a8352805f208260081c5f528352600160ff825f2054925193161b1615158152f35b833461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760035490825f6114f584611679565b808352602094600190866001821691825f14611582575050600114611527575b505061033d9291610652910385611713565b9085925060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b915f925b82841061156a5750505082010181610652611515565b8054848a018601528895508794909301928101611554565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168682015292151560051b850190920192508391506106529050611515565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b9181601f8401121561022b5782359167ffffffffffffffff831161022b576020838186019501011161022b57565b90600182811c921680156116c0575b602083101461169357565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691611688565b6040810190811067ffffffffffffffff8211176116e657604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176116e657604052565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18136030182121561022b570180359067ffffffffffffffff821161022b5760200191813603831361022b57565b67ffffffffffffffff81116116e657601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926117eb826117a5565b916117f96040519384611713565b82948184528183011161022b578281602093845f960137010152565b9190820180921161182257565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b61185f610f546020830183611754565b60208151910120906040519160208301917f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648352356040840152606083015260608252608082019180831067ffffffffffffffff8411176116e6576042926040525190206118cb61218c565b90604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522090565b9173ffffffffffffffffffffffffffffffffffffffff808416928315611a0e57169283156119de57825f525f60205260405f2054908282106119865750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f5260405f20818154019055604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101829052606490fd5b60246040517fec442f050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60246040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f6004820152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146118225760010190565b9190928360fe1c9160028311611c06576003831015611bd9576fffffffffffffffffffffffffffffffff8516918315611ba25760018414611b0d57505050600214611ab65750505f90565b73ffffffffffffffffffffffffffffffffffffffff165f5264010000000a60205260405f206effffffffffffffffffffffffffffff8260081c165f5260205260405f2090600160ff835492161b8117809255141590565b92509273ffffffffffffffffffffffffffffffffffffffff919450165f5264010000000960205260405f2091357fffffffff000000000000000000000000000000000000000000000000000000009181838093169160048110611b8c575b50509050165f5260205260405f2090815491611b8683611a3e565b90551490565b8391925060040360031b1b161681905f80611b6b565b505092505073ffffffffffffffffffffffffffffffffffffffff165f5264010000000860205260405f2090815491611b8683611a3e565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60046040517f5f640821000000000000000000000000000000000000000000000000000000008152fd5b90919273ffffffffffffffffffffffffffffffffffffffff91828116928315611daf57604093848414918215611da4575b82611cd7575b5050611ccd57602092825f9384978351937f1626ba7e0000000000000000000000000000000000000000000000000000000098898652600486015260248501528160448501526064840137606401915afa611cc0575090565b5f51143d60201416919050565b5050505050600190565b9091505f85518580604114611d8c57604014611d4757505f805b611d00575b5016145f80611c67565b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a160608201511015611cf65760209150608081895f935282805260015afa505f515f611cf6565b807f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208b01358060ff1c601b01602084015260208c8b850137166060820152611cf1565b50868901355f1a602082015280878a81830137611cf1565b604185149250611c61565b5050505050505f90565b5f80611df593602081519101845af43d15611df8573d91611dd9836117a5565b92611de76040519485611713565b83523d5f602085013e611efa565b90565b606091611efa565b73ffffffffffffffffffffffffffffffffffffffff806005541681611e23611e66565b1603611e2c5750565b602490611e37611e66565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815291166004820152fd5b63ffffffff60085460a01c168015611ef5577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8101818111611822576401000000001115611ecb576007015473ffffffffffffffffffffffffffffffffffffffff1690565b60046040517f4e23d035000000000000000000000000000000000000000000000000000000008152fd5b503390565b90611f395750805115611f0f57805190602001fd5b60046040517f1425ea42000000000000000000000000000000000000000000000000000000008152fd5b81511580611f91575b611f4a575090565b60249073ffffffffffffffffffffffffffffffffffffffff604051917f9996b315000000000000000000000000000000000000000000000000000000008352166004820152fd5b50803b15611f42565b60ff8114611ff05760ff811690601f8211611fc65760405191611fbc836116ca565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b50604051600654815f61200283611679565b8083529260209060019081811690811561208c575060011461202d575b5050611df592500382611713565b91509260065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f935f925b8284106120745750611df59450505081016020015f8061201f565b85548785018301529485019486945092810192612059565b905060209350611df59592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f8061201f565b60ff81146120f15760ff811690601f8211611fc65760405191611fbc836116ca565b50604051600754815f61210383611679565b8083529260209060019081811690811561208c575060011461212d575050611df592500382611713565b91509260075f527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688935f925b8284106121745750611df59450505081016020015f8061201f565b85548785018301529485019486945092810192612159565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630148061229b575b156121f4577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff8211176116e65760405251902090565b507f000000000000000000000000000000000000000000000000000000000000000046146121cb56fea2646970667358221220225d4fab8f5755a0bc717ec61516865e32baac7ce8fd7d92db7409581f38160364736f6c63430008190033";
|
|
18
18
|
static readonly abi: readonly [{
|
|
19
19
|
readonly inputs: readonly [{
|
|
20
20
|
readonly internalType: "string";
|
|
@@ -860,7 +860,7 @@ const _abi = [
|
|
|
860
860
|
type: "function",
|
|
861
861
|
},
|
|
862
862
|
];
|
|
863
|
-
const _bytecode = "0x61016060408181523461042457612a5f803803809161001e8286610428565b84398201916060818403126104245780516001600160401b039290838111610424578461004c91840161044b565b9160209081810151858111610424578661006791830161044b565b95838201518681116104245761007d920161044b565b9083518581116103475760038054906001928383811c9316801561041a575b8584101461040657601f928381116103c3575b508085848211600114610366575f9161035b575b505f1982841b1c191690841b1781555b885191888311610347576004998a548581811c9116801561033d575b8782101461032a578281116102e7575b5085918411600114610285579383949184925f9561027a575b50501b925f19911b1c19161786555b33156102645760058054336001600160a01b0319821681179092556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3610178846104a0565b9261012093845261018883610628565b94610140958652828151910120928360e05282815191012096610100978089524660a0528251938401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f86528385015260608401524660808401523060a084015260a0835260c08301968388109088111761025157508590525190206080523060c0526122fa93846107658539608051846121d2015260a0518461229e015260c051846121a3015260e051846122210152518361224701525182610867015251816108910152f35b604190634e487b7160e01b5f525260245ffd5b8251631e4fbdf760e01b81525f81880152602490fd5b015193505f80610118565b9190601f198416928b5f5284875f20945f5b89898383106102d057505050106102b7575b50505050811b018655610127565b01519060f8845f19921b161c191690555f8080806102a9565b868601518955909701969485019488935001610297565b8b5f52865f208380870160051c820192898810610321575b0160051c019086905b8281106103165750506100ff565b5f8155018690610308565b925081926102ff565b60228c634e487b7160e01b5f525260245ffd5b90607f16906100ef565b634e487b7160e01b5f52604160045260245ffd5b90508801515f6100c3565b859250601f19821690845f52875f20915f5b898d8383106103ae575050508311610397575b5050811b0181556100d3565b8a01515f1983861b60f8161c191690555f8061038b565b84015185558996909401939283019201610378565b825f52855f208480840160051c8201928885106103fd575b0160051c019085905b8281106103f25750506100af565b5f81550185906103e4565b925081926103db565b634e487b7160e01b5f52602260045260245ffd5b92607f169261009c565b5f80fd5b601f909101601f19168101906001600160401b0382119082101761034757604052565b81601f82011215610424578051906001600160401b038211610347576040519261047f601f8401601f191660200185610428565b8284526020838301011161042457815f9260208093018386015e8301015290565b8051602090818110156105165750601f8251116104d857808251920151908083106104ca57501790565b825f19910360031b1b161790565b60448260405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b906001600160401b03821161034757600654926001938481811c9116801561061e575b8382101461040657601f81116105ea575b5081601f841160011461058657509282939183925f9461057b575b50501b915f199060031b1c19161760065560ff90565b015192505f80610565565b919083601f19811660065f52845f20945f905b888383106105d057505050106105b8575b505050811b0160065560ff90565b01515f1960f88460031b161c191690555f80806105aa565b858701518855909601959485019487935090810190610599565b60065f5284601f845f20920160051c820191601f860160051c015b82811061061357505061054a565b5f8155018590610605565b90607f1690610539565b8051602090818110156106525750601f8251116104d857808251920151908083106104ca57501790565b906001600160401b03821161034757600754926001938481811c9116801561075a575b8382101461040657601f8111610726575b5081601f84116001146106c257509282939183925f946106b7575b50501b915f199060031b1c19161760075560ff90565b015192505f806106a1565b919083601f19811660075f52845f20945f905b8883831061070c57505050106106f4575b505050811b0160075560ff90565b01515f1960f88460031b161c191690555f80806106e6565b8587015188559096019594850194879350908101906106d5565b60075f5284601f845f20920160051c820191601f860160051c015b82811061074f575050610686565b5f8155018590610741565b90607f169061067556fe608060409080825260049081361015610016575f80fd5b5f3560e01c90816306fdde03146114b75750806308b8ae3e14611439578063095ea7b3146113295780630acebbb3146112b757806318160ddd1461127b57806323b872dd146110ca5780632ca6f77114610e065780632dffc93814610dae578063313ce56714610d755780633408e47014610d3d57806334dd202614610ca25780633cc67ac714610c28578063404f551d14610b7c57806340c10f1914610aa057806370a0823114610a3f578063715018a6146109a357806384b0196e146108335780638c3adb0a146107b85780638d7e4ea0146107545780638da5cb5b1461070257806395d89b41146105df5780639dc29fac14610498578063a9059cbb14610443578063dd62ed3e146103ce578063e032e04f14610368578063eb24bae41461022f5763f2fde38b14610149575f80fd5b3461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610180611605565b90610189611e00565b73ffffffffffffffffffffffffffffffffffffffff8092169283156101fc575050600554827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b905f60249251917f1e4fbdf7000000000000000000000000000000000000000000000000000000008352820152fd5b5f80fd5b5060807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610262611605565b9160243567ffffffffffffffff60443581811161022b57610286903690860161164b565b919060643591821161022b576102b5926102a66102af933690890161164b565b505036916117df565b30611db9565b926102be611e66565b9473ffffffffffffffffffffffffffffffffffffffff809116913083036103415750948260809261033d976103157f91d424c26d66241302801829dc5d75ac3b3036414855f2088205e8f2705c051b963386611901565b865193168352336020840152858301526060820152a1519182916020835260208301906115c2565b0390f35b84517fa0f3feea000000000000000000000000000000000000000000000000000000008152fd5b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff6103b8611605565b165f526401000000088252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090610408611605565b610410611628565b9073ffffffffffffffffffffffffffffffffffffffff8091165f5260018452825f2091165f528252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090610491610480611605565b6024359061048c611e66565b611901565b5160018152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576104d0611605565b90602435926104dd611e00565b73ffffffffffffffffffffffffffffffffffffffff83169283156105b057835f525f602052825f205491858310610551575f857fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020898881898688528785520381872055816002540360025551908152a3005b6105ac868486519485947fe450d38c000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b0390fd5b505f60249251917f96c6fd1e000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57815191825f835461061e81611679565b90818452602095600191876001821691825f146106bd575050600114610661575b50505061033d9291610652910385611713565b519282849384528301906115c2565b5f90815286935091907f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8284106106a5575050508201018161065261033d61063f565b8054848a01860152889550879490930192810161068c565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168782015293151560051b86019093019350849250610652915061033d905061063f565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff600554169051908152f35b50903461022b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9160208336011261022b5780359267ffffffffffffffff841161022b578290843603011261022b576020926107b1910161184f565b9051908152f35b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57359063ffffffff821680920361022b5761082f9073ffffffffffffffffffffffffffffffffffffffff610819611e66565b165f526401000000086020525f20918254611815565b9055005b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5761088b7f0000000000000000000000000000000000000000000000000000000000000000611f9a565b916108b57f00000000000000000000000000000000000000000000000000000000000000006120cf565b815191602091602084019484861067ffffffffffffffff871117610977575061092c826020928761091f99989795525f855281519889987f0f000000000000000000000000000000000000000000000000000000000000008a5260e0868b015260e08a01906115c2565b91888303908901526115c2565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b82811061096057505050500390f35b835185528695509381019392810192600101610951565b6041907f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b3461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576109d9611e00565b5f73ffffffffffffffffffffffffffffffffffffffff6005547fffffffffffffffffffffffff00000000000000000000000000000000000000008116600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff610a8f611605565b165f525f8252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610ad8611605565b9073ffffffffffffffffffffffffffffffffffffffff60243592610afa611e00565b16928315610b4e57506020827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92610b355f95600254611815565b60025585855284835280852082815401905551908152a3005b5f60249251917fec442f05000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b576024359163ffffffff831680930361022b5761082f9173ffffffffffffffffffffffffffffffffffffffff610c09611e66565b165f52640100000009602052815f20905f526020525f20918254611815565b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760ff600191359273ffffffffffffffffffffffffffffffffffffffff610c7c611e66565b165f5264010000000a602052805f208460081c5f526020525f2092161b81541790555f80f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610cd9611605565b906024357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b5773ffffffffffffffffffffffffffffffffffffffff602093165f526401000000098352815f20905f528252805f20549051908152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209051468152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020905160128152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090517f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648152f35b50907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9060608236011261022b57610e3c611605565b9160243567ffffffffffffffff80821161022b578382870193833603011261022b5760443590811161022b57610e75903690870161164b565b9083359264ffffffffff8460d01c1642116110a257610e92611e66565b69ffffffffffffffffffff808660801c16908115928315611096575b5050501561106e576024610ecf910193610ec88587611754565b9189611a6b565b156110465790610ee891610ee28561184f565b87611c30565b1561101e576102af610f54610f5b92600894855463ffffffff98898260a01c1691825f14610ffe57740100000000000000000000000000000000000000000188557f80000000000000000000000000000000000000000000000000000000000000001790870155611754565b36916117df565b928154908160a01c16805f14610fd75761033d9550600114610fae577fffffffffffffffffffffffff00000000000000000000000000000000000000000190555b519182916020835260208301906115c2565b507f80000000000000000000000000000000000000000000000000000000000000009055610f9c565b857f06a2af9e000000000000000000000000000000000000000000000000000000005f525ffd5b507401000000000000000000000000000000000000000017875550611754565b8483517f356a4418000000000000000000000000000000000000000000000000000000008152fd5b8685517fd9c6386f000000000000000000000000000000000000000000000000000000008152fd5b8786517f3b06dcfb000000000000000000000000000000000000000000000000000000008152fd5b161490505f8080610eae565b8786517f559895a3000000000000000000000000000000000000000000000000000000008152fd5b503461022b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57611102611605565b61110a611628565b9060443592611117611e66565b9073ffffffffffffffffffffffffffffffffffffffff9081841690815f526001602052875f2092841692835f52602052875f2054937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8503611182575b6020896104918a8a8a611901565b87851061121f575081156111f05782156111c157505f908152600160209081528782209282529182528681209286900390925583916104919080611174565b6024905f8951917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024905f8951917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b906105ac88868b519485947ffb8f41b2000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020906002549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff611306611605565b165f5264010000000a8252805f2060243560081c5f528252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57611361611605565b6024359073ffffffffffffffffffffffffffffffffffffffff80611383611e66565b1691821561140a57169182156113db5760208095507f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f5260018252855f20855f52825280865f20558551908152a35160018152f35b6024855f8651917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024865f8751917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090611473611605565b9073ffffffffffffffffffffffffffffffffffffffff60243592165f5264010000000a8352805f208260081c5f528352600160ff825f2054925193161b1615158152f35b833461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760035490825f6114f584611679565b808352602094600190866001821691825f14611582575050600114611527575b505061033d9291610652910385611713565b9085925060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b915f925b82841061156a5750505082010181610652611515565b8054848a018601528895508794909301928101611554565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168682015292151560051b850190920192508391506106529050611515565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b9181601f8401121561022b5782359167ffffffffffffffff831161022b576020838186019501011161022b57565b90600182811c921680156116c0575b602083101461169357565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691611688565b6040810190811067ffffffffffffffff8211176116e657604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176116e657604052565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18136030182121561022b570180359067ffffffffffffffff821161022b5760200191813603831361022b57565b67ffffffffffffffff81116116e657601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926117eb826117a5565b916117f96040519384611713565b82948184528183011161022b578281602093845f960137010152565b9190820180921161182257565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b61185f610f546020830183611754565b60208151910120906040519160208301917f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648352356040840152606083015260608252608082019180831067ffffffffffffffff8411176116e6576042926040525190206118cb61218c565b90604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522090565b9173ffffffffffffffffffffffffffffffffffffffff808416928315611a0e57169283156119de57825f525f60205260405f2054908282106119865750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f5260405f20818154019055604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101829052606490fd5b60246040517fec442f050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60246040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f6004820152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146118225760010190565b9190928360fe1c9160028311611c06576003831015611bd9576fffffffffffffffffffffffffffffffff8516918315611ba25760018414611b0d57505050600214611ab65750505f90565b73ffffffffffffffffffffffffffffffffffffffff165f5264010000000a60205260405f206effffffffffffffffffffffffffffff8260081c165f5260205260405f2090600160ff835492161b8117809255141590565b92509273ffffffffffffffffffffffffffffffffffffffff919450165f5264010000000960205260405f2091357fffffffff000000000000000000000000000000000000000000000000000000009181838093169160048110611b8c575b50509050165f5260205260405f2090815491611b8683611a3e565b90551490565b8391925060040360031b1b161681905f80611b6b565b505092505073ffffffffffffffffffffffffffffffffffffffff165f5264010000000860205260405f2090815491611b8683611a3e565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60046040517f5f640821000000000000000000000000000000000000000000000000000000008152fd5b90919273ffffffffffffffffffffffffffffffffffffffff91828116928315611daf57604093848414918215611da4575b82611cd7575b5050611ccd57602092825f9384978351937f1626ba7e0000000000000000000000000000000000000000000000000000000098898652600486015260248501528160448501526064840137606401915afa611cc0575090565b5f51143d60201416919050565b5050505050600190565b9091505f85518580604114611d8c57604014611d4757505f805b611d00575b5016145f80611c67565b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a160608201511015611cf65760209150608081895f935282805260015afa505f515f611cf6565b807f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208b01358060ff1c601b01602084015260208c8b850137166060820152611cf1565b50868901355f1a602082015280878a81830137611cf1565b604185149250611c61565b5050505050505f90565b5f80611df593602081519101845af43d15611df8573d91611dd9836117a5565b92611de76040519485611713565b83523d5f602085013e611efa565b90565b606091611efa565b73ffffffffffffffffffffffffffffffffffffffff806005541681611e23611e66565b1603611e2c5750565b602490611e37611e66565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815291166004820152fd5b63ffffffff60085460a01c168015611ef5577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8101818111611822576401000000001115611ecb576007015473ffffffffffffffffffffffffffffffffffffffff1690565b60046040517f4e23d035000000000000000000000000000000000000000000000000000000008152fd5b503390565b90611f395750805115611f0f57805190602001fd5b60046040517f1425ea42000000000000000000000000000000000000000000000000000000008152fd5b81511580611f91575b611f4a575090565b60249073ffffffffffffffffffffffffffffffffffffffff604051917f9996b315000000000000000000000000000000000000000000000000000000008352166004820152fd5b50803b15611f42565b60ff8114611ff05760ff811690601f8211611fc65760405191611fbc836116ca565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b50604051600654815f61200283611679565b8083529260209060019081811690811561208c575060011461202d575b5050611df592500382611713565b91509260065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f935f925b8284106120745750611df59450505081016020015f8061201f565b85548785018301529485019486945092810192612059565b905060209350611df59592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f8061201f565b60ff81146120f15760ff811690601f8211611fc65760405191611fbc836116ca565b50604051600754815f61210383611679565b8083529260209060019081811690811561208c575060011461212d575050611df592500382611713565b91509260075f527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688935f925b8284106121745750611df59450505081016020015f8061201f565b85548785018301529485019486945092810192612159565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630148061229b575b156121f4577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff8211176116e65760405251902090565b507f000000000000000000000000000000000000000000000000000000000000000046146121cb56fea26469706673582212208a65b092836e1f5939c009688896508c421640ebd0bc63112364c8926163b45e64736f6c63430008190033";
|
|
863
|
+
const _bytecode = "0x61016060408181523461042457612a5f803803809161001e8286610428565b84398201916060818403126104245780516001600160401b039290838111610424578461004c91840161044b565b9160209081810151858111610424578661006791830161044b565b95838201518681116104245761007d920161044b565b9083518581116103475760038054906001928383811c9316801561041a575b8584101461040657601f928381116103c3575b508085848211600114610366575f9161035b575b505f1982841b1c191690841b1781555b885191888311610347576004998a548581811c9116801561033d575b8782101461032a578281116102e7575b5085918411600114610285579383949184925f9561027a575b50501b925f19911b1c19161786555b33156102645760058054336001600160a01b0319821681179092556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3610178846104a0565b9261012093845261018883610628565b94610140958652828151910120928360e05282815191012096610100978089524660a0528251938401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f86528385015260608401524660808401523060a084015260a0835260c08301968388109088111761025157508590525190206080523060c0526122fa93846107658539608051846121d2015260a0518461229e015260c051846121a3015260e051846122210152518361224701525182610867015251816108910152f35b604190634e487b7160e01b5f525260245ffd5b8251631e4fbdf760e01b81525f81880152602490fd5b015193505f80610118565b9190601f198416928b5f5284875f20945f5b89898383106102d057505050106102b7575b50505050811b018655610127565b01519060f8845f19921b161c191690555f8080806102a9565b868601518955909701969485019488935001610297565b8b5f52865f208380870160051c820192898810610321575b0160051c019086905b8281106103165750506100ff565b5f8155018690610308565b925081926102ff565b60228c634e487b7160e01b5f525260245ffd5b90607f16906100ef565b634e487b7160e01b5f52604160045260245ffd5b90508801515f6100c3565b859250601f19821690845f52875f20915f5b898d8383106103ae575050508311610397575b5050811b0181556100d3565b8a01515f1983861b60f8161c191690555f8061038b565b84015185558996909401939283019201610378565b825f52855f208480840160051c8201928885106103fd575b0160051c019085905b8281106103f25750506100af565b5f81550185906103e4565b925081926103db565b634e487b7160e01b5f52602260045260245ffd5b92607f169261009c565b5f80fd5b601f909101601f19168101906001600160401b0382119082101761034757604052565b81601f82011215610424578051906001600160401b038211610347576040519261047f601f8401601f191660200185610428565b8284526020838301011161042457815f9260208093018386015e8301015290565b8051602090818110156105165750601f8251116104d857808251920151908083106104ca57501790565b825f19910360031b1b161790565b60448260405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b906001600160401b03821161034757600654926001938481811c9116801561061e575b8382101461040657601f81116105ea575b5081601f841160011461058657509282939183925f9461057b575b50501b915f199060031b1c19161760065560ff90565b015192505f80610565565b919083601f19811660065f52845f20945f905b888383106105d057505050106105b8575b505050811b0160065560ff90565b01515f1960f88460031b161c191690555f80806105aa565b858701518855909601959485019487935090810190610599565b60065f5284601f845f20920160051c820191601f860160051c015b82811061061357505061054a565b5f8155018590610605565b90607f1690610539565b8051602090818110156106525750601f8251116104d857808251920151908083106104ca57501790565b906001600160401b03821161034757600754926001938481811c9116801561075a575b8382101461040657601f8111610726575b5081601f84116001146106c257509282939183925f946106b7575b50501b915f199060031b1c19161760075560ff90565b015192505f806106a1565b919083601f19811660075f52845f20945f905b8883831061070c57505050106106f4575b505050811b0160075560ff90565b01515f1960f88460031b161c191690555f80806106e6565b8587015188559096019594850194879350908101906106d5565b60075f5284601f845f20920160051c820191601f860160051c015b82811061074f575050610686565b5f8155018590610741565b90607f169061067556fe608060409080825260049081361015610016575f80fd5b5f3560e01c90816306fdde03146114b75750806308b8ae3e14611439578063095ea7b3146113295780630acebbb3146112b757806318160ddd1461127b57806323b872dd146110ca5780632ca6f77114610e065780632dffc93814610dae578063313ce56714610d755780633408e47014610d3d57806334dd202614610ca25780633cc67ac714610c28578063404f551d14610b7c57806340c10f1914610aa057806370a0823114610a3f578063715018a6146109a357806384b0196e146108335780638c3adb0a146107b85780638d7e4ea0146107545780638da5cb5b1461070257806395d89b41146105df5780639dc29fac14610498578063a9059cbb14610443578063dd62ed3e146103ce578063e032e04f14610368578063eb24bae41461022f5763f2fde38b14610149575f80fd5b3461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610180611605565b90610189611e00565b73ffffffffffffffffffffffffffffffffffffffff8092169283156101fc575050600554827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b905f60249251917f1e4fbdf7000000000000000000000000000000000000000000000000000000008352820152fd5b5f80fd5b5060807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610262611605565b9160243567ffffffffffffffff60443581811161022b57610286903690860161164b565b919060643591821161022b576102b5926102a66102af933690890161164b565b505036916117df565b30611db9565b926102be611e66565b9473ffffffffffffffffffffffffffffffffffffffff809116913083036103415750948260809261033d976103157f91d424c26d66241302801829dc5d75ac3b3036414855f2088205e8f2705c051b963386611901565b865193168352336020840152858301526060820152a1519182916020835260208301906115c2565b0390f35b84517fa0f3feea000000000000000000000000000000000000000000000000000000008152fd5b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff6103b8611605565b165f526401000000088252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090610408611605565b610410611628565b9073ffffffffffffffffffffffffffffffffffffffff8091165f5260018452825f2091165f528252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090610491610480611605565b6024359061048c611e66565b611901565b5160018152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576104d0611605565b90602435926104dd611e00565b73ffffffffffffffffffffffffffffffffffffffff83169283156105b057835f525f602052825f205491858310610551575f857fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020898881898688528785520381872055816002540360025551908152a3005b6105ac868486519485947fe450d38c000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b0390fd5b505f60249251917f96c6fd1e000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57815191825f835461061e81611679565b90818452602095600191876001821691825f146106bd575050600114610661575b50505061033d9291610652910385611713565b519282849384528301906115c2565b5f90815286935091907f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8284106106a5575050508201018161065261033d61063f565b8054848a01860152889550879490930192810161068c565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168782015293151560051b86019093019350849250610652915061033d905061063f565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff600554169051908152f35b50903461022b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9160208336011261022b5780359267ffffffffffffffff841161022b578290843603011261022b576020926107b1910161184f565b9051908152f35b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57359063ffffffff821680920361022b5761082f9073ffffffffffffffffffffffffffffffffffffffff610819611e66565b165f526401000000086020525f20918254611815565b9055005b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5761088b7f0000000000000000000000000000000000000000000000000000000000000000611f9a565b916108b57f00000000000000000000000000000000000000000000000000000000000000006120cf565b815191602091602084019484861067ffffffffffffffff871117610977575061092c826020928761091f99989795525f855281519889987f0f000000000000000000000000000000000000000000000000000000000000008a5260e0868b015260e08a01906115c2565b91888303908901526115c2565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b82811061096057505050500390f35b835185528695509381019392810192600101610951565b6041907f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b3461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576109d9611e00565b5f73ffffffffffffffffffffffffffffffffffffffff6005547fffffffffffffffffffffffff00000000000000000000000000000000000000008116600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff610a8f611605565b165f525f8252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610ad8611605565b9073ffffffffffffffffffffffffffffffffffffffff60243592610afa611e00565b16928315610b4e57506020827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92610b355f95600254611815565b60025585855284835280852082815401905551908152a3005b5f60249251917fec442f05000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b576024359163ffffffff831680930361022b5761082f9173ffffffffffffffffffffffffffffffffffffffff610c09611e66565b165f52640100000009602052815f20905f526020525f20918254611815565b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760ff600191359273ffffffffffffffffffffffffffffffffffffffff610c7c611e66565b165f5264010000000a602052805f208460081c5f526020525f2092161b81541790555f80f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610cd9611605565b906024357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b5773ffffffffffffffffffffffffffffffffffffffff602093165f526401000000098352815f20905f528252805f20549051908152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209051468152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020905160128152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090517f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648152f35b50907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9060608236011261022b57610e3c611605565b9160243567ffffffffffffffff80821161022b578382870193833603011261022b5760443590811161022b57610e75903690870161164b565b9083359264ffffffffff8460d01c1642116110a257610e92611e66565b69ffffffffffffffffffff808660801c16908115928315611096575b5050501561106e576024610ecf910193610ec88587611754565b9189611a6b565b156110465790610ee891610ee28561184f565b87611c30565b1561101e576102af610f54610f5b92600894855463ffffffff98898260a01c1691825f14610ffe57740100000000000000000000000000000000000000000188557f80000000000000000000000000000000000000000000000000000000000000001790870155611754565b36916117df565b928154908160a01c16805f14610fd75761033d9550600114610fae577fffffffffffffffffffffffff00000000000000000000000000000000000000000190555b519182916020835260208301906115c2565b507f80000000000000000000000000000000000000000000000000000000000000009055610f9c565b857f06a2af9e000000000000000000000000000000000000000000000000000000005f525ffd5b507401000000000000000000000000000000000000000017875550611754565b8483517f356a4418000000000000000000000000000000000000000000000000000000008152fd5b8685517fd9c6386f000000000000000000000000000000000000000000000000000000008152fd5b8786517f3b06dcfb000000000000000000000000000000000000000000000000000000008152fd5b161490505f8080610eae565b8786517f559895a3000000000000000000000000000000000000000000000000000000008152fd5b503461022b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57611102611605565b61110a611628565b9060443592611117611e66565b9073ffffffffffffffffffffffffffffffffffffffff9081841690815f526001602052875f2092841692835f52602052875f2054937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8503611182575b6020896104918a8a8a611901565b87851061121f575081156111f05782156111c157505f908152600160209081528782209282529182528681209286900390925583916104919080611174565b6024905f8951917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024905f8951917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b906105ac88868b519485947ffb8f41b2000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020906002549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff611306611605565b165f5264010000000a8252805f2060243560081c5f528252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57611361611605565b6024359073ffffffffffffffffffffffffffffffffffffffff80611383611e66565b1691821561140a57169182156113db5760208095507f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f5260018252855f20855f52825280865f20558551908152a35160018152f35b6024855f8651917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024865f8751917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090611473611605565b9073ffffffffffffffffffffffffffffffffffffffff60243592165f5264010000000a8352805f208260081c5f528352600160ff825f2054925193161b1615158152f35b833461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760035490825f6114f584611679565b808352602094600190866001821691825f14611582575050600114611527575b505061033d9291610652910385611713565b9085925060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b915f925b82841061156a5750505082010181610652611515565b8054848a018601528895508794909301928101611554565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168682015292151560051b850190920192508391506106529050611515565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b9181601f8401121561022b5782359167ffffffffffffffff831161022b576020838186019501011161022b57565b90600182811c921680156116c0575b602083101461169357565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691611688565b6040810190811067ffffffffffffffff8211176116e657604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176116e657604052565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18136030182121561022b570180359067ffffffffffffffff821161022b5760200191813603831361022b57565b67ffffffffffffffff81116116e657601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926117eb826117a5565b916117f96040519384611713565b82948184528183011161022b578281602093845f960137010152565b9190820180921161182257565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b61185f610f546020830183611754565b60208151910120906040519160208301917f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648352356040840152606083015260608252608082019180831067ffffffffffffffff8411176116e6576042926040525190206118cb61218c565b90604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522090565b9173ffffffffffffffffffffffffffffffffffffffff808416928315611a0e57169283156119de57825f525f60205260405f2054908282106119865750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f5260405f20818154019055604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101829052606490fd5b60246040517fec442f050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60246040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f6004820152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146118225760010190565b9190928360fe1c9160028311611c06576003831015611bd9576fffffffffffffffffffffffffffffffff8516918315611ba25760018414611b0d57505050600214611ab65750505f90565b73ffffffffffffffffffffffffffffffffffffffff165f5264010000000a60205260405f206effffffffffffffffffffffffffffff8260081c165f5260205260405f2090600160ff835492161b8117809255141590565b92509273ffffffffffffffffffffffffffffffffffffffff919450165f5264010000000960205260405f2091357fffffffff000000000000000000000000000000000000000000000000000000009181838093169160048110611b8c575b50509050165f5260205260405f2090815491611b8683611a3e565b90551490565b8391925060040360031b1b161681905f80611b6b565b505092505073ffffffffffffffffffffffffffffffffffffffff165f5264010000000860205260405f2090815491611b8683611a3e565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60046040517f5f640821000000000000000000000000000000000000000000000000000000008152fd5b90919273ffffffffffffffffffffffffffffffffffffffff91828116928315611daf57604093848414918215611da4575b82611cd7575b5050611ccd57602092825f9384978351937f1626ba7e0000000000000000000000000000000000000000000000000000000098898652600486015260248501528160448501526064840137606401915afa611cc0575090565b5f51143d60201416919050565b5050505050600190565b9091505f85518580604114611d8c57604014611d4757505f805b611d00575b5016145f80611c67565b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a160608201511015611cf65760209150608081895f935282805260015afa505f515f611cf6565b807f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208b01358060ff1c601b01602084015260208c8b850137166060820152611cf1565b50868901355f1a602082015280878a81830137611cf1565b604185149250611c61565b5050505050505f90565b5f80611df593602081519101845af43d15611df8573d91611dd9836117a5565b92611de76040519485611713565b83523d5f602085013e611efa565b90565b606091611efa565b73ffffffffffffffffffffffffffffffffffffffff806005541681611e23611e66565b1603611e2c5750565b602490611e37611e66565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815291166004820152fd5b63ffffffff60085460a01c168015611ef5577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8101818111611822576401000000001115611ecb576007015473ffffffffffffffffffffffffffffffffffffffff1690565b60046040517f4e23d035000000000000000000000000000000000000000000000000000000008152fd5b503390565b90611f395750805115611f0f57805190602001fd5b60046040517f1425ea42000000000000000000000000000000000000000000000000000000008152fd5b81511580611f91575b611f4a575090565b60249073ffffffffffffffffffffffffffffffffffffffff604051917f9996b315000000000000000000000000000000000000000000000000000000008352166004820152fd5b50803b15611f42565b60ff8114611ff05760ff811690601f8211611fc65760405191611fbc836116ca565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b50604051600654815f61200283611679565b8083529260209060019081811690811561208c575060011461202d575b5050611df592500382611713565b91509260065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f935f925b8284106120745750611df59450505081016020015f8061201f565b85548785018301529485019486945092810192612059565b905060209350611df59592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f8061201f565b60ff81146120f15760ff811690601f8211611fc65760405191611fbc836116ca565b50604051600754815f61210383611679565b8083529260209060019081811690811561208c575060011461212d575050611df592500382611713565b91509260075f527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688935f925b8284106121745750611df59450505081016020015f8061201f565b85548785018301529485019486945092810192612159565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630148061229b575b156121f4577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff8211176116e65760405251902090565b507f000000000000000000000000000000000000000000000000000000000000000046146121cb56fea2646970667358221220225d4fab8f5755a0bc717ec61516865e32baac7ce8fd7d92db7409581f38160364736f6c63430008190033";
|
|
864
864
|
const isSuperArgs = (xs) => xs.length > 1;
|
|
865
865
|
class TokenWithBySig__factory extends ethers_1.ContractFactory {
|
|
866
866
|
constructor(...args) {
|