@orbs-network/twap 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +174 -0
- package/dist/artifacts/contracts/TWAP.sol/TWAP.json +849 -0
- package/dist/artifacts/contracts/periphery/Lens.sol/Lens.json +488 -0
- package/dist/src/configs.d.ts +20 -0
- package/dist/src/configs.js +64 -0
- package/dist/src/index.d.ts +3 -0
- package/dist/src/index.js +19 -0
- package/dist/src/lib.d.ts +130 -0
- package/dist/src/lib.js +194 -0
- package/dist/src/paraswap.d.ts +33 -0
- package/dist/src/paraswap.js +73 -0
- package/dist/typechain-hardhat/contracts/IExchange.d.ts +23 -0
- package/dist/typechain-hardhat/contracts/IExchange.js +5 -0
- package/dist/typechain-hardhat/contracts/TWAP.d.ts +204 -0
- package/dist/typechain-hardhat/contracts/TWAP.js +5 -0
- package/dist/typechain-hardhat/contracts/exchange/IParaswap.d.ts +20 -0
- package/dist/typechain-hardhat/contracts/exchange/IParaswap.js +5 -0
- package/dist/typechain-hardhat/contracts/exchange/IUniswapV2.d.ts +24 -0
- package/dist/typechain-hardhat/contracts/exchange/IUniswapV2.js +5 -0
- package/dist/typechain-hardhat/contracts/exchange/ParaswapExchange.d.ts +24 -0
- package/dist/typechain-hardhat/contracts/exchange/ParaswapExchange.js +5 -0
- package/dist/typechain-hardhat/contracts/exchange/UniswapV2Exchange.d.ts +24 -0
- package/dist/typechain-hardhat/contracts/exchange/UniswapV2Exchange.js +5 -0
- package/dist/typechain-hardhat/contracts/exchange/index.d.ts +4 -0
- package/dist/typechain-hardhat/contracts/exchange/index.js +2 -0
- package/dist/typechain-hardhat/contracts/index.d.ts +8 -0
- package/dist/typechain-hardhat/contracts/index.js +2 -0
- package/dist/typechain-hardhat/contracts/periphery/IWETH.d.ts +22 -0
- package/dist/typechain-hardhat/contracts/periphery/IWETH.js +5 -0
- package/dist/typechain-hardhat/contracts/periphery/Lens.d.ts +104 -0
- package/dist/typechain-hardhat/contracts/periphery/Lens.js +5 -0
- package/dist/typechain-hardhat/contracts/periphery/Taker.d.ts +39 -0
- package/dist/typechain-hardhat/contracts/periphery/Taker.js +5 -0
- package/dist/typechain-hardhat/contracts/periphery/index.d.ts +3 -0
- package/dist/typechain-hardhat/contracts/periphery/index.js +2 -0
- package/dist/typechain-hardhat/contracts/test/MockDeflationaryToken.d.ts +56 -0
- package/dist/typechain-hardhat/contracts/test/MockDeflationaryToken.js +5 -0
- package/dist/typechain-hardhat/contracts/test/MockExchange.d.ts +25 -0
- package/dist/typechain-hardhat/contracts/test/MockExchange.js +5 -0
- package/dist/typechain-hardhat/contracts/test/index.d.ts +2 -0
- package/dist/typechain-hardhat/contracts/test/index.js +2 -0
- package/dist/typechain-hardhat/types.d.ts +55 -0
- package/dist/typechain-hardhat/types.js +5 -0
- package/package.json +33 -0
|
@@ -0,0 +1,849 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh-sol-artifact-1",
|
|
3
|
+
"contractName": "TWAP",
|
|
4
|
+
"sourceName": "contracts/TWAP.sol",
|
|
5
|
+
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"anonymous": false,
|
|
8
|
+
"inputs": [
|
|
9
|
+
{
|
|
10
|
+
"indexed": true,
|
|
11
|
+
"internalType": "uint64",
|
|
12
|
+
"name": "id",
|
|
13
|
+
"type": "uint64"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"indexed": true,
|
|
17
|
+
"internalType": "address",
|
|
18
|
+
"name": "maker",
|
|
19
|
+
"type": "address"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"indexed": true,
|
|
23
|
+
"internalType": "address",
|
|
24
|
+
"name": "exchange",
|
|
25
|
+
"type": "address"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"indexed": false,
|
|
29
|
+
"internalType": "uint32",
|
|
30
|
+
"name": "slippagePercent",
|
|
31
|
+
"type": "uint32"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"components": [
|
|
35
|
+
{
|
|
36
|
+
"internalType": "uint32",
|
|
37
|
+
"name": "time",
|
|
38
|
+
"type": "uint32"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"internalType": "address",
|
|
42
|
+
"name": "taker",
|
|
43
|
+
"type": "address"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"internalType": "address",
|
|
47
|
+
"name": "exchange",
|
|
48
|
+
"type": "address"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"internalType": "uint256",
|
|
52
|
+
"name": "dstAmount",
|
|
53
|
+
"type": "uint256"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"internalType": "uint256",
|
|
57
|
+
"name": "dstFee",
|
|
58
|
+
"type": "uint256"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"internalType": "bytes",
|
|
62
|
+
"name": "data",
|
|
63
|
+
"type": "bytes"
|
|
64
|
+
}
|
|
65
|
+
],
|
|
66
|
+
"indexed": false,
|
|
67
|
+
"internalType": "struct OrderLib.Bid",
|
|
68
|
+
"name": "bid",
|
|
69
|
+
"type": "tuple"
|
|
70
|
+
}
|
|
71
|
+
],
|
|
72
|
+
"name": "OrderBid",
|
|
73
|
+
"type": "event"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"anonymous": false,
|
|
77
|
+
"inputs": [
|
|
78
|
+
{
|
|
79
|
+
"indexed": true,
|
|
80
|
+
"internalType": "uint64",
|
|
81
|
+
"name": "id",
|
|
82
|
+
"type": "uint64"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"indexed": true,
|
|
86
|
+
"internalType": "address",
|
|
87
|
+
"name": "maker",
|
|
88
|
+
"type": "address"
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"indexed": false,
|
|
92
|
+
"internalType": "address",
|
|
93
|
+
"name": "sender",
|
|
94
|
+
"type": "address"
|
|
95
|
+
}
|
|
96
|
+
],
|
|
97
|
+
"name": "OrderCanceled",
|
|
98
|
+
"type": "event"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"anonymous": false,
|
|
102
|
+
"inputs": [
|
|
103
|
+
{
|
|
104
|
+
"indexed": true,
|
|
105
|
+
"internalType": "uint64",
|
|
106
|
+
"name": "id",
|
|
107
|
+
"type": "uint64"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"indexed": true,
|
|
111
|
+
"internalType": "address",
|
|
112
|
+
"name": "maker",
|
|
113
|
+
"type": "address"
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"indexed": true,
|
|
117
|
+
"internalType": "address",
|
|
118
|
+
"name": "exchange",
|
|
119
|
+
"type": "address"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"indexed": false,
|
|
123
|
+
"internalType": "address",
|
|
124
|
+
"name": "taker",
|
|
125
|
+
"type": "address"
|
|
126
|
+
}
|
|
127
|
+
],
|
|
128
|
+
"name": "OrderCompleted",
|
|
129
|
+
"type": "event"
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
"anonymous": false,
|
|
133
|
+
"inputs": [
|
|
134
|
+
{
|
|
135
|
+
"indexed": true,
|
|
136
|
+
"internalType": "uint64",
|
|
137
|
+
"name": "id",
|
|
138
|
+
"type": "uint64"
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
"indexed": true,
|
|
142
|
+
"internalType": "address",
|
|
143
|
+
"name": "maker",
|
|
144
|
+
"type": "address"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"indexed": true,
|
|
148
|
+
"internalType": "address",
|
|
149
|
+
"name": "exchange",
|
|
150
|
+
"type": "address"
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
"components": [
|
|
154
|
+
{
|
|
155
|
+
"internalType": "uint32",
|
|
156
|
+
"name": "time",
|
|
157
|
+
"type": "uint32"
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"internalType": "uint32",
|
|
161
|
+
"name": "deadline",
|
|
162
|
+
"type": "uint32"
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"internalType": "uint32",
|
|
166
|
+
"name": "bidDelay",
|
|
167
|
+
"type": "uint32"
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"internalType": "uint32",
|
|
171
|
+
"name": "fillDelay",
|
|
172
|
+
"type": "uint32"
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"internalType": "address",
|
|
176
|
+
"name": "maker",
|
|
177
|
+
"type": "address"
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
"internalType": "address",
|
|
181
|
+
"name": "exchange",
|
|
182
|
+
"type": "address"
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
"internalType": "address",
|
|
186
|
+
"name": "srcToken",
|
|
187
|
+
"type": "address"
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
"internalType": "address",
|
|
191
|
+
"name": "dstToken",
|
|
192
|
+
"type": "address"
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
"internalType": "uint256",
|
|
196
|
+
"name": "srcAmount",
|
|
197
|
+
"type": "uint256"
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
"internalType": "uint256",
|
|
201
|
+
"name": "srcBidAmount",
|
|
202
|
+
"type": "uint256"
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
"internalType": "uint256",
|
|
206
|
+
"name": "dstMinAmount",
|
|
207
|
+
"type": "uint256"
|
|
208
|
+
}
|
|
209
|
+
],
|
|
210
|
+
"indexed": false,
|
|
211
|
+
"internalType": "struct OrderLib.Ask",
|
|
212
|
+
"name": "ask",
|
|
213
|
+
"type": "tuple"
|
|
214
|
+
}
|
|
215
|
+
],
|
|
216
|
+
"name": "OrderCreated",
|
|
217
|
+
"type": "event"
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
"anonymous": false,
|
|
221
|
+
"inputs": [
|
|
222
|
+
{
|
|
223
|
+
"indexed": true,
|
|
224
|
+
"internalType": "uint64",
|
|
225
|
+
"name": "id",
|
|
226
|
+
"type": "uint64"
|
|
227
|
+
},
|
|
228
|
+
{
|
|
229
|
+
"indexed": true,
|
|
230
|
+
"internalType": "address",
|
|
231
|
+
"name": "maker",
|
|
232
|
+
"type": "address"
|
|
233
|
+
},
|
|
234
|
+
{
|
|
235
|
+
"indexed": true,
|
|
236
|
+
"internalType": "address",
|
|
237
|
+
"name": "exchange",
|
|
238
|
+
"type": "address"
|
|
239
|
+
},
|
|
240
|
+
{
|
|
241
|
+
"indexed": false,
|
|
242
|
+
"internalType": "address",
|
|
243
|
+
"name": "taker",
|
|
244
|
+
"type": "address"
|
|
245
|
+
},
|
|
246
|
+
{
|
|
247
|
+
"indexed": false,
|
|
248
|
+
"internalType": "uint256",
|
|
249
|
+
"name": "srcAmountIn",
|
|
250
|
+
"type": "uint256"
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
"indexed": false,
|
|
254
|
+
"internalType": "uint256",
|
|
255
|
+
"name": "dstAmountOut",
|
|
256
|
+
"type": "uint256"
|
|
257
|
+
},
|
|
258
|
+
{
|
|
259
|
+
"indexed": false,
|
|
260
|
+
"internalType": "uint256",
|
|
261
|
+
"name": "dstFee",
|
|
262
|
+
"type": "uint256"
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
"indexed": false,
|
|
266
|
+
"internalType": "uint256",
|
|
267
|
+
"name": "srcFilledAmount",
|
|
268
|
+
"type": "uint256"
|
|
269
|
+
}
|
|
270
|
+
],
|
|
271
|
+
"name": "OrderFilled",
|
|
272
|
+
"type": "event"
|
|
273
|
+
},
|
|
274
|
+
{
|
|
275
|
+
"inputs": [],
|
|
276
|
+
"name": "MIN_BID_DELAY_SECONDS",
|
|
277
|
+
"outputs": [
|
|
278
|
+
{
|
|
279
|
+
"internalType": "uint32",
|
|
280
|
+
"name": "",
|
|
281
|
+
"type": "uint32"
|
|
282
|
+
}
|
|
283
|
+
],
|
|
284
|
+
"stateMutability": "view",
|
|
285
|
+
"type": "function"
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
"inputs": [],
|
|
289
|
+
"name": "MIN_OUTBID_PERCENT",
|
|
290
|
+
"outputs": [
|
|
291
|
+
{
|
|
292
|
+
"internalType": "uint32",
|
|
293
|
+
"name": "",
|
|
294
|
+
"type": "uint32"
|
|
295
|
+
}
|
|
296
|
+
],
|
|
297
|
+
"stateMutability": "view",
|
|
298
|
+
"type": "function"
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
"inputs": [],
|
|
302
|
+
"name": "PERCENT_BASE",
|
|
303
|
+
"outputs": [
|
|
304
|
+
{
|
|
305
|
+
"internalType": "uint32",
|
|
306
|
+
"name": "",
|
|
307
|
+
"type": "uint32"
|
|
308
|
+
}
|
|
309
|
+
],
|
|
310
|
+
"stateMutability": "view",
|
|
311
|
+
"type": "function"
|
|
312
|
+
},
|
|
313
|
+
{
|
|
314
|
+
"inputs": [],
|
|
315
|
+
"name": "STALE_BID_DELAY_MUL",
|
|
316
|
+
"outputs": [
|
|
317
|
+
{
|
|
318
|
+
"internalType": "uint32",
|
|
319
|
+
"name": "",
|
|
320
|
+
"type": "uint32"
|
|
321
|
+
}
|
|
322
|
+
],
|
|
323
|
+
"stateMutability": "view",
|
|
324
|
+
"type": "function"
|
|
325
|
+
},
|
|
326
|
+
{
|
|
327
|
+
"inputs": [],
|
|
328
|
+
"name": "STATUS_CANCELED",
|
|
329
|
+
"outputs": [
|
|
330
|
+
{
|
|
331
|
+
"internalType": "uint32",
|
|
332
|
+
"name": "",
|
|
333
|
+
"type": "uint32"
|
|
334
|
+
}
|
|
335
|
+
],
|
|
336
|
+
"stateMutability": "view",
|
|
337
|
+
"type": "function"
|
|
338
|
+
},
|
|
339
|
+
{
|
|
340
|
+
"inputs": [],
|
|
341
|
+
"name": "STATUS_COMPLETED",
|
|
342
|
+
"outputs": [
|
|
343
|
+
{
|
|
344
|
+
"internalType": "uint32",
|
|
345
|
+
"name": "",
|
|
346
|
+
"type": "uint32"
|
|
347
|
+
}
|
|
348
|
+
],
|
|
349
|
+
"stateMutability": "view",
|
|
350
|
+
"type": "function"
|
|
351
|
+
},
|
|
352
|
+
{
|
|
353
|
+
"inputs": [],
|
|
354
|
+
"name": "VERSION",
|
|
355
|
+
"outputs": [
|
|
356
|
+
{
|
|
357
|
+
"internalType": "uint8",
|
|
358
|
+
"name": "",
|
|
359
|
+
"type": "uint8"
|
|
360
|
+
}
|
|
361
|
+
],
|
|
362
|
+
"stateMutability": "view",
|
|
363
|
+
"type": "function"
|
|
364
|
+
},
|
|
365
|
+
{
|
|
366
|
+
"inputs": [
|
|
367
|
+
{
|
|
368
|
+
"internalType": "address",
|
|
369
|
+
"name": "exchange",
|
|
370
|
+
"type": "address"
|
|
371
|
+
},
|
|
372
|
+
{
|
|
373
|
+
"internalType": "address",
|
|
374
|
+
"name": "srcToken",
|
|
375
|
+
"type": "address"
|
|
376
|
+
},
|
|
377
|
+
{
|
|
378
|
+
"internalType": "address",
|
|
379
|
+
"name": "dstToken",
|
|
380
|
+
"type": "address"
|
|
381
|
+
},
|
|
382
|
+
{
|
|
383
|
+
"internalType": "uint256",
|
|
384
|
+
"name": "srcAmount",
|
|
385
|
+
"type": "uint256"
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
"internalType": "uint256",
|
|
389
|
+
"name": "srcBidAmount",
|
|
390
|
+
"type": "uint256"
|
|
391
|
+
},
|
|
392
|
+
{
|
|
393
|
+
"internalType": "uint256",
|
|
394
|
+
"name": "dstMinAmount",
|
|
395
|
+
"type": "uint256"
|
|
396
|
+
},
|
|
397
|
+
{
|
|
398
|
+
"internalType": "uint32",
|
|
399
|
+
"name": "deadline",
|
|
400
|
+
"type": "uint32"
|
|
401
|
+
},
|
|
402
|
+
{
|
|
403
|
+
"internalType": "uint32",
|
|
404
|
+
"name": "bidDelay",
|
|
405
|
+
"type": "uint32"
|
|
406
|
+
},
|
|
407
|
+
{
|
|
408
|
+
"internalType": "uint32",
|
|
409
|
+
"name": "fillDelay",
|
|
410
|
+
"type": "uint32"
|
|
411
|
+
}
|
|
412
|
+
],
|
|
413
|
+
"name": "ask",
|
|
414
|
+
"outputs": [
|
|
415
|
+
{
|
|
416
|
+
"internalType": "uint64",
|
|
417
|
+
"name": "id",
|
|
418
|
+
"type": "uint64"
|
|
419
|
+
}
|
|
420
|
+
],
|
|
421
|
+
"stateMutability": "nonpayable",
|
|
422
|
+
"type": "function"
|
|
423
|
+
},
|
|
424
|
+
{
|
|
425
|
+
"inputs": [
|
|
426
|
+
{
|
|
427
|
+
"internalType": "uint64",
|
|
428
|
+
"name": "id",
|
|
429
|
+
"type": "uint64"
|
|
430
|
+
},
|
|
431
|
+
{
|
|
432
|
+
"internalType": "address",
|
|
433
|
+
"name": "exchange",
|
|
434
|
+
"type": "address"
|
|
435
|
+
},
|
|
436
|
+
{
|
|
437
|
+
"internalType": "uint256",
|
|
438
|
+
"name": "dstFee",
|
|
439
|
+
"type": "uint256"
|
|
440
|
+
},
|
|
441
|
+
{
|
|
442
|
+
"internalType": "uint32",
|
|
443
|
+
"name": "slippagePercent",
|
|
444
|
+
"type": "uint32"
|
|
445
|
+
},
|
|
446
|
+
{
|
|
447
|
+
"internalType": "bytes",
|
|
448
|
+
"name": "data",
|
|
449
|
+
"type": "bytes"
|
|
450
|
+
}
|
|
451
|
+
],
|
|
452
|
+
"name": "bid",
|
|
453
|
+
"outputs": [],
|
|
454
|
+
"stateMutability": "nonpayable",
|
|
455
|
+
"type": "function"
|
|
456
|
+
},
|
|
457
|
+
{
|
|
458
|
+
"inputs": [
|
|
459
|
+
{
|
|
460
|
+
"internalType": "uint256",
|
|
461
|
+
"name": "",
|
|
462
|
+
"type": "uint256"
|
|
463
|
+
}
|
|
464
|
+
],
|
|
465
|
+
"name": "book",
|
|
466
|
+
"outputs": [
|
|
467
|
+
{
|
|
468
|
+
"internalType": "uint64",
|
|
469
|
+
"name": "id",
|
|
470
|
+
"type": "uint64"
|
|
471
|
+
},
|
|
472
|
+
{
|
|
473
|
+
"internalType": "uint32",
|
|
474
|
+
"name": "status",
|
|
475
|
+
"type": "uint32"
|
|
476
|
+
},
|
|
477
|
+
{
|
|
478
|
+
"internalType": "uint32",
|
|
479
|
+
"name": "filledTime",
|
|
480
|
+
"type": "uint32"
|
|
481
|
+
},
|
|
482
|
+
{
|
|
483
|
+
"internalType": "uint256",
|
|
484
|
+
"name": "srcFilledAmount",
|
|
485
|
+
"type": "uint256"
|
|
486
|
+
},
|
|
487
|
+
{
|
|
488
|
+
"components": [
|
|
489
|
+
{
|
|
490
|
+
"internalType": "uint32",
|
|
491
|
+
"name": "time",
|
|
492
|
+
"type": "uint32"
|
|
493
|
+
},
|
|
494
|
+
{
|
|
495
|
+
"internalType": "uint32",
|
|
496
|
+
"name": "deadline",
|
|
497
|
+
"type": "uint32"
|
|
498
|
+
},
|
|
499
|
+
{
|
|
500
|
+
"internalType": "uint32",
|
|
501
|
+
"name": "bidDelay",
|
|
502
|
+
"type": "uint32"
|
|
503
|
+
},
|
|
504
|
+
{
|
|
505
|
+
"internalType": "uint32",
|
|
506
|
+
"name": "fillDelay",
|
|
507
|
+
"type": "uint32"
|
|
508
|
+
},
|
|
509
|
+
{
|
|
510
|
+
"internalType": "address",
|
|
511
|
+
"name": "maker",
|
|
512
|
+
"type": "address"
|
|
513
|
+
},
|
|
514
|
+
{
|
|
515
|
+
"internalType": "address",
|
|
516
|
+
"name": "exchange",
|
|
517
|
+
"type": "address"
|
|
518
|
+
},
|
|
519
|
+
{
|
|
520
|
+
"internalType": "address",
|
|
521
|
+
"name": "srcToken",
|
|
522
|
+
"type": "address"
|
|
523
|
+
},
|
|
524
|
+
{
|
|
525
|
+
"internalType": "address",
|
|
526
|
+
"name": "dstToken",
|
|
527
|
+
"type": "address"
|
|
528
|
+
},
|
|
529
|
+
{
|
|
530
|
+
"internalType": "uint256",
|
|
531
|
+
"name": "srcAmount",
|
|
532
|
+
"type": "uint256"
|
|
533
|
+
},
|
|
534
|
+
{
|
|
535
|
+
"internalType": "uint256",
|
|
536
|
+
"name": "srcBidAmount",
|
|
537
|
+
"type": "uint256"
|
|
538
|
+
},
|
|
539
|
+
{
|
|
540
|
+
"internalType": "uint256",
|
|
541
|
+
"name": "dstMinAmount",
|
|
542
|
+
"type": "uint256"
|
|
543
|
+
}
|
|
544
|
+
],
|
|
545
|
+
"internalType": "struct OrderLib.Ask",
|
|
546
|
+
"name": "ask",
|
|
547
|
+
"type": "tuple"
|
|
548
|
+
},
|
|
549
|
+
{
|
|
550
|
+
"components": [
|
|
551
|
+
{
|
|
552
|
+
"internalType": "uint32",
|
|
553
|
+
"name": "time",
|
|
554
|
+
"type": "uint32"
|
|
555
|
+
},
|
|
556
|
+
{
|
|
557
|
+
"internalType": "address",
|
|
558
|
+
"name": "taker",
|
|
559
|
+
"type": "address"
|
|
560
|
+
},
|
|
561
|
+
{
|
|
562
|
+
"internalType": "address",
|
|
563
|
+
"name": "exchange",
|
|
564
|
+
"type": "address"
|
|
565
|
+
},
|
|
566
|
+
{
|
|
567
|
+
"internalType": "uint256",
|
|
568
|
+
"name": "dstAmount",
|
|
569
|
+
"type": "uint256"
|
|
570
|
+
},
|
|
571
|
+
{
|
|
572
|
+
"internalType": "uint256",
|
|
573
|
+
"name": "dstFee",
|
|
574
|
+
"type": "uint256"
|
|
575
|
+
},
|
|
576
|
+
{
|
|
577
|
+
"internalType": "bytes",
|
|
578
|
+
"name": "data",
|
|
579
|
+
"type": "bytes"
|
|
580
|
+
}
|
|
581
|
+
],
|
|
582
|
+
"internalType": "struct OrderLib.Bid",
|
|
583
|
+
"name": "bid",
|
|
584
|
+
"type": "tuple"
|
|
585
|
+
}
|
|
586
|
+
],
|
|
587
|
+
"stateMutability": "view",
|
|
588
|
+
"type": "function"
|
|
589
|
+
},
|
|
590
|
+
{
|
|
591
|
+
"inputs": [
|
|
592
|
+
{
|
|
593
|
+
"internalType": "uint64",
|
|
594
|
+
"name": "id",
|
|
595
|
+
"type": "uint64"
|
|
596
|
+
}
|
|
597
|
+
],
|
|
598
|
+
"name": "cancel",
|
|
599
|
+
"outputs": [],
|
|
600
|
+
"stateMutability": "nonpayable",
|
|
601
|
+
"type": "function"
|
|
602
|
+
},
|
|
603
|
+
{
|
|
604
|
+
"inputs": [
|
|
605
|
+
{
|
|
606
|
+
"internalType": "uint64",
|
|
607
|
+
"name": "id",
|
|
608
|
+
"type": "uint64"
|
|
609
|
+
}
|
|
610
|
+
],
|
|
611
|
+
"name": "fill",
|
|
612
|
+
"outputs": [],
|
|
613
|
+
"stateMutability": "nonpayable",
|
|
614
|
+
"type": "function"
|
|
615
|
+
},
|
|
616
|
+
{
|
|
617
|
+
"inputs": [],
|
|
618
|
+
"name": "length",
|
|
619
|
+
"outputs": [
|
|
620
|
+
{
|
|
621
|
+
"internalType": "uint64",
|
|
622
|
+
"name": "",
|
|
623
|
+
"type": "uint64"
|
|
624
|
+
}
|
|
625
|
+
],
|
|
626
|
+
"stateMutability": "view",
|
|
627
|
+
"type": "function"
|
|
628
|
+
},
|
|
629
|
+
{
|
|
630
|
+
"inputs": [
|
|
631
|
+
{
|
|
632
|
+
"internalType": "address",
|
|
633
|
+
"name": "",
|
|
634
|
+
"type": "address"
|
|
635
|
+
},
|
|
636
|
+
{
|
|
637
|
+
"internalType": "uint256",
|
|
638
|
+
"name": "",
|
|
639
|
+
"type": "uint256"
|
|
640
|
+
}
|
|
641
|
+
],
|
|
642
|
+
"name": "makerOrders",
|
|
643
|
+
"outputs": [
|
|
644
|
+
{
|
|
645
|
+
"internalType": "uint64",
|
|
646
|
+
"name": "",
|
|
647
|
+
"type": "uint64"
|
|
648
|
+
}
|
|
649
|
+
],
|
|
650
|
+
"stateMutability": "view",
|
|
651
|
+
"type": "function"
|
|
652
|
+
},
|
|
653
|
+
{
|
|
654
|
+
"inputs": [
|
|
655
|
+
{
|
|
656
|
+
"internalType": "uint64",
|
|
657
|
+
"name": "id",
|
|
658
|
+
"type": "uint64"
|
|
659
|
+
}
|
|
660
|
+
],
|
|
661
|
+
"name": "order",
|
|
662
|
+
"outputs": [
|
|
663
|
+
{
|
|
664
|
+
"components": [
|
|
665
|
+
{
|
|
666
|
+
"internalType": "uint64",
|
|
667
|
+
"name": "id",
|
|
668
|
+
"type": "uint64"
|
|
669
|
+
},
|
|
670
|
+
{
|
|
671
|
+
"internalType": "uint32",
|
|
672
|
+
"name": "status",
|
|
673
|
+
"type": "uint32"
|
|
674
|
+
},
|
|
675
|
+
{
|
|
676
|
+
"internalType": "uint32",
|
|
677
|
+
"name": "filledTime",
|
|
678
|
+
"type": "uint32"
|
|
679
|
+
},
|
|
680
|
+
{
|
|
681
|
+
"internalType": "uint256",
|
|
682
|
+
"name": "srcFilledAmount",
|
|
683
|
+
"type": "uint256"
|
|
684
|
+
},
|
|
685
|
+
{
|
|
686
|
+
"components": [
|
|
687
|
+
{
|
|
688
|
+
"internalType": "uint32",
|
|
689
|
+
"name": "time",
|
|
690
|
+
"type": "uint32"
|
|
691
|
+
},
|
|
692
|
+
{
|
|
693
|
+
"internalType": "uint32",
|
|
694
|
+
"name": "deadline",
|
|
695
|
+
"type": "uint32"
|
|
696
|
+
},
|
|
697
|
+
{
|
|
698
|
+
"internalType": "uint32",
|
|
699
|
+
"name": "bidDelay",
|
|
700
|
+
"type": "uint32"
|
|
701
|
+
},
|
|
702
|
+
{
|
|
703
|
+
"internalType": "uint32",
|
|
704
|
+
"name": "fillDelay",
|
|
705
|
+
"type": "uint32"
|
|
706
|
+
},
|
|
707
|
+
{
|
|
708
|
+
"internalType": "address",
|
|
709
|
+
"name": "maker",
|
|
710
|
+
"type": "address"
|
|
711
|
+
},
|
|
712
|
+
{
|
|
713
|
+
"internalType": "address",
|
|
714
|
+
"name": "exchange",
|
|
715
|
+
"type": "address"
|
|
716
|
+
},
|
|
717
|
+
{
|
|
718
|
+
"internalType": "address",
|
|
719
|
+
"name": "srcToken",
|
|
720
|
+
"type": "address"
|
|
721
|
+
},
|
|
722
|
+
{
|
|
723
|
+
"internalType": "address",
|
|
724
|
+
"name": "dstToken",
|
|
725
|
+
"type": "address"
|
|
726
|
+
},
|
|
727
|
+
{
|
|
728
|
+
"internalType": "uint256",
|
|
729
|
+
"name": "srcAmount",
|
|
730
|
+
"type": "uint256"
|
|
731
|
+
},
|
|
732
|
+
{
|
|
733
|
+
"internalType": "uint256",
|
|
734
|
+
"name": "srcBidAmount",
|
|
735
|
+
"type": "uint256"
|
|
736
|
+
},
|
|
737
|
+
{
|
|
738
|
+
"internalType": "uint256",
|
|
739
|
+
"name": "dstMinAmount",
|
|
740
|
+
"type": "uint256"
|
|
741
|
+
}
|
|
742
|
+
],
|
|
743
|
+
"internalType": "struct OrderLib.Ask",
|
|
744
|
+
"name": "ask",
|
|
745
|
+
"type": "tuple"
|
|
746
|
+
},
|
|
747
|
+
{
|
|
748
|
+
"components": [
|
|
749
|
+
{
|
|
750
|
+
"internalType": "uint32",
|
|
751
|
+
"name": "time",
|
|
752
|
+
"type": "uint32"
|
|
753
|
+
},
|
|
754
|
+
{
|
|
755
|
+
"internalType": "address",
|
|
756
|
+
"name": "taker",
|
|
757
|
+
"type": "address"
|
|
758
|
+
},
|
|
759
|
+
{
|
|
760
|
+
"internalType": "address",
|
|
761
|
+
"name": "exchange",
|
|
762
|
+
"type": "address"
|
|
763
|
+
},
|
|
764
|
+
{
|
|
765
|
+
"internalType": "uint256",
|
|
766
|
+
"name": "dstAmount",
|
|
767
|
+
"type": "uint256"
|
|
768
|
+
},
|
|
769
|
+
{
|
|
770
|
+
"internalType": "uint256",
|
|
771
|
+
"name": "dstFee",
|
|
772
|
+
"type": "uint256"
|
|
773
|
+
},
|
|
774
|
+
{
|
|
775
|
+
"internalType": "bytes",
|
|
776
|
+
"name": "data",
|
|
777
|
+
"type": "bytes"
|
|
778
|
+
}
|
|
779
|
+
],
|
|
780
|
+
"internalType": "struct OrderLib.Bid",
|
|
781
|
+
"name": "bid",
|
|
782
|
+
"type": "tuple"
|
|
783
|
+
}
|
|
784
|
+
],
|
|
785
|
+
"internalType": "struct OrderLib.Order",
|
|
786
|
+
"name": "",
|
|
787
|
+
"type": "tuple"
|
|
788
|
+
}
|
|
789
|
+
],
|
|
790
|
+
"stateMutability": "view",
|
|
791
|
+
"type": "function"
|
|
792
|
+
},
|
|
793
|
+
{
|
|
794
|
+
"inputs": [
|
|
795
|
+
{
|
|
796
|
+
"internalType": "address",
|
|
797
|
+
"name": "maker",
|
|
798
|
+
"type": "address"
|
|
799
|
+
}
|
|
800
|
+
],
|
|
801
|
+
"name": "orderIdsByMaker",
|
|
802
|
+
"outputs": [
|
|
803
|
+
{
|
|
804
|
+
"internalType": "uint64[]",
|
|
805
|
+
"name": "",
|
|
806
|
+
"type": "uint64[]"
|
|
807
|
+
}
|
|
808
|
+
],
|
|
809
|
+
"stateMutability": "view",
|
|
810
|
+
"type": "function"
|
|
811
|
+
},
|
|
812
|
+
{
|
|
813
|
+
"inputs": [
|
|
814
|
+
{
|
|
815
|
+
"internalType": "uint64",
|
|
816
|
+
"name": "id",
|
|
817
|
+
"type": "uint64"
|
|
818
|
+
}
|
|
819
|
+
],
|
|
820
|
+
"name": "prune",
|
|
821
|
+
"outputs": [],
|
|
822
|
+
"stateMutability": "nonpayable",
|
|
823
|
+
"type": "function"
|
|
824
|
+
},
|
|
825
|
+
{
|
|
826
|
+
"inputs": [
|
|
827
|
+
{
|
|
828
|
+
"internalType": "uint256",
|
|
829
|
+
"name": "",
|
|
830
|
+
"type": "uint256"
|
|
831
|
+
}
|
|
832
|
+
],
|
|
833
|
+
"name": "status",
|
|
834
|
+
"outputs": [
|
|
835
|
+
{
|
|
836
|
+
"internalType": "uint32",
|
|
837
|
+
"name": "",
|
|
838
|
+
"type": "uint32"
|
|
839
|
+
}
|
|
840
|
+
],
|
|
841
|
+
"stateMutability": "view",
|
|
842
|
+
"type": "function"
|
|
843
|
+
}
|
|
844
|
+
],
|
|
845
|
+
"bytecode": "0x608060405234801561001057600080fd5b50600160005561319b806100256000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806356f65bee116100a257806385e471d51161007157806385e471d514610225578063a0b94e0b14610238578063a3d890b614610258578063f58e65b814610262578063ffa1ad741461027557600080fd5b806356f65bee146101f85780636352c26214610200578063724f27ee14610213578063805d835d1461021b57600080fd5b80633ab22f01116100e95780633ab22f01146101a257806342d21ef7146101b5578063454b1580146101c85780634c125e79146101d057806352e8b288146101e557600080fd5b80630392c34a1461011b5780631116fd0414610144578063112017a7146101695780631f7b6d3214610186575b600080fd5b61012e610129366004612955565b61028f565b60405161013b9190612970565b60405180910390f35b6101576101523660046129bd565b61032d565b60405161013b96959493929190612b61565b610171600a81565b60405163ffffffff909116815260200161013b565b6001545b6040516001600160401b03909116815260200161013b565b61018a6101b0366004612bad565b610508565b6101716101c33660046129bd565b610554565b610171600581565b6101e36101de366004612bee565b61058e565b005b6101e36101f3366004612bee565b6108b2565b610171600181565b61018a61020e366004612c1d565b610c1e565b610171600281565b610171620186a081565b6101e3610233366004612bee565b611203565b61024b610246366004612bee565b6113df565b60405161013b9190612cb0565b61017162018a8881565b6101e3610270366004612d1d565b61163c565b61027d600181565b60405160ff909116815260200161013b565b6001600160a01b03811660009081526003602090815260409182902080548351818402810184019094528084526060939283018282801561032157602002820191906000526020600020906000905b82829054906101000a90046001600160401b03166001600160401b0316815260200190600801906020826007010492830192600103820291508084116102de5790505b50505050509050919050565b6001818154811061033d57600080fd5b6000918252602091829020600f90910201805460018201546040805161016081018252600285015463ffffffff81811683526401000000008083048216848a0152600160401b808404831685870152600160601b93849004831660608087019190915260038a01546001600160a01b0390811660808089019190915260048c0154821660a0808a019190915260058d0154831660c0808b019190915260068e0154841660e08b015260078e01546101008b015260088e01546101208b015260098e01546101408b01528a519081018b52600a8e018054808a1683529790970484169e81019e909e52600b8d0154909216988d0198909852600c8b0154918c0191909152600d8a0154968b0196909652600e890180546001600160401b038a169c5091890484169a949098049092169795969395949293909284019161048190612dc9565b80601f01602080910402602001604051908101604052809291908181526020018280546104ad90612dc9565b80156104fa5780601f106104cf576101008083540402835291602001916104fa565b820191906000526020600020905b8154815290600101906020018083116104dd57829003601f168201915b505050505081525050905086565b6003602052816000526040600020818154811061052457600080fd5b9060005260206000209060049182820401919006600802915091509054906101000a90046001600160401b031681565b6002818154811061056457600080fd5b9060005260206000209060089182820401919006600402915054906101000a900463ffffffff1681565b61059661196a565b60006105a1826113df565b90508060800151608001516001600160a01b0316336001600160a01b0316146105f95760405162461bcd60e51b815260206004820152600560248201526436b0b5b2b960d91b60448201526064015b60405180910390fd5b60016002836001600160401b03168154811061061757610617612e03565b90600052602060002090600891828204019190066004026101000a81548163ffffffff021916908363ffffffff1602179055506001816020019063ffffffff16908163ffffffff1681525050806001836001600160401b03168154811061068057610680612e03565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e84019061084c9082612e75565b505050608080840151015183516040513381526001600160a01b0390921693506001600160401b031691507f84433a3c591ac98de0b89e7fc7a3d5d6705a3cbec760e7d529439c65d6feb3099060200160405180910390a3506108af6001600055565b50565b6108ba61196a565b60006108c5826113df565b90506000806000806108d6856119c3565b929650909450925090506108ea8584611d25565b60808581015181015160608088015160408051338152602081018990528082018890529283018690529382015291516001600160a01b03878116939216916001600160401b038a16917fc7529bc0224b03ba593d84e2064baeac956a4221ca93d37af0f1810ad17df7a99181900360a00190a461096685611d7d565b600003610a2057600280876001600160401b03168154811061098a5761098a612e03565b60009182526020918290206008820401805460079092166004026101000a63ffffffff81810219909316949092169190910292909217909155600286820152608080870151015186516040513381526001600160a01b03888116949316926001600160401b03909216917fd08d3326dcd14f1021feb19d05834c4f6d0b7ff1fecac35981f24fd5f73873c5910160405180910390a45b846001876001600160401b031681548110610a3d57610a3d612e03565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e840190610c099082612e75565b50505090505050505050506108af6001600055565b6000610c2861196a565b6001600160a01b03891615801590610c4857506001600160a01b03881615155b8015610c665750876001600160a01b0316896001600160a01b031614155b8015610c725750600087115b8015610c7e5750600086115b8015610c8a5750868611155b8015610c965750600085115b8015610ca75750428463ffffffff16115b8015610cba5750600a63ffffffff841610155b610cef5760405162461bcd60e51b8152602060048201526006602482015265706172616d7360d01b60448201526064016105f0565b6000610d0b610cfd60015490565b8686868f8f8f8f8f8f611db0565b9050610d1681611f9f565b60018054808201825560009190915281517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6600f90920291820180546020808601516040808801516001600160401b039096166001600160601b031990941693909317600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b97841688021786556060808a01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf78a01556080808b015180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf88c018054838a0151848c015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a1690980290961695909517908716909a0299909917909255878201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf98a0180546001600160a01b03199081166001600160a01b039384161790915560a0808b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfa8d018054841691851691909117905560c08b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfb8d018054841691851691909117905560e08b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfc8d01805484169185169190911790556101008b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfd8d01556101208b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfe8d0155610140909a01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cff8c0155898c015180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d008d01805499830151919098166001600160c01b031990991698909817978316909502969096178555958301517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d018a018054909616961695909517909355928301517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d02870155908201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d03860155928101518594929391927fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d0401906110be9082612e75565b505050505060028590806001815401808255809150506001900390600052602060002090600891828204019190066004029091909190916101000a81548163ffffffff021916908363ffffffff16021790555060036000336001600160a01b03166001600160a01b03168152602001908152602001600020816000015190806001815401808255809150506001900390600052602060002090600491828204019190066008029091909190916101000a8154816001600160401b0302191690836001600160401b031602179055508a6001600160a01b0316336001600160a01b031682600001516001600160401b03167f831701c9313a778469897164a19ddd1867959a91eada7cc21adf0936761c837084608001516040516111e19190612f34565b60405180910390a45190506111f66001600055565b9998505050505050505050565b61120b61196a565b6000611216826113df565b9050806020015163ffffffff1642106112415760405162461bcd60e51b81526004016105f090612f43565b80608001516060015181604001516112599190612f79565b63ffffffff16421161129a5760405162461bcd60e51b815260206004820152600a60248201526966696c6c2064656c617960b01b60448201526064016105f0565b6112a381611d7d565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b03918216600482015230602482015291169063dd62ed3e90604401602060405180830381865afa1580156112fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113219190612f9d565b10806113ab575061133181611d7d565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015611385573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a99190612f9d565b105b6105f95760405162461bcd60e51b81526020600482015260056024820152641d985b1a5960da1b60448201526064016105f0565b6113e761285d565b6001546001600160401b0316826001600160401b0316106114375760405162461bcd60e51b815260206004820152600a6024820152691a5b9d985b1a59081a5960b21b60448201526064016105f0565b6001826001600160401b03168154811061145357611453612e03565b60009182526020918290206040805160c08082018352600f90940290920180546001600160401b038116845263ffffffff600160401b808304821686890152600160601b928390048216868601526001840154606080880191909152855161016081018752600286015480851682526401000000008082048616838d01529381048516828901529490940483168482015260038501546001600160a01b039081166080868101919091526004870154821660a08088019190915260058801548316878c01526006880154831660e0880152600788015461010088015260088801546101208801526009880154610140880152818a01969096528751998a018852600a870180549586168b5293909404811699890199909952600b85015490981694870194909452600c83015496860196909652600d82015495850195909552600e810180549395919482870194909392840191906115b090612dc9565b80601f01602080910402602001604051908101604052809291908181526020018280546115dc90612dc9565b80156116295780601f106115fe57610100808354040283529160200191611629565b820191906000526020600020905b81548152906001019060200180831161160c57829003601f168201915b5050509190925250505090525092915050565b61164461196a565b6001600160a01b038516158015906116645750620186a063ffffffff8416105b6116995760405162461bcd60e51b8152602060048201526006602482015265706172616d7360d01b60448201526064016105f0565b60006116a4876113df565b905060006116b6828888888888612125565b905061170087828887878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525089969594939250506123c49050565b816001896001600160401b03168154811061171d5761171d612e03565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e8401906118e99082612e75565b505050905050866001600160a01b03168260800151608001516001600160a01b031683600001516001600160401b03167fc6c7dd24446d66051e106d8289c1e1e3657b16ae283f4824b89417b1ec39664f888660a0015160405161194e929190612fb6565b60405180910390a450506119626001600055565b505050505050565b6002600054036119bc5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016105f0565b6002600055565b6000806000808460a00151602001516001600160a01b0316336001600160a01b031614611a1a5760405162461bcd60e51b81526020600482015260056024820152643a30b5b2b960d91b60448201526064016105f0565b846020015163ffffffff164210611a435760405162461bcd60e51b81526004016105f090612f43565b60808501516040015160a086015151611a5c9190612f79565b63ffffffff164211611a9c5760405162461bcd60e51b81526020600482015260096024820152686269642064656c617960b81b60448201526064016105f0565b5060a08401516040810151608090910151909350611ab985611d7d565b92506000611ac68661242d565b6080808801519081015160c090910151919250611aee916001600160a01b0316903087612449565b608086015160c001516040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015611b3c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b609190612f9d565b608087015160c00151909450611b80906001600160a01b031686866124ba565b608086015160c081015160e0909101516001600160a01b03871691632506c0189187611bac8787612fd5565b8b60a0015160a001516040518663ffffffff1660e01b8152600401611bd5959493929190612fe8565b600060405180830381600087803b158015611bef57600080fd5b505af1158015611c03573d6000803e3d6000fd5b505050608087015160e001516040516370a0823160e01b81523060048201526001600160a01b0390911691506370a0823190602401602060405180830381865afa158015611c55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c799190612f9d565b9250611c858284613022565b925080831015611cc15760405162461bcd60e51b81526020600482015260076024820152661b5a5b881bdd5d60ca1b60448201526064016105f0565b611cef8660a001516020015183886080015160e001516001600160a01b031661256c9092919063ffffffff16565b611d1d86608001516080015184886080015160e001516001600160a01b031661256c9092919063ffffffff16565b509193509193565b63ffffffff4210611d485760405162461bcd60e51b81526004016105f090613035565b8160a001611d546128eb565b905263ffffffff42166040830152606082018051829190611d76908390612fd5565b9052505050565b6000611daa82608001516101200151836060015184608001516101000151611da59190613022565b6125a1565b92915050565b611db861285d565b63ffffffff4210611ddb5760405162461bcd60e51b81526004016105f090613035565b63ffffffff8a8116108015611df5575063ffffffff898116105b8015611e06575063ffffffff888116105b611e3b5760405162461bcd60e51b81526020600482015260066024820152653ab4b73a199960d11b60448201526064016105f0565b6040518060c001604052808c6001600160401b031681526020018b63ffffffff168152602001600063ffffffff168152602001600081526020016040518061016001604052804263ffffffff1681526020018d63ffffffff1681526020018c63ffffffff1681526020018b63ffffffff168152602001336001600160a01b031681526020018a6001600160a01b03168152602001896001600160a01b03168152602001886001600160a01b031681526020018781526020018681526020018581525081526020016040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160006001600160401b03811115611f6157611f61612e19565b6040519080825280601f01601f191660200182016040528015611f8b576020820181803683370190505b50905290529b9a5050505050505050505050565b611fa881611d7d565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b03918216600482015230602482015291169063dd62ed3e90604401602060405180830381865afa158015612002573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120269190612f9d565b10156120665760405162461bcd60e51b815260206004820152600f60248201526e6d616b657220616c6c6f77616e636560881b60448201526064016105f0565b61206f81611d7d565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156120c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120e79190612f9d565b10156108af5760405162461bcd60e51b815260206004820152600d60248201526c6d616b65722062616c616e636560981b60448201526064016105f0565b6000866020015163ffffffff1642106121505760405162461bcd60e51b81526004016105f090612f43565b86608001516060015187604001516121689190612f79565b63ffffffff1642116121a95760405162461bcd60e51b815260206004820152600a60248201526966696c6c2064656c617960b01b60448201526064016105f0565b608087015160a001516001600160a01b031615806121e05750856001600160a01b0316876080015160a001516001600160a01b0316145b6122175760405162461bcd60e51b815260206004820152600860248201526765786368616e676560c01b60448201526064016105f0565b856001600160a01b031663650967b5886080015160c00151896080015160e001516122418b611d7d565b87876040518663ffffffff1660e01b8152600401612263959493929190613053565b602060405180830381865afa158015612280573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122a49190612f9d565b9050620186a06122ba63ffffffff8616836130a7565b6122c491906130c6565b6122ce9082613022565b90506122da8582613022565b60a088015160600151909150620186a0906122f99062018a88906130a7565b61230391906130c6565b8111806123395750600587608001516040015161232091906130e8565b60a0880151516123309190612f79565b63ffffffff1642115b61236f5760405162461bcd60e51b81526020600482015260076024820152661b1bddc8189a5960ca1b60448201526064016105f0565b612378876125b9565b8110156123b15760405162461bcd60e51b81526020600482015260076024820152661b5a5b881bdd5d60ca1b60448201526064016105f0565b6123ba87611f9f565b9695505050505050565b63ffffffff42106123e75760405162461bcd60e51b81526004016105f090613035565b6040805160c08101825263ffffffff421681523360208201526001600160a01b0395909516908501526060840192909252608083015260a0808301919091529190910152565b6000611daa8260a0015160600151612444846125b9565b6125ec565b6040516001600160a01b03808516602483015283166044820152606481018290526124b49085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526125fb565b50505050565b604051636eb1769f60e11b81523060048201526001600160a01b038381166024830152600091839186169063dd62ed3e90604401602060405180830381865afa15801561250b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061252f9190612f9d565b6125399190612fd5565b6040516001600160a01b0385166024820152604481018290529091506124b490859063095ea7b360e01b9060640161247d565b6040516001600160a01b03831660248201526044810182905261259c90849063a9059cbb60e01b9060640161247d565b505050565b60008183106125b057816125b2565b825b9392505050565b6000816080015161012001516125ce83611d7d565b836080015161014001516125e291906130a7565b611daa91906130c6565b60008183116125b057816125b2565b6000612650826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166126cd9092919063ffffffff16565b80519091501561259c578080602001905181019061266e9190613114565b61259c5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016105f0565b60606126dc84846000856126e4565b949350505050565b6060824710156127455760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016105f0565b600080866001600160a01b031685876040516127619190613136565b60006040518083038185875af1925050503d806000811461279e576040519150601f19603f3d011682016040523d82523d6000602084013e6127a3565b606091505b50915091506127b4878383876127bf565b979650505050505050565b6060831561282e578251600003612827576001600160a01b0385163b6128275760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016105f0565b50816126dc565b6126dc83838151156128435781518083602001fd5b8060405162461bcd60e51b81526004016105f09190613152565b6040805160c08082018352600080835260208084018290528385018290526060808501839052855161016081018752838152918201839052948101829052938401819052608084810182905260a0850182905291840181905260e084018190526101008401819052610120840181905261014084015290919082019081526020016128e66128eb565b905290565b6040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001606081525090565b80356001600160a01b038116811461295057600080fd5b919050565b60006020828403121561296757600080fd5b6125b282612939565b6020808252825182820181905260009190848201906040850190845b818110156129b15783516001600160401b03168352928401929184019160010161298c565b50909695505050505050565b6000602082840312156129cf57600080fd5b5035919050565b805163ffffffff16825260208101516129f7602084018263ffffffff169052565b506040810151612a0f604084018263ffffffff169052565b506060810151612a27606084018263ffffffff169052565b506080810151612a4260808401826001600160a01b03169052565b5060a0810151612a5d60a08401826001600160a01b03169052565b5060c0810151612a7860c08401826001600160a01b03169052565b5060e0810151612a9360e08401826001600160a01b03169052565b506101008181015190830152610120808201519083015261014090810151910152565b60005b83811015612ad1578181015183820152602001612ab9565b50506000910152565b60008151808452612af2816020860160208601612ab6565b601f01601f19169290920160200192915050565b63ffffffff81511682526000602082015160018060a01b0380821660208601528060408501511660408601525050606082015160608401526080820151608084015260a082015160c060a08501526126dc60c0850182612ada565b6001600160401b038716815263ffffffff868116602083015285166040820152606081018490526000610200612b9a60808401866129d6565b806101e08401526111f681840185612b06565b60008060408385031215612bc057600080fd5b612bc983612939565b946020939093013593505050565b80356001600160401b038116811461295057600080fd5b600060208284031215612c0057600080fd5b6125b282612bd7565b803563ffffffff8116811461295057600080fd5b60008060008060008060008060006101208a8c031215612c3c57600080fd5b612c458a612939565b9850612c5360208b01612939565b9750612c6160408b01612939565b965060608a0135955060808a0135945060a08a01359350612c8460c08b01612c09565b9250612c9260e08b01612c09565b9150612ca16101008b01612c09565b90509295985092959850929598565b602081526001600160401b0382511660208201526000602083015163ffffffff80821660408501528060408601511660608501525050606083015160808301526080830151612d0260a08401826129d6565b5060a0830151610200838101526126dc610220840182612b06565b60008060008060008060a08789031215612d3657600080fd5b612d3f87612bd7565b9550612d4d60208801612939565b945060408701359350612d6260608801612c09565b925060808701356001600160401b0380821115612d7e57600080fd5b818901915089601f830112612d9257600080fd5b813581811115612da157600080fd5b8a6020828501011115612db357600080fd5b6020830194508093505050509295509295509295565b600181811c90821680612ddd57607f821691505b602082108103612dfd57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b601f82111561259c57600081815260208120601f850160051c81016020861015612e565750805b601f850160051c820191505b8181101561196257828155600101612e62565b81516001600160401b03811115612e8e57612e8e612e19565b612ea281612e9c8454612dc9565b84612e2f565b602080601f831160018114612ed75760008415612ebf5750858301515b600019600386901b1c1916600185901b178555611962565b600085815260208120601f198616915b82811015612f0657888601518255948401946001909101908401612ee7565b5085821015612f245787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6101608101611daa82846129d6565b60208082526006908201526573746174757360d01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b63ffffffff818116838216019080821115612f9657612f96612f63565b5092915050565b600060208284031215612faf57600080fd5b5051919050565b63ffffffff831681526040602082015260006126dc6040830184612b06565b80820180821115611daa57611daa612f63565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906127b490830184612ada565b81810381811115611daa57611daa612f63565b60208082526004908201526374696d6560e01b604082015260600190565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b60008160001904831182151516156130c1576130c1612f63565b500290565b6000826130e357634e487b7160e01b600052601260045260246000fd5b500490565b600063ffffffff8083168185168183048111821515161561310b5761310b612f63565b02949350505050565b60006020828403121561312657600080fd5b815180151581146125b257600080fd5b60008251613148818460208701612ab6565b9190910192915050565b6020815260006125b26020830184612ada56fea26469706673582212205b239beb7bcd1f937eb012c7b1180d90d16c9544f64ff8d870395736e229431864736f6c63430008100033",
|
|
846
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101165760003560e01c806356f65bee116100a257806385e471d51161007157806385e471d514610225578063a0b94e0b14610238578063a3d890b614610258578063f58e65b814610262578063ffa1ad741461027557600080fd5b806356f65bee146101f85780636352c26214610200578063724f27ee14610213578063805d835d1461021b57600080fd5b80633ab22f01116100e95780633ab22f01146101a257806342d21ef7146101b5578063454b1580146101c85780634c125e79146101d057806352e8b288146101e557600080fd5b80630392c34a1461011b5780631116fd0414610144578063112017a7146101695780631f7b6d3214610186575b600080fd5b61012e610129366004612955565b61028f565b60405161013b9190612970565b60405180910390f35b6101576101523660046129bd565b61032d565b60405161013b96959493929190612b61565b610171600a81565b60405163ffffffff909116815260200161013b565b6001545b6040516001600160401b03909116815260200161013b565b61018a6101b0366004612bad565b610508565b6101716101c33660046129bd565b610554565b610171600581565b6101e36101de366004612bee565b61058e565b005b6101e36101f3366004612bee565b6108b2565b610171600181565b61018a61020e366004612c1d565b610c1e565b610171600281565b610171620186a081565b6101e3610233366004612bee565b611203565b61024b610246366004612bee565b6113df565b60405161013b9190612cb0565b61017162018a8881565b6101e3610270366004612d1d565b61163c565b61027d600181565b60405160ff909116815260200161013b565b6001600160a01b03811660009081526003602090815260409182902080548351818402810184019094528084526060939283018282801561032157602002820191906000526020600020906000905b82829054906101000a90046001600160401b03166001600160401b0316815260200190600801906020826007010492830192600103820291508084116102de5790505b50505050509050919050565b6001818154811061033d57600080fd5b6000918252602091829020600f90910201805460018201546040805161016081018252600285015463ffffffff81811683526401000000008083048216848a0152600160401b808404831685870152600160601b93849004831660608087019190915260038a01546001600160a01b0390811660808089019190915260048c0154821660a0808a019190915260058d0154831660c0808b019190915260068e0154841660e08b015260078e01546101008b015260088e01546101208b015260098e01546101408b01528a519081018b52600a8e018054808a1683529790970484169e81019e909e52600b8d0154909216988d0198909852600c8b0154918c0191909152600d8a0154968b0196909652600e890180546001600160401b038a169c5091890484169a949098049092169795969395949293909284019161048190612dc9565b80601f01602080910402602001604051908101604052809291908181526020018280546104ad90612dc9565b80156104fa5780601f106104cf576101008083540402835291602001916104fa565b820191906000526020600020905b8154815290600101906020018083116104dd57829003601f168201915b505050505081525050905086565b6003602052816000526040600020818154811061052457600080fd5b9060005260206000209060049182820401919006600802915091509054906101000a90046001600160401b031681565b6002818154811061056457600080fd5b9060005260206000209060089182820401919006600402915054906101000a900463ffffffff1681565b61059661196a565b60006105a1826113df565b90508060800151608001516001600160a01b0316336001600160a01b0316146105f95760405162461bcd60e51b815260206004820152600560248201526436b0b5b2b960d91b60448201526064015b60405180910390fd5b60016002836001600160401b03168154811061061757610617612e03565b90600052602060002090600891828204019190066004026101000a81548163ffffffff021916908363ffffffff1602179055506001816020019063ffffffff16908163ffffffff1681525050806001836001600160401b03168154811061068057610680612e03565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e84019061084c9082612e75565b505050608080840151015183516040513381526001600160a01b0390921693506001600160401b031691507f84433a3c591ac98de0b89e7fc7a3d5d6705a3cbec760e7d529439c65d6feb3099060200160405180910390a3506108af6001600055565b50565b6108ba61196a565b60006108c5826113df565b90506000806000806108d6856119c3565b929650909450925090506108ea8584611d25565b60808581015181015160608088015160408051338152602081018990528082018890529283018690529382015291516001600160a01b03878116939216916001600160401b038a16917fc7529bc0224b03ba593d84e2064baeac956a4221ca93d37af0f1810ad17df7a99181900360a00190a461096685611d7d565b600003610a2057600280876001600160401b03168154811061098a5761098a612e03565b60009182526020918290206008820401805460079092166004026101000a63ffffffff81810219909316949092169190910292909217909155600286820152608080870151015186516040513381526001600160a01b03888116949316926001600160401b03909216917fd08d3326dcd14f1021feb19d05834c4f6d0b7ff1fecac35981f24fd5f73873c5910160405180910390a45b846001876001600160401b031681548110610a3d57610a3d612e03565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e840190610c099082612e75565b50505090505050505050506108af6001600055565b6000610c2861196a565b6001600160a01b03891615801590610c4857506001600160a01b03881615155b8015610c665750876001600160a01b0316896001600160a01b031614155b8015610c725750600087115b8015610c7e5750600086115b8015610c8a5750868611155b8015610c965750600085115b8015610ca75750428463ffffffff16115b8015610cba5750600a63ffffffff841610155b610cef5760405162461bcd60e51b8152602060048201526006602482015265706172616d7360d01b60448201526064016105f0565b6000610d0b610cfd60015490565b8686868f8f8f8f8f8f611db0565b9050610d1681611f9f565b60018054808201825560009190915281517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6600f90920291820180546020808601516040808801516001600160401b039096166001600160601b031990941693909317600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b97841688021786556060808a01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf78a01556080808b015180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf88c018054838a0151848c015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a1690980290961695909517908716909a0299909917909255878201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf98a0180546001600160a01b03199081166001600160a01b039384161790915560a0808b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfa8d018054841691851691909117905560c08b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfb8d018054841691851691909117905560e08b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfc8d01805484169185169190911790556101008b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfd8d01556101208b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfe8d0155610140909a01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cff8c0155898c015180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d008d01805499830151919098166001600160c01b031990991698909817978316909502969096178555958301517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d018a018054909616961695909517909355928301517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d02870155908201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d03860155928101518594929391927fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d0401906110be9082612e75565b505050505060028590806001815401808255809150506001900390600052602060002090600891828204019190066004029091909190916101000a81548163ffffffff021916908363ffffffff16021790555060036000336001600160a01b03166001600160a01b03168152602001908152602001600020816000015190806001815401808255809150506001900390600052602060002090600491828204019190066008029091909190916101000a8154816001600160401b0302191690836001600160401b031602179055508a6001600160a01b0316336001600160a01b031682600001516001600160401b03167f831701c9313a778469897164a19ddd1867959a91eada7cc21adf0936761c837084608001516040516111e19190612f34565b60405180910390a45190506111f66001600055565b9998505050505050505050565b61120b61196a565b6000611216826113df565b9050806020015163ffffffff1642106112415760405162461bcd60e51b81526004016105f090612f43565b80608001516060015181604001516112599190612f79565b63ffffffff16421161129a5760405162461bcd60e51b815260206004820152600a60248201526966696c6c2064656c617960b01b60448201526064016105f0565b6112a381611d7d565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b03918216600482015230602482015291169063dd62ed3e90604401602060405180830381865afa1580156112fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113219190612f9d565b10806113ab575061133181611d7d565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015611385573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a99190612f9d565b105b6105f95760405162461bcd60e51b81526020600482015260056024820152641d985b1a5960da1b60448201526064016105f0565b6113e761285d565b6001546001600160401b0316826001600160401b0316106114375760405162461bcd60e51b815260206004820152600a6024820152691a5b9d985b1a59081a5960b21b60448201526064016105f0565b6001826001600160401b03168154811061145357611453612e03565b60009182526020918290206040805160c08082018352600f90940290920180546001600160401b038116845263ffffffff600160401b808304821686890152600160601b928390048216868601526001840154606080880191909152855161016081018752600286015480851682526401000000008082048616838d01529381048516828901529490940483168482015260038501546001600160a01b039081166080868101919091526004870154821660a08088019190915260058801548316878c01526006880154831660e0880152600788015461010088015260088801546101208801526009880154610140880152818a01969096528751998a018852600a870180549586168b5293909404811699890199909952600b85015490981694870194909452600c83015496860196909652600d82015495850195909552600e810180549395919482870194909392840191906115b090612dc9565b80601f01602080910402602001604051908101604052809291908181526020018280546115dc90612dc9565b80156116295780601f106115fe57610100808354040283529160200191611629565b820191906000526020600020905b81548152906001019060200180831161160c57829003601f168201915b5050509190925250505090525092915050565b61164461196a565b6001600160a01b038516158015906116645750620186a063ffffffff8416105b6116995760405162461bcd60e51b8152602060048201526006602482015265706172616d7360d01b60448201526064016105f0565b60006116a4876113df565b905060006116b6828888888888612125565b905061170087828887878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525089969594939250506123c49050565b816001896001600160401b03168154811061171d5761171d612e03565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e8401906118e99082612e75565b505050905050866001600160a01b03168260800151608001516001600160a01b031683600001516001600160401b03167fc6c7dd24446d66051e106d8289c1e1e3657b16ae283f4824b89417b1ec39664f888660a0015160405161194e929190612fb6565b60405180910390a450506119626001600055565b505050505050565b6002600054036119bc5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016105f0565b6002600055565b6000806000808460a00151602001516001600160a01b0316336001600160a01b031614611a1a5760405162461bcd60e51b81526020600482015260056024820152643a30b5b2b960d91b60448201526064016105f0565b846020015163ffffffff164210611a435760405162461bcd60e51b81526004016105f090612f43565b60808501516040015160a086015151611a5c9190612f79565b63ffffffff164211611a9c5760405162461bcd60e51b81526020600482015260096024820152686269642064656c617960b81b60448201526064016105f0565b5060a08401516040810151608090910151909350611ab985611d7d565b92506000611ac68661242d565b6080808801519081015160c090910151919250611aee916001600160a01b0316903087612449565b608086015160c001516040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015611b3c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b609190612f9d565b608087015160c00151909450611b80906001600160a01b031686866124ba565b608086015160c081015160e0909101516001600160a01b03871691632506c0189187611bac8787612fd5565b8b60a0015160a001516040518663ffffffff1660e01b8152600401611bd5959493929190612fe8565b600060405180830381600087803b158015611bef57600080fd5b505af1158015611c03573d6000803e3d6000fd5b505050608087015160e001516040516370a0823160e01b81523060048201526001600160a01b0390911691506370a0823190602401602060405180830381865afa158015611c55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c799190612f9d565b9250611c858284613022565b925080831015611cc15760405162461bcd60e51b81526020600482015260076024820152661b5a5b881bdd5d60ca1b60448201526064016105f0565b611cef8660a001516020015183886080015160e001516001600160a01b031661256c9092919063ffffffff16565b611d1d86608001516080015184886080015160e001516001600160a01b031661256c9092919063ffffffff16565b509193509193565b63ffffffff4210611d485760405162461bcd60e51b81526004016105f090613035565b8160a001611d546128eb565b905263ffffffff42166040830152606082018051829190611d76908390612fd5565b9052505050565b6000611daa82608001516101200151836060015184608001516101000151611da59190613022565b6125a1565b92915050565b611db861285d565b63ffffffff4210611ddb5760405162461bcd60e51b81526004016105f090613035565b63ffffffff8a8116108015611df5575063ffffffff898116105b8015611e06575063ffffffff888116105b611e3b5760405162461bcd60e51b81526020600482015260066024820152653ab4b73a199960d11b60448201526064016105f0565b6040518060c001604052808c6001600160401b031681526020018b63ffffffff168152602001600063ffffffff168152602001600081526020016040518061016001604052804263ffffffff1681526020018d63ffffffff1681526020018c63ffffffff1681526020018b63ffffffff168152602001336001600160a01b031681526020018a6001600160a01b03168152602001896001600160a01b03168152602001886001600160a01b031681526020018781526020018681526020018581525081526020016040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160006001600160401b03811115611f6157611f61612e19565b6040519080825280601f01601f191660200182016040528015611f8b576020820181803683370190505b50905290529b9a5050505050505050505050565b611fa881611d7d565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b03918216600482015230602482015291169063dd62ed3e90604401602060405180830381865afa158015612002573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120269190612f9d565b10156120665760405162461bcd60e51b815260206004820152600f60248201526e6d616b657220616c6c6f77616e636560881b60448201526064016105f0565b61206f81611d7d565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156120c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120e79190612f9d565b10156108af5760405162461bcd60e51b815260206004820152600d60248201526c6d616b65722062616c616e636560981b60448201526064016105f0565b6000866020015163ffffffff1642106121505760405162461bcd60e51b81526004016105f090612f43565b86608001516060015187604001516121689190612f79565b63ffffffff1642116121a95760405162461bcd60e51b815260206004820152600a60248201526966696c6c2064656c617960b01b60448201526064016105f0565b608087015160a001516001600160a01b031615806121e05750856001600160a01b0316876080015160a001516001600160a01b0316145b6122175760405162461bcd60e51b815260206004820152600860248201526765786368616e676560c01b60448201526064016105f0565b856001600160a01b031663650967b5886080015160c00151896080015160e001516122418b611d7d565b87876040518663ffffffff1660e01b8152600401612263959493929190613053565b602060405180830381865afa158015612280573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122a49190612f9d565b9050620186a06122ba63ffffffff8616836130a7565b6122c491906130c6565b6122ce9082613022565b90506122da8582613022565b60a088015160600151909150620186a0906122f99062018a88906130a7565b61230391906130c6565b8111806123395750600587608001516040015161232091906130e8565b60a0880151516123309190612f79565b63ffffffff1642115b61236f5760405162461bcd60e51b81526020600482015260076024820152661b1bddc8189a5960ca1b60448201526064016105f0565b612378876125b9565b8110156123b15760405162461bcd60e51b81526020600482015260076024820152661b5a5b881bdd5d60ca1b60448201526064016105f0565b6123ba87611f9f565b9695505050505050565b63ffffffff42106123e75760405162461bcd60e51b81526004016105f090613035565b6040805160c08101825263ffffffff421681523360208201526001600160a01b0395909516908501526060840192909252608083015260a0808301919091529190910152565b6000611daa8260a0015160600151612444846125b9565b6125ec565b6040516001600160a01b03808516602483015283166044820152606481018290526124b49085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526125fb565b50505050565b604051636eb1769f60e11b81523060048201526001600160a01b038381166024830152600091839186169063dd62ed3e90604401602060405180830381865afa15801561250b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061252f9190612f9d565b6125399190612fd5565b6040516001600160a01b0385166024820152604481018290529091506124b490859063095ea7b360e01b9060640161247d565b6040516001600160a01b03831660248201526044810182905261259c90849063a9059cbb60e01b9060640161247d565b505050565b60008183106125b057816125b2565b825b9392505050565b6000816080015161012001516125ce83611d7d565b836080015161014001516125e291906130a7565b611daa91906130c6565b60008183116125b057816125b2565b6000612650826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166126cd9092919063ffffffff16565b80519091501561259c578080602001905181019061266e9190613114565b61259c5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016105f0565b60606126dc84846000856126e4565b949350505050565b6060824710156127455760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016105f0565b600080866001600160a01b031685876040516127619190613136565b60006040518083038185875af1925050503d806000811461279e576040519150601f19603f3d011682016040523d82523d6000602084013e6127a3565b606091505b50915091506127b4878383876127bf565b979650505050505050565b6060831561282e578251600003612827576001600160a01b0385163b6128275760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016105f0565b50816126dc565b6126dc83838151156128435781518083602001fd5b8060405162461bcd60e51b81526004016105f09190613152565b6040805160c08082018352600080835260208084018290528385018290526060808501839052855161016081018752838152918201839052948101829052938401819052608084810182905260a0850182905291840181905260e084018190526101008401819052610120840181905261014084015290919082019081526020016128e66128eb565b905290565b6040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001606081525090565b80356001600160a01b038116811461295057600080fd5b919050565b60006020828403121561296757600080fd5b6125b282612939565b6020808252825182820181905260009190848201906040850190845b818110156129b15783516001600160401b03168352928401929184019160010161298c565b50909695505050505050565b6000602082840312156129cf57600080fd5b5035919050565b805163ffffffff16825260208101516129f7602084018263ffffffff169052565b506040810151612a0f604084018263ffffffff169052565b506060810151612a27606084018263ffffffff169052565b506080810151612a4260808401826001600160a01b03169052565b5060a0810151612a5d60a08401826001600160a01b03169052565b5060c0810151612a7860c08401826001600160a01b03169052565b5060e0810151612a9360e08401826001600160a01b03169052565b506101008181015190830152610120808201519083015261014090810151910152565b60005b83811015612ad1578181015183820152602001612ab9565b50506000910152565b60008151808452612af2816020860160208601612ab6565b601f01601f19169290920160200192915050565b63ffffffff81511682526000602082015160018060a01b0380821660208601528060408501511660408601525050606082015160608401526080820151608084015260a082015160c060a08501526126dc60c0850182612ada565b6001600160401b038716815263ffffffff868116602083015285166040820152606081018490526000610200612b9a60808401866129d6565b806101e08401526111f681840185612b06565b60008060408385031215612bc057600080fd5b612bc983612939565b946020939093013593505050565b80356001600160401b038116811461295057600080fd5b600060208284031215612c0057600080fd5b6125b282612bd7565b803563ffffffff8116811461295057600080fd5b60008060008060008060008060006101208a8c031215612c3c57600080fd5b612c458a612939565b9850612c5360208b01612939565b9750612c6160408b01612939565b965060608a0135955060808a0135945060a08a01359350612c8460c08b01612c09565b9250612c9260e08b01612c09565b9150612ca16101008b01612c09565b90509295985092959850929598565b602081526001600160401b0382511660208201526000602083015163ffffffff80821660408501528060408601511660608501525050606083015160808301526080830151612d0260a08401826129d6565b5060a0830151610200838101526126dc610220840182612b06565b60008060008060008060a08789031215612d3657600080fd5b612d3f87612bd7565b9550612d4d60208801612939565b945060408701359350612d6260608801612c09565b925060808701356001600160401b0380821115612d7e57600080fd5b818901915089601f830112612d9257600080fd5b813581811115612da157600080fd5b8a6020828501011115612db357600080fd5b6020830194508093505050509295509295509295565b600181811c90821680612ddd57607f821691505b602082108103612dfd57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b601f82111561259c57600081815260208120601f850160051c81016020861015612e565750805b601f850160051c820191505b8181101561196257828155600101612e62565b81516001600160401b03811115612e8e57612e8e612e19565b612ea281612e9c8454612dc9565b84612e2f565b602080601f831160018114612ed75760008415612ebf5750858301515b600019600386901b1c1916600185901b178555611962565b600085815260208120601f198616915b82811015612f0657888601518255948401946001909101908401612ee7565b5085821015612f245787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6101608101611daa82846129d6565b60208082526006908201526573746174757360d01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b63ffffffff818116838216019080821115612f9657612f96612f63565b5092915050565b600060208284031215612faf57600080fd5b5051919050565b63ffffffff831681526040602082015260006126dc6040830184612b06565b80820180821115611daa57611daa612f63565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906127b490830184612ada565b81810381811115611daa57611daa612f63565b60208082526004908201526374696d6560e01b604082015260600190565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b60008160001904831182151516156130c1576130c1612f63565b500290565b6000826130e357634e487b7160e01b600052601260045260246000fd5b500490565b600063ffffffff8083168185168183048111821515161561310b5761310b612f63565b02949350505050565b60006020828403121561312657600080fd5b815180151581146125b257600080fd5b60008251613148818460208701612ab6565b9190910192915050565b6020815260006125b26020830184612ada56fea26469706673582212205b239beb7bcd1f937eb012c7b1180d90d16c9544f64ff8d870395736e229431864736f6c63430008100033",
|
|
847
|
+
"linkReferences": {},
|
|
848
|
+
"deployedLinkReferences": {}
|
|
849
|
+
}
|