forked from hyperledger/firefly-tokens-erc20-erc721
-
Notifications
You must be signed in to change notification settings - Fork 3
/
ERC721NoData.json
435 lines (435 loc) · 34.5 KB
/
ERC721NoData.json
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
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
{
"_format": "hh-sol-artifact-1",
"contractName": "ERC721NoData",
"sourceName": "contracts/ERC721NoData.sol",
"abi": [
{
"inputs": [
{
"internalType": "string",
"name": "name",
"type": "string"
},
{
"internalType": "string",
"name": "symbol",
"type": "string"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "owner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "approved",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
}
],
"name": "Approval",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "owner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"indexed": false,
"internalType": "bool",
"name": "approved",
"type": "bool"
}
],
"name": "ApprovalForAll",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
}
],
"name": "approve",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
}
],
"name": "burn",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
}
],
"name": "getApproved",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
},
{
"internalType": "address",
"name": "operator",
"type": "address"
}
],
"name": "isApprovedForAll",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "name",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "owner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
}
],
"name": "ownerOf",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "renounceOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to",
"type": "address"
}
],
"name": "safeMint",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from",
"type": "address"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
}
],
"name": "safeTransferFrom",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from",
"type": "address"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "safeTransferFrom",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"internalType": "bool",
"name": "approved",
"type": "bool"
}
],
"name": "setApprovalForAll",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "interfaceId",
"type": "bytes4"
}
],
"name": "supportsInterface",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "symbol",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
}
],
"name": "tokenURI",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from",
"type": "address"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256",
"name": "tokenId",
"type": "uint256"
}
],
"name": "transferFrom",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x60806040523480156200001157600080fd5b5060405162001b6e38038062001b6e83398101604081905262000034916200019e565b8181620000413362000080565b60016200004f838262000297565b5060026200005e828262000297565b505050620000786007620000d060201b6200099a1760201c565b505062000363565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80546001019055565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200010157600080fd5b81516001600160401b03808211156200011e576200011e620000d9565b604051601f8301601f19908116603f01168101908282118183101715620001495762000149620000d9565b816040528381526020925086838588010111156200016657600080fd5b600091505b838210156200018a57858201830151818301840152908201906200016b565b600093810190920192909252949350505050565b60008060408385031215620001b257600080fd5b82516001600160401b0380821115620001ca57600080fd5b620001d886838701620000ef565b93506020850151915080821115620001ef57600080fd5b50620001fe85828601620000ef565b9150509250929050565b600181811c908216806200021d57607f821691505b6020821081036200023e57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200029257600081815260208120601f850160051c810160208610156200026d5750805b601f850160051c820191505b818110156200028e5782815560010162000279565b5050505b505050565b81516001600160401b03811115620002b357620002b3620000d9565b620002cb81620002c4845462000208565b8462000244565b602080601f831160018114620003035760008415620002ea5750858301515b600019600386901b1c1916600185901b1785556200028e565b600085815260208120601f198616915b82811015620003345788860151825594840194600190910190840162000313565b5085821015620003535787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6117fb80620003736000396000f3fe608060405234801561001057600080fd5b50600436106101365760003560e01c806370a08231116100b2578063a22cb46511610081578063c87b56dd11610066578063c87b56dd1461027f578063e985e9c514610292578063f2fde38b146102ce57600080fd5b8063a22cb46514610259578063b88d4fde1461026c57600080fd5b806370a0823114610217578063715018a6146102385780638da5cb5b1461024057806395d89b411461025157600080fd5b806323b872dd1161010957806342842e0e116100ee57806342842e0e146101de57806342966c68146101f15780636352211e1461020457600080fd5b806323b872dd146101b857806340d097c3146101cb57600080fd5b806301ffc9a71461013b57806306fdde0314610163578063081812fc14610178578063095ea7b3146101a3575b600080fd5b61014e6101493660046113c3565b6102e1565b60405190151581526020015b60405180910390f35b61016b61037e565b60405161015a9190611430565b61018b610186366004611443565b610410565b6040516001600160a01b03909116815260200161015a565b6101b66101b1366004611478565b610437565b005b6101b66101c63660046114a2565b61058b565b6101b66101d93660046114de565b610604565b6101b66101ec3660046114a2565b610635565b6101b66101ff366004611443565b610650565b61018b610212366004611443565b6106c8565b61022a6102253660046114de565b61072d565b60405190815260200161015a565b6101b66107c7565b6000546001600160a01b031661018b565b61016b6107db565b6101b66102673660046114f9565b6107ea565b6101b661027a36600461154b565b6107f5565b61016b61028d366004611443565b610874565b61014e6102a0366004611627565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205460ff1690565b6101b66102dc3660046114de565b61090d565b60006001600160e01b031982167f80ac58cd00000000000000000000000000000000000000000000000000000000148061034457506001600160e01b031982167f5b5e139f00000000000000000000000000000000000000000000000000000000145b8061037857507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b92915050565b60606001805461038d9061165a565b80601f01602080910402602001604051908101604052809291908181526020018280546103b99061165a565b80156104065780601f106103db57610100808354040283529160200191610406565b820191906000526020600020905b8154815290600101906020018083116103e957829003601f168201915b5050505050905090565b600061041b826109a3565b506000908152600560205260409020546001600160a01b031690565b6000610442826106c8565b9050806001600160a01b0316836001600160a01b0316036104d05760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560448201527f720000000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b336001600160a01b038216148061050a57506001600160a01b038116600090815260066020908152604080832033845290915290205460ff165b61057c5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c000060648201526084016104c7565b6105868383610a07565b505050565b610596335b82610a75565b6105f95760405162461bcd60e51b815260206004820152602e60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201526d1c881b9bdc88185c1c1c9bdd995960921b60648201526084016104c7565b610586838383610af4565b61060c610cc1565b600061061760075490565b9050610627600780546001019055565b6106318282610d1b565b5050565b610586838383604051806020016040528060008152506107f5565b61065933610590565b6106bc5760405162461bcd60e51b815260206004820152602e60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201526d1c881b9bdc88185c1c1c9bdd995960921b60648201526084016104c7565b6106c581610d35565b50565b6000818152600360205260408120546001600160a01b0316806103785760405162461bcd60e51b815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e204944000000000000000060448201526064016104c7565b60006001600160a01b0382166107ab5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f74206120766160448201527f6c6964206f776e6572000000000000000000000000000000000000000000000060648201526084016104c7565b506001600160a01b031660009081526004602052604090205490565b6107cf610cc1565b6107d96000610dd0565b565b60606002805461038d9061165a565b610631338383610e20565b6107ff3383610a75565b6108625760405162461bcd60e51b815260206004820152602e60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201526d1c881b9bdc88185c1c1c9bdd995960921b60648201526084016104c7565b61086e84848484610eee565b50505050565b606061087f826109a3565b60006108bb60408051808201909152601081527f66697265666c793a2f2f746f6b656e2f00000000000000000000000000000000602082015290565b905060008151116108db5760405180602001604052806000815250610906565b806108e584610f6c565b6040516020016108f6929190611694565b6040516020818303038152906040525b9392505050565b610915610cc1565b6001600160a01b0381166109915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016104c7565b6106c581610dd0565b80546001019055565b6000818152600360205260409020546001600160a01b03166106c55760405162461bcd60e51b815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e204944000000000000000060448201526064016104c7565b600081815260056020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610a3c826106c8565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600080610a81836106c8565b9050806001600160a01b0316846001600160a01b03161480610ac857506001600160a01b0380821660009081526006602090815260408083209388168352929052205460ff165b80610aec5750836001600160a01b0316610ae184610410565b6001600160a01b0316145b949350505050565b826001600160a01b0316610b07826106c8565b6001600160a01b031614610b835760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201527f6f776e657200000000000000000000000000000000000000000000000000000060648201526084016104c7565b6001600160a01b038216610bfe5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016104c7565b610c09600082610a07565b6001600160a01b0383166000908152600460205260408120805460019290610c329084906116d9565b90915550506001600160a01b0382166000908152600460205260408120805460019290610c609084906116ec565b909155505060008181526003602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6000546001600160a01b031633146107d95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016104c7565b6106318282604051806020016040528060008152506110a1565b6000610d40826106c8565b9050610d4d600083610a07565b6001600160a01b0381166000908152600460205260408120805460019290610d769084906116d9565b909155505060008281526003602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b816001600160a01b0316836001600160a01b031603610e815760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016104c7565b6001600160a01b03838116600081815260066020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b610ef9848484610af4565b610f058484848461111f565b61086e5760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016104c7565b606081600003610faf57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610fd95780610fc3816116ff565b9150610fd29050600a8361172e565b9150610fb3565b60008167ffffffffffffffff811115610ff457610ff4611535565b6040519080825280601f01601f19166020018201604052801561101e576020820181803683370190505b5090505b8415610aec576110336001836116d9565b9150611040600a86611742565b61104b9060306116ec565b60f81b81838151811061106057611060611756565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535061109a600a8661172e565b9450611022565b6110ab838361126b565b6110b8600084848461111f565b6105865760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016104c7565b60006001600160a01b0384163b1561126057604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061116390339089908890889060040161176c565b6020604051808303816000875af192505050801561119e575060408051601f3d908101601f1916820190925261119b918101906117a8565b60015b611246573d8080156111cc576040519150601f19603f3d011682016040523d82523d6000602084013e6111d1565b606091505b50805160000361123e5760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016104c7565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610aec565b506001949350505050565b6001600160a01b0382166112c15760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016104c7565b6000818152600360205260409020546001600160a01b0316156113265760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016104c7565b6001600160a01b038216600090815260046020526040812080546001929061134f9084906116ec565b909155505060008181526003602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6001600160e01b0319811681146106c557600080fd5b6000602082840312156113d557600080fd5b8135610906816113ad565b60005b838110156113fb5781810151838201526020016113e3565b50506000910152565b6000815180845261141c8160208601602086016113e0565b601f01601f19169290920160200192915050565b6020815260006109066020830184611404565b60006020828403121561145557600080fd5b5035919050565b80356001600160a01b038116811461147357600080fd5b919050565b6000806040838503121561148b57600080fd5b6114948361145c565b946020939093013593505050565b6000806000606084860312156114b757600080fd5b6114c08461145c565b92506114ce6020850161145c565b9150604084013590509250925092565b6000602082840312156114f057600080fd5b6109068261145c565b6000806040838503121561150c57600080fd5b6115158361145c565b91506020830135801515811461152a57600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6000806000806080858703121561156157600080fd5b61156a8561145c565b93506115786020860161145c565b925060408501359150606085013567ffffffffffffffff8082111561159c57600080fd5b818701915087601f8301126115b057600080fd5b8135818111156115c2576115c2611535565b604051601f8201601f19908116603f011681019083821181831017156115ea576115ea611535565b816040528281528a602084870101111561160357600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561163a57600080fd5b6116438361145c565b91506116516020840161145c565b90509250929050565b600181811c9082168061166e57607f821691505b60208210810361168e57634e487b7160e01b600052602260045260246000fd5b50919050565b600083516116a68184602088016113e0565b8351908301906116ba8183602088016113e0565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610378576103786116c3565b80820180821115610378576103786116c3565b600060018201611711576117116116c3565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60008261173d5761173d611718565b500490565b60008261175157611751611718565b500690565b634e487b7160e01b600052603260045260246000fd5b60006001600160a01b0380871683528086166020840152508360408301526080606083015261179e6080830184611404565b9695505050505050565b6000602082840312156117ba57600080fd5b8151610906816113ad56fea264697066735822122082e107ffd2334d8371565f1357fdad5572e2c71eb8abb0539d8f11a6802dc84664736f6c63430008110033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101365760003560e01c806370a08231116100b2578063a22cb46511610081578063c87b56dd11610066578063c87b56dd1461027f578063e985e9c514610292578063f2fde38b146102ce57600080fd5b8063a22cb46514610259578063b88d4fde1461026c57600080fd5b806370a0823114610217578063715018a6146102385780638da5cb5b1461024057806395d89b411461025157600080fd5b806323b872dd1161010957806342842e0e116100ee57806342842e0e146101de57806342966c68146101f15780636352211e1461020457600080fd5b806323b872dd146101b857806340d097c3146101cb57600080fd5b806301ffc9a71461013b57806306fdde0314610163578063081812fc14610178578063095ea7b3146101a3575b600080fd5b61014e6101493660046113c3565b6102e1565b60405190151581526020015b60405180910390f35b61016b61037e565b60405161015a9190611430565b61018b610186366004611443565b610410565b6040516001600160a01b03909116815260200161015a565b6101b66101b1366004611478565b610437565b005b6101b66101c63660046114a2565b61058b565b6101b66101d93660046114de565b610604565b6101b66101ec3660046114a2565b610635565b6101b66101ff366004611443565b610650565b61018b610212366004611443565b6106c8565b61022a6102253660046114de565b61072d565b60405190815260200161015a565b6101b66107c7565b6000546001600160a01b031661018b565b61016b6107db565b6101b66102673660046114f9565b6107ea565b6101b661027a36600461154b565b6107f5565b61016b61028d366004611443565b610874565b61014e6102a0366004611627565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205460ff1690565b6101b66102dc3660046114de565b61090d565b60006001600160e01b031982167f80ac58cd00000000000000000000000000000000000000000000000000000000148061034457506001600160e01b031982167f5b5e139f00000000000000000000000000000000000000000000000000000000145b8061037857507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b92915050565b60606001805461038d9061165a565b80601f01602080910402602001604051908101604052809291908181526020018280546103b99061165a565b80156104065780601f106103db57610100808354040283529160200191610406565b820191906000526020600020905b8154815290600101906020018083116103e957829003601f168201915b5050505050905090565b600061041b826109a3565b506000908152600560205260409020546001600160a01b031690565b6000610442826106c8565b9050806001600160a01b0316836001600160a01b0316036104d05760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560448201527f720000000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b336001600160a01b038216148061050a57506001600160a01b038116600090815260066020908152604080832033845290915290205460ff165b61057c5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c000060648201526084016104c7565b6105868383610a07565b505050565b610596335b82610a75565b6105f95760405162461bcd60e51b815260206004820152602e60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201526d1c881b9bdc88185c1c1c9bdd995960921b60648201526084016104c7565b610586838383610af4565b61060c610cc1565b600061061760075490565b9050610627600780546001019055565b6106318282610d1b565b5050565b610586838383604051806020016040528060008152506107f5565b61065933610590565b6106bc5760405162461bcd60e51b815260206004820152602e60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201526d1c881b9bdc88185c1c1c9bdd995960921b60648201526084016104c7565b6106c581610d35565b50565b6000818152600360205260408120546001600160a01b0316806103785760405162461bcd60e51b815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e204944000000000000000060448201526064016104c7565b60006001600160a01b0382166107ab5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f74206120766160448201527f6c6964206f776e6572000000000000000000000000000000000000000000000060648201526084016104c7565b506001600160a01b031660009081526004602052604090205490565b6107cf610cc1565b6107d96000610dd0565b565b60606002805461038d9061165a565b610631338383610e20565b6107ff3383610a75565b6108625760405162461bcd60e51b815260206004820152602e60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201526d1c881b9bdc88185c1c1c9bdd995960921b60648201526084016104c7565b61086e84848484610eee565b50505050565b606061087f826109a3565b60006108bb60408051808201909152601081527f66697265666c793a2f2f746f6b656e2f00000000000000000000000000000000602082015290565b905060008151116108db5760405180602001604052806000815250610906565b806108e584610f6c565b6040516020016108f6929190611694565b6040516020818303038152906040525b9392505050565b610915610cc1565b6001600160a01b0381166109915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016104c7565b6106c581610dd0565b80546001019055565b6000818152600360205260409020546001600160a01b03166106c55760405162461bcd60e51b815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e204944000000000000000060448201526064016104c7565b600081815260056020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610a3c826106c8565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600080610a81836106c8565b9050806001600160a01b0316846001600160a01b03161480610ac857506001600160a01b0380821660009081526006602090815260408083209388168352929052205460ff165b80610aec5750836001600160a01b0316610ae184610410565b6001600160a01b0316145b949350505050565b826001600160a01b0316610b07826106c8565b6001600160a01b031614610b835760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201527f6f776e657200000000000000000000000000000000000000000000000000000060648201526084016104c7565b6001600160a01b038216610bfe5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016104c7565b610c09600082610a07565b6001600160a01b0383166000908152600460205260408120805460019290610c329084906116d9565b90915550506001600160a01b0382166000908152600460205260408120805460019290610c609084906116ec565b909155505060008181526003602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6000546001600160a01b031633146107d95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016104c7565b6106318282604051806020016040528060008152506110a1565b6000610d40826106c8565b9050610d4d600083610a07565b6001600160a01b0381166000908152600460205260408120805460019290610d769084906116d9565b909155505060008281526003602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b816001600160a01b0316836001600160a01b031603610e815760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016104c7565b6001600160a01b03838116600081815260066020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b610ef9848484610af4565b610f058484848461111f565b61086e5760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016104c7565b606081600003610faf57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610fd95780610fc3816116ff565b9150610fd29050600a8361172e565b9150610fb3565b60008167ffffffffffffffff811115610ff457610ff4611535565b6040519080825280601f01601f19166020018201604052801561101e576020820181803683370190505b5090505b8415610aec576110336001836116d9565b9150611040600a86611742565b61104b9060306116ec565b60f81b81838151811061106057611060611756565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535061109a600a8661172e565b9450611022565b6110ab838361126b565b6110b8600084848461111f565b6105865760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016104c7565b60006001600160a01b0384163b1561126057604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061116390339089908890889060040161176c565b6020604051808303816000875af192505050801561119e575060408051601f3d908101601f1916820190925261119b918101906117a8565b60015b611246573d8080156111cc576040519150601f19603f3d011682016040523d82523d6000602084013e6111d1565b606091505b50805160000361123e5760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016104c7565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610aec565b506001949350505050565b6001600160a01b0382166112c15760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016104c7565b6000818152600360205260409020546001600160a01b0316156113265760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016104c7565b6001600160a01b038216600090815260046020526040812080546001929061134f9084906116ec565b909155505060008181526003602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6001600160e01b0319811681146106c557600080fd5b6000602082840312156113d557600080fd5b8135610906816113ad565b60005b838110156113fb5781810151838201526020016113e3565b50506000910152565b6000815180845261141c8160208601602086016113e0565b601f01601f19169290920160200192915050565b6020815260006109066020830184611404565b60006020828403121561145557600080fd5b5035919050565b80356001600160a01b038116811461147357600080fd5b919050565b6000806040838503121561148b57600080fd5b6114948361145c565b946020939093013593505050565b6000806000606084860312156114b757600080fd5b6114c08461145c565b92506114ce6020850161145c565b9150604084013590509250925092565b6000602082840312156114f057600080fd5b6109068261145c565b6000806040838503121561150c57600080fd5b6115158361145c565b91506020830135801515811461152a57600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6000806000806080858703121561156157600080fd5b61156a8561145c565b93506115786020860161145c565b925060408501359150606085013567ffffffffffffffff8082111561159c57600080fd5b818701915087601f8301126115b057600080fd5b8135818111156115c2576115c2611535565b604051601f8201601f19908116603f011681019083821181831017156115ea576115ea611535565b816040528281528a602084870101111561160357600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561163a57600080fd5b6116438361145c565b91506116516020840161145c565b90509250929050565b600181811c9082168061166e57607f821691505b60208210810361168e57634e487b7160e01b600052602260045260246000fd5b50919050565b600083516116a68184602088016113e0565b8351908301906116ba8183602088016113e0565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610378576103786116c3565b80820180821115610378576103786116c3565b600060018201611711576117116116c3565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60008261173d5761173d611718565b500490565b60008261175157611751611718565b500690565b634e487b7160e01b600052603260045260246000fd5b60006001600160a01b0380871683528086166020840152508360408301526080606083015261179e6080830184611404565b9695505050505050565b6000602082840312156117ba57600080fd5b8151610906816113ad56fea264697066735822122082e107ffd2334d8371565f1357fdad5572e2c71eb8abb0539d8f11a6802dc84664736f6c63430008110033",
"linkReferences": {},
"deployedLinkReferences": {}
}