tempo.ts 0.0.6 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chains.d.ts +244 -541
- package/dist/chains.d.ts.map +1 -1
- package/dist/chains.js +10 -23
- package/dist/chains.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/ox/SignatureEnvelope.d.ts +245 -0
- package/dist/ox/SignatureEnvelope.d.ts.map +1 -0
- package/dist/ox/SignatureEnvelope.js +437 -0
- package/dist/ox/SignatureEnvelope.js.map +1 -0
- package/dist/ox/Transaction.d.ts +61 -24
- package/dist/ox/Transaction.d.ts.map +1 -1
- package/dist/ox/Transaction.js +63 -18
- package/dist/ox/Transaction.js.map +1 -1
- package/dist/ox/TransactionEnvelopeAA.d.ts +461 -0
- package/dist/ox/TransactionEnvelopeAA.d.ts.map +1 -0
- package/dist/ox/TransactionEnvelopeAA.js +528 -0
- package/dist/ox/TransactionEnvelopeAA.js.map +1 -0
- package/dist/ox/TransactionRequest.d.ts +7 -5
- package/dist/ox/TransactionRequest.d.ts.map +1 -1
- package/dist/ox/TransactionRequest.js +21 -12
- package/dist/ox/TransactionRequest.js.map +1 -1
- package/dist/ox/index.d.ts +5 -4
- package/dist/ox/index.d.ts.map +1 -1
- package/dist/ox/index.js +5 -4
- package/dist/ox/index.js.map +1 -1
- package/dist/prool/Instance.d.ts +0 -4
- package/dist/prool/Instance.d.ts.map +1 -1
- package/dist/prool/Instance.js +7 -7
- package/dist/prool/Instance.js.map +1 -1
- package/dist/prool/index.d.ts +1 -1
- package/dist/prool/index.d.ts.map +1 -1
- package/dist/prool/index.js +1 -1
- package/dist/prool/index.js.map +1 -1
- package/dist/viem/{abis.d.ts → Abis.d.ts} +523 -9
- package/dist/viem/Abis.d.ts.map +1 -0
- package/dist/viem/{abis.js → Abis.js} +321 -9
- package/dist/viem/Abis.js.map +1 -0
- package/dist/viem/{actions → Actions}/amm.d.ts +21 -21
- package/dist/viem/Actions/amm.d.ts.map +1 -0
- package/dist/viem/{actions → Actions}/amm.js +55 -43
- package/dist/viem/Actions/amm.js.map +1 -0
- package/dist/viem/Actions/dex.d.ts +3263 -0
- package/dist/viem/Actions/dex.d.ts.map +1 -0
- package/dist/viem/Actions/dex.js +1357 -0
- package/dist/viem/Actions/dex.js.map +1 -0
- package/dist/viem/{actions → Actions}/fee.d.ts +8 -8
- package/dist/viem/Actions/fee.d.ts.map +1 -0
- package/dist/viem/{actions → Actions}/fee.js +14 -13
- package/dist/viem/Actions/fee.js.map +1 -0
- package/dist/viem/Actions/index.d.ts +6 -0
- package/dist/viem/Actions/index.d.ts.map +1 -0
- package/dist/viem/Actions/index.js +6 -0
- package/dist/viem/Actions/index.js.map +1 -0
- package/dist/viem/{actions → Actions}/policy.d.ts +19 -19
- package/dist/viem/Actions/policy.d.ts.map +1 -0
- package/dist/viem/{actions → Actions}/policy.js +59 -46
- package/dist/viem/Actions/policy.js.map +1 -0
- package/dist/viem/{actions → Actions}/token.d.ts +3275 -698
- package/dist/viem/Actions/token.d.ts.map +1 -0
- package/dist/viem/{actions → Actions}/token.js +458 -84
- package/dist/viem/Actions/token.js.map +1 -0
- package/dist/viem/Addresses.d.ts +9 -0
- package/dist/viem/Addresses.d.ts.map +1 -0
- package/dist/viem/Addresses.js +9 -0
- package/dist/viem/Addresses.js.map +1 -0
- package/dist/viem/{chain.d.ts → Chain.d.ts} +81 -57
- package/dist/viem/Chain.d.ts.map +1 -0
- package/dist/viem/{chain.js → Chain.js} +7 -7
- package/dist/viem/Chain.js.map +1 -0
- package/dist/viem/{client.d.ts → Client.d.ts} +4 -4
- package/dist/viem/Client.d.ts.map +1 -0
- package/dist/viem/{client.js → Client.js} +3 -3
- package/dist/viem/Client.js.map +1 -0
- package/dist/viem/{decorator.d.ts → Decorator.d.ts} +507 -5
- package/dist/viem/Decorator.d.ts.map +1 -0
- package/dist/viem/{decorator.js → Decorator.js} +31 -5
- package/dist/viem/Decorator.js.map +1 -0
- package/dist/viem/{formatters.d.ts → Formatters.d.ts} +2 -2
- package/dist/viem/Formatters.d.ts.map +1 -0
- package/dist/viem/{formatters.js → Formatters.js} +24 -17
- package/dist/viem/Formatters.js.map +1 -0
- package/dist/viem/Tick.d.ts +111 -0
- package/dist/viem/Tick.d.ts.map +1 -0
- package/dist/viem/Tick.js +127 -0
- package/dist/viem/Tick.js.map +1 -0
- package/dist/viem/TokenIds.d.ts +3 -0
- package/dist/viem/TokenIds.d.ts.map +1 -0
- package/dist/viem/TokenIds.js +3 -0
- package/dist/viem/TokenIds.js.map +1 -0
- package/dist/viem/Transaction.d.ts +57 -0
- package/dist/viem/Transaction.d.ts.map +1 -0
- package/dist/viem/Transaction.js +137 -0
- package/dist/viem/Transaction.js.map +1 -0
- package/dist/viem/{transport.d.ts → Transport.d.ts} +3 -3
- package/dist/viem/Transport.d.ts.map +1 -0
- package/dist/viem/{transport.js → Transport.js} +3 -3
- package/dist/viem/Transport.js.map +1 -0
- package/dist/viem/index.d.ts +13 -9
- package/dist/viem/index.d.ts.map +1 -1
- package/dist/viem/index.js +13 -9
- package/dist/viem/index.js.map +1 -1
- package/dist/viem/{types.d.ts → internal/types.d.ts} +3 -3
- package/dist/viem/internal/types.d.ts.map +1 -0
- package/dist/viem/{types.js.map → internal/types.js.map} +1 -1
- package/dist/viem/internal/utils.d.ts.map +1 -0
- package/dist/viem/internal/utils.js.map +1 -0
- package/package.json +87 -101
- package/src/chains.ts +10 -24
- package/src/ox/SignatureEnvelope.test.ts +1252 -0
- package/src/ox/SignatureEnvelope.ts +709 -0
- package/src/ox/Transaction.test.ts +144 -89
- package/src/ox/Transaction.ts +104 -29
- package/src/ox/TransactionEnvelopeAA.test.ts +1533 -0
- package/src/ox/TransactionEnvelopeAA.ts +858 -0
- package/src/ox/TransactionRequest.ts +25 -17
- package/src/ox/index.ts +2 -1
- package/src/prool/Instance.ts +6 -14
- package/src/prool/internal/chain.json +101 -27
- package/src/viem/{abis.ts → Abis.ts} +322 -8
- package/src/viem/{actions → Actions}/amm.test.ts +65 -68
- package/src/viem/{actions → Actions}/amm.ts +72 -60
- package/src/viem/Actions/dex.test.ts +1608 -0
- package/src/viem/Actions/dex.ts +2026 -0
- package/src/viem/{actions → Actions}/fee.test.ts +34 -36
- package/src/viem/{actions → Actions}/fee.ts +18 -17
- package/src/viem/{actions → Actions}/index.ts +1 -0
- package/src/viem/{actions → Actions}/policy.test.ts +2 -2
- package/src/viem/{actions → Actions}/policy.ts +77 -64
- package/src/viem/{actions → Actions}/token.test.ts +419 -64
- package/src/viem/{actions → Actions}/token.ts +751 -145
- package/src/viem/Addresses.ts +9 -0
- package/src/viem/{chain.ts → Chain.ts} +6 -6
- package/src/viem/{client.bench-d.ts → Client.bench-d.ts} +2 -2
- package/src/viem/{client.test.ts → Client.test.ts} +31 -6
- package/src/viem/{client.ts → Client.ts} +1 -1
- package/src/viem/{decorator.bench-d.ts → Decorator.bench-d.ts} +2 -2
- package/src/viem/{decorator.test.ts → Decorator.test.ts} +1 -0
- package/src/viem/{decorator.ts → Decorator.ts} +586 -4
- package/src/viem/{formatters.ts → Formatters.ts} +31 -20
- package/src/viem/Tick.test.ts +281 -0
- package/src/viem/Tick.ts +176 -0
- package/src/viem/TokenIds.ts +2 -0
- package/src/viem/Transaction.ts +303 -0
- package/src/viem/{transport.ts → Transport.ts} +5 -5
- package/src/viem/e2e.test.ts +153 -78
- package/src/viem/index.ts +13 -9
- package/src/viem/{types.ts → internal/types.ts} +3 -3
- package/dist/ox/TransactionEnvelopeFeeToken.d.ts +0 -393
- package/dist/ox/TransactionEnvelopeFeeToken.d.ts.map +0 -1
- package/dist/ox/TransactionEnvelopeFeeToken.js +0 -452
- package/dist/ox/TransactionEnvelopeFeeToken.js.map +0 -1
- package/dist/viem/abis.d.ts.map +0 -1
- package/dist/viem/abis.js.map +0 -1
- package/dist/viem/actions/amm.d.ts.map +0 -1
- package/dist/viem/actions/amm.js.map +0 -1
- package/dist/viem/actions/fee.d.ts.map +0 -1
- package/dist/viem/actions/fee.js.map +0 -1
- package/dist/viem/actions/index.d.ts +0 -5
- package/dist/viem/actions/index.d.ts.map +0 -1
- package/dist/viem/actions/index.js +0 -5
- package/dist/viem/actions/index.js.map +0 -1
- package/dist/viem/actions/policy.d.ts.map +0 -1
- package/dist/viem/actions/policy.js.map +0 -1
- package/dist/viem/actions/token.d.ts.map +0 -1
- package/dist/viem/actions/token.js.map +0 -1
- package/dist/viem/addresses.d.ts +0 -8
- package/dist/viem/addresses.d.ts.map +0 -1
- package/dist/viem/addresses.js +0 -8
- package/dist/viem/addresses.js.map +0 -1
- package/dist/viem/chain.d.ts.map +0 -1
- package/dist/viem/chain.js.map +0 -1
- package/dist/viem/client.d.ts.map +0 -1
- package/dist/viem/client.js.map +0 -1
- package/dist/viem/decorator.d.ts.map +0 -1
- package/dist/viem/decorator.js.map +0 -1
- package/dist/viem/formatters.d.ts.map +0 -1
- package/dist/viem/formatters.js.map +0 -1
- package/dist/viem/transaction.d.ts +0 -54
- package/dist/viem/transaction.d.ts.map +0 -1
- package/dist/viem/transaction.js +0 -108
- package/dist/viem/transaction.js.map +0 -1
- package/dist/viem/transport.d.ts.map +0 -1
- package/dist/viem/transport.js.map +0 -1
- package/dist/viem/types.d.ts.map +0 -1
- package/dist/viem/utils.d.ts.map +0 -1
- package/dist/viem/utils.js.map +0 -1
- package/src/ox/TransactionEnvelopeFeeToken.test.ts +0 -1119
- package/src/ox/TransactionEnvelopeFeeToken.ts +0 -717
- package/src/prool/internal/consensus.toml +0 -32
- package/src/viem/addresses.ts +0 -10
- package/src/viem/transaction.ts +0 -253
- /package/dist/viem/{types.js → internal/types.js} +0 -0
- /package/dist/viem/{utils.d.ts → internal/utils.d.ts} +0 -0
- /package/dist/viem/{utils.js → internal/utils.js} +0 -0
- /package/src/viem/{utils.ts → internal/utils.ts} +0 -0
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import type * as Authorization from 'ox/Authorization'
|
|
2
2
|
import type * as Errors from 'ox/Errors'
|
|
3
|
-
import
|
|
4
|
-
import * as Execute from 'ox/erc7821/Execute'
|
|
5
|
-
import type * as Hex from 'ox/Hex'
|
|
3
|
+
import * as Hex from 'ox/Hex'
|
|
6
4
|
import * as ox_TransactionRequest from 'ox/TransactionRequest'
|
|
7
5
|
import type { Compute } from '../internal/types.js'
|
|
8
6
|
import * as TokenId from './TokenId.js'
|
|
9
7
|
import * as Transaction from './Transaction.js'
|
|
8
|
+
import type { Call } from './TransactionEnvelopeAA.js'
|
|
10
9
|
|
|
11
10
|
/** A Transaction Request that is generic to all transaction types, as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/4aca1d7a3e5aab24c8f6437131289ad386944eaa/src/schemas/transaction.yaml#L358-L423). */
|
|
12
11
|
export type TransactionRequest<
|
|
@@ -15,8 +14,10 @@ export type TransactionRequest<
|
|
|
15
14
|
type extends string = string,
|
|
16
15
|
> = Compute<
|
|
17
16
|
ox_TransactionRequest.TransactionRequest<bigintType, numberType, type> & {
|
|
18
|
-
calls?: readonly
|
|
17
|
+
calls?: readonly Call<bigintType>[] | undefined
|
|
19
18
|
feeToken?: TokenId.TokenIdOrAddress | undefined
|
|
19
|
+
validBefore?: numberType | undefined
|
|
20
|
+
validAfter?: numberType | undefined
|
|
20
21
|
}
|
|
21
22
|
>
|
|
22
23
|
|
|
@@ -69,25 +70,32 @@ export type Rpc = TransactionRequest<Hex.Hex, Hex.Hex, string>
|
|
|
69
70
|
export function toRpc(request: TransactionRequest): Rpc {
|
|
70
71
|
const request_rpc = ox_TransactionRequest.toRpc(request) as Rpc
|
|
71
72
|
|
|
72
|
-
|
|
73
|
-
|
|
73
|
+
if (request.calls)
|
|
74
|
+
request_rpc.calls = request.calls.map((call) => ({
|
|
75
|
+
to: call.to ?? '0x',
|
|
76
|
+
value: call.value ? Hex.fromNumber(call.value) : '0x',
|
|
77
|
+
data: call.data ?? '0x',
|
|
78
|
+
}))
|
|
74
79
|
if (typeof request.feeToken !== 'undefined')
|
|
75
80
|
request_rpc.feeToken = TokenId.toAddress(request.feeToken)
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
delete request_rpc.data
|
|
81
|
-
request_rpc.to = request.from
|
|
82
|
-
request_rpc.data = Execute.encodeData(request.calls)
|
|
83
|
-
}
|
|
81
|
+
if (typeof request.validBefore !== 'undefined')
|
|
82
|
+
request_rpc.validBefore = Hex.fromNumber(request.validBefore)
|
|
83
|
+
if (typeof request.validAfter !== 'undefined')
|
|
84
|
+
request_rpc.validAfter = Hex.fromNumber(request.validAfter)
|
|
84
85
|
|
|
85
86
|
if (
|
|
86
87
|
request.calls ||
|
|
87
88
|
typeof request.feeToken !== 'undefined' ||
|
|
88
|
-
request.
|
|
89
|
-
|
|
90
|
-
|
|
89
|
+
typeof request.validBefore !== 'undefined' ||
|
|
90
|
+
typeof request.validAfter !== 'undefined' ||
|
|
91
|
+
request.type === 'aa'
|
|
92
|
+
) {
|
|
93
|
+
request_rpc.type = Transaction.toRpcType.aa
|
|
94
|
+
delete request_rpc.data
|
|
95
|
+
delete request_rpc.input
|
|
96
|
+
delete request_rpc.to
|
|
97
|
+
delete request_rpc.value
|
|
98
|
+
}
|
|
91
99
|
|
|
92
100
|
return request_rpc
|
|
93
101
|
}
|
package/src/ox/index.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
+
export * as SignatureEnvelope from './SignatureEnvelope.js'
|
|
1
2
|
export * as TokenId from './TokenId.js'
|
|
2
3
|
export * as TokenRole from './TokenRole.js'
|
|
3
4
|
export * as Transaction from './Transaction.js'
|
|
4
|
-
export * as
|
|
5
|
+
export * as TransactionEnvelopeAA from './TransactionEnvelopeAA.js'
|
package/src/prool/Instance.ts
CHANGED
|
@@ -20,10 +20,6 @@ export const tempo = defineInstance((parameters: tempo.Parameters = {}) => {
|
|
|
20
20
|
binary = 'tempo',
|
|
21
21
|
builder,
|
|
22
22
|
chain = path.resolve(import.meta.dirname, './internal/chain.json'),
|
|
23
|
-
consensusConfig = path.resolve(
|
|
24
|
-
import.meta.dirname,
|
|
25
|
-
'./internal/consensus.toml',
|
|
26
|
-
),
|
|
27
23
|
dev,
|
|
28
24
|
faucet,
|
|
29
25
|
...args
|
|
@@ -31,7 +27,7 @@ export const tempo = defineInstance((parameters: tempo.Parameters = {}) => {
|
|
|
31
27
|
const { deadline = 3, gaslimit = 3000000000, maxTasks = 8 } = builder ?? {}
|
|
32
28
|
const { blockTime = '2ms' } = dev ?? {}
|
|
33
29
|
const {
|
|
34
|
-
address = '
|
|
30
|
+
address = '0x20c0000000000000000000000000000000000001',
|
|
35
31
|
amount = 1000000000000000,
|
|
36
32
|
privateKey = '0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80',
|
|
37
33
|
} = faucet ?? {}
|
|
@@ -58,7 +54,7 @@ export const tempo = defineInstance((parameters: tempo.Parameters = {}) => {
|
|
|
58
54
|
fs.mkdirSync(tmp, { recursive: true })
|
|
59
55
|
return await process.start(
|
|
60
56
|
($) =>
|
|
61
|
-
$`${binary} node --http --dev --engine.disable-precompile-cache --faucet.enabled ${toArgs(
|
|
57
|
+
$`${binary} node --http --dev --no-consensus --engine.disable-precompile-cache --faucet.enabled ${toArgs(
|
|
62
58
|
{
|
|
63
59
|
...args,
|
|
64
60
|
builder: {
|
|
@@ -67,7 +63,6 @@ export const tempo = defineInstance((parameters: tempo.Parameters = {}) => {
|
|
|
67
63
|
maxTasks,
|
|
68
64
|
},
|
|
69
65
|
chain,
|
|
70
|
-
consensusConfig,
|
|
71
66
|
datadir: `${tmp}/data`,
|
|
72
67
|
dev: {
|
|
73
68
|
blockTime,
|
|
@@ -77,16 +72,17 @@ export const tempo = defineInstance((parameters: tempo.Parameters = {}) => {
|
|
|
77
72
|
amount,
|
|
78
73
|
privateKey,
|
|
79
74
|
},
|
|
80
|
-
port: port! +
|
|
75
|
+
port: port! + 10,
|
|
81
76
|
http: {
|
|
77
|
+
api: 'all',
|
|
82
78
|
addr: '0.0.0.0',
|
|
83
79
|
port: port!,
|
|
84
80
|
},
|
|
85
81
|
ws: {
|
|
86
|
-
port: port! +
|
|
82
|
+
port: port! + 20,
|
|
87
83
|
},
|
|
88
84
|
authrpc: {
|
|
89
|
-
port: port! +
|
|
85
|
+
port: port! + 30,
|
|
90
86
|
},
|
|
91
87
|
},
|
|
92
88
|
)}`,
|
|
@@ -144,10 +140,6 @@ export declare namespace tempo {
|
|
|
144
140
|
* Chain this node is running.
|
|
145
141
|
*/
|
|
146
142
|
chain?: string | undefined
|
|
147
|
-
/**
|
|
148
|
-
* Consensus configuration for this node.
|
|
149
|
-
*/
|
|
150
|
-
consensusConfig?: string | undefined
|
|
151
143
|
/**
|
|
152
144
|
* Development options.
|
|
153
145
|
*/
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"nonce": "0x42",
|
|
24
24
|
"timestamp": "0x0",
|
|
25
25
|
"extraData": "0x74656d706f2d67656e65736973",
|
|
26
|
-
"gasLimit": "
|
|
26
|
+
"gasLimit": "0xf761ef61000",
|
|
27
27
|
"difficulty": "0x0",
|
|
28
28
|
"mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
29
29
|
"coinbase": "0x0000000000000000000000000000000000000000",
|
|
@@ -38,26 +38,83 @@
|
|
|
38
38
|
"balance": "0x0",
|
|
39
39
|
"code": "0xef",
|
|
40
40
|
"storage": {
|
|
41
|
-
"0x0000000000000000000000000000000000000000000000000000000000000000": "
|
|
42
|
-
"0x0000000000000000000000000000000000000000000000000000000000000001": "
|
|
43
|
-
"0x0000000000000000000000000000000000000000000000000000000000000003": "0x000000000000000000000000000000010000000000000009fffffffffffffff5",
|
|
41
|
+
"0x0000000000000000000000000000000000000000000000000000000000000000": "0x6c696e6b696e6755534400000000000000000000000000000000000000000014",
|
|
42
|
+
"0x0000000000000000000000000000000000000000000000000000000000000001": "0x6c696e6b696e6755534400000000000000000000000000000000000000000014",
|
|
44
43
|
"0x0000000000000000000000000000000000000000000000000000000000000004": "0x5553440000000000000000000000000000000000000000000000000000000006",
|
|
45
|
-
"0x0000000000000000000000000000000000000000000000000000000000000005": "
|
|
44
|
+
"0x0000000000000000000000000000000000000000000000000000000000000005": "0xfa7da59eb3e204c1ebe26264cf58a45b82a262558037fd3981f8610a3c3303e3",
|
|
46
45
|
"0x0000000000000000000000000000000000000000000000000000000000000006": "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
47
46
|
"0x0000000000000000000000000000000000000000000000000000000000000007": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
|
|
48
|
-
"
|
|
49
|
-
"
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
|
|
47
|
+
"0x0000000000000000000000000000000000000000000000000000000000000009": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
48
|
+
"0x0000000000000000000000000000000000000000000000000000000000000010": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
49
|
+
"0x6ce161a7f0a898d5f3341ec7f8760ef1871efe10c3310072c6e30bfc0090ba1a": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
|
|
50
|
+
"0x992717ecd222bc9a94a54a4406732a5760249c4c6b7d665aa2b6a38e880eed4e": "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
51
|
+
"0xc201296dc775da99da1ee351fb567e87948d3e36b4b83c7039a1dc47ef513f9c": "0x0000000000000000000000000000000000000000000000000000000000000001"
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"0x20c0000000000000000000000000000000000001": {
|
|
55
|
+
"nonce": "0x0",
|
|
56
|
+
"balance": "0x0",
|
|
57
|
+
"code": "0xef",
|
|
58
|
+
"storage": {
|
|
59
|
+
"0x0000000000000000000000000000000000000000000000000000000000000000": "0x416c706861555344000000000000000000000000000000000000000000000010",
|
|
60
|
+
"0x0000000000000000000000000000000000000000000000000000000000000001": "0x416c706861555344000000000000000000000000000000000000000000000010",
|
|
61
|
+
"0x0000000000000000000000000000000000000000000000000000000000000003": "0x000000000000000000000000000000010000000000000000fffffffffffffffe",
|
|
62
|
+
"0x0000000000000000000000000000000000000000000000000000000000000004": "0x5553440000000000000000000000000000000000000000000000000000000006",
|
|
63
|
+
"0x0000000000000000000000000000000000000000000000000000000000000005": "0xca157bcf21f5fcb900bf22eeb9d610d119f1081ce006f09e8fd522d07a108db6",
|
|
64
|
+
"0x0000000000000000000000000000000000000000000000000000000000000006": "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
65
|
+
"0x0000000000000000000000000000000000000000000000000000000000000007": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
|
|
66
|
+
"0x0000000000000000000000000000000000000000000000000000000000000008": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
67
|
+
"0x0000000000000000000000000000000000000000000000000000000000000009": "0x00000000000000000000000020c0000000000000000000000000000000000000",
|
|
68
|
+
"0x0000000000000000000000000000000000000000000000000000000000000010": "0x00000000000000000000000020c0000000000000000000000000000000000000",
|
|
69
|
+
"0x48e7216947c77f4dbe209a10dd648f75777d5e8f77dcf5ccb2ab1f7eb019464c": "0x000000000000000000000000000000010000000000000000fffffffb57e837fe",
|
|
70
|
+
"0x6ce161a7f0a898d5f3341ec7f8760ef1871efe10c3310072c6e30bfc0090ba1a": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
|
|
71
|
+
"0x992717ecd222bc9a94a54a4406732a5760249c4c6b7d665aa2b6a38e880eed4e": "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
72
|
+
"0xc201296dc775da99da1ee351fb567e87948d3e36b4b83c7039a1dc47ef513f9c": "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
73
|
+
"0xc575514010954eba6215ee5ae6e5075ef02a2ac2ff314d4b40b889c6517d3c47": "0x00000000000000000000000000000000000000000000000000000004a817c800"
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"0x20c0000000000000000000000000000000000002": {
|
|
77
|
+
"nonce": "0x0",
|
|
78
|
+
"balance": "0x0",
|
|
79
|
+
"code": "0xef",
|
|
80
|
+
"storage": {
|
|
81
|
+
"0x0000000000000000000000000000000000000000000000000000000000000000": "0x426574615553440000000000000000000000000000000000000000000000000e",
|
|
82
|
+
"0x0000000000000000000000000000000000000000000000000000000000000001": "0x426574615553440000000000000000000000000000000000000000000000000e",
|
|
83
|
+
"0x0000000000000000000000000000000000000000000000000000000000000003": "0x000000000000000000000000000000010000000000000000fffffffffffffffe",
|
|
84
|
+
"0x0000000000000000000000000000000000000000000000000000000000000004": "0x5553440000000000000000000000000000000000000000000000000000000006",
|
|
85
|
+
"0x0000000000000000000000000000000000000000000000000000000000000005": "0xf2f1d6e6f7c3c31a30c7aa169cd1278440e67100fc7f95815089fefa7fc38dfa",
|
|
86
|
+
"0x0000000000000000000000000000000000000000000000000000000000000006": "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
87
|
+
"0x0000000000000000000000000000000000000000000000000000000000000007": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
|
|
88
|
+
"0x0000000000000000000000000000000000000000000000000000000000000008": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
89
|
+
"0x0000000000000000000000000000000000000000000000000000000000000009": "0x00000000000000000000000020c0000000000000000000000000000000000000",
|
|
90
|
+
"0x0000000000000000000000000000000000000000000000000000000000000010": "0x00000000000000000000000020c0000000000000000000000000000000000000",
|
|
91
|
+
"0x48e7216947c77f4dbe209a10dd648f75777d5e8f77dcf5ccb2ab1f7eb019464c": "0x000000000000000000000000000000010000000000000000fffffffdabf41bfe",
|
|
54
92
|
"0x6ce161a7f0a898d5f3341ec7f8760ef1871efe10c3310072c6e30bfc0090ba1a": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
|
|
55
93
|
"0x992717ecd222bc9a94a54a4406732a5760249c4c6b7d665aa2b6a38e880eed4e": "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
56
|
-
"0xb13d9483f8be32d93d60c12ecd67325f846213e2fa6e49166556194d1be354d1": "0x000000000000000000000000000000000000000000000000ffffffffffffffff",
|
|
57
|
-
"0xc07031a33fb863163203202489741f9de4c8414dda12fc745776b6c5b63ee857": "0x000000000000000000000000000000000000000000000000ffffffffffffffff",
|
|
58
94
|
"0xc201296dc775da99da1ee351fb567e87948d3e36b4b83c7039a1dc47ef513f9c": "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
59
|
-
"
|
|
60
|
-
|
|
95
|
+
"0xc575514010954eba6215ee5ae6e5075ef02a2ac2ff314d4b40b889c6517d3c47": "0x00000000000000000000000000000000000000000000000000000002540be400"
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
"0x20c0000000000000000000000000000000000003": {
|
|
99
|
+
"nonce": "0x0",
|
|
100
|
+
"balance": "0x0",
|
|
101
|
+
"code": "0xef",
|
|
102
|
+
"storage": {
|
|
103
|
+
"0x0000000000000000000000000000000000000000000000000000000000000000": "0x5468657461555344000000000000000000000000000000000000000000000010",
|
|
104
|
+
"0x0000000000000000000000000000000000000000000000000000000000000001": "0x5468657461555344000000000000000000000000000000000000000000000010",
|
|
105
|
+
"0x0000000000000000000000000000000000000000000000000000000000000003": "0x000000000000000000000000000000010000000000000000fffffffffffffffe",
|
|
106
|
+
"0x0000000000000000000000000000000000000000000000000000000000000004": "0x5553440000000000000000000000000000000000000000000000000000000006",
|
|
107
|
+
"0x0000000000000000000000000000000000000000000000000000000000000005": "0x54272f1387219c4afe2801c6d7951f9b649fadb31592236eb01ada6af679d618",
|
|
108
|
+
"0x0000000000000000000000000000000000000000000000000000000000000006": "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
109
|
+
"0x0000000000000000000000000000000000000000000000000000000000000007": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
|
|
110
|
+
"0x0000000000000000000000000000000000000000000000000000000000000008": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
111
|
+
"0x0000000000000000000000000000000000000000000000000000000000000009": "0x00000000000000000000000020c0000000000000000000000000000000000000",
|
|
112
|
+
"0x0000000000000000000000000000000000000000000000000000000000000010": "0x00000000000000000000000020c0000000000000000000000000000000000000",
|
|
113
|
+
"0x48e7216947c77f4dbe209a10dd648f75777d5e8f77dcf5ccb2ab1f7eb019464c": "0x000000000000000000000000000000010000000000000000fffffffdabf41bfe",
|
|
114
|
+
"0x6ce161a7f0a898d5f3341ec7f8760ef1871efe10c3310072c6e30bfc0090ba1a": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
|
|
115
|
+
"0x992717ecd222bc9a94a54a4406732a5760249c4c6b7d665aa2b6a38e880eed4e": "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
116
|
+
"0xc201296dc775da99da1ee351fb567e87948d3e36b4b83c7039a1dc47ef513f9c": "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
117
|
+
"0xc575514010954eba6215ee5ae6e5075ef02a2ac2ff314d4b40b889c6517d3c47": "0x00000000000000000000000000000000000000000000000000000002540be400"
|
|
61
118
|
}
|
|
62
119
|
},
|
|
63
120
|
"0x20fc000000000000000000000000000000000000": {
|
|
@@ -65,14 +122,29 @@
|
|
|
65
122
|
"balance": "0x0",
|
|
66
123
|
"code": "0xef",
|
|
67
124
|
"storage": {
|
|
68
|
-
"0x0000000000000000000000000000000000000000000000000000000000000000": "
|
|
125
|
+
"0x0000000000000000000000000000000000000000000000000000000000000000": "0x0000000000000000000000000000000000000000000000000000000000000004"
|
|
69
126
|
}
|
|
70
127
|
},
|
|
128
|
+
"0x403c000000000000000000000000000000000000": {
|
|
129
|
+
"nonce": "0x0",
|
|
130
|
+
"balance": "0x0",
|
|
131
|
+
"code": "0xef"
|
|
132
|
+
},
|
|
133
|
+
"0x4e59b44847b379578588920ca78fbf26c0b4956c": {
|
|
134
|
+
"nonce": "0x1",
|
|
135
|
+
"balance": "0x0",
|
|
136
|
+
"code": "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3"
|
|
137
|
+
},
|
|
71
138
|
"0x7702c00000000000000000000000000000000000": {
|
|
72
139
|
"nonce": "0x1",
|
|
73
140
|
"balance": "0x0",
|
|
74
141
|
"code": "0x60806040526004361061026a575f3560e01c80638e87cf4711610143578063cb4774c4116100b5578063e9ae5c5311610079578063e9ae5c5314610859578063f81d87a71461086c578063faba56d81461088b578063fac750e0146108aa578063fcd4e707146108be578063ff619c6b146108e657610271565b8063cb4774c4146107a2578063cebfe336146107c3578063d03c7914146107e2578063dcc09ebf14610801578063e5adda711461082d57610271565b8063b70e36f011610107578063b70e36f0146106d1578063b75c7dc6146106f0578063bc2c554a1461070f578063be766d151461073c578063bf53096914610750578063c885f95a1461076f57610271565b80638e87cf4714610628578063912aa1b8146106545780639e49fbf114610673578063a840fe4914610686578063ad077083146106a557610271565b80632f3f30c7116101dc57806357022451116101a05780635702245114610552578063598daac41461057157806360d2f33d146105905780636fd91454146105c35780637656d304146105e257806384b0196e1461060157610271565b80632f3f30c7146104c057806335058501146104da5780633e1b0812146104f45780634223b5c214610513578063515c9d6d1461053257610271565b806317e69ab81161022e57806317e69ab8146103a95780631a912f3e146103d857806320606b70146104195780632081a2781461044c5780632150c5181461046b5780632f1d14cb1461048d57610271565b80630cef73b4146102aa57806311a86fd6146102e557806312aaac7014610324578063136a12f7146103505780631626ba7e1461037157610271565b3661027157005b5f3560e01c63bc197c81811463f23a6e6182141763150b7a028214171561029c57806020526020603cf35b50633c10b94e5f526004601cfd5b3480156102b5575f5ffd5b506102c96102c4366004614f55565b610905565b6040805192151583526020830191909152015b60405180910390f35b3480156102f0575f5ffd5b5061030c73323232323232323232323232323232323232323281565b6040516001600160a01b0390911681526020016102dc565b34801561032f575f5ffd5b5061034361033e366004614f9c565b610bb4565b6040516102dc9190615042565b34801561035b575f5ffd5b5061036f61036a366004615080565b610ca3565b005b34801561037c575f5ffd5b5061039061038b366004614f55565b610dcd565b6040516001600160e01b031990911681526020016102dc565b3480156103b4575f5ffd5b506103c86103c3366004614f9c565b610eb2565b60405190151581526020016102dc565b3480156103e3575f5ffd5b5061040b7f9085b19ea56248c94d86174b3784cfaaa8673d1041d6441f61ff52752dac848381565b6040519081526020016102dc565b348015610424575f5ffd5b5061040b7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81565b348015610457575f5ffd5b5061036f6104663660046150ea565b610f79565b348015610476575f5ffd5b5061047f6110c8565b6040516102dc92919061515f565b348015610498575f5ffd5b5061040b7feff7fda3af271797e53f62724a17c2e5c118cf95ac65e8274759fcfff97bf1fe81565b3480156104cb575f5ffd5b50610390630707070760e51b81565b3480156104e5575f5ffd5b50610390631919191960e11b81565b3480156104ff575f5ffd5b5061040b61050e3660046151cc565b611232565b34801561051e575f5ffd5b5061034361052d366004614f9c565b61126a565b34801561053d575f5ffd5b5061040b5f516020615b115f395f51905f5281565b34801561055d575f5ffd5b5061036f61056c3660046151f2565b6112a2565b34801561057c575f5ffd5b5061036f61058b366004615231565b61138f565b34801561059b575f5ffd5b5061040b7f9a5906d05ceef8b2885ad4b95ec46e2570079e7f040193be5767e1329736de5781565b3480156105ce575f5ffd5b5061040b6105dd3660046152b4565b6114e1565b3480156105ed575f5ffd5b5061036f6105fc3660046152fb565b611620565b34801561060c575f5ffd5b506106156116da565b6040516102dc979695949392919061532f565b348015610633575f5ffd5b50610647610642366004614f9c565b611700565b6040516102dc91906153c5565b34801561065f575f5ffd5b5061036f61066e36600461541f565b6117e8565b61036f610681366004614f9c565b61193e565b348015610691575f5ffd5b5061040b6106a03660046154ff565b6119a0565b3480156106b0575f5ffd5b506106c46106bf366004614f9c565b6119d9565b6040516102dc91906155ac565b3480156106dc575f5ffd5b5061036f6106eb366004614f9c565b6119ec565b3480156106fb575f5ffd5b5061036f61070a366004614f9c565b611a54565b34801561071a575f5ffd5b5061072e6107293660046155ec565b611aa9565b6040516102dc9291906156c4565b348015610747575f5ffd5b5061040b611be0565b34801561075b575f5ffd5b5061036f61076a366004615782565b611c35565b34801561077a575f5ffd5b5061030c7f000000000000000000000000000000000000000000000000000000000000000081565b3480156107ad575f5ffd5b506107b6611cd9565b6040516102dc91906157b4565b3480156107ce575f5ffd5b5061040b6107dd3660046154ff565b611cf2565b3480156107ed575f5ffd5b506103c86107fc366004614f9c565b611d5a565b34801561080c575f5ffd5b5061082061081b366004614f9c565b611d6c565b6040516102dc91906157c6565b348015610838575f5ffd5b5061084c610847366004614f9c565b611f30565b6040516102dc91906157d8565b61036f610867366004614f55565b611f43565b348015610877575f5ffd5b5061036f6108863660046157ea565b611fc5565b348015610896575f5ffd5b5061040b6108a5366004615845565b61217d565b3480156108b5575f5ffd5b5061040b6122b5565b3480156108c9575f5ffd5b506108d361c1d081565b60405161ffff90911681526020016102dc565b3480156108f1575f5ffd5b506103c861090036600461586f565b6122c8565b5f8060418314604084141715610935573061092186868661259c565b6001600160a01b03161491505f9050610bac565b602183101561094857505f905080610bac565b506020198281018381118185180281189385019182013591601f19013560ff16156109795761097686612624565b95505b505f61098482610bb4565b805190915064ffffffffff1642811090151516156109a5575f925050610bac565b5f816020015160038111156109bc576109bc614fb3565b03610a17575f80603f86118735810290602089013502915091505f5f6109fb856060015180516020820151604090920151603f90911191820292910290565b91509150610a0c8a8585858561263d565b965050505050610baa565b600181602001516003811115610a2f57610a2f614fb3565b03610ab457606081810151805160208083015160409384015184518084018d9052855180820385018152601f8c018590049094028101870186529485018a8152603f9490941091820295910293610aab935f92610aa4928d918d918291018382808284375f920191909152506126d692505050565b85856127be565b94505050610baa565b600281602001516003811115610acc57610acc614fb3565b03610afb57610af48160600151806020019051810190610aec91906158c6565b8787876128dd565b9250610baa565b600381602001516003811115610b1357610b13614fb3565b03610baa57806060015151602014610b3e5760405163145a1fdd60e31b815260040160405180910390fd5b5f8160600151610b4d906158e1565b60601c9050604051638afc93b48152876020820152836040820152606080820152856080820152858760a08301375f5f526084860160205f82601c8501865afa915050638afc93b45f5160e01c14811615610ba757600194505b50505b505b935093915050565b604080516080810182525f80825260208201819052918101919091526060808201525f82815268448e3efef2f6a7f2f960205260408120610bf4906129bd565b8051909150610c165760405163395ed8c160e21b815260040160405180910390fd5b8051600619015f610c2a8383016020015190565b60d881901c855260c881901c915060d01c60ff166003811115610c4f57610c4f614fb3565b84602001906003811115610c6557610c65614fb3565b90816003811115610c7857610c78614fb3565b90525060ff811615156040850152610c9583838151811082025290565b606085015250919392505050565b333014610cc2576040516282b42960e81b815260040160405180910390fd5b8380610ce157604051638707510560e01b815260040160405180910390fd5b5f516020615b115f395f51905f528514610d1c57610cfe85612a23565b15610d1c57604051630442081560e01b815260040160405180910390fd5b610d268484612a87565b15610d44576040516303a6f8c760e21b815260040160405180910390fd5b610d6760e084901c606086901b1783610800610d5f89612aaf565b929190612afe565b50604080518681526001600160a01b03861660208201526001600160e01b031985169181019190915282151560608201527f7eb91b8ac56c0864a4e4f5598082d140d04bed1a4dd62a41d605be2430c494e1906080015b60405180910390a15050505050565b5f5f610e027feff7fda3af271797e53f62724a17c2e5c118cf95ac65e8274759fcfff97bf1fe865f9182526020526040902090565b604080517f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d47495f908152306020908152838220905261190190528282526042601e20915290915094505f5f610e57878787610905565b90925090508115158115151615610e8d57610e7181612a23565b80610e8a5750610e8a33610e8483612b27565b90612b56565b91505b81610e9c5763ffffffff610ea2565b631626ba7e5b60e01b93505050505b9392505050565b5f333014610ed2576040516282b42960e81b815260040160405180910390fd5b5f610f0b610f07610f0460017fa7d540c151934097be66b966a69e67d3055ab4350de7ff57a5f5cb2284ad4a5a615939565b90565b5c90565b90507f0a9f35b227e9f474cb86caa2e9b62847626fede22333cf52c7abea325d2eaa358114610f38575f5ffd5b610f6e610f69610f0460017fa7d540c151934097be66b966a69e67d3055ab4350de7ff57a5f5cb2284ad4a5a615939565b612c00565b60019150505b919050565b333014610f98576040516282b42960e81b815260040160405180910390fd5b8280610fb757604051638707510560e01b815260040160405180910390fd5b610fc084612a23565b15610fde5760405163f2fee1e160e01b815260040160405180910390fd5b5f610fe885612aaf565b6001600160a01b0385165f90815260028201602052604090206001909101915061103684600681111561101d5761101d614fb3565b8254600160ff9092169190911b80198216845516151590565b15611056575f61104582612c06565b03611056576110548286612c21565b505b611085816001015f86600681111561107057611070614fb3565b60ff1681526020019081526020015f205f9055565b7fa17fd662986af6bbcda33ce6b68c967b609aebe07da86cd25ee7bfbd01a65a278686866040516110b89392919061594c565b60405180910390a1505050505050565b6060805f6110d46122b5565b9050806001600160401b038111156110ee576110ee61543a565b60405190808252806020026020018201604052801561113d57816020015b604080516080810182525f80825260208083018290529282015260608082015282525f1990920191018161110c5790505b509250806001600160401b038111156111585761115861543a565b604051908082528060200260200182016040528015611181578160200160208202803683370190505b5091505f805b82811015611227575f6111a88268448e3efef2f6a7f2f65b60020190612d56565b90505f6111b482610bb4565b805190915064ffffffffff1642811090151516156111d357505061121f565b808785815181106111e6576111e661596f565b6020026020010181905250818685815181106112045761120461596f565b60209081029190910101528361121981615983565b94505050505b600101611187565b508084528252509091565b6001600160c01b0381165f90815268448e3efef2f6a7f2f76020526040808220549083901b67ffffffffffffffff1916175b92915050565b604080516080810182525f808252602082018190529181019190915260608082015261126461033e8368448e3efef2f6a7f2f661119f565b3330146112c1576040516282b42960e81b815260040160405180910390fd5b82806112e057604051638707510560e01b815260040160405180910390fd5b5f516020615b115f395f51905f52841461131b576112fd84612a23565b1561131b5760405163f2fee1e160e01b815260040160405180910390fd5b5f61132585612aaf565b60030190506113448185856001600160a01b0381161515610800612d9f565b50604080518681526001600160a01b0380871660208301528516918101919091527f7e2baa9c3a554d7c6587682e28fe9607c29d1d8c8a46968368d5614607c6079990606001610dbe565b3330146113ae576040516282b42960e81b815260040160405180910390fd5b83806113cd57604051638707510560e01b815260040160405180910390fd5b6113d685612a23565b156113f45760405163f2fee1e160e01b815260040160405180910390fd5b5f6113fe86612aaf565b600101905061140f81866040612dca565b506001600160a01b0385165f908152600182016020526040902061145585600681111561143e5761143e614fb3565b8254600160ff9092169190911b8082178455161590565b505f816001015f87600681111561146e5761146e614fb3565b60ff1681526020019081526020015f2090505f61148a82612e06565b86815290506114998282612e50565b7f68c781b0acb659616fc73da877ee77ae95c51ce973b6c7a762c8692058351b4a898989896040516114ce949392919061599b565b60405180910390a1505050505050505050565b5f806114fd8460408051828152600190920160051b8201905290565b90505f5b8481101561159d575f5f365f6115188a8a87612e95565b9296509094509250905061158d8561157e7f9085b19ea56248c94d86174b3784cfaaa8673d1041d6441f61ff52752dac84836001600160a01b0388168761155f8888612ec7565b6040805194855260208501939093529183015260608201526080902090565b600190910160051b8801528690565b5050505050806001019050611501565b5061c1d060f084901c145f6115f77f9a5906d05ceef8b2885ad4b95ec46e2570079e7f040193be5767e1329736de5783855160051b6020870120886040805194855260208501939093529183015260608201526080902090565b90508161160c5761160781612ed8565b611615565b61161581612fee565b979650505050505050565b33301461163f576040516282b42960e81b815260040160405180910390fd5b5f83815268448e3efef2f6a7f2f9602052604090205460ff166116755760405163395ed8c160e21b815260040160405180910390fd5b61168e828261020061168687612b27565b929190613062565b50816001600160a01b0316837f30653b7562c17b712ebc81c7a2373ea1c255cf2a055380385273b5bf7192cc99836040516116cd911515815260200190565b60405180910390a3505050565b600f60f81b6060805f8080836116ee61307d565b97989097965046955030945091925090565b60605f61170c83612aaf565b600301905061171a816130c0565b6001600160401b038111156117315761173161543a565b60405190808252806020026020018201604052801561177557816020015b604080518082019091525f808252602082015281526020019060019003908161174f5790505b5091505f5b82518110156117e15761178d82826130ca565b84838151811061179f5761179f61596f565b60200260200101515f018584815181106117bb576117bb61596f565b6020908102919091018101516001600160a01b039384169101529116905260010161177a565b5050919050565b333014611807576040516282b42960e81b815260040160405180910390fd5b6001600160a01b03811661182e57604051634adebaa360e11b815260040160405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80545f908152606083901b600c525190555f61186961307d565b91506118c590507f0a9f35b227e9f474cb86caa2e9b62847626fede22333cf52c7abea325d2eaa356118bf610f0460017fa7d540c151934097be66b966a69e67d3055ab4350de7ff57a5f5cb2284ad4a5a615939565b90613104565b306317e69ab86118d48361310b565b6040518263ffffffff1660e01b81526004016118f291815260200190565b6020604051808303815f875af115801561190e573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061193291906159cd565b61193a575f5ffd5b5050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611986576040516282b42960e81b815260040160405180910390fd5b61199d68448e3efef2f6a7f2f65b60010182613133565b50565b5f611264826020015160038111156119ba576119ba614fb3565b60ff168360600151805190602001205f1c5f9182526020526040902090565b60606112646119e783612b27565b61314a565b333014611a0b576040516282b42960e81b815260040160405180910390fd5b611a1e68448e3efef2f6a7f2f78261321e565b6040518181527f4d9dbebf1d909894d9c26fe228c27cec643b2cb490124e5b658f4edd203c20c19060200160405180910390a150565b333014611a73576040516282b42960e81b815260040160405180910390fd5b611a7c81613288565b60405181907fe5af7daed5ab2a2dc5f98d53619f05089c0c14d11a6621f6b906a2366c9a7ab3905f90a250565b60608082806001600160401b03811115611ac557611ac561543a565b604051908082528060200260200182016040528015611af857816020015b6060815260200190600190039081611ae35790505b509250806001600160401b03811115611b1357611b1361543a565b604051908082528060200260200182016040528015611b4657816020015b6060815260200190600190039081611b315790505b5091505f5b81811015611bd757611b74868683818110611b6857611b6861596f565b90506020020135611d6c565b848281518110611b8657611b8661596f565b6020026020010181905250611bb2868683818110611ba657611ba661596f565b90506020020135611f30565b838281518110611bc457611bc461596f565b6020908102919091010152600101611b4b565b50509250929050565b5f80611c0e611bfd60015f516020615b315f395f51905f52615939565b604080516020810190915290815290565b9050611c1981515c90565b5f03611c2657505f919050565b611c2f816132f3565b91505090565b333014611c54576040516282b42960e81b815260040160405180910390fd5b611c9c82828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611c9692506129b0915050565b90613313565b7faec6ef4baadc9acbdf52442522dfffda03abe29adba8d4af611bcef4cbe0c9ad8282604051611ccd929190615a10565b60405180910390a15050565b6060611ced68448e3efef2f6a7f2f66129bd565b905090565b5f333014611d12576040516282b42960e81b815260040160405180910390fd5b611d1b8261336b565b9050807f3d3a48be5a98628ecf98a6201185102da78bbab8f63a4b2d6b9eef354f5131f583604051611d4d9190615042565b60405180910390a2919050565b5f611d648261340d565b151592915050565b60605f611d7883612aaf565b6001019050611d936040518060200160405280606081525090565b5f611d9d83613456565b90505f5b81811015611f26575f611db485836134a7565b6001600160a01b0381165f9081526001870160205260408120919250611dd982613500565b90505f5b8151811015611f17575f828281518110611df957611df961596f565b602002602001015190505f611e22856001015f8460ff1681526020019081526020015f20612e06565b9050611e5f6040805160e081019091525f808252602082019081526020015f81526020015f81526020015f81526020015f81526020015f81525090565b8260ff166006811115611e7457611e74614fb3565b81602001906006811115611e8a57611e8a614fb3565b90816006811115611e9d57611e9d614fb3565b9052506001600160a01b03871681528151604080830191909152820151608082015260208201516060820152611ee24260ff851660068111156108a5576108a5614fb3565b60c08201819052608082015160608301519111150260a082015280611f078b82613559565b5050505050806001019050611ddd565b50505050806001019050611da1565b5050519392505050565b6060611264611f3e83612aaf565b613602565b5f611f4d8461340d565b905080600303611f6857611f628484846136bb565b50505050565b365f365f84611f7e57637f1812755f526004601cfd5b5085358087016020810194503592505f90604011600286141115611fac575050602080860135860190810190355b611fbb88888887878787613753565b5050505050505050565b813580830190604081901c602084101715611fde575f5ffd5b50612053336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461204a3061201f602086018661541f565b6001600160a01b0316143061203a608087016060880161541f565b6001600160a01b03161417151590565b15159015151690565b61206f576040516282b42960e81b815260040160405180910390fd5b30612080608083016060840161541f565b6001600160a01b0316036120dd575f806120a2866102c4610240860186615a23565b975091508690506001600160c01b033231106120bd57600191505b816120da576040516282b42960e81b815260040160405180910390fd5b50505b6121086120f060a083016080840161541f565b6121026102208401610200850161541f565b8861396b565b841580612119575061211985612a23565b612175575f61212786612aaf565b600181019150612173906002015f61214560a086016080870161541f565b6001600160a01b0316815260208101919091526040015f2061216d60a085016080860161541f565b89613993565b505b505050505050565b5f8082600681111561219157612191614fb3565b036121a457603c808404025b9050611264565b60018260068111156121b8576121b8614fb3565b036121c957610e108084040261219d565b60028260068111156121dd576121dd614fb3565b036121ef57620151808084040261219d565b600382600681111561220357612203614fb3565b03612229576007600362015180808604918201929092069003620545ff8511020261219d565b5f5f61223485613ab8565b509092509050600484600681111561224e5761224e614fb3565b036122685761225f82826001613b62565b92505050611264565b600584600681111561227c5761227c614fb3565b0361228d5761225f82600180613b62565b60068460068111156122a1576122a1614fb3565b036122b157600192505050611264565b5f5ffd5b5f611ced68448e3efef2f6a7f2f8613bb9565b5f846122d657506001612594565b6122df85612a23565b156122ec57506001612594565b631919191960e11b60048310612300575082355b8261230f5750630707070760e51b5b6123198582612a87565b15612327575f915050612594565b5f61233187612aaf565b905061233c81613bb9565b156123f95761235760e083901c606088901b175b8290613c05565b1561236757600192505050612594565b61237a6332323232606088901b17612350565b1561238a57600192505050612594565b6123b060e083901c73191919191919191919191919191919191919191960611b17612350565b156123c057600192505050612594565b6123e97f3232323232323232323232323232323232323232000000000000000032323232612350565b156123f957600192505050612594565b61240f5f516020615b115f395f51905f52612aaf565b905061241a81613bb9565b156124d45761243260e083901c606088901b17612350565b1561244257600192505050612594565b6124556332323232606088901b17612350565b1561246557600192505050612594565b61248b60e083901c73191919191919191919191919191919191919191960611b17612350565b1561249b57600192505050612594565b6124c47f3232323232323232323232323232323232323232000000000000000032323232612350565b156124d457600192505050612594565b6124e2878888898989613c89565b156124f257600192505050612594565b6125148788733232323232323232323232323232323232323232898989613c89565b1561252457600192505050612594565b61253f5f516020615b115f395f51905f528888808989613c89565b1561254f57600192505050612594565b61257e5f516020615b115f395f51905f5288733232323232323232323232323232323232323232898989613c89565b1561258e57600192505050612594565b5f925050505b949350505050565b5f60405182604081146125b757604181146125de575061260f565b60208581013560ff81901c601b0190915285356040526001600160ff1b03166060526125ef565b60408501355f1a6020526040856040375b50845f526020600160805f60015afa5191505f606052806040523d61261c575b638baa579f5f526004601cfd5b509392505050565b5f815f526020600160205f60025afa5190503d610f7457fe5b5f6040518681528560208201528460408201528360608201528260808201525f5f5260205f60a0836101005afa503d6126a1576d1ab2e8006fd8b71907bf06a5bdee3b6126a15760205f60a0836dd01ea45f9efd5c54f037fa57ea1a5afa6126a157fe5b505f516001147f7fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a8851110905095945050505050565b61270b6040518060c0016040528060608152602001606081526020015f81526020015f81526020015f81526020015f81525090565b815160c081106127b85760208301818101818251018281108260c08301111715612737575050506127b8565b808151019250806020820151018181108382111782851084861117171561276157505050506127b8565b828151602083010111838551602087010111171561278257505050506127b8565b8386528060208701525060408101516040860152606081015160608601526080810151608086015260a081015160a08601525050505b50919050565b5f5f5f6127cd88600180613d37565b905060208601518051602082019150604088015160608901518451600d81016c1131b430b63632b733b2911d1160991b60981c8752848482011060228286890101515f1a14168160138901208286890120141685846014011085851760801c1074113a3cb832911d113bb2b130baba34371733b2ba1160591b60581c8589015160581c14161698505080865250505087515189151560021b600117808160218c51015116146020831188161696505085156128b157602089510181810180516020600160208601856020868a8c60025afa60011b5afa51915295503d90506128b157fe5b50505082156128d2576128cf8287608001518860a00151888861263d565b92505b505095945050505050565b5f6001600160a01b0385161561259457604051853b61296d57826040811461290d576041811461293457506129a7565b60208581013560ff81901c601b0190915285356040526001600160ff1b0316606052612945565b60408501355f1a6020526040856040375b50845f526020600160805f60015afa5180871860601b3d119250505f606052806040526129a7565b631626ba7e60e01b80825285600483015260248201604081528460448401528486606485013760208160648701858b5afa90519091141691505b50949350505050565b68448e3efef2f6a7f2f690565b60405181546020820190600881901c5f8260ff8417146129eb57505080825260ff8116601f80821115612a0d575b855f5260205f205b8160051c810154828601526020820191508282106129f357505b508084525f920191825250602001604052919050565b5f81815268448e3efef2f6a7f2f960205260408120805460ff808216908114801590910260089290921c021780612a6d5760405163395ed8c160e21b815260040160405180910390fd5b612a7a825f198301613e28565b60ff161515949350505050565b6001600160a01b039190911630146001600160e01b03199190911663e9ae5c5360e01b141690565b5f805f516020615b115f395f51905f528314612ad357612ace83613e95565b612ae2565b5f516020615b115f395f51905f525b68b11ddb8fabd886bebb6009525f908152602990209392505050565b5f82612b1357612b0e8585613ec2565b612b1e565b612b1e858584613fc0565b95945050505050565b5f81815268448e3efef2f6a7f2fa602052604081208054601f5263d4203f8b6004528152603f81208190610eab565b63978aab926004525f828152602481206001600160a01b03929092169168fbb67fda52d4bfb8be198301612b915763f5a267f15f526004601cfd5b82612ba35768fbb67fda52d4bfb8bf92505b80546001600160601b038116612be75760019250838160601c0315612bf857600182015460601c8414612bf857600282015460601c8414612bf8575b5f9250612bf8565b81602052835f5260405f2054151592505b505092915050565b5f815d50565b5f81545b80156127b857600191820191811901811618612c0a565b63978aab926004525f828152602481206001600160a01b03929092169168fbb67fda52d4bfb8be198301612c5c5763f5a267f15f526004601cfd5b82612c6e5768fbb67fda52d4bfb8bf92505b80546001600160601b03811680612ce85760019350848260601c03612ca65760018301805484556002840180549091555f9055612d4d565b84600184015460601c03612cc75760028301805460018501555f9055612d4d565b84600284015460601c03612ce0575f6002840155612d4d565b5f9350612d4d565b82602052845f5260405f20805480612d01575050612d4d565b60018360011c039250826001820314612d31578285015460601c8060601b60018303870155805f52508060405f20555b5060018260011b17845460601c60601b1784555f815550600193505b50505092915050565b6318fb58646004525f8281526024902081015468fbb67fda52d4bfb8bf81141502612d8083613bb9565b821061126457604051634e23d03560e01b815260040160405180910390fd5b5f82612db457612daf8686613fdd565b612dc0565b612dc08686868561400e565b9695505050505050565b5f612dd58484614049565b90508015610eab5781612de785613456565b1115610eab5760405163155176b960e11b815260040160405180910390fd5b612e2760405180606001604052805f81526020015f81526020015f81525090565b5f612e31836129bd565b905080515f146127b8575f612e45826141a4565b602001949350505050565b6040805182516020808301919091528301518183015290820151606082015261193a908390612e90906080016040516020818303038152906040526142f0565b613313565b60051b82013590910180356001600160a01b031680153002179260208083013593506040830135909201918201913590565b5f8183604051375060405120919050565b7f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000030147f0000000000000000000000000000000000000000000000000000000000000000461416612fcb5750604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81527f000000000000000000000000000000000000000000000000000000000000000060208201527f00000000000000000000000000000000000000000000000000000000000000009181019190915246606082015230608082015260a090205b6719010000000000005f5280601a5281603a52604260182090505f603a52919050565b5f5f5f612ff961307d565b915091506040517f91ab3d17e3a50a9d89e63fd30b92be7f5336b03b287bb946787a83a9d62a27665f5282516020840120602052815160208301206040523060605260805f206020526119015f52846040526042601e20935080604052505f6060525050919050565b5f8261307257612b0e8585612c21565b612b1e858584612dca565b604080518082018252600d81526c125d1a1858d85058d8dbdd5b9d609a1b60208083019190915282518084019093526005835264302e352e3560d81b9083015291565b5f61126482613456565b5f8060018401816130db86866134a7565b6001600160a01b038082168352602083019390935260409091015f205490969116945092505050565b80825d5050565b8051602181106131225763ec92f9a35f526004601cfd5b9081015160209190910360031b1b90565b5f5f61313f848461451d565b600101905550505050565b63978aab926004525f818152602481206060915068fbb67fda52d4bfb8bf81548060a01b60a01c6040519450846020018260601c92508383141583028152816131d85782156131d357600191508185015460601c925082156131d3578284141590920260208301525060028381015460601c9182156131d3576003915083831415830260408201525b613208565b600191821c915b82811015613206578581015460601c858114158102600583901b84015293506001016131df565b505b8186528160051b81016040525050505050919050565b604081811c5f90815260208490522080546001600160401b0383161015613258576040516312ee5c9360e01b815260040160405180910390fd5b61328261327c836001600160401b031667fffffffffffffffe808218908211021890565b60010190565b90555050565b5f81815268448e3efef2f6a7f2f96020908152604080832083905568448e3efef2f6a7f2fa90915290208054600101905568448e3efef2f6a7f2f66132d668448e3efef2f6a7f2f883613ec2565b61193a5760405163395ed8c160e21b815260040160405180910390fd5b80515f90805c8061330b5763bc7ec7795f526004601cfd5b015c92915050565b80518060081b60ff175f60fe831161333c575050601f8281015160081b82179080831115613363575b60208401855f5260205f205b828201518360051c8201556020830192508483106133485750505b509092555050565b5f8160400151156133a0576133838260200151614563565b6133a0576040516321b9b33960e21b815260040160405180910390fd5b6133a9826119a0565b90505f68448e3efef2f6a7f2f6606084015184516020808701516040808901519051959650613400956133de95949301615a65565b60408051601f198184030181529181525f858152600385016020522090613313565b6117e1600282018361457f565b6003690100000000007821000260b09290921c69ffff00000000ffffffff16918214026901000000000078210001821460011b6901000000000000000000909214919091171790565b63978aab926004525f8181526024812080548060a01b60a01c8060011c9350808260601c151761349f5760019350838301541561349f5760029350838301541561349f57600393505b505050919050565b63978aab926004525f828152602481208281015460601c915068fbb67fda52d4bfb8bf821415820291506134da84613456565b83106134f957604051634e23d03560e01b815260040160405180910390fd5b5092915050565b604051815460208201905f905b80156135435761ffff8116613528576010918201911c61350d565b8183526020600582901b16909201916001918201911c61350d565b5050601f198282030160051c8252604052919050565b604080516060815290819052829050825160018151018060051b661d174b32e2c5536020840351818106158282040290508083106135f1578281178101811582602001870160405118176135bd57828102601f1987015285016020016040526135f1565b602060405101816020018101604052808a52601f19855b88810151838201528101806135d457509184029181019190915294505b505082019390935291909152919050565b6318fb58646004525f81815260249020801954604051919068fbb67fda52d4bfb8bf90602084018161367b57835480156136755780841415028152600184810154909250801561367557808414150260208201526002848101549092508015613675576003925083811415810260408301525b506136a6565b8160011c91505f5b828110156136a457848101548481141502600582901b830152600101613683565b505b8185528160051b810160405250505050919050565b600360b01b929092189181358083018035916020808301928686019291600586901b9091018101831090861017604082901c171561370057633995943b5f526004601cfd5b505f5b83811461217357365f8260051b850135808601602081019350803592505084828401118160401c171561373d57633995943b5f526004601cfd5b50613749898383611f43565b5050600101613703565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016330361381957602081146137a45760405163438e981560e11b815260040160405180910390fd5b60408051602081019091528235906137d9908290806137d160015f516020615b315f395f51905f52615939565b905290614691565b6137e48585836146ab565b6040805160208101909152613813908061380c60015f516020615b315f395f51905f52615939565b9052614b74565b50612173565b8061384d5733301461383d576040516282b42960e81b815260040160405180910390fd5b61384884845f6146ab565b612173565b602081101561386f5760405163438e981560e11b815260040160405180910390fd5b813561388368448e3efef2f6a7f2f6611994565b6040518181527f4d9dbebf1d909894d9c26fe228c27cec643b2cb490124e5b658f4edd203c20c19060200160405180910390a15f5f6138e06138c68888866114e1565b602080871081881802188088019080880390881102610905565b9150915081613901576040516282b42960e81b815260040160405180910390fd5b61392c81604051806020016040528060015f516020615b315f395f51905f525f1c6137d19190615939565b6139378787836146ab565b604080516020810190915261395f908061380c60015f516020615b315f395f51905f52615939565b50505050505050505050565b6001600160a01b038316613988576139838282614b95565b505050565b613983838383614bae565b8061399d57505050565b5f6139a784613500565b905080515f036139ca57604051635ee7e5b160e01b815260040160405180910390fd5b5f5b8151811015613ab1575f8282815181106139e8576139e861596f565b602002602001015190505f866001015f8360ff1681526020019081526020015f2090505f613a1582612e06565b90505f613a31428560ff1660068111156108a5576108a5614fb3565b90508082604001511015613a4d57604082018190525f60208301525b815f01518783602001818151613a639190615ab4565b9150818152501115613a985760405163482a648960e11b81526001600160a01b03891660048201526024015b60405180910390fd5b613aa28383612e50565b505050508060010190506139cc565b5050505050565b5f8080613b55613acb6201518086615ac7565b5f5f5f620afa6c8401935062023ab1840661016d62023ab082146105b48304618eac84048401030304606481048160021c8261016d0201038203915060996002836005020104600161030161f4ff830201600b1c84030193506b030405060708090a0b0c010260a01b811a9450506003841061019062023ab1880402820101945050509193909250565b9196909550909350915050565b5f620afa6c1961019060038510860381810462023ab10260649290910691820461016d830260029390931c9290920161f4ff600c60098901060261030101600b1c8601019190910301016201518002949350505050565b6318fb58646004525f818152602481208019548060011c9250806117e15781545f9350156117e1576001925082820154156117e1576002925082820154156117e1575060039392505050565b6318fb58646004525f8281526024812068fbb67fda52d4bfb8bf8303613c325763f5a267f15f526004601cfd5b82613c445768fbb67fda52d4bfb8bf92505b801954613c755780546001925083146134f957600181015483146134f957600281015483146134f9575f91506134f9565b602052505f90815260409020541515919050565b5f5f5f613ca287613c998b612aaf565b60030190614bf8565b915091508115613d29576040516001629e639560e01b031981526001600160a01b0382169063ff619c6b90613ce1908b908a908a908a90600401615ae6565b602060405180830381865afa158015613cfc573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613d2091906159cd565b92505050612dc0565b505f98975050505050505050565b60608351801561261c576003600282010460021b60405192507f4142434445464748494a4b4c4d4e4f505152535455565758595a616263646566601f526106708515027f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392d5f18603f526020830181810183886020010180515f82525b60038a0199508951603f8160121c16515f53603f81600c1c1651600153603f8160061c1651600253603f811651600353505f518452600484019350828410613db2579052602001604052613d3d60f01b60038406600204808303919091525f861515909102918290035290038252509392505050565b5f82548060ff821714613e7057601e8311613e475780831a91506134f9565b8060ff168311613e6b57835f52601f83038060051c60205f200154601f82161a9250505b6134f9565b8060081c83116134f957835f528260051c60205f200154601f84161a91505092915050565b5f81815268448e3efef2f6a7f2fa602052604081208054601f5263d4203f8b6004528152603f8120611264565b6318fb58646004525f8281526024812068fbb67fda52d4bfb8bf8303613eef5763f5a267f15f526004601cfd5b82613f015768fbb67fda52d4bfb8bf92505b80195480613f62576001925083825403613f2e5760018201805483556002830180549091555f9055612bf8565b83600183015403613f4c5760028201805460018401555f9055612bf8565b83600283015403612bdf575f6002830155612bf8565b81602052835f5260405f20805480613f7b575050612bf8565b60018360011c039250826001820314613fa557828401548060018303860155805f52508060405f20555b5060018260011b178319555f81555060019250505092915050565b5f613fcb848461457f565b90508015610eab5781612de785613bb9565b6001600160a01b0381165f908152600183016020526040812080546001600160a01b0319169055610eab8383612c21565b6001600160a01b038381165f908152600186016020526040812080546001600160a01b03191692851692909217909155612b1e858584612dca565b63978aab926004525f828152602481206001600160a01b03929092169168fbb67fda52d4bfb8be1983016140845763f5a267f15f526004601cfd5b826140965768fbb67fda52d4bfb8bf92505b80546001600160601b0381168260205280614158578160601c806140c4578560601b84556001945050612d4d565b8581036140d15750612d4d565b600184015460601c806140f2578660601b6001860155600195505050612d4d565b868103614100575050612d4d565b600285015460601c80614122578760601b600287015560019650505050612d4d565b87810361413157505050612d4d565b5f928352604080842060019055918352818320600290558252902060039055506007908117905b845f5260405f20805461419a57600191821c808301825591945081614186578560601b600317845550612d4d565b8560601b8285015582600201845550612d4d565b5050505092915050565b6060815115610f74576040519050600482018051835184602001017f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f6020850183198552866020015b8051805f1a61424557600190811a016080811161422557600282019150803684379182019184821061421f57506142d2565b506141ed565b5f198352918201607f1901916002919091019084821061421f57506142d2565b80835283811684011783171980157fc0c8c8d0c8e8d0d8c8e8e0e8d0d8e0f0c8d0e8d0e0e0d8f0d0d0e0d8f8f8f8f8601f6f8421084210842108cc6318c6db6d54be660204081020408185821060071b86811c6001600160401b031060061b1795861c0260181a1c161a90911860031c0191820191018381106141ed57838111156142d257838103820391505b509290935250601f198382030183525f815260200160405250919050565b6060614348565b6fffffffffffffffffffffffffffffffff811160071b81811c6001600160401b031060061b1781811c63ffffffff1060051b1781811c61ffff1060041b1790811c60ff1060039190911c17601f1890565b50604051815182017f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f60208301845b8381146144f957600101805160ff1680614401575b6020820151806143d05782860360208181189082110218607f839003818111818318021893840193928301929050601f81116143c95750506143f1565b505061438c565b6143d9816142f7565b90508286038181118183180218928301929190910190505b60f01b8252600290910190614377565b60ff8103614454576020808301511980156144225761441f816142f7565b91505b508286038181118282180218601f81811890821102186080811760f01b85526002909401939290920191506143779050565b80835350602081015160018381018290528482168501821791198581168601179190911684171980157fc0c8c8d0c8e8d0d8c8e8e0e8d0d8e0f0c8d0e8d0e0e0d8f0d0d0e0d8f8f8f8f86f8421084210842108cc6318c6db6d54be660204081020408184821060071b85811c6001600160401b031060061b1794851c0260181a1c601f161a90911860031c018286038181119181189190910218928301019101614377565b50600484018051199052601f198482030184525f8152602001604052509092915050565b604081811c5f90815260208490522080546001600160401b0380841682149082101661455c57604051633ab3447f60e11b815260040160405180910390fd5b9250929050565b5f8082600381111561457757614577614fb3565b141592915050565b6318fb58646004525f8281526024812068fbb67fda52d4bfb8bf83036145ac5763f5a267f15f526004601cfd5b826145be5768fbb67fda52d4bfb8bf92505b8019548160205280614662578154806145de578483556001935050612bf8565b8481036145eb5750612bf8565b60018301548061460657856001850155600194505050612bf8565b858103614614575050612bf8565b6002840154806146305786600286015560019550505050612bf8565b86810361463f57505050612bf8565b5f9283526040808420600190559183528183206002905582529020600390555060075b835f5260405f208054612d4d57600191821c8381018690558083019182905590821b8217831955909250612bf8565b5f825f015190506001815c01828183015d80825d50505050565b8015806146bc57506146bc81612a23565b156146cc57613983838383614c32565b5f6146d682612aaf565b60010190506147446040805160e081018252606060c0820181815282528251602080820185528282528084019190915283518082018552828152838501528351808201855282815282840152835180820185528281526080840152835190810190935282529060a082015290565b5f61474e83613456565b90505f5b818110156147a0575f61476585836134a7565b90506001600160a01b038116156147975760408401516147859082614c7c565b506060840151614795905f613559565b505b50600101614752565b505f5f5b86811015614991575f5f365f6147bb8c8c87612e95565b9350935093509350825f146147d7576147d48387615ab4565b95505b60048110156147e95750505050614989565b813560e01c63a9059cbb8190036148205760408901516148099086614c7c565b5061481e60248401355b60608b015190614c9b565b505b8063ffffffff166323b872dd03614883573060248401356001600160a01b03160361484f575050505050614989565b60448301355f03614864575050505050614989565b60408901516148739086614c7c565b506148816044840135614813565b505b8063ffffffff1663095ea7b3036148e95760248301355f036148a9575050505050614989565b88516148b59086614c7c565b506148c9600484013560208b015190614c7c565b5060408901516148d99086614c7c565b506148e76024840135614813565b505b8063ffffffff166387517c4503614983576001600160a01b0385166e22d473030f116ddee9f6b43ac78ba314614923575050505050614989565b60448301355f03614938575050505050614989565b61494b600484013560808b015190614c7c565b5061495f602484013560a08b015190614c7c565b50614973600484013560408b015190614c7c565b506149816044840135614813565b505b50505050505b6001016147a4565b506040830151516060840151516149a89190614cb1565b5f6149db6149b98560400151515190565b60606040518260201c5f031790508181528160051b6020820101604052919050565b90505f5b60408501515151811015614a2757604085015151600582901b0160200151614a1d82614a0b8330614df4565b85919060059190911b82016020015290565b50506001016149df565b50614a33888888614c32565b5f8080526001860160205260408120614a4c9184613993565b5f5b84515151811015614a9057845151600582901b0160200151614a8781614a81848960200151614de490919063ffffffff16565b5f614e1e565b50600101614a4e565b505f5b60808501515151811015614ada57608085015151600582901b0160200151614ad181614acc848960a00151614de490919063ffffffff16565b614e5e565b50600101614a93565b505f5b60408501515151811015614b6957604085810151516020600584901b9182018101516001600160a01b0381165f90815260018b018352939093206060890151518301820151928601909101519091614b5f9183918591614b5a9190614b4f90614b468930614df4565b80821191030290565b808218908210021890565b613993565b5050600101614add565b505050505050505050565b8051805c80614b8a5763bc7ec7795f526004601cfd5b60018103825d505050565b5f385f3884865af161193a5763b12d13eb5f526004601cfd5b816014528060345263a9059cbb60601b5f5260205f604460105f875af18060015f511416614bee57803d853b151710614bee576390b8ec185f526004601cfd5b505f603452505050565b6001600160a01b038181165f90815260018401602052604081205490911680151580614c295750614c298484614eb9565b91509250929050565b5f82614c3e5750505050565b5f5f365f614c4d888887612e95565b9350935093509350614c62848484848a614ec4565b50505050838390508160010191508103614c3e5750505050565b604080516060815290819052610eab83836001600160a01b0316613559565b604080516060815290819052610eab8383613559565b614d3e565b805181602083015b8281511015614cea57805160209290920180518252918252614cea868301878301805182519091529052565b602001848110614cbe57508251815184528152614d11858201868501805182519091529052565b808360400111614d2657614d26858285614cb6565b838160600111613ab157613ab1858560208401614cb6565b805180835114614d5a57634e487b715f5260326020526024601cfd5b6002811061398357828203602084018260051b8101614d7a838284614cb6565b82820151604087015b8051845114614d9f5781858501525f9150602084019350805184525b8085015191820191821015614dc057634e487b715f5260116020526024601cfd5b602081019050828103614d8357509282019290925284900360051c93849052505052565b905160059190911b016020015190565b5f816014526370a0823160601b5f5260208060246010865afa601f3d111660205102905092915050565b816014528060345263095ea7b360601b5f5260205f604460105f875af18060015f511416614bee57803d853b151710614bee57633e3f8f735f526004601cfd5b60405163cc53287f8152602080820152600160408201528260601b60601c60608201528160601b60601c60808201525f3860a0601c84015f6e22d473030f116ddee9f6b43ac78ba35af1613983576396b3de235f526004601cfd5b5f610eab8383612b56565b614ed0818685856122c8565b614ef5578085848460405163f78c1b5360e01b8152600401613a8f9493929190615ae6565b613ab18585858585604051828482375f388483888a5af1612175573d5f823e3d81fd5b5f5f83601f840112614f28575f5ffd5b5081356001600160401b03811115614f3e575f5ffd5b60208301915083602082850101111561455c575f5ffd5b5f5f5f60408486031215614f67575f5ffd5b8335925060208401356001600160401b03811115614f83575f5ffd5b614f8f86828701614f18565b9497909650939450505050565b5f60208284031215614fac575f5ffd5b5035919050565b634e487b7160e01b5f52602160045260245ffd5b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b64ffffffffff81511682525f60208201516004811061501657615016614fb3565b806020850152506040820151151560408401526060820151608060608501526125946080850182614fc7565b602081525f610eab6020830184614ff5565b6001600160a01b038116811461199d575f5ffd5b801515811461199d575f5ffd5b8035610f7481615068565b5f5f5f5f60808587031215615093575f5ffd5b8435935060208501356150a581615054565b925060408501356001600160e01b0319811681146150c1575f5ffd5b915060608501356150d181615068565b939692955090935050565b803560078110610f74575f5ffd5b5f5f5f606084860312156150fc575f5ffd5b83359250602084013561510e81615054565b915061511c604085016150dc565b90509250925092565b5f8151808452602084019350602083015f5b82811015615155578151865260209586019590910190600101615137565b5093949350505050565b5f604082016040835280855180835260608501915060608160051b8601019250602087015f5b828110156151b657605f198786030184526151a1858351614ff5565b94506020938401939190910190600101615185565b505050508281036020840152612b1e8185615125565b5f602082840312156151dc575f5ffd5b81356001600160c01b0381168114610eab575f5ffd5b5f5f5f60608486031215615204575f5ffd5b83359250602084013561521681615054565b9150604084013561522681615054565b809150509250925092565b5f5f5f5f60808587031215615244575f5ffd5b84359350602085013561525681615054565b9250615264604086016150dc565b9396929550929360600135925050565b5f5f83601f840112615284575f5ffd5b5081356001600160401b0381111561529a575f5ffd5b6020830191508360208260051b850101111561455c575f5ffd5b5f5f5f604084860312156152c6575f5ffd5b83356001600160401b038111156152db575f5ffd5b6152e786828701615274565b909790965060209590950135949350505050565b5f5f5f6060848603121561530d575f5ffd5b83359250602084013561531f81615054565b9150604084013561522681615068565b60ff60f81b8816815260e060208201525f61534d60e0830189614fc7565b828103604084015261535f8189614fc7565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b818110156153b4578351835260209384019390920191600101615396565b50909b9a5050505050505050505050565b602080825282518282018190525f918401906040840190835b8181101561541457835180516001600160a01b0390811685526020918201511681850152909301926040909201916001016153de565b509095945050505050565b5f6020828403121561542f575f5ffd5b8135610eab81615054565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156154705761547061543a565b60405290565b5f82601f830112615485575f5ffd5b81356001600160401b0381111561549e5761549e61543a565b604051601f8201601f19908116603f011681016001600160401b03811182821017156154cc576154cc61543a565b6040528181528382016020018510156154e3575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f6020828403121561550f575f5ffd5b81356001600160401b03811115615524575f5ffd5b820160808185031215615535575f5ffd5b61553d61544e565b813564ffffffffff81168114615551575f5ffd5b8152602082013560048110615564575f5ffd5b602082015261557560408301615075565b604082015260608201356001600160401b03811115615592575f5ffd5b61559e86828501615476565b606083015250949350505050565b602080825282518282018190525f918401906040840190835b818110156154145783516001600160a01b03168352602093840193909201916001016155c5565b5f5f602083850312156155fd575f5ffd5b82356001600160401b03811115615612575f5ffd5b61561e85828601615274565b90969095509350505050565b6007811061563a5761563a614fb3565b9052565b5f8151808452602084019350602083015f5b8281101561515557815180516001600160a01b031687526020808201515f9161567b908a018261562a565b505060408181015190880152606080820151908801526080808201519088015260a0808201519088015260c0908101519087015260e09095019460209190910190600101615650565b5f604082016040835280855180835260608501915060608160051b8601019250602087015f5b8281101561571b57605f1987860301845261570685835161563e565b945060209384019391909101906001016156ea565b50505050828103602084015280845180835260208301915060208160051b840101602087015f5b8381101561577457601f1986840301855261575e838351615125565b6020958601959093509190910190600101615742565b509098975050505050505050565b5f5f60208385031215615793575f5ffd5b82356001600160401b038111156157a8575f5ffd5b61561e85828601614f18565b602081525f610eab6020830184614fc7565b602081525f610eab602083018461563e565b602081525f610eab6020830184615125565b5f5f5f5f5f608086880312156157fe575f5ffd5b85359450602086013593506040860135925060608601356001600160401b03811115615828575f5ffd5b61583488828901614f18565b969995985093965092949392505050565b5f5f60408385031215615856575f5ffd5b82359150615866602084016150dc565b90509250929050565b5f5f5f5f60608587031215615882575f5ffd5b84359350602085013561589481615054565b925060408501356001600160401b038111156158ae575f5ffd5b6158ba87828801614f18565b95989497509550505050565b5f602082840312156158d6575f5ffd5b8151610eab81615054565b805160208201516bffffffffffffffffffffffff198116919060148210156117e1576bffffffffffffffffffffffff1960149290920360031b82901b161692915050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561126457611264615925565b8381526001600160a01b038316602082015260608101612594604083018461562a565b634e487b7160e01b5f52603260045260245ffd5b5f6001820161599457615994615925565b5060010190565b8481526001600160a01b0384166020820152608081016159be604083018561562a565b82606083015295945050505050565b5f602082840312156159dd575f5ffd5b8151610eab81615068565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b602081525f6125946020830184866159e8565b5f5f8335601e19843603018112615a38575f5ffd5b8301803591506001600160401b03821115615a51575f5ffd5b60200191503681900382131561455c575f5ffd5b5f85518060208801845e60d886901b6001600160d81b03191690830190815260048510615a9457615a94614fb3565b60f894851b600582015292151590931b6006830152506007019392505050565b8082018082111561126457611264615925565b5f82615ae157634e487b7160e01b5f52601260045260245ffd5b500490565b8481526001600160a01b03841660208201526060604082018190525f90612dc090830184866159e856fe3232323232323232323232323232323232323232323232323232323232323232def24cb3236edf62937b12ea8dc676927599974e90729c6e9eafa9f05b03eab8a2646970667358221220bfc3c8678976950f72b420d25254c33d845684596277d376956e7758bf7d55ae64736f6c634300081c0033"
|
|
75
142
|
},
|
|
143
|
+
"0x914d7fec6aac8cd542e72bca78b30650d45643d7": {
|
|
144
|
+
"nonce": "0x1",
|
|
145
|
+
"balance": "0x0",
|
|
146
|
+
"code": "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3"
|
|
147
|
+
},
|
|
76
148
|
"0xba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed": {
|
|
77
149
|
"nonce": "0x1",
|
|
78
150
|
"balance": "0x0",
|
|
@@ -83,22 +155,24 @@
|
|
|
83
155
|
"balance": "0x0",
|
|
84
156
|
"code": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c806372425d9d1161005b57806372425d9d146100f357806386d516e8146100f9578063a8b0574e146100ff578063ee82ac5e1461010d57600080fd5b80630f28c97d1461008d578063252dba42146100a257806327e86d6e146100c35780634d2301cc146100cb575b600080fd5b425b6040519081526020015b60405180910390f35b6100b56100b03660046102a6565b61011f565b60405161009992919061031b565b61008f610293565b61008f6100d93660046103fa565b73ffffffffffffffffffffffffffffffffffffffff163190565b4461008f565b4561008f565b604051418152602001610099565b61008f61011b366004610437565b4090565b4360608267ffffffffffffffff81111561013b5761013b610450565b60405190808252806020026020018201604052801561016e57816020015b60608152602001906001900390816101595790505b50905060005b8381101561028b576000808686848181106101915761019161047f565b90506020028101906101a391906104ae565b6101b19060208101906103fa565b73ffffffffffffffffffffffffffffffffffffffff168787858181106101d9576101d961047f565b90506020028101906101eb91906104ae565b6101f99060208101906104ec565b604051610207929190610558565b6000604051808303816000865af19150503d8060008114610244576040519150601f19603f3d011682016040523d82523d6000602084013e610249565b606091505b50915091508161025857600080fd5b8084848151811061026b5761026b61047f565b60200260200101819052505050808061028390610597565b915050610174565b509250929050565b60006102a06001436105d0565b40905090565b600080602083850312156102b957600080fd5b823567ffffffffffffffff808211156102d157600080fd5b818501915085601f8301126102e557600080fd5b8135818111156102f457600080fd5b8660208260051b850101111561030957600080fd5b60209290920196919550909350505050565b600060408201848352602060408185015281855180845260608601915060608160051b87010193508287016000805b838110156103eb577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa089880301855282518051808952835b8181101561039d578281018901518a82018a01528801610382565b818111156103ad578489838c0101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169790970186019650938501939185019160010161034a565b50949998505050505050505050565b60006020828403121561040c57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461043057600080fd5b9392505050565b60006020828403121561044957600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18336030181126104e257600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe184360301811261052157600080fd5b83018035915067ffffffffffffffff82111561053c57600080fd5b60200191503681900382131561055157600080fd5b9250929050565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156105c9576105c9610568565b5060010190565b6000828210156105e2576105e2610568565b50039056fea2646970667358221220da399b6e256d79127a8ea91c123c0847d97289d882064a4e78f6ce4a2a9a4fff64736f6c634300080c0033"
|
|
85
157
|
},
|
|
158
|
+
"0xdec0000000000000000000000000000000000000": {
|
|
159
|
+
"nonce": "0x0",
|
|
160
|
+
"balance": "0x0",
|
|
161
|
+
"code": "0xef"
|
|
162
|
+
},
|
|
86
163
|
"0xfeec000000000000000000000000000000000000": {
|
|
87
164
|
"nonce": "0x0",
|
|
88
165
|
"balance": "0x0",
|
|
89
166
|
"code": "0xef",
|
|
90
167
|
"storage": {
|
|
91
|
-
"
|
|
92
|
-
"
|
|
93
|
-
"
|
|
94
|
-
"
|
|
95
|
-
"
|
|
96
|
-
"
|
|
97
|
-
"
|
|
98
|
-
"
|
|
99
|
-
"0xd552354315ecb5972386fc5d846c726bb1db5e2f72b9021b380af18f585ab90c": "0x00000000000000000000000020c0000000000000000000000000000000000000",
|
|
100
|
-
"0xe1caa3413e92ab2198e97152f688401faecccfc6f7da58719c3464e6fdf881b1": "0x00000000000000000000000020c0000000000000000000000000000000000000",
|
|
101
|
-
"0xf414d19a67fbe9dbdbf09059f4d6c51133f21e391432a7b07f10636aca860d19": "0x00000000000000000000000020c0000000000000000000000000000000000000"
|
|
168
|
+
"0x093e7cda68fd8f492da399b2e0738f42ba1eec35053d2f935f5c23e25594b958": "0x000000000000000000000000000000000000000000000002b5e3af16b1880000",
|
|
169
|
+
"0x1ffacc17f1c82e06dacddf48dd05d84e726968e55b5bf5603d3a75aed30ab986": "0x00000000000000000000000020c0000000000000000000000000000000000001",
|
|
170
|
+
"0x246d1e7b2a27b0afa3906ae9a8a98a775c692ef7134d15f6ba377fdfd8895334": "0x000000000000000000000000000000000000000000000002b5e3af16b187fc18",
|
|
171
|
+
"0x489a55db1b10e8dd3f0af34beadb715813c35bb01b459227087b2b8b73da7a9b": "0x00000000000000000000000020c0000000000000000000000000000000000001",
|
|
172
|
+
"0x6f1a4bc17444dbec6e93d5a672c5727292751e9490c5cbfa7494d80c93078daa": "0x000000000000000000000000000000000000000000000002b5e3af16b187fc18",
|
|
173
|
+
"0xb38ab1c5f7f7d223b457339871fb981c7900084e80341d470585feca2dcdad59": "0x000000000000000000000002540be400000000000000000000000002540be400",
|
|
174
|
+
"0xb3ae0ae00397b23ae1d5ffe2e10786ed544119d3da24bc04ce69d22cfdcb8a23": "0x000000000000000000000000000000000000000000000002b5e3af16b1880000",
|
|
175
|
+
"0xdfc5cf32298b719d8b149ff85d8ed6e7262be8d27c8492f8b53b4ae3341a5172": "0x000000000000000000000002540be400000000000000000000000002540be400"
|
|
102
176
|
}
|
|
103
177
|
}
|
|
104
178
|
},
|