@aztec/l1-artifacts 3.0.0-nightly.20251111 → 3.0.0-nightly.20251113

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 (149) hide show
  1. package/dest/CoinIssuerAbi.d.ts +12 -0
  2. package/dest/CoinIssuerAbi.d.ts.map +1 -1
  3. package/dest/CoinIssuerAbi.js +16 -0
  4. package/dest/DateGatedRelayerAbi.d.ts +12 -0
  5. package/dest/DateGatedRelayerAbi.d.ts.map +1 -1
  6. package/dest/DateGatedRelayerAbi.js +16 -0
  7. package/dest/EmpireBaseAbi.d.ts +12 -0
  8. package/dest/EmpireBaseAbi.d.ts.map +1 -1
  9. package/dest/EmpireBaseAbi.js +16 -0
  10. package/dest/EmpireSlasherDeploymentExtLibAbi.d.ts +12 -0
  11. package/dest/EmpireSlasherDeploymentExtLibAbi.d.ts.map +1 -1
  12. package/dest/EmpireSlasherDeploymentExtLibAbi.js +16 -0
  13. package/dest/EmpireSlashingProposerAbi.d.ts +12 -0
  14. package/dest/EmpireSlashingProposerAbi.d.ts.map +1 -1
  15. package/dest/EmpireSlashingProposerAbi.js +16 -0
  16. package/dest/ErrorsAbi.d.ts +12 -0
  17. package/dest/ErrorsAbi.d.ts.map +1 -1
  18. package/dest/ErrorsAbi.js +16 -0
  19. package/dest/FeeAssetHandlerAbi.d.ts +12 -0
  20. package/dest/FeeAssetHandlerAbi.d.ts.map +1 -1
  21. package/dest/FeeAssetHandlerAbi.js +16 -0
  22. package/dest/FeeJuicePortalAbi.d.ts +12 -0
  23. package/dest/FeeJuicePortalAbi.d.ts.map +1 -1
  24. package/dest/FeeJuicePortalAbi.js +16 -0
  25. package/dest/FeeJuicePortalBytecode.d.ts +1 -1
  26. package/dest/FeeJuicePortalBytecode.js +1 -1
  27. package/dest/GSEAbi.d.ts +12 -0
  28. package/dest/GSEAbi.d.ts.map +1 -1
  29. package/dest/GSEAbi.js +16 -0
  30. package/dest/GovernanceAbi.d.ts +12 -0
  31. package/dest/GovernanceAbi.d.ts.map +1 -1
  32. package/dest/GovernanceAbi.js +16 -0
  33. package/dest/GovernanceProposerAbi.d.ts +12 -0
  34. package/dest/GovernanceProposerAbi.d.ts.map +1 -1
  35. package/dest/GovernanceProposerAbi.js +16 -0
  36. package/dest/HonkVerifierAbi.d.ts +12 -0
  37. package/dest/HonkVerifierAbi.d.ts.map +1 -1
  38. package/dest/HonkVerifierAbi.js +16 -0
  39. package/dest/HonkVerifierBytecode.d.ts +1 -1
  40. package/dest/HonkVerifierBytecode.js +1 -1
  41. package/dest/IERC20Abi.d.ts +12 -0
  42. package/dest/IERC20Abi.d.ts.map +1 -1
  43. package/dest/IERC20Abi.js +16 -0
  44. package/dest/IVerifierAbi.d.ts +12 -0
  45. package/dest/IVerifierAbi.d.ts.map +1 -1
  46. package/dest/IVerifierAbi.js +16 -0
  47. package/dest/InboxAbi.d.ts +12 -0
  48. package/dest/InboxAbi.d.ts.map +1 -1
  49. package/dest/InboxAbi.js +16 -0
  50. package/dest/InboxBytecode.d.ts +1 -1
  51. package/dest/InboxBytecode.js +1 -1
  52. package/dest/MockVerifierAbi.d.ts +12 -0
  53. package/dest/MockVerifierAbi.d.ts.map +1 -1
  54. package/dest/MockVerifierAbi.js +16 -0
  55. package/dest/MockZKPassportVerifierAbi.d.ts +12 -0
  56. package/dest/MockZKPassportVerifierAbi.d.ts.map +1 -1
  57. package/dest/MockZKPassportVerifierAbi.js +16 -0
  58. package/dest/MultiAdderAbi.d.ts +12 -0
  59. package/dest/MultiAdderAbi.d.ts.map +1 -1
  60. package/dest/MultiAdderAbi.js +16 -0
  61. package/dest/MultiAdderBytecode.d.ts +1 -1
  62. package/dest/MultiAdderBytecode.js +1 -1
  63. package/dest/NewGovernanceProposerPayloadAbi.d.ts +12 -0
  64. package/dest/NewGovernanceProposerPayloadAbi.d.ts.map +1 -1
  65. package/dest/NewGovernanceProposerPayloadAbi.js +16 -0
  66. package/dest/OutboxAbi.d.ts +12 -0
  67. package/dest/OutboxAbi.d.ts.map +1 -1
  68. package/dest/OutboxAbi.js +16 -0
  69. package/dest/OutboxBytecode.d.ts +1 -1
  70. package/dest/OutboxBytecode.js +1 -1
  71. package/dest/RegisterNewRollupVersionPayloadAbi.d.ts +12 -0
  72. package/dest/RegisterNewRollupVersionPayloadAbi.d.ts.map +1 -1
  73. package/dest/RegisterNewRollupVersionPayloadAbi.js +16 -0
  74. package/dest/RegisterNewRollupVersionPayloadBytecode.d.ts +1 -1
  75. package/dest/RegisterNewRollupVersionPayloadBytecode.js +1 -1
  76. package/dest/RegistryAbi.d.ts +12 -0
  77. package/dest/RegistryAbi.d.ts.map +1 -1
  78. package/dest/RegistryAbi.js +16 -0
  79. package/dest/RewardDistributorAbi.d.ts +12 -0
  80. package/dest/RewardDistributorAbi.d.ts.map +1 -1
  81. package/dest/RewardDistributorAbi.js +16 -0
  82. package/dest/RewardExtLibAbi.d.ts +12 -0
  83. package/dest/RewardExtLibAbi.d.ts.map +1 -1
  84. package/dest/RewardExtLibAbi.js +16 -0
  85. package/dest/RewardExtLibBytecode.d.ts +1 -1
  86. package/dest/RewardExtLibBytecode.js +1 -1
  87. package/dest/RollupAbi.d.ts +12 -0
  88. package/dest/RollupAbi.d.ts.map +1 -1
  89. package/dest/RollupAbi.js +16 -0
  90. package/dest/RollupBytecode.d.ts +1 -1
  91. package/dest/RollupBytecode.js +1 -1
  92. package/dest/RollupOperationsExtLibAbi.d.ts +12 -0
  93. package/dest/RollupOperationsExtLibAbi.d.ts.map +1 -1
  94. package/dest/RollupOperationsExtLibAbi.js +16 -0
  95. package/dest/RollupOperationsExtLibBytecode.d.ts +1 -1
  96. package/dest/RollupOperationsExtLibBytecode.d.ts.map +1 -1
  97. package/dest/RollupOperationsExtLibBytecode.js +1 -1
  98. package/dest/RollupStorage.d.ts +2 -2
  99. package/dest/RollupStorage.js +2 -2
  100. package/dest/SlashFactoryAbi.d.ts +12 -0
  101. package/dest/SlashFactoryAbi.d.ts.map +1 -1
  102. package/dest/SlashFactoryAbi.js +16 -0
  103. package/dest/SlashFactoryBytecode.d.ts +1 -1
  104. package/dest/SlashFactoryBytecode.js +1 -1
  105. package/dest/SlasherAbi.d.ts +12 -0
  106. package/dest/SlasherAbi.d.ts.map +1 -1
  107. package/dest/SlasherAbi.js +16 -0
  108. package/dest/StakingAssetHandlerAbi.d.ts +12 -0
  109. package/dest/StakingAssetHandlerAbi.d.ts.map +1 -1
  110. package/dest/StakingAssetHandlerAbi.js +16 -0
  111. package/dest/StakingAssetHandlerBytecode.d.ts +1 -1
  112. package/dest/StakingAssetHandlerBytecode.js +1 -1
  113. package/dest/TallySlasherDeploymentExtLibAbi.d.ts +12 -0
  114. package/dest/TallySlasherDeploymentExtLibAbi.d.ts.map +1 -1
  115. package/dest/TallySlasherDeploymentExtLibAbi.js +16 -0
  116. package/dest/TallySlasherDeploymentExtLibBytecode.d.ts +1 -1
  117. package/dest/TallySlasherDeploymentExtLibBytecode.js +1 -1
  118. package/dest/TallySlashingProposerAbi.d.ts +12 -0
  119. package/dest/TallySlashingProposerAbi.d.ts.map +1 -1
  120. package/dest/TallySlashingProposerAbi.js +16 -0
  121. package/dest/TallySlashingProposerBytecode.d.ts +1 -1
  122. package/dest/TallySlashingProposerBytecode.js +1 -1
  123. package/dest/TestERC20Abi.d.ts +12 -0
  124. package/dest/TestERC20Abi.d.ts.map +1 -1
  125. package/dest/TestERC20Abi.js +16 -0
  126. package/dest/TokenPortalAbi.d.ts +12 -0
  127. package/dest/TokenPortalAbi.d.ts.map +1 -1
  128. package/dest/TokenPortalAbi.js +16 -0
  129. package/dest/TokenPortalBytecode.d.ts +1 -1
  130. package/dest/TokenPortalBytecode.js +1 -1
  131. package/dest/UniswapPortalAbi.d.ts +12 -0
  132. package/dest/UniswapPortalAbi.d.ts.map +1 -1
  133. package/dest/UniswapPortalAbi.js +16 -0
  134. package/dest/UniswapPortalBytecode.d.ts +1 -1
  135. package/dest/UniswapPortalBytecode.js +1 -1
  136. package/dest/ValidatorOperationsExtLibAbi.d.ts +12 -0
  137. package/dest/ValidatorOperationsExtLibAbi.d.ts.map +1 -1
  138. package/dest/ValidatorOperationsExtLibAbi.js +16 -0
  139. package/dest/ValidatorOperationsExtLibBytecode.d.ts +1 -1
  140. package/dest/ValidatorOperationsExtLibBytecode.d.ts.map +1 -1
  141. package/dest/ValidatorOperationsExtLibBytecode.js +1 -1
  142. package/dest/ValidatorSelectionLibAbi.d.ts +12 -0
  143. package/dest/ValidatorSelectionLibAbi.d.ts.map +1 -1
  144. package/dest/ValidatorSelectionLibAbi.js +16 -0
  145. package/dest/ValidatorSelectionLibBytecode.d.ts +1 -1
  146. package/dest/ValidatorSelectionLibBytecode.js +1 -1
  147. package/dest/checksum.d.ts +1 -1
  148. package/dest/checksum.js +1 -1
  149. package/package.json +1 -1
@@ -2999,6 +2999,22 @@
2999
2999
  }
3000
3000
  ]
3001
3001
  },
3002
+ {
3003
+ "type": "error",
3004
+ "name": "ValidatorSelection__EpochNotStable",
3005
+ "inputs": [
3006
+ {
3007
+ "name": "queriedEpoch",
3008
+ "type": "uint256",
3009
+ "internalType": "uint256"
3010
+ },
3011
+ {
3012
+ "name": "currentTimestamp",
3013
+ "type": "uint32",
3014
+ "internalType": "uint32"
3015
+ }
3016
+ ]
3017
+ },
3002
3018
  {
3003
3019
  "type": "error",
3004
3020
  "name": "ValidatorSelection__InsufficientAttestations",
@@ -2010,6 +2010,18 @@ export declare const GovernanceProposerAbi: readonly [{
2010
2010
  readonly type: "uint256";
2011
2011
  readonly internalType: "uint256";
2012
2012
  }];
2013
+ }, {
2014
+ readonly type: "error";
2015
+ readonly name: "ValidatorSelection__EpochNotStable";
2016
+ readonly inputs: readonly [{
2017
+ readonly name: "queriedEpoch";
2018
+ readonly type: "uint256";
2019
+ readonly internalType: "uint256";
2020
+ }, {
2021
+ readonly name: "currentTimestamp";
2022
+ readonly type: "uint32";
2023
+ readonly internalType: "uint32";
2024
+ }];
2013
2025
  }, {
2014
2026
  readonly type: "error";
2015
2027
  readonly name: "ValidatorSelection__InsufficientAttestations";
@@ -1 +1 @@
1
- {"version":3,"file":"GovernanceProposerAbi.d.ts","sourceRoot":"","sources":["../src/GovernanceProposerAbi.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkmGxB,CAAC"}
1
+ {"version":3,"file":"GovernanceProposerAbi.d.ts","sourceRoot":"","sources":["../src/GovernanceProposerAbi.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAknGxB,CAAC"}
@@ -2674,6 +2674,22 @@
2674
2674
  }
2675
2675
  ]
2676
2676
  },
2677
+ {
2678
+ "type": "error",
2679
+ "name": "ValidatorSelection__EpochNotStable",
2680
+ "inputs": [
2681
+ {
2682
+ "name": "queriedEpoch",
2683
+ "type": "uint256",
2684
+ "internalType": "uint256"
2685
+ },
2686
+ {
2687
+ "name": "currentTimestamp",
2688
+ "type": "uint32",
2689
+ "internalType": "uint32"
2690
+ }
2691
+ ]
2692
+ },
2677
2693
  {
2678
2694
  "type": "error",
2679
2695
  "name": "ValidatorSelection__InsufficientAttestations",
@@ -1789,6 +1789,18 @@ export declare const HonkVerifierAbi: readonly [{
1789
1789
  readonly type: "uint256";
1790
1790
  readonly internalType: "uint256";
1791
1791
  }];
1792
+ }, {
1793
+ readonly type: "error";
1794
+ readonly name: "ValidatorSelection__EpochNotStable";
1795
+ readonly inputs: readonly [{
1796
+ readonly name: "queriedEpoch";
1797
+ readonly type: "uint256";
1798
+ readonly internalType: "uint256";
1799
+ }, {
1800
+ readonly name: "currentTimestamp";
1801
+ readonly type: "uint32";
1802
+ readonly internalType: "uint32";
1803
+ }];
1792
1804
  }, {
1793
1805
  readonly type: "error";
1794
1806
  readonly name: "ValidatorSelection__InsufficientAttestations";
@@ -1 +1 @@
1
- {"version":3,"file":"HonkVerifierAbi.d.ts","sourceRoot":"","sources":["../src/HonkVerifierAbi.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAorFlB,CAAC"}
1
+ {"version":3,"file":"HonkVerifierAbi.d.ts","sourceRoot":"","sources":["../src/HonkVerifierAbi.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAosFlB,CAAC"}
@@ -2385,6 +2385,22 @@
2385
2385
  }
2386
2386
  ]
2387
2387
  },
2388
+ {
2389
+ "type": "error",
2390
+ "name": "ValidatorSelection__EpochNotStable",
2391
+ "inputs": [
2392
+ {
2393
+ "name": "queriedEpoch",
2394
+ "type": "uint256",
2395
+ "internalType": "uint256"
2396
+ },
2397
+ {
2398
+ "name": "currentTimestamp",
2399
+ "type": "uint32",
2400
+ "internalType": "uint32"
2401
+ }
2402
+ ]
2403
+ },
2388
2404
  {
2389
2405
  "type": "error",
2390
2406
  "name": "ValidatorSelection__InsufficientAttestations",
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * HonkVerifier bytecode.
3
3
  */
4
- export declare const HonkVerifierBytecode = "0x610100604052348015610010575f5ffd5b506302000000608052601960a0527f0f82e7fb35f84c28d252eb1be8c27c7b81b7a0b8ba8f0dafb2402b3196fd7e8e60c05260ae60e05260805160a05160c05160e051615d996100de5f395f818161018101526107ae01525f61016001525f8181605b01528181609401528181610101015281816101a2015281816108c7015281816109d401528181610a0001528181610a7b015281816112d401528181611374015281816115c30152818161160f0152818161165d015281816116b40152612cfc01525f5050615d995ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063ea50d0e41461002d575b5f5ffd5b61004061003b36600461599f565b610054565b604051901515815260200160405180910390f35b5f5f61007f7f000000000000000000000000000000000000000000000000000000000000000061028c565b905061008c816020615a7b565b85146100ee577f0000000000000000000000000000000000000000000000000000000000000000856100bf836020615a7b565b6040516359895a5360e01b81526004810193909352602483019190915260448201526064015b60405180910390fd5b5f6100f761033a565b90505f61012588887f000000000000000000000000000000000000000000000000000000000000000061034f565b9050601082604001516101389190615a92565b85146101575760405163fa06659360e01b815260040160405180910390fd5b5f6101c68288887f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006106a6565b90506102168787808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152505085518551606081015160809091015191935091506001610758565b815160a001525f61022783836108bf565b905080610247576040516313f8744360e31b815260040160405180910390fd5b5f6102538486856109c0565b905080610273576040516352ec174560e11b815260040160405180910390fd5b81801561027d5750805b9b9a5050505050505050505050565b5f8061029a60026008615a7b565b905060016102a9600885615a7b565b6102b39190615a7b565b6102bd9082615aa5565b90506102cb60016029615a7b565b6102d59082615aa5565b905060026102e4600185615a92565b6102ee9190615a7b565b6102f89082615aa5565b9050610305600184615a7b565b61030f9082615aa5565b905061031c600280615a7b565b6103269082615aa5565b9050610333601082615aa5565b9392505050565b61034261520d565b61034a611786565b905090565b6103576155ab565b5f805b60108110156103b957610386868387610374602083615aa5565b9261038193929190615ab8565b6120c2565b8351826010811061039957610399615adf565b6020020181815250506020826103af9190615aa5565b915060010161035a565b506103dd8582866103cb604083615aa5565b926103d893929190615ab8565b6120d5565b60208301526103ed604082615aa5565b90506104008582866103cb604083615aa5565b6040808401919091526104139082615aa5565b90506104268582866103cb604083615aa5565b6060830152610436604082615aa5565b90506104498582866103cb604083615aa5565b60c0830152610459604082615aa5565b905061046c8582866103cb604083615aa5565b60e083015261047c604082615aa5565b905061048f8582866103cb604083615aa5565b608083015261049f604082615aa5565b90506104b28582866103cb604083615aa5565b6101008301526104c3604082615aa5565b90506104d68582866103cb604083615aa5565b60a08301526104e6604082615aa5565b90505f5b83811015610564575f5b600881101561055b5761050e878488610374602083615aa5565b84610120015183601c811061052557610525615adf565b6020020151826008811061053b5761053b615adf565b6020020181815250506020836105519190615aa5565b92506001016104f4565b506001016104ea565b505f5b60298110156105b857610581868387610374602083615aa5565b836101400151826029811061059857610598615adf565b6020020181815250506020826105ae9190615aa5565b9150600101610567565b505f5b6105c6600185615a92565b81101561060f576105de8683876103cb604083615aa5565b83610160015182601b81106105f5576105f5615adf565b6020020152610605604083615aa5565b91506001016105bb565b505f5b838110156106625761062b868387610374602083615aa5565b83610180015182601c811061064257610642615adf565b6020020181815250506020826106589190615aa5565b9150600101610612565b506106748582866103cb604083615aa5565b6101a0830152610685604082615aa5565b90506106988582866103cb604083615aa5565b6101c0830152509392505050565b6106ae6156f3565b5f6106bd888888888886612162565b90835290506106cc81896121e1565b602084019190915290506106e081846122d0565b604084019190915290506106f588828561235f565b606084019190915290506107098882612433565b6080840191909152905061071e8882856124be565b60a08401919091529050610733888285612633565b60c0840191909152905061074788826126f8565b5060e0830152509695505050505050565b5f60018082610785866107808961077b6107768a6310000000615aa5565b612735565b61274d565b612768565b90505f6107a38761079e8a61077b6107768b6001615aa5565b612781565b90505f5b6107d260107f0000000000000000000000000000000000000000000000000000000000000000615a92565b81101561083f575f6107fc8c83815181106107ef576107ef615adf565b60200260200101516127a9565b905061080c8661077b8684612768565b955061081c8561077b8584612768565b9450610828848b612768565b9350610834838b612781565b9250506001016107a7565b505f5b60108110156108a6575f8a826010811061085e5761085e615adf565b602002015190506108738661077b8684612768565b95506108838561077b8584612768565b945061088f848b612768565b935061089b838b612781565b925050600101610842565b506108b184846127be565b9a9950505050505050505050565b5f806001815b7f0000000000000000000000000000000000000000000000000000000000000000811015610996575f86610120015182601c811061090557610905615adf565b602002015190505f61091782866127cc565b905080610937576040516313f8744360e31b815260040160405180910390fd5b5f876060015184601c811061094e5761094e615adf565b6020020151905061095f83826127ec565b9550610986886040015185601c811061097a5761097a615adf565b6020020151868361299b565b94505050508060010190506108c5565b505f6109b0866101400151865f01518760200151856129c6565b90508281145b9695505050505050565b5f6109c9615777565b5f6109f88460a001517f0000000000000000000000000000000000000000000000000000000000000000612a3f565b90505f610a267f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b610a31906002615aa5565b67ffffffffffffffff811115610a4957610a49615af3565b604051908082528060200260200182016040528015610a72578160200160208202803683370190505b5090505f610aa17f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b610aac906002615aa5565b67ffffffffffffffff811115610ac457610ac4615af3565b604051908082528060200260200182016040528015610b0857816020015b604080518082019091525f8082526020820152815260200190600190039081610ae25790505b509050610b3a610b358760e00151855f81518110610b2857610b28615adf565b6020026020010151612781565b612b09565b84610120018181525050610b6e610b358760e00151855f81518110610b6157610b61615adf565b6020026020010151612768565b610140850181905261012085015160c0880151610b8f92610780919061274d565b845260a0860151610bbf90610ba390612b09565b61077b86610120015161079e8a60c0015189610140015161274d565b6020850152815160019083905f90610bd957610bd9615adf565b602002602001018181525050876101a00151815f81518110610bfd57610bfd615adf565b6020908102919091010152600160a08501525f60c085015283515f516020615d445f395f51905f5203604085015260208401515f516020615d445f395f51905f5203606085015260015b60248111610cea57610c6185604001518660a0015161274d565b838281518110610c7357610c73615adf565b602002602001018181525050610cbc8560c001516107808b6101400151600185610c9d9190615a92565b60298110610cad57610cad615adf565b60200201518860a0015161274d565b60c086015260a08501516080880151610cd5919061274d565b60a0860152610ce381615b07565b9050610c47565b505f5b6005811015610db8575f610d02601d83615aa5565b90505f610d10602484615aa5565b9050610d41858381518110610d2757610d27615adf565b602002602001015161078089606001518a60a0015161274d565b858381518110610d5357610d53615adf565b602002602001018181525050610d908760c001516107808d61014001518460298110610d8157610d81615adf565b60200201518a60a0015161274d565b60c088015260a087015160808a0151610da9919061274d565b60a08801525050600101610ced565b50866060015181600181518110610dd157610dd1615adf565b6020026020010181905250866080015181600281518110610df457610df4615adf565b60200260200101819052508660a0015181600381518110610e1757610e17615adf565b60200260200101819052508660c0015181600481518110610e3a57610e3a615adf565b60200260200101819052508660e0015181600581518110610e5d57610e5d615adf565b602002602001018190525086610100015181600681518110610e8157610e81615adf565b602002602001018190525086610120015181600781518110610ea557610ea5615adf565b602002602001018190525086610140015181600881518110610ec957610ec9615adf565b602002602001018190525086610160015181600981518110610eed57610eed615adf565b6020026020010181905250866101c0015181600a81518110610f1157610f11615adf565b602002602001018190525086610180015181600b81518110610f3557610f35615adf565b6020026020010181905250866101a0015181600c81518110610f5957610f59615adf565b6020026020010181905250866101e0015181600d81518110610f7d57610f7d615adf565b602002602001018190525086610200015181600e81518110610fa157610fa1615adf565b602002602001018190525086610220015181600f81518110610fc557610fc5615adf565b602002602001018190525086610240015181601081518110610fe957610fe9615adf565b60200260200101819052508661026001518160118151811061100d5761100d615adf565b60200260200101819052508661028001518160128151811061103157611031615adf565b6020026020010181905250866102a001518160138151811061105557611055615adf565b6020026020010181905250866102c001518160148151811061107957611079615adf565b6020026020010181905250866102e001518160158151811061109d5761109d615adf565b6020026020010181905250866103000151816016815181106110c1576110c1615adf565b6020026020010181905250866103200151816017815181106110e5576110e5615adf565b60200260200101819052508661034001518160188151811061110957611109615adf565b60200260200101819052508661036001518160198151811061112d5761112d615adf565b602002602001018190525086610380015181601a8151811061115157611151615adf565b6020026020010181905250866103a0015181601b8151811061117557611175615adf565b6020026020010181905250866103c0015181601c8151811061119957611199615adf565b6020026020010181905250876020015181601d815181106111bc576111bc615adf565b6020026020010181905250876040015181601e815181106111df576111df615adf565b6020026020010181905250876060015181601f8151811061120257611202615adf565b602002602001018190525087608001518160208151811061122557611225615adf565b60200260200101819052508760a001518160218151811061124857611248615adf565b60200260200101819052508761010001518160228151811061126c5761126c615adf565b60200260200101819052508760c001518160238151811061128f5761128f615adf565b60200260200101819052508760e00151816024815181106112b2576112b2615adf565b60200260200101819052505f6112f887606001518660c001518b6101800151877f0000000000000000000000000000000000000000000000000000000000000000612b79565b9050611322815f8151811061130f5761130f615adf565b602002602001015186610120015161274d565b608086018190526101808a01515160c0890151611353929161078091611348919061274d565b88610140015161274d565b608086015260c087015161136690612cd8565b60a08601525f5b61139860017f0000000000000000000000000000000000000000000000000000000000000000615a92565b8110156115a7576113c8610b358960e00151878460016113b89190615aa5565b81518110610b2857610b28615adf565b61012087015260e08801516113f790610b3590876113e7856001615aa5565b81518110610b6157610b61615adf565b61014087015260a0860151610120870151611412919061274d565b61016087015260a086015160c089015161143a9161142f9161274d565b87610140015161274d565b610180870181905261146f905f516020615d445f395f51905f52036101608801515f516020615d445f395f51905f5203612768565b848261147d60246001615aa5565b6114879190615aa5565b8151811061149757611497615adf565b6020026020010181815250505f6114da8761018001518c61018001518460016114c09190615aa5565b601c81106114d0576114d0615adf565b602002015161274d565b905061151481610780896101600151868660016114f79190615aa5565b8151811061150757611507615adf565b602002602001015161274d565b9050611524876080015182612768565b608088015260a087015160c08a015161154a916115409161274d565b8a60c0015161274d565b60a08801526101608b015182601b811061156657611566615adf565b6020020151848361157960246001615aa5565b6115839190615aa5565b8151811061159357611593615adf565b60209081029190910101525060010161136d565b50604080518082019091526001815260026020820152826115e97f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b815181106115f9576115f9615adf565b60209081029190910101526080850151836116357f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b8151811061164557611645615adf565b60209081029190910101526101c089015180836116837f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b61168e906001615aa5565b8151811061169e5761169e615adf565b602090810291909101015260e0880151846116da7f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b6116e5906001615aa5565b815181106116f5576116f5615adf565b6020026020010181815250505f61170c8486612ce3565b90505f61171883612dfe565b90505f6117298d5f01518484612e4f565b90505f5f6117398f5f0151612ec5565b9150915061174682612f91565b61174f81612f91565b61175a858385613034565b9450611767848285613034565b93506117738585613070565b9f9e505050505050505050505050505050565b61178e61520d565b50604080516103e08101825263020000008152601960208083019190915260ae82840152825180840184527f07da0c2d9d4cc370e2c1ce8f3c0a23cbd2d48dabc81799d53b98b09413c2fae481527f28251a50db056b19f6a936de980e63d0d8b623154784e413d17a2b1cc631ae7c818301526060830152825180840184527f14fa71360dbf9284bd9c6b0e13af50e5715cc5626085c28b8b689e09d9d390d481527f0d303241469944a9df00fb1d94625d1a8de48e586634bb3825983c8912f719c3818301526080830152825180840184527f03c0f6e5e542584e54ef07387e82d599f437379e5a61e91fdbe2a836a11de94981527f01620dd24104df8fd3b89bfeaf107323738943992ee50206ea15c8eacf3381668183015260a0830152825180840184527f2832a13ef2f409639f5180c79bd5ad8a074eb16f723ff3a765e060fb32aaac4e81527f07bccdede12c0af3881db712d1ed01520b9badbe6662347ae248518f7966b5028183015260c0830152825180840184527f2c5908c26c9ec774a17c2834470306d47853e4474c17ee430e91154397cd585e81527f1bcdceed3e7d51afee18fb602a280571525c95502c7f379d38f579e62f8347db8183015260e0830152825180840184527f2a1023e8a03af1244dd0e32f809230f6e2f8cb51499e2598bd7443c00b77bd0e81527f129e641bef03fb0050f9ad39ec4cd027ea70bd88d34328598867eff6be582f5481830152610100830152825180840184527f01a8abe0d74344165494348196db5fa7da3a745f398fd1374cc2cb15bcc58ff481527f0f62b9babe865f3d0c422867d8b7f7fa5c13d85721a659f3b9ff8fc8cc6fc99281830152610120830152825180840184527f27c11e73f7854fc9b16c88b367bbd6d1c73ae10158fd1245261199fe58c4c00581527f214d295aae6759244b1600c6811d6e5ff2495f21069164a33939ceccff123db181830152610140830152825180840184527f22e48713fb0fbd0882bc3caff98e1d34b104a011e49f2f6fdbd9397572e172a381527f1090f36d6fb45a630349efa689298e2f1caf4dfbd5913a22794fb2665e4d515481830152610160830152825180840184527f2eb98a17d9423734ce63cd8afdde8dc668faab50e0ff8e1c46e02404515ec28281527f1122c8bdb7e8be9dfa6eb802ac123b14154bd3482572ff47dc64cda828f83d6281830152610180830152825180840184527f1fa2b9ee9184c4f60472bd1361b287de01506019abadb03c605507efc211311281527f05183ed9a0b5629d2480c41fda077da616b3c462014bc61dc2158889cc91761c818301526101a0830152825180840184527f2a1a1a1f913f908b24614d2f75b990f99c4e94865a473fd84be7e75703375b4481527f017245e8878e90a2163d7cd68530544c1cc8175b563c6393a30866d950c7dbfb818301526101c0830152825180840184527f08eb47ca4626c7e762b600c3021c5f927507e07b5b35d243cda9ee76bd5bae5481527f2e69d18caf3c6f1635d800ba626480145422e7449c94c2b49c9030adb96195fb818301526101e0830152825180840184527f1981a3197d15471814edbb26532e4693e278066161ee33a247f8144c5bcb031781527f2580ae0739edec0ef280e5adcae34af0cabc4a275d98c089e4d98f5cced07ff281830152610200830152825180840184527f20c5d96cf676752efc8bbd94a1534afb9f90c2233a887e9a22cb9fe184b9f32781527f0b8aa09c6c15e8506657edd0dd82f1f3584847121f73af4942dfffe3e36d005c81830152610220830152825180840184527f2b03a09ba873f6201bcdbcff84432cfab5881b819ec9eeae36666c3b5c347c7381527f2999ad4e7b10eeb75a3742cd79dfe5b8deece30102be35d8266a660ea2f6323981830152610240830152825180840184527f281236085fa8d7ca0a0ee6a9c598876489c35db99e236ffe48614cff66a6da4081527f022608b5300816f7ac0a55178bca296f36485a9b391701caad524aaf51370eca81830152610260830152825180840184527f156f0e8b03994165816bdf76fa87b4702d42f86bda8c54cc1d713b774934047e81527f1276884f3760c1456860e806f2024f032756b2ff7c1c40f818909ffb8801d38381830152610280830152825180840184527f137f455a99332932852b53d71e2a60c11ae6d660c384237080089523fdb2b46081527f132e7c950a6a18598e9cfdc021cdb549d5267d847567b237fb3b28e1017cc170818301526102a0830152825180840184527f18cbecf570e47cc703d12df942400f5166dfac609663fb6ce45266716471714681527f2aa82d0dc46b410402f5f09111c8d80304b9ed336db552cdca553deae10d40d1818301526102c0830152825180840184527f2aa3d6dd4a947d9c126929a01fe5025eff47f547521e55e992ff37d8a0fb4a4881527f05f2eddafd21fae3305a8ad780921ad7cf8b096b3c1938b92da50b55c10ae724818301526102e0830152825180840184527f2207a92d9fdc61cdebae70a827a26b149a86f0428b68f36ca3a1089216708c0781527f21aa86ef78399e428e0d9df79a6f252bd80cc887a1406bc04c9c3bf293da36f381830152610300830152825180840184527f2194d92617bbb3ba3d9e53f4f13c5c7c6fc5ae0c56f06e0a35747f24625e576381527f11ca88979a66ada092bb26e2b64b8602eb63f6e2fc21862f6fefead2978de7e081830152610320830152825180840184527f1d346dd159688f85b77717f8197777c6ced8daf349335d74908736241f5f332881527f10e952d77959f4aa6fe9cb7222d9901d06ddfeea51240c79980d4daac814444381830152610340830152825180840184527f109830b81fd8b5e0a3327bf961ea6746fcc9155039d285eaa76f4b0f8839e44781527f28de29af66333e8ea2ee2d23ff9df4297471377a71b5240987690610bad14c7881830152610360830152825180840184527f062b31b3719d79c253d59707efcc41556e43d9f4f122ba79d3484e023fb4da7d81527f283eb52c07506637e09fb73d7875ada840d8e4c75295a90dc312b4d2571c52c38183015261038083015282518084018452600181526002818301526103a083015282518084019093527f19a9fca680345b2fc1e36360e22a85f321afc9590f35ef20afffe87256f632c083527f29242cf85e587178544d946d6c7fe51ab1097683212a781f062501de82223746908301526103c081019190915290565b5f6103336120d08385615b1f565b6127a9565b604080518082019091525f808252602082015260408051808201909152805f516020615d245f395f51905f5261210e60205f8789615ab8565b61211791615b1f565b6121219190615b3c565b81526020908101905f516020615d245f395f51905f5290612146906040908789615ab8565b61214f91615b1f565b6121599190615b3c565b90529392505050565b6121956040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f6121a38888888888613264565b6040860191909152602085019190915290835292506121c28389613562565b6080850191909152606084019190915291989197509095505050505050565b6121e96157e7565b5f6121f2615806565b8481526101008401805151602080840191909152905181015160408084019190915260a086018051516060850152518201516080840152516122559161223a91849101615b5b565b604051602081830303815290604052805190602001206127a9565b91505f612261836135e9565b50808552905060015b6122766001601c615a92565b8110156122c6576122a78561228c600184615a92565b601b811061229c5761229c615adf565b60200201518361274d565b8582601b81106122b9576122b9615adf565b602002015260010161226a565b5050509250929050565b6122d8615824565b5f6122ef8460405160200161223a91815260200190565b93506122fa846135e9565b50825260015b838110156123575761233883612317600184615a92565b601c811061232757612327615adf565b6020020151846114c0600185615a92565b8382601c811061234a5761234a615adf565b6020020152600101612300565b509093915050565b612367615824565b5f805b838110156124295761237a615843565b8581525f5b60088110156123e35787610120015183601c811061239f5761239f615adf565b602002015181600881106123b5576123b5615adf565b6020020151826123c6836001615aa5565b600981106123d6576123d6615adf565b602002015260010161237f565b506123f88160405160200161223a9190615b8e565b95505f612404876135e9565b8685601c811061241657612416615adf565b602002019190915250505060010161236a565b5090949293505050565b5f5f61243d615862565b8381525f5b602981101561249057856101400151816029811061246257612462615adf565b602002015182612473836001615aa5565b602a811061248357612483615adf565b6020020152600101612442565b506124a58160405160200161223a9190615bc2565b91505f6124b1836135e9565b5096929550919350505050565b5f80806124cc600185615a92565b6124d7906002615a7b565b6124e2906001615aa5565b67ffffffffffffffff8111156124fa576124fa615af3565b604051908082528060200260200182016040528015612523578160200160208202803683370190505b50905084815f8151811061253957612539615adf565b60209081029190910101525f5b612551600186615a92565b8110156126045786610160015181601b811061256f5761256f615adf565b60200201515182612581836002615a7b565b61258c906001615aa5565b8151811061259c5761259c615adf565b60200260200101818152505086610160015181601b81106125bf576125bf615adf565b602002015160200151828260026125d69190615a7b565b6125e1906002615aa5565b815181106125f1576125f1615adf565b6020908102919091010152600101612546565b506126198160405160200161223a9190615bf6565b91505f612625836135e9565b509792965091945050505050565b5f8080612641846001615aa5565b67ffffffffffffffff81111561265957612659615af3565b604051908082528060200260200182016040528015612682578160200160208202803683370190505b50905084815f8151811061269857612698615adf565b60209081029190910101525f5b848110156126045786610180015181601c81106126c4576126c4615adf565b6020020151826126d5836001615aa5565b815181106126e5576126e5615adf565b60209081029190910101526001016126a5565b5f5f612702615881565b8381526101a085018051516020808401919091529051810151604080840191909152516124a59161223a91849101615c2b565b5f5f516020615d445f395f51905f52825b0692915050565b5f5f516020615d445f395f51905f5282840990505b92915050565b5f5f516020615d445f395f51905f528284089392505050565b5f5f516020615d445f395f51905f52825f516020615d445f395f51905f520384089392505050565b5f5f516020615d445f395f51905f5282612746565b5f6103338361077b84612b09565b815160208301515f9182916127e19190612768565b929092149392505050565b60408051610100810182527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffec5181526102d060208201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff1191810191909152609060608201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff71608082015260f060a08201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593effffd3160c08201526113b060e08201525f906001825b60088110156128d3576128c98261077b8784612781565b91506001016128b2565b506128dc61589f565b5f5b600881101561293d575f8482600881106128fa576128fa615adf565b6020020151905061290f8161077b8985612781565b905061291a81612b09565b90508083836008811061292f5761292f615adf565b6020020152506001016128de565b505f5b6008811015612990575f87826008811061295c5761295c615adf565b60200201519050612979818484600881106114d0576114d0615adf565b90506129858682612768565b955050600101612940565b506109b6848361274d565b5f5f6129b160016107808561077b896001612781565b90506129bd848261274d565b95945050505050565b5f6129cf615824565b6129da868285613622565b6129e6868683866137ce565b6129f2868683866139ba565b6129fd868285613be5565b612a08868285613dd9565b612a1486868386614122565b612a1f8682856145ce565b612a2a8682856149e0565b612a35868285614da1565b6109b681856150a1565b60605f8267ffffffffffffffff811115612a5b57612a5b615af3565b604051908082528060200260200182016040528015612a84578160200160208202803683370190505b50905083815f81518110612a9a57612a9a615adf565b602090810291909101015260015b83811015612b0157612adc82612abf600184615a92565b81518110612acf57612acf615adf565b6020026020010151612cd8565b828281518110612aee57612aee615adf565b6020908102919091010152600101612aa8565b509392505050565b5f5f8290505f604051602081526020808201526020604082015282606082015260025f516020615d445f395f51905f520360808201525f516020615d445f395f51905f5260a082015260205f60c08360055afa80612b65575f5ffd5b505f51608091909101604052949350505050565b60605f8267ffffffffffffffff811115612b9557612b95615af3565b604051908082528060200260200182016040528015612bbe578160200160208202803683370190505b509050825b8015612ccd575f85612bd6600184615a92565b81518110612be657612be6615adf565b602002602001015190505f89600184612bff9190615a92565b601c8110612c0f57612c0f615adf565b602002015190505f612c6a612c2e612c27858d61274d565b600261274d565b61079e8b612c3d600189615a92565b601c8110612c4d57612c4d615adf565b602002015161077b612c648861077b60018a612781565b87612781565b9050612c8b8161077b610b35612c858761077b600189612781565b86612768565b99508990508085612c9d600187615a92565b81518110612cad57612cad615adf565b60200260200101818152505050505080612cc690615c5e565b9050612bc3565b509695505050505050565b5f612762828361274d565b604080518082019091525f80825260208201525f612d227f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b612d2d906002615aa5565b90505f5b81811015612d6357612d5b858281518110612d4e57612d4e615adf565b6020026020010151612f91565b600101612d31565b50604051600190815b60018401811015612dc85760208102870160208202870181515160408501528151602001516060850152805160808501525050604080830160606040850160075afa8316925060408260808460065afa90921691600101612d6c565b5080518452602081015160208501525080612df6576040516352ec174560e11b815260040160405180910390fd5b505092915050565b604080518082019091525f80825260208201525f516020615d245f395f51905f5282602001515f516020615d245f395f51905f52612e3c9190615a92565b612e469190615b3c565b60208301525090565b5f5f5f612e5b86612ec5565b91509150612e6761589f565b82518152602080840151818301528251604080840191909152838201516060840152875160808401528782015160a0840152865160c08401528682015160e084015251612eba9161223a91849101615c73565b979650505050505050565b6040805180820182525f80825260208083018281528451808601865283815280830193845286519287015195870151606088015160cc90811b608892831b6044998a1b90961795909517949094178652608088015160a089015160c08a015160e08b0151871b90841b918a1b90921717179092526101008701516101208801516101408901516101608a0151861b90851b91891b909217171781526101808701516101a08801516101c08901516101e09099015190941b9790921b9290951b1717939093179092529091565b805160208201515f5f516020615d245f395f51905f528380095f516020615d245f395f51905f5260035f516020615d245f395f51905f52838709085f516020615d245f395f51905f52848509149150508061302e5760405162461bcd60e51b815260206004820152601960248201527f706f696e74206973206e6f74206f6e207468652063757276650000000000000060448201526064016100e5565b50505050565b604080518082019091525f8082526020820152604080518082019091525f808252602082015261306483866150fa565b90506129bd8185615166565b81516020808401518351848301516040805194850195909552938301919091527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c260608301527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed60808301527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b60a08301527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa60c083015260e08201526101008101919091527f260e01b251f6f1c7e7ff4e580791dee8ea51d87a358e038b4efe30fac09383c16101208201527f0118c4d5b837bcc2bc89b5b398b5974e9f5944073b32078b7e231fec938883b06101408201527f04fc6369f7110fe3d25156c1bb9a72859cf2a04641f99ba4ee413c80da6a5fe46101608201527f22febda3c0c0632a56475b4214e5615e11e6dd3f96e6cea2854a87d4dacc5e556101808201525f9081906101a00160405160208183030381529060405290505f5f60086001600160a01b0316836040516132069190615ca7565b5f60405180830381855afa9150503d805f811461323e576040519150601f19603f3d011682016040523d82523d5f602084013e613243565b606091505b50915091508180156109b65750808060200190518101906109b69190615cbd565b5f80808080613274866001615aa5565b61327f906006615aa5565b67ffffffffffffffff81111561329757613297615af3565b6040519080825280602002602001820160405280156132c0578160200160208202803683370190505b509050865f1b815f815181106132d8576132d8615adf565b60209081029190910101525f5b6132f0601088615a92565b8110156133415789898281811061330957613309615adf565b905060200201358282600161331e9190615aa5565b8151811061332e5761332e615adf565b60209081029190910101526001016132e5565b505f5b60108110156133b2578a5161336c90826010811061336457613364615adf565b602002015190565b8282601061337b8b6001615aa5565b6133859190615a92565b61338f9190615aa5565b8151811061339f5761339f615adf565b6020908102919091010152600101613344565b5060208a015151816133c5886001615aa5565b815181106133d5576133d5615adf565b6020908102919091018101919091528a8101510151816133f6886001615aa5565b613401906001615aa5565b8151811061341157613411615adf565b602090810291909101015260408a0151518161342e886001615aa5565b613439906002615aa5565b8151811061344957613449615adf565b60209081029190910181019190915260408b015101518161346b886001615aa5565b613476906003615aa5565b8151811061348657613486615adf565b602090810291909101015260608a015151816134a3886001615aa5565b6134ae906004615aa5565b815181106134be576134be615adf565b60209081029190910181019190915260608b01510151816134e0886001615aa5565b6134eb906005615aa5565b815181106134fb576134fb615adf565b60200260200101818152505061351b8160405160200161223a9190615bf6565b9150613526826135e9565b6040805160208101869052929750909550613541910161223a565b91505f61354d836135e9565b50959b949a5094985090965091945050505050565b5f5f5f61356d6158be565b85815260c0858101805151602080850191909152905181015160408085019190915260e08801805151606086015251820151608080860191909152880180515160a0860152518201519284019290925290516135cf9161223a91849101615cdc565b91506135da826135e9565b90979096509194509092505050565b5f80826fffffffffffffffffffffffffffffffff8116608082901c61360d826127a9565b9450613618816127a9565b9350505050915091565b5f61362e8460076151dd565b90507f183227397098d014dc2822db40c0ac2e9419f4243cdcb848a1f0fac9f80000005f61368f613689613663856003612781565b61077b61367e6136738b5f6151dd565b61077b8c601d6151dd565b61077b8b601c6151dd565b8361274d565b90506137106137056136ec6136d36136ba856107806136af8d60026151dd565b61077b8e601c6151dd565b6107806136c88c60036151dd565b61077b8d601d6151dd565b6107806136e18b60046151dd565b61077b8c601e6151dd565b6107806136fa8a60056151dd565b61077b8b601f6151dd565b6107808860016151dd565b905061372f81610780613724866001612781565b61077b8a60276151dd565b905061373b818461274d565b9050613747818561274d565b8552505f905061378161377761376c61376188601c6151dd565b61078089601f6151dd565b61079e8860246151dd565b610780875f6151dd565b90506137928161077b846002612781565b90506137a38161077b846001612781565b90506137af818361274d565b90506137bb818461274d565b9050808460015b60200201525050505050565b5f5f5f6138046137fa6137e289601c6151dd565b6107806137f08b60126151dd565b8a6060015161274d565b8760800151612768565b905061383d8161077b61383361381b8b601d6151dd565b6107806138298d60136151dd565b8c6060015161274d565b8960800151612768565b90506138628161077b6138336138548b601e6151dd565b6107806138298d60146151dd565b90506138878161077b6138336138798b601f6151dd565b6107806138298d60156151dd565b92505f90506138ab6137fa61389d89601c6151dd565b6107806137f08b600e6151dd565b90506138d08161077b6138336138c28b601d6151dd565b6107806138298d600f6151dd565b90506138f58161077b6138336138e78b601e6151dd565b6107806138298d60106151dd565b905061391a8161077b61383361390c8b601f6151dd565b6107806138298d60116151dd565b91505f905061394161393b6139308960206151dd565b6107808a601a6151dd565b8461274d565b90506139768161079e6139706139588b60286151dd565b6107806139668d601b6151dd565b8c60a0015161274d565b8561274d565b9050613982818561274d565b6040860152505f6139a561397061399a89601b6151dd565b61077b8a60286151dd565b9050808560035b602002015250505050505050565b5f5f613a18613a006139e86139d36138338a60166151dd565b6107806139e18b60176151dd565b8a5161274d565b6107806139f68a60186151dd565b896020015161274d565b610780613a0e8960196151dd565b886040015161274d565b91505f613a4f613a36613a2c89601c6151dd565b8860800151612768565b610780613a448a60036151dd565b61077b8b60246151dd565b90505f613a78613a6089601d6151dd565b610780613a6d8b5f6151dd565b61077b8c60256151dd565b90505f613aa2613a898a601e6151dd565b610780613a978c60016151dd565b61077b8d60266151dd565b9050613ae1613ac9613abb85610780868d5f015161274d565b610780848c6020015161274d565b610780613ad78c60046151dd565b8b6040015161274d565b93505050505f613af561393b8860216151dd565b90505f613b0661393b8960216151dd565b90505f613b3e613b25613b1a8b60236151dd565b6107808c60066151dd565b61079e613b338c60236151dd565b61077b8d60066151dd565b90505f613b62613b5c613b51878961274d565b61077b8d60216151dd565b83612781565b9050613b6e818861274d565b90505f613b96613b88613b828d60066151dd565b8761274d565b61079e613b828e60226151dd565b90505f613ba48c60236151dd565b90505f613bb4613b5c838461274d565b60808c0185905260a08c018490529050613bce818b61274d565b8b6006602002015250505050505050505050505050565b5f613bf15f6001612781565b90505f613bff5f6002612781565b90505f613c0d5f6003612781565b90505f613c29613c1e88601d6151dd565b61079e89601c6151dd565b90505f613c45613c3a89601e6151dd565b61079e8a601d6151dd565b90505f613c61613c568a601f6151dd565b61079e8b601e6151dd565b90505f613c7d613c728b60246151dd565b61079e8c601f6151dd565b905083613c8e8161077b818b612768565b9050613c9e8161077b878a612768565b9050613cae8161077b8789612768565b9050613cbf8161077b8d60086151dd565b9050613ccb818a61274d565b60e08b01525082613ce08161077b818b612768565b9050613cf08161077b868a612768565b9050613d008161077b8689612768565b9050613d118161077b8d60086151dd565b9050613d1d818a61274d565b6101008b01525081613d338161077b818b612768565b9050613d438161077b858a612768565b9050613d538161077b8589612768565b9050613d648161077b8d60086151dd565b9050613d70818a61274d565b6101208b01525080613d868161077b818b612768565b9050613d968161077b848a612768565b9050613da68161077b8489612768565b9050613db78161077b8d60086151dd565b9050613dc3818a61274d565b610140909a019990995250505050505050505050565b613e126040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b613e1d84601d6151dd565b8152613e2a84601e6151dd565b6020820152613e3a8460246151dd565b6040820152613e4a8460276151dd565b6060820152613e5a8460266151dd565b6080820152613e6a8460256151dd565b60a08201525f613e7b8560026151dd565b90505f613e88865f6151dd565b90505f613e9c8460400151855f0151612781565b90505f613eb18560200151866020015161274d565b606086015190915086905f90613ec7908061274d565b90505f613ee5613edf89602001518a6060015161274d565b8861274d565b90505f613f04613efd8a60a001518b60400151612768565b8a51612768565b9050613f13613b82828861274d565b9050613f3a613f34613f2e613f288487612781565b88612781565b84612768565b83612768565b9050613f62613f57613f4c838761274d565b61077b8f60096151dd565b61077b60018a612781565b6101608c015250505050602085015160808601515f91613f8191612768565b90505f613f9f613f9588606001518861274d565b8860200151612781565b90505f613fc3613faf848761274d565b6107806139708b60a001518c5f0151612781565b9050613feb613fe0613fd5838c61274d565b61077b8e60096151dd565b61077b600189612781565b6101808b0152505f915061400c9050614005836011612768565b875161274d565b90505f6140198384612768565b90506140258182612768565b90505f61403383600961274d565b905061405c61405661393b61404f8b60a001518c5f0151612768565b8b51612768565b82612781565b60c089018190525f9061407790613edf90613f4c908d61274d565b905061408a8b600b602002015182612768565b6101608c0152505086515f92506140b19150614005906140aa9080612768565b8851612768565b90505f6140f16140cc8361077b8a5f01518b60a00151612781565b602089015161079e906140df9080612768565b61077b8b602001518c60800151612768565b905061410e89600c6020020151610780613edf613f4c858d61274d565b89600c602002015250505050505050505050565b61418c604051806101e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6141a461419a86601e6151dd565b856040015161274d565b8082526141c3906107806141b988601d6151dd565b876020015161274d565b8082526141d89061078061400588601c6151dd565b8082526141ea906107808760016151dd565b808252602082018190526142039061079e87601f6151dd565b815261421e6142138660246151dd565b61079e87601c6151dd565b608082015261423c6142318660276151dd565b61079e87601f6151dd565b606082015260808101516142559061077b816001612781565b6101c082015260808101516142959061428b906142849061077b60015f516020615d445f395f51905f52615a92565b6001612768565b826060015161274d565b60a082018190526142cb906142bd9061077b6142b28960026151dd565b61077b8a60036151dd565b61077b61397088600a6151dd565b83600e60200201526101c08101516142ef906142bd9061077b6142b28960026151dd565b6101e084015280516143149061077b6143098860026151dd565b61077b8960036151dd565b6101208201525f61433361432987601f6151dd565b8360200151612781565b90506143448161077b836001612781565b60e08301526143616143578760266151dd565b866040015161274d565b604083018190526143849061078061437a8960256151dd565b886020015161274d565b604083018190526143a49061078061439d8960246151dd565b885161274d565b60408301526143c16143b78760276151dd565b8360400151612781565b60408301525f6143e06143d58860266151dd565b61079e89601e6151dd565b905061443261440d613689614284866080015160015f516020615d445f395f51905f5261077b9190615a92565b61077b614284866040015160015f516020615d445f395f51905f5261077b9190615a92565b60c084015260408301516144549061444a908061274d565b8460400151612781565b61010084015260c0830151614480906144729061077b8a60046151dd565b61077b613b828a600a6151dd565b6102008601526101c083015161449f906144729061077b8a60046151dd565b6102208601526101008301516144be906144729061077b8a60046151dd565b61024086015260e08301516144d89061077b8960046151dd565b6101408401526144f76144ec8860256151dd565b61079e89601d6151dd565b6101608401526080830151614535906143d59061452a906142849061077b60015f516020615d445f395f51905f52615a92565b85610160015161274d565b61018084018190526101208401516101a0850181905261456c916107809061077b6145618c60056151dd565b61077b8d60026151dd565b6101a08401819052835161458c91906107809061077b6145618c5f6151dd565b6101a084018190526101408401516145a49190612768565b6101a084018190526145be9061077b613b828a600a6151dd565b6101a0840181905285600d6139ac565b6146076040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61463c61462361461886601c6151dd565b61077b8760256151dd565b6107806146318760246151dd565b61077b88601d6151dd565b815261468161467661465d61465287601c6151dd565b61077b88601f6151dd565b61078061466b88601d6151dd565b61077b89601e6151dd565b61079e8660266151dd565b6040820181905261469690600160441b61274d565b604082018190526146ac9061079e8660276151dd565b6040820181905281516146bf9190612768565b604082018190526146d59061077b8660056151dd565b604082015280516146ea90600160441b61274d565b80825261470a906107806146ff8760246151dd565b61077b8860256151dd565b808252602082018190526147319061079e61472687601e6151dd565b61078088601f6151dd565b602082018190526147479061077b8660046151dd565b60208201528051606082018190526147649061078086601f6151dd565b606082018190526147889061079e61477d8760266151dd565b6107808860276151dd565b6060820181905261479d9061077b865f6151dd565b8160600181815250505f6147c66147bc83602001518460400151612768565b8360600151612768565b90506147d78161077b8760036151dd565b90506147ef6147e78660256151dd565b61400061274d565b60808301819052614805906107808760246151dd565b608083018190526148189061400061274d565b6080830181905261482e9061078087601e6151dd565b608083018190526148419061400061274d565b608083018190526148579061078087601d6151dd565b6080830181905261486a9061400061274d565b608083018190526148809061078087601c6151dd565b608083018190526148969061079e87601f6151dd565b608083018190526148ac9061077b8760056151dd565b60808301526148bf6147e78660266151dd565b60a083018190526148d5906107808760256151dd565b60a083018190526148e89061400061274d565b60a083018190526148fe906107808760246151dd565b60a083018190526149119061400061274d565b60a083018190526149279061078087601f6151dd565b60a0830181905261493a9061400061274d565b60a083018190526149509061078087601e6151dd565b60a083018190526149669061079e8760276151dd565b60a0830181905261497b9061077b875f6151dd565b60a0830181905260808301515f916149939190612768565b90506149a48161077b8860046151dd565b90506149b08282612768565b60c084018190526149c99061077b613b8289600b6151dd565b60c084018190528560136020020152505050505050565b614a566040518061022001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b614a6f614a6485601c6151dd565b6107808660026151dd565b8152614a8a614a7f85601d6151dd565b6107808660036151dd565b6020820152614aa8614a9d85601e6151dd565b6107808660046151dd565b6040820152614ac6614abb85601f6151dd565b6107808660056151dd565b60608201528051614af890614af190614aea90614ae3908061274d565b845161274d565b835161274d565b825161274d565b60808201526020810151614b3690614b2c90614b2290614b18908061274d565b846020015161274d565b836020015161274d565b826020015161274d565b60a08201526040810151614b7490614b6a90614b6090614b56908061274d565b846040015161274d565b836040015161274d565b826040015161274d565b60c08201526060810151614ba89061428b90614b9e90614b94908061274d565b846060015161274d565b836060015161274d565b60e0820152608081015160a0820151614bc19190612768565b61010082015260c081015160e0820151614bdb9190612768565b61012082015260a0810151614bff90614bf49080612768565b826101200151612768565b61014082015260e0810151614c2390614c189080612768565b826101000151612768565b610160820152610120810151614c399080612768565b6101e08201819052614c5a90614c4f9080612768565b826101600151612768565b6101e0820152610100810151614c709080612768565b6101a08201819052614c9190614c869080612768565b826101400151612768565b6101a08201819052610160820151614ca891612768565b6101808201526101408101516101e0820151614cc49190612768565b6101c0820152614cd861368985600c6151dd565b6102008201819052610280840151610180830151614d03926107809161077b9061079e8a60246151dd565b8360146020020152614d33836015602002015161078083610200015161077b856101a0015161079e8a60256151dd565b8360156020020152614d63836016602002015161078083610200015161077b856101c0015161079e8a60266151dd565b8360166020020152614d93836017602002015161078083610200015161077b856101e0015161079e8a60276151dd565b836017602002015250505050565b614df36040518061016001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f6040518060800160405280614e287f10dc6e9c006ea38b04b1e03b4bd9490c0d03f98929ca1d7fb56821fd19d3b6e7612735565b8152602001614e567f0c28145b6a44df3e0149b3d0a30b3bb599df9756d4dd9b84a86b38cfb45a740b612735565b8152602001614e837e544b8338791518b2c7645a50392798b21f75bb60e3596170067d00141cac15612735565b8152602001614eb17f222c01175718386f2e2e82eb122789e352e105a3b8fa852613bc534433ee428b612735565b90529050614ece614ec386601c6151dd565b6107808760026151dd565b6101208301819052614f0d90614f0290614ef790614eec908061274d565b85610120015161274d565b84610120015161274d565b83610120015161274d565b8252614f1a85601d6151dd565b6020830152614f2a85601e6151dd565b6040830152614f3a85601f6151dd565b606083015281516020830151614f62916147bc91614f589190612768565b8460400151612768565b6080830152614f7561393b86600d6151dd565b6101408301528151614f9690614f8c90835f6114d0565b8360800151612768565b60a0830152614fc2846018602002015161078084610140015161077b8660a0015161079e8b60246151dd565b6103008501526020820151614fdd90614f8c908360016114d0565b60c0830152615009846019602002015161078084610140015161077b8660c0015161079e8b60256151dd565b610320850152604082015161502490614f8c908360026114d0565b60e083015261505084601a602002015161078084610140015161077b8660e0015161079e8b60266151dd565b610340850152606082015161506b90614f8c908360036114d0565b61010083015261509984601b602002015161078084610140015161077b86610100015161079e8b60276151dd565b84601b6137c2565b815160015b601c8110156150f3576150e9826107808684601c81106150c8576150c8615adf565b6020020151866150d9600187615a92565b601b81106114d0576114d0615adf565b91506001016150a6565b5092915050565b604080518082019091525f8082526020820152604080518082019091525f8082526020820152604051835181526020840151602082015284604082015260408160608360075afa8061514a575f5ffd5b5080518252602080820151908301526060016040529392505050565b604080518082019091525f8082526020820152604080518082019091525f80825260208201526040518451815260208501516020820152835160408201526020840151606082015260408160808360065afa806151c1575f5ffd5b5080518252602080820151908301526080016040529392505050565b5f828260288111156151f1576151f1615d0f565b6029811061520157615201615adf565b60200201519392505050565b604051806103e001604052805f81526020015f81526020015f815260200161524660405180604001604052805f81526020015f81525090565b815260200161526660405180604001604052805f81526020015f81525090565b815260200161528660405180604001604052805f81526020015f81525090565b81526020016152a660405180604001604052805f81526020015f81525090565b81526020016152c660405180604001604052805f81526020015f81525090565b81526020016152e660405180604001604052805f81526020015f81525090565b815260200161530660405180604001604052805f81526020015f81525090565b815260200161532660405180604001604052805f81526020015f81525090565b815260200161534660405180604001604052805f81526020015f81525090565b815260200161536660405180604001604052805f81526020015f81525090565b815260200161538660405180604001604052805f81526020015f81525090565b81526020016153a660405180604001604052805f81526020015f81525090565b81526020016153c660405180604001604052805f81526020015f81525090565b81526020016153e660405180604001604052805f81526020015f81525090565b815260200161540660405180604001604052805f81526020015f81525090565b815260200161542660405180604001604052805f81526020015f81525090565b815260200161544660405180604001604052805f81526020015f81525090565b815260200161546660405180604001604052805f81526020015f81525090565b815260200161548660405180604001604052805f81526020015f81525090565b81526020016154a660405180604001604052805f81526020015f81525090565b81526020016154c660405180604001604052805f81526020015f81525090565b81526020016154e660405180604001604052805f81526020015f81525090565b815260200161550660405180604001604052805f81526020015f81525090565b815260200161552660405180604001604052805f81526020015f81525090565b815260200161554660405180604001604052805f81526020015f81525090565b815260200161556660405180604001604052805f81526020015f81525090565b815260200161558660405180604001604052805f81526020015f81525090565b81526020016155a660405180604001604052805f81526020015f81525090565b905290565b604051806101e001604052806155bf6158dc565b81526020016155df60405180604001604052805f81526020015f81525090565b81526020016155ff60405180604001604052805f81526020015f81525090565b815260200161561f60405180604001604052805f81526020015f81525090565b815260200161563f60405180604001604052805f81526020015f81525090565b815260200161565f60405180604001604052805f81526020015f81525090565b815260200161567f60405180604001604052805f81526020015f81525090565b815260200161569f60405180604001604052805f81526020015f81525090565b81526020016156bf60405180604001604052805f81526020015f81525090565b81526020016156cc6158fb565b81526020016156d9615929565b81526020016156e6615948565b8152602001615566615824565b6040518061010001604052806157326040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b815260200161573f6157e7565b815260200161574c615824565b8152602001615759615824565b81526020015f81526020015f81526020015f81526020015f81525090565b604051806101c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020016157b5615981565b81526020016157c2615981565b81526020015f81526020015f81526020015f81526020015f8152602001606081525090565b604051806103600160405280601b906020820280368337509192915050565b6040518060a001604052806005906020820280368337509192915050565b604051806103800160405280601c906020820280368337509192915050565b6040518061012001604052806009906020820280368337509192915050565b604051806105400160405280602a906020820280368337509192915050565b60405180606001604052806003906020820280368337509192915050565b6040518061010001604052806008906020820280368337509192915050565b6040518060e001604052806007906020820280368337509192915050565b6040518061020001604052806010906020820280368337509192915050565b604051806103800160405280601c905b61591361589f565b81526020019060019003908161590b5790505090565b6040518061052001604052806029906020820280368337509192915050565b604051806103600160405280601b905b604080518082019091525f80825260208201528152602001906001900390816159585790505090565b60405180608001604052806004906020820280368337509192915050565b5f5f5f5f604085870312156159b2575f5ffd5b843567ffffffffffffffff8111156159c8575f5ffd5b8501601f810187136159d8575f5ffd5b803567ffffffffffffffff8111156159ee575f5ffd5b8760208284010111156159ff575f5ffd5b60209182019550935085013567ffffffffffffffff811115615a1f575f5ffd5b8501601f81018713615a2f575f5ffd5b803567ffffffffffffffff811115615a45575f5ffd5b8760208260051b8401011115615a59575f5ffd5b949793965060200194505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761276257612762615a67565b8181038181111561276257612762615a67565b8082018082111561276257612762615a67565b5f5f85851115615ac6575f5ffd5b83861115615ad2575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b5f60018201615b1857615b18615a67565b5060010190565b80356020831015612762575f19602084900360031b1b1692915050565b5f82615b5657634e487b7160e01b5f52601260045260245ffd5b500690565b5f8183825b6005811015615b7f578151835260209283019290910190600101615b60565b50505060a08201905092915050565b5f8183825b6009811015615bb2578151835260209283019290910190600101615b93565b5050506101208201905092915050565b5f8183825b602a811015615be6578151835260209283019290910190600101615bc7565b5050506105408201905092915050565b81515f90829060208501835b82811015615c20578151845260209384019390910190600101615c02565b509195945050505050565b5f8183825b6003811015615c4f578151835260209283019290910190600101615c30565b50505060608201905092915050565b5f81615c6c57615c6c615a67565b505f190190565b5f8183825b6008811015615c97578151835260209283019290910190600101615c78565b5050506101008201905092915050565b5f82518060208501845e5f920191825250919050565b5f60208284031215615ccd575f5ffd5b81518015158114610333575f5ffd5b5f8183825b6007811015615d00578151835260209283019290910190600101615ce1565b50505060e08201905092915050565b634e487b7160e01b5f52602160045260245ffdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a2646970667358221220dd4ef74de03a5fc6e61f901ba52f751e7f352836d52d3e63358a85bb44453a4d64736f6c634300081b0033";
4
+ export declare const HonkVerifierBytecode = "0x610100604052348015610010575f5ffd5b506301000000608052601860a0527f170169ddda607641d673af05b06760c9881cbee1609e7f6e1a05760b2bbf750460c05260ae60e05260805160a05160c05160e051615d996100de5f395f818161018101526107ae01525f61016001525f8181605b01528181609401528181610101015281816101a2015281816108c7015281816109d401528181610a0001528181610a7b015281816112d401528181611374015281816115c30152818161160f0152818161165d015281816116b40152612cfc01525f5050615d995ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063ea50d0e41461002d575b5f5ffd5b61004061003b36600461599f565b610054565b604051901515815260200160405180910390f35b5f5f61007f7f000000000000000000000000000000000000000000000000000000000000000061028c565b905061008c816020615a7b565b85146100ee577f0000000000000000000000000000000000000000000000000000000000000000856100bf836020615a7b565b6040516359895a5360e01b81526004810193909352602483019190915260448201526064015b60405180910390fd5b5f6100f761033a565b90505f61012588887f000000000000000000000000000000000000000000000000000000000000000061034f565b9050601082604001516101389190615a92565b85146101575760405163fa06659360e01b815260040160405180910390fd5b5f6101c68288887f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006106a6565b90506102168787808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152505085518551606081015160809091015191935091506001610758565b815160a001525f61022783836108bf565b905080610247576040516313f8744360e31b815260040160405180910390fd5b5f6102538486856109c0565b905080610273576040516352ec174560e11b815260040160405180910390fd5b81801561027d5750805b9b9a5050505050505050505050565b5f8061029a60026008615a7b565b905060016102a9600885615a7b565b6102b39190615a7b565b6102bd9082615aa5565b90506102cb60016029615a7b565b6102d59082615aa5565b905060026102e4600185615a92565b6102ee9190615a7b565b6102f89082615aa5565b9050610305600184615a7b565b61030f9082615aa5565b905061031c600280615a7b565b6103269082615aa5565b9050610333601082615aa5565b9392505050565b61034261520d565b61034a611786565b905090565b6103576155ab565b5f805b60108110156103b957610386868387610374602083615aa5565b9261038193929190615ab8565b6120c2565b8351826010811061039957610399615adf565b6020020181815250506020826103af9190615aa5565b915060010161035a565b506103dd8582866103cb604083615aa5565b926103d893929190615ab8565b6120d5565b60208301526103ed604082615aa5565b90506104008582866103cb604083615aa5565b6040808401919091526104139082615aa5565b90506104268582866103cb604083615aa5565b6060830152610436604082615aa5565b90506104498582866103cb604083615aa5565b60c0830152610459604082615aa5565b905061046c8582866103cb604083615aa5565b60e083015261047c604082615aa5565b905061048f8582866103cb604083615aa5565b608083015261049f604082615aa5565b90506104b28582866103cb604083615aa5565b6101008301526104c3604082615aa5565b90506104d68582866103cb604083615aa5565b60a08301526104e6604082615aa5565b90505f5b83811015610564575f5b600881101561055b5761050e878488610374602083615aa5565b84610120015183601c811061052557610525615adf565b6020020151826008811061053b5761053b615adf565b6020020181815250506020836105519190615aa5565b92506001016104f4565b506001016104ea565b505f5b60298110156105b857610581868387610374602083615aa5565b836101400151826029811061059857610598615adf565b6020020181815250506020826105ae9190615aa5565b9150600101610567565b505f5b6105c6600185615a92565b81101561060f576105de8683876103cb604083615aa5565b83610160015182601b81106105f5576105f5615adf565b6020020152610605604083615aa5565b91506001016105bb565b505f5b838110156106625761062b868387610374602083615aa5565b83610180015182601c811061064257610642615adf565b6020020181815250506020826106589190615aa5565b9150600101610612565b506106748582866103cb604083615aa5565b6101a0830152610685604082615aa5565b90506106988582866103cb604083615aa5565b6101c0830152509392505050565b6106ae6156f3565b5f6106bd888888888886612162565b90835290506106cc81896121e1565b602084019190915290506106e081846122d0565b604084019190915290506106f588828561235f565b606084019190915290506107098882612433565b6080840191909152905061071e8882856124be565b60a08401919091529050610733888285612633565b60c0840191909152905061074788826126f8565b5060e0830152509695505050505050565b5f60018082610785866107808961077b6107768a6310000000615aa5565b612735565b61274d565b612768565b90505f6107a38761079e8a61077b6107768b6001615aa5565b612781565b90505f5b6107d260107f0000000000000000000000000000000000000000000000000000000000000000615a92565b81101561083f575f6107fc8c83815181106107ef576107ef615adf565b60200260200101516127a9565b905061080c8661077b8684612768565b955061081c8561077b8584612768565b9450610828848b612768565b9350610834838b612781565b9250506001016107a7565b505f5b60108110156108a6575f8a826010811061085e5761085e615adf565b602002015190506108738661077b8684612768565b95506108838561077b8584612768565b945061088f848b612768565b935061089b838b612781565b925050600101610842565b506108b184846127be565b9a9950505050505050505050565b5f806001815b7f0000000000000000000000000000000000000000000000000000000000000000811015610996575f86610120015182601c811061090557610905615adf565b602002015190505f61091782866127cc565b905080610937576040516313f8744360e31b815260040160405180910390fd5b5f876060015184601c811061094e5761094e615adf565b6020020151905061095f83826127ec565b9550610986886040015185601c811061097a5761097a615adf565b6020020151868361299b565b94505050508060010190506108c5565b505f6109b0866101400151865f01518760200151856129c6565b90508281145b9695505050505050565b5f6109c9615777565b5f6109f88460a001517f0000000000000000000000000000000000000000000000000000000000000000612a3f565b90505f610a267f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b610a31906002615aa5565b67ffffffffffffffff811115610a4957610a49615af3565b604051908082528060200260200182016040528015610a72578160200160208202803683370190505b5090505f610aa17f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b610aac906002615aa5565b67ffffffffffffffff811115610ac457610ac4615af3565b604051908082528060200260200182016040528015610b0857816020015b604080518082019091525f8082526020820152815260200190600190039081610ae25790505b509050610b3a610b358760e00151855f81518110610b2857610b28615adf565b6020026020010151612781565b612b09565b84610120018181525050610b6e610b358760e00151855f81518110610b6157610b61615adf565b6020026020010151612768565b610140850181905261012085015160c0880151610b8f92610780919061274d565b845260a0860151610bbf90610ba390612b09565b61077b86610120015161079e8a60c0015189610140015161274d565b6020850152815160019083905f90610bd957610bd9615adf565b602002602001018181525050876101a00151815f81518110610bfd57610bfd615adf565b6020908102919091010152600160a08501525f60c085015283515f516020615d445f395f51905f5203604085015260208401515f516020615d445f395f51905f5203606085015260015b60248111610cea57610c6185604001518660a0015161274d565b838281518110610c7357610c73615adf565b602002602001018181525050610cbc8560c001516107808b6101400151600185610c9d9190615a92565b60298110610cad57610cad615adf565b60200201518860a0015161274d565b60c086015260a08501516080880151610cd5919061274d565b60a0860152610ce381615b07565b9050610c47565b505f5b6005811015610db8575f610d02601d83615aa5565b90505f610d10602484615aa5565b9050610d41858381518110610d2757610d27615adf565b602002602001015161078089606001518a60a0015161274d565b858381518110610d5357610d53615adf565b602002602001018181525050610d908760c001516107808d61014001518460298110610d8157610d81615adf565b60200201518a60a0015161274d565b60c088015260a087015160808a0151610da9919061274d565b60a08801525050600101610ced565b50866060015181600181518110610dd157610dd1615adf565b6020026020010181905250866080015181600281518110610df457610df4615adf565b60200260200101819052508660a0015181600381518110610e1757610e17615adf565b60200260200101819052508660c0015181600481518110610e3a57610e3a615adf565b60200260200101819052508660e0015181600581518110610e5d57610e5d615adf565b602002602001018190525086610100015181600681518110610e8157610e81615adf565b602002602001018190525086610120015181600781518110610ea557610ea5615adf565b602002602001018190525086610140015181600881518110610ec957610ec9615adf565b602002602001018190525086610160015181600981518110610eed57610eed615adf565b6020026020010181905250866101c0015181600a81518110610f1157610f11615adf565b602002602001018190525086610180015181600b81518110610f3557610f35615adf565b6020026020010181905250866101a0015181600c81518110610f5957610f59615adf565b6020026020010181905250866101e0015181600d81518110610f7d57610f7d615adf565b602002602001018190525086610200015181600e81518110610fa157610fa1615adf565b602002602001018190525086610220015181600f81518110610fc557610fc5615adf565b602002602001018190525086610240015181601081518110610fe957610fe9615adf565b60200260200101819052508661026001518160118151811061100d5761100d615adf565b60200260200101819052508661028001518160128151811061103157611031615adf565b6020026020010181905250866102a001518160138151811061105557611055615adf565b6020026020010181905250866102c001518160148151811061107957611079615adf565b6020026020010181905250866102e001518160158151811061109d5761109d615adf565b6020026020010181905250866103000151816016815181106110c1576110c1615adf565b6020026020010181905250866103200151816017815181106110e5576110e5615adf565b60200260200101819052508661034001518160188151811061110957611109615adf565b60200260200101819052508661036001518160198151811061112d5761112d615adf565b602002602001018190525086610380015181601a8151811061115157611151615adf565b6020026020010181905250866103a0015181601b8151811061117557611175615adf565b6020026020010181905250866103c0015181601c8151811061119957611199615adf565b6020026020010181905250876020015181601d815181106111bc576111bc615adf565b6020026020010181905250876040015181601e815181106111df576111df615adf565b6020026020010181905250876060015181601f8151811061120257611202615adf565b602002602001018190525087608001518160208151811061122557611225615adf565b60200260200101819052508760a001518160218151811061124857611248615adf565b60200260200101819052508761010001518160228151811061126c5761126c615adf565b60200260200101819052508760c001518160238151811061128f5761128f615adf565b60200260200101819052508760e00151816024815181106112b2576112b2615adf565b60200260200101819052505f6112f887606001518660c001518b6101800151877f0000000000000000000000000000000000000000000000000000000000000000612b79565b9050611322815f8151811061130f5761130f615adf565b602002602001015186610120015161274d565b608086018190526101808a01515160c0890151611353929161078091611348919061274d565b88610140015161274d565b608086015260c087015161136690612cd8565b60a08601525f5b61139860017f0000000000000000000000000000000000000000000000000000000000000000615a92565b8110156115a7576113c8610b358960e00151878460016113b89190615aa5565b81518110610b2857610b28615adf565b61012087015260e08801516113f790610b3590876113e7856001615aa5565b81518110610b6157610b61615adf565b61014087015260a0860151610120870151611412919061274d565b61016087015260a086015160c089015161143a9161142f9161274d565b87610140015161274d565b610180870181905261146f905f516020615d445f395f51905f52036101608801515f516020615d445f395f51905f5203612768565b848261147d60246001615aa5565b6114879190615aa5565b8151811061149757611497615adf565b6020026020010181815250505f6114da8761018001518c61018001518460016114c09190615aa5565b601c81106114d0576114d0615adf565b602002015161274d565b905061151481610780896101600151868660016114f79190615aa5565b8151811061150757611507615adf565b602002602001015161274d565b9050611524876080015182612768565b608088015260a087015160c08a015161154a916115409161274d565b8a60c0015161274d565b60a08801526101608b015182601b811061156657611566615adf565b6020020151848361157960246001615aa5565b6115839190615aa5565b8151811061159357611593615adf565b60209081029190910101525060010161136d565b50604080518082019091526001815260026020820152826115e97f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b815181106115f9576115f9615adf565b60209081029190910101526080850151836116357f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b8151811061164557611645615adf565b60209081029190910101526101c089015180836116837f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b61168e906001615aa5565b8151811061169e5761169e615adf565b602090810291909101015260e0880151846116da7f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b6116e5906001615aa5565b815181106116f5576116f5615adf565b6020026020010181815250505f61170c8486612ce3565b90505f61171883612dfe565b90505f6117298d5f01518484612e4f565b90505f5f6117398f5f0151612ec5565b9150915061174682612f91565b61174f81612f91565b61175a858385613034565b9450611767848285613034565b93506117738585613070565b9f9e505050505050505050505050505050565b61178e61520d565b50604080516103e08101825263010000008152601860208083019190915260ae82840152825180840184527f0701a553235808e0351d9ac09f57a01082d0698ca4c12315ffa850c6fca31b2181527f0bc3a2d2fc0f36149d7fa8f6fde86c460482748a76e77db5cc84e7ad732633b9818301526060830152825180840184527f1310627b332780c3548bef4bba4953a7fdd86c108aac4ecb324f8935f986965081527f09f8dea9021cb7dedd2464d3aed63e0637c55894e3fa144a433ae4ca2dfb5ab2818301526080830152825180840184527f10e5625014a80e465ab0d790949d80395c33a8c6cad78426d5781f8edafb84a881527f0178664c8dd3daa04d944a69f79a1f5e48b4b5142e69dc28313533c11571e5de8183015260a0830152825180840184527f24dcc445c9bfe8c8255adab63fa79f92d939713e5e777ec70109f73460a2f12c81527f0a4945cb5af8a2fa0dafe239bfa6f50163a9e02d7c75b3b6438ba4c5a51416d48183015260c0830152825180840184527f0f297ebda0477a2b8cf854b6e073c9c7c5f0c472f70874dcaee8899b2460007981527f01669ffe7b7a0de1b7d40adc388c65fee34e01d50981e2e646743353a4df32358183015260e0830152825180840184527f060efeda66b6c87c5af0fcef0be39768f96a4362cb3efe20dd925c8d5a78449381527f222dbf5b91a05d1409d4b45baad4a3c93bc3d74d9e7cf40dc3654fba855333f481830152610100830152825180840184527f01a8abe0d74344165494348196db5fa7da3a745f398fd1374cc2cb15bcc58ff481527f0f62b9babe865f3d0c422867d8b7f7fa5c13d85721a659f3b9ff8fc8cc6fc99281830152610120830152825180840184527f10c6d6bb61a10a7376d63c06a03df187f117f0e25ad08bdd31c39728bc022a8c81527f130ce758ac8f9943b0f775953123d43f9ef2d7ea1d50135275ae7cf7f889741e81830152610140830152825180840184527f21be9bcd75ea8bba38224e8dd8165de833ffaf8e09ab0f5fe9ae39858d6c70b081527f0d1562d15ed0fc009f8b5e4867ab2f43ce58514387bf1dccccf867d7183c313881830152610160830152825180840184527f01c2493970a5cfd7f0e900e608d4a050b342b741c497fdec69e1255009cafc3681527f199e0e923f1e5bdc1cd0658169759bfa4caacaa561744fa6dcbca6366b6bf54381830152610180830152825180840184527f254d007d72e4ce4e9e405b84188df93f3538a1ca6fc34860c9d9522c7558fee681527f17479d8852b8fd9195076c98826375932881ab64b5463c96324996062dc6bbbe818301526101a0830152825180840184527f045d10986004c6387e894189d072a94f3a673f558d49854dde16763c736ab6ee81527f054430234b04d6fb62c1c8bc40c25087fdd87647d3bd6e807f9d36b8f67ea871818301526101c0830152825180840184527f2918b1f606e7b4da29e177f68c57d0bf95dd368811e56a518e611b85f434b33581527f2710dab87b65ef1ab05025174fec8c2a103d0f17d96034d28973001ec26481e3818301526101e0830152825180840184527f0fc1eb192e6f899adf9ff0a86b2392075e85fb30926b9cc718120af6d9bd9c7581527f15e6e0d9bcfd9fbb61c13621725253c88b66e193e81e3646c1bbed425e60216081830152610200830152825180840184527f1f09e6957ef20cf200ba0457254c8ad7e33901bf2627def3845829a9a5c4bf1081527f0fc7ae3a8b4c84e60210b0fefea52732728854accd87ff8fdc4558973943a13581830152610220830152825180840184527f26d69900d8c02bda339bad86ee313893048bdd1aa18c29c579b9f78b462719d781527f0f5ff39d7f91b517387c2e69cd07604554aedbda7572e7839c9d928987b96fbf81830152610240830152825180840184527f05d9f1c2adb1144b6dd85d2ef59b8b39b3dc92aa9fa0f61f7d42a75440e77ce981527f271727a297fcda05cf91365a7a92b7515009e81254028fa6113ad6036a34c75d81830152610260830152825180840184527f299d73a74ec62254f3690dec7ecd67407adaa4bd18a47504ca5e60d5ae107fd881527f09387fa17f391a69f04e673ff839df6db60d61ca81053cbd62c22099026b197181830152610280830152825180840184527f07258291fb850fad0b58bd24d41b0704b0bc61471d168cc17ae6e02b381ea9f081527f0a86bda02a7250f2752cd6db3563674de4742027738bae11685c28e3668c0224818301526102a0830152825180840184527f2928237c4f2bbdb868ad20c1353d6855ca52f15a73d373f55acea753a05412c381527f0dc9ec011a12710535e8fc32cb6122a69d6b64a0dc26319adda5f9f269e63206818301526102c0830152825180840184527f294c07d8e26d6093e1eb9854ac40611c1c4ad70cab6ad9035e2a9e6daa5995b381527f21194339cd298af1a8d6b2c6a878cb869c431d2adeb27cb56738740dd0faffd1818301526102e0830152825180840184527f0bd64f978264f1a506e615b7b04d0820459b970967b1434b675f5084b9408cb981527f2723185283b7e26d7c989092e385ec7500b4128268e16060e57f64c9926ad55581830152610300830152825180840184527f2194d92617bbb3ba3d9e53f4f13c5c7c6fc5ae0c56f06e0a35747f24625e576381527f11ca88979a66ada092bb26e2b64b8602eb63f6e2fc21862f6fefead2978de7e081830152610320830152825180840184527f1d346dd159688f85b77717f8197777c6ced8daf349335d74908736241f5f332881527f10e952d77959f4aa6fe9cb7222d9901d06ddfeea51240c79980d4daac814444381830152610340830152825180840184527f109830b81fd8b5e0a3327bf961ea6746fcc9155039d285eaa76f4b0f8839e44781527f28de29af66333e8ea2ee2d23ff9df4297471377a71b5240987690610bad14c7881830152610360830152825180840184527f062b31b3719d79c253d59707efcc41556e43d9f4f122ba79d3484e023fb4da7d81527f283eb52c07506637e09fb73d7875ada840d8e4c75295a90dc312b4d2571c52c38183015261038083015282518084018452600181526002818301526103a083015282518084019093527f2e5a01735ffc1438bb81208b6489cae95380e5c9ad0976b7491ffc477f26b40e83527f10d3a9e4fa80571b60da8287632e314eb474b217667574057949c3cf691cb7b1908301526103c081019190915290565b5f6103336120d08385615b1f565b6127a9565b604080518082019091525f808252602082015260408051808201909152805f516020615d245f395f51905f5261210e60205f8789615ab8565b61211791615b1f565b6121219190615b3c565b81526020908101905f516020615d245f395f51905f5290612146906040908789615ab8565b61214f91615b1f565b6121599190615b3c565b90529392505050565b6121956040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f6121a38888888888613264565b6040860191909152602085019190915290835292506121c28389613562565b6080850191909152606084019190915291989197509095505050505050565b6121e96157e7565b5f6121f2615806565b8481526101008401805151602080840191909152905181015160408084019190915260a086018051516060850152518201516080840152516122559161223a91849101615b5b565b604051602081830303815290604052805190602001206127a9565b91505f612261836135e9565b50808552905060015b6122766001601c615a92565b8110156122c6576122a78561228c600184615a92565b601b811061229c5761229c615adf565b60200201518361274d565b8582601b81106122b9576122b9615adf565b602002015260010161226a565b5050509250929050565b6122d8615824565b5f6122ef8460405160200161223a91815260200190565b93506122fa846135e9565b50825260015b838110156123575761233883612317600184615a92565b601c811061232757612327615adf565b6020020151846114c0600185615a92565b8382601c811061234a5761234a615adf565b6020020152600101612300565b509093915050565b612367615824565b5f805b838110156124295761237a615843565b8581525f5b60088110156123e35787610120015183601c811061239f5761239f615adf565b602002015181600881106123b5576123b5615adf565b6020020151826123c6836001615aa5565b600981106123d6576123d6615adf565b602002015260010161237f565b506123f88160405160200161223a9190615b8e565b95505f612404876135e9565b8685601c811061241657612416615adf565b602002019190915250505060010161236a565b5090949293505050565b5f5f61243d615862565b8381525f5b602981101561249057856101400151816029811061246257612462615adf565b602002015182612473836001615aa5565b602a811061248357612483615adf565b6020020152600101612442565b506124a58160405160200161223a9190615bc2565b91505f6124b1836135e9565b5096929550919350505050565b5f80806124cc600185615a92565b6124d7906002615a7b565b6124e2906001615aa5565b67ffffffffffffffff8111156124fa576124fa615af3565b604051908082528060200260200182016040528015612523578160200160208202803683370190505b50905084815f8151811061253957612539615adf565b60209081029190910101525f5b612551600186615a92565b8110156126045786610160015181601b811061256f5761256f615adf565b60200201515182612581836002615a7b565b61258c906001615aa5565b8151811061259c5761259c615adf565b60200260200101818152505086610160015181601b81106125bf576125bf615adf565b602002015160200151828260026125d69190615a7b565b6125e1906002615aa5565b815181106125f1576125f1615adf565b6020908102919091010152600101612546565b506126198160405160200161223a9190615bf6565b91505f612625836135e9565b509792965091945050505050565b5f8080612641846001615aa5565b67ffffffffffffffff81111561265957612659615af3565b604051908082528060200260200182016040528015612682578160200160208202803683370190505b50905084815f8151811061269857612698615adf565b60209081029190910101525f5b848110156126045786610180015181601c81106126c4576126c4615adf565b6020020151826126d5836001615aa5565b815181106126e5576126e5615adf565b60209081029190910101526001016126a5565b5f5f612702615881565b8381526101a085018051516020808401919091529051810151604080840191909152516124a59161223a91849101615c2b565b5f5f516020615d445f395f51905f52825b0692915050565b5f5f516020615d445f395f51905f5282840990505b92915050565b5f5f516020615d445f395f51905f528284089392505050565b5f5f516020615d445f395f51905f52825f516020615d445f395f51905f520384089392505050565b5f5f516020615d445f395f51905f5282612746565b5f6103338361077b84612b09565b815160208301515f9182916127e19190612768565b929092149392505050565b60408051610100810182527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffec5181526102d060208201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff1191810191909152609060608201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff71608082015260f060a08201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593effffd3160c08201526113b060e08201525f906001825b60088110156128d3576128c98261077b8784612781565b91506001016128b2565b506128dc61589f565b5f5b600881101561293d575f8482600881106128fa576128fa615adf565b6020020151905061290f8161077b8985612781565b905061291a81612b09565b90508083836008811061292f5761292f615adf565b6020020152506001016128de565b505f5b6008811015612990575f87826008811061295c5761295c615adf565b60200201519050612979818484600881106114d0576114d0615adf565b90506129858682612768565b955050600101612940565b506109b6848361274d565b5f5f6129b160016107808561077b896001612781565b90506129bd848261274d565b95945050505050565b5f6129cf615824565b6129da868285613622565b6129e6868683866137ce565b6129f2868683866139ba565b6129fd868285613be5565b612a08868285613dd9565b612a1486868386614122565b612a1f8682856145ce565b612a2a8682856149e0565b612a35868285614da1565b6109b681856150a1565b60605f8267ffffffffffffffff811115612a5b57612a5b615af3565b604051908082528060200260200182016040528015612a84578160200160208202803683370190505b50905083815f81518110612a9a57612a9a615adf565b602090810291909101015260015b83811015612b0157612adc82612abf600184615a92565b81518110612acf57612acf615adf565b6020026020010151612cd8565b828281518110612aee57612aee615adf565b6020908102919091010152600101612aa8565b509392505050565b5f5f8290505f604051602081526020808201526020604082015282606082015260025f516020615d445f395f51905f520360808201525f516020615d445f395f51905f5260a082015260205f60c08360055afa80612b65575f5ffd5b505f51608091909101604052949350505050565b60605f8267ffffffffffffffff811115612b9557612b95615af3565b604051908082528060200260200182016040528015612bbe578160200160208202803683370190505b509050825b8015612ccd575f85612bd6600184615a92565b81518110612be657612be6615adf565b602002602001015190505f89600184612bff9190615a92565b601c8110612c0f57612c0f615adf565b602002015190505f612c6a612c2e612c27858d61274d565b600261274d565b61079e8b612c3d600189615a92565b601c8110612c4d57612c4d615adf565b602002015161077b612c648861077b60018a612781565b87612781565b9050612c8b8161077b610b35612c858761077b600189612781565b86612768565b99508990508085612c9d600187615a92565b81518110612cad57612cad615adf565b60200260200101818152505050505080612cc690615c5e565b9050612bc3565b509695505050505050565b5f612762828361274d565b604080518082019091525f80825260208201525f612d227f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b612d2d906002615aa5565b90505f5b81811015612d6357612d5b858281518110612d4e57612d4e615adf565b6020026020010151612f91565b600101612d31565b50604051600190815b60018401811015612dc85760208102870160208202870181515160408501528151602001516060850152805160808501525050604080830160606040850160075afa8316925060408260808460065afa90921691600101612d6c565b5080518452602081015160208501525080612df6576040516352ec174560e11b815260040160405180910390fd5b505092915050565b604080518082019091525f80825260208201525f516020615d245f395f51905f5282602001515f516020615d245f395f51905f52612e3c9190615a92565b612e469190615b3c565b60208301525090565b5f5f5f612e5b86612ec5565b91509150612e6761589f565b82518152602080840151818301528251604080840191909152838201516060840152875160808401528782015160a0840152865160c08401528682015160e084015251612eba9161223a91849101615c73565b979650505050505050565b6040805180820182525f80825260208083018281528451808601865283815280830193845286519287015195870151606088015160cc90811b608892831b6044998a1b90961795909517949094178652608088015160a089015160c08a015160e08b0151871b90841b918a1b90921717179092526101008701516101208801516101408901516101608a0151861b90851b91891b909217171781526101808701516101a08801516101c08901516101e09099015190941b9790921b9290951b1717939093179092529091565b805160208201515f5f516020615d245f395f51905f528380095f516020615d245f395f51905f5260035f516020615d245f395f51905f52838709085f516020615d245f395f51905f52848509149150508061302e5760405162461bcd60e51b815260206004820152601960248201527f706f696e74206973206e6f74206f6e207468652063757276650000000000000060448201526064016100e5565b50505050565b604080518082019091525f8082526020820152604080518082019091525f808252602082015261306483866150fa565b90506129bd8185615166565b81516020808401518351848301516040805194850195909552938301919091527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c260608301527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed60808301527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b60a08301527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa60c083015260e08201526101008101919091527f260e01b251f6f1c7e7ff4e580791dee8ea51d87a358e038b4efe30fac09383c16101208201527f0118c4d5b837bcc2bc89b5b398b5974e9f5944073b32078b7e231fec938883b06101408201527f04fc6369f7110fe3d25156c1bb9a72859cf2a04641f99ba4ee413c80da6a5fe46101608201527f22febda3c0c0632a56475b4214e5615e11e6dd3f96e6cea2854a87d4dacc5e556101808201525f9081906101a00160405160208183030381529060405290505f5f60086001600160a01b0316836040516132069190615ca7565b5f60405180830381855afa9150503d805f811461323e576040519150601f19603f3d011682016040523d82523d5f602084013e613243565b606091505b50915091508180156109b65750808060200190518101906109b69190615cbd565b5f80808080613274866001615aa5565b61327f906006615aa5565b67ffffffffffffffff81111561329757613297615af3565b6040519080825280602002602001820160405280156132c0578160200160208202803683370190505b509050865f1b815f815181106132d8576132d8615adf565b60209081029190910101525f5b6132f0601088615a92565b8110156133415789898281811061330957613309615adf565b905060200201358282600161331e9190615aa5565b8151811061332e5761332e615adf565b60209081029190910101526001016132e5565b505f5b60108110156133b2578a5161336c90826010811061336457613364615adf565b602002015190565b8282601061337b8b6001615aa5565b6133859190615a92565b61338f9190615aa5565b8151811061339f5761339f615adf565b6020908102919091010152600101613344565b5060208a015151816133c5886001615aa5565b815181106133d5576133d5615adf565b6020908102919091018101919091528a8101510151816133f6886001615aa5565b613401906001615aa5565b8151811061341157613411615adf565b602090810291909101015260408a0151518161342e886001615aa5565b613439906002615aa5565b8151811061344957613449615adf565b60209081029190910181019190915260408b015101518161346b886001615aa5565b613476906003615aa5565b8151811061348657613486615adf565b602090810291909101015260608a015151816134a3886001615aa5565b6134ae906004615aa5565b815181106134be576134be615adf565b60209081029190910181019190915260608b01510151816134e0886001615aa5565b6134eb906005615aa5565b815181106134fb576134fb615adf565b60200260200101818152505061351b8160405160200161223a9190615bf6565b9150613526826135e9565b6040805160208101869052929750909550613541910161223a565b91505f61354d836135e9565b50959b949a5094985090965091945050505050565b5f5f5f61356d6158be565b85815260c0858101805151602080850191909152905181015160408085019190915260e08801805151606086015251820151608080860191909152880180515160a0860152518201519284019290925290516135cf9161223a91849101615cdc565b91506135da826135e9565b90979096509194509092505050565b5f80826f7fffffffffffffffffffffffffffffff8116607f82901c61360d826127a9565b9450613618816127a9565b9350505050915091565b5f61362e8460076151dd565b90507f183227397098d014dc2822db40c0ac2e9419f4243cdcb848a1f0fac9f80000005f61368f613689613663856003612781565b61077b61367e6136738b5f6151dd565b61077b8c601d6151dd565b61077b8b601c6151dd565b8361274d565b90506137106137056136ec6136d36136ba856107806136af8d60026151dd565b61077b8e601c6151dd565b6107806136c88c60036151dd565b61077b8d601d6151dd565b6107806136e18b60046151dd565b61077b8c601e6151dd565b6107806136fa8a60056151dd565b61077b8b601f6151dd565b6107808860016151dd565b905061372f81610780613724866001612781565b61077b8a60276151dd565b905061373b818461274d565b9050613747818561274d565b8552505f905061378161377761376c61376188601c6151dd565b61078089601f6151dd565b61079e8860246151dd565b610780875f6151dd565b90506137928161077b846002612781565b90506137a38161077b846001612781565b90506137af818361274d565b90506137bb818461274d565b9050808460015b60200201525050505050565b5f5f5f6138046137fa6137e289601c6151dd565b6107806137f08b60126151dd565b8a6060015161274d565b8760800151612768565b905061383d8161077b61383361381b8b601d6151dd565b6107806138298d60136151dd565b8c6060015161274d565b8960800151612768565b90506138628161077b6138336138548b601e6151dd565b6107806138298d60146151dd565b90506138878161077b6138336138798b601f6151dd565b6107806138298d60156151dd565b92505f90506138ab6137fa61389d89601c6151dd565b6107806137f08b600e6151dd565b90506138d08161077b6138336138c28b601d6151dd565b6107806138298d600f6151dd565b90506138f58161077b6138336138e78b601e6151dd565b6107806138298d60106151dd565b905061391a8161077b61383361390c8b601f6151dd565b6107806138298d60116151dd565b91505f905061394161393b6139308960206151dd565b6107808a601a6151dd565b8461274d565b90506139768161079e6139706139588b60286151dd565b6107806139668d601b6151dd565b8c60a0015161274d565b8561274d565b9050613982818561274d565b6040860152505f6139a561397061399a89601b6151dd565b61077b8a60286151dd565b9050808560035b602002015250505050505050565b5f5f613a18613a006139e86139d36138338a60166151dd565b6107806139e18b60176151dd565b8a5161274d565b6107806139f68a60186151dd565b896020015161274d565b610780613a0e8960196151dd565b886040015161274d565b91505f613a4f613a36613a2c89601c6151dd565b8860800151612768565b610780613a448a60036151dd565b61077b8b60246151dd565b90505f613a78613a6089601d6151dd565b610780613a6d8b5f6151dd565b61077b8c60256151dd565b90505f613aa2613a898a601e6151dd565b610780613a978c60016151dd565b61077b8d60266151dd565b9050613ae1613ac9613abb85610780868d5f015161274d565b610780848c6020015161274d565b610780613ad78c60046151dd565b8b6040015161274d565b93505050505f613af561393b8860216151dd565b90505f613b0661393b8960216151dd565b90505f613b3e613b25613b1a8b60236151dd565b6107808c60066151dd565b61079e613b338c60236151dd565b61077b8d60066151dd565b90505f613b62613b5c613b51878961274d565b61077b8d60216151dd565b83612781565b9050613b6e818861274d565b90505f613b96613b88613b828d60066151dd565b8761274d565b61079e613b828e60226151dd565b90505f613ba48c60236151dd565b90505f613bb4613b5c838461274d565b60808c0185905260a08c018490529050613bce818b61274d565b8b6006602002015250505050505050505050505050565b5f613bf15f6001612781565b90505f613bff5f6002612781565b90505f613c0d5f6003612781565b90505f613c29613c1e88601d6151dd565b61079e89601c6151dd565b90505f613c45613c3a89601e6151dd565b61079e8a601d6151dd565b90505f613c61613c568a601f6151dd565b61079e8b601e6151dd565b90505f613c7d613c728b60246151dd565b61079e8c601f6151dd565b905083613c8e8161077b818b612768565b9050613c9e8161077b878a612768565b9050613cae8161077b8789612768565b9050613cbf8161077b8d60086151dd565b9050613ccb818a61274d565b60e08b01525082613ce08161077b818b612768565b9050613cf08161077b868a612768565b9050613d008161077b8689612768565b9050613d118161077b8d60086151dd565b9050613d1d818a61274d565b6101008b01525081613d338161077b818b612768565b9050613d438161077b858a612768565b9050613d538161077b8589612768565b9050613d648161077b8d60086151dd565b9050613d70818a61274d565b6101208b01525080613d868161077b818b612768565b9050613d968161077b848a612768565b9050613da68161077b8489612768565b9050613db78161077b8d60086151dd565b9050613dc3818a61274d565b610140909a019990995250505050505050505050565b613e126040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b613e1d84601d6151dd565b8152613e2a84601e6151dd565b6020820152613e3a8460246151dd565b6040820152613e4a8460276151dd565b6060820152613e5a8460266151dd565b6080820152613e6a8460256151dd565b60a08201525f613e7b8560026151dd565b90505f613e88865f6151dd565b90505f613e9c8460400151855f0151612781565b90505f613eb18560200151866020015161274d565b606086015190915086905f90613ec7908061274d565b90505f613ee5613edf89602001518a6060015161274d565b8861274d565b90505f613f04613efd8a60a001518b60400151612768565b8a51612768565b9050613f13613b82828861274d565b9050613f3a613f34613f2e613f288487612781565b88612781565b84612768565b83612768565b9050613f62613f57613f4c838761274d565b61077b8f60096151dd565b61077b60018a612781565b6101608c015250505050602085015160808601515f91613f8191612768565b90505f613f9f613f9588606001518861274d565b8860200151612781565b90505f613fc3613faf848761274d565b6107806139708b60a001518c5f0151612781565b9050613feb613fe0613fd5838c61274d565b61077b8e60096151dd565b61077b600189612781565b6101808b0152505f915061400c9050614005836011612768565b875161274d565b90505f6140198384612768565b90506140258182612768565b90505f61403383600961274d565b905061405c61405661393b61404f8b60a001518c5f0151612768565b8b51612768565b82612781565b60c089018190525f9061407790613edf90613f4c908d61274d565b905061408a8b600b602002015182612768565b6101608c0152505086515f92506140b19150614005906140aa9080612768565b8851612768565b90505f6140f16140cc8361077b8a5f01518b60a00151612781565b602089015161079e906140df9080612768565b61077b8b602001518c60800151612768565b905061410e89600c6020020151610780613edf613f4c858d61274d565b89600c602002015250505050505050505050565b61418c604051806101e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6141a461419a86601e6151dd565b856040015161274d565b8082526141c3906107806141b988601d6151dd565b876020015161274d565b8082526141d89061078061400588601c6151dd565b8082526141ea906107808760016151dd565b808252602082018190526142039061079e87601f6151dd565b815261421e6142138660246151dd565b61079e87601c6151dd565b608082015261423c6142318660276151dd565b61079e87601f6151dd565b606082015260808101516142559061077b816001612781565b6101c082015260808101516142959061428b906142849061077b60015f516020615d445f395f51905f52615a92565b6001612768565b826060015161274d565b60a082018190526142cb906142bd9061077b6142b28960026151dd565b61077b8a60036151dd565b61077b61397088600a6151dd565b83600e60200201526101c08101516142ef906142bd9061077b6142b28960026151dd565b6101e084015280516143149061077b6143098860026151dd565b61077b8960036151dd565b6101208201525f61433361432987601f6151dd565b8360200151612781565b90506143448161077b836001612781565b60e08301526143616143578760266151dd565b866040015161274d565b604083018190526143849061078061437a8960256151dd565b886020015161274d565b604083018190526143a49061078061439d8960246151dd565b885161274d565b60408301526143c16143b78760276151dd565b8360400151612781565b60408301525f6143e06143d58860266151dd565b61079e89601e6151dd565b905061443261440d613689614284866080015160015f516020615d445f395f51905f5261077b9190615a92565b61077b614284866040015160015f516020615d445f395f51905f5261077b9190615a92565b60c084015260408301516144549061444a908061274d565b8460400151612781565b61010084015260c0830151614480906144729061077b8a60046151dd565b61077b613b828a600a6151dd565b6102008601526101c083015161449f906144729061077b8a60046151dd565b6102208601526101008301516144be906144729061077b8a60046151dd565b61024086015260e08301516144d89061077b8960046151dd565b6101408401526144f76144ec8860256151dd565b61079e89601d6151dd565b6101608401526080830151614535906143d59061452a906142849061077b60015f516020615d445f395f51905f52615a92565b85610160015161274d565b61018084018190526101208401516101a0850181905261456c916107809061077b6145618c60056151dd565b61077b8d60026151dd565b6101a08401819052835161458c91906107809061077b6145618c5f6151dd565b6101a084018190526101408401516145a49190612768565b6101a084018190526145be9061077b613b828a600a6151dd565b6101a0840181905285600d6139ac565b6146076040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61463c61462361461886601c6151dd565b61077b8760256151dd565b6107806146318760246151dd565b61077b88601d6151dd565b815261468161467661465d61465287601c6151dd565b61077b88601f6151dd565b61078061466b88601d6151dd565b61077b89601e6151dd565b61079e8660266151dd565b6040820181905261469690600160441b61274d565b604082018190526146ac9061079e8660276151dd565b6040820181905281516146bf9190612768565b604082018190526146d59061077b8660056151dd565b604082015280516146ea90600160441b61274d565b80825261470a906107806146ff8760246151dd565b61077b8860256151dd565b808252602082018190526147319061079e61472687601e6151dd565b61078088601f6151dd565b602082018190526147479061077b8660046151dd565b60208201528051606082018190526147649061078086601f6151dd565b606082018190526147889061079e61477d8760266151dd565b6107808860276151dd565b6060820181905261479d9061077b865f6151dd565b8160600181815250505f6147c66147bc83602001518460400151612768565b8360600151612768565b90506147d78161077b8760036151dd565b90506147ef6147e78660256151dd565b61400061274d565b60808301819052614805906107808760246151dd565b608083018190526148189061400061274d565b6080830181905261482e9061078087601e6151dd565b608083018190526148419061400061274d565b608083018190526148579061078087601d6151dd565b6080830181905261486a9061400061274d565b608083018190526148809061078087601c6151dd565b608083018190526148969061079e87601f6151dd565b608083018190526148ac9061077b8760056151dd565b60808301526148bf6147e78660266151dd565b60a083018190526148d5906107808760256151dd565b60a083018190526148e89061400061274d565b60a083018190526148fe906107808760246151dd565b60a083018190526149119061400061274d565b60a083018190526149279061078087601f6151dd565b60a0830181905261493a9061400061274d565b60a083018190526149509061078087601e6151dd565b60a083018190526149669061079e8760276151dd565b60a0830181905261497b9061077b875f6151dd565b60a0830181905260808301515f916149939190612768565b90506149a48161077b8860046151dd565b90506149b08282612768565b60c084018190526149c99061077b613b8289600b6151dd565b60c084018190528560136020020152505050505050565b614a566040518061022001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b614a6f614a6485601c6151dd565b6107808660026151dd565b8152614a8a614a7f85601d6151dd565b6107808660036151dd565b6020820152614aa8614a9d85601e6151dd565b6107808660046151dd565b6040820152614ac6614abb85601f6151dd565b6107808660056151dd565b60608201528051614af890614af190614aea90614ae3908061274d565b845161274d565b835161274d565b825161274d565b60808201526020810151614b3690614b2c90614b2290614b18908061274d565b846020015161274d565b836020015161274d565b826020015161274d565b60a08201526040810151614b7490614b6a90614b6090614b56908061274d565b846040015161274d565b836040015161274d565b826040015161274d565b60c08201526060810151614ba89061428b90614b9e90614b94908061274d565b846060015161274d565b836060015161274d565b60e0820152608081015160a0820151614bc19190612768565b61010082015260c081015160e0820151614bdb9190612768565b61012082015260a0810151614bff90614bf49080612768565b826101200151612768565b61014082015260e0810151614c2390614c189080612768565b826101000151612768565b610160820152610120810151614c399080612768565b6101e08201819052614c5a90614c4f9080612768565b826101600151612768565b6101e0820152610100810151614c709080612768565b6101a08201819052614c9190614c869080612768565b826101400151612768565b6101a08201819052610160820151614ca891612768565b6101808201526101408101516101e0820151614cc49190612768565b6101c0820152614cd861368985600c6151dd565b6102008201819052610280840151610180830151614d03926107809161077b9061079e8a60246151dd565b8360146020020152614d33836015602002015161078083610200015161077b856101a0015161079e8a60256151dd565b8360156020020152614d63836016602002015161078083610200015161077b856101c0015161079e8a60266151dd565b8360166020020152614d93836017602002015161078083610200015161077b856101e0015161079e8a60276151dd565b836017602002015250505050565b614df36040518061016001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f6040518060800160405280614e287f10dc6e9c006ea38b04b1e03b4bd9490c0d03f98929ca1d7fb56821fd19d3b6e7612735565b8152602001614e567f0c28145b6a44df3e0149b3d0a30b3bb599df9756d4dd9b84a86b38cfb45a740b612735565b8152602001614e837e544b8338791518b2c7645a50392798b21f75bb60e3596170067d00141cac15612735565b8152602001614eb17f222c01175718386f2e2e82eb122789e352e105a3b8fa852613bc534433ee428b612735565b90529050614ece614ec386601c6151dd565b6107808760026151dd565b6101208301819052614f0d90614f0290614ef790614eec908061274d565b85610120015161274d565b84610120015161274d565b83610120015161274d565b8252614f1a85601d6151dd565b6020830152614f2a85601e6151dd565b6040830152614f3a85601f6151dd565b606083015281516020830151614f62916147bc91614f589190612768565b8460400151612768565b6080830152614f7561393b86600d6151dd565b6101408301528151614f9690614f8c90835f6114d0565b8360800151612768565b60a0830152614fc2846018602002015161078084610140015161077b8660a0015161079e8b60246151dd565b6103008501526020820151614fdd90614f8c908360016114d0565b60c0830152615009846019602002015161078084610140015161077b8660c0015161079e8b60256151dd565b610320850152604082015161502490614f8c908360026114d0565b60e083015261505084601a602002015161078084610140015161077b8660e0015161079e8b60266151dd565b610340850152606082015161506b90614f8c908360036114d0565b61010083015261509984601b602002015161078084610140015161077b86610100015161079e8b60276151dd565b84601b6137c2565b815160015b601c8110156150f3576150e9826107808684601c81106150c8576150c8615adf565b6020020151866150d9600187615a92565b601b81106114d0576114d0615adf565b91506001016150a6565b5092915050565b604080518082019091525f8082526020820152604080518082019091525f8082526020820152604051835181526020840151602082015284604082015260408160608360075afa8061514a575f5ffd5b5080518252602080820151908301526060016040529392505050565b604080518082019091525f8082526020820152604080518082019091525f80825260208201526040518451815260208501516020820152835160408201526020840151606082015260408160808360065afa806151c1575f5ffd5b5080518252602080820151908301526080016040529392505050565b5f828260288111156151f1576151f1615d0f565b6029811061520157615201615adf565b60200201519392505050565b604051806103e001604052805f81526020015f81526020015f815260200161524660405180604001604052805f81526020015f81525090565b815260200161526660405180604001604052805f81526020015f81525090565b815260200161528660405180604001604052805f81526020015f81525090565b81526020016152a660405180604001604052805f81526020015f81525090565b81526020016152c660405180604001604052805f81526020015f81525090565b81526020016152e660405180604001604052805f81526020015f81525090565b815260200161530660405180604001604052805f81526020015f81525090565b815260200161532660405180604001604052805f81526020015f81525090565b815260200161534660405180604001604052805f81526020015f81525090565b815260200161536660405180604001604052805f81526020015f81525090565b815260200161538660405180604001604052805f81526020015f81525090565b81526020016153a660405180604001604052805f81526020015f81525090565b81526020016153c660405180604001604052805f81526020015f81525090565b81526020016153e660405180604001604052805f81526020015f81525090565b815260200161540660405180604001604052805f81526020015f81525090565b815260200161542660405180604001604052805f81526020015f81525090565b815260200161544660405180604001604052805f81526020015f81525090565b815260200161546660405180604001604052805f81526020015f81525090565b815260200161548660405180604001604052805f81526020015f81525090565b81526020016154a660405180604001604052805f81526020015f81525090565b81526020016154c660405180604001604052805f81526020015f81525090565b81526020016154e660405180604001604052805f81526020015f81525090565b815260200161550660405180604001604052805f81526020015f81525090565b815260200161552660405180604001604052805f81526020015f81525090565b815260200161554660405180604001604052805f81526020015f81525090565b815260200161556660405180604001604052805f81526020015f81525090565b815260200161558660405180604001604052805f81526020015f81525090565b81526020016155a660405180604001604052805f81526020015f81525090565b905290565b604051806101e001604052806155bf6158dc565b81526020016155df60405180604001604052805f81526020015f81525090565b81526020016155ff60405180604001604052805f81526020015f81525090565b815260200161561f60405180604001604052805f81526020015f81525090565b815260200161563f60405180604001604052805f81526020015f81525090565b815260200161565f60405180604001604052805f81526020015f81525090565b815260200161567f60405180604001604052805f81526020015f81525090565b815260200161569f60405180604001604052805f81526020015f81525090565b81526020016156bf60405180604001604052805f81526020015f81525090565b81526020016156cc6158fb565b81526020016156d9615929565b81526020016156e6615948565b8152602001615566615824565b6040518061010001604052806157326040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b815260200161573f6157e7565b815260200161574c615824565b8152602001615759615824565b81526020015f81526020015f81526020015f81526020015f81525090565b604051806101c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020016157b5615981565b81526020016157c2615981565b81526020015f81526020015f81526020015f81526020015f8152602001606081525090565b604051806103600160405280601b906020820280368337509192915050565b6040518060a001604052806005906020820280368337509192915050565b604051806103800160405280601c906020820280368337509192915050565b6040518061012001604052806009906020820280368337509192915050565b604051806105400160405280602a906020820280368337509192915050565b60405180606001604052806003906020820280368337509192915050565b6040518061010001604052806008906020820280368337509192915050565b6040518060e001604052806007906020820280368337509192915050565b6040518061020001604052806010906020820280368337509192915050565b604051806103800160405280601c905b61591361589f565b81526020019060019003908161590b5790505090565b6040518061052001604052806029906020820280368337509192915050565b604051806103600160405280601b905b604080518082019091525f80825260208201528152602001906001900390816159585790505090565b60405180608001604052806004906020820280368337509192915050565b5f5f5f5f604085870312156159b2575f5ffd5b843567ffffffffffffffff8111156159c8575f5ffd5b8501601f810187136159d8575f5ffd5b803567ffffffffffffffff8111156159ee575f5ffd5b8760208284010111156159ff575f5ffd5b60209182019550935085013567ffffffffffffffff811115615a1f575f5ffd5b8501601f81018713615a2f575f5ffd5b803567ffffffffffffffff811115615a45575f5ffd5b8760208260051b8401011115615a59575f5ffd5b949793965060200194505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761276257612762615a67565b8181038181111561276257612762615a67565b8082018082111561276257612762615a67565b5f5f85851115615ac6575f5ffd5b83861115615ad2575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b5f60018201615b1857615b18615a67565b5060010190565b80356020831015612762575f19602084900360031b1b1692915050565b5f82615b5657634e487b7160e01b5f52601260045260245ffd5b500690565b5f8183825b6005811015615b7f578151835260209283019290910190600101615b60565b50505060a08201905092915050565b5f8183825b6009811015615bb2578151835260209283019290910190600101615b93565b5050506101208201905092915050565b5f8183825b602a811015615be6578151835260209283019290910190600101615bc7565b5050506105408201905092915050565b81515f90829060208501835b82811015615c20578151845260209384019390910190600101615c02565b509195945050505050565b5f8183825b6003811015615c4f578151835260209283019290910190600101615c30565b50505060608201905092915050565b5f81615c6c57615c6c615a67565b505f190190565b5f8183825b6008811015615c97578151835260209283019290910190600101615c78565b5050506101008201905092915050565b5f82518060208501845e5f920191825250919050565b5f60208284031215615ccd575f5ffd5b81518015158114610333575f5ffd5b5f8183825b6007811015615d00578151835260209283019290910190600101615ce1565b50505060e08201905092915050565b634e487b7160e01b5f52602160045260245ffdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a264697066735822122050f5a6863ee758dc217cc360891d6605e3b71a0ab57e5c6e334effa261e9b88064736f6c634300081b0033";
5
5
  /**
6
6
  * HonkVerifier link references.
7
7
  */
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * HonkVerifier bytecode.
3
- */ export const HonkVerifierBytecode = "0x610100604052348015610010575f5ffd5b506302000000608052601960a0527f0f82e7fb35f84c28d252eb1be8c27c7b81b7a0b8ba8f0dafb2402b3196fd7e8e60c05260ae60e05260805160a05160c05160e051615d996100de5f395f818161018101526107ae01525f61016001525f8181605b01528181609401528181610101015281816101a2015281816108c7015281816109d401528181610a0001528181610a7b015281816112d401528181611374015281816115c30152818161160f0152818161165d015281816116b40152612cfc01525f5050615d995ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063ea50d0e41461002d575b5f5ffd5b61004061003b36600461599f565b610054565b604051901515815260200160405180910390f35b5f5f61007f7f000000000000000000000000000000000000000000000000000000000000000061028c565b905061008c816020615a7b565b85146100ee577f0000000000000000000000000000000000000000000000000000000000000000856100bf836020615a7b565b6040516359895a5360e01b81526004810193909352602483019190915260448201526064015b60405180910390fd5b5f6100f761033a565b90505f61012588887f000000000000000000000000000000000000000000000000000000000000000061034f565b9050601082604001516101389190615a92565b85146101575760405163fa06659360e01b815260040160405180910390fd5b5f6101c68288887f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006106a6565b90506102168787808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152505085518551606081015160809091015191935091506001610758565b815160a001525f61022783836108bf565b905080610247576040516313f8744360e31b815260040160405180910390fd5b5f6102538486856109c0565b905080610273576040516352ec174560e11b815260040160405180910390fd5b81801561027d5750805b9b9a5050505050505050505050565b5f8061029a60026008615a7b565b905060016102a9600885615a7b565b6102b39190615a7b565b6102bd9082615aa5565b90506102cb60016029615a7b565b6102d59082615aa5565b905060026102e4600185615a92565b6102ee9190615a7b565b6102f89082615aa5565b9050610305600184615a7b565b61030f9082615aa5565b905061031c600280615a7b565b6103269082615aa5565b9050610333601082615aa5565b9392505050565b61034261520d565b61034a611786565b905090565b6103576155ab565b5f805b60108110156103b957610386868387610374602083615aa5565b9261038193929190615ab8565b6120c2565b8351826010811061039957610399615adf565b6020020181815250506020826103af9190615aa5565b915060010161035a565b506103dd8582866103cb604083615aa5565b926103d893929190615ab8565b6120d5565b60208301526103ed604082615aa5565b90506104008582866103cb604083615aa5565b6040808401919091526104139082615aa5565b90506104268582866103cb604083615aa5565b6060830152610436604082615aa5565b90506104498582866103cb604083615aa5565b60c0830152610459604082615aa5565b905061046c8582866103cb604083615aa5565b60e083015261047c604082615aa5565b905061048f8582866103cb604083615aa5565b608083015261049f604082615aa5565b90506104b28582866103cb604083615aa5565b6101008301526104c3604082615aa5565b90506104d68582866103cb604083615aa5565b60a08301526104e6604082615aa5565b90505f5b83811015610564575f5b600881101561055b5761050e878488610374602083615aa5565b84610120015183601c811061052557610525615adf565b6020020151826008811061053b5761053b615adf565b6020020181815250506020836105519190615aa5565b92506001016104f4565b506001016104ea565b505f5b60298110156105b857610581868387610374602083615aa5565b836101400151826029811061059857610598615adf565b6020020181815250506020826105ae9190615aa5565b9150600101610567565b505f5b6105c6600185615a92565b81101561060f576105de8683876103cb604083615aa5565b83610160015182601b81106105f5576105f5615adf565b6020020152610605604083615aa5565b91506001016105bb565b505f5b838110156106625761062b868387610374602083615aa5565b83610180015182601c811061064257610642615adf565b6020020181815250506020826106589190615aa5565b9150600101610612565b506106748582866103cb604083615aa5565b6101a0830152610685604082615aa5565b90506106988582866103cb604083615aa5565b6101c0830152509392505050565b6106ae6156f3565b5f6106bd888888888886612162565b90835290506106cc81896121e1565b602084019190915290506106e081846122d0565b604084019190915290506106f588828561235f565b606084019190915290506107098882612433565b6080840191909152905061071e8882856124be565b60a08401919091529050610733888285612633565b60c0840191909152905061074788826126f8565b5060e0830152509695505050505050565b5f60018082610785866107808961077b6107768a6310000000615aa5565b612735565b61274d565b612768565b90505f6107a38761079e8a61077b6107768b6001615aa5565b612781565b90505f5b6107d260107f0000000000000000000000000000000000000000000000000000000000000000615a92565b81101561083f575f6107fc8c83815181106107ef576107ef615adf565b60200260200101516127a9565b905061080c8661077b8684612768565b955061081c8561077b8584612768565b9450610828848b612768565b9350610834838b612781565b9250506001016107a7565b505f5b60108110156108a6575f8a826010811061085e5761085e615adf565b602002015190506108738661077b8684612768565b95506108838561077b8584612768565b945061088f848b612768565b935061089b838b612781565b925050600101610842565b506108b184846127be565b9a9950505050505050505050565b5f806001815b7f0000000000000000000000000000000000000000000000000000000000000000811015610996575f86610120015182601c811061090557610905615adf565b602002015190505f61091782866127cc565b905080610937576040516313f8744360e31b815260040160405180910390fd5b5f876060015184601c811061094e5761094e615adf565b6020020151905061095f83826127ec565b9550610986886040015185601c811061097a5761097a615adf565b6020020151868361299b565b94505050508060010190506108c5565b505f6109b0866101400151865f01518760200151856129c6565b90508281145b9695505050505050565b5f6109c9615777565b5f6109f88460a001517f0000000000000000000000000000000000000000000000000000000000000000612a3f565b90505f610a267f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b610a31906002615aa5565b67ffffffffffffffff811115610a4957610a49615af3565b604051908082528060200260200182016040528015610a72578160200160208202803683370190505b5090505f610aa17f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b610aac906002615aa5565b67ffffffffffffffff811115610ac457610ac4615af3565b604051908082528060200260200182016040528015610b0857816020015b604080518082019091525f8082526020820152815260200190600190039081610ae25790505b509050610b3a610b358760e00151855f81518110610b2857610b28615adf565b6020026020010151612781565b612b09565b84610120018181525050610b6e610b358760e00151855f81518110610b6157610b61615adf565b6020026020010151612768565b610140850181905261012085015160c0880151610b8f92610780919061274d565b845260a0860151610bbf90610ba390612b09565b61077b86610120015161079e8a60c0015189610140015161274d565b6020850152815160019083905f90610bd957610bd9615adf565b602002602001018181525050876101a00151815f81518110610bfd57610bfd615adf565b6020908102919091010152600160a08501525f60c085015283515f516020615d445f395f51905f5203604085015260208401515f516020615d445f395f51905f5203606085015260015b60248111610cea57610c6185604001518660a0015161274d565b838281518110610c7357610c73615adf565b602002602001018181525050610cbc8560c001516107808b6101400151600185610c9d9190615a92565b60298110610cad57610cad615adf565b60200201518860a0015161274d565b60c086015260a08501516080880151610cd5919061274d565b60a0860152610ce381615b07565b9050610c47565b505f5b6005811015610db8575f610d02601d83615aa5565b90505f610d10602484615aa5565b9050610d41858381518110610d2757610d27615adf565b602002602001015161078089606001518a60a0015161274d565b858381518110610d5357610d53615adf565b602002602001018181525050610d908760c001516107808d61014001518460298110610d8157610d81615adf565b60200201518a60a0015161274d565b60c088015260a087015160808a0151610da9919061274d565b60a08801525050600101610ced565b50866060015181600181518110610dd157610dd1615adf565b6020026020010181905250866080015181600281518110610df457610df4615adf565b60200260200101819052508660a0015181600381518110610e1757610e17615adf565b60200260200101819052508660c0015181600481518110610e3a57610e3a615adf565b60200260200101819052508660e0015181600581518110610e5d57610e5d615adf565b602002602001018190525086610100015181600681518110610e8157610e81615adf565b602002602001018190525086610120015181600781518110610ea557610ea5615adf565b602002602001018190525086610140015181600881518110610ec957610ec9615adf565b602002602001018190525086610160015181600981518110610eed57610eed615adf565b6020026020010181905250866101c0015181600a81518110610f1157610f11615adf565b602002602001018190525086610180015181600b81518110610f3557610f35615adf565b6020026020010181905250866101a0015181600c81518110610f5957610f59615adf565b6020026020010181905250866101e0015181600d81518110610f7d57610f7d615adf565b602002602001018190525086610200015181600e81518110610fa157610fa1615adf565b602002602001018190525086610220015181600f81518110610fc557610fc5615adf565b602002602001018190525086610240015181601081518110610fe957610fe9615adf565b60200260200101819052508661026001518160118151811061100d5761100d615adf565b60200260200101819052508661028001518160128151811061103157611031615adf565b6020026020010181905250866102a001518160138151811061105557611055615adf565b6020026020010181905250866102c001518160148151811061107957611079615adf565b6020026020010181905250866102e001518160158151811061109d5761109d615adf565b6020026020010181905250866103000151816016815181106110c1576110c1615adf565b6020026020010181905250866103200151816017815181106110e5576110e5615adf565b60200260200101819052508661034001518160188151811061110957611109615adf565b60200260200101819052508661036001518160198151811061112d5761112d615adf565b602002602001018190525086610380015181601a8151811061115157611151615adf565b6020026020010181905250866103a0015181601b8151811061117557611175615adf565b6020026020010181905250866103c0015181601c8151811061119957611199615adf565b6020026020010181905250876020015181601d815181106111bc576111bc615adf565b6020026020010181905250876040015181601e815181106111df576111df615adf565b6020026020010181905250876060015181601f8151811061120257611202615adf565b602002602001018190525087608001518160208151811061122557611225615adf565b60200260200101819052508760a001518160218151811061124857611248615adf565b60200260200101819052508761010001518160228151811061126c5761126c615adf565b60200260200101819052508760c001518160238151811061128f5761128f615adf565b60200260200101819052508760e00151816024815181106112b2576112b2615adf565b60200260200101819052505f6112f887606001518660c001518b6101800151877f0000000000000000000000000000000000000000000000000000000000000000612b79565b9050611322815f8151811061130f5761130f615adf565b602002602001015186610120015161274d565b608086018190526101808a01515160c0890151611353929161078091611348919061274d565b88610140015161274d565b608086015260c087015161136690612cd8565b60a08601525f5b61139860017f0000000000000000000000000000000000000000000000000000000000000000615a92565b8110156115a7576113c8610b358960e00151878460016113b89190615aa5565b81518110610b2857610b28615adf565b61012087015260e08801516113f790610b3590876113e7856001615aa5565b81518110610b6157610b61615adf565b61014087015260a0860151610120870151611412919061274d565b61016087015260a086015160c089015161143a9161142f9161274d565b87610140015161274d565b610180870181905261146f905f516020615d445f395f51905f52036101608801515f516020615d445f395f51905f5203612768565b848261147d60246001615aa5565b6114879190615aa5565b8151811061149757611497615adf565b6020026020010181815250505f6114da8761018001518c61018001518460016114c09190615aa5565b601c81106114d0576114d0615adf565b602002015161274d565b905061151481610780896101600151868660016114f79190615aa5565b8151811061150757611507615adf565b602002602001015161274d565b9050611524876080015182612768565b608088015260a087015160c08a015161154a916115409161274d565b8a60c0015161274d565b60a08801526101608b015182601b811061156657611566615adf565b6020020151848361157960246001615aa5565b6115839190615aa5565b8151811061159357611593615adf565b60209081029190910101525060010161136d565b50604080518082019091526001815260026020820152826115e97f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b815181106115f9576115f9615adf565b60209081029190910101526080850151836116357f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b8151811061164557611645615adf565b60209081029190910101526101c089015180836116837f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b61168e906001615aa5565b8151811061169e5761169e615adf565b602090810291909101015260e0880151846116da7f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b6116e5906001615aa5565b815181106116f5576116f5615adf565b6020026020010181815250505f61170c8486612ce3565b90505f61171883612dfe565b90505f6117298d5f01518484612e4f565b90505f5f6117398f5f0151612ec5565b9150915061174682612f91565b61174f81612f91565b61175a858385613034565b9450611767848285613034565b93506117738585613070565b9f9e505050505050505050505050505050565b61178e61520d565b50604080516103e08101825263020000008152601960208083019190915260ae82840152825180840184527f07da0c2d9d4cc370e2c1ce8f3c0a23cbd2d48dabc81799d53b98b09413c2fae481527f28251a50db056b19f6a936de980e63d0d8b623154784e413d17a2b1cc631ae7c818301526060830152825180840184527f14fa71360dbf9284bd9c6b0e13af50e5715cc5626085c28b8b689e09d9d390d481527f0d303241469944a9df00fb1d94625d1a8de48e586634bb3825983c8912f719c3818301526080830152825180840184527f03c0f6e5e542584e54ef07387e82d599f437379e5a61e91fdbe2a836a11de94981527f01620dd24104df8fd3b89bfeaf107323738943992ee50206ea15c8eacf3381668183015260a0830152825180840184527f2832a13ef2f409639f5180c79bd5ad8a074eb16f723ff3a765e060fb32aaac4e81527f07bccdede12c0af3881db712d1ed01520b9badbe6662347ae248518f7966b5028183015260c0830152825180840184527f2c5908c26c9ec774a17c2834470306d47853e4474c17ee430e91154397cd585e81527f1bcdceed3e7d51afee18fb602a280571525c95502c7f379d38f579e62f8347db8183015260e0830152825180840184527f2a1023e8a03af1244dd0e32f809230f6e2f8cb51499e2598bd7443c00b77bd0e81527f129e641bef03fb0050f9ad39ec4cd027ea70bd88d34328598867eff6be582f5481830152610100830152825180840184527f01a8abe0d74344165494348196db5fa7da3a745f398fd1374cc2cb15bcc58ff481527f0f62b9babe865f3d0c422867d8b7f7fa5c13d85721a659f3b9ff8fc8cc6fc99281830152610120830152825180840184527f27c11e73f7854fc9b16c88b367bbd6d1c73ae10158fd1245261199fe58c4c00581527f214d295aae6759244b1600c6811d6e5ff2495f21069164a33939ceccff123db181830152610140830152825180840184527f22e48713fb0fbd0882bc3caff98e1d34b104a011e49f2f6fdbd9397572e172a381527f1090f36d6fb45a630349efa689298e2f1caf4dfbd5913a22794fb2665e4d515481830152610160830152825180840184527f2eb98a17d9423734ce63cd8afdde8dc668faab50e0ff8e1c46e02404515ec28281527f1122c8bdb7e8be9dfa6eb802ac123b14154bd3482572ff47dc64cda828f83d6281830152610180830152825180840184527f1fa2b9ee9184c4f60472bd1361b287de01506019abadb03c605507efc211311281527f05183ed9a0b5629d2480c41fda077da616b3c462014bc61dc2158889cc91761c818301526101a0830152825180840184527f2a1a1a1f913f908b24614d2f75b990f99c4e94865a473fd84be7e75703375b4481527f017245e8878e90a2163d7cd68530544c1cc8175b563c6393a30866d950c7dbfb818301526101c0830152825180840184527f08eb47ca4626c7e762b600c3021c5f927507e07b5b35d243cda9ee76bd5bae5481527f2e69d18caf3c6f1635d800ba626480145422e7449c94c2b49c9030adb96195fb818301526101e0830152825180840184527f1981a3197d15471814edbb26532e4693e278066161ee33a247f8144c5bcb031781527f2580ae0739edec0ef280e5adcae34af0cabc4a275d98c089e4d98f5cced07ff281830152610200830152825180840184527f20c5d96cf676752efc8bbd94a1534afb9f90c2233a887e9a22cb9fe184b9f32781527f0b8aa09c6c15e8506657edd0dd82f1f3584847121f73af4942dfffe3e36d005c81830152610220830152825180840184527f2b03a09ba873f6201bcdbcff84432cfab5881b819ec9eeae36666c3b5c347c7381527f2999ad4e7b10eeb75a3742cd79dfe5b8deece30102be35d8266a660ea2f6323981830152610240830152825180840184527f281236085fa8d7ca0a0ee6a9c598876489c35db99e236ffe48614cff66a6da4081527f022608b5300816f7ac0a55178bca296f36485a9b391701caad524aaf51370eca81830152610260830152825180840184527f156f0e8b03994165816bdf76fa87b4702d42f86bda8c54cc1d713b774934047e81527f1276884f3760c1456860e806f2024f032756b2ff7c1c40f818909ffb8801d38381830152610280830152825180840184527f137f455a99332932852b53d71e2a60c11ae6d660c384237080089523fdb2b46081527f132e7c950a6a18598e9cfdc021cdb549d5267d847567b237fb3b28e1017cc170818301526102a0830152825180840184527f18cbecf570e47cc703d12df942400f5166dfac609663fb6ce45266716471714681527f2aa82d0dc46b410402f5f09111c8d80304b9ed336db552cdca553deae10d40d1818301526102c0830152825180840184527f2aa3d6dd4a947d9c126929a01fe5025eff47f547521e55e992ff37d8a0fb4a4881527f05f2eddafd21fae3305a8ad780921ad7cf8b096b3c1938b92da50b55c10ae724818301526102e0830152825180840184527f2207a92d9fdc61cdebae70a827a26b149a86f0428b68f36ca3a1089216708c0781527f21aa86ef78399e428e0d9df79a6f252bd80cc887a1406bc04c9c3bf293da36f381830152610300830152825180840184527f2194d92617bbb3ba3d9e53f4f13c5c7c6fc5ae0c56f06e0a35747f24625e576381527f11ca88979a66ada092bb26e2b64b8602eb63f6e2fc21862f6fefead2978de7e081830152610320830152825180840184527f1d346dd159688f85b77717f8197777c6ced8daf349335d74908736241f5f332881527f10e952d77959f4aa6fe9cb7222d9901d06ddfeea51240c79980d4daac814444381830152610340830152825180840184527f109830b81fd8b5e0a3327bf961ea6746fcc9155039d285eaa76f4b0f8839e44781527f28de29af66333e8ea2ee2d23ff9df4297471377a71b5240987690610bad14c7881830152610360830152825180840184527f062b31b3719d79c253d59707efcc41556e43d9f4f122ba79d3484e023fb4da7d81527f283eb52c07506637e09fb73d7875ada840d8e4c75295a90dc312b4d2571c52c38183015261038083015282518084018452600181526002818301526103a083015282518084019093527f19a9fca680345b2fc1e36360e22a85f321afc9590f35ef20afffe87256f632c083527f29242cf85e587178544d946d6c7fe51ab1097683212a781f062501de82223746908301526103c081019190915290565b5f6103336120d08385615b1f565b6127a9565b604080518082019091525f808252602082015260408051808201909152805f516020615d245f395f51905f5261210e60205f8789615ab8565b61211791615b1f565b6121219190615b3c565b81526020908101905f516020615d245f395f51905f5290612146906040908789615ab8565b61214f91615b1f565b6121599190615b3c565b90529392505050565b6121956040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f6121a38888888888613264565b6040860191909152602085019190915290835292506121c28389613562565b6080850191909152606084019190915291989197509095505050505050565b6121e96157e7565b5f6121f2615806565b8481526101008401805151602080840191909152905181015160408084019190915260a086018051516060850152518201516080840152516122559161223a91849101615b5b565b604051602081830303815290604052805190602001206127a9565b91505f612261836135e9565b50808552905060015b6122766001601c615a92565b8110156122c6576122a78561228c600184615a92565b601b811061229c5761229c615adf565b60200201518361274d565b8582601b81106122b9576122b9615adf565b602002015260010161226a565b5050509250929050565b6122d8615824565b5f6122ef8460405160200161223a91815260200190565b93506122fa846135e9565b50825260015b838110156123575761233883612317600184615a92565b601c811061232757612327615adf565b6020020151846114c0600185615a92565b8382601c811061234a5761234a615adf565b6020020152600101612300565b509093915050565b612367615824565b5f805b838110156124295761237a615843565b8581525f5b60088110156123e35787610120015183601c811061239f5761239f615adf565b602002015181600881106123b5576123b5615adf565b6020020151826123c6836001615aa5565b600981106123d6576123d6615adf565b602002015260010161237f565b506123f88160405160200161223a9190615b8e565b95505f612404876135e9565b8685601c811061241657612416615adf565b602002019190915250505060010161236a565b5090949293505050565b5f5f61243d615862565b8381525f5b602981101561249057856101400151816029811061246257612462615adf565b602002015182612473836001615aa5565b602a811061248357612483615adf565b6020020152600101612442565b506124a58160405160200161223a9190615bc2565b91505f6124b1836135e9565b5096929550919350505050565b5f80806124cc600185615a92565b6124d7906002615a7b565b6124e2906001615aa5565b67ffffffffffffffff8111156124fa576124fa615af3565b604051908082528060200260200182016040528015612523578160200160208202803683370190505b50905084815f8151811061253957612539615adf565b60209081029190910101525f5b612551600186615a92565b8110156126045786610160015181601b811061256f5761256f615adf565b60200201515182612581836002615a7b565b61258c906001615aa5565b8151811061259c5761259c615adf565b60200260200101818152505086610160015181601b81106125bf576125bf615adf565b602002015160200151828260026125d69190615a7b565b6125e1906002615aa5565b815181106125f1576125f1615adf565b6020908102919091010152600101612546565b506126198160405160200161223a9190615bf6565b91505f612625836135e9565b509792965091945050505050565b5f8080612641846001615aa5565b67ffffffffffffffff81111561265957612659615af3565b604051908082528060200260200182016040528015612682578160200160208202803683370190505b50905084815f8151811061269857612698615adf565b60209081029190910101525f5b848110156126045786610180015181601c81106126c4576126c4615adf565b6020020151826126d5836001615aa5565b815181106126e5576126e5615adf565b60209081029190910101526001016126a5565b5f5f612702615881565b8381526101a085018051516020808401919091529051810151604080840191909152516124a59161223a91849101615c2b565b5f5f516020615d445f395f51905f52825b0692915050565b5f5f516020615d445f395f51905f5282840990505b92915050565b5f5f516020615d445f395f51905f528284089392505050565b5f5f516020615d445f395f51905f52825f516020615d445f395f51905f520384089392505050565b5f5f516020615d445f395f51905f5282612746565b5f6103338361077b84612b09565b815160208301515f9182916127e19190612768565b929092149392505050565b60408051610100810182527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffec5181526102d060208201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff1191810191909152609060608201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff71608082015260f060a08201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593effffd3160c08201526113b060e08201525f906001825b60088110156128d3576128c98261077b8784612781565b91506001016128b2565b506128dc61589f565b5f5b600881101561293d575f8482600881106128fa576128fa615adf565b6020020151905061290f8161077b8985612781565b905061291a81612b09565b90508083836008811061292f5761292f615adf565b6020020152506001016128de565b505f5b6008811015612990575f87826008811061295c5761295c615adf565b60200201519050612979818484600881106114d0576114d0615adf565b90506129858682612768565b955050600101612940565b506109b6848361274d565b5f5f6129b160016107808561077b896001612781565b90506129bd848261274d565b95945050505050565b5f6129cf615824565b6129da868285613622565b6129e6868683866137ce565b6129f2868683866139ba565b6129fd868285613be5565b612a08868285613dd9565b612a1486868386614122565b612a1f8682856145ce565b612a2a8682856149e0565b612a35868285614da1565b6109b681856150a1565b60605f8267ffffffffffffffff811115612a5b57612a5b615af3565b604051908082528060200260200182016040528015612a84578160200160208202803683370190505b50905083815f81518110612a9a57612a9a615adf565b602090810291909101015260015b83811015612b0157612adc82612abf600184615a92565b81518110612acf57612acf615adf565b6020026020010151612cd8565b828281518110612aee57612aee615adf565b6020908102919091010152600101612aa8565b509392505050565b5f5f8290505f604051602081526020808201526020604082015282606082015260025f516020615d445f395f51905f520360808201525f516020615d445f395f51905f5260a082015260205f60c08360055afa80612b65575f5ffd5b505f51608091909101604052949350505050565b60605f8267ffffffffffffffff811115612b9557612b95615af3565b604051908082528060200260200182016040528015612bbe578160200160208202803683370190505b509050825b8015612ccd575f85612bd6600184615a92565b81518110612be657612be6615adf565b602002602001015190505f89600184612bff9190615a92565b601c8110612c0f57612c0f615adf565b602002015190505f612c6a612c2e612c27858d61274d565b600261274d565b61079e8b612c3d600189615a92565b601c8110612c4d57612c4d615adf565b602002015161077b612c648861077b60018a612781565b87612781565b9050612c8b8161077b610b35612c858761077b600189612781565b86612768565b99508990508085612c9d600187615a92565b81518110612cad57612cad615adf565b60200260200101818152505050505080612cc690615c5e565b9050612bc3565b509695505050505050565b5f612762828361274d565b604080518082019091525f80825260208201525f612d227f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b612d2d906002615aa5565b90505f5b81811015612d6357612d5b858281518110612d4e57612d4e615adf565b6020026020010151612f91565b600101612d31565b50604051600190815b60018401811015612dc85760208102870160208202870181515160408501528151602001516060850152805160808501525050604080830160606040850160075afa8316925060408260808460065afa90921691600101612d6c565b5080518452602081015160208501525080612df6576040516352ec174560e11b815260040160405180910390fd5b505092915050565b604080518082019091525f80825260208201525f516020615d245f395f51905f5282602001515f516020615d245f395f51905f52612e3c9190615a92565b612e469190615b3c565b60208301525090565b5f5f5f612e5b86612ec5565b91509150612e6761589f565b82518152602080840151818301528251604080840191909152838201516060840152875160808401528782015160a0840152865160c08401528682015160e084015251612eba9161223a91849101615c73565b979650505050505050565b6040805180820182525f80825260208083018281528451808601865283815280830193845286519287015195870151606088015160cc90811b608892831b6044998a1b90961795909517949094178652608088015160a089015160c08a015160e08b0151871b90841b918a1b90921717179092526101008701516101208801516101408901516101608a0151861b90851b91891b909217171781526101808701516101a08801516101c08901516101e09099015190941b9790921b9290951b1717939093179092529091565b805160208201515f5f516020615d245f395f51905f528380095f516020615d245f395f51905f5260035f516020615d245f395f51905f52838709085f516020615d245f395f51905f52848509149150508061302e5760405162461bcd60e51b815260206004820152601960248201527f706f696e74206973206e6f74206f6e207468652063757276650000000000000060448201526064016100e5565b50505050565b604080518082019091525f8082526020820152604080518082019091525f808252602082015261306483866150fa565b90506129bd8185615166565b81516020808401518351848301516040805194850195909552938301919091527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c260608301527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed60808301527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b60a08301527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa60c083015260e08201526101008101919091527f260e01b251f6f1c7e7ff4e580791dee8ea51d87a358e038b4efe30fac09383c16101208201527f0118c4d5b837bcc2bc89b5b398b5974e9f5944073b32078b7e231fec938883b06101408201527f04fc6369f7110fe3d25156c1bb9a72859cf2a04641f99ba4ee413c80da6a5fe46101608201527f22febda3c0c0632a56475b4214e5615e11e6dd3f96e6cea2854a87d4dacc5e556101808201525f9081906101a00160405160208183030381529060405290505f5f60086001600160a01b0316836040516132069190615ca7565b5f60405180830381855afa9150503d805f811461323e576040519150601f19603f3d011682016040523d82523d5f602084013e613243565b606091505b50915091508180156109b65750808060200190518101906109b69190615cbd565b5f80808080613274866001615aa5565b61327f906006615aa5565b67ffffffffffffffff81111561329757613297615af3565b6040519080825280602002602001820160405280156132c0578160200160208202803683370190505b509050865f1b815f815181106132d8576132d8615adf565b60209081029190910101525f5b6132f0601088615a92565b8110156133415789898281811061330957613309615adf565b905060200201358282600161331e9190615aa5565b8151811061332e5761332e615adf565b60209081029190910101526001016132e5565b505f5b60108110156133b2578a5161336c90826010811061336457613364615adf565b602002015190565b8282601061337b8b6001615aa5565b6133859190615a92565b61338f9190615aa5565b8151811061339f5761339f615adf565b6020908102919091010152600101613344565b5060208a015151816133c5886001615aa5565b815181106133d5576133d5615adf565b6020908102919091018101919091528a8101510151816133f6886001615aa5565b613401906001615aa5565b8151811061341157613411615adf565b602090810291909101015260408a0151518161342e886001615aa5565b613439906002615aa5565b8151811061344957613449615adf565b60209081029190910181019190915260408b015101518161346b886001615aa5565b613476906003615aa5565b8151811061348657613486615adf565b602090810291909101015260608a015151816134a3886001615aa5565b6134ae906004615aa5565b815181106134be576134be615adf565b60209081029190910181019190915260608b01510151816134e0886001615aa5565b6134eb906005615aa5565b815181106134fb576134fb615adf565b60200260200101818152505061351b8160405160200161223a9190615bf6565b9150613526826135e9565b6040805160208101869052929750909550613541910161223a565b91505f61354d836135e9565b50959b949a5094985090965091945050505050565b5f5f5f61356d6158be565b85815260c0858101805151602080850191909152905181015160408085019190915260e08801805151606086015251820151608080860191909152880180515160a0860152518201519284019290925290516135cf9161223a91849101615cdc565b91506135da826135e9565b90979096509194509092505050565b5f80826fffffffffffffffffffffffffffffffff8116608082901c61360d826127a9565b9450613618816127a9565b9350505050915091565b5f61362e8460076151dd565b90507f183227397098d014dc2822db40c0ac2e9419f4243cdcb848a1f0fac9f80000005f61368f613689613663856003612781565b61077b61367e6136738b5f6151dd565b61077b8c601d6151dd565b61077b8b601c6151dd565b8361274d565b90506137106137056136ec6136d36136ba856107806136af8d60026151dd565b61077b8e601c6151dd565b6107806136c88c60036151dd565b61077b8d601d6151dd565b6107806136e18b60046151dd565b61077b8c601e6151dd565b6107806136fa8a60056151dd565b61077b8b601f6151dd565b6107808860016151dd565b905061372f81610780613724866001612781565b61077b8a60276151dd565b905061373b818461274d565b9050613747818561274d565b8552505f905061378161377761376c61376188601c6151dd565b61078089601f6151dd565b61079e8860246151dd565b610780875f6151dd565b90506137928161077b846002612781565b90506137a38161077b846001612781565b90506137af818361274d565b90506137bb818461274d565b9050808460015b60200201525050505050565b5f5f5f6138046137fa6137e289601c6151dd565b6107806137f08b60126151dd565b8a6060015161274d565b8760800151612768565b905061383d8161077b61383361381b8b601d6151dd565b6107806138298d60136151dd565b8c6060015161274d565b8960800151612768565b90506138628161077b6138336138548b601e6151dd565b6107806138298d60146151dd565b90506138878161077b6138336138798b601f6151dd565b6107806138298d60156151dd565b92505f90506138ab6137fa61389d89601c6151dd565b6107806137f08b600e6151dd565b90506138d08161077b6138336138c28b601d6151dd565b6107806138298d600f6151dd565b90506138f58161077b6138336138e78b601e6151dd565b6107806138298d60106151dd565b905061391a8161077b61383361390c8b601f6151dd565b6107806138298d60116151dd565b91505f905061394161393b6139308960206151dd565b6107808a601a6151dd565b8461274d565b90506139768161079e6139706139588b60286151dd565b6107806139668d601b6151dd565b8c60a0015161274d565b8561274d565b9050613982818561274d565b6040860152505f6139a561397061399a89601b6151dd565b61077b8a60286151dd565b9050808560035b602002015250505050505050565b5f5f613a18613a006139e86139d36138338a60166151dd565b6107806139e18b60176151dd565b8a5161274d565b6107806139f68a60186151dd565b896020015161274d565b610780613a0e8960196151dd565b886040015161274d565b91505f613a4f613a36613a2c89601c6151dd565b8860800151612768565b610780613a448a60036151dd565b61077b8b60246151dd565b90505f613a78613a6089601d6151dd565b610780613a6d8b5f6151dd565b61077b8c60256151dd565b90505f613aa2613a898a601e6151dd565b610780613a978c60016151dd565b61077b8d60266151dd565b9050613ae1613ac9613abb85610780868d5f015161274d565b610780848c6020015161274d565b610780613ad78c60046151dd565b8b6040015161274d565b93505050505f613af561393b8860216151dd565b90505f613b0661393b8960216151dd565b90505f613b3e613b25613b1a8b60236151dd565b6107808c60066151dd565b61079e613b338c60236151dd565b61077b8d60066151dd565b90505f613b62613b5c613b51878961274d565b61077b8d60216151dd565b83612781565b9050613b6e818861274d565b90505f613b96613b88613b828d60066151dd565b8761274d565b61079e613b828e60226151dd565b90505f613ba48c60236151dd565b90505f613bb4613b5c838461274d565b60808c0185905260a08c018490529050613bce818b61274d565b8b6006602002015250505050505050505050505050565b5f613bf15f6001612781565b90505f613bff5f6002612781565b90505f613c0d5f6003612781565b90505f613c29613c1e88601d6151dd565b61079e89601c6151dd565b90505f613c45613c3a89601e6151dd565b61079e8a601d6151dd565b90505f613c61613c568a601f6151dd565b61079e8b601e6151dd565b90505f613c7d613c728b60246151dd565b61079e8c601f6151dd565b905083613c8e8161077b818b612768565b9050613c9e8161077b878a612768565b9050613cae8161077b8789612768565b9050613cbf8161077b8d60086151dd565b9050613ccb818a61274d565b60e08b01525082613ce08161077b818b612768565b9050613cf08161077b868a612768565b9050613d008161077b8689612768565b9050613d118161077b8d60086151dd565b9050613d1d818a61274d565b6101008b01525081613d338161077b818b612768565b9050613d438161077b858a612768565b9050613d538161077b8589612768565b9050613d648161077b8d60086151dd565b9050613d70818a61274d565b6101208b01525080613d868161077b818b612768565b9050613d968161077b848a612768565b9050613da68161077b8489612768565b9050613db78161077b8d60086151dd565b9050613dc3818a61274d565b610140909a019990995250505050505050505050565b613e126040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b613e1d84601d6151dd565b8152613e2a84601e6151dd565b6020820152613e3a8460246151dd565b6040820152613e4a8460276151dd565b6060820152613e5a8460266151dd565b6080820152613e6a8460256151dd565b60a08201525f613e7b8560026151dd565b90505f613e88865f6151dd565b90505f613e9c8460400151855f0151612781565b90505f613eb18560200151866020015161274d565b606086015190915086905f90613ec7908061274d565b90505f613ee5613edf89602001518a6060015161274d565b8861274d565b90505f613f04613efd8a60a001518b60400151612768565b8a51612768565b9050613f13613b82828861274d565b9050613f3a613f34613f2e613f288487612781565b88612781565b84612768565b83612768565b9050613f62613f57613f4c838761274d565b61077b8f60096151dd565b61077b60018a612781565b6101608c015250505050602085015160808601515f91613f8191612768565b90505f613f9f613f9588606001518861274d565b8860200151612781565b90505f613fc3613faf848761274d565b6107806139708b60a001518c5f0151612781565b9050613feb613fe0613fd5838c61274d565b61077b8e60096151dd565b61077b600189612781565b6101808b0152505f915061400c9050614005836011612768565b875161274d565b90505f6140198384612768565b90506140258182612768565b90505f61403383600961274d565b905061405c61405661393b61404f8b60a001518c5f0151612768565b8b51612768565b82612781565b60c089018190525f9061407790613edf90613f4c908d61274d565b905061408a8b600b602002015182612768565b6101608c0152505086515f92506140b19150614005906140aa9080612768565b8851612768565b90505f6140f16140cc8361077b8a5f01518b60a00151612781565b602089015161079e906140df9080612768565b61077b8b602001518c60800151612768565b905061410e89600c6020020151610780613edf613f4c858d61274d565b89600c602002015250505050505050505050565b61418c604051806101e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6141a461419a86601e6151dd565b856040015161274d565b8082526141c3906107806141b988601d6151dd565b876020015161274d565b8082526141d89061078061400588601c6151dd565b8082526141ea906107808760016151dd565b808252602082018190526142039061079e87601f6151dd565b815261421e6142138660246151dd565b61079e87601c6151dd565b608082015261423c6142318660276151dd565b61079e87601f6151dd565b606082015260808101516142559061077b816001612781565b6101c082015260808101516142959061428b906142849061077b60015f516020615d445f395f51905f52615a92565b6001612768565b826060015161274d565b60a082018190526142cb906142bd9061077b6142b28960026151dd565b61077b8a60036151dd565b61077b61397088600a6151dd565b83600e60200201526101c08101516142ef906142bd9061077b6142b28960026151dd565b6101e084015280516143149061077b6143098860026151dd565b61077b8960036151dd565b6101208201525f61433361432987601f6151dd565b8360200151612781565b90506143448161077b836001612781565b60e08301526143616143578760266151dd565b866040015161274d565b604083018190526143849061078061437a8960256151dd565b886020015161274d565b604083018190526143a49061078061439d8960246151dd565b885161274d565b60408301526143c16143b78760276151dd565b8360400151612781565b60408301525f6143e06143d58860266151dd565b61079e89601e6151dd565b905061443261440d613689614284866080015160015f516020615d445f395f51905f5261077b9190615a92565b61077b614284866040015160015f516020615d445f395f51905f5261077b9190615a92565b60c084015260408301516144549061444a908061274d565b8460400151612781565b61010084015260c0830151614480906144729061077b8a60046151dd565b61077b613b828a600a6151dd565b6102008601526101c083015161449f906144729061077b8a60046151dd565b6102208601526101008301516144be906144729061077b8a60046151dd565b61024086015260e08301516144d89061077b8960046151dd565b6101408401526144f76144ec8860256151dd565b61079e89601d6151dd565b6101608401526080830151614535906143d59061452a906142849061077b60015f516020615d445f395f51905f52615a92565b85610160015161274d565b61018084018190526101208401516101a0850181905261456c916107809061077b6145618c60056151dd565b61077b8d60026151dd565b6101a08401819052835161458c91906107809061077b6145618c5f6151dd565b6101a084018190526101408401516145a49190612768565b6101a084018190526145be9061077b613b828a600a6151dd565b6101a0840181905285600d6139ac565b6146076040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61463c61462361461886601c6151dd565b61077b8760256151dd565b6107806146318760246151dd565b61077b88601d6151dd565b815261468161467661465d61465287601c6151dd565b61077b88601f6151dd565b61078061466b88601d6151dd565b61077b89601e6151dd565b61079e8660266151dd565b6040820181905261469690600160441b61274d565b604082018190526146ac9061079e8660276151dd565b6040820181905281516146bf9190612768565b604082018190526146d59061077b8660056151dd565b604082015280516146ea90600160441b61274d565b80825261470a906107806146ff8760246151dd565b61077b8860256151dd565b808252602082018190526147319061079e61472687601e6151dd565b61078088601f6151dd565b602082018190526147479061077b8660046151dd565b60208201528051606082018190526147649061078086601f6151dd565b606082018190526147889061079e61477d8760266151dd565b6107808860276151dd565b6060820181905261479d9061077b865f6151dd565b8160600181815250505f6147c66147bc83602001518460400151612768565b8360600151612768565b90506147d78161077b8760036151dd565b90506147ef6147e78660256151dd565b61400061274d565b60808301819052614805906107808760246151dd565b608083018190526148189061400061274d565b6080830181905261482e9061078087601e6151dd565b608083018190526148419061400061274d565b608083018190526148579061078087601d6151dd565b6080830181905261486a9061400061274d565b608083018190526148809061078087601c6151dd565b608083018190526148969061079e87601f6151dd565b608083018190526148ac9061077b8760056151dd565b60808301526148bf6147e78660266151dd565b60a083018190526148d5906107808760256151dd565b60a083018190526148e89061400061274d565b60a083018190526148fe906107808760246151dd565b60a083018190526149119061400061274d565b60a083018190526149279061078087601f6151dd565b60a0830181905261493a9061400061274d565b60a083018190526149509061078087601e6151dd565b60a083018190526149669061079e8760276151dd565b60a0830181905261497b9061077b875f6151dd565b60a0830181905260808301515f916149939190612768565b90506149a48161077b8860046151dd565b90506149b08282612768565b60c084018190526149c99061077b613b8289600b6151dd565b60c084018190528560136020020152505050505050565b614a566040518061022001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b614a6f614a6485601c6151dd565b6107808660026151dd565b8152614a8a614a7f85601d6151dd565b6107808660036151dd565b6020820152614aa8614a9d85601e6151dd565b6107808660046151dd565b6040820152614ac6614abb85601f6151dd565b6107808660056151dd565b60608201528051614af890614af190614aea90614ae3908061274d565b845161274d565b835161274d565b825161274d565b60808201526020810151614b3690614b2c90614b2290614b18908061274d565b846020015161274d565b836020015161274d565b826020015161274d565b60a08201526040810151614b7490614b6a90614b6090614b56908061274d565b846040015161274d565b836040015161274d565b826040015161274d565b60c08201526060810151614ba89061428b90614b9e90614b94908061274d565b846060015161274d565b836060015161274d565b60e0820152608081015160a0820151614bc19190612768565b61010082015260c081015160e0820151614bdb9190612768565b61012082015260a0810151614bff90614bf49080612768565b826101200151612768565b61014082015260e0810151614c2390614c189080612768565b826101000151612768565b610160820152610120810151614c399080612768565b6101e08201819052614c5a90614c4f9080612768565b826101600151612768565b6101e0820152610100810151614c709080612768565b6101a08201819052614c9190614c869080612768565b826101400151612768565b6101a08201819052610160820151614ca891612768565b6101808201526101408101516101e0820151614cc49190612768565b6101c0820152614cd861368985600c6151dd565b6102008201819052610280840151610180830151614d03926107809161077b9061079e8a60246151dd565b8360146020020152614d33836015602002015161078083610200015161077b856101a0015161079e8a60256151dd565b8360156020020152614d63836016602002015161078083610200015161077b856101c0015161079e8a60266151dd565b8360166020020152614d93836017602002015161078083610200015161077b856101e0015161079e8a60276151dd565b836017602002015250505050565b614df36040518061016001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f6040518060800160405280614e287f10dc6e9c006ea38b04b1e03b4bd9490c0d03f98929ca1d7fb56821fd19d3b6e7612735565b8152602001614e567f0c28145b6a44df3e0149b3d0a30b3bb599df9756d4dd9b84a86b38cfb45a740b612735565b8152602001614e837e544b8338791518b2c7645a50392798b21f75bb60e3596170067d00141cac15612735565b8152602001614eb17f222c01175718386f2e2e82eb122789e352e105a3b8fa852613bc534433ee428b612735565b90529050614ece614ec386601c6151dd565b6107808760026151dd565b6101208301819052614f0d90614f0290614ef790614eec908061274d565b85610120015161274d565b84610120015161274d565b83610120015161274d565b8252614f1a85601d6151dd565b6020830152614f2a85601e6151dd565b6040830152614f3a85601f6151dd565b606083015281516020830151614f62916147bc91614f589190612768565b8460400151612768565b6080830152614f7561393b86600d6151dd565b6101408301528151614f9690614f8c90835f6114d0565b8360800151612768565b60a0830152614fc2846018602002015161078084610140015161077b8660a0015161079e8b60246151dd565b6103008501526020820151614fdd90614f8c908360016114d0565b60c0830152615009846019602002015161078084610140015161077b8660c0015161079e8b60256151dd565b610320850152604082015161502490614f8c908360026114d0565b60e083015261505084601a602002015161078084610140015161077b8660e0015161079e8b60266151dd565b610340850152606082015161506b90614f8c908360036114d0565b61010083015261509984601b602002015161078084610140015161077b86610100015161079e8b60276151dd565b84601b6137c2565b815160015b601c8110156150f3576150e9826107808684601c81106150c8576150c8615adf565b6020020151866150d9600187615a92565b601b81106114d0576114d0615adf565b91506001016150a6565b5092915050565b604080518082019091525f8082526020820152604080518082019091525f8082526020820152604051835181526020840151602082015284604082015260408160608360075afa8061514a575f5ffd5b5080518252602080820151908301526060016040529392505050565b604080518082019091525f8082526020820152604080518082019091525f80825260208201526040518451815260208501516020820152835160408201526020840151606082015260408160808360065afa806151c1575f5ffd5b5080518252602080820151908301526080016040529392505050565b5f828260288111156151f1576151f1615d0f565b6029811061520157615201615adf565b60200201519392505050565b604051806103e001604052805f81526020015f81526020015f815260200161524660405180604001604052805f81526020015f81525090565b815260200161526660405180604001604052805f81526020015f81525090565b815260200161528660405180604001604052805f81526020015f81525090565b81526020016152a660405180604001604052805f81526020015f81525090565b81526020016152c660405180604001604052805f81526020015f81525090565b81526020016152e660405180604001604052805f81526020015f81525090565b815260200161530660405180604001604052805f81526020015f81525090565b815260200161532660405180604001604052805f81526020015f81525090565b815260200161534660405180604001604052805f81526020015f81525090565b815260200161536660405180604001604052805f81526020015f81525090565b815260200161538660405180604001604052805f81526020015f81525090565b81526020016153a660405180604001604052805f81526020015f81525090565b81526020016153c660405180604001604052805f81526020015f81525090565b81526020016153e660405180604001604052805f81526020015f81525090565b815260200161540660405180604001604052805f81526020015f81525090565b815260200161542660405180604001604052805f81526020015f81525090565b815260200161544660405180604001604052805f81526020015f81525090565b815260200161546660405180604001604052805f81526020015f81525090565b815260200161548660405180604001604052805f81526020015f81525090565b81526020016154a660405180604001604052805f81526020015f81525090565b81526020016154c660405180604001604052805f81526020015f81525090565b81526020016154e660405180604001604052805f81526020015f81525090565b815260200161550660405180604001604052805f81526020015f81525090565b815260200161552660405180604001604052805f81526020015f81525090565b815260200161554660405180604001604052805f81526020015f81525090565b815260200161556660405180604001604052805f81526020015f81525090565b815260200161558660405180604001604052805f81526020015f81525090565b81526020016155a660405180604001604052805f81526020015f81525090565b905290565b604051806101e001604052806155bf6158dc565b81526020016155df60405180604001604052805f81526020015f81525090565b81526020016155ff60405180604001604052805f81526020015f81525090565b815260200161561f60405180604001604052805f81526020015f81525090565b815260200161563f60405180604001604052805f81526020015f81525090565b815260200161565f60405180604001604052805f81526020015f81525090565b815260200161567f60405180604001604052805f81526020015f81525090565b815260200161569f60405180604001604052805f81526020015f81525090565b81526020016156bf60405180604001604052805f81526020015f81525090565b81526020016156cc6158fb565b81526020016156d9615929565b81526020016156e6615948565b8152602001615566615824565b6040518061010001604052806157326040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b815260200161573f6157e7565b815260200161574c615824565b8152602001615759615824565b81526020015f81526020015f81526020015f81526020015f81525090565b604051806101c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020016157b5615981565b81526020016157c2615981565b81526020015f81526020015f81526020015f81526020015f8152602001606081525090565b604051806103600160405280601b906020820280368337509192915050565b6040518060a001604052806005906020820280368337509192915050565b604051806103800160405280601c906020820280368337509192915050565b6040518061012001604052806009906020820280368337509192915050565b604051806105400160405280602a906020820280368337509192915050565b60405180606001604052806003906020820280368337509192915050565b6040518061010001604052806008906020820280368337509192915050565b6040518060e001604052806007906020820280368337509192915050565b6040518061020001604052806010906020820280368337509192915050565b604051806103800160405280601c905b61591361589f565b81526020019060019003908161590b5790505090565b6040518061052001604052806029906020820280368337509192915050565b604051806103600160405280601b905b604080518082019091525f80825260208201528152602001906001900390816159585790505090565b60405180608001604052806004906020820280368337509192915050565b5f5f5f5f604085870312156159b2575f5ffd5b843567ffffffffffffffff8111156159c8575f5ffd5b8501601f810187136159d8575f5ffd5b803567ffffffffffffffff8111156159ee575f5ffd5b8760208284010111156159ff575f5ffd5b60209182019550935085013567ffffffffffffffff811115615a1f575f5ffd5b8501601f81018713615a2f575f5ffd5b803567ffffffffffffffff811115615a45575f5ffd5b8760208260051b8401011115615a59575f5ffd5b949793965060200194505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761276257612762615a67565b8181038181111561276257612762615a67565b8082018082111561276257612762615a67565b5f5f85851115615ac6575f5ffd5b83861115615ad2575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b5f60018201615b1857615b18615a67565b5060010190565b80356020831015612762575f19602084900360031b1b1692915050565b5f82615b5657634e487b7160e01b5f52601260045260245ffd5b500690565b5f8183825b6005811015615b7f578151835260209283019290910190600101615b60565b50505060a08201905092915050565b5f8183825b6009811015615bb2578151835260209283019290910190600101615b93565b5050506101208201905092915050565b5f8183825b602a811015615be6578151835260209283019290910190600101615bc7565b5050506105408201905092915050565b81515f90829060208501835b82811015615c20578151845260209384019390910190600101615c02565b509195945050505050565b5f8183825b6003811015615c4f578151835260209283019290910190600101615c30565b50505060608201905092915050565b5f81615c6c57615c6c615a67565b505f190190565b5f8183825b6008811015615c97578151835260209283019290910190600101615c78565b5050506101008201905092915050565b5f82518060208501845e5f920191825250919050565b5f60208284031215615ccd575f5ffd5b81518015158114610333575f5ffd5b5f8183825b6007811015615d00578151835260209283019290910190600101615ce1565b50505060e08201905092915050565b634e487b7160e01b5f52602160045260245ffdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a2646970667358221220dd4ef74de03a5fc6e61f901ba52f751e7f352836d52d3e63358a85bb44453a4d64736f6c634300081b0033";
3
+ */ export const HonkVerifierBytecode = "0x610100604052348015610010575f5ffd5b506301000000608052601860a0527f170169ddda607641d673af05b06760c9881cbee1609e7f6e1a05760b2bbf750460c05260ae60e05260805160a05160c05160e051615d996100de5f395f818161018101526107ae01525f61016001525f8181605b01528181609401528181610101015281816101a2015281816108c7015281816109d401528181610a0001528181610a7b015281816112d401528181611374015281816115c30152818161160f0152818161165d015281816116b40152612cfc01525f5050615d995ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063ea50d0e41461002d575b5f5ffd5b61004061003b36600461599f565b610054565b604051901515815260200160405180910390f35b5f5f61007f7f000000000000000000000000000000000000000000000000000000000000000061028c565b905061008c816020615a7b565b85146100ee577f0000000000000000000000000000000000000000000000000000000000000000856100bf836020615a7b565b6040516359895a5360e01b81526004810193909352602483019190915260448201526064015b60405180910390fd5b5f6100f761033a565b90505f61012588887f000000000000000000000000000000000000000000000000000000000000000061034f565b9050601082604001516101389190615a92565b85146101575760405163fa06659360e01b815260040160405180910390fd5b5f6101c68288887f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006106a6565b90506102168787808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152505085518551606081015160809091015191935091506001610758565b815160a001525f61022783836108bf565b905080610247576040516313f8744360e31b815260040160405180910390fd5b5f6102538486856109c0565b905080610273576040516352ec174560e11b815260040160405180910390fd5b81801561027d5750805b9b9a5050505050505050505050565b5f8061029a60026008615a7b565b905060016102a9600885615a7b565b6102b39190615a7b565b6102bd9082615aa5565b90506102cb60016029615a7b565b6102d59082615aa5565b905060026102e4600185615a92565b6102ee9190615a7b565b6102f89082615aa5565b9050610305600184615a7b565b61030f9082615aa5565b905061031c600280615a7b565b6103269082615aa5565b9050610333601082615aa5565b9392505050565b61034261520d565b61034a611786565b905090565b6103576155ab565b5f805b60108110156103b957610386868387610374602083615aa5565b9261038193929190615ab8565b6120c2565b8351826010811061039957610399615adf565b6020020181815250506020826103af9190615aa5565b915060010161035a565b506103dd8582866103cb604083615aa5565b926103d893929190615ab8565b6120d5565b60208301526103ed604082615aa5565b90506104008582866103cb604083615aa5565b6040808401919091526104139082615aa5565b90506104268582866103cb604083615aa5565b6060830152610436604082615aa5565b90506104498582866103cb604083615aa5565b60c0830152610459604082615aa5565b905061046c8582866103cb604083615aa5565b60e083015261047c604082615aa5565b905061048f8582866103cb604083615aa5565b608083015261049f604082615aa5565b90506104b28582866103cb604083615aa5565b6101008301526104c3604082615aa5565b90506104d68582866103cb604083615aa5565b60a08301526104e6604082615aa5565b90505f5b83811015610564575f5b600881101561055b5761050e878488610374602083615aa5565b84610120015183601c811061052557610525615adf565b6020020151826008811061053b5761053b615adf565b6020020181815250506020836105519190615aa5565b92506001016104f4565b506001016104ea565b505f5b60298110156105b857610581868387610374602083615aa5565b836101400151826029811061059857610598615adf565b6020020181815250506020826105ae9190615aa5565b9150600101610567565b505f5b6105c6600185615a92565b81101561060f576105de8683876103cb604083615aa5565b83610160015182601b81106105f5576105f5615adf565b6020020152610605604083615aa5565b91506001016105bb565b505f5b838110156106625761062b868387610374602083615aa5565b83610180015182601c811061064257610642615adf565b6020020181815250506020826106589190615aa5565b9150600101610612565b506106748582866103cb604083615aa5565b6101a0830152610685604082615aa5565b90506106988582866103cb604083615aa5565b6101c0830152509392505050565b6106ae6156f3565b5f6106bd888888888886612162565b90835290506106cc81896121e1565b602084019190915290506106e081846122d0565b604084019190915290506106f588828561235f565b606084019190915290506107098882612433565b6080840191909152905061071e8882856124be565b60a08401919091529050610733888285612633565b60c0840191909152905061074788826126f8565b5060e0830152509695505050505050565b5f60018082610785866107808961077b6107768a6310000000615aa5565b612735565b61274d565b612768565b90505f6107a38761079e8a61077b6107768b6001615aa5565b612781565b90505f5b6107d260107f0000000000000000000000000000000000000000000000000000000000000000615a92565b81101561083f575f6107fc8c83815181106107ef576107ef615adf565b60200260200101516127a9565b905061080c8661077b8684612768565b955061081c8561077b8584612768565b9450610828848b612768565b9350610834838b612781565b9250506001016107a7565b505f5b60108110156108a6575f8a826010811061085e5761085e615adf565b602002015190506108738661077b8684612768565b95506108838561077b8584612768565b945061088f848b612768565b935061089b838b612781565b925050600101610842565b506108b184846127be565b9a9950505050505050505050565b5f806001815b7f0000000000000000000000000000000000000000000000000000000000000000811015610996575f86610120015182601c811061090557610905615adf565b602002015190505f61091782866127cc565b905080610937576040516313f8744360e31b815260040160405180910390fd5b5f876060015184601c811061094e5761094e615adf565b6020020151905061095f83826127ec565b9550610986886040015185601c811061097a5761097a615adf565b6020020151868361299b565b94505050508060010190506108c5565b505f6109b0866101400151865f01518760200151856129c6565b90508281145b9695505050505050565b5f6109c9615777565b5f6109f88460a001517f0000000000000000000000000000000000000000000000000000000000000000612a3f565b90505f610a267f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b610a31906002615aa5565b67ffffffffffffffff811115610a4957610a49615af3565b604051908082528060200260200182016040528015610a72578160200160208202803683370190505b5090505f610aa17f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b610aac906002615aa5565b67ffffffffffffffff811115610ac457610ac4615af3565b604051908082528060200260200182016040528015610b0857816020015b604080518082019091525f8082526020820152815260200190600190039081610ae25790505b509050610b3a610b358760e00151855f81518110610b2857610b28615adf565b6020026020010151612781565b612b09565b84610120018181525050610b6e610b358760e00151855f81518110610b6157610b61615adf565b6020026020010151612768565b610140850181905261012085015160c0880151610b8f92610780919061274d565b845260a0860151610bbf90610ba390612b09565b61077b86610120015161079e8a60c0015189610140015161274d565b6020850152815160019083905f90610bd957610bd9615adf565b602002602001018181525050876101a00151815f81518110610bfd57610bfd615adf565b6020908102919091010152600160a08501525f60c085015283515f516020615d445f395f51905f5203604085015260208401515f516020615d445f395f51905f5203606085015260015b60248111610cea57610c6185604001518660a0015161274d565b838281518110610c7357610c73615adf565b602002602001018181525050610cbc8560c001516107808b6101400151600185610c9d9190615a92565b60298110610cad57610cad615adf565b60200201518860a0015161274d565b60c086015260a08501516080880151610cd5919061274d565b60a0860152610ce381615b07565b9050610c47565b505f5b6005811015610db8575f610d02601d83615aa5565b90505f610d10602484615aa5565b9050610d41858381518110610d2757610d27615adf565b602002602001015161078089606001518a60a0015161274d565b858381518110610d5357610d53615adf565b602002602001018181525050610d908760c001516107808d61014001518460298110610d8157610d81615adf565b60200201518a60a0015161274d565b60c088015260a087015160808a0151610da9919061274d565b60a08801525050600101610ced565b50866060015181600181518110610dd157610dd1615adf565b6020026020010181905250866080015181600281518110610df457610df4615adf565b60200260200101819052508660a0015181600381518110610e1757610e17615adf565b60200260200101819052508660c0015181600481518110610e3a57610e3a615adf565b60200260200101819052508660e0015181600581518110610e5d57610e5d615adf565b602002602001018190525086610100015181600681518110610e8157610e81615adf565b602002602001018190525086610120015181600781518110610ea557610ea5615adf565b602002602001018190525086610140015181600881518110610ec957610ec9615adf565b602002602001018190525086610160015181600981518110610eed57610eed615adf565b6020026020010181905250866101c0015181600a81518110610f1157610f11615adf565b602002602001018190525086610180015181600b81518110610f3557610f35615adf565b6020026020010181905250866101a0015181600c81518110610f5957610f59615adf565b6020026020010181905250866101e0015181600d81518110610f7d57610f7d615adf565b602002602001018190525086610200015181600e81518110610fa157610fa1615adf565b602002602001018190525086610220015181600f81518110610fc557610fc5615adf565b602002602001018190525086610240015181601081518110610fe957610fe9615adf565b60200260200101819052508661026001518160118151811061100d5761100d615adf565b60200260200101819052508661028001518160128151811061103157611031615adf565b6020026020010181905250866102a001518160138151811061105557611055615adf565b6020026020010181905250866102c001518160148151811061107957611079615adf565b6020026020010181905250866102e001518160158151811061109d5761109d615adf565b6020026020010181905250866103000151816016815181106110c1576110c1615adf565b6020026020010181905250866103200151816017815181106110e5576110e5615adf565b60200260200101819052508661034001518160188151811061110957611109615adf565b60200260200101819052508661036001518160198151811061112d5761112d615adf565b602002602001018190525086610380015181601a8151811061115157611151615adf565b6020026020010181905250866103a0015181601b8151811061117557611175615adf565b6020026020010181905250866103c0015181601c8151811061119957611199615adf565b6020026020010181905250876020015181601d815181106111bc576111bc615adf565b6020026020010181905250876040015181601e815181106111df576111df615adf565b6020026020010181905250876060015181601f8151811061120257611202615adf565b602002602001018190525087608001518160208151811061122557611225615adf565b60200260200101819052508760a001518160218151811061124857611248615adf565b60200260200101819052508761010001518160228151811061126c5761126c615adf565b60200260200101819052508760c001518160238151811061128f5761128f615adf565b60200260200101819052508760e00151816024815181106112b2576112b2615adf565b60200260200101819052505f6112f887606001518660c001518b6101800151877f0000000000000000000000000000000000000000000000000000000000000000612b79565b9050611322815f8151811061130f5761130f615adf565b602002602001015186610120015161274d565b608086018190526101808a01515160c0890151611353929161078091611348919061274d565b88610140015161274d565b608086015260c087015161136690612cd8565b60a08601525f5b61139860017f0000000000000000000000000000000000000000000000000000000000000000615a92565b8110156115a7576113c8610b358960e00151878460016113b89190615aa5565b81518110610b2857610b28615adf565b61012087015260e08801516113f790610b3590876113e7856001615aa5565b81518110610b6157610b61615adf565b61014087015260a0860151610120870151611412919061274d565b61016087015260a086015160c089015161143a9161142f9161274d565b87610140015161274d565b610180870181905261146f905f516020615d445f395f51905f52036101608801515f516020615d445f395f51905f5203612768565b848261147d60246001615aa5565b6114879190615aa5565b8151811061149757611497615adf565b6020026020010181815250505f6114da8761018001518c61018001518460016114c09190615aa5565b601c81106114d0576114d0615adf565b602002015161274d565b905061151481610780896101600151868660016114f79190615aa5565b8151811061150757611507615adf565b602002602001015161274d565b9050611524876080015182612768565b608088015260a087015160c08a015161154a916115409161274d565b8a60c0015161274d565b60a08801526101608b015182601b811061156657611566615adf565b6020020151848361157960246001615aa5565b6115839190615aa5565b8151811061159357611593615adf565b60209081029190910101525060010161136d565b50604080518082019091526001815260026020820152826115e97f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b815181106115f9576115f9615adf565b60209081029190910101526080850151836116357f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b8151811061164557611645615adf565b60209081029190910101526101c089015180836116837f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b61168e906001615aa5565b8151811061169e5761169e615adf565b602090810291909101015260e0880151846116da7f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b6116e5906001615aa5565b815181106116f5576116f5615adf565b6020026020010181815250505f61170c8486612ce3565b90505f61171883612dfe565b90505f6117298d5f01518484612e4f565b90505f5f6117398f5f0151612ec5565b9150915061174682612f91565b61174f81612f91565b61175a858385613034565b9450611767848285613034565b93506117738585613070565b9f9e505050505050505050505050505050565b61178e61520d565b50604080516103e08101825263010000008152601860208083019190915260ae82840152825180840184527f0701a553235808e0351d9ac09f57a01082d0698ca4c12315ffa850c6fca31b2181527f0bc3a2d2fc0f36149d7fa8f6fde86c460482748a76e77db5cc84e7ad732633b9818301526060830152825180840184527f1310627b332780c3548bef4bba4953a7fdd86c108aac4ecb324f8935f986965081527f09f8dea9021cb7dedd2464d3aed63e0637c55894e3fa144a433ae4ca2dfb5ab2818301526080830152825180840184527f10e5625014a80e465ab0d790949d80395c33a8c6cad78426d5781f8edafb84a881527f0178664c8dd3daa04d944a69f79a1f5e48b4b5142e69dc28313533c11571e5de8183015260a0830152825180840184527f24dcc445c9bfe8c8255adab63fa79f92d939713e5e777ec70109f73460a2f12c81527f0a4945cb5af8a2fa0dafe239bfa6f50163a9e02d7c75b3b6438ba4c5a51416d48183015260c0830152825180840184527f0f297ebda0477a2b8cf854b6e073c9c7c5f0c472f70874dcaee8899b2460007981527f01669ffe7b7a0de1b7d40adc388c65fee34e01d50981e2e646743353a4df32358183015260e0830152825180840184527f060efeda66b6c87c5af0fcef0be39768f96a4362cb3efe20dd925c8d5a78449381527f222dbf5b91a05d1409d4b45baad4a3c93bc3d74d9e7cf40dc3654fba855333f481830152610100830152825180840184527f01a8abe0d74344165494348196db5fa7da3a745f398fd1374cc2cb15bcc58ff481527f0f62b9babe865f3d0c422867d8b7f7fa5c13d85721a659f3b9ff8fc8cc6fc99281830152610120830152825180840184527f10c6d6bb61a10a7376d63c06a03df187f117f0e25ad08bdd31c39728bc022a8c81527f130ce758ac8f9943b0f775953123d43f9ef2d7ea1d50135275ae7cf7f889741e81830152610140830152825180840184527f21be9bcd75ea8bba38224e8dd8165de833ffaf8e09ab0f5fe9ae39858d6c70b081527f0d1562d15ed0fc009f8b5e4867ab2f43ce58514387bf1dccccf867d7183c313881830152610160830152825180840184527f01c2493970a5cfd7f0e900e608d4a050b342b741c497fdec69e1255009cafc3681527f199e0e923f1e5bdc1cd0658169759bfa4caacaa561744fa6dcbca6366b6bf54381830152610180830152825180840184527f254d007d72e4ce4e9e405b84188df93f3538a1ca6fc34860c9d9522c7558fee681527f17479d8852b8fd9195076c98826375932881ab64b5463c96324996062dc6bbbe818301526101a0830152825180840184527f045d10986004c6387e894189d072a94f3a673f558d49854dde16763c736ab6ee81527f054430234b04d6fb62c1c8bc40c25087fdd87647d3bd6e807f9d36b8f67ea871818301526101c0830152825180840184527f2918b1f606e7b4da29e177f68c57d0bf95dd368811e56a518e611b85f434b33581527f2710dab87b65ef1ab05025174fec8c2a103d0f17d96034d28973001ec26481e3818301526101e0830152825180840184527f0fc1eb192e6f899adf9ff0a86b2392075e85fb30926b9cc718120af6d9bd9c7581527f15e6e0d9bcfd9fbb61c13621725253c88b66e193e81e3646c1bbed425e60216081830152610200830152825180840184527f1f09e6957ef20cf200ba0457254c8ad7e33901bf2627def3845829a9a5c4bf1081527f0fc7ae3a8b4c84e60210b0fefea52732728854accd87ff8fdc4558973943a13581830152610220830152825180840184527f26d69900d8c02bda339bad86ee313893048bdd1aa18c29c579b9f78b462719d781527f0f5ff39d7f91b517387c2e69cd07604554aedbda7572e7839c9d928987b96fbf81830152610240830152825180840184527f05d9f1c2adb1144b6dd85d2ef59b8b39b3dc92aa9fa0f61f7d42a75440e77ce981527f271727a297fcda05cf91365a7a92b7515009e81254028fa6113ad6036a34c75d81830152610260830152825180840184527f299d73a74ec62254f3690dec7ecd67407adaa4bd18a47504ca5e60d5ae107fd881527f09387fa17f391a69f04e673ff839df6db60d61ca81053cbd62c22099026b197181830152610280830152825180840184527f07258291fb850fad0b58bd24d41b0704b0bc61471d168cc17ae6e02b381ea9f081527f0a86bda02a7250f2752cd6db3563674de4742027738bae11685c28e3668c0224818301526102a0830152825180840184527f2928237c4f2bbdb868ad20c1353d6855ca52f15a73d373f55acea753a05412c381527f0dc9ec011a12710535e8fc32cb6122a69d6b64a0dc26319adda5f9f269e63206818301526102c0830152825180840184527f294c07d8e26d6093e1eb9854ac40611c1c4ad70cab6ad9035e2a9e6daa5995b381527f21194339cd298af1a8d6b2c6a878cb869c431d2adeb27cb56738740dd0faffd1818301526102e0830152825180840184527f0bd64f978264f1a506e615b7b04d0820459b970967b1434b675f5084b9408cb981527f2723185283b7e26d7c989092e385ec7500b4128268e16060e57f64c9926ad55581830152610300830152825180840184527f2194d92617bbb3ba3d9e53f4f13c5c7c6fc5ae0c56f06e0a35747f24625e576381527f11ca88979a66ada092bb26e2b64b8602eb63f6e2fc21862f6fefead2978de7e081830152610320830152825180840184527f1d346dd159688f85b77717f8197777c6ced8daf349335d74908736241f5f332881527f10e952d77959f4aa6fe9cb7222d9901d06ddfeea51240c79980d4daac814444381830152610340830152825180840184527f109830b81fd8b5e0a3327bf961ea6746fcc9155039d285eaa76f4b0f8839e44781527f28de29af66333e8ea2ee2d23ff9df4297471377a71b5240987690610bad14c7881830152610360830152825180840184527f062b31b3719d79c253d59707efcc41556e43d9f4f122ba79d3484e023fb4da7d81527f283eb52c07506637e09fb73d7875ada840d8e4c75295a90dc312b4d2571c52c38183015261038083015282518084018452600181526002818301526103a083015282518084019093527f2e5a01735ffc1438bb81208b6489cae95380e5c9ad0976b7491ffc477f26b40e83527f10d3a9e4fa80571b60da8287632e314eb474b217667574057949c3cf691cb7b1908301526103c081019190915290565b5f6103336120d08385615b1f565b6127a9565b604080518082019091525f808252602082015260408051808201909152805f516020615d245f395f51905f5261210e60205f8789615ab8565b61211791615b1f565b6121219190615b3c565b81526020908101905f516020615d245f395f51905f5290612146906040908789615ab8565b61214f91615b1f565b6121599190615b3c565b90529392505050565b6121956040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f6121a38888888888613264565b6040860191909152602085019190915290835292506121c28389613562565b6080850191909152606084019190915291989197509095505050505050565b6121e96157e7565b5f6121f2615806565b8481526101008401805151602080840191909152905181015160408084019190915260a086018051516060850152518201516080840152516122559161223a91849101615b5b565b604051602081830303815290604052805190602001206127a9565b91505f612261836135e9565b50808552905060015b6122766001601c615a92565b8110156122c6576122a78561228c600184615a92565b601b811061229c5761229c615adf565b60200201518361274d565b8582601b81106122b9576122b9615adf565b602002015260010161226a565b5050509250929050565b6122d8615824565b5f6122ef8460405160200161223a91815260200190565b93506122fa846135e9565b50825260015b838110156123575761233883612317600184615a92565b601c811061232757612327615adf565b6020020151846114c0600185615a92565b8382601c811061234a5761234a615adf565b6020020152600101612300565b509093915050565b612367615824565b5f805b838110156124295761237a615843565b8581525f5b60088110156123e35787610120015183601c811061239f5761239f615adf565b602002015181600881106123b5576123b5615adf565b6020020151826123c6836001615aa5565b600981106123d6576123d6615adf565b602002015260010161237f565b506123f88160405160200161223a9190615b8e565b95505f612404876135e9565b8685601c811061241657612416615adf565b602002019190915250505060010161236a565b5090949293505050565b5f5f61243d615862565b8381525f5b602981101561249057856101400151816029811061246257612462615adf565b602002015182612473836001615aa5565b602a811061248357612483615adf565b6020020152600101612442565b506124a58160405160200161223a9190615bc2565b91505f6124b1836135e9565b5096929550919350505050565b5f80806124cc600185615a92565b6124d7906002615a7b565b6124e2906001615aa5565b67ffffffffffffffff8111156124fa576124fa615af3565b604051908082528060200260200182016040528015612523578160200160208202803683370190505b50905084815f8151811061253957612539615adf565b60209081029190910101525f5b612551600186615a92565b8110156126045786610160015181601b811061256f5761256f615adf565b60200201515182612581836002615a7b565b61258c906001615aa5565b8151811061259c5761259c615adf565b60200260200101818152505086610160015181601b81106125bf576125bf615adf565b602002015160200151828260026125d69190615a7b565b6125e1906002615aa5565b815181106125f1576125f1615adf565b6020908102919091010152600101612546565b506126198160405160200161223a9190615bf6565b91505f612625836135e9565b509792965091945050505050565b5f8080612641846001615aa5565b67ffffffffffffffff81111561265957612659615af3565b604051908082528060200260200182016040528015612682578160200160208202803683370190505b50905084815f8151811061269857612698615adf565b60209081029190910101525f5b848110156126045786610180015181601c81106126c4576126c4615adf565b6020020151826126d5836001615aa5565b815181106126e5576126e5615adf565b60209081029190910101526001016126a5565b5f5f612702615881565b8381526101a085018051516020808401919091529051810151604080840191909152516124a59161223a91849101615c2b565b5f5f516020615d445f395f51905f52825b0692915050565b5f5f516020615d445f395f51905f5282840990505b92915050565b5f5f516020615d445f395f51905f528284089392505050565b5f5f516020615d445f395f51905f52825f516020615d445f395f51905f520384089392505050565b5f5f516020615d445f395f51905f5282612746565b5f6103338361077b84612b09565b815160208301515f9182916127e19190612768565b929092149392505050565b60408051610100810182527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffec5181526102d060208201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff1191810191909152609060608201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff71608082015260f060a08201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593effffd3160c08201526113b060e08201525f906001825b60088110156128d3576128c98261077b8784612781565b91506001016128b2565b506128dc61589f565b5f5b600881101561293d575f8482600881106128fa576128fa615adf565b6020020151905061290f8161077b8985612781565b905061291a81612b09565b90508083836008811061292f5761292f615adf565b6020020152506001016128de565b505f5b6008811015612990575f87826008811061295c5761295c615adf565b60200201519050612979818484600881106114d0576114d0615adf565b90506129858682612768565b955050600101612940565b506109b6848361274d565b5f5f6129b160016107808561077b896001612781565b90506129bd848261274d565b95945050505050565b5f6129cf615824565b6129da868285613622565b6129e6868683866137ce565b6129f2868683866139ba565b6129fd868285613be5565b612a08868285613dd9565b612a1486868386614122565b612a1f8682856145ce565b612a2a8682856149e0565b612a35868285614da1565b6109b681856150a1565b60605f8267ffffffffffffffff811115612a5b57612a5b615af3565b604051908082528060200260200182016040528015612a84578160200160208202803683370190505b50905083815f81518110612a9a57612a9a615adf565b602090810291909101015260015b83811015612b0157612adc82612abf600184615a92565b81518110612acf57612acf615adf565b6020026020010151612cd8565b828281518110612aee57612aee615adf565b6020908102919091010152600101612aa8565b509392505050565b5f5f8290505f604051602081526020808201526020604082015282606082015260025f516020615d445f395f51905f520360808201525f516020615d445f395f51905f5260a082015260205f60c08360055afa80612b65575f5ffd5b505f51608091909101604052949350505050565b60605f8267ffffffffffffffff811115612b9557612b95615af3565b604051908082528060200260200182016040528015612bbe578160200160208202803683370190505b509050825b8015612ccd575f85612bd6600184615a92565b81518110612be657612be6615adf565b602002602001015190505f89600184612bff9190615a92565b601c8110612c0f57612c0f615adf565b602002015190505f612c6a612c2e612c27858d61274d565b600261274d565b61079e8b612c3d600189615a92565b601c8110612c4d57612c4d615adf565b602002015161077b612c648861077b60018a612781565b87612781565b9050612c8b8161077b610b35612c858761077b600189612781565b86612768565b99508990508085612c9d600187615a92565b81518110612cad57612cad615adf565b60200260200101818152505050505080612cc690615c5e565b9050612bc3565b509695505050505050565b5f612762828361274d565b604080518082019091525f80825260208201525f612d227f00000000000000000000000000000000000000000000000000000000000000006024615aa5565b612d2d906002615aa5565b90505f5b81811015612d6357612d5b858281518110612d4e57612d4e615adf565b6020026020010151612f91565b600101612d31565b50604051600190815b60018401811015612dc85760208102870160208202870181515160408501528151602001516060850152805160808501525050604080830160606040850160075afa8316925060408260808460065afa90921691600101612d6c565b5080518452602081015160208501525080612df6576040516352ec174560e11b815260040160405180910390fd5b505092915050565b604080518082019091525f80825260208201525f516020615d245f395f51905f5282602001515f516020615d245f395f51905f52612e3c9190615a92565b612e469190615b3c565b60208301525090565b5f5f5f612e5b86612ec5565b91509150612e6761589f565b82518152602080840151818301528251604080840191909152838201516060840152875160808401528782015160a0840152865160c08401528682015160e084015251612eba9161223a91849101615c73565b979650505050505050565b6040805180820182525f80825260208083018281528451808601865283815280830193845286519287015195870151606088015160cc90811b608892831b6044998a1b90961795909517949094178652608088015160a089015160c08a015160e08b0151871b90841b918a1b90921717179092526101008701516101208801516101408901516101608a0151861b90851b91891b909217171781526101808701516101a08801516101c08901516101e09099015190941b9790921b9290951b1717939093179092529091565b805160208201515f5f516020615d245f395f51905f528380095f516020615d245f395f51905f5260035f516020615d245f395f51905f52838709085f516020615d245f395f51905f52848509149150508061302e5760405162461bcd60e51b815260206004820152601960248201527f706f696e74206973206e6f74206f6e207468652063757276650000000000000060448201526064016100e5565b50505050565b604080518082019091525f8082526020820152604080518082019091525f808252602082015261306483866150fa565b90506129bd8185615166565b81516020808401518351848301516040805194850195909552938301919091527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c260608301527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed60808301527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b60a08301527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa60c083015260e08201526101008101919091527f260e01b251f6f1c7e7ff4e580791dee8ea51d87a358e038b4efe30fac09383c16101208201527f0118c4d5b837bcc2bc89b5b398b5974e9f5944073b32078b7e231fec938883b06101408201527f04fc6369f7110fe3d25156c1bb9a72859cf2a04641f99ba4ee413c80da6a5fe46101608201527f22febda3c0c0632a56475b4214e5615e11e6dd3f96e6cea2854a87d4dacc5e556101808201525f9081906101a00160405160208183030381529060405290505f5f60086001600160a01b0316836040516132069190615ca7565b5f60405180830381855afa9150503d805f811461323e576040519150601f19603f3d011682016040523d82523d5f602084013e613243565b606091505b50915091508180156109b65750808060200190518101906109b69190615cbd565b5f80808080613274866001615aa5565b61327f906006615aa5565b67ffffffffffffffff81111561329757613297615af3565b6040519080825280602002602001820160405280156132c0578160200160208202803683370190505b509050865f1b815f815181106132d8576132d8615adf565b60209081029190910101525f5b6132f0601088615a92565b8110156133415789898281811061330957613309615adf565b905060200201358282600161331e9190615aa5565b8151811061332e5761332e615adf565b60209081029190910101526001016132e5565b505f5b60108110156133b2578a5161336c90826010811061336457613364615adf565b602002015190565b8282601061337b8b6001615aa5565b6133859190615a92565b61338f9190615aa5565b8151811061339f5761339f615adf565b6020908102919091010152600101613344565b5060208a015151816133c5886001615aa5565b815181106133d5576133d5615adf565b6020908102919091018101919091528a8101510151816133f6886001615aa5565b613401906001615aa5565b8151811061341157613411615adf565b602090810291909101015260408a0151518161342e886001615aa5565b613439906002615aa5565b8151811061344957613449615adf565b60209081029190910181019190915260408b015101518161346b886001615aa5565b613476906003615aa5565b8151811061348657613486615adf565b602090810291909101015260608a015151816134a3886001615aa5565b6134ae906004615aa5565b815181106134be576134be615adf565b60209081029190910181019190915260608b01510151816134e0886001615aa5565b6134eb906005615aa5565b815181106134fb576134fb615adf565b60200260200101818152505061351b8160405160200161223a9190615bf6565b9150613526826135e9565b6040805160208101869052929750909550613541910161223a565b91505f61354d836135e9565b50959b949a5094985090965091945050505050565b5f5f5f61356d6158be565b85815260c0858101805151602080850191909152905181015160408085019190915260e08801805151606086015251820151608080860191909152880180515160a0860152518201519284019290925290516135cf9161223a91849101615cdc565b91506135da826135e9565b90979096509194509092505050565b5f80826f7fffffffffffffffffffffffffffffff8116607f82901c61360d826127a9565b9450613618816127a9565b9350505050915091565b5f61362e8460076151dd565b90507f183227397098d014dc2822db40c0ac2e9419f4243cdcb848a1f0fac9f80000005f61368f613689613663856003612781565b61077b61367e6136738b5f6151dd565b61077b8c601d6151dd565b61077b8b601c6151dd565b8361274d565b90506137106137056136ec6136d36136ba856107806136af8d60026151dd565b61077b8e601c6151dd565b6107806136c88c60036151dd565b61077b8d601d6151dd565b6107806136e18b60046151dd565b61077b8c601e6151dd565b6107806136fa8a60056151dd565b61077b8b601f6151dd565b6107808860016151dd565b905061372f81610780613724866001612781565b61077b8a60276151dd565b905061373b818461274d565b9050613747818561274d565b8552505f905061378161377761376c61376188601c6151dd565b61078089601f6151dd565b61079e8860246151dd565b610780875f6151dd565b90506137928161077b846002612781565b90506137a38161077b846001612781565b90506137af818361274d565b90506137bb818461274d565b9050808460015b60200201525050505050565b5f5f5f6138046137fa6137e289601c6151dd565b6107806137f08b60126151dd565b8a6060015161274d565b8760800151612768565b905061383d8161077b61383361381b8b601d6151dd565b6107806138298d60136151dd565b8c6060015161274d565b8960800151612768565b90506138628161077b6138336138548b601e6151dd565b6107806138298d60146151dd565b90506138878161077b6138336138798b601f6151dd565b6107806138298d60156151dd565b92505f90506138ab6137fa61389d89601c6151dd565b6107806137f08b600e6151dd565b90506138d08161077b6138336138c28b601d6151dd565b6107806138298d600f6151dd565b90506138f58161077b6138336138e78b601e6151dd565b6107806138298d60106151dd565b905061391a8161077b61383361390c8b601f6151dd565b6107806138298d60116151dd565b91505f905061394161393b6139308960206151dd565b6107808a601a6151dd565b8461274d565b90506139768161079e6139706139588b60286151dd565b6107806139668d601b6151dd565b8c60a0015161274d565b8561274d565b9050613982818561274d565b6040860152505f6139a561397061399a89601b6151dd565b61077b8a60286151dd565b9050808560035b602002015250505050505050565b5f5f613a18613a006139e86139d36138338a60166151dd565b6107806139e18b60176151dd565b8a5161274d565b6107806139f68a60186151dd565b896020015161274d565b610780613a0e8960196151dd565b886040015161274d565b91505f613a4f613a36613a2c89601c6151dd565b8860800151612768565b610780613a448a60036151dd565b61077b8b60246151dd565b90505f613a78613a6089601d6151dd565b610780613a6d8b5f6151dd565b61077b8c60256151dd565b90505f613aa2613a898a601e6151dd565b610780613a978c60016151dd565b61077b8d60266151dd565b9050613ae1613ac9613abb85610780868d5f015161274d565b610780848c6020015161274d565b610780613ad78c60046151dd565b8b6040015161274d565b93505050505f613af561393b8860216151dd565b90505f613b0661393b8960216151dd565b90505f613b3e613b25613b1a8b60236151dd565b6107808c60066151dd565b61079e613b338c60236151dd565b61077b8d60066151dd565b90505f613b62613b5c613b51878961274d565b61077b8d60216151dd565b83612781565b9050613b6e818861274d565b90505f613b96613b88613b828d60066151dd565b8761274d565b61079e613b828e60226151dd565b90505f613ba48c60236151dd565b90505f613bb4613b5c838461274d565b60808c0185905260a08c018490529050613bce818b61274d565b8b6006602002015250505050505050505050505050565b5f613bf15f6001612781565b90505f613bff5f6002612781565b90505f613c0d5f6003612781565b90505f613c29613c1e88601d6151dd565b61079e89601c6151dd565b90505f613c45613c3a89601e6151dd565b61079e8a601d6151dd565b90505f613c61613c568a601f6151dd565b61079e8b601e6151dd565b90505f613c7d613c728b60246151dd565b61079e8c601f6151dd565b905083613c8e8161077b818b612768565b9050613c9e8161077b878a612768565b9050613cae8161077b8789612768565b9050613cbf8161077b8d60086151dd565b9050613ccb818a61274d565b60e08b01525082613ce08161077b818b612768565b9050613cf08161077b868a612768565b9050613d008161077b8689612768565b9050613d118161077b8d60086151dd565b9050613d1d818a61274d565b6101008b01525081613d338161077b818b612768565b9050613d438161077b858a612768565b9050613d538161077b8589612768565b9050613d648161077b8d60086151dd565b9050613d70818a61274d565b6101208b01525080613d868161077b818b612768565b9050613d968161077b848a612768565b9050613da68161077b8489612768565b9050613db78161077b8d60086151dd565b9050613dc3818a61274d565b610140909a019990995250505050505050505050565b613e126040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b613e1d84601d6151dd565b8152613e2a84601e6151dd565b6020820152613e3a8460246151dd565b6040820152613e4a8460276151dd565b6060820152613e5a8460266151dd565b6080820152613e6a8460256151dd565b60a08201525f613e7b8560026151dd565b90505f613e88865f6151dd565b90505f613e9c8460400151855f0151612781565b90505f613eb18560200151866020015161274d565b606086015190915086905f90613ec7908061274d565b90505f613ee5613edf89602001518a6060015161274d565b8861274d565b90505f613f04613efd8a60a001518b60400151612768565b8a51612768565b9050613f13613b82828861274d565b9050613f3a613f34613f2e613f288487612781565b88612781565b84612768565b83612768565b9050613f62613f57613f4c838761274d565b61077b8f60096151dd565b61077b60018a612781565b6101608c015250505050602085015160808601515f91613f8191612768565b90505f613f9f613f9588606001518861274d565b8860200151612781565b90505f613fc3613faf848761274d565b6107806139708b60a001518c5f0151612781565b9050613feb613fe0613fd5838c61274d565b61077b8e60096151dd565b61077b600189612781565b6101808b0152505f915061400c9050614005836011612768565b875161274d565b90505f6140198384612768565b90506140258182612768565b90505f61403383600961274d565b905061405c61405661393b61404f8b60a001518c5f0151612768565b8b51612768565b82612781565b60c089018190525f9061407790613edf90613f4c908d61274d565b905061408a8b600b602002015182612768565b6101608c0152505086515f92506140b19150614005906140aa9080612768565b8851612768565b90505f6140f16140cc8361077b8a5f01518b60a00151612781565b602089015161079e906140df9080612768565b61077b8b602001518c60800151612768565b905061410e89600c6020020151610780613edf613f4c858d61274d565b89600c602002015250505050505050505050565b61418c604051806101e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6141a461419a86601e6151dd565b856040015161274d565b8082526141c3906107806141b988601d6151dd565b876020015161274d565b8082526141d89061078061400588601c6151dd565b8082526141ea906107808760016151dd565b808252602082018190526142039061079e87601f6151dd565b815261421e6142138660246151dd565b61079e87601c6151dd565b608082015261423c6142318660276151dd565b61079e87601f6151dd565b606082015260808101516142559061077b816001612781565b6101c082015260808101516142959061428b906142849061077b60015f516020615d445f395f51905f52615a92565b6001612768565b826060015161274d565b60a082018190526142cb906142bd9061077b6142b28960026151dd565b61077b8a60036151dd565b61077b61397088600a6151dd565b83600e60200201526101c08101516142ef906142bd9061077b6142b28960026151dd565b6101e084015280516143149061077b6143098860026151dd565b61077b8960036151dd565b6101208201525f61433361432987601f6151dd565b8360200151612781565b90506143448161077b836001612781565b60e08301526143616143578760266151dd565b866040015161274d565b604083018190526143849061078061437a8960256151dd565b886020015161274d565b604083018190526143a49061078061439d8960246151dd565b885161274d565b60408301526143c16143b78760276151dd565b8360400151612781565b60408301525f6143e06143d58860266151dd565b61079e89601e6151dd565b905061443261440d613689614284866080015160015f516020615d445f395f51905f5261077b9190615a92565b61077b614284866040015160015f516020615d445f395f51905f5261077b9190615a92565b60c084015260408301516144549061444a908061274d565b8460400151612781565b61010084015260c0830151614480906144729061077b8a60046151dd565b61077b613b828a600a6151dd565b6102008601526101c083015161449f906144729061077b8a60046151dd565b6102208601526101008301516144be906144729061077b8a60046151dd565b61024086015260e08301516144d89061077b8960046151dd565b6101408401526144f76144ec8860256151dd565b61079e89601d6151dd565b6101608401526080830151614535906143d59061452a906142849061077b60015f516020615d445f395f51905f52615a92565b85610160015161274d565b61018084018190526101208401516101a0850181905261456c916107809061077b6145618c60056151dd565b61077b8d60026151dd565b6101a08401819052835161458c91906107809061077b6145618c5f6151dd565b6101a084018190526101408401516145a49190612768565b6101a084018190526145be9061077b613b828a600a6151dd565b6101a0840181905285600d6139ac565b6146076040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61463c61462361461886601c6151dd565b61077b8760256151dd565b6107806146318760246151dd565b61077b88601d6151dd565b815261468161467661465d61465287601c6151dd565b61077b88601f6151dd565b61078061466b88601d6151dd565b61077b89601e6151dd565b61079e8660266151dd565b6040820181905261469690600160441b61274d565b604082018190526146ac9061079e8660276151dd565b6040820181905281516146bf9190612768565b604082018190526146d59061077b8660056151dd565b604082015280516146ea90600160441b61274d565b80825261470a906107806146ff8760246151dd565b61077b8860256151dd565b808252602082018190526147319061079e61472687601e6151dd565b61078088601f6151dd565b602082018190526147479061077b8660046151dd565b60208201528051606082018190526147649061078086601f6151dd565b606082018190526147889061079e61477d8760266151dd565b6107808860276151dd565b6060820181905261479d9061077b865f6151dd565b8160600181815250505f6147c66147bc83602001518460400151612768565b8360600151612768565b90506147d78161077b8760036151dd565b90506147ef6147e78660256151dd565b61400061274d565b60808301819052614805906107808760246151dd565b608083018190526148189061400061274d565b6080830181905261482e9061078087601e6151dd565b608083018190526148419061400061274d565b608083018190526148579061078087601d6151dd565b6080830181905261486a9061400061274d565b608083018190526148809061078087601c6151dd565b608083018190526148969061079e87601f6151dd565b608083018190526148ac9061077b8760056151dd565b60808301526148bf6147e78660266151dd565b60a083018190526148d5906107808760256151dd565b60a083018190526148e89061400061274d565b60a083018190526148fe906107808760246151dd565b60a083018190526149119061400061274d565b60a083018190526149279061078087601f6151dd565b60a0830181905261493a9061400061274d565b60a083018190526149509061078087601e6151dd565b60a083018190526149669061079e8760276151dd565b60a0830181905261497b9061077b875f6151dd565b60a0830181905260808301515f916149939190612768565b90506149a48161077b8860046151dd565b90506149b08282612768565b60c084018190526149c99061077b613b8289600b6151dd565b60c084018190528560136020020152505050505050565b614a566040518061022001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b614a6f614a6485601c6151dd565b6107808660026151dd565b8152614a8a614a7f85601d6151dd565b6107808660036151dd565b6020820152614aa8614a9d85601e6151dd565b6107808660046151dd565b6040820152614ac6614abb85601f6151dd565b6107808660056151dd565b60608201528051614af890614af190614aea90614ae3908061274d565b845161274d565b835161274d565b825161274d565b60808201526020810151614b3690614b2c90614b2290614b18908061274d565b846020015161274d565b836020015161274d565b826020015161274d565b60a08201526040810151614b7490614b6a90614b6090614b56908061274d565b846040015161274d565b836040015161274d565b826040015161274d565b60c08201526060810151614ba89061428b90614b9e90614b94908061274d565b846060015161274d565b836060015161274d565b60e0820152608081015160a0820151614bc19190612768565b61010082015260c081015160e0820151614bdb9190612768565b61012082015260a0810151614bff90614bf49080612768565b826101200151612768565b61014082015260e0810151614c2390614c189080612768565b826101000151612768565b610160820152610120810151614c399080612768565b6101e08201819052614c5a90614c4f9080612768565b826101600151612768565b6101e0820152610100810151614c709080612768565b6101a08201819052614c9190614c869080612768565b826101400151612768565b6101a08201819052610160820151614ca891612768565b6101808201526101408101516101e0820151614cc49190612768565b6101c0820152614cd861368985600c6151dd565b6102008201819052610280840151610180830151614d03926107809161077b9061079e8a60246151dd565b8360146020020152614d33836015602002015161078083610200015161077b856101a0015161079e8a60256151dd565b8360156020020152614d63836016602002015161078083610200015161077b856101c0015161079e8a60266151dd565b8360166020020152614d93836017602002015161078083610200015161077b856101e0015161079e8a60276151dd565b836017602002015250505050565b614df36040518061016001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f6040518060800160405280614e287f10dc6e9c006ea38b04b1e03b4bd9490c0d03f98929ca1d7fb56821fd19d3b6e7612735565b8152602001614e567f0c28145b6a44df3e0149b3d0a30b3bb599df9756d4dd9b84a86b38cfb45a740b612735565b8152602001614e837e544b8338791518b2c7645a50392798b21f75bb60e3596170067d00141cac15612735565b8152602001614eb17f222c01175718386f2e2e82eb122789e352e105a3b8fa852613bc534433ee428b612735565b90529050614ece614ec386601c6151dd565b6107808760026151dd565b6101208301819052614f0d90614f0290614ef790614eec908061274d565b85610120015161274d565b84610120015161274d565b83610120015161274d565b8252614f1a85601d6151dd565b6020830152614f2a85601e6151dd565b6040830152614f3a85601f6151dd565b606083015281516020830151614f62916147bc91614f589190612768565b8460400151612768565b6080830152614f7561393b86600d6151dd565b6101408301528151614f9690614f8c90835f6114d0565b8360800151612768565b60a0830152614fc2846018602002015161078084610140015161077b8660a0015161079e8b60246151dd565b6103008501526020820151614fdd90614f8c908360016114d0565b60c0830152615009846019602002015161078084610140015161077b8660c0015161079e8b60256151dd565b610320850152604082015161502490614f8c908360026114d0565b60e083015261505084601a602002015161078084610140015161077b8660e0015161079e8b60266151dd565b610340850152606082015161506b90614f8c908360036114d0565b61010083015261509984601b602002015161078084610140015161077b86610100015161079e8b60276151dd565b84601b6137c2565b815160015b601c8110156150f3576150e9826107808684601c81106150c8576150c8615adf565b6020020151866150d9600187615a92565b601b81106114d0576114d0615adf565b91506001016150a6565b5092915050565b604080518082019091525f8082526020820152604080518082019091525f8082526020820152604051835181526020840151602082015284604082015260408160608360075afa8061514a575f5ffd5b5080518252602080820151908301526060016040529392505050565b604080518082019091525f8082526020820152604080518082019091525f80825260208201526040518451815260208501516020820152835160408201526020840151606082015260408160808360065afa806151c1575f5ffd5b5080518252602080820151908301526080016040529392505050565b5f828260288111156151f1576151f1615d0f565b6029811061520157615201615adf565b60200201519392505050565b604051806103e001604052805f81526020015f81526020015f815260200161524660405180604001604052805f81526020015f81525090565b815260200161526660405180604001604052805f81526020015f81525090565b815260200161528660405180604001604052805f81526020015f81525090565b81526020016152a660405180604001604052805f81526020015f81525090565b81526020016152c660405180604001604052805f81526020015f81525090565b81526020016152e660405180604001604052805f81526020015f81525090565b815260200161530660405180604001604052805f81526020015f81525090565b815260200161532660405180604001604052805f81526020015f81525090565b815260200161534660405180604001604052805f81526020015f81525090565b815260200161536660405180604001604052805f81526020015f81525090565b815260200161538660405180604001604052805f81526020015f81525090565b81526020016153a660405180604001604052805f81526020015f81525090565b81526020016153c660405180604001604052805f81526020015f81525090565b81526020016153e660405180604001604052805f81526020015f81525090565b815260200161540660405180604001604052805f81526020015f81525090565b815260200161542660405180604001604052805f81526020015f81525090565b815260200161544660405180604001604052805f81526020015f81525090565b815260200161546660405180604001604052805f81526020015f81525090565b815260200161548660405180604001604052805f81526020015f81525090565b81526020016154a660405180604001604052805f81526020015f81525090565b81526020016154c660405180604001604052805f81526020015f81525090565b81526020016154e660405180604001604052805f81526020015f81525090565b815260200161550660405180604001604052805f81526020015f81525090565b815260200161552660405180604001604052805f81526020015f81525090565b815260200161554660405180604001604052805f81526020015f81525090565b815260200161556660405180604001604052805f81526020015f81525090565b815260200161558660405180604001604052805f81526020015f81525090565b81526020016155a660405180604001604052805f81526020015f81525090565b905290565b604051806101e001604052806155bf6158dc565b81526020016155df60405180604001604052805f81526020015f81525090565b81526020016155ff60405180604001604052805f81526020015f81525090565b815260200161561f60405180604001604052805f81526020015f81525090565b815260200161563f60405180604001604052805f81526020015f81525090565b815260200161565f60405180604001604052805f81526020015f81525090565b815260200161567f60405180604001604052805f81526020015f81525090565b815260200161569f60405180604001604052805f81526020015f81525090565b81526020016156bf60405180604001604052805f81526020015f81525090565b81526020016156cc6158fb565b81526020016156d9615929565b81526020016156e6615948565b8152602001615566615824565b6040518061010001604052806157326040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b815260200161573f6157e7565b815260200161574c615824565b8152602001615759615824565b81526020015f81526020015f81526020015f81526020015f81525090565b604051806101c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020016157b5615981565b81526020016157c2615981565b81526020015f81526020015f81526020015f81526020015f8152602001606081525090565b604051806103600160405280601b906020820280368337509192915050565b6040518060a001604052806005906020820280368337509192915050565b604051806103800160405280601c906020820280368337509192915050565b6040518061012001604052806009906020820280368337509192915050565b604051806105400160405280602a906020820280368337509192915050565b60405180606001604052806003906020820280368337509192915050565b6040518061010001604052806008906020820280368337509192915050565b6040518060e001604052806007906020820280368337509192915050565b6040518061020001604052806010906020820280368337509192915050565b604051806103800160405280601c905b61591361589f565b81526020019060019003908161590b5790505090565b6040518061052001604052806029906020820280368337509192915050565b604051806103600160405280601b905b604080518082019091525f80825260208201528152602001906001900390816159585790505090565b60405180608001604052806004906020820280368337509192915050565b5f5f5f5f604085870312156159b2575f5ffd5b843567ffffffffffffffff8111156159c8575f5ffd5b8501601f810187136159d8575f5ffd5b803567ffffffffffffffff8111156159ee575f5ffd5b8760208284010111156159ff575f5ffd5b60209182019550935085013567ffffffffffffffff811115615a1f575f5ffd5b8501601f81018713615a2f575f5ffd5b803567ffffffffffffffff811115615a45575f5ffd5b8760208260051b8401011115615a59575f5ffd5b949793965060200194505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761276257612762615a67565b8181038181111561276257612762615a67565b8082018082111561276257612762615a67565b5f5f85851115615ac6575f5ffd5b83861115615ad2575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b5f60018201615b1857615b18615a67565b5060010190565b80356020831015612762575f19602084900360031b1b1692915050565b5f82615b5657634e487b7160e01b5f52601260045260245ffd5b500690565b5f8183825b6005811015615b7f578151835260209283019290910190600101615b60565b50505060a08201905092915050565b5f8183825b6009811015615bb2578151835260209283019290910190600101615b93565b5050506101208201905092915050565b5f8183825b602a811015615be6578151835260209283019290910190600101615bc7565b5050506105408201905092915050565b81515f90829060208501835b82811015615c20578151845260209384019390910190600101615c02565b509195945050505050565b5f8183825b6003811015615c4f578151835260209283019290910190600101615c30565b50505060608201905092915050565b5f81615c6c57615c6c615a67565b505f190190565b5f8183825b6008811015615c97578151835260209283019290910190600101615c78565b5050506101008201905092915050565b5f82518060208501845e5f920191825250919050565b5f60208284031215615ccd575f5ffd5b81518015158114610333575f5ffd5b5f8183825b6007811015615d00578151835260209283019290910190600101615ce1565b50505060e08201905092915050565b634e487b7160e01b5f52602160045260245ffdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a264697066735822122050f5a6863ee758dc217cc360891d6605e3b71a0ab57e5c6e334effa261e9b88064736f6c634300081b0033";
4
4
  /**
5
5
  * HonkVerifier link references.
6
6
  */ export const HonkVerifierLinkReferences = {};