@aztec/l1-artifacts 3.0.0-nightly.20251015 → 3.0.0-nightly.20251022

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 (35) hide show
  1. package/dest/CoinIssuerAbi.d.ts +56 -21
  2. package/dest/CoinIssuerAbi.d.ts.map +1 -1
  3. package/dest/CoinIssuerAbi.js +69 -24
  4. package/dest/CoinIssuerBytecode.d.ts +1 -1
  5. package/dest/CoinIssuerBytecode.d.ts.map +1 -1
  6. package/dest/CoinIssuerBytecode.js +1 -1
  7. package/dest/HonkVerifierBytecode.d.ts +1 -1
  8. package/dest/HonkVerifierBytecode.d.ts.map +1 -1
  9. package/dest/HonkVerifierBytecode.js +1 -1
  10. package/dest/MockZKPassportVerifierAbi.d.ts +48 -33
  11. package/dest/MockZKPassportVerifierAbi.d.ts.map +1 -1
  12. package/dest/MockZKPassportVerifierAbi.js +60 -39
  13. package/dest/MockZKPassportVerifierBytecode.d.ts +1 -1
  14. package/dest/MockZKPassportVerifierBytecode.d.ts.map +1 -1
  15. package/dest/MockZKPassportVerifierBytecode.js +1 -1
  16. package/dest/RollupBytecode.d.ts +1 -1
  17. package/dest/RollupBytecode.js +1 -1
  18. package/dest/StakingAssetHandlerAbi.d.ts +72 -53
  19. package/dest/StakingAssetHandlerAbi.d.ts.map +1 -1
  20. package/dest/StakingAssetHandlerAbi.js +91 -65
  21. package/dest/StakingAssetHandlerBytecode.d.ts +1 -1
  22. package/dest/StakingAssetHandlerBytecode.d.ts.map +1 -1
  23. package/dest/StakingAssetHandlerBytecode.js +1 -1
  24. package/dest/TallySlasherDeploymentExtLibBytecode.d.ts +1 -1
  25. package/dest/TallySlasherDeploymentExtLibBytecode.d.ts.map +1 -1
  26. package/dest/TallySlasherDeploymentExtLibBytecode.js +1 -1
  27. package/dest/TallySlashingProposerAbi.d.ts +18 -4
  28. package/dest/TallySlashingProposerAbi.d.ts.map +1 -1
  29. package/dest/TallySlashingProposerAbi.js +24 -5
  30. package/dest/TallySlashingProposerBytecode.d.ts +1 -1
  31. package/dest/TallySlashingProposerBytecode.d.ts.map +1 -1
  32. package/dest/TallySlashingProposerBytecode.js +1 -1
  33. package/dest/checksum.d.ts +1 -1
  34. package/dest/checksum.js +1 -1
  35. package/package.json +1 -1
@@ -11,6 +11,16 @@ export declare const CoinIssuerAbi: readonly [{
11
11
  readonly internalType: "contract IMintableERC20";
12
12
  }];
13
13
  readonly stateMutability: "view";
14
+ }, {
15
+ readonly type: "function";
16
+ readonly name: "DEPLOYMENT_TIME";
17
+ readonly inputs: readonly [];
18
+ readonly outputs: readonly [{
19
+ readonly name: "";
20
+ readonly type: "uint256";
21
+ readonly internalType: "uint256";
22
+ }];
23
+ readonly stateMutability: "view";
14
24
  }, {
15
25
  readonly type: "error";
16
26
  readonly name: "DevNet__NoPruningAllowed";
@@ -139,6 +149,16 @@ export declare const CoinIssuerAbi: readonly [{
139
149
  readonly type: "error";
140
150
  readonly name: "MerkleLib__InvalidIndexForPathLength";
141
151
  readonly inputs: readonly [];
152
+ }, {
153
+ readonly type: "function";
154
+ readonly name: "NOMINAL_ANNUAL_PERCENTAGE_CAP";
155
+ readonly inputs: readonly [];
156
+ readonly outputs: readonly [{
157
+ readonly name: "";
158
+ readonly type: "uint256";
159
+ readonly internalType: "uint256";
160
+ }];
161
+ readonly stateMutability: "view";
142
162
  }, {
143
163
  readonly type: "error";
144
164
  readonly name: "Outbox__InvalidChainId";
@@ -151,16 +171,6 @@ export declare const CoinIssuerAbi: readonly [{
151
171
  readonly type: "error";
152
172
  readonly name: "Outbox__Unauthorized";
153
173
  readonly inputs: readonly [];
154
- }, {
155
- readonly type: "function";
156
- readonly name: "RATE";
157
- readonly inputs: readonly [];
158
- readonly outputs: readonly [{
159
- readonly name: "";
160
- readonly type: "uint256";
161
- readonly internalType: "uint256";
162
- }];
163
- readonly stateMutability: "view";
164
174
  }, {
165
175
  readonly type: "error";
166
176
  readonly name: "Registry__NoRollupsRegistered";
@@ -293,7 +303,7 @@ export declare const CoinIssuerAbi: readonly [{
293
303
  readonly stateMutability: "nonpayable";
294
304
  }, {
295
305
  readonly type: "function";
296
- readonly name: "mintAvailable";
306
+ readonly name: "cachedBudget";
297
307
  readonly inputs: readonly [];
298
308
  readonly outputs: readonly [{
299
309
  readonly name: "";
@@ -303,30 +313,40 @@ export declare const CoinIssuerAbi: readonly [{
303
313
  readonly stateMutability: "view";
304
314
  }, {
305
315
  readonly type: "function";
306
- readonly name: "owner";
316
+ readonly name: "cachedBudgetYear";
307
317
  readonly inputs: readonly [];
308
318
  readonly outputs: readonly [{
309
319
  readonly name: "";
310
- readonly type: "address";
311
- readonly internalType: "address";
320
+ readonly type: "uint256";
321
+ readonly internalType: "uint256";
312
322
  }];
313
323
  readonly stateMutability: "view";
314
324
  }, {
315
325
  readonly type: "function";
316
- readonly name: "renounceOwnership";
326
+ readonly name: "mintAvailable";
317
327
  readonly inputs: readonly [];
318
- readonly outputs: readonly [];
319
- readonly stateMutability: "nonpayable";
328
+ readonly outputs: readonly [{
329
+ readonly name: "";
330
+ readonly type: "uint256";
331
+ readonly internalType: "uint256";
332
+ }];
333
+ readonly stateMutability: "view";
320
334
  }, {
321
335
  readonly type: "function";
322
- readonly name: "timeOfLastMint";
336
+ readonly name: "owner";
323
337
  readonly inputs: readonly [];
324
338
  readonly outputs: readonly [{
325
339
  readonly name: "";
326
- readonly type: "uint256";
327
- readonly internalType: "uint256";
340
+ readonly type: "address";
341
+ readonly internalType: "address";
328
342
  }];
329
343
  readonly stateMutability: "view";
344
+ }, {
345
+ readonly type: "function";
346
+ readonly name: "renounceOwnership";
347
+ readonly inputs: readonly [];
348
+ readonly outputs: readonly [];
349
+ readonly stateMutability: "nonpayable";
330
350
  }, {
331
351
  readonly type: "error";
332
352
  readonly name: "AttestationLib__NotASignatureAtIndex";
@@ -905,6 +925,21 @@ export declare const CoinIssuerAbi: readonly [{
905
925
  readonly type: "uint256";
906
926
  readonly internalType: "uint256";
907
927
  }];
928
+ }, {
929
+ readonly type: "event";
930
+ readonly name: "BudgetReset";
931
+ readonly inputs: readonly [{
932
+ readonly name: "newYear";
933
+ readonly type: "uint256";
934
+ readonly indexed: true;
935
+ readonly internalType: "uint256";
936
+ }, {
937
+ readonly name: "newBudget";
938
+ readonly type: "uint256";
939
+ readonly indexed: false;
940
+ readonly internalType: "uint256";
941
+ }];
942
+ readonly anonymous: false;
908
943
  }, {
909
944
  readonly type: "error";
910
945
  readonly name: "CoinIssuer__InsufficientMintAvailable";
@@ -1841,7 +1876,7 @@ export declare const CoinIssuerAbi: readonly [{
1841
1876
  readonly type: "address";
1842
1877
  readonly internalType: "contract IMintableERC20";
1843
1878
  }, {
1844
- readonly name: "_rate";
1879
+ readonly name: "_annualPercentage";
1845
1880
  readonly type: "uint256";
1846
1881
  readonly internalType: "uint256";
1847
1882
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"CoinIssuerAbi.d.ts","sourceRoot":"","sources":["../src/CoinIssuerAbi.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwkFhB,CAAC"}
1
+ {"version":3,"file":"CoinIssuerAbi.d.ts","sourceRoot":"","sources":["../src/CoinIssuerAbi.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqnFhB,CAAC"}
@@ -14,6 +14,19 @@
14
14
  ],
15
15
  "stateMutability": "view"
16
16
  },
17
+ {
18
+ "type": "function",
19
+ "name": "DEPLOYMENT_TIME",
20
+ "inputs": [],
21
+ "outputs": [
22
+ {
23
+ "name": "",
24
+ "type": "uint256",
25
+ "internalType": "uint256"
26
+ }
27
+ ],
28
+ "stateMutability": "view"
29
+ },
17
30
  {
18
31
  "type": "error",
19
32
  "name": "DevNet__NoPruningAllowed",
@@ -174,6 +187,19 @@
174
187
  "name": "MerkleLib__InvalidIndexForPathLength",
175
188
  "inputs": []
176
189
  },
190
+ {
191
+ "type": "function",
192
+ "name": "NOMINAL_ANNUAL_PERCENTAGE_CAP",
193
+ "inputs": [],
194
+ "outputs": [
195
+ {
196
+ "name": "",
197
+ "type": "uint256",
198
+ "internalType": "uint256"
199
+ }
200
+ ],
201
+ "stateMutability": "view"
202
+ },
177
203
  {
178
204
  "type": "error",
179
205
  "name": "Outbox__InvalidChainId",
@@ -189,19 +215,6 @@
189
215
  "name": "Outbox__Unauthorized",
190
216
  "inputs": []
191
217
  },
192
- {
193
- "type": "function",
194
- "name": "RATE",
195
- "inputs": [],
196
- "outputs": [
197
- {
198
- "name": "",
199
- "type": "uint256",
200
- "internalType": "uint256"
201
- }
202
- ],
203
- "stateMutability": "view"
204
- },
205
218
  {
206
219
  "type": "error",
207
220
  "name": "Registry__NoRollupsRegistered",
@@ -366,7 +379,7 @@
366
379
  },
367
380
  {
368
381
  "type": "function",
369
- "name": "mintAvailable",
382
+ "name": "cachedBudget",
370
383
  "inputs": [],
371
384
  "outputs": [
372
385
  {
@@ -379,37 +392,50 @@
379
392
  },
380
393
  {
381
394
  "type": "function",
382
- "name": "owner",
395
+ "name": "cachedBudgetYear",
383
396
  "inputs": [],
384
397
  "outputs": [
385
398
  {
386
399
  "name": "",
387
- "type": "address",
388
- "internalType": "address"
400
+ "type": "uint256",
401
+ "internalType": "uint256"
389
402
  }
390
403
  ],
391
404
  "stateMutability": "view"
392
405
  },
393
406
  {
394
407
  "type": "function",
395
- "name": "renounceOwnership",
408
+ "name": "mintAvailable",
396
409
  "inputs": [],
397
- "outputs": [],
398
- "stateMutability": "nonpayable"
410
+ "outputs": [
411
+ {
412
+ "name": "",
413
+ "type": "uint256",
414
+ "internalType": "uint256"
415
+ }
416
+ ],
417
+ "stateMutability": "view"
399
418
  },
400
419
  {
401
420
  "type": "function",
402
- "name": "timeOfLastMint",
421
+ "name": "owner",
403
422
  "inputs": [],
404
423
  "outputs": [
405
424
  {
406
425
  "name": "",
407
- "type": "uint256",
408
- "internalType": "uint256"
426
+ "type": "address",
427
+ "internalType": "address"
409
428
  }
410
429
  ],
411
430
  "stateMutability": "view"
412
431
  },
432
+ {
433
+ "type": "function",
434
+ "name": "renounceOwnership",
435
+ "inputs": [],
436
+ "outputs": [],
437
+ "stateMutability": "nonpayable"
438
+ },
413
439
  {
414
440
  "type": "error",
415
441
  "name": "AttestationLib__NotASignatureAtIndex",
@@ -1202,6 +1228,25 @@
1202
1228
  }
1203
1229
  ]
1204
1230
  },
1231
+ {
1232
+ "type": "event",
1233
+ "name": "BudgetReset",
1234
+ "inputs": [
1235
+ {
1236
+ "name": "newYear",
1237
+ "type": "uint256",
1238
+ "indexed": true,
1239
+ "internalType": "uint256"
1240
+ },
1241
+ {
1242
+ "name": "newBudget",
1243
+ "type": "uint256",
1244
+ "indexed": false,
1245
+ "internalType": "uint256"
1246
+ }
1247
+ ],
1248
+ "anonymous": false
1249
+ },
1205
1250
  {
1206
1251
  "type": "error",
1207
1252
  "name": "CoinIssuer__InsufficientMintAvailable",
@@ -2448,7 +2493,7 @@
2448
2493
  "internalType": "contract IMintableERC20"
2449
2494
  },
2450
2495
  {
2451
- "name": "_rate",
2496
+ "name": "_annualPercentage",
2452
2497
  "type": "uint256",
2453
2498
  "internalType": "uint256"
2454
2499
  },
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * CoinIssuer bytecode.
3
3
  */
4
- export declare const CoinIssuerBytecode = "0x60c060405234801561000f575f5ffd5b506040516105eb3803806105eb83398101604081905261002e916100e7565b806001600160a01b03811661005c57604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b61006581610081565b50506001600160a01b0390911660805260a05242600155610127565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146100e4575f5ffd5b50565b5f5f5f606084860312156100f9575f5ffd5b8351610104816100d0565b60208501516040860151919450925061011c816100d0565b809150509250925092565b60805160a05161049061015b5f395f818160fa01526102d201525f818160b601528181610170015261024e01526104905ff3fe608060405234801561000f575f5ffd5b5060043610610090575f3560e01c8063715018a611610063578063715018a61461012a5780638da5cb5b1461013257806399f19cea14610142578063f2fde38b1461014a578063fc8ceea51461015d575f5ffd5b806338a5e0161461009457806340c10f191461009e5780634800d97f146100b1578063664e9704146100f5575b5f5ffd5b61009c610166565b005b61009c6100ac3660046103ce565b6101de565b6100d87f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61011c7f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100ec565b61009c6102aa565b5f546001600160a01b03166100d8565b61011c6102bd565b61009c6101583660046103f6565b6102fb565b61011c60015481565b61016e610338565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166379ba50976040518163ffffffff1660e01b81526004015f604051808303815f87803b1580156101c6575f5ffd5b505af11580156101d8573d5f5f3e3d5ffd5b50505050565b6101e6610338565b5f6101ef6102bd565b90508082818111156102225760405163a1cc879960e01b8152600481019290925260248201526044015b60405180910390fd5b5050426001556040516340c10f1960e01b81526001600160a01b038481166004830152602482018490527f000000000000000000000000000000000000000000000000000000000000000016906340c10f19906044015f604051808303815f87803b15801561028f575f5ffd5b505af11580156102a1573d5f5f3e3d5ffd5b50505050505050565b6102b2610338565b6102bb5f610364565b565b5f600154426102cc919061042a565b6102f6907f0000000000000000000000000000000000000000000000000000000000000000610443565b905090565b610303610338565b6001600160a01b03811661032c57604051631e4fbdf760e01b81525f6004820152602401610219565b61033581610364565b50565b5f546001600160a01b031633146102bb5760405163118cdaa760e01b8152336004820152602401610219565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b03811681146103c9575f5ffd5b919050565b5f5f604083850312156103df575f5ffd5b6103e8836103b3565b946020939093013593505050565b5f60208284031215610406575f5ffd5b61040f826103b3565b9392505050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561043d5761043d610416565b92915050565b808202811582820484141761043d5761043d61041656fea2646970667358221220b282060dfef9ebf6d9478532417196ffc4946db6042d3f96d471e971a5ee4f0964736f6c634300081b0033";
4
+ export declare const CoinIssuerBytecode = "0x60e060405234801561000f575f5ffd5b506040516108ff3803806108ff83398101604081905261002e916101b8565b806001600160a01b03811661005c57604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b610065816100ca565b506001600160a01b03831660805260a08290524260c0525f600155610088610119565b60028190556040519081525f907ffb91318ed7011180131879440182ebbbabf3d0ccf88ccaab0a75cc28aa00c2179060200160405180910390a2505050610257565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f670de0b6b3a764000060a0516080516001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610164573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061018891906101f8565b610192919061020f565b61019c9190610238565b905090565b6001600160a01b03811681146101b5575f5ffd5b50565b5f5f5f606084860312156101ca575f5ffd5b83516101d5816101a1565b6020850151604086015191945092506101ed816101a1565b809150509250925092565b5f60208284031215610208575f5ffd5b5051919050565b808202811582820484141761023257634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8261025257634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c05161065c6102a35f395f8181610177015261046001525f818161012f01526104a001525f818160e8015281816101b6015281816102a501526104c1015261065c5ff3fe608060405234801561000f575f5ffd5b50600436106100a6575f3560e01c806372c908bc1161006e57806372c908bc1461012a57806378acc00a146101515780638da5cb5b1461015a57806399f19cea1461016a578063e84721cb14610172578063f2fde38b14610199575f5ffd5b806319308f68146100aa57806338a5e016146100c657806340c10f19146100d05780634800d97f146100e3578063715018a614610122575b5f5ffd5b6100b360015481565b6040519081526020015b60405180910390f35b6100ce6101ac565b005b6100ce6100de366004610564565b610224565b61010a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100bd565b6100ce610300565b6100b37f000000000000000000000000000000000000000000000000000000000000000081565b6100b360025481565b5f546001600160a01b031661010a565b6100b3610313565b6100b37f000000000000000000000000000000000000000000000000000000000000000081565b6100ce6101a736600461058c565b61033e565b6101b461037b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166379ba50976040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561020c575f5ffd5b505af115801561021e573d5f5f3e3d5ffd5b50505050565b61022c61037b565b6102346103a7565b60025481818111156102675760405163a1cc879960e01b8152600481019290925260248201526044015b60405180910390fd5b50508060025f82825461027a91906105c0565b90915550506040516340c10f1960e01b81526001600160a01b038381166004830152602482018390527f000000000000000000000000000000000000000000000000000000000000000016906340c10f19906044015f604051808303815f87803b1580156102e6575f5ffd5b505af11580156102f8573d5f5f3e3d5ffd5b505050505050565b61030861037b565b6103115f610406565b565b5f5f61031d610455565b9050806001541061033057505060025490565b610338610494565b91505090565b61034661037b565b6001600160a01b03811661036f57604051631e4fbdf760e01b81525f600482015260240161025e565b61037881610406565b50565b5f546001600160a01b031633146103115760405163118cdaa760e01b815233600482015260240161025e565b5f6103b0610455565b90508060015410156103785760018190556103c9610494565b600281905560405190815281907ffb91318ed7011180131879440182ebbbabf3d0ccf88ccaab0a75cc28aa00c2179060200160405180910390a250565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f6301e133806104857f0000000000000000000000000000000000000000000000000000000000000000426105c0565b61048f91906105d9565b905090565b5f670de0b6b3a76400007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561051b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061053f91906105f8565b610485919061060f565b80356001600160a01b038116811461055f575f5ffd5b919050565b5f5f60408385031215610575575f5ffd5b61057e83610549565b946020939093013593505050565b5f6020828403121561059c575f5ffd5b6105a582610549565b9392505050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105d3576105d36105ac565b92915050565b5f826105f357634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215610608575f5ffd5b5051919050565b80820281158282048414176105d3576105d36105ac56fea264697066735822122006bcd5e0911fe92bf42346af75f1a6f0bdc01a794b04e45a3060eb210d250a5764736f6c634300081b0033";
5
5
  /**
6
6
  * CoinIssuer link references.
7
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"CoinIssuerBytecode.d.ts","sourceRoot":"","sources":["../src/CoinIssuerBytecode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,kBAAkB,69FAA69F,CAAC;AAC7/F;;GAEG;AACH,eAAO,MAAM,wBAAwB,IAAc,CAAC"}
1
+ {"version":3,"file":"CoinIssuerBytecode.d.ts","sourceRoot":"","sources":["../src/CoinIssuerBytecode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,kBAAkB,qgJAAqgJ,CAAC;AACriJ;;GAEG;AACH,eAAO,MAAM,wBAAwB,IAAc,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * CoinIssuer bytecode.
3
- */ export const CoinIssuerBytecode = "0x60c060405234801561000f575f5ffd5b506040516105eb3803806105eb83398101604081905261002e916100e7565b806001600160a01b03811661005c57604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b61006581610081565b50506001600160a01b0390911660805260a05242600155610127565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146100e4575f5ffd5b50565b5f5f5f606084860312156100f9575f5ffd5b8351610104816100d0565b60208501516040860151919450925061011c816100d0565b809150509250925092565b60805160a05161049061015b5f395f818160fa01526102d201525f818160b601528181610170015261024e01526104905ff3fe608060405234801561000f575f5ffd5b5060043610610090575f3560e01c8063715018a611610063578063715018a61461012a5780638da5cb5b1461013257806399f19cea14610142578063f2fde38b1461014a578063fc8ceea51461015d575f5ffd5b806338a5e0161461009457806340c10f191461009e5780634800d97f146100b1578063664e9704146100f5575b5f5ffd5b61009c610166565b005b61009c6100ac3660046103ce565b6101de565b6100d87f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61011c7f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100ec565b61009c6102aa565b5f546001600160a01b03166100d8565b61011c6102bd565b61009c6101583660046103f6565b6102fb565b61011c60015481565b61016e610338565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166379ba50976040518163ffffffff1660e01b81526004015f604051808303815f87803b1580156101c6575f5ffd5b505af11580156101d8573d5f5f3e3d5ffd5b50505050565b6101e6610338565b5f6101ef6102bd565b90508082818111156102225760405163a1cc879960e01b8152600481019290925260248201526044015b60405180910390fd5b5050426001556040516340c10f1960e01b81526001600160a01b038481166004830152602482018490527f000000000000000000000000000000000000000000000000000000000000000016906340c10f19906044015f604051808303815f87803b15801561028f575f5ffd5b505af11580156102a1573d5f5f3e3d5ffd5b50505050505050565b6102b2610338565b6102bb5f610364565b565b5f600154426102cc919061042a565b6102f6907f0000000000000000000000000000000000000000000000000000000000000000610443565b905090565b610303610338565b6001600160a01b03811661032c57604051631e4fbdf760e01b81525f6004820152602401610219565b61033581610364565b50565b5f546001600160a01b031633146102bb5760405163118cdaa760e01b8152336004820152602401610219565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b03811681146103c9575f5ffd5b919050565b5f5f604083850312156103df575f5ffd5b6103e8836103b3565b946020939093013593505050565b5f60208284031215610406575f5ffd5b61040f826103b3565b9392505050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561043d5761043d610416565b92915050565b808202811582820484141761043d5761043d61041656fea2646970667358221220b282060dfef9ebf6d9478532417196ffc4946db6042d3f96d471e971a5ee4f0964736f6c634300081b0033";
3
+ */ export const CoinIssuerBytecode = "0x60e060405234801561000f575f5ffd5b506040516108ff3803806108ff83398101604081905261002e916101b8565b806001600160a01b03811661005c57604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b610065816100ca565b506001600160a01b03831660805260a08290524260c0525f600155610088610119565b60028190556040519081525f907ffb91318ed7011180131879440182ebbbabf3d0ccf88ccaab0a75cc28aa00c2179060200160405180910390a2505050610257565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f670de0b6b3a764000060a0516080516001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610164573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061018891906101f8565b610192919061020f565b61019c9190610238565b905090565b6001600160a01b03811681146101b5575f5ffd5b50565b5f5f5f606084860312156101ca575f5ffd5b83516101d5816101a1565b6020850151604086015191945092506101ed816101a1565b809150509250925092565b5f60208284031215610208575f5ffd5b5051919050565b808202811582820484141761023257634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8261025257634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c05161065c6102a35f395f8181610177015261046001525f818161012f01526104a001525f818160e8015281816101b6015281816102a501526104c1015261065c5ff3fe608060405234801561000f575f5ffd5b50600436106100a6575f3560e01c806372c908bc1161006e57806372c908bc1461012a57806378acc00a146101515780638da5cb5b1461015a57806399f19cea1461016a578063e84721cb14610172578063f2fde38b14610199575f5ffd5b806319308f68146100aa57806338a5e016146100c657806340c10f19146100d05780634800d97f146100e3578063715018a614610122575b5f5ffd5b6100b360015481565b6040519081526020015b60405180910390f35b6100ce6101ac565b005b6100ce6100de366004610564565b610224565b61010a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100bd565b6100ce610300565b6100b37f000000000000000000000000000000000000000000000000000000000000000081565b6100b360025481565b5f546001600160a01b031661010a565b6100b3610313565b6100b37f000000000000000000000000000000000000000000000000000000000000000081565b6100ce6101a736600461058c565b61033e565b6101b461037b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166379ba50976040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561020c575f5ffd5b505af115801561021e573d5f5f3e3d5ffd5b50505050565b61022c61037b565b6102346103a7565b60025481818111156102675760405163a1cc879960e01b8152600481019290925260248201526044015b60405180910390fd5b50508060025f82825461027a91906105c0565b90915550506040516340c10f1960e01b81526001600160a01b038381166004830152602482018390527f000000000000000000000000000000000000000000000000000000000000000016906340c10f19906044015f604051808303815f87803b1580156102e6575f5ffd5b505af11580156102f8573d5f5f3e3d5ffd5b505050505050565b61030861037b565b6103115f610406565b565b5f5f61031d610455565b9050806001541061033057505060025490565b610338610494565b91505090565b61034661037b565b6001600160a01b03811661036f57604051631e4fbdf760e01b81525f600482015260240161025e565b61037881610406565b50565b5f546001600160a01b031633146103115760405163118cdaa760e01b815233600482015260240161025e565b5f6103b0610455565b90508060015410156103785760018190556103c9610494565b600281905560405190815281907ffb91318ed7011180131879440182ebbbabf3d0ccf88ccaab0a75cc28aa00c2179060200160405180910390a250565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f6301e133806104857f0000000000000000000000000000000000000000000000000000000000000000426105c0565b61048f91906105d9565b905090565b5f670de0b6b3a76400007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561051b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061053f91906105f8565b610485919061060f565b80356001600160a01b038116811461055f575f5ffd5b919050565b5f5f60408385031215610575575f5ffd5b61057e83610549565b946020939093013593505050565b5f6020828403121561059c575f5ffd5b6105a582610549565b9392505050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105d3576105d36105ac565b92915050565b5f826105f357634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215610608575f5ffd5b5051919050565b80820281158282048414176105d3576105d36105ac56fea264697066735822122006bcd5e0911fe92bf42346af75f1a6f0bdc01a794b04e45a3060eb210d250a5764736f6c634300081b0033";
4
4
  /**
5
5
  * CoinIssuer link references.
6
6
  */ export const CoinIssuerLinkReferences = {};
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * HonkVerifier bytecode.
3
3
  */
4
- export declare const HonkVerifierBytecode = "0x610100604052348015610010575f5ffd5b506302000000608052601960a0527f0c7c78c8bd7a775ec5a6737f0ad659073d421ffe3a00605692b8b5dc46caf11a60c05260ae60e05260805160a05160c05160e051615adb6100de5f395f818161018101526107ae01525f61016001525f8181605b01528181609401528181610101015281816101a2015281816108c7015281816109d401528181610a0001528181610a7a015281816112bb0152818161135b01528181611598015281816115e401528181611632015281816116890152612d5c01525f5050615adb5ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063ea50d0e41461002d575b5f5ffd5b61004061003b3660046156ff565b610054565b604051901515815260200160405180910390f35b5f5f61007f7f000000000000000000000000000000000000000000000000000000000000000061028c565b905061008c8160206157d7565b85146100ee577f0000000000000000000000000000000000000000000000000000000000000000856100bf8360206157d7565b6040516359895a5360e01b81526004810193909352602483019190915260448201526064015b60405180910390fd5b5f6100f761033a565b90505f61012588887f000000000000000000000000000000000000000000000000000000000000000061034f565b90506010826040015161013891906157ee565b85146101575760405163fa06659360e01b815260040160405180910390fd5b5f6101c68288887f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006106a6565b90506102168787808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152505085518551606081015160809091015191935091506001610758565b815160a001525f61022783836108bf565b905080610247576040516313f8744360e31b815260040160405180910390fd5b5f6102538486856109c0565b905080610273576040516352ec174560e11b815260040160405180910390fd5b81801561027d5750805b9b9a5050505050505050505050565b5f8061029a600260086157d7565b905060016102a96008856157d7565b6102b391906157d7565b6102bd9082615801565b90506102cb600160296157d7565b6102d59082615801565b905060026102e46001856157ee565b6102ee91906157d7565b6102f89082615801565b90506103056001846157d7565b61030f9082615801565b905061031c6002806157d7565b6103269082615801565b9050610333601082615801565b9392505050565b610342615207565b61034a61175b565b905090565b610357615391565b5f805b60108110156103b957610386868387610374602083615801565b9261038193929190615814565b612097565b835182601081106103995761039961583b565b6020020181815250506020826103af9190615801565b915060010161035a565b506103dd8582866103cb604083615801565b926103d893929190615814565b6120aa565b60208301526103ed604082615801565b90506104008582866103cb604083615801565b6040808401919091526104139082615801565b90506104268582866103cb604083615801565b6060830152610436604082615801565b90506104498582866103cb604083615801565b60c0830152610459604082615801565b905061046c8582866103cb604083615801565b60e083015261047c604082615801565b905061048f8582866103cb604083615801565b608083015261049f604082615801565b90506104b28582866103cb604083615801565b6101008301526104c3604082615801565b90506104d68582866103cb604083615801565b60a08301526104e6604082615801565b90505f5b83811015610564575f5b600881101561055b5761050e878488610374602083615801565b84610120015183601c81106105255761052561583b565b6020020151826008811061053b5761053b61583b565b6020020181815250506020836105519190615801565b92506001016104f4565b506001016104ea565b505f5b60298110156105b857610581868387610374602083615801565b83610140015182602981106105985761059861583b565b6020020181815250506020826105ae9190615801565b9150600101610567565b505f5b6105c66001856157ee565b81101561060f576105de8683876103cb604083615801565b83610160015182601b81106105f5576105f561583b565b6020020152610605604083615801565b91506001016105bb565b505f5b838110156106625761062b868387610374602083615801565b83610180015182601c81106106425761064261583b565b6020020181815250506020826106589190615801565b9150600101610612565b506106748582866103cb604083615801565b6101a0830152610685604082615801565b90506106988582866103cb604083615801565b6101c0830152509392505050565b6106ae615441565b5f6106bd88888888888661212c565b90835290506106cc8189612180565b602084019190915290506106e0818461232d565b604084019190915290506106f58882856123bc565b606084019190915290506107098882612490565b6080840191909152905061071e88828561251b565b60a0840191909152905061073388828561268f565b60c084019190915290506107478882612753565b5060e0830152509695505050505050565b5f60018082610785866107808961077b6107768a6310000000615801565b612790565b6127a8565b6127c3565b90505f6107a38761079e8a61077b6107768b6001615801565b6127dc565b90505f5b6107d260107f00000000000000000000000000000000000000000000000000000000000000006157ee565b81101561083f575f6107fc8c83815181106107ef576107ef61583b565b6020026020010151612804565b905061080c8661077b86846127c3565b955061081c8561077b85846127c3565b9450610828848b6127c3565b9350610834838b6127dc565b9250506001016107a7565b505f5b60108110156108a6575f8a826010811061085e5761085e61583b565b602002015190506108738661077b86846127c3565b95506108838561077b85846127c3565b945061088f848b6127c3565b935061089b838b6127dc565b925050600101610842565b506108b18484612819565b9a9950505050505050505050565b5f806001815b7f0000000000000000000000000000000000000000000000000000000000000000811015610996575f86610120015182601c81106109055761090561583b565b602002015190505f6109178286612827565b905080610937576040516313f8744360e31b815260040160405180910390fd5b5f876060015184601c811061094e5761094e61583b565b6020020151905061095f8382612847565b9550610986886040015185601c811061097a5761097a61583b565b602002015186836129f6565b94505050508060010190506108c5565b505f6109b0866101400151865f0151876020015185612a21565b90508281145b9695505050505050565b5f6109c961549a565b5f6109f88460a001517f0000000000000000000000000000000000000000000000000000000000000000612a9a565b90505f610a267f00000000000000000000000000000000000000000000000000000000000000006024615801565b610a31906002615801565b6001600160401b03811115610a4857610a4861584f565b604051908082528060200260200182016040528015610a71578160200160208202803683370190505b5090505f610aa07f00000000000000000000000000000000000000000000000000000000000000006024615801565b610aab906002615801565b6001600160401b03811115610ac257610ac261584f565b604051908082528060200260200182016040528015610afb57816020015b610ae861550a565b815260200190600190039081610ae05790505b509050610b2d610b288760e00151855f81518110610b1b57610b1b61583b565b60200260200101516127dc565b612b63565b84610120018181525050610b61610b288760e00151855f81518110610b5457610b5461583b565b60200260200101516127c3565b610140850181905261012085015160c0880151610b829261078091906127a8565b845260a0860151610bb290610b9690612b63565b61077b86610120015161079e8a60c001518961014001516127a8565b6020850152815160019083905f90610bcc57610bcc61583b565b602002602001018181525050876101a00151815f81518110610bf057610bf061583b565b6020908102919091010152600160a08501525f60c08501528351610c1390612bd3565b60408501526020840151610c2690612bd3565b606085015260015b60248111610cd157610c4885604001518660a001516127a8565b838281518110610c5a57610c5a61583b565b602002602001018181525050610ca38560c001516107808b6101400151600185610c8491906157ee565b60298110610c9457610c9461583b565b60200201518860a001516127a8565b60c086015260a08501516080880151610cbc91906127a8565b60a0860152610cca81615863565b9050610c2e565b505f5b6005811015610d9f575f610ce9601d83615801565b90505f610cf7602484615801565b9050610d28858381518110610d0e57610d0e61583b565b602002602001015161078089606001518a60a001516127a8565b858381518110610d3a57610d3a61583b565b602002602001018181525050610d778760c001516107808d61014001518460298110610d6857610d6861583b565b60200201518a60a001516127a8565b60c088015260a087015160808a0151610d9091906127a8565b60a08801525050600101610cd4565b50866060015181600181518110610db857610db861583b565b6020026020010181905250866080015181600281518110610ddb57610ddb61583b565b60200260200101819052508660a0015181600381518110610dfe57610dfe61583b565b60200260200101819052508660c0015181600481518110610e2157610e2161583b565b60200260200101819052508660e0015181600581518110610e4457610e4461583b565b602002602001018190525086610100015181600681518110610e6857610e6861583b565b602002602001018190525086610120015181600781518110610e8c57610e8c61583b565b602002602001018190525086610140015181600881518110610eb057610eb061583b565b602002602001018190525086610160015181600981518110610ed457610ed461583b565b6020026020010181905250866101c0015181600a81518110610ef857610ef861583b565b602002602001018190525086610180015181600b81518110610f1c57610f1c61583b565b6020026020010181905250866101a0015181600c81518110610f4057610f4061583b565b6020026020010181905250866101e0015181600d81518110610f6457610f6461583b565b602002602001018190525086610200015181600e81518110610f8857610f8861583b565b602002602001018190525086610220015181600f81518110610fac57610fac61583b565b602002602001018190525086610240015181601081518110610fd057610fd061583b565b602002602001018190525086610260015181601181518110610ff457610ff461583b565b6020026020010181905250866102800151816012815181106110185761101861583b565b6020026020010181905250866102a001518160138151811061103c5761103c61583b565b6020026020010181905250866102c00151816014815181106110605761106061583b565b6020026020010181905250866102e00151816015815181106110845761108461583b565b6020026020010181905250866103000151816016815181106110a8576110a861583b565b6020026020010181905250866103200151816017815181106110cc576110cc61583b565b6020026020010181905250866103400151816018815181106110f0576110f061583b565b6020026020010181905250866103600151816019815181106111145761111461583b565b602002602001018190525086610380015181601a815181106111385761113861583b565b6020026020010181905250866103a0015181601b8151811061115c5761115c61583b565b6020026020010181905250866103c0015181601c815181106111805761118061583b565b6020026020010181905250876020015181601d815181106111a3576111a361583b565b6020026020010181905250876040015181601e815181106111c6576111c661583b565b6020026020010181905250876060015181601f815181106111e9576111e961583b565b602002602001018190525087608001518160208151811061120c5761120c61583b565b60200260200101819052508760a001518160218151811061122f5761122f61583b565b6020026020010181905250876101000151816022815181106112535761125361583b565b60200260200101819052508760c00151816023815181106112765761127661583b565b60200260200101819052508760e00151816024815181106112995761129961583b565b60200260200101819052505f6112df87606001518660c001518b6101800151877f0000000000000000000000000000000000000000000000000000000000000000612be5565b9050611309815f815181106112f6576112f661583b565b60200260200101518661012001516127a8565b608086018190526101808a01515160c089015161133a92916107809161132f91906127a8565b8861014001516127a8565b608086015260c087015161134d90612d43565b60a08601525f5b61137f60017f00000000000000000000000000000000000000000000000000000000000000006157ee565b81101561157c576113af610b288960e001518784600161139f9190615801565b81518110610b1b57610b1b61583b565b61012087015260e08801516113de90610b2890876113ce856001615801565b81518110610b5457610b5461583b565b61014087015260a08601516101208701516113f991906127a8565b61016087015260a086015160c089015161142191611416916127a8565b8761014001516127a8565b61018087018190526114449061143690612bd3565b610780886101600151612bd3565b848261145260246001615801565b61145c9190615801565b8151811061146c5761146c61583b565b6020026020010181815250505f6114af8761018001518c61018001518460016114959190615801565b601c81106114a5576114a561583b565b60200201516127a8565b90506114e981610780896101600151868660016114cc9190615801565b815181106114dc576114dc61583b565b60200260200101516127a8565b90506114f98760800151826127c3565b608088015260a087015160c08a015161151f91611515916127a8565b8a60c001516127a8565b60a08801526101608b015182601b811061153b5761153b61583b565b6020020151848361154e60246001615801565b6115589190615801565b815181106115685761156861583b565b602090810291909101015250600101611354565b50604080518082019091526001815260026020820152826115be7f00000000000000000000000000000000000000000000000000000000000000006024615801565b815181106115ce576115ce61583b565b602090810291909101015260808501518361160a7f00000000000000000000000000000000000000000000000000000000000000006024615801565b8151811061161a5761161a61583b565b60209081029190910101526101c089015180836116587f00000000000000000000000000000000000000000000000000000000000000006024615801565b611663906001615801565b815181106116735761167361583b565b602090810291909101015260e0880151846116af7f00000000000000000000000000000000000000000000000000000000000000006024615801565b6116ba906001615801565b815181106116ca576116ca61583b565b6020026020010181815250505f6116e18486612d4e565b90505f6116ed83612e5e565b90505f6116fe8d5f01518484612ea4565b90505f5f61170e8f5f0151612f1a565b9150915061171b82612fdb565b61172481612fdb565b61172f85838561307a565b945061173c84828561307a565b935061174885856130a0565b9f9e505050505050505050505050505050565b611763615207565b50604080516103e08101825263020000008152601960208083019190915260ae82840152825180840184527f1a63a0bab4e667a24d11b149cfd468f4599523e3bd6d2672a83fc22ebb59313781527f0fd289739bb81f97b9b116ee7ceabe164b7f2527ebd8a266c64cc832f1ca8a92818301526060830152825180840184527f24ef8548d7bdcfe02b5aea0162fb7fc6aa88d6279bff247e824b4d1d083eeb4d81527f0744483e72f033e5d4132101d47759a35a8989a1cff6d1eea9c069c742f7a543818301526080830152825180840184527f12de6b9d293335bc927213425b3a61a63317b0deb38040a0fe156de0556202a081527f08a0fcebea8d15814f1e1c0882ce730b72185ef350a2e4672e3117fdecbfa9348183015260a0830152825180840184527f2e3b0607532ce335b2775d38f0e6733d1e582204778214413791ea172e7f1e0181527f1efc1042a1a848e67ba8554e03f2d3d2380d0adb888bd6c282e632d1b1c483588183015260c0830152825180840184527f1c9e2f2d4d575ebe5dbd974d7fd14bd81ca5e68d1c19d80ed313221ee357a17681527f125e69e1df682ce67c88ff25fec29f95304e6311c72f12703c95879a7af5a7428183015260e0830152825180840184527f08ddc70703de7ae1b086bac4a97dc5a19ab8f92602e689cc54464bdf8773940b81527f2707fe08704af33e864f47f12432630b84b96df26892189b1cbbaf33d07ab0cd81830152610100830152825180840184527f01a8abe0d74344165494348196db5fa7da3a745f398fd1374cc2cb15bcc58ff481527f0f62b9babe865f3d0c422867d8b7f7fa5c13d85721a659f3b9ff8fc8cc6fc99281830152610120830152825180840184527f0efd1169872cfa7189f5768c43baed300dcd3ed07027aec6044d6812912173f581527f2199fb234b35fdebc21d93a77398cf55f08fdd209ec8129595da1bc715bfb53081830152610140830152825180840184527f071986c3acb41f60f1e36fbfe84081c92d51bd5036f1108ecf9adde392f9c42481527f0974b39eaa5c044b28617b48dfc9dadf4ff598457a4eedd23888a51a57eb526081830152610160830152825180840184527f0f0532fc06e6c4063a0c426d88013b559a7fdcef69ebac017309169908526d2b81527f173d815656937589ced04fcf7abac5b502508ce8aaa4f71f9211854f9f747cef81830152610180830152825180840184527f0c83ce43c4f106772eaae7f3d7b85f5f4aeff45db6b6713403086c89130aadc381527f2efb2728fff930d1f914f2be9455a686d752b4c0cd275510b3c17d4cea823b73818301526101a0830152825180840184527f2706956f7b50fe585267f43ee984d04b72ef154fddba371e9027888f490d1dbe81527f1fc511463a4c894890c77c802692644a79479e022a9ce30992e1b9125dec3137818301526101c0830152825180840184527f04d603c8c3634d3de2b15c8ea0ea262506705c0e2362ca9c761a470cb01430e581527f1f35518c18766475b582720ff50b6f1232e0679927f770d689e4a2a11066cbfe818301526101e0830152825180840184527f058f6bfacad68f8f24d4e3cf8f62026abcc02250e7eefc7855445ca5f244622e81527f02813f394f06ca24f6d932652b658325f63369014526dddba1f0052a5406c4d981830152610200830152825180840184527f08ed1c8f101fc80f45e5f778d77618e3375f4a6a5c4dd7e63280e8f4bb04d85781527f055dc745b8f76444b847ffe2838138370cf7e015202a98adcc36ce1a28c8853d81830152610220830152825180840184527f0f011555348e0a37792d609cc69f1a7f52634edc50a5ff039d913fecae9efa5681527f229ed4de968b24f9885e98ed950e10ca90c531557a93f68d8fa117c5e20d5a8681830152610240830152825180840184527f28ae40e323302207e0c60b9dd7c78292a63c25d9f5dba40012f9ff8a5f79d41e81527f04980066079e952fdda6477321289d0942518737a6f476f3a28e660d487a004581830152610260830152825180840184527f0920f457d3a2cc1e0341bdad257954b07a95ea84fa458d34070a0e62ef22b1df81527f0716d67f66385d21f6245e0e92e4206d7b6fceb71da23219b7fd3adedeb1646f81830152610280830152825180840184527f190ac7a833ba46409e081ddc25d1e38703c16ecf04d7b168aad89cf47ce8f06181527f11eee1adf9b3e4b861d40c9fe7ef66125f766c86625f841ca4097dcdd41611cb818301526102a0830152825180840184527f0c6de11e11fca80cc5cdbbb22fbe55456fb154884abfdc677f7132028e3b64cf81527f06f12f6d515a3a76744b1b5fbda13528a971c9688963333d7277af3a89efbb24818301526102c0830152825180840184527f2ebbe1362c89ef311b04c44bcec231d05a515c371e44ded91af4f322916bbd7a81527f1f34936ca71b897ac0c9a337db939883a14eb87df9e879d96008811b044a9cd6818301526102e0830152825180840184527f2f776ea99cbe6120feb449241f6f1ab64749de756cbd928903bc9cec4eac4fc681527f07b1be22ae74ca3d0eafeebe351bb701ebc73afabfb196c1e0855165c948063f81830152610300830152825180840184527f275a0bb22f8c37a3476d71c556d266909fdde001df48d48a78940343ccb0b48a81527f2a4cc2119d1bd729845e8630c5b1aec652a2f2a7ae690c52238e3eafd44b385681830152610320830152825180840184527f1e1d6ac562a951aa01bc279a090d34488936a6404b3c75294fd260df0d36689381527f1643515b25c47e776b6d99eb3ce8b4613b209886681842e5c39ee92efe72c27281830152610340830152825180840184527f20db30b046148206e1ce5d50fe2559d2e60dbe3472bb605600c6e01d0965df8281527f0d5d5be706d7b3b8a7d3d02043ef0e324676187770f682c791ce1cd3deadc05881830152610360830152825180840184527f1f59b85de9212665c6c3e59fb35ab6609d72f5ad8007449dc8019a5886fad88f81527f21c9b787b5e0109e8ab3c2293b8c67fa9ec871818722fb8bea77aa6477aaae4c8183015261038083015282518084018452600181526002818301526103a083015282518084019093527f10347b89a1ca7682013eef0ae9b3b0646af1f55533cf62a05d44428872c61ca983527f150b579fd2ee78e287f35df7e1743ddca0da738bcdc1df29df4ab0426c8e68da908301526103c081019190915290565b5f6103336120a5838561587b565b612804565b6120b261550a565b60408051808201909152805f516020615a9b5f395f51905f526120d860205f8789615814565b6120e19161587b565b6120eb91906158ac565b81526020908101905f516020615a9b5f395f51905f5290612110906040908789615814565b6121199161587b565b61212391906158ac565b90529392505050565b612134615522565b5f6121428888888888613294565b6040860191909152602085019190915290835292506121618389613591565b6080850191909152606084019190915291989197509095505050505050565b612188615552565b5f612191615571565b8481526101008401805151602080840191909152905181015160408084019190915260a086018051516060850152518201516080840152516121f4916121d9918491016158bf565b60405160208183030381529060405280519060200120612804565b91506121ff82613618565b6020850152835260015b60026122176001601c6157ee565b61222191906158f2565b8110156122a15761223e836040516020016121d991815260200190565b925061224983613618565b856122558460026157d7565b601b81106122655761226561583b565b60200201866122758560026157d7565b612280906001615801565b601b81106122905761229061583b565b602002019190915252600101612209565b506122ae6001601c6157ee565b60011660011480156122cb575060026122c96001601c6157ee565b115b15612325576122e6826040516020016121d991815260200190565b91505f6122f283613618565b85600161230081601c6157ee565b61230a91906157ee565b601b811061231a5761231a61583b565b602002019190915250505b509250929050565b61233561558f565b5f61234c846040516020016121d991815260200190565b935061235784613618565b50825260015b838110156123b457612395836123746001846157ee565b601c81106123845761238461583b565b6020020151846114956001856157ee565b8382601c81106123a7576123a761583b565b602002015260010161235d565b509093915050565b6123c461558f565b5f805b83811015612486576123d76155ae565b8581525f5b60088110156124405787610120015183601c81106123fc576123fc61583b565b602002015181600881106124125761241261583b565b602002015182612423836001615801565b600981106124335761243361583b565b60200201526001016123dc565b50612455816040516020016121d99190615905565b95505f61246187613618565b8685601c81106124735761247361583b565b60200201919091525050506001016123c7565b5090949293505050565b5f5f61249a6155cd565b8381525f5b60298110156124ed5785610140015181602981106124bf576124bf61583b565b6020020151826124d0836001615801565b602a81106124e0576124e061583b565b602002015260010161249f565b50612502816040516020016121d99190615939565b91505f61250e83613618565b5096929550919350505050565b5f80806125296001856157ee565b6125349060026157d7565b61253f906001615801565b6001600160401b038111156125565761255661584f565b60405190808252806020026020018201604052801561257f578160200160208202803683370190505b50905084815f815181106125955761259561583b565b60209081029190910101525f5b6125ad6001866157ee565b8110156126605786610160015181601b81106125cb576125cb61583b565b602002015151826125dd8360026157d7565b6125e8906001615801565b815181106125f8576125f861583b565b60200260200101818152505086610160015181601b811061261b5761261b61583b565b6020020151602001518282600261263291906157d7565b61263d906002615801565b8151811061264d5761264d61583b565b60209081029190910101526001016125a2565b50612675816040516020016121d9919061596d565b91505f61268183613618565b509792965091945050505050565b5f808061269d846001615801565b6001600160401b038111156126b4576126b461584f565b6040519080825280602002602001820160405280156126dd578160200160208202803683370190505b50905084815f815181106126f3576126f361583b565b60209081029190910101525f5b848110156126605786610180015181601c811061271f5761271f61583b565b602002015182612730836001615801565b815181106127405761274061583b565b6020908102919091010152600101612700565b5f5f61275d6155ec565b8381526101a08501805151602080840191909152905181015160408084019190915251612502916121d9918491016159a2565b5f5f516020615abb5f395f51905f52825b0692915050565b5f5f516020615abb5f395f51905f5282840990505b92915050565b5f5f516020615abb5f395f51905f528284089392505050565b5f5f516020615abb5f395f51905f52825f516020615abb5f395f51905f520384089392505050565b5f5f516020615abb5f395f51905f52826127a1565b5f6103338361077b84612b63565b815160208301515f91829161283c91906127c3565b929092149392505050565b60408051610100810182527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffec5181526102d060208201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff1191810191909152609060608201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff71608082015260f060a08201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593effffd3160c08201526113b060e08201525f906001825b600881101561292e576129248261077b87846127dc565b915060010161290d565b5061293761560a565b5f5b6008811015612998575f8482600881106129555761295561583b565b6020020151905061296a8161077b89856127dc565b905061297581612b63565b90508083836008811061298a5761298a61583b565b602002015250600101612939565b505f5b60088110156129eb575f8782600881106129b7576129b761583b565b602002015190506129d4818484600881106114a5576114a561583b565b90506129e086826127c3565b95505060010161299b565b506109b684836127a8565b5f5f612a0c60016107808561077b8960016127dc565b9050612a1884826127a8565b95945050505050565b5f612a2a61558f565b612a35868285613648565b612a41868683866137f4565b612a4d868683866139e0565b612a58868285613c0b565b612a63868285613dff565b612a6f86868386614148565b612a7a8682856145f4565b612a85868285614a06565b612a90868285614dc7565b6109b681856150c7565b60605f826001600160401b03811115612ab557612ab561584f565b604051908082528060200260200182016040528015612ade578160200160208202803683370190505b50905083815f81518110612af457612af461583b565b602090810291909101015260015b83811015612b5b57612b3682612b196001846157ee565b81518110612b2957612b2961583b565b6020026020010151612d43565b828281518110612b4857612b4861583b565b6020908102919091010152600101612b02565b509392505050565b5f5f8290505f604051602081526020808201526020604082015282606082015260025f516020615abb5f395f51905f520360808201525f516020615abb5f395f51905f5260a082015260205f60c08360055afa80612bbf575f5ffd5b505f51608091909101604052949350505050565b5f516020615abb5f395f51905f520390565b60605f826001600160401b03811115612c0057612c0061584f565b604051908082528060200260200182016040528015612c29578160200160208202803683370190505b509050825b8015612d38575f85612c416001846157ee565b81518110612c5157612c5161583b565b602002602001015190505f89600184612c6a91906157ee565b601c8110612c7a57612c7a61583b565b602002015190505f612cd5612c99612c92858d6127a8565b60026127a8565b61079e8b612ca86001896157ee565b601c8110612cb857612cb861583b565b602002015161077b612ccf8861077b60018a6127dc565b876127dc565b9050612cf68161077b610b28612cf08761077b6001896127dc565b866127c3565b99508990508085612d086001876157ee565b81518110612d1857612d1861583b565b60200260200101818152505050505080612d31906159d5565b9050612c2e565b509695505050505050565b5f6127bd82836127a8565b612d5661550a565b5f612d827f00000000000000000000000000000000000000000000000000000000000000006024615801565b612d8d906002615801565b90505f5b81811015612dc357612dbb858281518110612dae57612dae61583b565b6020026020010151612fdb565b600101612d91565b50604051600190815b60018401811015612e285760208102870160208202870181515160408501528151602001516060850152805160808501525050604080830160606040850160075afa8316925060408260808460065afa90921691600101612dcc565b5080518452602081015160208501525080612e56576040516352ec174560e11b815260040160405180910390fd5b505092915050565b612e6661550a565b5f516020615a9b5f395f51905f5282602001515f516020615a9b5f395f51905f52612e9191906157ee565b612e9b91906158ac565b60208301525090565b5f5f5f612eb086612f1a565b91509150612ebc61560a565b82518152602080840151818301528251604080840191909152838201516060840152875160808401528782015160a0840152865160c08401528682015160e084015251612f0f916121d9918491016159ea565b979650505050505050565b612f2261550a565b612f2a61550a565b82516020808501516040860151606087015160cc90811b608892831b604494851b90961795909517949094178652608087015160a088015160c089015160e08a0151871b90841b91851b9092171717868401526101008701516101208801516101408901516101608a0151871b90841b91851b909217171785526101808701516101a08801516101c08901516101e09099015190951b9790911b9390911b1791909117939093179281019290925291565b805160208201515f5f516020615a9b5f395f51905f528380095f516020615a9b5f395f51905f5260035f516020615a9b5f395f51905f52838709085f516020615a9b5f395f51905f5284850914915050806130745760405162461bcd60e51b8152602060048201526019602482015278706f696e74206973206e6f74206f6e2074686520637572766560381b60448201526064016100e5565b50505050565b61308261550a565b61308a61550a565b6130948386615120565b9050612a188185615176565b81516020808401518351848301516040805194850195909552938301919091527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c260608301527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed60808301527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b60a08301527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa60c083015260e08201526101008101919091527f260e01b251f6f1c7e7ff4e580791dee8ea51d87a358e038b4efe30fac09383c16101208201527f0118c4d5b837bcc2bc89b5b398b5974e9f5944073b32078b7e231fec938883b06101408201527f04fc6369f7110fe3d25156c1bb9a72859cf2a04641f99ba4ee413c80da6a5fe46101608201527f22febda3c0c0632a56475b4214e5615e11e6dd3f96e6cea2854a87d4dacc5e556101808201525f9081906101a00160405160208183030381529060405290505f5f60086001600160a01b0316836040516132369190615a1e565b5f60405180830381855afa9150503d805f811461326e576040519150601f19603f3d011682016040523d82523d5f602084013e613273565b606091505b50915091508180156109b65750808060200190518101906109b69190615a34565b5f808080806132a4866001615801565b6132af906006615801565b6001600160401b038111156132c6576132c661584f565b6040519080825280602002602001820160405280156132ef578160200160208202803683370190505b509050865f1b815f815181106133075761330761583b565b60209081029190910101525f5b61331f6010886157ee565b811015613370578989828181106133385761333861583b565b905060200201358282600161334d9190615801565b8151811061335d5761335d61583b565b6020908102919091010152600101613314565b505f5b60108110156133e1578a5161339b9082601081106133935761339361583b565b602002015190565b828260106133aa8b6001615801565b6133b491906157ee565b6133be9190615801565b815181106133ce576133ce61583b565b6020908102919091010152600101613373565b5060208a015151816133f4886001615801565b815181106134045761340461583b565b6020908102919091018101919091528a810151015181613425886001615801565b613430906001615801565b815181106134405761344061583b565b602090810291909101015260408a0151518161345d886001615801565b613468906002615801565b815181106134785761347861583b565b60209081029190910181019190915260408b015101518161349a886001615801565b6134a5906003615801565b815181106134b5576134b561583b565b602090810291909101015260608a015151816134d2886001615801565b6134dd906004615801565b815181106134ed576134ed61583b565b60209081029190910181019190915260608b015101518161350f886001615801565b61351a906005615801565b8151811061352a5761352a61583b565b60200260200101818152505061354a816040516020016121d9919061596d565b915061355582613618565b604080516020810186905292975090955061357091016121d9565b91505f61357c83613618565b50959b949a5094985090965091945050505050565b5f5f5f61359c615629565b85815260c0858101805151602080850191909152905181015160408085019190915260e08801805151606086015251820151608080860191909152880180515160a0860152518201519284019290925290516135fe916121d991849101615a53565b915061360982613618565b90979096509194509092505050565b5f80826001600160801b038116608082901c61363382612804565b945061363e81612804565b9350505050915091565b5f6136548460076151d7565b90507f183227397098d014dc2822db40c0ac2e9419f4243cdcb848a1f0fac9f80000005f6136b56136af6136898560036127dc565b61077b6136a46136998b5f6151d7565b61077b8c601d6151d7565b61077b8b601c6151d7565b836127a8565b905061373661372b6137126136f96136e0856107806136d58d60026151d7565b61077b8e601c6151d7565b6107806136ee8c60036151d7565b61077b8d601d6151d7565b6107806137078b60046151d7565b61077b8c601e6151d7565b6107806137208a60056151d7565b61077b8b601f6151d7565b6107808860016151d7565b90506137558161078061374a8660016127dc565b61077b8a60276151d7565b905061376181846127a8565b905061376d81856127a8565b8552505f90506137a761379d61379261378788601c6151d7565b61078089601f6151d7565b61079e8860246151d7565b610780875f6151d7565b90506137b88161077b8460026127dc565b90506137c98161077b8460016127dc565b90506137d581836127a8565b90506137e181846127a8565b9050808460015b60200201525050505050565b5f5f5f61382a61382061380889601c6151d7565b6107806138168b60126151d7565b8a606001516127a8565b87608001516127c3565b90506138638161077b6138596138418b601d6151d7565b61078061384f8d60136151d7565b8c606001516127a8565b89608001516127c3565b90506138888161077b61385961387a8b601e6151d7565b61078061384f8d60146151d7565b90506138ad8161077b61385961389f8b601f6151d7565b61078061384f8d60156151d7565b92505f90506138d16138206138c389601c6151d7565b6107806138168b600e6151d7565b90506138f68161077b6138596138e88b601d6151d7565b61078061384f8d600f6151d7565b905061391b8161077b61385961390d8b601e6151d7565b61078061384f8d60106151d7565b90506139408161077b6138596139328b601f6151d7565b61078061384f8d60116151d7565b91505f90506139676139616139568960206151d7565b6107808a601a6151d7565b846127a8565b905061399c8161079e61399661397e8b60286151d7565b61078061398c8d601b6151d7565b8c60a001516127a8565b856127a8565b90506139a881856127a8565b6040860152505f6139cb6139966139c089601b6151d7565b61077b8a60286151d7565b9050808560035b602002015250505050505050565b5f5f613a3e613a26613a0e6139f96138598a60166151d7565b610780613a078b60176151d7565b8a516127a8565b610780613a1c8a60186151d7565b89602001516127a8565b610780613a348960196151d7565b88604001516127a8565b91505f613a75613a5c613a5289601c6151d7565b88608001516127c3565b610780613a6a8a60036151d7565b61077b8b60246151d7565b90505f613a9e613a8689601d6151d7565b610780613a938b5f6151d7565b61077b8c60256151d7565b90505f613ac8613aaf8a601e6151d7565b610780613abd8c60016151d7565b61077b8d60266151d7565b9050613b07613aef613ae185610780868d5f01516127a8565b610780848c602001516127a8565b610780613afd8c60046151d7565b8b604001516127a8565b93505050505f613b1b6139618860216151d7565b90505f613b2c6139618960216151d7565b90505f613b64613b4b613b408b60236151d7565b6107808c60066151d7565b61079e613b598c60236151d7565b61077b8d60066151d7565b90505f613b88613b82613b7787896127a8565b61077b8d60216151d7565b836127dc565b9050613b9481886127a8565b90505f613bbc613bae613ba88d60066151d7565b876127a8565b61079e613ba88e60226151d7565b90505f613bca8c60236151d7565b90505f613bda613b8283846127a8565b60808c0185905260a08c018490529050613bf4818b6127a8565b8b6006602002015250505050505050505050505050565b5f613c175f60016127dc565b90505f613c255f60026127dc565b90505f613c335f60036127dc565b90505f613c4f613c4488601d6151d7565b61079e89601c6151d7565b90505f613c6b613c6089601e6151d7565b61079e8a601d6151d7565b90505f613c87613c7c8a601f6151d7565b61079e8b601e6151d7565b90505f613ca3613c988b60246151d7565b61079e8c601f6151d7565b905083613cb48161077b818b6127c3565b9050613cc48161077b878a6127c3565b9050613cd48161077b87896127c3565b9050613ce58161077b8d60086151d7565b9050613cf1818a6127a8565b60e08b01525082613d068161077b818b6127c3565b9050613d168161077b868a6127c3565b9050613d268161077b86896127c3565b9050613d378161077b8d60086151d7565b9050613d43818a6127a8565b6101008b01525081613d598161077b818b6127c3565b9050613d698161077b858a6127c3565b9050613d798161077b85896127c3565b9050613d8a8161077b8d60086151d7565b9050613d96818a6127a8565b6101208b01525080613dac8161077b818b6127c3565b9050613dbc8161077b848a6127c3565b9050613dcc8161077b84896127c3565b9050613ddd8161077b8d60086151d7565b9050613de9818a6127a8565b610140909a019990995250505050505050505050565b613e386040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b613e4384601d6151d7565b8152613e5084601e6151d7565b6020820152613e608460246151d7565b6040820152613e708460276151d7565b6060820152613e808460266151d7565b6080820152613e908460256151d7565b60a08201525f613ea18560026151d7565b90505f613eae865f6151d7565b90505f613ec28460400151855f01516127dc565b90505f613ed7856020015186602001516127a8565b606086015190915086905f90613eed90806127a8565b90505f613f0b613f0589602001518a606001516127a8565b886127a8565b90505f613f2a613f238a60a001518b604001516127c3565b8a516127c3565b9050613f39613ba882886127a8565b9050613f60613f5a613f54613f4e84876127dc565b886127dc565b846127c3565b836127c3565b9050613f88613f7d613f7283876127a8565b61077b8f60096151d7565b61077b60018a6127dc565b6101608c015250505050602085015160808601515f91613fa7916127c3565b90505f613fc5613fbb8860600151886127a8565b88602001516127dc565b90505f613fe9613fd584876127a8565b6107806139968b60a001518c5f01516127dc565b9050614011614006613ffb838c6127a8565b61077b8e60096151d7565b61077b6001896127dc565b6101808b0152505f9150614032905061402b8360116127c3565b87516127a8565b90505f61403f83846127c3565b905061404b81826127c3565b90505f6140598360096127a8565b905061408261407c6139616140758b60a001518c5f01516127c3565b8b516127c3565b826127dc565b60c089018190525f9061409d90613f0590613f72908d6127a8565b90506140b08b600b6020020151826127c3565b6101608c0152505086515f92506140d7915061402b906140d090806127c3565b88516127c3565b90505f6141176140f28361077b8a5f01518b60a001516127dc565b602089015161079e9061410590806127c3565b61077b8b602001518c608001516127c3565b905061413489600c6020020151610780613f05613f72858d6127a8565b89600c602002015250505050505050505050565b6141b2604051806101e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6141ca6141c086601e6151d7565b85604001516127a8565b8082526141e9906107806141df88601d6151d7565b87602001516127a8565b8082526141fe9061078061402b88601c6151d7565b808252614210906107808760016151d7565b808252602082018190526142299061079e87601f6151d7565b81526142446142398660246151d7565b61079e87601c6151d7565b60808201526142626142578660276151d7565b61079e87601f6151d7565b6060820152608081015161427b9061077b8160016127dc565b6101c082015260808101516142bb906142b1906142aa9061077b60015f516020615abb5f395f51905f526157ee565b60016127c3565b82606001516127a8565b60a082018190526142f1906142e39061077b6142d88960026151d7565b61077b8a60036151d7565b61077b61399688600a6151d7565b83600e60200201526101c0810151614315906142e39061077b6142d88960026151d7565b6101e0840152805161433a9061077b61432f8860026151d7565b61077b8960036151d7565b6101208201525f61435961434f87601f6151d7565b83602001516127dc565b905061436a8161077b8360016127dc565b60e083015261438761437d8760266151d7565b86604001516127a8565b604083018190526143aa906107806143a08960256151d7565b88602001516127a8565b604083018190526143ca906107806143c38960246151d7565b88516127a8565b60408301526143e76143dd8760276151d7565b83604001516127dc565b60408301525f6144066143fb8860266151d7565b61079e89601e6151d7565b90506144586144336136af6142aa866080015160015f516020615abb5f395f51905f5261077b91906157ee565b61077b6142aa866040015160015f516020615abb5f395f51905f5261077b91906157ee565b60c0840152604083015161447a9061447090806127a8565b84604001516127dc565b61010084015260c08301516144a6906144989061077b8a60046151d7565b61077b613ba88a600a6151d7565b6102008601526101c08301516144c5906144989061077b8a60046151d7565b6102208601526101008301516144e4906144989061077b8a60046151d7565b61024086015260e08301516144fe9061077b8960046151d7565b61014084015261451d6145128860256151d7565b61079e89601d6151d7565b610160840152608083015161455b906143fb90614550906142aa9061077b60015f516020615abb5f395f51905f526157ee565b8561016001516127a8565b61018084018190526101208401516101a08501819052614592916107809061077b6145878c60056151d7565b61077b8d60026151d7565b6101a0840181905283516145b291906107809061077b6145878c5f6151d7565b6101a084018190526101408401516145ca91906127c3565b6101a084018190526145e49061077b613ba88a600a6151d7565b6101a0840181905285600d6139d2565b61462d6040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61466261464961463e86601c6151d7565b61077b8760256151d7565b6107806146578760246151d7565b61077b88601d6151d7565b81526146a761469c61468361467887601c6151d7565b61077b88601f6151d7565b61078061469188601d6151d7565b61077b89601e6151d7565b61079e8660266151d7565b604082018190526146bc90600160441b6127a8565b604082018190526146d29061079e8660276151d7565b6040820181905281516146e591906127c3565b604082018190526146fb9061077b8660056151d7565b6040820152805161471090600160441b6127a8565b808252614730906107806147258760246151d7565b61077b8860256151d7565b808252602082018190526147579061079e61474c87601e6151d7565b61078088601f6151d7565b6020820181905261476d9061077b8660046151d7565b602082015280516060820181905261478a9061078086601f6151d7565b606082018190526147ae9061079e6147a38760266151d7565b6107808860276151d7565b606082018190526147c39061077b865f6151d7565b8160600181815250505f6147ec6147e2836020015184604001516127c3565b83606001516127c3565b90506147fd8161077b8760036151d7565b905061481561480d8660256151d7565b6140006127a8565b6080830181905261482b906107808760246151d7565b6080830181905261483e906140006127a8565b608083018190526148549061078087601e6151d7565b60808301819052614867906140006127a8565b6080830181905261487d9061078087601d6151d7565b60808301819052614890906140006127a8565b608083018190526148a69061078087601c6151d7565b608083018190526148bc9061079e87601f6151d7565b608083018190526148d29061077b8760056151d7565b60808301526148e561480d8660266151d7565b60a083018190526148fb906107808760256151d7565b60a0830181905261490e906140006127a8565b60a08301819052614924906107808760246151d7565b60a08301819052614937906140006127a8565b60a0830181905261494d9061078087601f6151d7565b60a08301819052614960906140006127a8565b60a083018190526149769061078087601e6151d7565b60a0830181905261498c9061079e8760276151d7565b60a083018190526149a19061077b875f6151d7565b60a0830181905260808301515f916149b991906127c3565b90506149ca8161077b8860046151d7565b90506149d682826127c3565b60c084018190526149ef9061077b613ba889600b6151d7565b60c084018190528560136020020152505050505050565b614a7c6040518061022001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b614a95614a8a85601c6151d7565b6107808660026151d7565b8152614ab0614aa585601d6151d7565b6107808660036151d7565b6020820152614ace614ac385601e6151d7565b6107808660046151d7565b6040820152614aec614ae185601f6151d7565b6107808660056151d7565b60608201528051614b1e90614b1790614b1090614b0990806127a8565b84516127a8565b83516127a8565b82516127a8565b60808201526020810151614b5c90614b5290614b4890614b3e90806127a8565b84602001516127a8565b83602001516127a8565b82602001516127a8565b60a08201526040810151614b9a90614b9090614b8690614b7c90806127a8565b84604001516127a8565b83604001516127a8565b82604001516127a8565b60c08201526060810151614bce906142b190614bc490614bba90806127a8565b84606001516127a8565b83606001516127a8565b60e0820152608081015160a0820151614be791906127c3565b61010082015260c081015160e0820151614c0191906127c3565b61012082015260a0810151614c2590614c1a90806127c3565b8261012001516127c3565b61014082015260e0810151614c4990614c3e90806127c3565b8261010001516127c3565b610160820152610120810151614c5f90806127c3565b6101e08201819052614c8090614c7590806127c3565b8261016001516127c3565b6101e0820152610100810151614c9690806127c3565b6101a08201819052614cb790614cac90806127c3565b8261014001516127c3565b6101a08201819052610160820151614cce916127c3565b6101808201526101408101516101e0820151614cea91906127c3565b6101c0820152614cfe6136af85600c6151d7565b6102008201819052610280840151610180830151614d29926107809161077b9061079e8a60246151d7565b8360146020020152614d59836015602002015161078083610200015161077b856101a0015161079e8a60256151d7565b8360156020020152614d89836016602002015161078083610200015161077b856101c0015161079e8a60266151d7565b8360166020020152614db9836017602002015161078083610200015161077b856101e0015161079e8a60276151d7565b836017602002015250505050565b614e196040518061016001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f6040518060800160405280614e4e7f10dc6e9c006ea38b04b1e03b4bd9490c0d03f98929ca1d7fb56821fd19d3b6e7612790565b8152602001614e7c7f0c28145b6a44df3e0149b3d0a30b3bb599df9756d4dd9b84a86b38cfb45a740b612790565b8152602001614ea97e544b8338791518b2c7645a50392798b21f75bb60e3596170067d00141cac15612790565b8152602001614ed77f222c01175718386f2e2e82eb122789e352e105a3b8fa852613bc534433ee428b612790565b90529050614ef4614ee986601c6151d7565b6107808760026151d7565b6101208301819052614f3390614f2890614f1d90614f1290806127a8565b8561012001516127a8565b8461012001516127a8565b8361012001516127a8565b8252614f4085601d6151d7565b6020830152614f5085601e6151d7565b6040830152614f6085601f6151d7565b606083015281516020830151614f88916147e291614f7e91906127c3565b84604001516127c3565b6080830152614f9b61396186600d6151d7565b6101408301528151614fbc90614fb290835f6114a5565b83608001516127c3565b60a0830152614fe8846018602002015161078084610140015161077b8660a0015161079e8b60246151d7565b610300850152602082015161500390614fb2908360016114a5565b60c083015261502f846019602002015161078084610140015161077b8660c0015161079e8b60256151d7565b610320850152604082015161504a90614fb2908360026114a5565b60e083015261507684601a602002015161078084610140015161077b8660e0015161079e8b60266151d7565b610340850152606082015161509190614fb2908360036114a5565b6101008301526150bf84601b602002015161078084610140015161077b86610100015161079e8b60276151d7565b84601b6137e8565b815160015b601c8110156151195761510f826107808684601c81106150ee576150ee61583b565b6020020151866150ff6001876157ee565b601b81106114a5576114a561583b565b91506001016150cc565b5092915050565b61512861550a565b61513061550a565b604051835181526020840151602082015284604082015260408160608360075afa8061515a575f5ffd5b5080518252602080820151908301526060016040529392505050565b61517e61550a565b61518661550a565b6040518451815260208501516020820152835160408201526020840151606082015260408160808360065afa806151bb575f5ffd5b5080518252602080820151908301526080016040529392505050565b5f828260288111156151eb576151eb615a86565b602981106151fb576151fb61583b565b60200201519392505050565b604051806103e001604052805f81526020015f81526020015f815260200161522d61550a565b815260200161523a61550a565b815260200161524761550a565b815260200161525461550a565b815260200161526161550a565b815260200161526e61550a565b815260200161527b61550a565b815260200161528861550a565b815260200161529561550a565b81526020016152a261550a565b81526020016152af61550a565b81526020016152bc61550a565b81526020016152c961550a565b81526020016152d661550a565b81526020016152e361550a565b81526020016152f061550a565b81526020016152fd61550a565b815260200161530a61550a565b815260200161531761550a565b815260200161532461550a565b815260200161533161550a565b815260200161533e61550a565b815260200161534b61550a565b815260200161535861550a565b815260200161536561550a565b815260200161537261550a565b815260200161537f61550a565b815260200161538c61550a565b905290565b604051806101e001604052806153a5615647565b81526020016153b261550a565b81526020016153bf61550a565b81526020016153cc61550a565b81526020016153d961550a565b81526020016153e661550a565b81526020016153f361550a565b815260200161540061550a565b815260200161540d61550a565b815260200161541a615666565b8152602001615427615694565b81526020016154346156b3565b815260200161537261558f565b604051806101000160405280615455615522565b8152602001615462615552565b815260200161546f61558f565b815260200161547c61558f565b81526020015f81526020015f81526020015f81526020015f81525090565b604051806101c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020016154d86156e1565b81526020016154e56156e1565b81526020015f81526020015f81526020015f81526020015f8152602001606081525090565b60405180604001604052805f81526020015f81525090565b6040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b604051806103600160405280601b906020820280368337509192915050565b6040518060a001604052806005906020820280368337509192915050565b604051806103800160405280601c906020820280368337509192915050565b6040518061012001604052806009906020820280368337509192915050565b604051806105400160405280602a906020820280368337509192915050565b60405180606001604052806003906020820280368337509192915050565b6040518061010001604052806008906020820280368337509192915050565b6040518060e001604052806007906020820280368337509192915050565b6040518061020001604052806010906020820280368337509192915050565b604051806103800160405280601c905b61567e61560a565b8152602001906001900390816156765790505090565b6040518061052001604052806029906020820280368337509192915050565b604051806103600160405280601b905b6156cb61550a565b8152602001906001900390816156c35790505090565b60405180608001604052806004906020820280368337509192915050565b5f5f5f5f60408587031215615712575f5ffd5b84356001600160401b03811115615727575f5ffd5b8501601f81018713615737575f5ffd5b80356001600160401b0381111561574c575f5ffd5b87602082840101111561575d575f5ffd5b6020918201955093508501356001600160401b0381111561577c575f5ffd5b8501601f8101871361578c575f5ffd5b80356001600160401b038111156157a1575f5ffd5b8760208260051b84010111156157b5575f5ffd5b949793965060200194505050565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176127bd576127bd6157c3565b818103818111156127bd576127bd6157c3565b808201808211156127bd576127bd6157c3565b5f5f85851115615822575f5ffd5b8386111561582e575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b5f60018201615874576158746157c3565b5060010190565b803560208310156127bd575f19602084900360031b1b1692915050565b634e487b7160e01b5f52601260045260245ffd5b5f826158ba576158ba615898565b500690565b5f8183825b60058110156158e35781518352602092830192909101906001016158c4565b50505060a08201905092915050565b5f8261590057615900615898565b500490565b5f8183825b600981101561592957815183526020928301929091019060010161590a565b5050506101208201905092915050565b5f8183825b602a81101561595d57815183526020928301929091019060010161593e565b5050506105408201905092915050565b81515f90829060208501835b82811015615997578151845260209384019390910190600101615979565b509195945050505050565b5f8183825b60038110156159c65781518352602092830192909101906001016159a7565b50505060608201905092915050565b5f816159e3576159e36157c3565b505f190190565b5f8183825b6008811015615a0e5781518352602092830192909101906001016159ef565b5050506101008201905092915050565b5f82518060208501845e5f920191825250919050565b5f60208284031215615a44575f5ffd5b81518015158114610333575f5ffd5b5f8183825b6007811015615a77578151835260209283019290910190600101615a58565b50505060e08201905092915050565b634e487b7160e01b5f52602160045260245ffdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001";
4
+ export declare const HonkVerifierBytecode = "0x610100604052348015610010575f5ffd5b506302000000608052601960a0527f1cdca2bef2f58f0e5edd245ca724522e83da818aa6d4665fbb9891ae2e813e2f60c05260ae60e05260805160a05160c05160e051615ada6100de5f395f818161018101526107ae01525f61016001525f8181605b01528181609401528181610101015281816101a2015281816108c7015281816109d401528181610a0001528181610a7a015281816112bb0152818161135b01528181611598015281816115e401528181611632015281816116890152612d5b01525f5050615ada5ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063ea50d0e41461002d575b5f5ffd5b61004061003b3660046156fe565b610054565b604051901515815260200160405180910390f35b5f5f61007f7f000000000000000000000000000000000000000000000000000000000000000061028c565b905061008c8160206157d6565b85146100ee577f0000000000000000000000000000000000000000000000000000000000000000856100bf8360206157d6565b6040516359895a5360e01b81526004810193909352602483019190915260448201526064015b60405180910390fd5b5f6100f761033a565b90505f61012588887f000000000000000000000000000000000000000000000000000000000000000061034f565b90506010826040015161013891906157ed565b85146101575760405163fa06659360e01b815260040160405180910390fd5b5f6101c68288887f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006106a6565b90506102168787808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152505085518551606081015160809091015191935091506001610758565b815160a001525f61022783836108bf565b905080610247576040516313f8744360e31b815260040160405180910390fd5b5f6102538486856109c0565b905080610273576040516352ec174560e11b815260040160405180910390fd5b81801561027d5750805b9b9a5050505050505050505050565b5f8061029a600260086157d6565b905060016102a96008856157d6565b6102b391906157d6565b6102bd9082615800565b90506102cb600160296157d6565b6102d59082615800565b905060026102e46001856157ed565b6102ee91906157d6565b6102f89082615800565b90506103056001846157d6565b61030f9082615800565b905061031c6002806157d6565b6103269082615800565b9050610333601082615800565b9392505050565b610342615206565b61034a61175b565b905090565b610357615390565b5f805b60108110156103b957610386868387610374602083615800565b9261038193929190615813565b612096565b835182601081106103995761039961583a565b6020020181815250506020826103af9190615800565b915060010161035a565b506103dd8582866103cb604083615800565b926103d893929190615813565b6120a9565b60208301526103ed604082615800565b90506104008582866103cb604083615800565b6040808401919091526104139082615800565b90506104268582866103cb604083615800565b6060830152610436604082615800565b90506104498582866103cb604083615800565b60c0830152610459604082615800565b905061046c8582866103cb604083615800565b60e083015261047c604082615800565b905061048f8582866103cb604083615800565b608083015261049f604082615800565b90506104b28582866103cb604083615800565b6101008301526104c3604082615800565b90506104d68582866103cb604083615800565b60a08301526104e6604082615800565b90505f5b83811015610564575f5b600881101561055b5761050e878488610374602083615800565b84610120015183601c81106105255761052561583a565b6020020151826008811061053b5761053b61583a565b6020020181815250506020836105519190615800565b92506001016104f4565b506001016104ea565b505f5b60298110156105b857610581868387610374602083615800565b83610140015182602981106105985761059861583a565b6020020181815250506020826105ae9190615800565b9150600101610567565b505f5b6105c66001856157ed565b81101561060f576105de8683876103cb604083615800565b83610160015182601b81106105f5576105f561583a565b6020020152610605604083615800565b91506001016105bb565b505f5b838110156106625761062b868387610374602083615800565b83610180015182601c81106106425761064261583a565b6020020181815250506020826106589190615800565b9150600101610612565b506106748582866103cb604083615800565b6101a0830152610685604082615800565b90506106988582866103cb604083615800565b6101c0830152509392505050565b6106ae615440565b5f6106bd88888888888661212b565b90835290506106cc818961217f565b602084019190915290506106e0818461232c565b604084019190915290506106f58882856123bb565b60608401919091529050610709888261248f565b6080840191909152905061071e88828561251a565b60a0840191909152905061073388828561268e565b60c084019190915290506107478882612752565b5060e0830152509695505050505050565b5f60018082610785866107808961077b6107768a6310000000615800565b61278f565b6127a7565b6127c2565b90505f6107a38761079e8a61077b6107768b6001615800565b6127db565b90505f5b6107d260107f00000000000000000000000000000000000000000000000000000000000000006157ed565b81101561083f575f6107fc8c83815181106107ef576107ef61583a565b6020026020010151612803565b905061080c8661077b86846127c2565b955061081c8561077b85846127c2565b9450610828848b6127c2565b9350610834838b6127db565b9250506001016107a7565b505f5b60108110156108a6575f8a826010811061085e5761085e61583a565b602002015190506108738661077b86846127c2565b95506108838561077b85846127c2565b945061088f848b6127c2565b935061089b838b6127db565b925050600101610842565b506108b18484612818565b9a9950505050505050505050565b5f806001815b7f0000000000000000000000000000000000000000000000000000000000000000811015610996575f86610120015182601c81106109055761090561583a565b602002015190505f6109178286612826565b905080610937576040516313f8744360e31b815260040160405180910390fd5b5f876060015184601c811061094e5761094e61583a565b6020020151905061095f8382612846565b9550610986886040015185601c811061097a5761097a61583a565b602002015186836129f5565b94505050508060010190506108c5565b505f6109b0866101400151865f0151876020015185612a20565b90508281145b9695505050505050565b5f6109c9615499565b5f6109f88460a001517f0000000000000000000000000000000000000000000000000000000000000000612a99565b90505f610a267f00000000000000000000000000000000000000000000000000000000000000006024615800565b610a31906002615800565b6001600160401b03811115610a4857610a4861584e565b604051908082528060200260200182016040528015610a71578160200160208202803683370190505b5090505f610aa07f00000000000000000000000000000000000000000000000000000000000000006024615800565b610aab906002615800565b6001600160401b03811115610ac257610ac261584e565b604051908082528060200260200182016040528015610afb57816020015b610ae8615509565b815260200190600190039081610ae05790505b509050610b2d610b288760e00151855f81518110610b1b57610b1b61583a565b60200260200101516127db565b612b62565b84610120018181525050610b61610b288760e00151855f81518110610b5457610b5461583a565b60200260200101516127c2565b610140850181905261012085015160c0880151610b829261078091906127a7565b845260a0860151610bb290610b9690612b62565b61077b86610120015161079e8a60c001518961014001516127a7565b6020850152815160019083905f90610bcc57610bcc61583a565b602002602001018181525050876101a00151815f81518110610bf057610bf061583a565b6020908102919091010152600160a08501525f60c08501528351610c1390612bd2565b60408501526020840151610c2690612bd2565b606085015260015b60248111610cd157610c4885604001518660a001516127a7565b838281518110610c5a57610c5a61583a565b602002602001018181525050610ca38560c001516107808b6101400151600185610c8491906157ed565b60298110610c9457610c9461583a565b60200201518860a001516127a7565b60c086015260a08501516080880151610cbc91906127a7565b60a0860152610cca81615862565b9050610c2e565b505f5b6005811015610d9f575f610ce9601d83615800565b90505f610cf7602484615800565b9050610d28858381518110610d0e57610d0e61583a565b602002602001015161078089606001518a60a001516127a7565b858381518110610d3a57610d3a61583a565b602002602001018181525050610d778760c001516107808d61014001518460298110610d6857610d6861583a565b60200201518a60a001516127a7565b60c088015260a087015160808a0151610d9091906127a7565b60a08801525050600101610cd4565b50866060015181600181518110610db857610db861583a565b6020026020010181905250866080015181600281518110610ddb57610ddb61583a565b60200260200101819052508660a0015181600381518110610dfe57610dfe61583a565b60200260200101819052508660c0015181600481518110610e2157610e2161583a565b60200260200101819052508660e0015181600581518110610e4457610e4461583a565b602002602001018190525086610100015181600681518110610e6857610e6861583a565b602002602001018190525086610120015181600781518110610e8c57610e8c61583a565b602002602001018190525086610140015181600881518110610eb057610eb061583a565b602002602001018190525086610160015181600981518110610ed457610ed461583a565b6020026020010181905250866101c0015181600a81518110610ef857610ef861583a565b602002602001018190525086610180015181600b81518110610f1c57610f1c61583a565b6020026020010181905250866101a0015181600c81518110610f4057610f4061583a565b6020026020010181905250866101e0015181600d81518110610f6457610f6461583a565b602002602001018190525086610200015181600e81518110610f8857610f8861583a565b602002602001018190525086610220015181600f81518110610fac57610fac61583a565b602002602001018190525086610240015181601081518110610fd057610fd061583a565b602002602001018190525086610260015181601181518110610ff457610ff461583a565b6020026020010181905250866102800151816012815181106110185761101861583a565b6020026020010181905250866102a001518160138151811061103c5761103c61583a565b6020026020010181905250866102c00151816014815181106110605761106061583a565b6020026020010181905250866102e00151816015815181106110845761108461583a565b6020026020010181905250866103000151816016815181106110a8576110a861583a565b6020026020010181905250866103200151816017815181106110cc576110cc61583a565b6020026020010181905250866103400151816018815181106110f0576110f061583a565b6020026020010181905250866103600151816019815181106111145761111461583a565b602002602001018190525086610380015181601a815181106111385761113861583a565b6020026020010181905250866103a0015181601b8151811061115c5761115c61583a565b6020026020010181905250866103c0015181601c815181106111805761118061583a565b6020026020010181905250876020015181601d815181106111a3576111a361583a565b6020026020010181905250876040015181601e815181106111c6576111c661583a565b6020026020010181905250876060015181601f815181106111e9576111e961583a565b602002602001018190525087608001518160208151811061120c5761120c61583a565b60200260200101819052508760a001518160218151811061122f5761122f61583a565b6020026020010181905250876101000151816022815181106112535761125361583a565b60200260200101819052508760c00151816023815181106112765761127661583a565b60200260200101819052508760e00151816024815181106112995761129961583a565b60200260200101819052505f6112df87606001518660c001518b6101800151877f0000000000000000000000000000000000000000000000000000000000000000612be4565b9050611309815f815181106112f6576112f661583a565b60200260200101518661012001516127a7565b608086018190526101808a01515160c089015161133a92916107809161132f91906127a7565b8861014001516127a7565b608086015260c087015161134d90612d42565b60a08601525f5b61137f60017f00000000000000000000000000000000000000000000000000000000000000006157ed565b81101561157c576113af610b288960e001518784600161139f9190615800565b81518110610b1b57610b1b61583a565b61012087015260e08801516113de90610b2890876113ce856001615800565b81518110610b5457610b5461583a565b61014087015260a08601516101208701516113f991906127a7565b61016087015260a086015160c089015161142191611416916127a7565b8761014001516127a7565b61018087018190526114449061143690612bd2565b610780886101600151612bd2565b848261145260246001615800565b61145c9190615800565b8151811061146c5761146c61583a565b6020026020010181815250505f6114af8761018001518c61018001518460016114959190615800565b601c81106114a5576114a561583a565b60200201516127a7565b90506114e981610780896101600151868660016114cc9190615800565b815181106114dc576114dc61583a565b60200260200101516127a7565b90506114f98760800151826127c2565b608088015260a087015160c08a015161151f91611515916127a7565b8a60c001516127a7565b60a08801526101608b015182601b811061153b5761153b61583a565b6020020151848361154e60246001615800565b6115589190615800565b815181106115685761156861583a565b602090810291909101015250600101611354565b50604080518082019091526001815260026020820152826115be7f00000000000000000000000000000000000000000000000000000000000000006024615800565b815181106115ce576115ce61583a565b602090810291909101015260808501518361160a7f00000000000000000000000000000000000000000000000000000000000000006024615800565b8151811061161a5761161a61583a565b60209081029190910101526101c089015180836116587f00000000000000000000000000000000000000000000000000000000000000006024615800565b611663906001615800565b815181106116735761167361583a565b602090810291909101015260e0880151846116af7f00000000000000000000000000000000000000000000000000000000000000006024615800565b6116ba906001615800565b815181106116ca576116ca61583a565b6020026020010181815250505f6116e18486612d4d565b90505f6116ed83612e5d565b90505f6116fe8d5f01518484612ea3565b90505f5f61170e8f5f0151612f19565b9150915061171b82612fda565b61172481612fda565b61172f858385613079565b945061173c848285613079565b9350611748858561309f565b9f9e505050505050505050505050505050565b611763615206565b50604080516103e08101825263020000008152601960208083019190915260ae82840152825180840184527f103e885bea5bfe7fcbe3c42caee67c78e3fe380154e3172d189aef4915cc72a181527f2d09ae29c677f60771b9f86ba75008dd28db8cb5901575221c22bf121fb2af52818301526060830152825180840184527f02bffc8e97a366e440ce2fb48cac885772b401d8407d1c7b4a2945d6c67c975c81527f24c9be6c1654edc6fd1e0ce00db22f9eb0b66083581774c2f6caf734e97ef60c818301526080830152825180840184527f195698eb82f83416e9fca2a5c6dfdde0986f0dee7db191bd6e3adbe70e8d183181527f0a95a38e4e37d772f3d55dc08149891551f5a24295c8989f120625ad65c2cb498183015260a0830152825180840184527f22adbdbbe858a0b7da536aa922248f5e5f93ceec5fc5fd9aabf832171b1b73b281527f275bdfaf48e2df01e8e96e0a8558ac6a76cda1dd33edef76423c0562bf912bfd8183015260c0830152825180840184527f0bbf4a276b51b1b96eb0db4265fa89ead4e52cde8cd2c1bdd1de9cac9e22015a81527f2389248a425be70b778f22891305517b7feb281f12acb7b615748a55ccc5fed28183015260e0830152825180840184527f2fc5d484600b7e27ceca38db8e1d962c97d4705ecc94838c258b6e688f25272381527f0b39e6ac255a87a7293a763e39c52f431c362523f24504fff5a3b2cffa810d4c81830152610100830152825180840184527f01a8abe0d74344165494348196db5fa7da3a745f398fd1374cc2cb15bcc58ff481527f0f62b9babe865f3d0c422867d8b7f7fa5c13d85721a659f3b9ff8fc8cc6fc99281830152610120830152825180840184527f199d614f1c39384f457291d995b53bf0150368f9fe39c2be8697951f210f6f3f81527f1a12844f5e207c0553829a7fc32a046c0656d8915ce6e5704e1f845d31c46a8881830152610140830152825180840184527f0f81606763e17b1268630bc0c0ef3f6c00c226fe4f6462a57a3ce6295c9e7fe981527f1adbb25745212a79c463991a886c607dcdb4e2980e21edd5b3de7ec6ea9aabd881830152610160830152825180840184527f29d8e1f4ede7f7f2ad4f1219c54affed3e3e6b0a43a215a76c6e3c51bc3bfb6881527f217007ffa47ffaad40fa403eedda0e62613055f264220cbf30083bc9fb8006fc81830152610180830152825180840184527f1c8e2fa2b7c8c0e0a3079eba2da6130777bf9081bcb13e0e86e6adadd5678f0681527f04b3c72f57e6a798c1892214333f89ab401df0ddc7d7e1b38145c06aa08c01fc818301526101a0830152825180840184527f1337b14b10aedddbe982321a563498def8cee7a9fb8954034b266671f7eb48ba81527f172c3b008bedf83bae6ce81647fbda2afee485617ed0638d270c02c5c64b5bd8818301526101c0830152825180840184527f2a0e239dccc66595bf5aec39acae1866d9dec2825f3b1f1ced96a0190fbda4bc81527f09b04094dcd20745380077ba20adffa50c08aab302a8c6a23905f936d6d58f3e818301526101e0830152825180840184527f0c423077f89d2f5df358cdb0fba769f15f8af3495e9ddcc88759cacbab554efb81527f211bbe0055753b1aaf4ccd08388c01d533262a462b279238f9b0e57205d6e19681830152610200830152825180840184527f0db9d76aec30eb9c3a00c45b6f28a3dcd5bc81a4f510aec77f181cceca15260581527ee75f75f4d95bf48f04171482d3603bb3e1c641c07cc19b21320164d0b9335581830152610220830152825180840184527f20688ae51015080ba89aa91a358681ea638b994a18e28f920f53c847f7f840e481527f263e6af35556487a5b1412277d568cdb37e58f04fcd80da9e22b682dba0e17ff81830152610240830152825180840184527f14479176ad84b8de5bd84ac9b0926b1a52aa8053a0eefff3fd09c28309de32b481527f22464929e2777eb1120018e4b4ad7749fca84fab4099b589fb793b9d357578ac81830152610260830152825180840184527f1412ff58a4e46936b2948ea841cef13aea107f14f5d1cbfa461a12fab6aee60081527f24ea214d80d98f2fd3f539e3a5130b1771bd7af96d524d0bc74a875f8cdcc55e81830152610280830152825180840184527f16e4ee8f485df252517aa276600e59321c0bccefe8657bad4716957b6a858f7481527f0abdaa3ecdbcd7e8e6cd3522197cbc2793d699d6106f4a53f10a2cbb503939d8818301526102a0830152825180840184527f2b59f301fdb62a52127125e829d9e1620dbbed62c6038a24d396c222ba9a44dc81527f06147799f053b946a3480bd9658826970d0c7232309e84e3bb09a3c37bc3ebd7818301526102c0830152825180840184527f174202706ee06c09612d226f55c2b77c6408b77fda5f0c12e44edb5488da988d81527f09b141b044c3ad70837bf920b71e5633e6a4b08e159c3c4bbbecf712b8bc7c5f818301526102e0830152825180840184527f0420e32194469e7f2c5088803e6b6d5f5259d836505160ffcd8efaa6b0371da581527f07b99d8920a6fa10537d429f81b1d4af4a4106e614a80b178988cdf1779984da81830152610300830152825180840184527f275a0bb22f8c37a3476d71c556d266909fdde001df48d48a78940343ccb0b48a81527f2a4cc2119d1bd729845e8630c5b1aec652a2f2a7ae690c52238e3eafd44b385681830152610320830152825180840184527f1e1d6ac562a951aa01bc279a090d34488936a6404b3c75294fd260df0d36689381527f1643515b25c47e776b6d99eb3ce8b4613b209886681842e5c39ee92efe72c27281830152610340830152825180840184527f20db30b046148206e1ce5d50fe2559d2e60dbe3472bb605600c6e01d0965df8281527f0d5d5be706d7b3b8a7d3d02043ef0e324676187770f682c791ce1cd3deadc05881830152610360830152825180840184527f1f59b85de9212665c6c3e59fb35ab6609d72f5ad8007449dc8019a5886fad88f81527f21c9b787b5e0109e8ab3c2293b8c67fa9ec871818722fb8bea77aa6477aaae4c8183015261038083015282518084018452600181526002818301526103a083015282518084019093527f0f1f48a7b4ad94b0118c82c8e9c37419da3a9177e2207785d7ff33bb5a8b1e6483527f0a4599aca26d61668630e54a7c8c0aeadf1a6597ce661768e2676b794020f797908301526103c081019190915290565b5f6103336120a4838561587a565b612803565b6120b1615509565b60408051808201909152805f516020615a9a5f395f51905f526120d760205f8789615813565b6120e09161587a565b6120ea91906158ab565b81526020908101905f516020615a9a5f395f51905f529061210f906040908789615813565b6121189161587a565b61212291906158ab565b90529392505050565b612133615521565b5f6121418888888888613293565b6040860191909152602085019190915290835292506121608389613590565b6080850191909152606084019190915291989197509095505050505050565b612187615551565b5f612190615570565b8481526101008401805151602080840191909152905181015160408084019190915260a086018051516060850152518201516080840152516121f3916121d8918491016158be565b60405160208183030381529060405280519060200120612803565b91506121fe82613617565b6020850152835260015b60026122166001601c6157ed565b61222091906158f1565b8110156122a05761223d836040516020016121d891815260200190565b925061224883613617565b856122548460026157d6565b601b81106122645761226461583a565b60200201866122748560026157d6565b61227f906001615800565b601b811061228f5761228f61583a565b602002019190915252600101612208565b506122ad6001601c6157ed565b60011660011480156122ca575060026122c86001601c6157ed565b115b15612324576122e5826040516020016121d891815260200190565b91505f6122f183613617565b8560016122ff81601c6157ed565b61230991906157ed565b601b81106123195761231961583a565b602002019190915250505b509250929050565b61233461558e565b5f61234b846040516020016121d891815260200190565b935061235684613617565b50825260015b838110156123b357612394836123736001846157ed565b601c81106123835761238361583a565b6020020151846114956001856157ed565b8382601c81106123a6576123a661583a565b602002015260010161235c565b509093915050565b6123c361558e565b5f805b83811015612485576123d66155ad565b8581525f5b600881101561243f5787610120015183601c81106123fb576123fb61583a565b602002015181600881106124115761241161583a565b602002015182612422836001615800565b600981106124325761243261583a565b60200201526001016123db565b50612454816040516020016121d89190615904565b95505f61246087613617565b8685601c81106124725761247261583a565b60200201919091525050506001016123c6565b5090949293505050565b5f5f6124996155cc565b8381525f5b60298110156124ec5785610140015181602981106124be576124be61583a565b6020020151826124cf836001615800565b602a81106124df576124df61583a565b602002015260010161249e565b50612501816040516020016121d89190615938565b91505f61250d83613617565b5096929550919350505050565b5f80806125286001856157ed565b6125339060026157d6565b61253e906001615800565b6001600160401b038111156125555761255561584e565b60405190808252806020026020018201604052801561257e578160200160208202803683370190505b50905084815f815181106125945761259461583a565b60209081029190910101525f5b6125ac6001866157ed565b81101561265f5786610160015181601b81106125ca576125ca61583a565b602002015151826125dc8360026157d6565b6125e7906001615800565b815181106125f7576125f761583a565b60200260200101818152505086610160015181601b811061261a5761261a61583a565b6020020151602001518282600261263191906157d6565b61263c906002615800565b8151811061264c5761264c61583a565b60209081029190910101526001016125a1565b50612674816040516020016121d8919061596c565b91505f61268083613617565b509792965091945050505050565b5f808061269c846001615800565b6001600160401b038111156126b3576126b361584e565b6040519080825280602002602001820160405280156126dc578160200160208202803683370190505b50905084815f815181106126f2576126f261583a565b60209081029190910101525f5b8481101561265f5786610180015181601c811061271e5761271e61583a565b60200201518261272f836001615800565b8151811061273f5761273f61583a565b60209081029190910101526001016126ff565b5f5f61275c6155eb565b8381526101a08501805151602080840191909152905181015160408084019190915251612501916121d8918491016159a1565b5f5f516020615aba5f395f51905f52825b0692915050565b5f5f516020615aba5f395f51905f5282840990505b92915050565b5f5f516020615aba5f395f51905f528284089392505050565b5f5f516020615aba5f395f51905f52825f516020615aba5f395f51905f520384089392505050565b5f5f516020615aba5f395f51905f52826127a0565b5f6103338361077b84612b62565b815160208301515f91829161283b91906127c2565b929092149392505050565b60408051610100810182527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffec5181526102d060208201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff1191810191909152609060608201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff71608082015260f060a08201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593effffd3160c08201526113b060e08201525f906001825b600881101561292d576129238261077b87846127db565b915060010161290c565b50612936615609565b5f5b6008811015612997575f8482600881106129545761295461583a565b602002015190506129698161077b89856127db565b905061297481612b62565b9050808383600881106129895761298961583a565b602002015250600101612938565b505f5b60088110156129ea575f8782600881106129b6576129b661583a565b602002015190506129d3818484600881106114a5576114a561583a565b90506129df86826127c2565b95505060010161299a565b506109b684836127a7565b5f5f612a0b60016107808561077b8960016127db565b9050612a1784826127a7565b95945050505050565b5f612a2961558e565b612a34868285613647565b612a40868683866137f3565b612a4c868683866139df565b612a57868285613c0a565b612a62868285613dfe565b612a6e86868386614147565b612a798682856145f3565b612a84868285614a05565b612a8f868285614dc6565b6109b681856150c6565b60605f826001600160401b03811115612ab457612ab461584e565b604051908082528060200260200182016040528015612add578160200160208202803683370190505b50905083815f81518110612af357612af361583a565b602090810291909101015260015b83811015612b5a57612b3582612b186001846157ed565b81518110612b2857612b2861583a565b6020026020010151612d42565b828281518110612b4757612b4761583a565b6020908102919091010152600101612b01565b509392505050565b5f5f8290505f604051602081526020808201526020604082015282606082015260025f516020615aba5f395f51905f520360808201525f516020615aba5f395f51905f5260a082015260205f60c08360055afa80612bbe575f5ffd5b505f51608091909101604052949350505050565b5f516020615aba5f395f51905f520390565b60605f826001600160401b03811115612bff57612bff61584e565b604051908082528060200260200182016040528015612c28578160200160208202803683370190505b509050825b8015612d37575f85612c406001846157ed565b81518110612c5057612c5061583a565b602002602001015190505f89600184612c6991906157ed565b601c8110612c7957612c7961583a565b602002015190505f612cd4612c98612c91858d6127a7565b60026127a7565b61079e8b612ca76001896157ed565b601c8110612cb757612cb761583a565b602002015161077b612cce8861077b60018a6127db565b876127db565b9050612cf58161077b610b28612cef8761077b6001896127db565b866127c2565b99508990508085612d076001876157ed565b81518110612d1757612d1761583a565b60200260200101818152505050505080612d30906159d4565b9050612c2d565b509695505050505050565b5f6127bc82836127a7565b612d55615509565b5f612d817f00000000000000000000000000000000000000000000000000000000000000006024615800565b612d8c906002615800565b90505f5b81811015612dc257612dba858281518110612dad57612dad61583a565b6020026020010151612fda565b600101612d90565b50604051600190815b60018401811015612e275760208102870160208202870181515160408501528151602001516060850152805160808501525050604080830160606040850160075afa8316925060408260808460065afa90921691600101612dcb565b5080518452602081015160208501525080612e55576040516352ec174560e11b815260040160405180910390fd5b505092915050565b612e65615509565b5f516020615a9a5f395f51905f5282602001515f516020615a9a5f395f51905f52612e9091906157ed565b612e9a91906158ab565b60208301525090565b5f5f5f612eaf86612f19565b91509150612ebb615609565b82518152602080840151818301528251604080840191909152838201516060840152875160808401528782015160a0840152865160c08401528682015160e084015251612f0e916121d8918491016159e9565b979650505050505050565b612f21615509565b612f29615509565b82516020808501516040860151606087015160cc90811b608892831b604494851b90961795909517949094178652608087015160a088015160c089015160e08a0151871b90841b91851b9092171717868401526101008701516101208801516101408901516101608a0151871b90841b91851b909217171785526101808701516101a08801516101c08901516101e09099015190951b9790911b9390911b1791909117939093179281019290925291565b805160208201515f5f516020615a9a5f395f51905f528380095f516020615a9a5f395f51905f5260035f516020615a9a5f395f51905f52838709085f516020615a9a5f395f51905f5284850914915050806130735760405162461bcd60e51b8152602060048201526019602482015278706f696e74206973206e6f74206f6e2074686520637572766560381b60448201526064016100e5565b50505050565b613081615509565b613089615509565b613093838661511f565b9050612a178185615175565b81516020808401518351848301516040805194850195909552938301919091527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c260608301527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed60808301527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b60a08301527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa60c083015260e08201526101008101919091527f260e01b251f6f1c7e7ff4e580791dee8ea51d87a358e038b4efe30fac09383c16101208201527f0118c4d5b837bcc2bc89b5b398b5974e9f5944073b32078b7e231fec938883b06101408201527f04fc6369f7110fe3d25156c1bb9a72859cf2a04641f99ba4ee413c80da6a5fe46101608201527f22febda3c0c0632a56475b4214e5615e11e6dd3f96e6cea2854a87d4dacc5e556101808201525f9081906101a00160405160208183030381529060405290505f5f60086001600160a01b0316836040516132359190615a1d565b5f60405180830381855afa9150503d805f811461326d576040519150601f19603f3d011682016040523d82523d5f602084013e613272565b606091505b50915091508180156109b65750808060200190518101906109b69190615a33565b5f808080806132a3866001615800565b6132ae906006615800565b6001600160401b038111156132c5576132c561584e565b6040519080825280602002602001820160405280156132ee578160200160208202803683370190505b509050865f1b815f815181106133065761330661583a565b60209081029190910101525f5b61331e6010886157ed565b81101561336f578989828181106133375761333761583a565b905060200201358282600161334c9190615800565b8151811061335c5761335c61583a565b6020908102919091010152600101613313565b505f5b60108110156133e0578a5161339a9082601081106133925761339261583a565b602002015190565b828260106133a98b6001615800565b6133b391906157ed565b6133bd9190615800565b815181106133cd576133cd61583a565b6020908102919091010152600101613372565b5060208a015151816133f3886001615800565b815181106134035761340361583a565b6020908102919091018101919091528a810151015181613424886001615800565b61342f906001615800565b8151811061343f5761343f61583a565b602090810291909101015260408a0151518161345c886001615800565b613467906002615800565b815181106134775761347761583a565b60209081029190910181019190915260408b0151015181613499886001615800565b6134a4906003615800565b815181106134b4576134b461583a565b602090810291909101015260608a015151816134d1886001615800565b6134dc906004615800565b815181106134ec576134ec61583a565b60209081029190910181019190915260608b015101518161350e886001615800565b613519906005615800565b815181106135295761352961583a565b602002602001018181525050613549816040516020016121d8919061596c565b915061355482613617565b604080516020810186905292975090955061356f91016121d8565b91505f61357b83613617565b50959b949a5094985090965091945050505050565b5f5f5f61359b615628565b85815260c0858101805151602080850191909152905181015160408085019190915260e08801805151606086015251820151608080860191909152880180515160a0860152518201519284019290925290516135fd916121d891849101615a52565b915061360882613617565b90979096509194509092505050565b5f80826001600160801b038116608082901c61363282612803565b945061363d81612803565b9350505050915091565b5f6136538460076151d6565b90507f183227397098d014dc2822db40c0ac2e9419f4243cdcb848a1f0fac9f80000005f6136b46136ae6136888560036127db565b61077b6136a36136988b5f6151d6565b61077b8c601d6151d6565b61077b8b601c6151d6565b836127a7565b905061373561372a6137116136f86136df856107806136d48d60026151d6565b61077b8e601c6151d6565b6107806136ed8c60036151d6565b61077b8d601d6151d6565b6107806137068b60046151d6565b61077b8c601e6151d6565b61078061371f8a60056151d6565b61077b8b601f6151d6565b6107808860016151d6565b9050613754816107806137498660016127db565b61077b8a60276151d6565b905061376081846127a7565b905061376c81856127a7565b8552505f90506137a661379c61379161378688601c6151d6565b61078089601f6151d6565b61079e8860246151d6565b610780875f6151d6565b90506137b78161077b8460026127db565b90506137c88161077b8460016127db565b90506137d481836127a7565b90506137e081846127a7565b9050808460015b60200201525050505050565b5f5f5f61382961381f61380789601c6151d6565b6107806138158b60126151d6565b8a606001516127a7565b87608001516127c2565b90506138628161077b6138586138408b601d6151d6565b61078061384e8d60136151d6565b8c606001516127a7565b89608001516127c2565b90506138878161077b6138586138798b601e6151d6565b61078061384e8d60146151d6565b90506138ac8161077b61385861389e8b601f6151d6565b61078061384e8d60156151d6565b92505f90506138d061381f6138c289601c6151d6565b6107806138158b600e6151d6565b90506138f58161077b6138586138e78b601d6151d6565b61078061384e8d600f6151d6565b905061391a8161077b61385861390c8b601e6151d6565b61078061384e8d60106151d6565b905061393f8161077b6138586139318b601f6151d6565b61078061384e8d60116151d6565b91505f90506139666139606139558960206151d6565b6107808a601a6151d6565b846127a7565b905061399b8161079e61399561397d8b60286151d6565b61078061398b8d601b6151d6565b8c60a001516127a7565b856127a7565b90506139a781856127a7565b6040860152505f6139ca6139956139bf89601b6151d6565b61077b8a60286151d6565b9050808560035b602002015250505050505050565b5f5f613a3d613a25613a0d6139f86138588a60166151d6565b610780613a068b60176151d6565b8a516127a7565b610780613a1b8a60186151d6565b89602001516127a7565b610780613a338960196151d6565b88604001516127a7565b91505f613a74613a5b613a5189601c6151d6565b88608001516127c2565b610780613a698a60036151d6565b61077b8b60246151d6565b90505f613a9d613a8589601d6151d6565b610780613a928b5f6151d6565b61077b8c60256151d6565b90505f613ac7613aae8a601e6151d6565b610780613abc8c60016151d6565b61077b8d60266151d6565b9050613b06613aee613ae085610780868d5f01516127a7565b610780848c602001516127a7565b610780613afc8c60046151d6565b8b604001516127a7565b93505050505f613b1a6139608860216151d6565b90505f613b2b6139608960216151d6565b90505f613b63613b4a613b3f8b60236151d6565b6107808c60066151d6565b61079e613b588c60236151d6565b61077b8d60066151d6565b90505f613b87613b81613b7687896127a7565b61077b8d60216151d6565b836127db565b9050613b9381886127a7565b90505f613bbb613bad613ba78d60066151d6565b876127a7565b61079e613ba78e60226151d6565b90505f613bc98c60236151d6565b90505f613bd9613b8183846127a7565b60808c0185905260a08c018490529050613bf3818b6127a7565b8b6006602002015250505050505050505050505050565b5f613c165f60016127db565b90505f613c245f60026127db565b90505f613c325f60036127db565b90505f613c4e613c4388601d6151d6565b61079e89601c6151d6565b90505f613c6a613c5f89601e6151d6565b61079e8a601d6151d6565b90505f613c86613c7b8a601f6151d6565b61079e8b601e6151d6565b90505f613ca2613c978b60246151d6565b61079e8c601f6151d6565b905083613cb38161077b818b6127c2565b9050613cc38161077b878a6127c2565b9050613cd38161077b87896127c2565b9050613ce48161077b8d60086151d6565b9050613cf0818a6127a7565b60e08b01525082613d058161077b818b6127c2565b9050613d158161077b868a6127c2565b9050613d258161077b86896127c2565b9050613d368161077b8d60086151d6565b9050613d42818a6127a7565b6101008b01525081613d588161077b818b6127c2565b9050613d688161077b858a6127c2565b9050613d788161077b85896127c2565b9050613d898161077b8d60086151d6565b9050613d95818a6127a7565b6101208b01525080613dab8161077b818b6127c2565b9050613dbb8161077b848a6127c2565b9050613dcb8161077b84896127c2565b9050613ddc8161077b8d60086151d6565b9050613de8818a6127a7565b610140909a019990995250505050505050505050565b613e376040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b613e4284601d6151d6565b8152613e4f84601e6151d6565b6020820152613e5f8460246151d6565b6040820152613e6f8460276151d6565b6060820152613e7f8460266151d6565b6080820152613e8f8460256151d6565b60a08201525f613ea08560026151d6565b90505f613ead865f6151d6565b90505f613ec18460400151855f01516127db565b90505f613ed6856020015186602001516127a7565b606086015190915086905f90613eec90806127a7565b90505f613f0a613f0489602001518a606001516127a7565b886127a7565b90505f613f29613f228a60a001518b604001516127c2565b8a516127c2565b9050613f38613ba782886127a7565b9050613f5f613f59613f53613f4d84876127db565b886127db565b846127c2565b836127c2565b9050613f87613f7c613f7183876127a7565b61077b8f60096151d6565b61077b60018a6127db565b6101608c015250505050602085015160808601515f91613fa6916127c2565b90505f613fc4613fba8860600151886127a7565b88602001516127db565b90505f613fe8613fd484876127a7565b6107806139958b60a001518c5f01516127db565b9050614010614005613ffa838c6127a7565b61077b8e60096151d6565b61077b6001896127db565b6101808b0152505f9150614031905061402a8360116127c2565b87516127a7565b90505f61403e83846127c2565b905061404a81826127c2565b90505f6140588360096127a7565b905061408161407b6139606140748b60a001518c5f01516127c2565b8b516127c2565b826127db565b60c089018190525f9061409c90613f0490613f71908d6127a7565b90506140af8b600b6020020151826127c2565b6101608c0152505086515f92506140d6915061402a906140cf90806127c2565b88516127c2565b90505f6141166140f18361077b8a5f01518b60a001516127db565b602089015161079e9061410490806127c2565b61077b8b602001518c608001516127c2565b905061413389600c6020020151610780613f04613f71858d6127a7565b89600c602002015250505050505050505050565b6141b1604051806101e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6141c96141bf86601e6151d6565b85604001516127a7565b8082526141e8906107806141de88601d6151d6565b87602001516127a7565b8082526141fd9061078061402a88601c6151d6565b80825261420f906107808760016151d6565b808252602082018190526142289061079e87601f6151d6565b81526142436142388660246151d6565b61079e87601c6151d6565b60808201526142616142568660276151d6565b61079e87601f6151d6565b6060820152608081015161427a9061077b8160016127db565b6101c082015260808101516142ba906142b0906142a99061077b60015f516020615aba5f395f51905f526157ed565b60016127c2565b82606001516127a7565b60a082018190526142f0906142e29061077b6142d78960026151d6565b61077b8a60036151d6565b61077b61399588600a6151d6565b83600e60200201526101c0810151614314906142e29061077b6142d78960026151d6565b6101e084015280516143399061077b61432e8860026151d6565b61077b8960036151d6565b6101208201525f61435861434e87601f6151d6565b83602001516127db565b90506143698161077b8360016127db565b60e083015261438661437c8760266151d6565b86604001516127a7565b604083018190526143a99061078061439f8960256151d6565b88602001516127a7565b604083018190526143c9906107806143c28960246151d6565b88516127a7565b60408301526143e66143dc8760276151d6565b83604001516127db565b60408301525f6144056143fa8860266151d6565b61079e89601e6151d6565b90506144576144326136ae6142a9866080015160015f516020615aba5f395f51905f5261077b91906157ed565b61077b6142a9866040015160015f516020615aba5f395f51905f5261077b91906157ed565b60c084015260408301516144799061446f90806127a7565b84604001516127db565b61010084015260c08301516144a5906144979061077b8a60046151d6565b61077b613ba78a600a6151d6565b6102008601526101c08301516144c4906144979061077b8a60046151d6565b6102208601526101008301516144e3906144979061077b8a60046151d6565b61024086015260e08301516144fd9061077b8960046151d6565b61014084015261451c6145118860256151d6565b61079e89601d6151d6565b610160840152608083015161455a906143fa9061454f906142a99061077b60015f516020615aba5f395f51905f526157ed565b8561016001516127a7565b61018084018190526101208401516101a08501819052614591916107809061077b6145868c60056151d6565b61077b8d60026151d6565b6101a0840181905283516145b191906107809061077b6145868c5f6151d6565b6101a084018190526101408401516145c991906127c2565b6101a084018190526145e39061077b613ba78a600a6151d6565b6101a0840181905285600d6139d1565b61462c6040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61466161464861463d86601c6151d6565b61077b8760256151d6565b6107806146568760246151d6565b61077b88601d6151d6565b81526146a661469b61468261467787601c6151d6565b61077b88601f6151d6565b61078061469088601d6151d6565b61077b89601e6151d6565b61079e8660266151d6565b604082018190526146bb90600160441b6127a7565b604082018190526146d19061079e8660276151d6565b6040820181905281516146e491906127c2565b604082018190526146fa9061077b8660056151d6565b6040820152805161470f90600160441b6127a7565b80825261472f906107806147248760246151d6565b61077b8860256151d6565b808252602082018190526147569061079e61474b87601e6151d6565b61078088601f6151d6565b6020820181905261476c9061077b8660046151d6565b60208201528051606082018190526147899061078086601f6151d6565b606082018190526147ad9061079e6147a28760266151d6565b6107808860276151d6565b606082018190526147c29061077b865f6151d6565b8160600181815250505f6147eb6147e1836020015184604001516127c2565b83606001516127c2565b90506147fc8161077b8760036151d6565b905061481461480c8660256151d6565b6140006127a7565b6080830181905261482a906107808760246151d6565b6080830181905261483d906140006127a7565b608083018190526148539061078087601e6151d6565b60808301819052614866906140006127a7565b6080830181905261487c9061078087601d6151d6565b6080830181905261488f906140006127a7565b608083018190526148a59061078087601c6151d6565b608083018190526148bb9061079e87601f6151d6565b608083018190526148d19061077b8760056151d6565b60808301526148e461480c8660266151d6565b60a083018190526148fa906107808760256151d6565b60a0830181905261490d906140006127a7565b60a08301819052614923906107808760246151d6565b60a08301819052614936906140006127a7565b60a0830181905261494c9061078087601f6151d6565b60a0830181905261495f906140006127a7565b60a083018190526149759061078087601e6151d6565b60a0830181905261498b9061079e8760276151d6565b60a083018190526149a09061077b875f6151d6565b60a0830181905260808301515f916149b891906127c2565b90506149c98161077b8860046151d6565b90506149d582826127c2565b60c084018190526149ee9061077b613ba789600b6151d6565b60c084018190528560136020020152505050505050565b614a7b6040518061022001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b614a94614a8985601c6151d6565b6107808660026151d6565b8152614aaf614aa485601d6151d6565b6107808660036151d6565b6020820152614acd614ac285601e6151d6565b6107808660046151d6565b6040820152614aeb614ae085601f6151d6565b6107808660056151d6565b60608201528051614b1d90614b1690614b0f90614b0890806127a7565b84516127a7565b83516127a7565b82516127a7565b60808201526020810151614b5b90614b5190614b4790614b3d90806127a7565b84602001516127a7565b83602001516127a7565b82602001516127a7565b60a08201526040810151614b9990614b8f90614b8590614b7b90806127a7565b84604001516127a7565b83604001516127a7565b82604001516127a7565b60c08201526060810151614bcd906142b090614bc390614bb990806127a7565b84606001516127a7565b83606001516127a7565b60e0820152608081015160a0820151614be691906127c2565b61010082015260c081015160e0820151614c0091906127c2565b61012082015260a0810151614c2490614c1990806127c2565b8261012001516127c2565b61014082015260e0810151614c4890614c3d90806127c2565b8261010001516127c2565b610160820152610120810151614c5e90806127c2565b6101e08201819052614c7f90614c7490806127c2565b8261016001516127c2565b6101e0820152610100810151614c9590806127c2565b6101a08201819052614cb690614cab90806127c2565b8261014001516127c2565b6101a08201819052610160820151614ccd916127c2565b6101808201526101408101516101e0820151614ce991906127c2565b6101c0820152614cfd6136ae85600c6151d6565b6102008201819052610280840151610180830151614d28926107809161077b9061079e8a60246151d6565b8360146020020152614d58836015602002015161078083610200015161077b856101a0015161079e8a60256151d6565b8360156020020152614d88836016602002015161078083610200015161077b856101c0015161079e8a60266151d6565b8360166020020152614db8836017602002015161078083610200015161077b856101e0015161079e8a60276151d6565b836017602002015250505050565b614e186040518061016001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f6040518060800160405280614e4d7f10dc6e9c006ea38b04b1e03b4bd9490c0d03f98929ca1d7fb56821fd19d3b6e761278f565b8152602001614e7b7f0c28145b6a44df3e0149b3d0a30b3bb599df9756d4dd9b84a86b38cfb45a740b61278f565b8152602001614ea87e544b8338791518b2c7645a50392798b21f75bb60e3596170067d00141cac1561278f565b8152602001614ed67f222c01175718386f2e2e82eb122789e352e105a3b8fa852613bc534433ee428b61278f565b90529050614ef3614ee886601c6151d6565b6107808760026151d6565b6101208301819052614f3290614f2790614f1c90614f1190806127a7565b8561012001516127a7565b8461012001516127a7565b8361012001516127a7565b8252614f3f85601d6151d6565b6020830152614f4f85601e6151d6565b6040830152614f5f85601f6151d6565b606083015281516020830151614f87916147e191614f7d91906127c2565b84604001516127c2565b6080830152614f9a61396086600d6151d6565b6101408301528151614fbb90614fb190835f6114a5565b83608001516127c2565b60a0830152614fe7846018602002015161078084610140015161077b8660a0015161079e8b60246151d6565b610300850152602082015161500290614fb1908360016114a5565b60c083015261502e846019602002015161078084610140015161077b8660c0015161079e8b60256151d6565b610320850152604082015161504990614fb1908360026114a5565b60e083015261507584601a602002015161078084610140015161077b8660e0015161079e8b60266151d6565b610340850152606082015161509090614fb1908360036114a5565b6101008301526150be84601b602002015161078084610140015161077b86610100015161079e8b60276151d6565b84601b6137e7565b815160015b601c8110156151185761510e826107808684601c81106150ed576150ed61583a565b6020020151866150fe6001876157ed565b601b81106114a5576114a561583a565b91506001016150cb565b5092915050565b615127615509565b61512f615509565b604051835181526020840151602082015284604082015260408160608360075afa80615159575f5ffd5b5080518252602080820151908301526060016040529392505050565b61517d615509565b615185615509565b6040518451815260208501516020820152835160408201526020840151606082015260408160808360065afa806151ba575f5ffd5b5080518252602080820151908301526080016040529392505050565b5f828260288111156151ea576151ea615a85565b602981106151fa576151fa61583a565b60200201519392505050565b604051806103e001604052805f81526020015f81526020015f815260200161522c615509565b8152602001615239615509565b8152602001615246615509565b8152602001615253615509565b8152602001615260615509565b815260200161526d615509565b815260200161527a615509565b8152602001615287615509565b8152602001615294615509565b81526020016152a1615509565b81526020016152ae615509565b81526020016152bb615509565b81526020016152c8615509565b81526020016152d5615509565b81526020016152e2615509565b81526020016152ef615509565b81526020016152fc615509565b8152602001615309615509565b8152602001615316615509565b8152602001615323615509565b8152602001615330615509565b815260200161533d615509565b815260200161534a615509565b8152602001615357615509565b8152602001615364615509565b8152602001615371615509565b815260200161537e615509565b815260200161538b615509565b905290565b604051806101e001604052806153a4615646565b81526020016153b1615509565b81526020016153be615509565b81526020016153cb615509565b81526020016153d8615509565b81526020016153e5615509565b81526020016153f2615509565b81526020016153ff615509565b815260200161540c615509565b8152602001615419615665565b8152602001615426615693565b81526020016154336156b2565b815260200161537161558e565b604051806101000160405280615454615521565b8152602001615461615551565b815260200161546e61558e565b815260200161547b61558e565b81526020015f81526020015f81526020015f81526020015f81525090565b604051806101c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020016154d76156e0565b81526020016154e46156e0565b81526020015f81526020015f81526020015f81526020015f8152602001606081525090565b60405180604001604052805f81526020015f81525090565b6040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b604051806103600160405280601b906020820280368337509192915050565b6040518060a001604052806005906020820280368337509192915050565b604051806103800160405280601c906020820280368337509192915050565b6040518061012001604052806009906020820280368337509192915050565b604051806105400160405280602a906020820280368337509192915050565b60405180606001604052806003906020820280368337509192915050565b6040518061010001604052806008906020820280368337509192915050565b6040518060e001604052806007906020820280368337509192915050565b6040518061020001604052806010906020820280368337509192915050565b604051806103800160405280601c905b61567d615609565b8152602001906001900390816156755790505090565b6040518061052001604052806029906020820280368337509192915050565b604051806103600160405280601b905b6156ca615509565b8152602001906001900390816156c25790505090565b60405180608001604052806004906020820280368337509192915050565b5f5f5f5f60408587031215615711575f5ffd5b84356001600160401b03811115615726575f5ffd5b8501601f81018713615736575f5ffd5b80356001600160401b0381111561574b575f5ffd5b87602082840101111561575c575f5ffd5b6020918201955093508501356001600160401b0381111561577b575f5ffd5b8501601f8101871361578b575f5ffd5b80356001600160401b038111156157a0575f5ffd5b8760208260051b84010111156157b4575f5ffd5b949793965060200194505050565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176127bc576127bc6157c2565b818103818111156127bc576127bc6157c2565b808201808211156127bc576127bc6157c2565b5f5f85851115615821575f5ffd5b8386111561582d575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b5f60018201615873576158736157c2565b5060010190565b803560208310156127bc575f19602084900360031b1b1692915050565b634e487b7160e01b5f52601260045260245ffd5b5f826158b9576158b9615897565b500690565b5f8183825b60058110156158e25781518352602092830192909101906001016158c3565b50505060a08201905092915050565b5f826158ff576158ff615897565b500490565b5f8183825b6009811015615928578151835260209283019290910190600101615909565b5050506101208201905092915050565b5f8183825b602a81101561595c57815183526020928301929091019060010161593d565b5050506105408201905092915050565b81515f90829060208501835b82811015615996578151845260209384019390910190600101615978565b509195945050505050565b5f8183825b60038110156159c55781518352602092830192909101906001016159a6565b50505060608201905092915050565b5f816159e2576159e26157c2565b505f190190565b5f8183825b6008811015615a0d5781518352602092830192909101906001016159ee565b5050506101008201905092915050565b5f82518060208501845e5f920191825250919050565b5f60208284031215615a43575f5ffd5b81518015158114610333575f5ffd5b5f8183825b6007811015615a76578151835260209283019290910190600101615a57565b50505060e08201905092915050565b634e487b7160e01b5f52602160045260245ffdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001";
5
5
  /**
6
6
  * HonkVerifier link references.
7
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"HonkVerifierBytecode.d.ts","sourceRoot":"","sources":["../src/HonkVerifierBytecode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,oBAAoB,y37CAAy37C,CAAC;AAC357C;;GAEG;AACH,eAAO,MAAM,0BAA0B,IAAc,CAAC"}
1
+ {"version":3,"file":"HonkVerifierBytecode.d.ts","sourceRoot":"","sources":["../src/HonkVerifierBytecode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,oBAAoB,u37CAAu37C,CAAC;AACz57C;;GAEG;AACH,eAAO,MAAM,0BAA0B,IAAc,CAAC"}