@hyperlane-xyz/tron-sdk 21.0.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.
Files changed (83) hide show
  1. package/LICENSE.md +195 -0
  2. package/README.md +47 -0
  3. package/dist/abi/DomainRoutingIsm.json +240 -0
  4. package/dist/abi/ERC20.json +293 -0
  5. package/dist/abi/ERC20Test.json +365 -0
  6. package/dist/abi/HypERC20.json +920 -0
  7. package/dist/abi/HypERC20Collateral.json +1556 -0
  8. package/dist/abi/HypNative.json +1561 -0
  9. package/dist/abi/IERC20.json +190 -0
  10. package/dist/abi/IInterchainSecurityModule.json +44 -0
  11. package/dist/abi/IPostDispatchHook.json +81 -0
  12. package/dist/abi/InterchainGasPaymaster.json +518 -0
  13. package/dist/abi/Mailbox.json +686 -0
  14. package/dist/abi/MerkleTreeHook.json +375 -0
  15. package/dist/abi/NoopIsm.json +57 -0
  16. package/dist/abi/PausableHook.json +199 -0
  17. package/dist/abi/ProxyAdmin.json +156 -0
  18. package/dist/abi/StaticMerkleRootMultisigIsm.json +100 -0
  19. package/dist/abi/StaticMessageIdMultisigIsm.json +100 -0
  20. package/dist/abi/StorageGasOracle.json +205 -0
  21. package/dist/abi/TransparentUpgradeableProxy.json +81 -0
  22. package/dist/abi/ValidatorAnnounce.json +299 -0
  23. package/dist/clients/protocol.d.ts +17 -0
  24. package/dist/clients/protocol.d.ts.map +1 -0
  25. package/dist/clients/protocol.js +40 -0
  26. package/dist/clients/protocol.js.map +1 -0
  27. package/dist/clients/provider.d.ts +67 -0
  28. package/dist/clients/provider.d.ts.map +1 -0
  29. package/dist/clients/provider.js +558 -0
  30. package/dist/clients/provider.js.map +1 -0
  31. package/dist/clients/signer.d.ts +46 -0
  32. package/dist/clients/signer.d.ts.map +1 -0
  33. package/dist/clients/signer.js +561 -0
  34. package/dist/clients/signer.js.map +1 -0
  35. package/dist/hook/hook-query.d.ts +41 -0
  36. package/dist/hook/hook-query.d.ts.map +1 -0
  37. package/dist/hook/hook-query.js +79 -0
  38. package/dist/hook/hook-query.js.map +1 -0
  39. package/dist/hook/hook-tx.d.ts +39 -0
  40. package/dist/hook/hook-tx.d.ts.map +1 -0
  41. package/dist/hook/hook-tx.js +95 -0
  42. package/dist/hook/hook-tx.js.map +1 -0
  43. package/dist/index.d.ts +5 -0
  44. package/dist/index.d.ts.map +1 -0
  45. package/dist/index.js +4 -0
  46. package/dist/index.js.map +1 -0
  47. package/dist/ism/ism-query.d.ts +70 -0
  48. package/dist/ism/ism-query.d.ts.map +1 -0
  49. package/dist/ism/ism-query.js +137 -0
  50. package/dist/ism/ism-query.js.map +1 -0
  51. package/dist/ism/ism-tx.d.ts +67 -0
  52. package/dist/ism/ism-tx.d.ts.map +1 -0
  53. package/dist/ism/ism-tx.js +110 -0
  54. package/dist/ism/ism-tx.js.map +1 -0
  55. package/dist/tests/1_interchain_security.e2e-test.d.ts +2 -0
  56. package/dist/tests/1_interchain_security.e2e-test.d.ts.map +1 -0
  57. package/dist/tests/1_interchain_security.e2e-test.js +172 -0
  58. package/dist/tests/1_interchain_security.e2e-test.js.map +1 -0
  59. package/dist/tests/2_core.e2e-test.d.ts +2 -0
  60. package/dist/tests/2_core.e2e-test.d.ts.map +1 -0
  61. package/dist/tests/2_core.e2e-test.js +117 -0
  62. package/dist/tests/2_core.e2e-test.js.map +1 -0
  63. package/dist/tests/3_post_dispatch.e2e-test.d.ts +2 -0
  64. package/dist/tests/3_post_dispatch.e2e-test.d.ts.map +1 -0
  65. package/dist/tests/3_post_dispatch.e2e-test.js +116 -0
  66. package/dist/tests/3_post_dispatch.e2e-test.js.map +1 -0
  67. package/dist/tests/4_warp.e2e-test.d.ts +2 -0
  68. package/dist/tests/4_warp.e2e-test.d.ts.map +1 -0
  69. package/dist/tests/4_warp.e2e-test.js +304 -0
  70. package/dist/tests/4_warp.e2e-test.js.map +1 -0
  71. package/dist/tests/index.e2e-test.d.ts +5 -0
  72. package/dist/tests/index.e2e-test.d.ts.map +1 -0
  73. package/dist/tests/index.e2e-test.js +6 -0
  74. package/dist/tests/index.e2e-test.js.map +1 -0
  75. package/dist/utils/index.d.ts +24 -0
  76. package/dist/utils/index.d.ts.map +1 -0
  77. package/dist/utils/index.js +71 -0
  78. package/dist/utils/index.js.map +1 -0
  79. package/dist/utils/types.d.ts +94 -0
  80. package/dist/utils/types.d.ts.map +1 -0
  81. package/dist/utils/types.js +13 -0
  82. package/dist/utils/types.js.map +1 -0
  83. package/package.json +63 -0
@@ -0,0 +1,365 @@
1
+ {
2
+ "contractName": "ERC20Test",
3
+ "abi": [
4
+ {
5
+ "inputs": [
6
+ {
7
+ "internalType": "string",
8
+ "name": "name",
9
+ "type": "string"
10
+ },
11
+ {
12
+ "internalType": "string",
13
+ "name": "symbol",
14
+ "type": "string"
15
+ },
16
+ {
17
+ "internalType": "uint256",
18
+ "name": "totalSupply",
19
+ "type": "uint256"
20
+ },
21
+ {
22
+ "internalType": "uint8",
23
+ "name": "__decimals",
24
+ "type": "uint8"
25
+ }
26
+ ],
27
+ "stateMutability": "nonpayable",
28
+ "type": "constructor"
29
+ },
30
+ {
31
+ "anonymous": false,
32
+ "inputs": [
33
+ {
34
+ "indexed": true,
35
+ "internalType": "address",
36
+ "name": "owner",
37
+ "type": "address"
38
+ },
39
+ {
40
+ "indexed": true,
41
+ "internalType": "address",
42
+ "name": "spender",
43
+ "type": "address"
44
+ },
45
+ {
46
+ "indexed": false,
47
+ "internalType": "uint256",
48
+ "name": "value",
49
+ "type": "uint256"
50
+ }
51
+ ],
52
+ "name": "Approval",
53
+ "type": "event"
54
+ },
55
+ {
56
+ "anonymous": false,
57
+ "inputs": [
58
+ {
59
+ "indexed": true,
60
+ "internalType": "address",
61
+ "name": "from",
62
+ "type": "address"
63
+ },
64
+ {
65
+ "indexed": true,
66
+ "internalType": "address",
67
+ "name": "to",
68
+ "type": "address"
69
+ },
70
+ {
71
+ "indexed": false,
72
+ "internalType": "uint256",
73
+ "name": "value",
74
+ "type": "uint256"
75
+ }
76
+ ],
77
+ "name": "Transfer",
78
+ "type": "event"
79
+ },
80
+ {
81
+ "inputs": [],
82
+ "name": "_decimals",
83
+ "outputs": [
84
+ {
85
+ "internalType": "uint8",
86
+ "name": "",
87
+ "type": "uint8"
88
+ }
89
+ ],
90
+ "stateMutability": "view",
91
+ "type": "function"
92
+ },
93
+ {
94
+ "inputs": [
95
+ {
96
+ "internalType": "address",
97
+ "name": "owner",
98
+ "type": "address"
99
+ },
100
+ {
101
+ "internalType": "address",
102
+ "name": "spender",
103
+ "type": "address"
104
+ }
105
+ ],
106
+ "name": "allowance",
107
+ "outputs": [
108
+ {
109
+ "internalType": "uint256",
110
+ "name": "",
111
+ "type": "uint256"
112
+ }
113
+ ],
114
+ "stateMutability": "view",
115
+ "type": "function"
116
+ },
117
+ {
118
+ "inputs": [
119
+ {
120
+ "internalType": "address",
121
+ "name": "spender",
122
+ "type": "address"
123
+ },
124
+ {
125
+ "internalType": "uint256",
126
+ "name": "amount",
127
+ "type": "uint256"
128
+ }
129
+ ],
130
+ "name": "approve",
131
+ "outputs": [
132
+ {
133
+ "internalType": "bool",
134
+ "name": "",
135
+ "type": "bool"
136
+ }
137
+ ],
138
+ "stateMutability": "nonpayable",
139
+ "type": "function"
140
+ },
141
+ {
142
+ "inputs": [
143
+ {
144
+ "internalType": "address",
145
+ "name": "account",
146
+ "type": "address"
147
+ }
148
+ ],
149
+ "name": "balanceOf",
150
+ "outputs": [
151
+ {
152
+ "internalType": "uint256",
153
+ "name": "",
154
+ "type": "uint256"
155
+ }
156
+ ],
157
+ "stateMutability": "view",
158
+ "type": "function"
159
+ },
160
+ {
161
+ "inputs": [
162
+ {
163
+ "internalType": "address",
164
+ "name": "account",
165
+ "type": "address"
166
+ },
167
+ {
168
+ "internalType": "uint256",
169
+ "name": "amount",
170
+ "type": "uint256"
171
+ }
172
+ ],
173
+ "name": "burnFrom",
174
+ "outputs": [],
175
+ "stateMutability": "nonpayable",
176
+ "type": "function"
177
+ },
178
+ {
179
+ "inputs": [],
180
+ "name": "decimals",
181
+ "outputs": [
182
+ {
183
+ "internalType": "uint8",
184
+ "name": "",
185
+ "type": "uint8"
186
+ }
187
+ ],
188
+ "stateMutability": "view",
189
+ "type": "function"
190
+ },
191
+ {
192
+ "inputs": [
193
+ {
194
+ "internalType": "address",
195
+ "name": "spender",
196
+ "type": "address"
197
+ },
198
+ {
199
+ "internalType": "uint256",
200
+ "name": "subtractedValue",
201
+ "type": "uint256"
202
+ }
203
+ ],
204
+ "name": "decreaseAllowance",
205
+ "outputs": [
206
+ {
207
+ "internalType": "bool",
208
+ "name": "",
209
+ "type": "bool"
210
+ }
211
+ ],
212
+ "stateMutability": "nonpayable",
213
+ "type": "function"
214
+ },
215
+ {
216
+ "inputs": [
217
+ {
218
+ "internalType": "address",
219
+ "name": "spender",
220
+ "type": "address"
221
+ },
222
+ {
223
+ "internalType": "uint256",
224
+ "name": "addedValue",
225
+ "type": "uint256"
226
+ }
227
+ ],
228
+ "name": "increaseAllowance",
229
+ "outputs": [
230
+ {
231
+ "internalType": "bool",
232
+ "name": "",
233
+ "type": "bool"
234
+ }
235
+ ],
236
+ "stateMutability": "nonpayable",
237
+ "type": "function"
238
+ },
239
+ {
240
+ "inputs": [
241
+ {
242
+ "internalType": "uint256",
243
+ "name": "amount",
244
+ "type": "uint256"
245
+ }
246
+ ],
247
+ "name": "mint",
248
+ "outputs": [],
249
+ "stateMutability": "nonpayable",
250
+ "type": "function"
251
+ },
252
+ {
253
+ "inputs": [
254
+ {
255
+ "internalType": "address",
256
+ "name": "account",
257
+ "type": "address"
258
+ },
259
+ {
260
+ "internalType": "uint256",
261
+ "name": "amount",
262
+ "type": "uint256"
263
+ }
264
+ ],
265
+ "name": "mintTo",
266
+ "outputs": [],
267
+ "stateMutability": "nonpayable",
268
+ "type": "function"
269
+ },
270
+ {
271
+ "inputs": [],
272
+ "name": "name",
273
+ "outputs": [
274
+ {
275
+ "internalType": "string",
276
+ "name": "",
277
+ "type": "string"
278
+ }
279
+ ],
280
+ "stateMutability": "view",
281
+ "type": "function"
282
+ },
283
+ {
284
+ "inputs": [],
285
+ "name": "symbol",
286
+ "outputs": [
287
+ {
288
+ "internalType": "string",
289
+ "name": "",
290
+ "type": "string"
291
+ }
292
+ ],
293
+ "stateMutability": "view",
294
+ "type": "function"
295
+ },
296
+ {
297
+ "inputs": [],
298
+ "name": "totalSupply",
299
+ "outputs": [
300
+ {
301
+ "internalType": "uint256",
302
+ "name": "",
303
+ "type": "uint256"
304
+ }
305
+ ],
306
+ "stateMutability": "view",
307
+ "type": "function"
308
+ },
309
+ {
310
+ "inputs": [
311
+ {
312
+ "internalType": "address",
313
+ "name": "to",
314
+ "type": "address"
315
+ },
316
+ {
317
+ "internalType": "uint256",
318
+ "name": "amount",
319
+ "type": "uint256"
320
+ }
321
+ ],
322
+ "name": "transfer",
323
+ "outputs": [
324
+ {
325
+ "internalType": "bool",
326
+ "name": "",
327
+ "type": "bool"
328
+ }
329
+ ],
330
+ "stateMutability": "nonpayable",
331
+ "type": "function"
332
+ },
333
+ {
334
+ "inputs": [
335
+ {
336
+ "internalType": "address",
337
+ "name": "from",
338
+ "type": "address"
339
+ },
340
+ {
341
+ "internalType": "address",
342
+ "name": "to",
343
+ "type": "address"
344
+ },
345
+ {
346
+ "internalType": "uint256",
347
+ "name": "amount",
348
+ "type": "uint256"
349
+ }
350
+ ],
351
+ "name": "transferFrom",
352
+ "outputs": [
353
+ {
354
+ "internalType": "bool",
355
+ "name": "",
356
+ "type": "bool"
357
+ }
358
+ ],
359
+ "stateMutability": "nonpayable",
360
+ "type": "function"
361
+ }
362
+ ],
363
+ "bytecode": "0x60a06040523480156200001157600080fd5b50d380156200001f57600080fd5b50d280156200002d57600080fd5b506040516200134738038062001347833981016040819052620000509162000222565b838360036200006083826200033f565b5060046200006f82826200033f565b50505060ff81166080526200008533836200008f565b5050505062000433565b6001600160a01b038216620000ea5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000fe91906200040b565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200018257600080fd5b81516001600160401b03808211156200019f576200019f6200015a565b604051601f8301601f19908116603f01168101908282118183101715620001ca57620001ca6200015a565b8160405283815260209250866020858801011115620001e857600080fd5b600091505b838210156200020c5785820183015181830184015290820190620001ed565b6000602085830101528094505050505092915050565b600080600080608085870312156200023957600080fd5b84516001600160401b03808211156200025157600080fd5b6200025f8883890162000170565b955060208701519150808211156200027657600080fd5b50620002858782880162000170565b93505060408501519150606085015160ff81168114620002a457600080fd5b939692955090935050565b600181811c90821680620002c457607f821691505b602082108103620002e557634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111562000155576000816000526020600020601f850160051c81016020861015620003165750805b601f850160051c820191505b81811015620003375782815560010162000322565b505050505050565b81516001600160401b038111156200035b576200035b6200015a565b62000373816200036c8454620002af565b84620002eb565b602080601f831160018114620003ab5760008415620003925750858301515b600019600386901b1c1916600185901b17855562000337565b600085815260208120601f198616915b82811015620003dc57888601518255948401946001909101908401620003bb565b5085821015620003fb5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200042d57634e487b7160e01b600052601160045260246000fd5b92915050565b608051610ef1620004566000396000818161017c01526101b30152610ef16000f3fe608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b506004361061010f5760003560e01c8063449a52f8116100b1578063a0712d6811610080578063a0712d681461024e578063a457c2d714610261578063a9059cbb14610274578063dd62ed3e1461028757600080fd5b8063449a52f8146101e857806370a08231146101fd57806379cc67901461023357806395d89b411461024657600080fd5b806323b872dd116100ed57806323b872dd14610167578063313ce5671461017a57806332424aa3146101ae57806339509351146101d557600080fd5b806306fdde0314610114578063095ea7b31461013257806318160ddd14610155575b600080fd5b61011c6102cd565b6040516101299190610caa565b60405180910390f35b610145610140366004610d5a565b61035f565b6040519015158152602001610129565b6002545b604051908152602001610129565b610145610175366004610d84565b610379565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff9091168152602001610129565b61019c7f000000000000000000000000000000000000000000000000000000000000000081565b6101456101e3366004610d5a565b61039d565b6101fb6101f6366004610d5a565b6103e9565b005b61015961020b366004610dc0565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6101fb610241366004610d5a565b6103f7565b61011c610401565b6101fb61025c366004610de2565b610410565b61014561026f366004610d5a565b61041d565b610145610282366004610d5a565b6104f3565b610159610295366004610dfb565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102dc90610e2e565b80601f016020809104026020016040519081016040528092919081815260200182805461030890610e2e565b80156103555780601f1061032a57610100808354040283529160200191610355565b820191906000526020600020905b81548152906001019060200180831161033857829003601f168201915b5050505050905090565b60003361036d818585610501565b60019150505b92915050565b6000336103878582856106b5565b61039285858561078c565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061036d90829086906103e4908790610e81565b610501565b6103f382826109fb565b5050565b6103f38282610aee565b6060600480546102dc90610e2e565b61041a33826109fb565b50565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6103928286868403610501565b60003361036d81858561078c565b73ffffffffffffffffffffffffffffffffffffffff83166105a3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff8216610646576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107865781811015610779576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016104dd565b6107868484848403610501565b50505050565b73ffffffffffffffffffffffffffffffffffffffff831661082f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff82166108d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610988576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610786565b73ffffffffffffffffffffffffffffffffffffffff8216610a78576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016104dd565b8060026000828254610a8a9190610e81565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8216610b91576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604090205481811015610c47576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff83166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016106a8565b60006020808352835180602085015260005b81811015610cd857858101830151858201604001528201610cbc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b6000813574ffffffffffffffffffffffffffffffffffffffffff81168114610d3e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff1692915050565b60008060408385031215610d6d57600080fd5b610d7683610d17565b946020939093013593505050565b600080600060608486031215610d9957600080fd5b610da284610d17565b9250610db060208501610d17565b9150604084013590509250925092565b600060208284031215610dd257600080fd5b610ddb82610d17565b9392505050565b600060208284031215610df457600080fd5b5035919050565b60008060408385031215610e0e57600080fd5b610e1783610d17565b9150610e2560208401610d17565b90509250929050565b600181811c90821680610e4257607f821691505b602082108103610e7b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b80820180821115610373577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea26474726f6e582212206c8db0d06a5ba6942bbf966ba8e179193fe1c922bbbd8ceb72e8719e2be4bd7564736f6c63430008160033",
364
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b506004361061010f5760003560e01c8063449a52f8116100b1578063a0712d6811610080578063a0712d681461024e578063a457c2d714610261578063a9059cbb14610274578063dd62ed3e1461028757600080fd5b8063449a52f8146101e857806370a08231146101fd57806379cc67901461023357806395d89b411461024657600080fd5b806323b872dd116100ed57806323b872dd14610167578063313ce5671461017a57806332424aa3146101ae57806339509351146101d557600080fd5b806306fdde0314610114578063095ea7b31461013257806318160ddd14610155575b600080fd5b61011c6102cd565b6040516101299190610caa565b60405180910390f35b610145610140366004610d5a565b61035f565b6040519015158152602001610129565b6002545b604051908152602001610129565b610145610175366004610d84565b610379565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff9091168152602001610129565b61019c7f000000000000000000000000000000000000000000000000000000000000000081565b6101456101e3366004610d5a565b61039d565b6101fb6101f6366004610d5a565b6103e9565b005b61015961020b366004610dc0565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6101fb610241366004610d5a565b6103f7565b61011c610401565b6101fb61025c366004610de2565b610410565b61014561026f366004610d5a565b61041d565b610145610282366004610d5a565b6104f3565b610159610295366004610dfb565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102dc90610e2e565b80601f016020809104026020016040519081016040528092919081815260200182805461030890610e2e565b80156103555780601f1061032a57610100808354040283529160200191610355565b820191906000526020600020905b81548152906001019060200180831161033857829003601f168201915b5050505050905090565b60003361036d818585610501565b60019150505b92915050565b6000336103878582856106b5565b61039285858561078c565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061036d90829086906103e4908790610e81565b610501565b6103f382826109fb565b5050565b6103f38282610aee565b6060600480546102dc90610e2e565b61041a33826109fb565b50565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6103928286868403610501565b60003361036d81858561078c565b73ffffffffffffffffffffffffffffffffffffffff83166105a3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff8216610646576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107865781811015610779576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016104dd565b6107868484848403610501565b50505050565b73ffffffffffffffffffffffffffffffffffffffff831661082f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff82166108d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610988576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610786565b73ffffffffffffffffffffffffffffffffffffffff8216610a78576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016104dd565b8060026000828254610a8a9190610e81565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8216610b91576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604090205481811015610c47576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016104dd565b73ffffffffffffffffffffffffffffffffffffffff83166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016106a8565b60006020808352835180602085015260005b81811015610cd857858101830151858201604001528201610cbc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b6000813574ffffffffffffffffffffffffffffffffffffffffff81168114610d3e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff1692915050565b60008060408385031215610d6d57600080fd5b610d7683610d17565b946020939093013593505050565b600080600060608486031215610d9957600080fd5b610da284610d17565b9250610db060208501610d17565b9150604084013590509250925092565b600060208284031215610dd257600080fd5b610ddb82610d17565b9392505050565b600060208284031215610df457600080fd5b5035919050565b60008060408385031215610e0e57600080fd5b610e1783610d17565b9150610e2560208401610d17565b90509250929050565b600181811c90821680610e4257607f821691505b602082108103610e7b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b80820180821115610373577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea26474726f6e582212206c8db0d06a5ba6942bbf966ba8e179193fe1c922bbbd8ceb72e8719e2be4bd7564736f6c63430008160033"
365
+ }