-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathindex.js
More file actions
265 lines (265 loc) · 25.9 KB
/
index.js
File metadata and controls
265 lines (265 loc) · 25.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
module.exports = {
"Account": {
"address": "0x00000000AfCbce78c080F96032a5C1cB1b832D7B",
"abi": [
{
"inputs": [],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "hash",
"type": "bytes32"
},
{
"internalType": "bytes",
"name": "signature",
"type": "bytes"
}
],
"name": "InvalidSignature",
"type": "error"
},
{
"inputs": [],
"name": "NotDelegateCall",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "signer",
"type": "address"
}
],
"name": "NotOwner",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "delegateCall",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "externalCall",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
},
{
"internalType": "bytes",
"name": "signature",
"type": "bytes"
},
{
"internalType": "bytes",
"name": "unsignedData",
"type": "bytes"
}
],
"name": "metaDelegateCall",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
},
{
"internalType": "bytes",
"name": "signature",
"type": "bytes"
},
{
"internalType": "bytes",
"name": "unsignedData",
"type": "bytes"
}
],
"name": "metaDelegateCall_EIP1271",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"stateMutability": "payable",
"type": "receive"
}
],
"bytecode": "0x60e06040523060c05234801561001457600080fd5b507f023ce5d01636bb12b4ffde3c4f5a66fb1044aa0dbc251394e60f0a26f15910436080527f1d3b50d88adeb95016e86033ab418b64b7ecd66b70783b0dca7b0afc8bfb8a1e60a05260805160a05160c051610c3c6100a16000396000818161041501528181610593015281816106cb0152610769015260006105d60152600061045b0152610c3c6000f3fe6080604052600436106100435760003560e01c80631f6f42021461004f5780632867a68d1461017557806356e7b7aa14610299578063bbfeeeb51461034f57600080fd5b3661004a57005b600080fd5b6101736004803603608081101561006557600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561009057600080fd5b8201836020820111156100a257600080fd5b803590602001918460018302840111640100000000831117156100c457600080fd5b9193909290916020810190356401000000008111156100e257600080fd5b8201836020820111156100f457600080fd5b8035906020019184600183028401116401000000008311171561011657600080fd5b91939092909160208101903564010000000081111561013457600080fd5b82018360208201111561014657600080fd5b8035906020019184600183028401116401000000008311171561016857600080fd5b50909250905061040a565b005b6101736004803603608081101561018b57600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156101b657600080fd5b8201836020820111156101c857600080fd5b803590602001918460018302840111640100000000831117156101ea57600080fd5b91939092909160208101903564010000000081111561020857600080fd5b82018360208201111561021a57600080fd5b8035906020019184600183028401116401000000008311171561023c57600080fd5b91939092909160208101903564010000000081111561025a57600080fd5b82018360208201111561026c57600080fd5b8035906020019184600183028401116401000000008311171561028e57600080fd5b509092509050610588565b610173600480360360408110156102af57600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102da57600080fd5b8201836020820111156102ec57600080fd5b8035906020019184600183028401116401000000008311171561030e57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106c0945050505050565b6101736004803603606081101561036557600080fd5b8135916001600160a01b036020820135169181019060608101604082013564010000000081111561039557600080fd5b8201836020820111156103a757600080fd5b803590602001918460018302840111640100000000831117156103c957600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061075e945050505050565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610454576040516327844c6960e11b815260040160405180910390fd5b60006104de7f0000000000000000000000000000000000000000000000000000000000000000898989604051808383808284378083019250505092505050604051809103902060405160200180848152602001836001600160a01b0316815260200182815260200193505050506040516020818303038152906040528051906020012086866107fd565b9050806001600160a01b03166104f261091a565b6001600160a01b031614610529576040805163245aecd360e01b81526001600160a01b038316600482015290519081900360240190fd5b600087878585604051602001808585808284379190910190508383808284378083019250505094505050505060405160208183030381529060405290506000808251602084018c5af43d6000803e808015610583573d6000f35b3d6000fd5b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156105d2576040516327844c6960e11b815260040160405180910390fd5b60007f0000000000000000000000000000000000000000000000000000000000000000888888604051808383808284378083019250505092505050604051809103902060405160200180848152602001836001600160a01b03168152602001828152602001935050505060405160208183030381529060405280519060200120905061066761065f61091a565b82878761092e565b61052957808585604051638f4a234f60e01b815260040180848152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050fd5b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561070a576040516327844c6960e11b815260040160405180910390fd5b3361071361091a565b6001600160a01b031614610741576040805163245aecd360e01b815233600482015290519081900360240190fd5b600080825160208401855af43d6000803e808015610583573d6000f35b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156107a8576040516327844c6960e11b815260040160405180910390fd5b336107b161091a565b6001600160a01b0316146107df576040805163245aecd360e01b815233600482015290519081900360240190fd5b60008082516020840186865af13d6000803e808015610583573d6000f35b604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6020808301919091527f977bbc96a0db0d97b4b08241f0db5937a7503966a121e611507f9a616f95651f828401527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608301524660808301523060a0808401919091528351808403909101815260c08301845280519082012061190160f01b60e084015260e2830152610102808301879052835180840390910181526101228301808552815191830191909120610142601f8701849004909302840183019094528481526000939261091192849291889188918291018382808284376000920191909152506109f692505050565b95945050505050565b6000601460286000303c5060005160601c90565b60408051630b135d3f60e11b80825260048201868152602483019384526044830185905260009391926001600160a01b03891692631626ba7e9289928992899291606401848480828437600083820152604051601f909101601f19169092019650602095509093505050818403905081865afa1580156109b2573d6000803e3d6000fd5b505050506040513d60208110156109c857600080fd5b50517fffffffff00000000000000000000000000000000000000000000000000000000161495945050505050565b60008151604114610a4e576040805162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015290519081900360640190fd5b60208201516040830151606084015160001a610a6c86828585610a76565b9695505050505050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115610ad75760405162461bcd60e51b8152600401808060200182810382526022815260200180610bec6022913960400191505060405180910390fd5b8360ff16601b1480610aec57508360ff16601c145b610b275760405162461bcd60e51b8152600401808060200182810382526022815260200180610c0e6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610b83573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610911576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fdfe45434453413a20696e76616c6964207369676e6174757265202773272076616c756545434453413a20696e76616c6964207369676e6174757265202776272076616c7565a164736f6c634300080a000a",
"deployedBytecode": "0x6080604052600436106100435760003560e01c80631f6f42021461004f5780632867a68d1461017557806356e7b7aa14610299578063bbfeeeb51461034f57600080fd5b3661004a57005b600080fd5b6101736004803603608081101561006557600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561009057600080fd5b8201836020820111156100a257600080fd5b803590602001918460018302840111640100000000831117156100c457600080fd5b9193909290916020810190356401000000008111156100e257600080fd5b8201836020820111156100f457600080fd5b8035906020019184600183028401116401000000008311171561011657600080fd5b91939092909160208101903564010000000081111561013457600080fd5b82018360208201111561014657600080fd5b8035906020019184600183028401116401000000008311171561016857600080fd5b50909250905061040a565b005b6101736004803603608081101561018b57600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156101b657600080fd5b8201836020820111156101c857600080fd5b803590602001918460018302840111640100000000831117156101ea57600080fd5b91939092909160208101903564010000000081111561020857600080fd5b82018360208201111561021a57600080fd5b8035906020019184600183028401116401000000008311171561023c57600080fd5b91939092909160208101903564010000000081111561025a57600080fd5b82018360208201111561026c57600080fd5b8035906020019184600183028401116401000000008311171561028e57600080fd5b509092509050610588565b610173600480360360408110156102af57600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102da57600080fd5b8201836020820111156102ec57600080fd5b8035906020019184600183028401116401000000008311171561030e57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106c0945050505050565b6101736004803603606081101561036557600080fd5b8135916001600160a01b036020820135169181019060608101604082013564010000000081111561039557600080fd5b8201836020820111156103a757600080fd5b803590602001918460018302840111640100000000831117156103c957600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061075e945050505050565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610454576040516327844c6960e11b815260040160405180910390fd5b60006104de7f0000000000000000000000000000000000000000000000000000000000000000898989604051808383808284378083019250505092505050604051809103902060405160200180848152602001836001600160a01b0316815260200182815260200193505050506040516020818303038152906040528051906020012086866107fd565b9050806001600160a01b03166104f261091a565b6001600160a01b031614610529576040805163245aecd360e01b81526001600160a01b038316600482015290519081900360240190fd5b600087878585604051602001808585808284379190910190508383808284378083019250505094505050505060405160208183030381529060405290506000808251602084018c5af43d6000803e808015610583573d6000f35b3d6000fd5b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156105d2576040516327844c6960e11b815260040160405180910390fd5b60007f0000000000000000000000000000000000000000000000000000000000000000888888604051808383808284378083019250505092505050604051809103902060405160200180848152602001836001600160a01b03168152602001828152602001935050505060405160208183030381529060405280519060200120905061066761065f61091a565b82878761092e565b61052957808585604051638f4a234f60e01b815260040180848152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f1916909201829003965090945050505050fd5b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561070a576040516327844c6960e11b815260040160405180910390fd5b3361071361091a565b6001600160a01b031614610741576040805163245aecd360e01b815233600482015290519081900360240190fd5b600080825160208401855af43d6000803e808015610583573d6000f35b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156107a8576040516327844c6960e11b815260040160405180910390fd5b336107b161091a565b6001600160a01b0316146107df576040805163245aecd360e01b815233600482015290519081900360240190fd5b60008082516020840186865af13d6000803e808015610583573d6000f35b604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6020808301919091527f977bbc96a0db0d97b4b08241f0db5937a7503966a121e611507f9a616f95651f828401527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608301524660808301523060a0808401919091528351808403909101815260c08301845280519082012061190160f01b60e084015260e2830152610102808301879052835180840390910181526101228301808552815191830191909120610142601f8701849004909302840183019094528481526000939261091192849291889188918291018382808284376000920191909152506109f692505050565b95945050505050565b6000601460286000303c5060005160601c90565b60408051630b135d3f60e11b80825260048201868152602483019384526044830185905260009391926001600160a01b03891692631626ba7e9289928992899291606401848480828437600083820152604051601f909101601f19169092019650602095509093505050818403905081865afa1580156109b2573d6000803e3d6000fd5b505050506040513d60208110156109c857600080fd5b50517fffffffff00000000000000000000000000000000000000000000000000000000161495945050505050565b60008151604114610a4e576040805162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015290519081900360640190fd5b60208201516040830151606084015160001a610a6c86828585610a76565b9695505050505050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115610ad75760405162461bcd60e51b8152600401808060200182810382526022815260200180610bec6022913960400191505060405180910390fd5b8360ff16601b1480610aec57508360ff16601c145b610b275760405162461bcd60e51b8152600401808060200182810382526022815260200180610c0e6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610b83573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610911576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fdfe45434453413a20696e76616c6964207369676e6174757265202773272076616c756545434453413a20696e76616c6964207369676e6174757265202776272076616c7565a164736f6c634300080a000a"
},
"AccountFactory": {
"address": "0xe925f84cA9Dd5b3844fC424861D7bDf9485761B6",
"abi": [
{
"inputs": [],
"name": "DeployFailed",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "deployAccount",
"outputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x608060405234801561001057600080fd5b50610126806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063da9fc1ae14610030575b600080fd5b6100566004803603602081101561004657600080fd5b50356001600160a01b0316610072565b604080516001600160a01b039092168252519081900360200190f35b6000808260405160200180806100e960319139603101826001600160a01b031660601b8152601401915050604051602081830303815290604052905060008151602083016000f591506001600160a01b0382166100e25760405163b4f5411160e01b815260040160405180910390fd5b5091905056fe603c3d8160093d39f33d3d3d3d363d3d37363d6fafcbce78c080f96032a5c1cb1b832d7b5af43d3d93803e602657fd5bf3a164736f6c634300080a000a",
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063da9fc1ae14610030575b600080fd5b6100566004803603602081101561004657600080fd5b50356001600160a01b0316610072565b604080516001600160a01b039092168252519081900360200190f35b6000808260405160200180806100e960319139603101826001600160a01b031660601b8152601401915050604051602081830303815290604052905060008151602083016000f591506001600160a01b0382166100e25760405163b4f5411160e01b815260040160405180910390fd5b5091905056fe603c3d8160093d39f33d3d3d3d363d3d37363d6fafcbce78c080f96032a5c1cb1b832d7b5af43d3d93803e602657fd5bf3a164736f6c634300080a000a"
},
"DeployAndCall": {
"address": "0x452C31d60883F0CB51744Ab9fd01685d7443CA6f",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
},
{
"internalType": "bytes",
"name": "callData",
"type": "bytes"
}
],
"name": "deployAndCall",
"outputs": [],
"stateMutability": "payable",
"type": "function"
}
],
"bytecode": "0x608060405234801561001057600080fd5b506101c3806100206000396000f3fe60806040526004361061001e5760003560e01c8063ade8090514610023575b600080fd5b6100e66004803603604081101561003957600080fd5b73ffffffffffffffffffffffffffffffffffffffff823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506100e8945050505050565b005b600073e925f84ca9dd5b3844fc424861d7bdf9485761b673ffffffffffffffffffffffffffffffffffffffff1663da9fc1ae846040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1681526020019150506020604051808303816000875af115801561016c573d6000803e3d6000fd5b505050506040513d602081101561018257600080fd5b50518251909150156101b15760008083516020850134855af13d6000803e8080156101ac573d6000f35b3d6000fd5b50505056fea164736f6c634300080a000a",
"deployedBytecode": "0x60806040526004361061001e5760003560e01c8063ade8090514610023575b600080fd5b6100e66004803603604081101561003957600080fd5b73ffffffffffffffffffffffffffffffffffffffff823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506100e8945050505050565b005b600073e925f84ca9dd5b3844fc424861d7bdf9485761b673ffffffffffffffffffffffffffffffffffffffff1663da9fc1ae846040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1681526020019150506020604051808303816000875af115801561016c573d6000803e3d6000fd5b505050506040513d602081101561018257600080fd5b50518251909150156101b15760008083516020850134855af13d6000803e8080156101ac573d6000f35b3d6000fd5b50505056fea164736f6c634300080a000a"
},
"SaltedDeployer": {
"address": "0x6b24634B517a63Ed0fa2a39977286e13e7E35E25",
"abi": [
{
"inputs": [],
"name": "DeployFailed",
"type": "error"
},
{
"inputs": [],
"name": "DeploymentExists",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "deployAddress",
"type": "address"
}
],
"name": "Deployed",
"type": "event"
},
{
"inputs": [
{
"internalType": "bytes",
"name": "initCode",
"type": "bytes"
}
],
"name": "deploy",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes",
"name": "initCode",
"type": "bytes"
}
],
"name": "getDeployAddress",
"outputs": [
{
"internalType": "address",
"name": "deployAddress",
"type": "address"
}
],
"stateMutability": "pure",
"type": "function"
}
],
"bytecode": "0x608060405234801561001057600080fd5b50610486806100206000396000f3fe608060405234801561001057600080fd5b50600436106100355760003560e01c80627743601461003a578063361ab6af146100e2575b600080fd5b6100e06004803603602081101561005057600080fd5b81019060208101813564010000000081111561006b57600080fd5b82018360208201111561007d57600080fd5b8035906020019184600183028401116401000000008311171561009f57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506101a4945050505050565b005b610188600480360360208110156100f857600080fd5b81019060208101813564010000000081111561011357600080fd5b82018360208201111561012557600080fd5b8035906020019184600183028401116401000000008311171561014757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103dc945050505050565b604080516001600160a01b039092168252519081900360200190f35b610257610248828051602091820120604080517fff00000000000000000000000000000000000000000000000000000000000000818501527fce0042b868300000d44a59004da54a005ffdcf9f00000000000000000000000060218201527fd2a5b1e84cb7a6df481438c61ec4144631172d3d29b2a30fe7c5f0fbf4e517356035820152605580820193909352815180820390930183526075019052805191012090565b6001600160a01b03163b151590565b15610275576040516392b220f360e01b815260040160405180910390fd5b6040805163257b1f8160e11b81527fd2a5b1e84cb7a6df481438c61ec4144631172d3d29b2a30fe7c5f0fbf4e51735602482018190526004820192835283516044830152835160009373ce0042b868300000d44a59004da54a005ffdcf9f93634af63f02938793909291829160649091019060208601908083838c5b838110156103095781810151838201526020016102f1565b50505050905090810190601f1680156103365780820380516001836020036101000a031916815260200191505b5093505050506020604051808303816000875af115801561035b573d6000803e3d6000fd5b505050506040513d602081101561037157600080fd5b505190506001600160a01b03811661039c5760405163b4f5411160e01b815260040160405180910390fd5b604080516001600160a01b038316815290517ff40fcec21964ffb566044d083b4073f29f7f7929110ea19e1b3ebe375d89055e9181900360200190a15050565b8051602091820120604080517fff00000000000000000000000000000000000000000000000000000000000000818501527fce0042b868300000d44a59004da54a005ffdcf9f00000000000000000000000060218201527fd2a5b1e84cb7a6df481438c61ec4144631172d3d29b2a30fe7c5f0fbf4e51735603582015260558082019390935281518082039093018352607501905280519101209056fea164736f6c634300080a000a",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100355760003560e01c80627743601461003a578063361ab6af146100e2575b600080fd5b6100e06004803603602081101561005057600080fd5b81019060208101813564010000000081111561006b57600080fd5b82018360208201111561007d57600080fd5b8035906020019184600183028401116401000000008311171561009f57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506101a4945050505050565b005b610188600480360360208110156100f857600080fd5b81019060208101813564010000000081111561011357600080fd5b82018360208201111561012557600080fd5b8035906020019184600183028401116401000000008311171561014757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103dc945050505050565b604080516001600160a01b039092168252519081900360200190f35b610257610248828051602091820120604080517fff00000000000000000000000000000000000000000000000000000000000000818501527fce0042b868300000d44a59004da54a005ffdcf9f00000000000000000000000060218201527fd2a5b1e84cb7a6df481438c61ec4144631172d3d29b2a30fe7c5f0fbf4e517356035820152605580820193909352815180820390930183526075019052805191012090565b6001600160a01b03163b151590565b15610275576040516392b220f360e01b815260040160405180910390fd5b6040805163257b1f8160e11b81527fd2a5b1e84cb7a6df481438c61ec4144631172d3d29b2a30fe7c5f0fbf4e51735602482018190526004820192835283516044830152835160009373ce0042b868300000d44a59004da54a005ffdcf9f93634af63f02938793909291829160649091019060208601908083838c5b838110156103095781810151838201526020016102f1565b50505050905090810190601f1680156103365780820380516001836020036101000a031916815260200191505b5093505050506020604051808303816000875af115801561035b573d6000803e3d6000fd5b505050506040513d602081101561037157600080fd5b505190506001600160a01b03811661039c5760405163b4f5411160e01b815260040160405180910390fd5b604080516001600160a01b038316815290517ff40fcec21964ffb566044d083b4073f29f7f7929110ea19e1b3ebe375d89055e9181900360200190a15050565b8051602091820120604080517fff00000000000000000000000000000000000000000000000000000000000000818501527fce0042b868300000d44a59004da54a005ffdcf9f00000000000000000000000060218201527fd2a5b1e84cb7a6df481438c61ec4144631172d3d29b2a30fe7c5f0fbf4e51735603582015260558082019390935281518082039093018352607501905280519101209056fea164736f6c634300080a000a"
}
}