@aztec/l1-artifacts 0.86.0-starknet.1 → 0.87.0-nightly.20250521

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 (64) hide show
  1. package/dest/CoinIssuerBytecode.d.ts +1 -1
  2. package/dest/CoinIssuerBytecode.js +1 -1
  3. package/dest/ExtRollupLibBytecode.d.ts +1 -1
  4. package/dest/ExtRollupLibBytecode.d.ts.map +1 -1
  5. package/dest/ExtRollupLibBytecode.js +1 -1
  6. package/dest/FeeJuicePortalBytecode.d.ts +1 -1
  7. package/dest/FeeJuicePortalBytecode.js +1 -1
  8. package/dest/GovernanceBytecode.d.ts +1 -1
  9. package/dest/GovernanceBytecode.js +1 -1
  10. package/dest/GovernanceProposerBytecode.d.ts +1 -1
  11. package/dest/GovernanceProposerBytecode.js +1 -1
  12. package/dest/HonkVerifierBytecode.d.ts +1 -1
  13. package/dest/HonkVerifierBytecode.d.ts.map +1 -1
  14. package/dest/HonkVerifierBytecode.js +1 -1
  15. package/dest/InboxAbi.d.ts +41 -13
  16. package/dest/InboxAbi.d.ts.map +1 -1
  17. package/dest/InboxAbi.js +52 -16
  18. package/dest/InboxBytecode.d.ts +1 -1
  19. package/dest/InboxBytecode.d.ts.map +1 -1
  20. package/dest/InboxBytecode.js +1 -1
  21. package/dest/MultiAdderAbi.d.ts +1148 -0
  22. package/dest/MultiAdderAbi.d.ts.map +1 -0
  23. package/dest/MultiAdderAbi.js +1519 -0
  24. package/dest/MultiAdderBytecode.d.ts +9 -0
  25. package/dest/MultiAdderBytecode.d.ts.map +1 -0
  26. package/dest/MultiAdderBytecode.js +6 -0
  27. package/dest/NewGovernanceProposerPayloadBytecode.d.ts +1 -1
  28. package/dest/NewGovernanceProposerPayloadBytecode.js +1 -1
  29. package/dest/OutboxBytecode.d.ts +1 -1
  30. package/dest/OutboxBytecode.js +1 -1
  31. package/dest/RegisterNewRollupVersionPayloadBytecode.d.ts +1 -1
  32. package/dest/RegisterNewRollupVersionPayloadBytecode.js +1 -1
  33. package/dest/RegistryBytecode.d.ts +1 -1
  34. package/dest/RegistryBytecode.js +1 -1
  35. package/dest/RewardDistributorBytecode.d.ts +1 -1
  36. package/dest/RewardDistributorBytecode.js +1 -1
  37. package/dest/RollupAbi.d.ts +6 -27
  38. package/dest/RollupAbi.d.ts.map +1 -1
  39. package/dest/RollupAbi.js +7 -35
  40. package/dest/RollupBytecode.d.ts +9 -6
  41. package/dest/RollupBytecode.d.ts.map +1 -1
  42. package/dest/RollupBytecode.js +10 -6
  43. package/dest/RollupStorage.d.ts +2 -2
  44. package/dest/RollupStorage.js +2 -2
  45. package/dest/SlashFactoryBytecode.d.ts +1 -1
  46. package/dest/SlashFactoryBytecode.js +1 -1
  47. package/dest/SlasherBytecode.d.ts +1 -1
  48. package/dest/SlasherBytecode.js +1 -1
  49. package/dest/SlashingProposerBytecode.d.ts +1 -1
  50. package/dest/SlashingProposerBytecode.js +1 -1
  51. package/dest/StakingAssetHandlerBytecode.d.ts +1 -1
  52. package/dest/StakingAssetHandlerBytecode.js +1 -1
  53. package/dest/TokenPortalBytecode.d.ts +1 -1
  54. package/dest/TokenPortalBytecode.js +1 -1
  55. package/dest/UniswapPortalBytecode.d.ts +1 -1
  56. package/dest/UniswapPortalBytecode.js +1 -1
  57. package/dest/ValidatorSelectionLibBytecode.d.ts +1 -1
  58. package/dest/ValidatorSelectionLibBytecode.js +1 -1
  59. package/dest/checksum.d.ts +1 -1
  60. package/dest/checksum.js +1 -1
  61. package/dest/index.d.ts +2 -0
  62. package/dest/index.d.ts.map +1 -1
  63. package/dest/index.js +2 -0
  64. package/package.json +3 -3
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Governance bytecode.
3
- */ export const GovernanceBytecode = "0x60a060405234801561000f575f5ffd5b50604051612b70380380612b7083398101604081905261002e91610585565b816001600160a01b03166080816001600160a01b031681525050805f5f6101000a8154816001600160a01b0302191690836001600160a01b03160217905550604051806101000160405280604051806040016040528062278d00815260200169d3c21bcecceda10000008152508152602001603c8152602001610e108152602001603c815260200162093a80815260200167016345785d8a00008152602001668e1bc9bf0400008152602001683635c9adc5dea0000081525060055f820151815f015f820151815f01556020820151816001015550506020820151816002015560408201518160030155606082015181600401556080820151816005015560a0820151816006015560c0820151816007015560e082015181600801559050506101d56005604051806101000160405290815f82016040518060400160405290815f820154815260200160018201548152505081526020016002820154815260200160038201548152602001600482015481526020016005820154815260200160068201548152602001600782015481526020016008820154815250506101dd60201b60201c565b5050506105bd565b5f60018260a0015110156102045760405163245ca84960e11b815260040160405180910390fd5b670de0b6b3a76400008260a00151111561023157604051637a9fd76760e11b815260040160405180910390fd5b670de0b6b3a76400008260c00151111561025e576040516306e2083d60e41b815260040160405180910390fd5b60018260e0015110156102845760405163505c925360e11b815260040160405180910390fd5b815160200151600111156102ab5760405163ec4abc2f60e01b815260040160405180910390fd5b815151603c11156102f0576040516302b2633f60e21b81526020600482015260096024820152684c6f636b44656c617960b81b60448201526064015b60405180910390fd5b81515162278d00101561033257604051637ac6b2f960e11b81526020600482015260096024820152684c6f636b44656c617960b81b60448201526064016102e7565b6020820151603c1115610376576040516302b2633f60e21b815260206004820152600b60248201526a566f74696e6744656c617960a81b60448201526064016102e7565b602082015162278d0010156103bc57604051637ac6b2f960e11b815260206004820152600b60248201526a566f74696e6744656c617960a81b60448201526064016102e7565b6040820151603c1115610403576040516302b2633f60e21b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b60448201526064016102e7565b604082015162278d00101561044c57604051637ac6b2f960e11b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b60448201526064016102e7565b6060820151603c1115610493576040516302b2633f60e21b815260206004820152600e60248201526d457865637574696f6e44656c617960901b60448201526064016102e7565b606082015162278d0010156104dc57604051637ac6b2f960e11b815260206004820152600e60248201526d457865637574696f6e44656c617960901b60448201526064016102e7565b6080820151603c1115610520576040516302b2633f60e21b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b60448201526064016102e7565b608082015162278d00101561056657604051637ac6b2f960e11b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b60448201526064016102e7565b506001919050565b6001600160a01b0381168114610582575f5ffd5b50565b5f5f60408385031215610596575f5ffd5b82516105a18161056e565b60208401519092506105b28161056e565b809150509250929050565b6080516125866105ea5f395f81816101bf015281816105d301528181610cf40152610e0101526125865ff3fe608060405234801561000f575f5ffd5b5060043610610132575f3560e01c80638a4fb16a116100b4578063c7f758a811610079578063c7f758a81461038b578063da35c664146103ab578063edb884e9146103b4578063f752f8b5146103c7578063fe0d94c1146103da578063fe7f0e8b146103ed575f5ffd5b80638a4fb16a146102705780639080936f14610333578063b907c0ea14610353578063c3a5051514610366578063c4bf093614610378575f5ffd5b80634800d97f116100fa5780634800d97f146101ba5780636a18ff7a146101f95780636bd50cef1461020c57806371706cbe146102215780637f7bc23a1461022a575f5ffd5b80630126795114610136578063083b42461461015e57806330eb4bdd146101715780633b8f880d1461018457806347e7ef24146101a5575b5f5ffd5b610149610144366004611f90565b610400565b60405190151581526020015b60405180910390f35b61014961016c366004611fab565b610457565b61014961017f366004611fc2565b6104ed565b610197610192366004611ff9565b61056f565b604051908152602001610155565b6101b86101b3366004611ff9565b6105c6565b005b6101e17f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610155565b610149610207366004612023565b61066b565b61021461081e565b60405161015591906120b9565b61019760105481565b61025b6102383660046120c8565b600260209081525f92835260408084209091529082529020805460019091015482565b60408051928352602083019190915201610155565b6102f561027e366004611fab565b604080516080810182525f808252602082018190529181018290526060810191909152505f90815260046020908152604091829020825160808101845281548152600182015492810192909252600201546001600160a01b03811692820192909252600160a01b90910460ff161515606082015290565b604051610155919081518152602080830151908201526040808301516001600160a01b03169082015260609182015115159181019190915260800190565b610346610341366004611fab565b610885565b604051610155919061211f565b6101b8610361366004611f90565b6109c6565b5f546101e1906001600160a01b031681565b610197610386366004611ff9565b610a44565b61039e610399366004611fab565b610a59565b604051610155919061212d565b610197600f5481565b6101b86103c236600461222f565b610b76565b6101b86103d5366004611fab565b610c29565b6101496103e8366004611fab565b610d22565b6101976103fb366004611fab565b610f89565b5f805433906001600160a01b0316818114610446576040516307aa341360e31b81526001600160a01b039283166004820152911660248201526044015b60405180910390fd5b505061045182610fa6565b92915050565b5f8181526001602052604081206006600982015460ff16600781111561047f5761047f6120eb565b0361049d57604051630595c07760e51b815260040160405180910390fd5b60066104a884610885565b60078111156104b9576104b96120eb565b146104d7576040516308adbf2160e01b815260040160405180910390fd5b600901805460ff19166006179055506001919050565b335f90815260036020526040812081906105069061119e565b6006549091503382828181111561054957604051631186c4ab60e31b81526001600160a01b0390931660048401526024830191909152604482015260640161043d565b505060055461055c9150859083906111b7565b5061056685610fa6565b95945050505050565b5f42820361059e576001600160a01b0383165f9081526003602052604090206105979061119e565b9050610451565b6001600160a01b0383165f9081526003602052604090206105bf90836112b2565b9392505050565b6105fb6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163330846112fc565b6001600160a01b0382165f90815260036020526040902061061c9082611369565b610627600e82611369565b6040518181526001600160a01b0383169033907f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f629060200160405180910390a35050565b5f5f61067685610885565b9050600181600781111561068c5761068c6120eb565b146106aa57604051632d85b5cb60e01b815260040160405180910390fd5b5f8581526001602052604081206106d8906106c4906113ae565b335f908152600360205260409020906112b2565b5f878152600260209081526040808320338452909152812080546001820154939450909261070691906122e9565b61071090846122fc565b90503381888181111561074f57604051631186c4ab60e31b81526001600160a01b0390931660048401526024830191909152604482015260640161043d565b5050505f888152600160205260409020600c01861561079d5787835f015f82825461077a91906122e9565b90915550508054889082905f906107929084906122e9565b909155506107d09050565b87836001015f8282546107b091906122e9565b9250508190555087816001015f8282546107ca91906122e9565b90915550505b604080518815158152602081018a905233918b917fcbdf6214089cba887ecbf35a0b6a734589959c9763342c756bb2a80ca2bc9f6e910160405180910390a350600198975050505050505050565b610826611ec7565b506040805161014081018252600554610100820190815260065461012083015281526007546020820152600854918101919091526009546060820152600a546080820152600b5460a0820152600c5460c0820152600d5460e082015290565b5f600f54821082906108ad576040516320c68f5560e21b815260040161043d91815260200190565b505f8281526001602052604090206108c4816113c3565b156108d6576009015460ff1692915050565b600a8101545f546001600160a01b039081169116146108f85750600692915050565b4261090b81610906846113ae565b101590565b1561091957505f9392505050565b6109268161090684611404565b15610935575060019392505050565b5f61094a610942846113ae565b600e906112b2565b90505f610957848361141b565b5090505f81600281111561096d5761096d6120eb565b1461097e5750600495945050505050565b61098b8361090686611562565b1561099c5750600295945050505050565b6109a98361090686611579565b156109ba5750600395945050505050565b50600795945050505050565b33308181146109fb5760405163f18e42a160e01b81526001600160a01b0392831660048201529116602482015260440161043d565b50505f80546001600160a01b0319166001600160a01b038316908117825560405190917f58b9023fe926532b1c6a397a00102fcce3ac81725a232d9d235104cd1a28e43291a250565b5f6105bf8383610a546005611590565b6111b7565b610a61611f17565b5f828152600160208181526040928390208351610200810190945280546101c08501908152928101546101e085015260c08401928352600281015460e0850152600381015461010085015260048101546101208501526005810154610140850152600681015461016085015260078082015461018086015260088201546101a0860152928452600981015490929184019160ff90911690811115610b0757610b076120eb565b6007811115610b1857610b186120eb565b815260098201546001600160a01b036101009091048116602080840191909152600a840154909116604080840191909152600b84015460608401528051808201909152600c8401548152600d90930154908301526080015292915050565b3330818114610bab5760405163f18e42a160e01b81526001600160a01b0392831660048201529116602482015260440161043d565b5050610bb6816115bc565b508051805160055560209081015160065581015160075560408082015160085560608201516009556080820151600a5560a0820151600b5560c0820151600c5560e0820151600d555142907f7d096a764e5ea306d0946e3a05ca9ffd9ea0af82aecf12cf8eee26b2485f9a0c905f90a250565b5f8181526004602052604090206002810154600160a01b900460ff1615610c63576040516321e3810d60e01b815260040160405180910390fd5b610c71428260010154111590565b60018201544291610c9e57604051630d02d71b60e21b81526004810192909252602482015260440161043d565b505060028101805460ff60a01b1916600160a01b17905560405182907fc55414f0020bbb9a6427d371f8c17b59299e683de70d4e659e061bb9ba303d9f905f90a260028101548154610d1e916001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811692911690611948565b5050565b5f5f610d2d83610885565b90506003816007811115610d4357610d436120eb565b14610d615760405163b6ae35c160e01b815260040160405180910390fd5b5f83815260016020526040808220600981018054600560ff199091161790819055825163504d080b60e01b815292519193926101009091046001600160a01b03169163504d080b9160048082019286929091908290030181865afa158015610dcb573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610df2919081019061230f565b90505f5b8151811015610f53577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316828281518110610e3b57610e3b612488565b60200260200101515f01516001600160a01b031603610e6d576040516304f6c78960e21b815260040160405180910390fd5b5f828281518110610e8057610e80612488565b60200260200101515f01516001600160a01b0316838381518110610ea657610ea6612488565b602002602001015160200151604051610ebf919061249c565b5f604051808303815f865af19150503d805f8114610ef8576040519150601f19603f3d011682016040523d82523d5f602084013e610efd565b606091505b5050905080838381518110610f1457610f14612488565b60200260200101515f015190610f4957604051633cb8c30160e01b81526001600160a01b03909116600482015260240161043d565b5050600101610df6565b5060405185907f712ae1383f79ac853f8d882153778e0260ef8f03b504e2866e0593e04d2b291f905f90a2506001949350505050565b5f428203610f9b57610451600e61119e565b610451600e836112b2565b600f80545f9182919082610fb9836124b2565b909155506040805161020081019091526005546101c082019081526006546101e083015260c0820190815260075460e0830152600854610100830152600954610120830152600a54610140830152600b54610160830152600c54610180830152600d546101a08301528152909150602081015f81526001600160a01b038086166020808401919091525f8054909216604080850191909152426060808601919091528151808301835284815280840185905260809586015286845260018084529382902086518051805183558501518287015580850151600283015592830151600382015590820151600482015593810151600585015560a0810151600685015560c081015160078086019190915560e0909101516008850155908401516009840180549193909260ff199092169184908111156110f9576110f96120eb565b0217905550604082810151600983018054610100600160a81b0319166101006001600160a01b03938416021790556060840151600a840180546001600160a01b0319169183169190911790556080840151600b84015560a0909301518051600c84015560200151600d90920191909155519084169082907faa9a4d6243341331785569c732ffe9c81a3e9c2aafa58faab1afe4797668433f905f90a350600192915050565b5f6111a88261197e565b6001600160e01b031692915050565b335f9081526003602052604081206111cf90846119c3565b6111da600e846119c3565b601080545f91826111ea836124b2565b919050559050604051806080016040528085815260200161120b4286611a61565b81526001600160a01b0380881660208084018290525f6040948501819052868152600482528490208551815590850151600182015584840151600290910180546060909601511515600160a01b026001600160a81b031990961691909316179390931790555182907f35572b4263de54e794ffcb886cb01a64870892fe896854fd2ca93810d5c66f7e906112a29088815260200190565b60405180910390a3949350505050565b5f6112bc82421190565b6112d95760405163e34cb3b360e01b815260040160405180910390fd5b6112ec6112e583611a6c565b8490611aa0565b6001600160e01b03169392505050565b6040516001600160a01b0384811660248301528381166044830152606482018390526113639186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050611ae9565b50505050565b805f03611374575050565b5f61137e8361197e565b90506113a761138c42611a6c565b61139584611b55565b61139f90846124ca565b859190611b88565b5050505050565b5f61045182600b0154835f0160020154611a61565b60098101545f9060ff1660058160078111156113e1576113e16120eb565b14806105bf575060068160078111156113fc576113fc6120eb565b149392505050565b5f610451611411836113ae565b6003840154611a61565b5f5f835f01600801545f036114355750600290505f61155b565b600884015483101561144c5750600190508061155b565b5f61146884865f0160060154670de0b6b3a76400006001611ba2565b9050805f0361147e57600280925092505061155b565b838111156114945760026003925092505061155b565b600c850154600d8601545f916114a9916122e9565b9050818110156114c2576001600493509350505061155b565b600c8601548190036114dc575f600893509350505061155b565b60078601545f90611500906114f990670de0b6b3a76400006122e9565b6002611be4565b90505f6115188383670de0b6b3a76400006001611ba2565b9050828111156115335760026006955095505050505061155b565b600c880154811061154f5760016009955095505050505061155b565b5f600a95509550505050505b9250929050565b5f61045161156f83611404565b6004840154611a61565b5f61045161158683611562565b6005840154611a61565b5f6104516115b2600584600201546115a891906124fd565b8460030154611a61565b8360040154611a61565b5f60018260a0015110156115e35760405163245ca84960e11b815260040160405180910390fd5b670de0b6b3a76400008260a00151111561161057604051637a9fd76760e11b815260040160405180910390fd5b670de0b6b3a76400008260c00151111561163d576040516306e2083d60e41b815260040160405180910390fd5b60018260e0015110156116635760405163505c925360e11b815260040160405180910390fd5b8151602001516001111561168a5760405163ec4abc2f60e01b815260040160405180910390fd5b815151603c11156116ca576040516302b2633f60e21b81526020600482015260096024820152684c6f636b44656c617960b81b604482015260640161043d565b81515162278d00101561170c57604051637ac6b2f960e11b81526020600482015260096024820152684c6f636b44656c617960b81b604482015260640161043d565b6020820151603c1115611750576040516302b2633f60e21b815260206004820152600b60248201526a566f74696e6744656c617960a81b604482015260640161043d565b602082015162278d00101561179657604051637ac6b2f960e11b815260206004820152600b60248201526a566f74696e6744656c617960a81b604482015260640161043d565b6040820151603c11156117dd576040516302b2633f60e21b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b604482015260640161043d565b604082015162278d00101561182657604051637ac6b2f960e11b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b604482015260640161043d565b6060820151603c111561186d576040516302b2633f60e21b815260206004820152600e60248201526d457865637574696f6e44656c617960901b604482015260640161043d565b606082015162278d0010156118b657604051637ac6b2f960e11b815260206004820152600e60248201526d457865637574696f6e44656c617960901b604482015260640161043d565b6080820151603c11156118fa576040516302b2633f60e21b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b604482015260640161043d565b608082015162278d00101561194057604051637ac6b2f960e11b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b604482015260640161043d565b506001919050565b6040516001600160a01b0383811660248301526044820183905261197991859182169063a9059cbb90606401611331565b505050565b80545f9080156119bb576119a4836119976001846122fc565b5f91825260209091200190565b5464010000000090046001600160e01b03166105bf565b5f9392505050565b805f036119ce575050565b5f6119d88361197e565b90505f6119e483611b55565b90503382826001600160e01b038082169083161015611a3857604051631186c4ab60e31b81526001600160a01b0390931660048401526001600160e01b03918216602484015216604482015260640161043d565b505050611a59611a4742611a6c565b611a518385612510565b869190611b88565b505050505050565b5f6105bf82846122e9565b5f63ffffffff821115611a9c576040516306dfcc6560e41b8152602060048201526024810183905260440161043d565b5090565b81545f9081611ab185858385611c17565b90508015611adf57611ac8856119976001846122fc565b5464010000000090046001600160e01b0316610566565b505f949350505050565b5f5f60205f8451602086015f885af180611b08576040513d5f823e3d81fd5b50505f513d91508115611b1f578060011415611b2c565b6001600160a01b0384163b155b1561136357604051635274afe760e01b81526001600160a01b038516600482015260240161043d565b5f6001600160e01b03821115611a9c576040516306dfcc6560e41b815260e060048201526024810183905260440161043d565b5f80611b95858585611c72565b915091505b935093915050565b5f611bcf611baf83611dba565b8015611bca57505f8480611bc557611bc56124e9565b868809115b151590565b611bda868686611de6565b61056691906122e9565b5f815f03611bf657611bf66012611e9c565b816001840381611c0857611c086124e9565b04600101831515029392505050565b5f5b81831015611c6a575f611c2c8484611ead565b5f8781526020902090915063ffffffff86169082015463ffffffff161115611c5657809250611c64565b611c618160016122e9565b93505b50611c19565b509392505050565b82545f9081908015611d61575f611c8e876119976001856122fc565b805490915063ffffffff8082169164010000000090046001600160e01b0316908816821115611cd057604051632520601d60e01b815260040160405180910390fd5b8763ffffffff168263ffffffff1603611d0457825463ffffffff166401000000006001600160e01b03891602178355611d53565b6040805180820190915263ffffffff808a1682526001600160e01b03808a1660208085019182528d54600181018f555f8f81529190912094519151909216640100000000029216919091179101555b9450859350611b9a92505050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a555f8a815291822095519251909316640100000000029190931617920191909155905081611b9a565b5f6002826003811115611dcf57611dcf6120eb565b611dd9919061252f565b60ff166001149050919050565b5f838302815f1985870982811083820303915050805f03611e1a57838281611e1057611e106124e9565b04925050506105bf565b808411611e3157611e316003851502601118611e9c565b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b634e487b715f52806020526024601cfd5b5f611ebb60028484186124fd565b6105bf908484166122e9565b6040805161014081019091525f6101008201818152610120830191909152819081526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6040518060c00160405280611f2a611ec7565b81526020015f81526020015f6001600160a01b031681526020015f6001600160a01b031681526020015f8152602001611f7460405180604001604052805f81526020015f81525090565b905290565b6001600160a01b0381168114611f8d575f5ffd5b50565b5f60208284031215611fa0575f5ffd5b81356105bf81611f79565b5f60208284031215611fbb575f5ffd5b5035919050565b5f5f60408385031215611fd3575f5ffd5b8235611fde81611f79565b91506020830135611fee81611f79565b809150509250929050565b5f5f6040838503121561200a575f5ffd5b823561201581611f79565b946020939093013593505050565b5f5f5f60608486031215612035575f5ffd5b833592506020840135915060408401358015158114612052575f5ffd5b809150509250925092565b8051805183526020810151602084015250602081015160408301526040810151606083015260608101516080830152608081015160a083015260a081015160c083015260c081015160e083015260e08101516101008301525050565b6101208101610451828461205d565b5f5f604083850312156120d9575f5ffd5b823591506020830135611fee81611f79565b634e487b7160e01b5f52602160045260245ffd5b6008811061211b57634e487b7160e01b5f52602160045260245ffd5b9052565b6020810161045182846120ff565b5f6101e08201905061214082845161205d565b60208301516121536101208401826120ff565b5060408301516001600160a01b03908116610140840152606084015116610160830152608083015161018083015260a09092015180516101a0830152602001516101c09091015290565b634e487b7160e01b5f52604160045260245ffd5b604051610100810167ffffffffffffffff811182821017156121d5576121d561219d565b60405290565b6040805190810167ffffffffffffffff811182821017156121d5576121d561219d565b604051601f8201601f1916810167ffffffffffffffff811182821017156122275761222761219d565b604052919050565b5f81830361012081128015612242575f5ffd5b5061224b6121b1565b6040821215612258575f5ffd5b6122606121db565b843581526020808601358183015290825260408086013591830191909152606080860135918301919091526080808601359183019190915260a0808601359183019190915260c0808601359183019190915260e080860135918301919091526101009094013593810193909352509092915050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610451576104516122d5565b81810381811115610451576104516122d5565b5f6020828403121561231f575f5ffd5b815167ffffffffffffffff811115612335575f5ffd5b8201601f81018413612345575f5ffd5b805167ffffffffffffffff81111561235f5761235f61219d565b8060051b61236f602082016121fe565b9182526020818401810192908101908784111561238a575f5ffd5b6020850192505b8383101561247d57825167ffffffffffffffff8111156123af575f5ffd5b85016040818a03601f190112156123c4575f5ffd5b6123cc6121db565b60208201516123da81611f79565b8152604082015167ffffffffffffffff8111156123f5575f5ffd5b60208184010192505089601f83011261240c575f5ffd5b815167ffffffffffffffff8111156124265761242661219d565b612439601f8201601f19166020016121fe565b8181528b602083860101111561244d575f5ffd5b8160208501602083015e5f6020838301015280602084015250508084525050602082019150602083019250612391565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f82518060208501845e5f920191825250919050565b5f600182016124c3576124c36122d5565b5060010190565b6001600160e01b038181168382160190811115610451576104516122d5565b634e487b7160e01b5f52601260045260245ffd5b5f8261250b5761250b6124e9565b500490565b6001600160e01b038281168282160390811115610451576104516122d5565b5f60ff831680612541576125416124e9565b8060ff8416069150509291505056fea2646970667358221220f7f39a145b26814d6201c58770d536463e63fc9ac6e5faf3e968d5e2a42f17a864736f6c634300081b0033";
3
+ */ export const GovernanceBytecode = "0x60a060405234801561000f575f5ffd5b50604051612b70380380612b7083398101604081905261002e91610585565b816001600160a01b03166080816001600160a01b031681525050805f5f6101000a8154816001600160a01b0302191690836001600160a01b03160217905550604051806101000160405280604051806040016040528062278d00815260200169d3c21bcecceda10000008152508152602001603c8152602001610e108152602001603c815260200162093a80815260200167016345785d8a00008152602001668e1bc9bf0400008152602001683635c9adc5dea0000081525060055f820151815f015f820151815f01556020820151816001015550506020820151816002015560408201518160030155606082015181600401556080820151816005015560a0820151816006015560c0820151816007015560e082015181600801559050506101d56005604051806101000160405290815f82016040518060400160405290815f820154815260200160018201548152505081526020016002820154815260200160038201548152602001600482015481526020016005820154815260200160068201548152602001600782015481526020016008820154815250506101dd60201b60201c565b5050506105bd565b5f60018260a0015110156102045760405163245ca84960e11b815260040160405180910390fd5b670de0b6b3a76400008260a00151111561023157604051637a9fd76760e11b815260040160405180910390fd5b670de0b6b3a76400008260c00151111561025e576040516306e2083d60e41b815260040160405180910390fd5b60018260e0015110156102845760405163505c925360e11b815260040160405180910390fd5b815160200151600111156102ab5760405163ec4abc2f60e01b815260040160405180910390fd5b815151603c11156102f0576040516302b2633f60e21b81526020600482015260096024820152684c6f636b44656c617960b81b60448201526064015b60405180910390fd5b81515162278d00101561033257604051637ac6b2f960e11b81526020600482015260096024820152684c6f636b44656c617960b81b60448201526064016102e7565b6020820151603c1115610376576040516302b2633f60e21b815260206004820152600b60248201526a566f74696e6744656c617960a81b60448201526064016102e7565b602082015162278d0010156103bc57604051637ac6b2f960e11b815260206004820152600b60248201526a566f74696e6744656c617960a81b60448201526064016102e7565b6040820151603c1115610403576040516302b2633f60e21b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b60448201526064016102e7565b604082015162278d00101561044c57604051637ac6b2f960e11b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b60448201526064016102e7565b6060820151603c1115610493576040516302b2633f60e21b815260206004820152600e60248201526d457865637574696f6e44656c617960901b60448201526064016102e7565b606082015162278d0010156104dc57604051637ac6b2f960e11b815260206004820152600e60248201526d457865637574696f6e44656c617960901b60448201526064016102e7565b6080820151603c1115610520576040516302b2633f60e21b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b60448201526064016102e7565b608082015162278d00101561056657604051637ac6b2f960e11b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b60448201526064016102e7565b506001919050565b6001600160a01b0381168114610582575f5ffd5b50565b5f5f60408385031215610596575f5ffd5b82516105a18161056e565b60208401519092506105b28161056e565b809150509250929050565b6080516125866105ea5f395f81816101bf015281816105d301528181610cf40152610e0101526125865ff3fe608060405234801561000f575f5ffd5b5060043610610132575f3560e01c80638a4fb16a116100b4578063c7f758a811610079578063c7f758a81461038b578063da35c664146103ab578063edb884e9146103b4578063f752f8b5146103c7578063fe0d94c1146103da578063fe7f0e8b146103ed575f5ffd5b80638a4fb16a146102705780639080936f14610333578063b907c0ea14610353578063c3a5051514610366578063c4bf093614610378575f5ffd5b80634800d97f116100fa5780634800d97f146101ba5780636a18ff7a146101f95780636bd50cef1461020c57806371706cbe146102215780637f7bc23a1461022a575f5ffd5b80630126795114610136578063083b42461461015e57806330eb4bdd146101715780633b8f880d1461018457806347e7ef24146101a5575b5f5ffd5b610149610144366004611f90565b610400565b60405190151581526020015b60405180910390f35b61014961016c366004611fab565b610457565b61014961017f366004611fc2565b6104ed565b610197610192366004611ff9565b61056f565b604051908152602001610155565b6101b86101b3366004611ff9565b6105c6565b005b6101e17f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610155565b610149610207366004612023565b61066b565b61021461081e565b60405161015591906120b9565b61019760105481565b61025b6102383660046120c8565b600260209081525f92835260408084209091529082529020805460019091015482565b60408051928352602083019190915201610155565b6102f561027e366004611fab565b604080516080810182525f808252602082018190529181018290526060810191909152505f90815260046020908152604091829020825160808101845281548152600182015492810192909252600201546001600160a01b03811692820192909252600160a01b90910460ff161515606082015290565b604051610155919081518152602080830151908201526040808301516001600160a01b03169082015260609182015115159181019190915260800190565b610346610341366004611fab565b610885565b604051610155919061211f565b6101b8610361366004611f90565b6109c6565b5f546101e1906001600160a01b031681565b610197610386366004611ff9565b610a44565b61039e610399366004611fab565b610a59565b604051610155919061212d565b610197600f5481565b6101b86103c236600461222f565b610b76565b6101b86103d5366004611fab565b610c29565b6101496103e8366004611fab565b610d22565b6101976103fb366004611fab565b610f89565b5f805433906001600160a01b0316818114610446576040516307aa341360e31b81526001600160a01b039283166004820152911660248201526044015b60405180910390fd5b505061045182610fa6565b92915050565b5f8181526001602052604081206006600982015460ff16600781111561047f5761047f6120eb565b0361049d57604051630595c07760e51b815260040160405180910390fd5b60066104a884610885565b60078111156104b9576104b96120eb565b146104d7576040516308adbf2160e01b815260040160405180910390fd5b600901805460ff19166006179055506001919050565b335f90815260036020526040812081906105069061119e565b6006549091503382828181111561054957604051631186c4ab60e31b81526001600160a01b0390931660048401526024830191909152604482015260640161043d565b505060055461055c9150859083906111b7565b5061056685610fa6565b95945050505050565b5f42820361059e576001600160a01b0383165f9081526003602052604090206105979061119e565b9050610451565b6001600160a01b0383165f9081526003602052604090206105bf90836112b2565b9392505050565b6105fb6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163330846112fc565b6001600160a01b0382165f90815260036020526040902061061c9082611369565b610627600e82611369565b6040518181526001600160a01b0383169033907f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f629060200160405180910390a35050565b5f5f61067685610885565b9050600181600781111561068c5761068c6120eb565b146106aa57604051632d85b5cb60e01b815260040160405180910390fd5b5f8581526001602052604081206106d8906106c4906113ae565b335f908152600360205260409020906112b2565b5f878152600260209081526040808320338452909152812080546001820154939450909261070691906122e9565b61071090846122fc565b90503381888181111561074f57604051631186c4ab60e31b81526001600160a01b0390931660048401526024830191909152604482015260640161043d565b5050505f888152600160205260409020600c01861561079d5787835f015f82825461077a91906122e9565b90915550508054889082905f906107929084906122e9565b909155506107d09050565b87836001015f8282546107b091906122e9565b9250508190555087816001015f8282546107ca91906122e9565b90915550505b604080518815158152602081018a905233918b917fcbdf6214089cba887ecbf35a0b6a734589959c9763342c756bb2a80ca2bc9f6e910160405180910390a350600198975050505050505050565b610826611ec7565b506040805161014081018252600554610100820190815260065461012083015281526007546020820152600854918101919091526009546060820152600a546080820152600b5460a0820152600c5460c0820152600d5460e082015290565b5f600f54821082906108ad576040516320c68f5560e21b815260040161043d91815260200190565b505f8281526001602052604090206108c4816113c3565b156108d6576009015460ff1692915050565b600a8101545f546001600160a01b039081169116146108f85750600692915050565b4261090b81610906846113ae565b101590565b1561091957505f9392505050565b6109268161090684611404565b15610935575060019392505050565b5f61094a610942846113ae565b600e906112b2565b90505f610957848361141b565b5090505f81600281111561096d5761096d6120eb565b1461097e5750600495945050505050565b61098b8361090686611562565b1561099c5750600295945050505050565b6109a98361090686611579565b156109ba5750600395945050505050565b50600795945050505050565b33308181146109fb5760405163f18e42a160e01b81526001600160a01b0392831660048201529116602482015260440161043d565b50505f80546001600160a01b0319166001600160a01b038316908117825560405190917f58b9023fe926532b1c6a397a00102fcce3ac81725a232d9d235104cd1a28e43291a250565b5f6105bf8383610a546005611590565b6111b7565b610a61611f17565b5f828152600160208181526040928390208351610200810190945280546101c08501908152928101546101e085015260c08401928352600281015460e0850152600381015461010085015260048101546101208501526005810154610140850152600681015461016085015260078082015461018086015260088201546101a0860152928452600981015490929184019160ff90911690811115610b0757610b076120eb565b6007811115610b1857610b186120eb565b815260098201546001600160a01b036101009091048116602080840191909152600a840154909116604080840191909152600b84015460608401528051808201909152600c8401548152600d90930154908301526080015292915050565b3330818114610bab5760405163f18e42a160e01b81526001600160a01b0392831660048201529116602482015260440161043d565b5050610bb6816115bc565b508051805160055560209081015160065581015160075560408082015160085560608201516009556080820151600a5560a0820151600b5560c0820151600c5560e0820151600d555142907f7d096a764e5ea306d0946e3a05ca9ffd9ea0af82aecf12cf8eee26b2485f9a0c905f90a250565b5f8181526004602052604090206002810154600160a01b900460ff1615610c63576040516321e3810d60e01b815260040160405180910390fd5b610c71428260010154111590565b60018201544291610c9e57604051630d02d71b60e21b81526004810192909252602482015260440161043d565b505060028101805460ff60a01b1916600160a01b17905560405182907fc55414f0020bbb9a6427d371f8c17b59299e683de70d4e659e061bb9ba303d9f905f90a260028101548154610d1e916001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811692911690611948565b5050565b5f5f610d2d83610885565b90506003816007811115610d4357610d436120eb565b14610d615760405163b6ae35c160e01b815260040160405180910390fd5b5f83815260016020526040808220600981018054600560ff199091161790819055825163504d080b60e01b815292519193926101009091046001600160a01b03169163504d080b9160048082019286929091908290030181865afa158015610dcb573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610df2919081019061230f565b90505f5b8151811015610f53577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316828281518110610e3b57610e3b612488565b60200260200101515f01516001600160a01b031603610e6d576040516304f6c78960e21b815260040160405180910390fd5b5f828281518110610e8057610e80612488565b60200260200101515f01516001600160a01b0316838381518110610ea657610ea6612488565b602002602001015160200151604051610ebf919061249c565b5f604051808303815f865af19150503d805f8114610ef8576040519150601f19603f3d011682016040523d82523d5f602084013e610efd565b606091505b5050905080838381518110610f1457610f14612488565b60200260200101515f015190610f4957604051633cb8c30160e01b81526001600160a01b03909116600482015260240161043d565b5050600101610df6565b5060405185907f712ae1383f79ac853f8d882153778e0260ef8f03b504e2866e0593e04d2b291f905f90a2506001949350505050565b5f428203610f9b57610451600e61119e565b610451600e836112b2565b600f80545f9182919082610fb9836124b2565b909155506040805161020081019091526005546101c082019081526006546101e083015260c0820190815260075460e0830152600854610100830152600954610120830152600a54610140830152600b54610160830152600c54610180830152600d546101a08301528152909150602081015f81526001600160a01b038086166020808401919091525f8054909216604080850191909152426060808601919091528151808301835284815280840185905260809586015286845260018084529382902086518051805183558501518287015580850151600283015592830151600382015590820151600482015593810151600585015560a0810151600685015560c081015160078086019190915560e0909101516008850155908401516009840180549193909260ff199092169184908111156110f9576110f96120eb565b0217905550604082810151600983018054610100600160a81b0319166101006001600160a01b03938416021790556060840151600a840180546001600160a01b0319169183169190911790556080840151600b84015560a0909301518051600c84015560200151600d90920191909155519084169082907faa9a4d6243341331785569c732ffe9c81a3e9c2aafa58faab1afe4797668433f905f90a350600192915050565b5f6111a88261197e565b6001600160e01b031692915050565b335f9081526003602052604081206111cf90846119c3565b6111da600e846119c3565b601080545f91826111ea836124b2565b919050559050604051806080016040528085815260200161120b4286611a61565b81526001600160a01b0380881660208084018290525f6040948501819052868152600482528490208551815590850151600182015584840151600290910180546060909601511515600160a01b026001600160a81b031990961691909316179390931790555182907f35572b4263de54e794ffcb886cb01a64870892fe896854fd2ca93810d5c66f7e906112a29088815260200190565b60405180910390a3949350505050565b5f6112bc82421190565b6112d95760405163e34cb3b360e01b815260040160405180910390fd5b6112ec6112e583611a6c565b8490611aa0565b6001600160e01b03169392505050565b6040516001600160a01b0384811660248301528381166044830152606482018390526113639186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050611ae9565b50505050565b805f03611374575050565b5f61137e8361197e565b90506113a761138c42611a6c565b61139584611b55565b61139f90846124ca565b859190611b88565b5050505050565b5f61045182600b0154835f0160020154611a61565b60098101545f9060ff1660058160078111156113e1576113e16120eb565b14806105bf575060068160078111156113fc576113fc6120eb565b149392505050565b5f610451611411836113ae565b6003840154611a61565b5f5f835f01600801545f036114355750600290505f61155b565b600884015483101561144c5750600190508061155b565b5f61146884865f0160060154670de0b6b3a76400006001611ba2565b9050805f0361147e57600280925092505061155b565b838111156114945760026003925092505061155b565b600c850154600d8601545f916114a9916122e9565b9050818110156114c2576001600493509350505061155b565b600c8601548190036114dc575f600893509350505061155b565b60078601545f90611500906114f990670de0b6b3a76400006122e9565b6002611be4565b90505f6115188383670de0b6b3a76400006001611ba2565b9050828111156115335760026006955095505050505061155b565b600c880154811061154f5760016009955095505050505061155b565b5f600a95509550505050505b9250929050565b5f61045161156f83611404565b6004840154611a61565b5f61045161158683611562565b6005840154611a61565b5f6104516115b2600584600201546115a891906124fd565b8460030154611a61565b8360040154611a61565b5f60018260a0015110156115e35760405163245ca84960e11b815260040160405180910390fd5b670de0b6b3a76400008260a00151111561161057604051637a9fd76760e11b815260040160405180910390fd5b670de0b6b3a76400008260c00151111561163d576040516306e2083d60e41b815260040160405180910390fd5b60018260e0015110156116635760405163505c925360e11b815260040160405180910390fd5b8151602001516001111561168a5760405163ec4abc2f60e01b815260040160405180910390fd5b815151603c11156116ca576040516302b2633f60e21b81526020600482015260096024820152684c6f636b44656c617960b81b604482015260640161043d565b81515162278d00101561170c57604051637ac6b2f960e11b81526020600482015260096024820152684c6f636b44656c617960b81b604482015260640161043d565b6020820151603c1115611750576040516302b2633f60e21b815260206004820152600b60248201526a566f74696e6744656c617960a81b604482015260640161043d565b602082015162278d00101561179657604051637ac6b2f960e11b815260206004820152600b60248201526a566f74696e6744656c617960a81b604482015260640161043d565b6040820151603c11156117dd576040516302b2633f60e21b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b604482015260640161043d565b604082015162278d00101561182657604051637ac6b2f960e11b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b604482015260640161043d565b6060820151603c111561186d576040516302b2633f60e21b815260206004820152600e60248201526d457865637574696f6e44656c617960901b604482015260640161043d565b606082015162278d0010156118b657604051637ac6b2f960e11b815260206004820152600e60248201526d457865637574696f6e44656c617960901b604482015260640161043d565b6080820151603c11156118fa576040516302b2633f60e21b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b604482015260640161043d565b608082015162278d00101561194057604051637ac6b2f960e11b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b604482015260640161043d565b506001919050565b6040516001600160a01b0383811660248301526044820183905261197991859182169063a9059cbb90606401611331565b505050565b80545f9080156119bb576119a4836119976001846122fc565b5f91825260209091200190565b5464010000000090046001600160e01b03166105bf565b5f9392505050565b805f036119ce575050565b5f6119d88361197e565b90505f6119e483611b55565b90503382826001600160e01b038082169083161015611a3857604051631186c4ab60e31b81526001600160a01b0390931660048401526001600160e01b03918216602484015216604482015260640161043d565b505050611a59611a4742611a6c565b611a518385612510565b869190611b88565b505050505050565b5f6105bf82846122e9565b5f63ffffffff821115611a9c576040516306dfcc6560e41b8152602060048201526024810183905260440161043d565b5090565b81545f9081611ab185858385611c17565b90508015611adf57611ac8856119976001846122fc565b5464010000000090046001600160e01b0316610566565b505f949350505050565b5f5f60205f8451602086015f885af180611b08576040513d5f823e3d81fd5b50505f513d91508115611b1f578060011415611b2c565b6001600160a01b0384163b155b1561136357604051635274afe760e01b81526001600160a01b038516600482015260240161043d565b5f6001600160e01b03821115611a9c576040516306dfcc6560e41b815260e060048201526024810183905260440161043d565b5f80611b95858585611c72565b915091505b935093915050565b5f611bcf611baf83611dba565b8015611bca57505f8480611bc557611bc56124e9565b868809115b151590565b611bda868686611de6565b61056691906122e9565b5f815f03611bf657611bf66012611e9c565b816001840381611c0857611c086124e9565b04600101831515029392505050565b5f5b81831015611c6a575f611c2c8484611ead565b5f8781526020902090915063ffffffff86169082015463ffffffff161115611c5657809250611c64565b611c618160016122e9565b93505b50611c19565b509392505050565b82545f9081908015611d61575f611c8e876119976001856122fc565b805490915063ffffffff8082169164010000000090046001600160e01b0316908816821115611cd057604051632520601d60e01b815260040160405180910390fd5b8763ffffffff168263ffffffff1603611d0457825463ffffffff166401000000006001600160e01b03891602178355611d53565b6040805180820190915263ffffffff808a1682526001600160e01b03808a1660208085019182528d54600181018f555f8f81529190912094519151909216640100000000029216919091179101555b9450859350611b9a92505050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a555f8a815291822095519251909316640100000000029190931617920191909155905081611b9a565b5f6002826003811115611dcf57611dcf6120eb565b611dd9919061252f565b60ff166001149050919050565b5f838302815f1985870982811083820303915050805f03611e1a57838281611e1057611e106124e9565b04925050506105bf565b808411611e3157611e316003851502601118611e9c565b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b634e487b715f52806020526024601cfd5b5f611ebb60028484186124fd565b6105bf908484166122e9565b6040805161014081019091525f6101008201818152610120830191909152819081526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6040518060c00160405280611f2a611ec7565b81526020015f81526020015f6001600160a01b031681526020015f6001600160a01b031681526020015f8152602001611f7460405180604001604052805f81526020015f81525090565b905290565b6001600160a01b0381168114611f8d575f5ffd5b50565b5f60208284031215611fa0575f5ffd5b81356105bf81611f79565b5f60208284031215611fbb575f5ffd5b5035919050565b5f5f60408385031215611fd3575f5ffd5b8235611fde81611f79565b91506020830135611fee81611f79565b809150509250929050565b5f5f6040838503121561200a575f5ffd5b823561201581611f79565b946020939093013593505050565b5f5f5f60608486031215612035575f5ffd5b833592506020840135915060408401358015158114612052575f5ffd5b809150509250925092565b8051805183526020810151602084015250602081015160408301526040810151606083015260608101516080830152608081015160a083015260a081015160c083015260c081015160e083015260e08101516101008301525050565b6101208101610451828461205d565b5f5f604083850312156120d9575f5ffd5b823591506020830135611fee81611f79565b634e487b7160e01b5f52602160045260245ffd5b6008811061211b57634e487b7160e01b5f52602160045260245ffd5b9052565b6020810161045182846120ff565b5f6101e08201905061214082845161205d565b60208301516121536101208401826120ff565b5060408301516001600160a01b03908116610140840152606084015116610160830152608083015161018083015260a09092015180516101a0830152602001516101c09091015290565b634e487b7160e01b5f52604160045260245ffd5b604051610100810167ffffffffffffffff811182821017156121d5576121d561219d565b60405290565b6040805190810167ffffffffffffffff811182821017156121d5576121d561219d565b604051601f8201601f1916810167ffffffffffffffff811182821017156122275761222761219d565b604052919050565b5f81830361012081128015612242575f5ffd5b5061224b6121b1565b6040821215612258575f5ffd5b6122606121db565b843581526020808601358183015290825260408086013591830191909152606080860135918301919091526080808601359183019190915260a0808601359183019190915260c0808601359183019190915260e080860135918301919091526101009094013593810193909352509092915050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610451576104516122d5565b81810381811115610451576104516122d5565b5f6020828403121561231f575f5ffd5b815167ffffffffffffffff811115612335575f5ffd5b8201601f81018413612345575f5ffd5b805167ffffffffffffffff81111561235f5761235f61219d565b8060051b61236f602082016121fe565b9182526020818401810192908101908784111561238a575f5ffd5b6020850192505b8383101561247d57825167ffffffffffffffff8111156123af575f5ffd5b85016040818a03601f190112156123c4575f5ffd5b6123cc6121db565b60208201516123da81611f79565b8152604082015167ffffffffffffffff8111156123f5575f5ffd5b60208184010192505089601f83011261240c575f5ffd5b815167ffffffffffffffff8111156124265761242661219d565b612439601f8201601f19166020016121fe565b8181528b602083860101111561244d575f5ffd5b8160208501602083015e5f6020838301015280602084015250508084525050602082019150602083019250612391565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f82518060208501845e5f920191825250919050565b5f600182016124c3576124c36122d5565b5060010190565b6001600160e01b038181168382160190811115610451576104516122d5565b634e487b7160e01b5f52601260045260245ffd5b5f8261250b5761250b6124e9565b500490565b6001600160e01b038281168282160390811115610451576104516122d5565b5f60ff831680612541576125416124e9565b8060ff8416069150509291505056fea264697066735822122077eaee8bcecee1da92fe02f435e70affa3d762b229c317d6e8d4f3163e1aa56c64736f6c634300081b0033";
4
4
  /**
5
5
  * Governance link references.
6
6
  */ export const GovernanceLinkReferences = {};
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * GovernanceProposer bytecode.
3
3
  */
4
- export declare const GovernanceProposerBytecode = "0x60e060405234801561000f575f5ffd5b50604051610bf0380380610bf083398101604081905261002e916100c7565b608082905260a08190528181610045600282610106565b60805160a0519091821161007a576040516365424f5b60e11b8152600481019290925260248201526044015b60405180910390fd5b505060a05160805190808211156100ad5760405163103804ad60e11b815260048101929092526024820152604401610071565b5050506001600160a01b0390931660c05250610125915050565b5f5f5f606084860312156100d9575f5ffd5b83516001600160a01b03811681146100ef575f5ffd5b602085015160409095015190969495509392505050565b5f8261012057634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c051610a8661016a5f395f818160af01528181610501015261083a01525f8181610168015261080c01525f818161021a015261040a0152610a865ff3fe608060405234801561000f575f5ffd5b50600436106100a6575f3560e01c80636dd7d8ea1161006e5780636dd7d8ea14610192578063a97f36a8146101a5578063b59c46fb146101ad578063c9e525df14610215578063d11eb2b21461023c578063de7b5d141461024f575f5ffd5b806306433b1b146100aa5780630d61b519146100ee57806362c69d7214610111578063693f917e146101635780636c1032af1461018a575b5f5ffd5b6100d17f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6101016100fc366004610908565b610257565b60405190151581526020016100e5565b61015561011f366004610936565b6001600160a01b038084165f90815260208181526040808320868452825280832093851683526002909301905220549392505050565b6040519081526020016100e5565b6101557f000000000000000000000000000000000000000000000000000000000000000081565b6100d16104fe565b6101016101a0366004610975565b610584565b610155600581565b6101f06101bb366004610997565b5f602081815292815260408082209093529081522080546001909101546001600160a01b03811690600160a01b900460ff1683565b604080519384526001600160a01b0390921660208401521515908201526060016100e5565b6101557f000000000000000000000000000000000000000000000000000000000000000081565b61015561024a366004610908565b610806565b6100d1610837565b5f5f610261610837565b9050806001600160a01b0381163b61029d57604051635fa9262560e01b81526001600160a01b0390911660048201526024015b60405180910390fd5b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102df573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030391906109c1565b90505f61030f82610806565b90508086106103315760405163117e3a7760e31b815260040160405180910390fd5b8061033d6005886109d8565b1015868290916103695760405163c3d7aa4f60e01b815260048101929092526024820152604401610294565b50506001600160a01b0384165f90815260208181526040808320898452909152902060018101548790600160a01b900460ff16156103bd5760405163058240ed60e31b815260040161029491815260200190565b5060018101546001600160a01b03166103e957604051630b560ca160e11b815260040160405180910390fd5b60018101546001600160a01b03165f908152600282016020526040902054807f000000000000000000000000000000000000000000000000000000000000000080821015610453576040516357d5327960e11b815260048101929092526024820152604401610294565b505060018201805460ff60a01b198116600160a01b1790915560405189916001600160a01b0316907f7bfd03e44f31b1867e10c41d419cd8073b4719d321ccc5c3a3c79ac2babab3c3905f90a360018201546104b7906001600160a01b0316610894565b60018301546001600160a01b0316906104ef576040516323653eff60e21b81526001600160a01b039091166004820152602401610294565b50600198975050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663289b3c0d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561055b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061057f91906109f7565b905090565b5f5f61058e610837565b9050806001600160a01b0381163b6105c557604051635fa9262560e01b81526001600160a01b039091166004820152602401610294565b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610607573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061062b91906109c1565b90505f61063782610806565b6001600160a01b0385165f9081526020818152604080832084845290915290208054919250908311839061068157604051631d30a86560e11b815260040161029491815260200190565b505f846001600160a01b0316633b10244b6040518163ffffffff1660e01b81526004016020604051808303815f875af11580156106c0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106e491906109f7565b905033816001600160a01b038116821461072457604051633a8db46b60e21b81526001600160a01b03928316600482015291166024820152604401610294565b50506001600160a01b0388165f90815260028301602052604081208054600192906107509084906109d8565b909155505083825560018201546001600160a01b0389811691161480159061079e575060018201546001600160a01b039081165f90815260028401602052604080822054928b168252902054115b156107c1576001820180546001600160a01b0319166001600160a01b038a161790555b604051339084906001600160a01b038b16907f75b35ca960bbb2cc550471a4098b1a96255dd657fe926e331754cd7c2e4489b3905f90a4506001979650505050505050565b5f6108317f000000000000000000000000000000000000000000000000000000000000000083610a12565b92915050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663971b0e6b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561055b573d5f5f3e3d5ffd5b5f61089d6104fe565b604051630126795160e01b81526001600160a01b03848116600483015291909116906301267951906024016020604051808303815f875af11580156108e4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108319190610a31565b5f60208284031215610918575f5ffd5b5035919050565b6001600160a01b0381168114610933575f5ffd5b50565b5f5f5f60608486031215610948575f5ffd5b83356109538161091f565b925060208401359150604084013561096a8161091f565b809150509250925092565b5f60208284031215610985575f5ffd5b81356109908161091f565b9392505050565b5f5f604083850312156109a8575f5ffd5b82356109b38161091f565b946020939093013593505050565b5f602082840312156109d1575f5ffd5b5051919050565b8082018082111561083157634e487b7160e01b5f52601160045260245ffd5b5f60208284031215610a07575f5ffd5b81516109908161091f565b5f82610a2c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215610a41575f5ffd5b81518015158114610990575f5ffdfea26469706673582212207f0997b6b7fc980205cd76f0e1d0ff74e2b67823a17905c6388a95d8c468c26e64736f6c634300081b0033";
4
+ export declare const GovernanceProposerBytecode = "0x60e060405234801561000f575f5ffd5b50604051610bf0380380610bf083398101604081905261002e916100c7565b608082905260a08190528181610045600282610106565b60805160a0519091821161007a576040516365424f5b60e11b8152600481019290925260248201526044015b60405180910390fd5b505060a05160805190808211156100ad5760405163103804ad60e11b815260048101929092526024820152604401610071565b5050506001600160a01b0390931660c05250610125915050565b5f5f5f606084860312156100d9575f5ffd5b83516001600160a01b03811681146100ef575f5ffd5b602085015160409095015190969495509392505050565b5f8261012057634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c051610a8661016a5f395f818160af01528181610501015261083a01525f8181610168015261080c01525f818161021a015261040a0152610a865ff3fe608060405234801561000f575f5ffd5b50600436106100a6575f3560e01c80636dd7d8ea1161006e5780636dd7d8ea14610192578063a97f36a8146101a5578063b59c46fb146101ad578063c9e525df14610215578063d11eb2b21461023c578063de7b5d141461024f575f5ffd5b806306433b1b146100aa5780630d61b519146100ee57806362c69d7214610111578063693f917e146101635780636c1032af1461018a575b5f5ffd5b6100d17f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6101016100fc366004610908565b610257565b60405190151581526020016100e5565b61015561011f366004610936565b6001600160a01b038084165f90815260208181526040808320868452825280832093851683526002909301905220549392505050565b6040519081526020016100e5565b6101557f000000000000000000000000000000000000000000000000000000000000000081565b6100d16104fe565b6101016101a0366004610975565b610584565b610155600581565b6101f06101bb366004610997565b5f602081815292815260408082209093529081522080546001909101546001600160a01b03811690600160a01b900460ff1683565b604080519384526001600160a01b0390921660208401521515908201526060016100e5565b6101557f000000000000000000000000000000000000000000000000000000000000000081565b61015561024a366004610908565b610806565b6100d1610837565b5f5f610261610837565b9050806001600160a01b0381163b61029d57604051635fa9262560e01b81526001600160a01b0390911660048201526024015b60405180910390fd5b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102df573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030391906109c1565b90505f61030f82610806565b90508086106103315760405163117e3a7760e31b815260040160405180910390fd5b8061033d6005886109d8565b1015868290916103695760405163c3d7aa4f60e01b815260048101929092526024820152604401610294565b50506001600160a01b0384165f90815260208181526040808320898452909152902060018101548790600160a01b900460ff16156103bd5760405163058240ed60e31b815260040161029491815260200190565b5060018101546001600160a01b03166103e957604051630b560ca160e11b815260040160405180910390fd5b60018101546001600160a01b03165f908152600282016020526040902054807f000000000000000000000000000000000000000000000000000000000000000080821015610453576040516357d5327960e11b815260048101929092526024820152604401610294565b505060018201805460ff60a01b198116600160a01b1790915560405189916001600160a01b0316907f7bfd03e44f31b1867e10c41d419cd8073b4719d321ccc5c3a3c79ac2babab3c3905f90a360018201546104b7906001600160a01b0316610894565b60018301546001600160a01b0316906104ef576040516323653eff60e21b81526001600160a01b039091166004820152602401610294565b50600198975050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663289b3c0d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561055b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061057f91906109f7565b905090565b5f5f61058e610837565b9050806001600160a01b0381163b6105c557604051635fa9262560e01b81526001600160a01b039091166004820152602401610294565b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610607573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061062b91906109c1565b90505f61063782610806565b6001600160a01b0385165f9081526020818152604080832084845290915290208054919250908311839061068157604051631d30a86560e11b815260040161029491815260200190565b505f846001600160a01b0316633b10244b6040518163ffffffff1660e01b81526004016020604051808303815f875af11580156106c0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106e491906109f7565b905033816001600160a01b038116821461072457604051633a8db46b60e21b81526001600160a01b03928316600482015291166024820152604401610294565b50506001600160a01b0388165f90815260028301602052604081208054600192906107509084906109d8565b909155505083825560018201546001600160a01b0389811691161480159061079e575060018201546001600160a01b039081165f90815260028401602052604080822054928b168252902054115b156107c1576001820180546001600160a01b0319166001600160a01b038a161790555b604051339084906001600160a01b038b16907f75b35ca960bbb2cc550471a4098b1a96255dd657fe926e331754cd7c2e4489b3905f90a4506001979650505050505050565b5f6108317f000000000000000000000000000000000000000000000000000000000000000083610a12565b92915050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663971b0e6b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561055b573d5f5f3e3d5ffd5b5f61089d6104fe565b604051630126795160e01b81526001600160a01b03848116600483015291909116906301267951906024016020604051808303815f875af11580156108e4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108319190610a31565b5f60208284031215610918575f5ffd5b5035919050565b6001600160a01b0381168114610933575f5ffd5b50565b5f5f5f60608486031215610948575f5ffd5b83356109538161091f565b925060208401359150604084013561096a8161091f565b809150509250925092565b5f60208284031215610985575f5ffd5b81356109908161091f565b9392505050565b5f5f604083850312156109a8575f5ffd5b82356109b38161091f565b946020939093013593505050565b5f602082840312156109d1575f5ffd5b5051919050565b8082018082111561083157634e487b7160e01b5f52601160045260245ffd5b5f60208284031215610a07575f5ffd5b81516109908161091f565b5f82610a2c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215610a41575f5ffd5b81518015158114610990575f5ffdfea2646970667358221220710c8ad88858ee097305f5616001ca64c1a1b844f9ac82f6c956dd7c0c98760864736f6c634300081b0033";
5
5
  /**
6
6
  * GovernanceProposer link references.
7
7
  */
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * GovernanceProposer bytecode.
3
- */ export const GovernanceProposerBytecode = "0x60e060405234801561000f575f5ffd5b50604051610bf0380380610bf083398101604081905261002e916100c7565b608082905260a08190528181610045600282610106565b60805160a0519091821161007a576040516365424f5b60e11b8152600481019290925260248201526044015b60405180910390fd5b505060a05160805190808211156100ad5760405163103804ad60e11b815260048101929092526024820152604401610071565b5050506001600160a01b0390931660c05250610125915050565b5f5f5f606084860312156100d9575f5ffd5b83516001600160a01b03811681146100ef575f5ffd5b602085015160409095015190969495509392505050565b5f8261012057634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c051610a8661016a5f395f818160af01528181610501015261083a01525f8181610168015261080c01525f818161021a015261040a0152610a865ff3fe608060405234801561000f575f5ffd5b50600436106100a6575f3560e01c80636dd7d8ea1161006e5780636dd7d8ea14610192578063a97f36a8146101a5578063b59c46fb146101ad578063c9e525df14610215578063d11eb2b21461023c578063de7b5d141461024f575f5ffd5b806306433b1b146100aa5780630d61b519146100ee57806362c69d7214610111578063693f917e146101635780636c1032af1461018a575b5f5ffd5b6100d17f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6101016100fc366004610908565b610257565b60405190151581526020016100e5565b61015561011f366004610936565b6001600160a01b038084165f90815260208181526040808320868452825280832093851683526002909301905220549392505050565b6040519081526020016100e5565b6101557f000000000000000000000000000000000000000000000000000000000000000081565b6100d16104fe565b6101016101a0366004610975565b610584565b610155600581565b6101f06101bb366004610997565b5f602081815292815260408082209093529081522080546001909101546001600160a01b03811690600160a01b900460ff1683565b604080519384526001600160a01b0390921660208401521515908201526060016100e5565b6101557f000000000000000000000000000000000000000000000000000000000000000081565b61015561024a366004610908565b610806565b6100d1610837565b5f5f610261610837565b9050806001600160a01b0381163b61029d57604051635fa9262560e01b81526001600160a01b0390911660048201526024015b60405180910390fd5b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102df573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030391906109c1565b90505f61030f82610806565b90508086106103315760405163117e3a7760e31b815260040160405180910390fd5b8061033d6005886109d8565b1015868290916103695760405163c3d7aa4f60e01b815260048101929092526024820152604401610294565b50506001600160a01b0384165f90815260208181526040808320898452909152902060018101548790600160a01b900460ff16156103bd5760405163058240ed60e31b815260040161029491815260200190565b5060018101546001600160a01b03166103e957604051630b560ca160e11b815260040160405180910390fd5b60018101546001600160a01b03165f908152600282016020526040902054807f000000000000000000000000000000000000000000000000000000000000000080821015610453576040516357d5327960e11b815260048101929092526024820152604401610294565b505060018201805460ff60a01b198116600160a01b1790915560405189916001600160a01b0316907f7bfd03e44f31b1867e10c41d419cd8073b4719d321ccc5c3a3c79ac2babab3c3905f90a360018201546104b7906001600160a01b0316610894565b60018301546001600160a01b0316906104ef576040516323653eff60e21b81526001600160a01b039091166004820152602401610294565b50600198975050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663289b3c0d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561055b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061057f91906109f7565b905090565b5f5f61058e610837565b9050806001600160a01b0381163b6105c557604051635fa9262560e01b81526001600160a01b039091166004820152602401610294565b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610607573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061062b91906109c1565b90505f61063782610806565b6001600160a01b0385165f9081526020818152604080832084845290915290208054919250908311839061068157604051631d30a86560e11b815260040161029491815260200190565b505f846001600160a01b0316633b10244b6040518163ffffffff1660e01b81526004016020604051808303815f875af11580156106c0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106e491906109f7565b905033816001600160a01b038116821461072457604051633a8db46b60e21b81526001600160a01b03928316600482015291166024820152604401610294565b50506001600160a01b0388165f90815260028301602052604081208054600192906107509084906109d8565b909155505083825560018201546001600160a01b0389811691161480159061079e575060018201546001600160a01b039081165f90815260028401602052604080822054928b168252902054115b156107c1576001820180546001600160a01b0319166001600160a01b038a161790555b604051339084906001600160a01b038b16907f75b35ca960bbb2cc550471a4098b1a96255dd657fe926e331754cd7c2e4489b3905f90a4506001979650505050505050565b5f6108317f000000000000000000000000000000000000000000000000000000000000000083610a12565b92915050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663971b0e6b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561055b573d5f5f3e3d5ffd5b5f61089d6104fe565b604051630126795160e01b81526001600160a01b03848116600483015291909116906301267951906024016020604051808303815f875af11580156108e4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108319190610a31565b5f60208284031215610918575f5ffd5b5035919050565b6001600160a01b0381168114610933575f5ffd5b50565b5f5f5f60608486031215610948575f5ffd5b83356109538161091f565b925060208401359150604084013561096a8161091f565b809150509250925092565b5f60208284031215610985575f5ffd5b81356109908161091f565b9392505050565b5f5f604083850312156109a8575f5ffd5b82356109b38161091f565b946020939093013593505050565b5f602082840312156109d1575f5ffd5b5051919050565b8082018082111561083157634e487b7160e01b5f52601160045260245ffd5b5f60208284031215610a07575f5ffd5b81516109908161091f565b5f82610a2c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215610a41575f5ffd5b81518015158114610990575f5ffdfea26469706673582212207f0997b6b7fc980205cd76f0e1d0ff74e2b67823a17905c6388a95d8c468c26e64736f6c634300081b0033";
3
+ */ export const GovernanceProposerBytecode = "0x60e060405234801561000f575f5ffd5b50604051610bf0380380610bf083398101604081905261002e916100c7565b608082905260a08190528181610045600282610106565b60805160a0519091821161007a576040516365424f5b60e11b8152600481019290925260248201526044015b60405180910390fd5b505060a05160805190808211156100ad5760405163103804ad60e11b815260048101929092526024820152604401610071565b5050506001600160a01b0390931660c05250610125915050565b5f5f5f606084860312156100d9575f5ffd5b83516001600160a01b03811681146100ef575f5ffd5b602085015160409095015190969495509392505050565b5f8261012057634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c051610a8661016a5f395f818160af01528181610501015261083a01525f8181610168015261080c01525f818161021a015261040a0152610a865ff3fe608060405234801561000f575f5ffd5b50600436106100a6575f3560e01c80636dd7d8ea1161006e5780636dd7d8ea14610192578063a97f36a8146101a5578063b59c46fb146101ad578063c9e525df14610215578063d11eb2b21461023c578063de7b5d141461024f575f5ffd5b806306433b1b146100aa5780630d61b519146100ee57806362c69d7214610111578063693f917e146101635780636c1032af1461018a575b5f5ffd5b6100d17f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6101016100fc366004610908565b610257565b60405190151581526020016100e5565b61015561011f366004610936565b6001600160a01b038084165f90815260208181526040808320868452825280832093851683526002909301905220549392505050565b6040519081526020016100e5565b6101557f000000000000000000000000000000000000000000000000000000000000000081565b6100d16104fe565b6101016101a0366004610975565b610584565b610155600581565b6101f06101bb366004610997565b5f602081815292815260408082209093529081522080546001909101546001600160a01b03811690600160a01b900460ff1683565b604080519384526001600160a01b0390921660208401521515908201526060016100e5565b6101557f000000000000000000000000000000000000000000000000000000000000000081565b61015561024a366004610908565b610806565b6100d1610837565b5f5f610261610837565b9050806001600160a01b0381163b61029d57604051635fa9262560e01b81526001600160a01b0390911660048201526024015b60405180910390fd5b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102df573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030391906109c1565b90505f61030f82610806565b90508086106103315760405163117e3a7760e31b815260040160405180910390fd5b8061033d6005886109d8565b1015868290916103695760405163c3d7aa4f60e01b815260048101929092526024820152604401610294565b50506001600160a01b0384165f90815260208181526040808320898452909152902060018101548790600160a01b900460ff16156103bd5760405163058240ed60e31b815260040161029491815260200190565b5060018101546001600160a01b03166103e957604051630b560ca160e11b815260040160405180910390fd5b60018101546001600160a01b03165f908152600282016020526040902054807f000000000000000000000000000000000000000000000000000000000000000080821015610453576040516357d5327960e11b815260048101929092526024820152604401610294565b505060018201805460ff60a01b198116600160a01b1790915560405189916001600160a01b0316907f7bfd03e44f31b1867e10c41d419cd8073b4719d321ccc5c3a3c79ac2babab3c3905f90a360018201546104b7906001600160a01b0316610894565b60018301546001600160a01b0316906104ef576040516323653eff60e21b81526001600160a01b039091166004820152602401610294565b50600198975050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663289b3c0d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561055b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061057f91906109f7565b905090565b5f5f61058e610837565b9050806001600160a01b0381163b6105c557604051635fa9262560e01b81526001600160a01b039091166004820152602401610294565b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610607573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061062b91906109c1565b90505f61063782610806565b6001600160a01b0385165f9081526020818152604080832084845290915290208054919250908311839061068157604051631d30a86560e11b815260040161029491815260200190565b505f846001600160a01b0316633b10244b6040518163ffffffff1660e01b81526004016020604051808303815f875af11580156106c0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106e491906109f7565b905033816001600160a01b038116821461072457604051633a8db46b60e21b81526001600160a01b03928316600482015291166024820152604401610294565b50506001600160a01b0388165f90815260028301602052604081208054600192906107509084906109d8565b909155505083825560018201546001600160a01b0389811691161480159061079e575060018201546001600160a01b039081165f90815260028401602052604080822054928b168252902054115b156107c1576001820180546001600160a01b0319166001600160a01b038a161790555b604051339084906001600160a01b038b16907f75b35ca960bbb2cc550471a4098b1a96255dd657fe926e331754cd7c2e4489b3905f90a4506001979650505050505050565b5f6108317f000000000000000000000000000000000000000000000000000000000000000083610a12565b92915050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663971b0e6b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561055b573d5f5f3e3d5ffd5b5f61089d6104fe565b604051630126795160e01b81526001600160a01b03848116600483015291909116906301267951906024016020604051808303815f875af11580156108e4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108319190610a31565b5f60208284031215610918575f5ffd5b5035919050565b6001600160a01b0381168114610933575f5ffd5b50565b5f5f5f60608486031215610948575f5ffd5b83356109538161091f565b925060208401359150604084013561096a8161091f565b809150509250925092565b5f60208284031215610985575f5ffd5b81356109908161091f565b9392505050565b5f5f604083850312156109a8575f5ffd5b82356109b38161091f565b946020939093013593505050565b5f602082840312156109d1575f5ffd5b5051919050565b8082018082111561083157634e487b7160e01b5f52601160045260245ffd5b5f60208284031215610a07575f5ffd5b81516109908161091f565b5f82610a2c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215610a41575f5ffd5b81518015158114610990575f5ffdfea2646970667358221220710c8ad88858ee097305f5616001ca64c1a1b844f9ac82f6c956dd7c0c98760864736f6c634300081b0033";
4
4
  /**
5
5
  * GovernanceProposer link references.
6
6
  */ export const GovernanceProposerLinkReferences = {};
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * HonkVerifier bytecode.
3
3
  */
4
- export declare const HonkVerifierBytecode = "0x60e0604052348015600e575f5ffd5b506302000000608052601960a05261040c60c05260805160a05160c05161525d61005a5f395f61063401525f818161073f01528181610d210152610dbd01525f6105d8015261525d5ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063ea50d0e41461002d575b5f5ffd5b61004061003b366004614e7f565b610054565b604051901515815260200160405180910390f35b5f6100626101c86020614f57565b8414610081576040516376ba560560e11b815260040160405180910390fd5b5f61008a6101a5565b90505f61009787876101ba565b9050601082604001516100aa9190614f6e565b84146100c95760405163fa06659360e01b815260040160405180910390fd5b5f6100e0828787865f015187604001516001610513565b90506101308686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050855185516060810151608090910151919350915060016105c2565b815160a001525f6101418383610737565b905080610161576040516313f8744360e31b815260040160405180910390fd5b5f61016d848685610838565b90508061018d576040516352ec174560e11b815260040160405180910390fd5b8180156101975750805b9a9950505050505050505050565b6101ad614957565b6101b56110b5565b905090565b6101c2614ad4565b5f805b6010811015610224576101f18583866101df826020614f81565b926101ec93929190614f94565b61199d565b8351826010811061020457610204614fbb565b60200201818152505060208261021a9190614f81565b91506001016101c5565b50610248848285610236826080614f81565b9261024393929190614f94565b6119fe565b6020830152610258608082614f81565b905061026b848285610236826080614f81565b604083015261027b608082614f81565b905061028e848285610236826080614f81565b606083015261029e608082614f81565b90506102b1848285610236826080614f81565b60c08301526102c1608082614f81565b90506102d4848285610236826080614f81565b60e08301526102e4608082614f81565b90506102f7848285610236826080614f81565b60808084019190915261030a9082614f81565b905061031d848285610236826080614f81565b61010083015261032e608082614f81565b9050610341848285610236826080614f81565b60a0830152610351608082614f81565b90505f5b601c8110156103d0575f5b60088110156103c75761037a8684876101df826020614f81565b84610120015183601c811061039157610391614fbb565b602002015182600881106103a7576103a7614fbb565b6020020181815250506020836103bd9190614f81565b9250600101610360565b50600101610355565b505f5b6028811015610424576103ed8583866101df826020614f81565b836101400151826028811061040457610404614fbb565b60200201818152505060208261041a9190614f81565b91506001016103d3565b505f5b6104336001601c614f6e565b81101561047c5761044b858386610236826080614f81565b83610160015182601b811061046257610462614fbb565b6020020152610472608083614f81565b9150600101610427565b505f5b601c8110156104d0576104998583866101df826020614f81565b83610180015182601c81106104b0576104b0614fbb565b6020020181815250506020826104c69190614f81565b915060010161047f565b506104e2848285610236826080614f81565b6101a08301526104f3608082614f81565b9050610506848285610236826080614f81565b6101c08301525092915050565b61051b614b9e565b5f61052b88888888888887611ace565b908352905061053a8189611b24565b6020840191909152905061054d81611cbe565b604084019190915290506105618882611d1f565b606084019190915290506105758882611df3565b608084019190915290506105898882611e7e565b60a0840191909152905061059d8882611fec565b60c084019190915290506105b1888261205e565b5060e0830152509695505050505050565b5f6001808261060b86610606896106016105fc8a7f0000000000000000000000000000000000000000000000000000000000000000614f81565b6120b5565b6120d3565b6120ec565b90505f610629876106248a6106016105fc8b6001614f81565b612105565b90505f5b61065860107f0000000000000000000000000000000000000000000000000000000000000000614f6e565b8110156106c5575f6106828c838151811061067557610675614fbb565b60200260200101516120b5565b90506106928661060186846120ec565b95506106a28561060185846120ec565b94506106ae848b6120ec565b93506106ba838b612105565b92505060010161062d565b505f5b601081101561072c575f8a82601081106106e4576106e4614fbb565b602002015190506106f98661060186846120ec565b95506107098561060185846120ec565b9450610715848b6120ec565b9350610721838b612105565b9250506001016106c8565b506101978484612134565b5f806001815b7f000000000000000000000000000000000000000000000000000000000000000081101561080e575f86610120015182601c811061077d5761077d614fbb565b602002015190505f61078f8286612142565b9050806107af576040516313f8744360e31b815260040160405180910390fd5b5f876060015184601c81106107c6576107c6614fbb565b602002015190506107d7838261215f565b95506107fe886040015185601c81106107f2576107f2614fbb565b6020020151868361230e565b945050505080600101905061073d565b505f610828866101400151865f0151876020015185612339565b90508281145b9695505050505050565b5f61087f6040518061012001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f61088d8460a001516123a7565b9050610897614bf7565b61089f614c16565b60e08601516108be906108b990855f5b6020020151612105565b61240c565b60a085015260e08601516108dd906108b990855f5b60200201516120ec565b60c080860182905260a0860151908801516108fc9261060691906120d3565b845260a086015161092a906109109061240c565b6106018660a001516106248a60c001518960c001516120d3565b6020850152600182526101a088015161094290612475565b81526001606085018190525f60808601525b602381116109fa5761097561096b865f01516124b4565b86606001516120d3565b83826046811061098757610987614fbb565b602002015260808501516101408a01516109ca9190610606906109ab600186614f6e565b602881106109bb576109bb614fbb565b602002015188606001516120d3565b8560800181815250506109e5856060015188608001516120d3565b60608601526109f381614fcf565b9050610954565b505f610a0860236001614f81565b90505b60288111610a8957610a2361096b86602001516124b4565b838260468110610a3557610a35614fbb565b602002015260808501516101408a0151610a599190610606906109ab600186614f6e565b856080018181525050610a74856060015188608001516120d3565b6060860152610a8281614fcf565b9050610a0b565b50606087015181600160200201526080870151816002602002015260a0870151816003602002015260c0870151816004602002015260e0870151816005602002015261010087015181600660200201526101208701518160076020020152610140870151816008602002015261016087015181600960200201526101a087015181600a602002015261018087015181600b60200201526101c087015181600c60200201526101e087015181600d602002015261020087015181600e602002015261022087015181600f60200201526102408701518160106020020152610260870151816011602002015261028087015181601260200201526102a087015181601360200201526102c087015181601460200201526102e08701518160156020020152610300870151816016602002015261032087015181601760200201526103408701518160186020020152610360870151816019602002015261038087015181601a60200201526103a087015181601b6020020181905250610c0f8860200151612475565b6103808201526040880151610c2390612475565b6103a08201526060880151610c3790612475565b6103c08201526080880151610c4b90612475565b6103e082015260a0880151610c5f90612475565b610400820152610100880151610c7490612475565b61042082015260c0880151610c8890612475565b61044082015260e0880151610c9c90612475565b6104608201526020880151610cb090612475565b6104808201526040880151610cc490612475565b6104a08201526060880151610cd890612475565b6104c08201526080880151610cec90612475565b6104e082015260a0880151610d0090612475565b610500820152606086015160808501516101808a01515f92610d45929091877f00000000000000000000000000000000000000000000000000000000000000006124cc565b805160a0870151919250610d58916120d3565b604086018190526101808a01515160c0890151610d88929161060691610d7e91906120d3565b8860c001516120d3565b604086015260c0870151610d9b906125e7565b60608601525f5b610dae6001601c614f6e565b811015610fb0575f610de160017f0000000000000000000000000000000000000000000000000000000000000000614f6e565b821015905080610f5657610e146108b98a60e0015188856001610e049190614f81565b601c81106108af576108af614fbb565b60a088015260e0890151610e42906108b99088610e32866001614f81565b601c81106108d3576108d3614fbb565b60c0880152606087015160a0880151610e5b91906120d3565b60e0880152606087015160c08a0151610e7791610d7e916120d3565b6101008801819052610e9990610e8c906124b4565b6106068960e001516124b4565b8583610ea760286001614f81565b610eb19190614f81565b60468110610ec157610ec1614fbb565b60200201526101008701516101808c01515f91610efd91610ee3866001614f81565b601c8110610ef357610ef3614fbb565b60200201516120d3565b9050610f19816106068a60e0015187876001610ee39190614f81565b9050610f298860400151826120ec565b6040890152606088015160c08b0151610f4f91610f45916120d3565b8b60c001516120d3565b6060890152505b610f7a8b610160015183601b8110610f7057610f70614fbb565b6020020151612475565b8483610f8860286001614f81565b610f929190614f81565b60468110610fa257610fa2614fbb565b602002015250600101610da2565b5060408051808201909152600181526002602082015282610fd3601c6028614f81565b60468110610fe357610fe3614fbb565b6020020152604085015183610ffa601c6028614f81565b6046811061100a5761100a614fbb565b60200201526101c08901515f9061102090612475565b90508083611030601c6028614f81565b61103b906001614f81565b6046811061104b5761104b614fbb565b602002015260e088015184611062601c6028614f81565b61106d906001614f81565b6046811061107d5761107d614fbb565b60200201525f61108d84866125f2565b90505f611099836126b8565b90506110a582826126fe565b9c9b505050505050505050505050565b6110bd614957565b50604080516103c08101825263020000008152601960208083019190915261040c82840152825180840184527f1d3f6c4f254599191da5308cb600563f25cc189302fda1ff974624cb766507c881527f29ea062935de86e3e730b3d5a9ff1812c90415e0d36391ebba23723a966bdb3a818301526060830152825180840184527f226d7967352d2d66bea3bdfc710737c648886e245e3d17472631e3ba704045ab81527f28f58220d322790460baccd2f57415b2af4050c2cc19b9f75f8f76a4df27d3e2818301526080830152825180840184527f305cffa652147dbb78e56538d95cbc8f1ef72558daacf5641592efa8474e7db481527f2c2b9023386a94f5018a7f5ae185b188bca5784b7d5ec25e333fe131c3fe71308183015260a0830152825180840184527f0bdda4989b79f2d12e9716d6a0398fff6ffd07a21ab01037bb5d576f1e79601d81527f2175c971d1c1e4d244287b57859ffaa657efd308331c3bc4b3aeacaa585caf7b8183015260c0830152825180840184527f06361975e858c40f41732defd018ea1744c903ed913e5395a75b4619f1e52c1181527f03fa3276f24a5610f4e89fdb196aa4d58e682363e3db74ab74cef6dc0cce8ff08183015260e0830152825180840184527f11519bd8c9baf4e5dfaf2202b477ddd2a71642958e6d344d988b21fc0462c0ad81527f19e87b75a14f428110d402370835a77dd922212bca240b3a3de4c576896b990a81830152610100830152825180840184527f25a5859635c879aab2434f0abb7d4d49ee8c6caab3e0be1e5dcc5b20164f96ef81527f2b8c29f921dad7a6b79c13d62ad140d6b2d14c0723f5650775209438e58af12281830152610120830152825180840184527f169ade294e42e1bd18710d07147cc925a5a907b94fad4d2b811c3fc1354178f681527f029208937f2fdc496e8c7dbb5b44b32bb9d21dd100fccfdc7c4eb2f17272fc5481830152610140830152825180840184527f1d03f655954abc2e44a3e196ad331169aa61a005b2c0a8b6dd77aad7231769b781527f1cf9e000661d05f92c789cd242b7bf2879a1af25b2c59951b07d0095422c857981830152610160830152825180840184527f1661de4b3d5bc0a131b65cb2cddc0f73881b1a2a6cb3db70a3857900ed5edde581527f15e16951b86c6a1b86fb300df8fb10d41f5a393b190bdc54596d479495245b6881830152610180830152825180840184527f0a1803388e0820afcf10c9472c4a3055676772b0a25613df9f93405047563cc581527f0e0e157900d8247babb08961c290849fcec5dfe670cbee084294ffd5c9159e06818301526101a0830152825180840184527f178d04d500c4b1f6a3fb28232a88170bcda963fbe8a84b3a4367609557b54ba581527f0e7554f46e23aa8bfce4f844400eee5b9b3d275eb5e779f34659c84dad1b96ed818301526101c0830152825180840184527f1c59941775788d0eefe58d0cdc800712c27634f24affe5785c4a625ee02328ba81527f29e83885ac4f11cb4395d1c3aa9a3aa613bd848eec0eda011a9af7899c38bf63818301526101e0830152825180840184527f0b366bc769bab4d043b40818007136a960ffb2aba6067d8aa5b3e151094a00bb81527f2aad7cf160a1153e4f27b21689783932ad785c4bfe15b1bcd7e9645167f1713981830152610200830152825180840184527f090e5587dbb6f81a4e3145e0d6c0a27332eeccd1dbc7d8977e0f091543edb2f381527f02ce04233461716a9b1de69dda59084852efe322b51652daf920590bf4dfd34581830152610220830152825180840184527f1a6db67136003e3d08d5883fa3c9f7819c1d160911668619a7a9bfba07d07f1681527f2bddf26be606ea79dd5619256ea5d1fe84ceba529a3c9c0733ad10ca77ffa92481830152610240830152825180840184527f0cd7e9193db0842ae6a24411e01e706b94f685c362161f2d749a03b9153bfe4781527f07cec05beeed56897b6aae42f043781e41dbd3cb47889dd067e4337f2c77958681830152610260830152825180840184527f0f0b9aa54219a10be5e672717c4fed3486741da8971156ac4ed09b64823af68d81527f03be510c10715e1088ede62a4472ea74f99a6c5e57603a2f9d19b39075d578a181830152610280830152825180840184527f1e2e2caca3cc826e8a9c8379b88ef042bfd2af0e96da2c843fb41b8f739ba4e481527f018a6eae54c193b4cecd708547c8df037a004f3d7c9cde108c5e3d01fe8b63cb818301526102a0830152825180840184527f1603c7af8ae49f4e2243dc7fba3ac4f69c9896473edeea29320cc67dd26512ca81527f2feaa7a7b9ea3f0fc830e22d76e710f5ad9cc2308f0e5d943bced8c5e61511a3818301526102c0830152825180840184527f2b2bc8e723c93a8e2ddefa89be6199d18ee2b6cd8c34ed6029123afc0594463381527f1f0708dc0b3ae49b687990ee35732057e9aa9aeb8d7174c9be0212710a4875ec818301526102e0830152825180840184527f2f4e0e73619e22e05200bd9de4ea73a3fc38ac033787e58016ef8f6e0c20b1fb81527f2f2b94d720217b157176b458c9d8f1b192a1466618a7901bce7f435a1edd6da181830152610300830152825180840184527f2003a0aec140164182e4ff65e13c9fd005e08922f739d8b6423dcf8fa26f9ec281527f13793b4ea820fac86bf339259e4c76e9e5a49a35f7c1a1ccf7f2ed9e0215748881830152610320830152825180840184527f1abe3e80fbe4e7e479e25e018648cfbf398a6057281cecf3c3a76f220a62474081527f29a28edb5e574311167384f452aa8112795513c8c164fcbcd592386a7fbfc33381830152610340830152825180840184527f21ad8f9bf46d94bf9d93469d756464c74999dbb805c6ab7b2bfcb5c3a495c81081527f224803cf8531674748532f90c6a2a835030a07111344dc02418159a6178927a881830152610360830152825180840184526001815260028183015261038083015282518084019093527f07b0c95648ca8135e093b45e15d0d350ed23b4c49ebd99113de222681ef4c62183527f19b758cc3a695fa42efc8c049481eb4f70f44b29f4e4cf673edeeda6d65dd6de908301526103a081019190915290565b5f602082146119ea5760405162461bcd60e51b815260206004820152601460248201527334b73b30b634b210313cba32b99039b1b0b630b960611b60448201526064015b60405180910390fd5b6119f76105fc8385614fe7565b9392505050565b611a06614c44565b60808214611a4c5760405162461bcd60e51b81526020600482015260136024820152721a5b9d985b1a5908189e5d195cc81c1bda5b9d606a1b60448201526064016119e1565b604080516080810190915280611a6560205f8688614f94565b611a6e91614fe7565b8152602090810190611a84906040908688614f94565b611a8d91614fe7565b8152602001611aa0606060408688614f94565b611aa991614fe7565b8152602001611abc608060608688614f94565b611ac591614fe7565b90529392505050565b611ad6614c68565b5f611ae5898989898989612902565b604086019190915260208501919091529083529250611b04838a612da8565b608085019190915260608401919091529199919850909650505050505050565b611b2c614c98565b5f611b35614cb7565b848152610100848101805151602080850191909152815181015160408086019190915282518101516060808701919091529251830151608086015260a080890180515191870191909152805183015160c0870152805182015160e087015251909201519284019290925251611bcb91611bb091849101615004565b604051602081830303815290604052805190602001206120b5565b9150611bd682612e77565b6020850152835260015b611bec6002601961504c565b811015611c6c57611c0983604051602001611bb091815260200190565b9250611c1483612e77565b85611c20846002614f57565b60198110611c3057611c30614fbb565b6020020186611c40856002614f57565b611c4b906001614f81565b60198110611c5b57611c5b614fbb565b602002019190915252600101611be0565b50611c8382604051602001611bb091815260200190565b91505f611c8f83612e77565b85611c9c60016019614f6e565b60198110611cac57611cac614fbb565b60200201919091525050509250929050565b611cc6614cd6565b5f805b601c811015611d1857611ce884604051602001611bb091815260200190565b93505f611cf485612e77565b8584601c8110611d0657611d06614fbb565b60200201919091525050600101611cc9565b5090929050565b611d27614cd6565b5f805b601c811015611dea57611d3b614cb7565b8481525f5b6008811015611da45786610120015183601c8110611d6057611d60614fbb565b60200201518160088110611d7657611d76614fbb565b602002015182611d87836001614f81565b60098110611d9757611d97614fbb565b6020020152600101611d40565b50611db981604051602001611bb09190615004565b94505f611dc586612e77565b8685601c8110611dd757611dd7614fbb565b6020020191909152505050600101611d2a565b50909391925050565b5f5f611dfd614cf5565b8381525f5b6028811015611e50578561014001518160288110611e2257611e22614fbb565b602002015182611e33836001614f81565b60298110611e4357611e43614fbb565b6020020152600101611e02565b50611e6581604051602001611bb0919061505f565b91505f611e7183612e77565b5096929550919350505050565b5f5f611e88614d14565b8381525f5b611e996001601c614f6e565b811015611fd75785610160015181601b8110611eb757611eb7614fbb565b60200201515182611ec9836004614f57565b611ed4906001614f81565b606d8110611ee457611ee4614fbb565b602002015261016086015181601b8110611f0057611f00614fbb565b60200201516020015182826004611f179190614f57565b611f22906002614f81565b606d8110611f3257611f32614fbb565b602002015261016086015181601b8110611f4e57611f4e614fbb565b60200201516040015182611f63836004614f57565b611f6e906003614f81565b606d8110611f7e57611f7e614fbb565b602002015261016086015181601b8110611f9a57611f9a614fbb565b60200201516060015182611faf836004614f57565b611fba906004614f81565b606d8110611fca57611fca614fbb565b6020020152600101611e8d565b50611e6581604051602001611bb09190615093565b5f5f611ff6614d33565b8381525f5b601c8110156120495785610180015181601c811061201b5761201b614fbb565b60200201518261202c836001614f81565b601d811061203c5761203c614fbb565b6020020152600101611ffb565b50611e6581604051602001611bb091906150c7565b5f5f612068614d52565b8381526101a085018051516020808401919091528151810151604080850191909152825181015160608086019190915292519092015160808401529051611e6591611bb0918491016150fb565b5f6120cd5f51602061523d5f395f51905f528361512e565b92915050565b5f5f51602061523d5f395f51905f528284099392505050565b5f5f51602061523d5f395f51905f528284089392505050565b5f5f51602061523d5f395f51905f5261212b835f51602061523d5f395f51905f52614f6e565b84089392505050565b5f6119f7836106018461240c565b81515f908190612154908560016108d3565b929092149392505050565b60408051610100810182527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffec5181526102d060208201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff1191810191909152609060608201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff71608082015260f060a08201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593effffd3160c08201526113b060e08201525f906001825b60088110156122465761223c826106018784612105565b9150600101612225565b5061224f614d70565b5f5b60088110156122b0575f84826008811061226d5761226d614fbb565b60200201519050612282816106018985612105565b905061228d8161240c565b9050808383600881106122a2576122a2614fbb565b602002015250600101612251565b505f5b6008811015612303575f8782600881106122cf576122cf614fbb565b602002015190506122ec81848460088110610ef357610ef3614fbb565b90506122f886826120ec565b9550506001016122b3565b5061082e84836120d3565b5f5f612324600161060685610601896001612105565b905061233084826120d3565b95945050505050565b5f612342614d8f565b61234d868285612ea7565b61235986868386613053565b6123658686838661323b565b612370868285613437565b61237b86828561361f565b61238786868386613968565b612392868285614202565b61239d8682856145cd565b61082e81856148c2565b6123af614cd6565b81815260015b601c811015612406576123e7826123cd600184614f6e565b601c81106123dd576123dd614fbb565b60200201516125e7565b8282601c81106123f9576123f9614fbb565b60200201526001016123b5565b50919050565b5f5f8290505f604051602081526020808201526020604082015282606082015260025f51602061523d5f395f51905f520360808201525f51602061523d5f395f51905f5260a082015260205f60c08360055afa90508061246a575f5ffd5b50505f519392505050565b61247d614dae565b604051806040016040528060888460200151901b845f015117815260200160888460600151901b8460400151178152509050919050565b5f6120cd825f51602061523d5f395f51905f52614f6e565b6124d4614cd6565b601c5b80156125dd575f846124ea600184614f6e565b601c81106124fa576124fa614fbb565b602002015190505f8861250e600185614f6e565b601c811061251e5761251e614fbb565b602002015190505f61257961253d612536858c6120d3565b60026120d3565b6106248a61254c600189614f6e565b601c811061255c5761255c614fbb565b60200201516106016125738861060160018a612105565b87612105565b905061259a816106016108b961259487610601600189612105565b866120ec565b90508584116125c95797508780856125b3600187614f6e565b601c81106125c3576125c3614fbb565b60200201525b505050806125d690615141565b90506124d7565b5095945050505050565b5f6120cd82836120d3565b6125fa614dae565b5f612607601c6028614f81565b612612906002614f81565b90506001604051855151604082015285516020015160608201528451608082015260408160606040840160075afa8216915060015b838110156126a05760208102870160208202870181515160408501528151602001516060850152805160808501525050604080830160606040850160075afa8316925060408260808460065afa90921691600101612647565b50805184526020810151602085015250505092915050565b6126c0614dae565b5f51602061521d5f395f51905f5282602001515f51602061521d5f395f51905f526126eb9190614f6e565b6126f5919061512e565b60208301525090565b81516020808401518351848301516040805194850195909552938301919091527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c260608301527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed60808301527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b60a08301527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa60c083015260e08201526101008101919091527f260e01b251f6f1c7e7ff4e580791dee8ea51d87a358e038b4efe30fac09383c16101208201527f0118c4d5b837bcc2bc89b5b398b5974e9f5944073b32078b7e231fec938883b06101408201527f04fc6369f7110fe3d25156c1bb9a72859cf2a04641f99ba4ee413c80da6a5fe46101608201527f22febda3c0c0632a56475b4214e5615e11e6dd3f96e6cea2854a87d4dacc5e556101808201525f9081906101a00160405160208183030381529060405290505f5f60086001600160a01b0316836040516128949190615156565b5f60405180830381855afa9150503d805f81146128cc576040519150601f19603f3d011682016040523d82523d5f602084013e6128d1565b606091505b50915091505f818060200190518101906128eb919061516c565b90508280156128f75750805b979650505050505050565b5f80808080612912876003614f81565b61291d90600c614f81565b6001600160401b038111156129345761293461518b565b60405190808252806020026020018201604052801561295d578160200160208202803683370190505b509050875f1b815f8151811061297557612975614fbb565b602002602001018181525050865f1b8160018151811061299757612997614fbb565b602002602001018181525050855f1b816002815181106129b9576129b9614fbb565b60209081029190910101525f5b6129d1601089614f6e565b811015612a22578a8a828181106129ea576129ea614fbb565b90506020020135828260036129ff9190614f81565b81518110612a0f57612a0f614fbb565b60209081029190910101526001016129c6565b505f5b6010811015612a93578b51612a4d908260108110612a4557612a45614fbb565b602002015190565b82826010612a5c8c6003614f81565b612a669190614f6e565b612a709190614f81565b81518110612a8057612a80614fbb565b6020908102919091010152600101612a25565b5060208b01515181612aa6896003614f81565b81518110612ab657612ab6614fbb565b6020908102919091018101919091528b810151015181612ad7896003614f81565b612ae2906001614f81565b81518110612af257612af2614fbb565b6020908102919091018101919091528b01516040015181612b14896003614f81565b612b1f906002614f81565b81518110612b2f57612b2f614fbb565b6020908102919091018101919091528b01516060015181612b51896003614f81565b612b5c906003614f81565b81518110612b6c57612b6c614fbb565b602090810291909101015260408b01515181612b89896003614f81565b612b94906004614f81565b81518110612ba457612ba4614fbb565b60209081029190910181019190915260408c0151015181612bc6896003614f81565b612bd1906005614f81565b81518110612be157612be1614fbb565b60209081029190910101526040808c0151015181612c00896003614f81565b612c0b906006614f81565b81518110612c1b57612c1b614fbb565b602090810291909101015260408b01516060015181612c3b896003614f81565b612c46906007614f81565b81518110612c5657612c56614fbb565b602090810291909101015260608b01515181612c73896003614f81565b612c7e906008614f81565b81518110612c8e57612c8e614fbb565b60209081029190910181019190915260608c0151015181612cb0896003614f81565b612cbb906009614f81565b81518110612ccb57612ccb614fbb565b602090810291909101015260608b01516040015181612ceb896003614f81565b612cf690600a614f81565b81518110612d0657612d06614fbb565b60209081029190910101526060808c0151015181612d25896003614f81565b612d3090600b614f81565b81518110612d4057612d40614fbb565b602002602001018181525050612d6081604051602001611bb0919061519f565b9150612d6b82612e77565b6040805160208101869052929750909550612d869101611bb0565b91505f612d9283612e77565b50959c949b509499509097509195505050505050565b5f5f5f612db3614dc6565b85815260c085810180515160208085019190915281518101516040808601919091528251810151606080870191909152925183015160808087019190915260e0808b0180515160a089015280518501519688019690965285518301519087015293518301516101008601529288018051516101208601528051820151610140860152805184015161016086015251909101516101808401529051612e5d91611bb0918491016151d4565b9150612e6882612e77565b90979096509194509092505050565b5f80826001600160801b038116608082901c612e92826120b5565b9450612e9d816120b5565b9350505050915091565b5f612eb3846007614927565b90507f183227397098d014dc2822db40c0ac2e9419f4243cdcb848a1f0fac9f80000005f612f14612f0e612ee8856003612105565b610601612f03612ef88b5f614927565b6106018c601c614927565b6106018b601b614927565b836120d3565b9050612f95612f8a612f71612f58612f3f85610606612f348d6002614927565b6106018e601b614927565b610606612f4d8c6003614927565b6106018d601c614927565b610606612f668b6004614927565b6106018c601d614927565b610606612f7f8a6005614927565b6106018b601e614927565b610606886001614927565b9050612fb481610606612fa9866001612105565b6106018a6026614927565b9050612fc081846120d3565b9050612fcc81856120d3565b8552505f9050613006612ffc612ff1612fe688601b614927565b61060689601e614927565b610624886023614927565b610606875f614927565b905061301781610601846002612105565b905061302881610601846001612105565b905061303481836120d3565b905061304081846120d3565b9050808460015b60200201525050505050565b5f5f5f61308961307f61306789601b614927565b6106066130758b6011614927565b8a606001516120d3565b87608001516120ec565b90506130c2816106016130b86130a08b601c614927565b6106066130ae8d6012614927565b8c606001516120d3565b89608001516120ec565b90506130e7816106016130b86130d98b601d614927565b6106066130ae8d6013614927565b905061310c816106016130b86130fe8b601e614927565b6106066130ae8d6014614927565b92505f905061313061307f61312289601b614927565b6106066130758b600d614927565b9050613155816106016130b86131478b601c614927565b6106066130ae8d600e614927565b905061317a816106016130b861316c8b601d614927565b6106066130ae8d600f614927565b905061319f816106016130b86131918b601e614927565b6106066130ae8d6010614927565b91505f90506131c66131c06131b589601f614927565b6106068a6019614927565b846120d3565b90506131fb816106246131f56131dd8b6027614927565b6106066131eb8d601a614927565b8c60a001516120d3565b856120d3565b905061320781856120d3565b6040860152505f61322a6131f561321f89601a614927565b6106018a6027614927565b606090950194909452505050505050565b5f5f6132996132816132696132546130b88a6015614927565b6106066132628b6016614927565b8a516120d3565b6106066132778a6017614927565b89602001516120d3565b61060661328f896018614927565b88604001516120d3565b91505f6132d06132b76132ad89601b614927565b88608001516120ec565b6106066132c58a6003614927565b6106018b6023614927565b90505f6132f96132e189601c614927565b6106066132ee8b5f614927565b6106018c6024614927565b90505f61332361330a8a601d614927565b6106066133188c6001614927565b6106018d6025614927565b905061336261334a61333c85610606868d5f01516120d3565b610606848c602001516120d3565b6106066133588c6004614927565b8b604001516120d3565b93505050505f6133766131c0886020614927565b90505f6133876131c0896020614927565b90505f6133bf6133a661339b8b6022614927565b6106068c6006614927565b6106246133b48c6022614927565b6106018d6006614927565b90505f6133e36133dd6133d287896120d3565b6106018d6020614927565b83612105565b90506133ef81886120d3565b90505f6134176134096134038d6006614927565b876120d3565b6106246134038e6021614927565b60808a018390529050808960055b60200201525050505050505050505050565b5f6134435f6001612105565b90505f6134515f6002612105565b90505f61345f5f6003612105565b90505f61347b61347088601c614927565b61062489601b614927565b90505f61349761348c89601d614927565b6106248a601c614927565b90505f6134b36134a88a601e614927565b6106248b601d614927565b90505f6134cf6134c48b6023614927565b6106248c601e614927565b9050836134e081610601818b6120ec565b90506134f081610601878a6120ec565b90506135008161060187896120ec565b9050613511816106018d6008614927565b905061351d818a6120d3565b60c08b0152508261353281610601818b6120ec565b905061354281610601868a6120ec565b90506135528161060186896120ec565b9050613563816106018d6008614927565b905061356f818a6120d3565b60e08b0152508161358481610601818b6120ec565b905061359481610601858a6120ec565b90506135a48161060185896120ec565b90506135b5816106018d6008614927565b90506135c1818a6120d3565b6101008b015250806135d781610601818b6120ec565b90506135e781610601848a6120ec565b90506135f78161060184896120ec565b9050613608816106018d6008614927565b9050613614818a6120d3565b9050808a6009613425565b6136586040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61366384601c614927565b815261367084601d614927565b6020820152613680846023614927565b6040820152613690846026614927565b60608201526136a0846025614927565b60808201526136b0846024614927565b60a08201525f6136c1856002614927565b90505f6136ce865f614927565b90505f6136e28460400151855f0151612105565b90505f6136f7856020015186602001516120d3565b606086015190915086905f9061370d90806120d3565b90505f61372b61372589602001518a606001516120d3565b886120d3565b90505f61374a6137438a60a001518b604001516120ec565b8a516120ec565b905061375961340382886120d3565b905061378061377a61377461376e8487612105565b88612105565b846120ec565b836120ec565b90506137a861379d61379283876120d3565b6106018f6009614927565b61060160018a612105565b6101408c015250505050602085015160808601515f916137c7916120ec565b90505f6137e56137db8860600151886120d3565b8860200151612105565b90505f6138096137f584876120d3565b6106066131f58b60a001518c5f0151612105565b905061383161382661381b838c6120d3565b6106018e6009614927565b610601600189612105565b6101608b0152505f9150613852905061384b8360116120ec565b87516120d3565b90505f61385f83846120ec565b905061386b81826120ec565b90505f6138798360096120d3565b90506138a261389c6131c06138958b60a001518c5f01516120ec565b8b516120ec565b82612105565b60c089018190525f906138bd9061372590613792908d6120d3565b90506138d08b600a6020020151826120ec565b6101408c0152505086515f92506138f7915061384b906138f090806120ec565b88516120ec565b90505f613937613912836106018a5f01518b60a00151612105565b60208901516106249061392590806120ec565b6106018b602001518c608001516120ec565b905061395489600b6020020151610606613725613792858d6120d3565b89600b602002015250505050505050505050565b6139fc604051806102c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b613a31613a18613a0d87601b614927565b610601886024614927565b610606613a26886023614927565b61060189601c614927565b8152613a76613a6b613a52613a4788601b614927565b61060189601e614927565b610606613a6089601c614927565b6106018a601d614927565b610624876025614927565b60408201819052613a8b90600160441b6120d3565b60408201819052613aa190610624876026614927565b604082018190528151613ab491906120ec565b60408201819052613aca90610601876005614927565b60408201528051613adf90600160441b6120d3565b808252613aff90610606613af4886023614927565b610601896024614927565b80825260208201819052613b1b90610624612fe688601d614927565b60208201819052613b3190610601876004614927565b6020820152805160608201819052613b4e9061060687601e614927565b60608201819052613b7290610624613b67886025614927565b610606896026614927565b60608201819052613b8790610601875f614927565b8160600181815250505f613bb0613ba6836020015184604001516120ec565b83606001516120ec565b9050613bc181610601886003614927565b9050613bd9613bd1876024614927565b6140006120d3565b60808301819052613bef90610606886023614927565b60808301819052613c02906140006120d3565b60808301819052613c189061060688601d614927565b60808301819052613c2b906140006120d3565b60808301819052613c419061060688601c614927565b60808301819052613c54906140006120d3565b60808301819052613c6a9061060688601b614927565b60808301819052613c809061062488601e614927565b60808301819052613c9690610601886005614927565b6080830152613ca9613bd1876025614927565b60a08301819052613cbf90610606886024614927565b60a08301819052613cd2906140006120d3565b60a08301819052613ce890610606886023614927565b60a08301819052613cfb906140006120d3565b60a08301819052613d119061060688601e614927565b60a08301819052613d24906140006120d3565b60a08301819052613d3a9061060688601d614927565b60a08301819052613d5090610624886026614927565b60a08301819052613d6590610601885f614927565b60a0830181905260808301515f91613d7d91906120ec565b9050613d8e81610601896004614927565b9050613da8613d9e88601d614927565b87604001516120d3565b60c08401819052613dc1906106066132778a601c614927565b60c08401819052613de190610606613dda8a601b614927565b89516120d3565b60c08401819052613df790610606896001614927565b60c0840181905260e08401819052613e149061062489601e614927565b60c0840152613e27613470886023614927565b610140840152613e46613e3b886026614927565b61062489601e614927565b610120840152610140830151613e6b90613e6090806120d3565b846101400151612105565b610280840152610140830151613ead90613ea290613e9b9061060160015f51602061523d5f395f51905f52614f6e565b60016120ec565b8461012001516120d3565b6101608401819052613ee490613ed690610601613ecb8b6002614927565b6106018c6003614927565b6106016134038a600a614927565b6101a0860152610280830151613f0690613ed690610601613ecb8b6002614927565b6101c086015260c0830151613f2e90610601613f238a6002614927565b6106018b6003614927565b6101e08401525f613f4d613f4389601e614927565b8560e00151612105565b9050613f5c61389c82836120d3565b6101a0850152613f7061328f896025614927565b6101008501819052613f9490610606613f8a8b6024614927565b8a602001516120d3565b6101008501819052613fae906106066132628b6023614927565b610100850152613fcd613fc2896026614927565b856101000151612105565b6101008501525f613fe26134a88a6025614927565b9050614036614010612f0e613e9b88610140015160015f51602061523d5f395f51905f526106019190614f6e565b610601613e9b88610100015160015f51602061523d5f395f51905f526106019190614f6e565b61018086015261010085015161405b9061405090806120d3565b866101000151612105565b6101c086015261018085015161408e9061407a906106018c6007614927565b6106016140888c600a614927565b896120d3565b6101e08801526102808501516140ad9061407a906106018c6007614927565b6102008801526101c08501516140cc9061407a906106018c6007614927565b6102208801526101a08501516140e7906106018b6007614927565b6102008601526141066140fb8a6024614927565b6106248b601c614927565b610220860152610140850151614145906134a89061413a90613e9b9061060160015f51602061523d5f395f51905f52614f6e565b8761022001516120d3565b61024086018190526101e0860151610260870181905261417c91610606906106016141718e6005614927565b6106018f6002614927565b610260860181905260c086015161419f9190610606906106016141718e5f614927565b61026086018190526102008601516141b791906120ec565b61026086018190526141cd9061377490866120ec565b6102a086018190526141e7906106016140888c600a614927565b6102a0860181905287600c6020020152505050505050505050565b6142786040518061022001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61429161428685601b614927565b610606866002614927565b81526142ac6142a185601c614927565b610606866003614927565b60208201526142ca6142bf85601d614927565b610606866004614927565b60408201526142e86142dd85601e614927565b610606866005614927565b6060820152805161431a906143139061430c9061430590806120d3565b84516120d3565b83516120d3565b82516120d3565b608082015260208101516143589061434e906143449061433a90806120d3565b84602001516120d3565b83602001516120d3565b82602001516120d3565b60a082015260408101516143969061438c906143829061437890806120d3565b84604001516120d3565b83604001516120d3565b82604001516120d3565b60c082015260608101516143d4906143ca906143c0906143b690806120d3565b84606001516120d3565b83606001516120d3565b82606001516120d3565b60e0820152608081015160a08201516143ed91906120ec565b61010082015260c081015160e082015161440791906120ec565b61012082015260a081015161442b9061442090806120ec565b8261012001516120ec565b61014082015260e081015161444f9061444490806120ec565b8261010001516120ec565b61016082015261012081015161446590806120ec565b6101e082018190526144869061447b90806120ec565b8261016001516120ec565b6101e082015261010081015161449c90806120ec565b6101a082018190526144bd906144b290806120ec565b8261014001516120ec565b6101a082018190526101608201516144d4916120ec565b6101808201526101408101516101e08201516144f091906120ec565b6101c0820152614504612f0e85600b614927565b610200820181905261024084015161018083015161452f9261060691610601906106248a6023614927565b836012602002015261455f8360136020020151610606836102000151610601856101a001516106248a6024614927565b836013602002015261458f8360146020020151610606836102000151610601856101c001516106248a6025614927565b83601460200201526145bf8360156020020151610606836102000151610601856101e001516106248a6026614927565b836015602002015250505050565b61461f6040518061016001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f60405180608001604052806146547f10dc6e9c006ea38b04b1e03b4bd9490c0d03f98929ca1d7fb56821fd19d3b6e76120b5565b81526020016146827f0c28145b6a44df3e0149b3d0a30b3bb599df9756d4dd9b84a86b38cfb45a740b6120b5565b81526020016146af7e544b8338791518b2c7645a50392798b21f75bb60e3596170067d00141cac156120b5565b81526020016146dd7f222c01175718386f2e2e82eb122789e352e105a3b8fa852613bc534433ee428b6120b5565b905290506146fa6146ef86601b614927565b610606876002614927565b610120830181905261472e9061472390613ea29061471890806120d3565b8561012001516120d3565b8361012001516120d3565b825261473b85601c614927565b602083015261474b85601d614927565b604083015261475b85601e614927565b60608301528151602083015161478391613ba69161477991906120ec565b84604001516120ec565b60808301526147966131c086600c614927565b61014083015281516147b7906147ad90835f610ef3565b83608001516120ec565b60a08301526147e384601660200201516106068461014001516106018660a001516106248b6023614927565b6102c085015260208201516147fe906147ad90836001610ef3565b60c083015261482a84601760200201516106068461014001516106018660c001516106248b6024614927565b6102e08501526040820151614845906147ad90836002610ef3565b60e083015261487184601860200201516106068461014001516106018660e001516106248b6025614927565b610300850152606082015161488c906147ad90836003610ef3565b6101008301526148ba84601960200201516106068461014001516106018661010001516106248b6026614927565b846019613047565b5f6148ce8184816108d3565b905060015b601a81101561492057614916826106068684601a81106148f5576148f5614fbb565b602002015186614906600187614f6e565b60198110610ef357610ef3614fbb565b91506001016148d3565b5092915050565b5f8282602781111561493b5761493b615208565b6028811061494b5761494b614fbb565b60200201519392505050565b604051806103c001604052805f81526020015f81526020015f815260200161497d614dae565b815260200161498a614dae565b8152602001614997614dae565b81526020016149a4614dae565b81526020016149b1614dae565b81526020016149be614dae565b81526020016149cb614dae565b81526020016149d8614dae565b81526020016149e5614dae565b81526020016149f2614dae565b81526020016149ff614dae565b8152602001614a0c614dae565b8152602001614a19614dae565b8152602001614a26614dae565b8152602001614a33614dae565b8152602001614a40614dae565b8152602001614a4d614dae565b8152602001614a5a614dae565b8152602001614a67614dae565b8152602001614a74614dae565b8152602001614a81614dae565b8152602001614a8e614dae565b8152602001614a9b614dae565b8152602001614aa8614dae565b8152602001614ab5614dae565b8152602001614ac2614dae565b8152602001614acf614dae565b905290565b604051806101e00160405280614ae8614de5565b8152602001614af5614c44565b8152602001614b02614c44565b8152602001614b0f614c44565b8152602001614b1c614c44565b8152602001614b29614c44565b8152602001614b36614c44565b8152602001614b43614c44565b8152602001614b50614c44565b8152602001614b5d614e04565b8152602001614b6a614e32565b8152602001614b77614e51565b8152602001614b84614cd6565b8152602001614b91614c44565b8152602001614acf614c44565b604051806101000160405280614bb2614c68565b8152602001614bbf614c98565b8152602001614bcc614cd6565b8152602001614bd9614cd6565b81526020015f81526020015f81526020015f81526020015f81525090565b604051806108c001604052806046906020820280368337509192915050565b604051806108c001604052806046905b614c2e614dae565b815260200190600190039081614c265790505090565b60405180608001604052805f81526020015f81526020015f81526020015f81525090565b6040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6040518061032001604052806019906020820280368337509192915050565b6040518061012001604052806009906020820280368337509192915050565b604051806103800160405280601c906020820280368337509192915050565b6040518061052001604052806029906020820280368337509192915050565b60405180610da00160405280606d906020820280368337509192915050565b604051806103a00160405280601d906020820280368337509192915050565b6040518060a001604052806005906020820280368337509192915050565b6040518061010001604052806008906020820280368337509192915050565b604051806103400160405280601a906020820280368337509192915050565b60405180604001604052805f81526020015f81525090565b604051806101a00160405280600d906020820280368337509192915050565b6040518061020001604052806010906020820280368337509192915050565b604051806103800160405280601c905b614e1c614d70565b815260200190600190039081614e145790505090565b6040518061050001604052806028906020820280368337509192915050565b604051806103600160405280601b905b614e69614c44565b815260200190600190039081614e615790505090565b5f5f5f5f60408587031215614e92575f5ffd5b84356001600160401b03811115614ea7575f5ffd5b8501601f81018713614eb7575f5ffd5b80356001600160401b03811115614ecc575f5ffd5b876020828401011115614edd575f5ffd5b6020918201955093508501356001600160401b03811115614efc575f5ffd5b8501601f81018713614f0c575f5ffd5b80356001600160401b03811115614f21575f5ffd5b8760208260051b8401011115614f35575f5ffd5b949793965060200194505050565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176120cd576120cd614f43565b818103818111156120cd576120cd614f43565b808201808211156120cd576120cd614f43565b5f5f85851115614fa2575f5ffd5b83861115614fae575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52603260045260245ffd5b5f60018201614fe057614fe0614f43565b5060010190565b803560208310156120cd575f19602084900360031b1b1692915050565b5f8183825b6009811015615028578151835260209283019290910190600101615009565b5050506101208201905092915050565b634e487b7160e01b5f52601260045260245ffd5b5f8261505a5761505a615038565b500490565b5f8183825b6029811015615083578151835260209283019290910190600101615064565b5050506105208201905092915050565b5f8183825b606d8110156150b7578151835260209283019290910190600101615098565b505050610da08201905092915050565b5f8183825b601d8110156150eb5781518352602092830192909101906001016150cc565b5050506103a08201905092915050565b5f8183825b600581101561511f578151835260209283019290910190600101615100565b50505060a08201905092915050565b5f8261513c5761513c615038565b500690565b5f8161514f5761514f614f43565b505f190190565b5f82518060208501845e5f920191825250919050565b5f6020828403121561517c575f5ffd5b815180151581146119f7575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b81515f90829060208501835b828110156151c95781518452602093840193909101906001016151ab565b509195945050505050565b5f8183825b600d8110156151f85781518352602092830192909101906001016151d9565b5050506101a08201905092915050565b634e487b7160e01b5f52602160045260245ffdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001";
4
+ export declare const HonkVerifierBytecode = "0x60e0604052348015600e575f5ffd5b506302000000608052601960a05261040c60c05260805160a05160c05161525b61005a5f395f61063401525f818161073f01528181610d210152610dbd01525f6105d8015261525b5ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063ea50d0e41461002d575b5f5ffd5b61004061003b366004614e7d565b610054565b604051901515815260200160405180910390f35b5f6100626101c86020614f55565b8414610081576040516376ba560560e11b815260040160405180910390fd5b5f61008a6101a5565b90505f61009787876101ba565b9050601082604001516100aa9190614f6c565b84146100c95760405163fa06659360e01b815260040160405180910390fd5b5f6100e0828787865f015187604001516001610513565b90506101308686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050855185516060810151608090910151919350915060016105c2565b815160a001525f6101418383610737565b905080610161576040516313f8744360e31b815260040160405180910390fd5b5f61016d848685610838565b90508061018d576040516352ec174560e11b815260040160405180910390fd5b8180156101975750805b9a9950505050505050505050565b6101ad614955565b6101b56110b5565b905090565b6101c2614ad2565b5f805b6010811015610224576101f18583866101df826020614f7f565b926101ec93929190614f92565b61199b565b8351826010811061020457610204614fb9565b60200201818152505060208261021a9190614f7f565b91506001016101c5565b50610248848285610236826080614f7f565b9261024393929190614f92565b6119fc565b6020830152610258608082614f7f565b905061026b848285610236826080614f7f565b604083015261027b608082614f7f565b905061028e848285610236826080614f7f565b606083015261029e608082614f7f565b90506102b1848285610236826080614f7f565b60c08301526102c1608082614f7f565b90506102d4848285610236826080614f7f565b60e08301526102e4608082614f7f565b90506102f7848285610236826080614f7f565b60808084019190915261030a9082614f7f565b905061031d848285610236826080614f7f565b61010083015261032e608082614f7f565b9050610341848285610236826080614f7f565b60a0830152610351608082614f7f565b90505f5b601c8110156103d0575f5b60088110156103c75761037a8684876101df826020614f7f565b84610120015183601c811061039157610391614fb9565b602002015182600881106103a7576103a7614fb9565b6020020181815250506020836103bd9190614f7f565b9250600101610360565b50600101610355565b505f5b6028811015610424576103ed8583866101df826020614f7f565b836101400151826028811061040457610404614fb9565b60200201818152505060208261041a9190614f7f565b91506001016103d3565b505f5b6104336001601c614f6c565b81101561047c5761044b858386610236826080614f7f565b83610160015182601b811061046257610462614fb9565b6020020152610472608083614f7f565b9150600101610427565b505f5b601c8110156104d0576104998583866101df826020614f7f565b83610180015182601c81106104b0576104b0614fb9565b6020020181815250506020826104c69190614f7f565b915060010161047f565b506104e2848285610236826080614f7f565b6101a08301526104f3608082614f7f565b9050610506848285610236826080614f7f565b6101c08301525092915050565b61051b614b9c565b5f61052b88888888888887611acc565b908352905061053a8189611b22565b6020840191909152905061054d81611cbc565b604084019190915290506105618882611d1d565b606084019190915290506105758882611df1565b608084019190915290506105898882611e7c565b60a0840191909152905061059d8882611fea565b60c084019190915290506105b1888261205c565b5060e0830152509695505050505050565b5f6001808261060b86610606896106016105fc8a7f0000000000000000000000000000000000000000000000000000000000000000614f7f565b6120b3565b6120d1565b6120ea565b90505f610629876106248a6106016105fc8b6001614f7f565b612103565b90505f5b61065860107f0000000000000000000000000000000000000000000000000000000000000000614f6c565b8110156106c5575f6106828c838151811061067557610675614fb9565b60200260200101516120b3565b90506106928661060186846120ea565b95506106a28561060185846120ea565b94506106ae848b6120ea565b93506106ba838b612103565b92505060010161062d565b505f5b601081101561072c575f8a82601081106106e4576106e4614fb9565b602002015190506106f98661060186846120ea565b95506107098561060185846120ea565b9450610715848b6120ea565b9350610721838b612103565b9250506001016106c8565b506101978484612132565b5f806001815b7f000000000000000000000000000000000000000000000000000000000000000081101561080e575f86610120015182601c811061077d5761077d614fb9565b602002015190505f61078f8286612140565b9050806107af576040516313f8744360e31b815260040160405180910390fd5b5f876060015184601c81106107c6576107c6614fb9565b602002015190506107d7838261215d565b95506107fe886040015185601c81106107f2576107f2614fb9565b6020020151868361230c565b945050505080600101905061073d565b505f610828866101400151865f0151876020015185612337565b90508281145b9695505050505050565b5f61087f6040518061012001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f61088d8460a001516123a5565b9050610897614bf5565b61089f614c14565b60e08601516108be906108b990855f5b6020020151612103565b61240a565b60a085015260e08601516108dd906108b990855f5b60200201516120ea565b60c080860182905260a0860151908801516108fc9261060691906120d1565b845260a086015161092a906109109061240a565b6106018660a001516106248a60c001518960c001516120d1565b6020850152600182526101a088015161094290612473565b81526001606085018190525f60808601525b602381116109fa5761097561096b865f01516124b2565b86606001516120d1565b83826046811061098757610987614fb9565b602002015260808501516101408a01516109ca9190610606906109ab600186614f6c565b602881106109bb576109bb614fb9565b602002015188606001516120d1565b8560800181815250506109e5856060015188608001516120d1565b60608601526109f381614fcd565b9050610954565b505f610a0860236001614f7f565b90505b60288111610a8957610a2361096b86602001516124b2565b838260468110610a3557610a35614fb9565b602002015260808501516101408a0151610a599190610606906109ab600186614f6c565b856080018181525050610a74856060015188608001516120d1565b6060860152610a8281614fcd565b9050610a0b565b50606087015181600160200201526080870151816002602002015260a0870151816003602002015260c0870151816004602002015260e0870151816005602002015261010087015181600660200201526101208701518160076020020152610140870151816008602002015261016087015181600960200201526101a087015181600a602002015261018087015181600b60200201526101c087015181600c60200201526101e087015181600d602002015261020087015181600e602002015261022087015181600f60200201526102408701518160106020020152610260870151816011602002015261028087015181601260200201526102a087015181601360200201526102c087015181601460200201526102e08701518160156020020152610300870151816016602002015261032087015181601760200201526103408701518160186020020152610360870151816019602002015261038087015181601a60200201526103a087015181601b6020020181905250610c0f8860200151612473565b6103808201526040880151610c2390612473565b6103a08201526060880151610c3790612473565b6103c08201526080880151610c4b90612473565b6103e082015260a0880151610c5f90612473565b610400820152610100880151610c7490612473565b61042082015260c0880151610c8890612473565b61044082015260e0880151610c9c90612473565b6104608201526020880151610cb090612473565b6104808201526040880151610cc490612473565b6104a08201526060880151610cd890612473565b6104c08201526080880151610cec90612473565b6104e082015260a0880151610d0090612473565b610500820152606086015160808501516101808a01515f92610d45929091877f00000000000000000000000000000000000000000000000000000000000000006124ca565b805160a0870151919250610d58916120d1565b604086018190526101808a01515160c0890151610d88929161060691610d7e91906120d1565b8860c001516120d1565b604086015260c0870151610d9b906125e5565b60608601525f5b610dae6001601c614f6c565b811015610fb0575f610de160017f0000000000000000000000000000000000000000000000000000000000000000614f6c565b821015905080610f5657610e146108b98a60e0015188856001610e049190614f7f565b601c81106108af576108af614fb9565b60a088015260e0890151610e42906108b99088610e32866001614f7f565b601c81106108d3576108d3614fb9565b60c0880152606087015160a0880151610e5b91906120d1565b60e0880152606087015160c08a0151610e7791610d7e916120d1565b6101008801819052610e9990610e8c906124b2565b6106068960e001516124b2565b8583610ea760286001614f7f565b610eb19190614f7f565b60468110610ec157610ec1614fb9565b60200201526101008701516101808c01515f91610efd91610ee3866001614f7f565b601c8110610ef357610ef3614fb9565b60200201516120d1565b9050610f19816106068a60e0015187876001610ee39190614f7f565b9050610f298860400151826120ea565b6040890152606088015160c08b0151610f4f91610f45916120d1565b8b60c001516120d1565b6060890152505b610f7a8b610160015183601b8110610f7057610f70614fb9565b6020020151612473565b8483610f8860286001614f7f565b610f929190614f7f565b60468110610fa257610fa2614fb9565b602002015250600101610da2565b5060408051808201909152600181526002602082015282610fd3601c6028614f7f565b60468110610fe357610fe3614fb9565b6020020152604085015183610ffa601c6028614f7f565b6046811061100a5761100a614fb9565b60200201526101c08901515f9061102090612473565b90508083611030601c6028614f7f565b61103b906001614f7f565b6046811061104b5761104b614fb9565b602002015260e088015184611062601c6028614f7f565b61106d906001614f7f565b6046811061107d5761107d614fb9565b60200201525f61108d84866125f0565b90505f611099836126b6565b90506110a582826126fc565b9c9b505050505050505050505050565b6110bd614955565b50604080516103c08101825263020000008152601960208083019190915261040c82840152825180840184527f154145769781fc51e303af886691df45595eebc66494ddfcf5806fca0e8f555f81527f2fce680535bc067330b730328da33674da3af2646f10aed8e8b91c5e6f255462818301526060830152825180840184527f2b9b048d34eafe257a8280b700b52f434fd049a88dea9fc4de64940c1d77b4bf81527f1d6dae38e6bb62ead8f87c343b309a4c04701a14dc0a9c046875944591d92a75818301526080830152825180840184527f174d67ebc38470dfa98390dd32a64f243596ca4514f42943af22210ad83a76fe81527f0d13fd672d101506f16536fadc099bbd128d607bece66c7037c30a4fd8be417d8183015260a0830152825180840184527f1c62f9995f3d2f1f46121a2f1a4ca42a534d0cb862a43035a2fed49cf720e8c181527f01f4da0ce20acdd8c982f300d0770079d0ebe9f86b8a026d97334ebfcb1578448183015260c0830152825180840184527f195b50cc5370f4ccc72e3bfeca1a3d53864b6cb2515a74f5abda99b88ec0d1c781527f1a7720347dc26e1d9b1026df50dc6e0c0fa548ff7e7519d60172b27fe293675d8183015260e0830152825180840184527f185d397f813179d48ba907a60396310ee9322a7876660855736f0929d80f3b2e81527f26127a5dcc7a124bd0b4e225e13885f65d8f2249909896cd38f4ef85b94740c381830152610100830152825180840184527f25a5859635c879aab2434f0abb7d4d49ee8c6caab3e0be1e5dcc5b20164f96ef81527f2b8c29f921dad7a6b79c13d62ad140d6b2d14c0723f5650775209438e58af12281830152610120830152825180840184527f1dee935e8f04be926140a56f272448e892b082405a0dbb09289a6bd2071bf47481527f2e0a1cb1d2a742c6502ae1b7b4f9487b54a72cb6784f36da4f4a3705244194c881830152610140830152825180840184527f272147d400c228a2c53d8e86664a7d33ab81d9c63223a72189ab3397909f215781527f08abfd0396e3eb47a01cbf020d9a8e3ffb447c8a1af075d72cd321237e17462881830152610160830152825180840184527f022727763f1eba0e436d08ffd7da9b7b0c9c1ebddc48549e9b96ebb3f661a81a81527f153c5c75bafbf0ad1c3a431c2eac823788e4be6d9290a564d0c7ee680d961abb81830152610180830152825180840184527f05775e7427c8d7c8c2fc1fcaf14ca9bec5174f23777c4c688c3fd24e07c076aa81527f17c77ccd253e7e73f7260a00ba0fff89ee0d7a923ab7fafde89c9734e9d56a74818301526101a0830152825180840184527f0e188ffa07792fb39342d7820a20d2ded32d3b3febdcccdcb895c5bffe9cdb1881527f23c6645a97204f3907fa1fbf33e498c2c46bdb8356686fa27a5fe80e38bc40a4818301526101c0830152825180840184527e43d0dd6dff61a88c7baf92d2c3468d7610c9570223fd01d587cd8ebe76e20481527f1f4c74a12ad4ec46b896688627e883450cb5d2ee3dd72adcdb29ed548ab1fa76818301526101e0830152825180840184527f1a6300d1dc14a77b979ab0cce86af3173730a63529e8c0586db13d399b2d859481527f2d43612c94929e64f924bf83218002c49d58d9a1a899e37eba5ee7b27c35d88981830152610200830152825180840184527f0c4c56b49e7cd34782f9b53882351134d254e70519043b7a701013c98dc4b85e81527f249bbf1333da0ec7f0e86e9f55e9b14910570ca73807f6e0c98302b4f57e79da81830152610220830152825180840184527f16879d4e866f09c42ea84f0292b396fba58522752f791b7a45ced896c5257c3981527f013618b85ae921608943e037c90bff9a1e473a456ece35706db53b5247fe26fc81830152610240830152825180840184527f04502977e07af4771a538def7186527986f13d31dbe8c3708a7a2037630b66ce81527f20f75711e7274610096c3d734f58c1b859a726cfd74bd6536804ca0c2556ddeb81830152610260830152825180840184527f148bfa02a3aaac17fc931b4e0c60957901520dd2dee6d0445bd570db0dc2f39581527f2cd619975151d8a894ba2739f3b245ff4e7e5ab709c0b33a49a62d0607fd821881830152610280830152825180840184527f18f879fc5dcd60fe2103edd88c4c83b2d7c5e008fc0543e426261129c647035e81527f1e5232a2ef88e4d5b38616cb9d4ee509f5e46895bd1b5b1dd838350737ec2665818301526102a0830152825180840184527e1f94899e777e334bacf16ec04de7e3afb05a02c35f8ad424d976c8bf92b51981527f0cf4be2bb570d5114b7e02f91979ab2c9ce8afdad6697a0ef083fb0a9ed0906d818301526102c0830152825180840184527f0c8e5bce68752178362c285fd5b187d0661c5cdd1455da961bd4f1a797d09fc581527f06b758f2c95620c1a864bbc9736bb0d91ee3725cb576500d35c27fbd8f461739818301526102e0830152825180840184527f2f4e0e73619e22e05200bd9de4ea73a3fc38ac033787e58016ef8f6e0c20b1fb81527f2f2b94d720217b157176b458c9d8f1b192a1466618a7901bce7f435a1edd6da181830152610300830152825180840184527f2003a0aec140164182e4ff65e13c9fd005e08922f739d8b6423dcf8fa26f9ec281527f13793b4ea820fac86bf339259e4c76e9e5a49a35f7c1a1ccf7f2ed9e0215748881830152610320830152825180840184527f1abe3e80fbe4e7e479e25e018648cfbf398a6057281cecf3c3a76f220a62474081527f29a28edb5e574311167384f452aa8112795513c8c164fcbcd592386a7fbfc33381830152610340830152825180840184527f21ad8f9bf46d94bf9d93469d756464c74999dbb805c6ab7b2bfcb5c3a495c81081527f224803cf8531674748532f90c6a2a835030a07111344dc02418159a6178927a881830152610360830152825180840184526001815260028183015261038083015282518084019093527f2c8ba8b7588e820707a83fb97ea211c1808a14906e5185a03cec7863a0e9fccc83527f0ca11281dbf483c9976ba4ea389e3f1bde37428be0694e307cd86fa186f86141908301526103a081019190915290565b5f602082146119e85760405162461bcd60e51b815260206004820152601460248201527334b73b30b634b210313cba32b99039b1b0b630b960611b60448201526064015b60405180910390fd5b6119f56105fc8385614fe5565b9392505050565b611a04614c42565b60808214611a4a5760405162461bcd60e51b81526020600482015260136024820152721a5b9d985b1a5908189e5d195cc81c1bda5b9d606a1b60448201526064016119df565b604080516080810190915280611a6360205f8688614f92565b611a6c91614fe5565b8152602090810190611a82906040908688614f92565b611a8b91614fe5565b8152602001611a9e606060408688614f92565b611aa791614fe5565b8152602001611aba608060608688614f92565b611ac391614fe5565b90529392505050565b611ad4614c66565b5f611ae3898989898989612900565b604086019190915260208501919091529083529250611b02838a612da6565b608085019190915260608401919091529199919850909650505050505050565b611b2a614c96565b5f611b33614cb5565b848152610100848101805151602080850191909152815181015160408086019190915282518101516060808701919091529251830151608086015260a080890180515191870191909152805183015160c0870152805182015160e087015251909201519284019290925251611bc991611bae91849101615002565b604051602081830303815290604052805190602001206120b3565b9150611bd482612e75565b6020850152835260015b611bea6002601961504a565b811015611c6a57611c0783604051602001611bae91815260200190565b9250611c1283612e75565b85611c1e846002614f55565b60198110611c2e57611c2e614fb9565b6020020186611c3e856002614f55565b611c49906001614f7f565b60198110611c5957611c59614fb9565b602002019190915252600101611bde565b50611c8182604051602001611bae91815260200190565b91505f611c8d83612e75565b85611c9a60016019614f6c565b60198110611caa57611caa614fb9565b60200201919091525050509250929050565b611cc4614cd4565b5f805b601c811015611d1657611ce684604051602001611bae91815260200190565b93505f611cf285612e75565b8584601c8110611d0457611d04614fb9565b60200201919091525050600101611cc7565b5090929050565b611d25614cd4565b5f805b601c811015611de857611d39614cb5565b8481525f5b6008811015611da25786610120015183601c8110611d5e57611d5e614fb9565b60200201518160088110611d7457611d74614fb9565b602002015182611d85836001614f7f565b60098110611d9557611d95614fb9565b6020020152600101611d3e565b50611db781604051602001611bae9190615002565b94505f611dc386612e75565b8685601c8110611dd557611dd5614fb9565b6020020191909152505050600101611d28565b50909391925050565b5f5f611dfb614cf3565b8381525f5b6028811015611e4e578561014001518160288110611e2057611e20614fb9565b602002015182611e31836001614f7f565b60298110611e4157611e41614fb9565b6020020152600101611e00565b50611e6381604051602001611bae919061505d565b91505f611e6f83612e75565b5096929550919350505050565b5f5f611e86614d12565b8381525f5b611e976001601c614f6c565b811015611fd55785610160015181601b8110611eb557611eb5614fb9565b60200201515182611ec7836004614f55565b611ed2906001614f7f565b606d8110611ee257611ee2614fb9565b602002015261016086015181601b8110611efe57611efe614fb9565b60200201516020015182826004611f159190614f55565b611f20906002614f7f565b606d8110611f3057611f30614fb9565b602002015261016086015181601b8110611f4c57611f4c614fb9565b60200201516040015182611f61836004614f55565b611f6c906003614f7f565b606d8110611f7c57611f7c614fb9565b602002015261016086015181601b8110611f9857611f98614fb9565b60200201516060015182611fad836004614f55565b611fb8906004614f7f565b606d8110611fc857611fc8614fb9565b6020020152600101611e8b565b50611e6381604051602001611bae9190615091565b5f5f611ff4614d31565b8381525f5b601c8110156120475785610180015181601c811061201957612019614fb9565b60200201518261202a836001614f7f565b601d811061203a5761203a614fb9565b6020020152600101611ff9565b50611e6381604051602001611bae91906150c5565b5f5f612066614d50565b8381526101a085018051516020808401919091528151810151604080850191909152825181015160608086019190915292519092015160808401529051611e6391611bae918491016150f9565b5f6120cb5f51602061523b5f395f51905f528361512c565b92915050565b5f5f51602061523b5f395f51905f528284099392505050565b5f5f51602061523b5f395f51905f528284089392505050565b5f5f51602061523b5f395f51905f52612129835f51602061523b5f395f51905f52614f6c565b84089392505050565b5f6119f5836106018461240a565b81515f908190612152908560016108d3565b929092149392505050565b60408051610100810182527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffec5181526102d060208201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff1191810191909152609060608201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff71608082015260f060a08201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593effffd3160c08201526113b060e08201525f906001825b60088110156122445761223a826106018784612103565b9150600101612223565b5061224d614d6e565b5f5b60088110156122ae575f84826008811061226b5761226b614fb9565b60200201519050612280816106018985612103565b905061228b8161240a565b9050808383600881106122a0576122a0614fb9565b60200201525060010161224f565b505f5b6008811015612301575f8782600881106122cd576122cd614fb9565b602002015190506122ea81848460088110610ef357610ef3614fb9565b90506122f686826120ea565b9550506001016122b1565b5061082e84836120d1565b5f5f612322600161060685610601896001612103565b905061232e84826120d1565b95945050505050565b5f612340614d8d565b61234b868285612ea5565b61235786868386613051565b61236386868386613239565b61236e868285613435565b61237986828561361d565b61238586868386613966565b612390868285614200565b61239b8682856145cb565b61082e81856148c0565b6123ad614cd4565b81815260015b601c811015612404576123e5826123cb600184614f6c565b601c81106123db576123db614fb9565b60200201516125e5565b8282601c81106123f7576123f7614fb9565b60200201526001016123b3565b50919050565b5f5f8290505f604051602081526020808201526020604082015282606082015260025f51602061523b5f395f51905f520360808201525f51602061523b5f395f51905f5260a082015260205f60c08360055afa905080612468575f5ffd5b50505f519392505050565b61247b614dac565b604051806040016040528060888460200151901b845f015117815260200160888460600151901b8460400151178152509050919050565b5f6120cb825f51602061523b5f395f51905f52614f6c565b6124d2614cd4565b601c5b80156125db575f846124e8600184614f6c565b601c81106124f8576124f8614fb9565b602002015190505f8861250c600185614f6c565b601c811061251c5761251c614fb9565b602002015190505f61257761253b612534858c6120d1565b60026120d1565b6106248a61254a600189614f6c565b601c811061255a5761255a614fb9565b60200201516106016125718861060160018a612103565b87612103565b9050612598816106016108b961259287610601600189612103565b866120ea565b90508584116125c75797508780856125b1600187614f6c565b601c81106125c1576125c1614fb9565b60200201525b505050806125d49061513f565b90506124d5565b5095945050505050565b5f6120cb82836120d1565b6125f8614dac565b5f612605601c6028614f7f565b612610906002614f7f565b90506001604051855151604082015285516020015160608201528451608082015260408160606040840160075afa8216915060015b8381101561269e5760208102870160208202870181515160408501528151602001516060850152805160808501525050604080830160606040850160075afa8316925060408260808460065afa90921691600101612645565b50805184526020810151602085015250505092915050565b6126be614dac565b5f51602061521b5f395f51905f5282602001515f51602061521b5f395f51905f526126e99190614f6c565b6126f3919061512c565b60208301525090565b81516020808401518351848301516040805194850195909552938301919091527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c260608301527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed60808301527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b60a08301527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa60c083015260e08201526101008101919091527f260e01b251f6f1c7e7ff4e580791dee8ea51d87a358e038b4efe30fac09383c16101208201527f0118c4d5b837bcc2bc89b5b398b5974e9f5944073b32078b7e231fec938883b06101408201527f04fc6369f7110fe3d25156c1bb9a72859cf2a04641f99ba4ee413c80da6a5fe46101608201527f22febda3c0c0632a56475b4214e5615e11e6dd3f96e6cea2854a87d4dacc5e556101808201525f9081906101a00160405160208183030381529060405290505f5f60086001600160a01b0316836040516128929190615154565b5f60405180830381855afa9150503d805f81146128ca576040519150601f19603f3d011682016040523d82523d5f602084013e6128cf565b606091505b50915091505f818060200190518101906128e9919061516a565b90508280156128f55750805b979650505050505050565b5f80808080612910876003614f7f565b61291b90600c614f7f565b6001600160401b0381111561293257612932615189565b60405190808252806020026020018201604052801561295b578160200160208202803683370190505b509050875f1b815f8151811061297357612973614fb9565b602002602001018181525050865f1b8160018151811061299557612995614fb9565b602002602001018181525050855f1b816002815181106129b7576129b7614fb9565b60209081029190910101525f5b6129cf601089614f6c565b811015612a20578a8a828181106129e8576129e8614fb9565b90506020020135828260036129fd9190614f7f565b81518110612a0d57612a0d614fb9565b60209081029190910101526001016129c4565b505f5b6010811015612a91578b51612a4b908260108110612a4357612a43614fb9565b602002015190565b82826010612a5a8c6003614f7f565b612a649190614f6c565b612a6e9190614f7f565b81518110612a7e57612a7e614fb9565b6020908102919091010152600101612a23565b5060208b01515181612aa4896003614f7f565b81518110612ab457612ab4614fb9565b6020908102919091018101919091528b810151015181612ad5896003614f7f565b612ae0906001614f7f565b81518110612af057612af0614fb9565b6020908102919091018101919091528b01516040015181612b12896003614f7f565b612b1d906002614f7f565b81518110612b2d57612b2d614fb9565b6020908102919091018101919091528b01516060015181612b4f896003614f7f565b612b5a906003614f7f565b81518110612b6a57612b6a614fb9565b602090810291909101015260408b01515181612b87896003614f7f565b612b92906004614f7f565b81518110612ba257612ba2614fb9565b60209081029190910181019190915260408c0151015181612bc4896003614f7f565b612bcf906005614f7f565b81518110612bdf57612bdf614fb9565b60209081029190910101526040808c0151015181612bfe896003614f7f565b612c09906006614f7f565b81518110612c1957612c19614fb9565b602090810291909101015260408b01516060015181612c39896003614f7f565b612c44906007614f7f565b81518110612c5457612c54614fb9565b602090810291909101015260608b01515181612c71896003614f7f565b612c7c906008614f7f565b81518110612c8c57612c8c614fb9565b60209081029190910181019190915260608c0151015181612cae896003614f7f565b612cb9906009614f7f565b81518110612cc957612cc9614fb9565b602090810291909101015260608b01516040015181612ce9896003614f7f565b612cf490600a614f7f565b81518110612d0457612d04614fb9565b60209081029190910101526060808c0151015181612d23896003614f7f565b612d2e90600b614f7f565b81518110612d3e57612d3e614fb9565b602002602001018181525050612d5e81604051602001611bae919061519d565b9150612d6982612e75565b6040805160208101869052929750909550612d849101611bae565b91505f612d9083612e75565b50959c949b509499509097509195505050505050565b5f5f5f612db1614dc4565b85815260c085810180515160208085019190915281518101516040808601919091528251810151606080870191909152925183015160808087019190915260e0808b0180515160a089015280518501519688019690965285518301519087015293518301516101008601529288018051516101208601528051820151610140860152805184015161016086015251909101516101808401529051612e5b91611bae918491016151d2565b9150612e6682612e75565b90979096509194509092505050565b5f80826001600160801b038116608082901c612e90826120b3565b9450612e9b816120b3565b9350505050915091565b5f612eb1846007614925565b90507f183227397098d014dc2822db40c0ac2e9419f4243cdcb848a1f0fac9f80000005f612f12612f0c612ee6856003612103565b610601612f01612ef68b5f614925565b6106018c601c614925565b6106018b601b614925565b836120d1565b9050612f93612f88612f6f612f56612f3d85610606612f328d6002614925565b6106018e601b614925565b610606612f4b8c6003614925565b6106018d601c614925565b610606612f648b6004614925565b6106018c601d614925565b610606612f7d8a6005614925565b6106018b601e614925565b610606886001614925565b9050612fb281610606612fa7866001612103565b6106018a6026614925565b9050612fbe81846120d1565b9050612fca81856120d1565b8552505f9050613004612ffa612fef612fe488601b614925565b61060689601e614925565b610624886023614925565b610606875f614925565b905061301581610601846002612103565b905061302681610601846001612103565b905061303281836120d1565b905061303e81846120d1565b9050808460015b60200201525050505050565b5f5f5f61308761307d61306589601b614925565b6106066130738b6011614925565b8a606001516120d1565b87608001516120ea565b90506130c0816106016130b661309e8b601c614925565b6106066130ac8d6012614925565b8c606001516120d1565b89608001516120ea565b90506130e5816106016130b66130d78b601d614925565b6106066130ac8d6013614925565b905061310a816106016130b66130fc8b601e614925565b6106066130ac8d6014614925565b92505f905061312e61307d61312089601b614925565b6106066130738b600d614925565b9050613153816106016130b66131458b601c614925565b6106066130ac8d600e614925565b9050613178816106016130b661316a8b601d614925565b6106066130ac8d600f614925565b905061319d816106016130b661318f8b601e614925565b6106066130ac8d6010614925565b91505f90506131c46131be6131b389601f614925565b6106068a6019614925565b846120d1565b90506131f9816106246131f36131db8b6027614925565b6106066131e98d601a614925565b8c60a001516120d1565b856120d1565b905061320581856120d1565b6040860152505f6132286131f361321d89601a614925565b6106018a6027614925565b606090950194909452505050505050565b5f5f61329761327f6132676132526130b68a6015614925565b6106066132608b6016614925565b8a516120d1565b6106066132758a6017614925565b89602001516120d1565b61060661328d896018614925565b88604001516120d1565b91505f6132ce6132b56132ab89601b614925565b88608001516120ea565b6106066132c38a6003614925565b6106018b6023614925565b90505f6132f76132df89601c614925565b6106066132ec8b5f614925565b6106018c6024614925565b90505f6133216133088a601d614925565b6106066133168c6001614925565b6106018d6025614925565b905061336061334861333a85610606868d5f01516120d1565b610606848c602001516120d1565b6106066133568c6004614925565b8b604001516120d1565b93505050505f6133746131be886020614925565b90505f6133856131be896020614925565b90505f6133bd6133a46133998b6022614925565b6106068c6006614925565b6106246133b28c6022614925565b6106018d6006614925565b90505f6133e16133db6133d087896120d1565b6106018d6020614925565b83612103565b90506133ed81886120d1565b90505f6134156134076134018d6006614925565b876120d1565b6106246134018e6021614925565b60808a018390529050808960055b60200201525050505050505050505050565b5f6134415f6001612103565b90505f61344f5f6002612103565b90505f61345d5f6003612103565b90505f61347961346e88601c614925565b61062489601b614925565b90505f61349561348a89601d614925565b6106248a601c614925565b90505f6134b16134a68a601e614925565b6106248b601d614925565b90505f6134cd6134c28b6023614925565b6106248c601e614925565b9050836134de81610601818b6120ea565b90506134ee81610601878a6120ea565b90506134fe8161060187896120ea565b905061350f816106018d6008614925565b905061351b818a6120d1565b60c08b0152508261353081610601818b6120ea565b905061354081610601868a6120ea565b90506135508161060186896120ea565b9050613561816106018d6008614925565b905061356d818a6120d1565b60e08b0152508161358281610601818b6120ea565b905061359281610601858a6120ea565b90506135a28161060185896120ea565b90506135b3816106018d6008614925565b90506135bf818a6120d1565b6101008b015250806135d581610601818b6120ea565b90506135e581610601848a6120ea565b90506135f58161060184896120ea565b9050613606816106018d6008614925565b9050613612818a6120d1565b9050808a6009613423565b6136566040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61366184601c614925565b815261366e84601d614925565b602082015261367e846023614925565b604082015261368e846026614925565b606082015261369e846025614925565b60808201526136ae846024614925565b60a08201525f6136bf856002614925565b90505f6136cc865f614925565b90505f6136e08460400151855f0151612103565b90505f6136f5856020015186602001516120d1565b606086015190915086905f9061370b90806120d1565b90505f61372961372389602001518a606001516120d1565b886120d1565b90505f6137486137418a60a001518b604001516120ea565b8a516120ea565b905061375761340182886120d1565b905061377e61377861377261376c8487612103565b88612103565b846120ea565b836120ea565b90506137a661379b61379083876120d1565b6106018f6009614925565b61060160018a612103565b6101408c015250505050602085015160808601515f916137c5916120ea565b90505f6137e36137d98860600151886120d1565b8860200151612103565b90505f6138076137f384876120d1565b6106066131f38b60a001518c5f0151612103565b905061382f613824613819838c6120d1565b6106018e6009614925565b610601600189612103565b6101608b0152505f915061385090506138498360116120ea565b87516120d1565b90505f61385d83846120ea565b905061386981826120ea565b90505f6138778360096120d1565b90506138a061389a6131be6138938b60a001518c5f01516120ea565b8b516120ea565b82612103565b60c089018190525f906138bb9061372390613790908d6120d1565b90506138ce8b600a6020020151826120ea565b6101408c0152505086515f92506138f59150613849906138ee90806120ea565b88516120ea565b90505f613935613910836106018a5f01518b60a00151612103565b60208901516106249061392390806120ea565b6106018b602001518c608001516120ea565b905061395289600b6020020151610606613723613790858d6120d1565b89600b602002015250505050505050505050565b6139fa604051806102c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b613a2f613a16613a0b87601b614925565b610601886024614925565b610606613a24886023614925565b61060189601c614925565b8152613a74613a69613a50613a4588601b614925565b61060189601e614925565b610606613a5e89601c614925565b6106018a601d614925565b610624876025614925565b60408201819052613a8990600160441b6120d1565b60408201819052613a9f90610624876026614925565b604082018190528151613ab291906120ea565b60408201819052613ac890610601876005614925565b60408201528051613add90600160441b6120d1565b808252613afd90610606613af2886023614925565b610601896024614925565b80825260208201819052613b1990610624612fe488601d614925565b60208201819052613b2f90610601876004614925565b6020820152805160608201819052613b4c9061060687601e614925565b60608201819052613b7090610624613b65886025614925565b610606896026614925565b60608201819052613b8590610601875f614925565b8160600181815250505f613bae613ba4836020015184604001516120ea565b83606001516120ea565b9050613bbf81610601886003614925565b9050613bd7613bcf876024614925565b6140006120d1565b60808301819052613bed90610606886023614925565b60808301819052613c00906140006120d1565b60808301819052613c169061060688601d614925565b60808301819052613c29906140006120d1565b60808301819052613c3f9061060688601c614925565b60808301819052613c52906140006120d1565b60808301819052613c689061060688601b614925565b60808301819052613c7e9061062488601e614925565b60808301819052613c9490610601886005614925565b6080830152613ca7613bcf876025614925565b60a08301819052613cbd90610606886024614925565b60a08301819052613cd0906140006120d1565b60a08301819052613ce690610606886023614925565b60a08301819052613cf9906140006120d1565b60a08301819052613d0f9061060688601e614925565b60a08301819052613d22906140006120d1565b60a08301819052613d389061060688601d614925565b60a08301819052613d4e90610624886026614925565b60a08301819052613d6390610601885f614925565b60a0830181905260808301515f91613d7b91906120ea565b9050613d8c81610601896004614925565b9050613da6613d9c88601d614925565b87604001516120d1565b60c08401819052613dbf906106066132758a601c614925565b60c08401819052613ddf90610606613dd88a601b614925565b89516120d1565b60c08401819052613df590610606896001614925565b60c0840181905260e08401819052613e129061062489601e614925565b60c0840152613e2561346e886023614925565b610140840152613e44613e39886026614925565b61062489601e614925565b610120840152610140830151613e6990613e5e90806120d1565b846101400151612103565b610280840152610140830151613eab90613ea090613e999061060160015f51602061523b5f395f51905f52614f6c565b60016120ea565b8461012001516120d1565b6101608401819052613ee290613ed490610601613ec98b6002614925565b6106018c6003614925565b6106016134018a600a614925565b6101a0860152610280830151613f0490613ed490610601613ec98b6002614925565b6101c086015260c0830151613f2c90610601613f218a6002614925565b6106018b6003614925565b6101e08401525f613f4b613f4189601e614925565b8560e00151612103565b9050613f5a61389a82836120d1565b6101a0850152613f6e61328d896025614925565b6101008501819052613f9290610606613f888b6024614925565b8a602001516120d1565b6101008501819052613fac906106066132608b6023614925565b610100850152613fcb613fc0896026614925565b856101000151612103565b6101008501525f613fe06134a68a6025614925565b905061403461400e612f0c613e9988610140015160015f51602061523b5f395f51905f526106019190614f6c565b610601613e9988610100015160015f51602061523b5f395f51905f526106019190614f6c565b6101808601526101008501516140599061404e90806120d1565b866101000151612103565b6101c086015261018085015161408c90614078906106018c6007614925565b6106016140868c600a614925565b896120d1565b6101e08801526102808501516140ab90614078906106018c6007614925565b6102008801526101c08501516140ca90614078906106018c6007614925565b6102208801526101a08501516140e5906106018b6007614925565b6102008601526141046140f98a6024614925565b6106248b601c614925565b610220860152610140850151614143906134a69061413890613e999061060160015f51602061523b5f395f51905f52614f6c565b8761022001516120d1565b61024086018190526101e0860151610260870181905261417a916106069061060161416f8e6005614925565b6106018f6002614925565b610260860181905260c086015161419d91906106069061060161416f8e5f614925565b61026086018190526102008601516141b591906120ea565b61026086018190526141cb9061377290866120ea565b6102a086018190526141e5906106016140868c600a614925565b6102a0860181905287600c6020020152505050505050505050565b6142766040518061022001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61428f61428485601b614925565b610606866002614925565b81526142aa61429f85601c614925565b610606866003614925565b60208201526142c86142bd85601d614925565b610606866004614925565b60408201526142e66142db85601e614925565b610606866005614925565b60608201528051614318906143119061430a9061430390806120d1565b84516120d1565b83516120d1565b82516120d1565b608082015260208101516143569061434c906143429061433890806120d1565b84602001516120d1565b83602001516120d1565b82602001516120d1565b60a082015260408101516143949061438a906143809061437690806120d1565b84604001516120d1565b83604001516120d1565b82604001516120d1565b60c082015260608101516143d2906143c8906143be906143b490806120d1565b84606001516120d1565b83606001516120d1565b82606001516120d1565b60e0820152608081015160a08201516143eb91906120ea565b61010082015260c081015160e082015161440591906120ea565b61012082015260a08101516144299061441e90806120ea565b8261012001516120ea565b61014082015260e081015161444d9061444290806120ea565b8261010001516120ea565b61016082015261012081015161446390806120ea565b6101e082018190526144849061447990806120ea565b8261016001516120ea565b6101e082015261010081015161449a90806120ea565b6101a082018190526144bb906144b090806120ea565b8261014001516120ea565b6101a082018190526101608201516144d2916120ea565b6101808201526101408101516101e08201516144ee91906120ea565b6101c0820152614502612f0c85600b614925565b610200820181905261024084015161018083015161452d9261060691610601906106248a6023614925565b836012602002015261455d8360136020020151610606836102000151610601856101a001516106248a6024614925565b836013602002015261458d8360146020020151610606836102000151610601856101c001516106248a6025614925565b83601460200201526145bd8360156020020151610606836102000151610601856101e001516106248a6026614925565b836015602002015250505050565b61461d6040518061016001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f60405180608001604052806146527f10dc6e9c006ea38b04b1e03b4bd9490c0d03f98929ca1d7fb56821fd19d3b6e76120b3565b81526020016146807f0c28145b6a44df3e0149b3d0a30b3bb599df9756d4dd9b84a86b38cfb45a740b6120b3565b81526020016146ad7e544b8338791518b2c7645a50392798b21f75bb60e3596170067d00141cac156120b3565b81526020016146db7f222c01175718386f2e2e82eb122789e352e105a3b8fa852613bc534433ee428b6120b3565b905290506146f86146ed86601b614925565b610606876002614925565b610120830181905261472c9061472190613ea09061471690806120d1565b8561012001516120d1565b8361012001516120d1565b825261473985601c614925565b602083015261474985601d614925565b604083015261475985601e614925565b60608301528151602083015161478191613ba49161477791906120ea565b84604001516120ea565b60808301526147946131be86600c614925565b61014083015281516147b5906147ab90835f610ef3565b83608001516120ea565b60a08301526147e184601660200201516106068461014001516106018660a001516106248b6023614925565b6102c085015260208201516147fc906147ab90836001610ef3565b60c083015261482884601760200201516106068461014001516106018660c001516106248b6024614925565b6102e08501526040820151614843906147ab90836002610ef3565b60e083015261486f84601860200201516106068461014001516106018660e001516106248b6025614925565b610300850152606082015161488a906147ab90836003610ef3565b6101008301526148b884601960200201516106068461014001516106018661010001516106248b6026614925565b846019613045565b5f6148cc8184816108d3565b905060015b601a81101561491e57614914826106068684601a81106148f3576148f3614fb9565b602002015186614904600187614f6c565b60198110610ef357610ef3614fb9565b91506001016148d1565b5092915050565b5f8282602781111561493957614939615206565b6028811061494957614949614fb9565b60200201519392505050565b604051806103c001604052805f81526020015f81526020015f815260200161497b614dac565b8152602001614988614dac565b8152602001614995614dac565b81526020016149a2614dac565b81526020016149af614dac565b81526020016149bc614dac565b81526020016149c9614dac565b81526020016149d6614dac565b81526020016149e3614dac565b81526020016149f0614dac565b81526020016149fd614dac565b8152602001614a0a614dac565b8152602001614a17614dac565b8152602001614a24614dac565b8152602001614a31614dac565b8152602001614a3e614dac565b8152602001614a4b614dac565b8152602001614a58614dac565b8152602001614a65614dac565b8152602001614a72614dac565b8152602001614a7f614dac565b8152602001614a8c614dac565b8152602001614a99614dac565b8152602001614aa6614dac565b8152602001614ab3614dac565b8152602001614ac0614dac565b8152602001614acd614dac565b905290565b604051806101e00160405280614ae6614de3565b8152602001614af3614c42565b8152602001614b00614c42565b8152602001614b0d614c42565b8152602001614b1a614c42565b8152602001614b27614c42565b8152602001614b34614c42565b8152602001614b41614c42565b8152602001614b4e614c42565b8152602001614b5b614e02565b8152602001614b68614e30565b8152602001614b75614e4f565b8152602001614b82614cd4565b8152602001614b8f614c42565b8152602001614acd614c42565b604051806101000160405280614bb0614c66565b8152602001614bbd614c96565b8152602001614bca614cd4565b8152602001614bd7614cd4565b81526020015f81526020015f81526020015f81526020015f81525090565b604051806108c001604052806046906020820280368337509192915050565b604051806108c001604052806046905b614c2c614dac565b815260200190600190039081614c245790505090565b60405180608001604052805f81526020015f81526020015f81526020015f81525090565b6040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6040518061032001604052806019906020820280368337509192915050565b6040518061012001604052806009906020820280368337509192915050565b604051806103800160405280601c906020820280368337509192915050565b6040518061052001604052806029906020820280368337509192915050565b60405180610da00160405280606d906020820280368337509192915050565b604051806103a00160405280601d906020820280368337509192915050565b6040518060a001604052806005906020820280368337509192915050565b6040518061010001604052806008906020820280368337509192915050565b604051806103400160405280601a906020820280368337509192915050565b60405180604001604052805f81526020015f81525090565b604051806101a00160405280600d906020820280368337509192915050565b6040518061020001604052806010906020820280368337509192915050565b604051806103800160405280601c905b614e1a614d6e565b815260200190600190039081614e125790505090565b6040518061050001604052806028906020820280368337509192915050565b604051806103600160405280601b905b614e67614c42565b815260200190600190039081614e5f5790505090565b5f5f5f5f60408587031215614e90575f5ffd5b84356001600160401b03811115614ea5575f5ffd5b8501601f81018713614eb5575f5ffd5b80356001600160401b03811115614eca575f5ffd5b876020828401011115614edb575f5ffd5b6020918201955093508501356001600160401b03811115614efa575f5ffd5b8501601f81018713614f0a575f5ffd5b80356001600160401b03811115614f1f575f5ffd5b8760208260051b8401011115614f33575f5ffd5b949793965060200194505050565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176120cb576120cb614f41565b818103818111156120cb576120cb614f41565b808201808211156120cb576120cb614f41565b5f5f85851115614fa0575f5ffd5b83861115614fac575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52603260045260245ffd5b5f60018201614fde57614fde614f41565b5060010190565b803560208310156120cb575f19602084900360031b1b1692915050565b5f8183825b6009811015615026578151835260209283019290910190600101615007565b5050506101208201905092915050565b634e487b7160e01b5f52601260045260245ffd5b5f8261505857615058615036565b500490565b5f8183825b6029811015615081578151835260209283019290910190600101615062565b5050506105208201905092915050565b5f8183825b606d8110156150b5578151835260209283019290910190600101615096565b505050610da08201905092915050565b5f8183825b601d8110156150e95781518352602092830192909101906001016150ca565b5050506103a08201905092915050565b5f8183825b600581101561511d5781518352602092830192909101906001016150fe565b50505060a08201905092915050565b5f8261513a5761513a615036565b500690565b5f8161514d5761514d614f41565b505f190190565b5f82518060208501845e5f920191825250919050565b5f6020828403121561517a575f5ffd5b815180151581146119f5575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b81515f90829060208501835b828110156151c75781518452602093840193909101906001016151a9565b509195945050505050565b5f8183825b600d8110156151f65781518352602092830192909101906001016151d7565b5050506101a08201905092915050565b634e487b7160e01b5f52602160045260245ffdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001";
5
5
  /**
6
6
  * HonkVerifier link references.
7
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"HonkVerifierBytecode.d.ts","sourceRoot":"","sources":["../src/HonkVerifierBytecode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,oBAAoB,q3yCAAq3yC,CAAC;AACv5yC;;GAEG;AACH,eAAO,MAAM,0BAA0B,IAAc,CAAC"}
1
+ {"version":3,"file":"HonkVerifierBytecode.d.ts","sourceRoot":"","sources":["../src/HonkVerifierBytecode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,oBAAoB,i3yCAAi3yC,CAAC;AACn5yC;;GAEG;AACH,eAAO,MAAM,0BAA0B,IAAc,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * HonkVerifier bytecode.
3
- */ export const HonkVerifierBytecode = "0x60e0604052348015600e575f5ffd5b506302000000608052601960a05261040c60c05260805160a05160c05161525d61005a5f395f61063401525f818161073f01528181610d210152610dbd01525f6105d8015261525d5ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063ea50d0e41461002d575b5f5ffd5b61004061003b366004614e7f565b610054565b604051901515815260200160405180910390f35b5f6100626101c86020614f57565b8414610081576040516376ba560560e11b815260040160405180910390fd5b5f61008a6101a5565b90505f61009787876101ba565b9050601082604001516100aa9190614f6e565b84146100c95760405163fa06659360e01b815260040160405180910390fd5b5f6100e0828787865f015187604001516001610513565b90506101308686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050855185516060810151608090910151919350915060016105c2565b815160a001525f6101418383610737565b905080610161576040516313f8744360e31b815260040160405180910390fd5b5f61016d848685610838565b90508061018d576040516352ec174560e11b815260040160405180910390fd5b8180156101975750805b9a9950505050505050505050565b6101ad614957565b6101b56110b5565b905090565b6101c2614ad4565b5f805b6010811015610224576101f18583866101df826020614f81565b926101ec93929190614f94565b61199d565b8351826010811061020457610204614fbb565b60200201818152505060208261021a9190614f81565b91506001016101c5565b50610248848285610236826080614f81565b9261024393929190614f94565b6119fe565b6020830152610258608082614f81565b905061026b848285610236826080614f81565b604083015261027b608082614f81565b905061028e848285610236826080614f81565b606083015261029e608082614f81565b90506102b1848285610236826080614f81565b60c08301526102c1608082614f81565b90506102d4848285610236826080614f81565b60e08301526102e4608082614f81565b90506102f7848285610236826080614f81565b60808084019190915261030a9082614f81565b905061031d848285610236826080614f81565b61010083015261032e608082614f81565b9050610341848285610236826080614f81565b60a0830152610351608082614f81565b90505f5b601c8110156103d0575f5b60088110156103c75761037a8684876101df826020614f81565b84610120015183601c811061039157610391614fbb565b602002015182600881106103a7576103a7614fbb565b6020020181815250506020836103bd9190614f81565b9250600101610360565b50600101610355565b505f5b6028811015610424576103ed8583866101df826020614f81565b836101400151826028811061040457610404614fbb565b60200201818152505060208261041a9190614f81565b91506001016103d3565b505f5b6104336001601c614f6e565b81101561047c5761044b858386610236826080614f81565b83610160015182601b811061046257610462614fbb565b6020020152610472608083614f81565b9150600101610427565b505f5b601c8110156104d0576104998583866101df826020614f81565b83610180015182601c81106104b0576104b0614fbb565b6020020181815250506020826104c69190614f81565b915060010161047f565b506104e2848285610236826080614f81565b6101a08301526104f3608082614f81565b9050610506848285610236826080614f81565b6101c08301525092915050565b61051b614b9e565b5f61052b88888888888887611ace565b908352905061053a8189611b24565b6020840191909152905061054d81611cbe565b604084019190915290506105618882611d1f565b606084019190915290506105758882611df3565b608084019190915290506105898882611e7e565b60a0840191909152905061059d8882611fec565b60c084019190915290506105b1888261205e565b5060e0830152509695505050505050565b5f6001808261060b86610606896106016105fc8a7f0000000000000000000000000000000000000000000000000000000000000000614f81565b6120b5565b6120d3565b6120ec565b90505f610629876106248a6106016105fc8b6001614f81565b612105565b90505f5b61065860107f0000000000000000000000000000000000000000000000000000000000000000614f6e565b8110156106c5575f6106828c838151811061067557610675614fbb565b60200260200101516120b5565b90506106928661060186846120ec565b95506106a28561060185846120ec565b94506106ae848b6120ec565b93506106ba838b612105565b92505060010161062d565b505f5b601081101561072c575f8a82601081106106e4576106e4614fbb565b602002015190506106f98661060186846120ec565b95506107098561060185846120ec565b9450610715848b6120ec565b9350610721838b612105565b9250506001016106c8565b506101978484612134565b5f806001815b7f000000000000000000000000000000000000000000000000000000000000000081101561080e575f86610120015182601c811061077d5761077d614fbb565b602002015190505f61078f8286612142565b9050806107af576040516313f8744360e31b815260040160405180910390fd5b5f876060015184601c81106107c6576107c6614fbb565b602002015190506107d7838261215f565b95506107fe886040015185601c81106107f2576107f2614fbb565b6020020151868361230e565b945050505080600101905061073d565b505f610828866101400151865f0151876020015185612339565b90508281145b9695505050505050565b5f61087f6040518061012001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f61088d8460a001516123a7565b9050610897614bf7565b61089f614c16565b60e08601516108be906108b990855f5b6020020151612105565b61240c565b60a085015260e08601516108dd906108b990855f5b60200201516120ec565b60c080860182905260a0860151908801516108fc9261060691906120d3565b845260a086015161092a906109109061240c565b6106018660a001516106248a60c001518960c001516120d3565b6020850152600182526101a088015161094290612475565b81526001606085018190525f60808601525b602381116109fa5761097561096b865f01516124b4565b86606001516120d3565b83826046811061098757610987614fbb565b602002015260808501516101408a01516109ca9190610606906109ab600186614f6e565b602881106109bb576109bb614fbb565b602002015188606001516120d3565b8560800181815250506109e5856060015188608001516120d3565b60608601526109f381614fcf565b9050610954565b505f610a0860236001614f81565b90505b60288111610a8957610a2361096b86602001516124b4565b838260468110610a3557610a35614fbb565b602002015260808501516101408a0151610a599190610606906109ab600186614f6e565b856080018181525050610a74856060015188608001516120d3565b6060860152610a8281614fcf565b9050610a0b565b50606087015181600160200201526080870151816002602002015260a0870151816003602002015260c0870151816004602002015260e0870151816005602002015261010087015181600660200201526101208701518160076020020152610140870151816008602002015261016087015181600960200201526101a087015181600a602002015261018087015181600b60200201526101c087015181600c60200201526101e087015181600d602002015261020087015181600e602002015261022087015181600f60200201526102408701518160106020020152610260870151816011602002015261028087015181601260200201526102a087015181601360200201526102c087015181601460200201526102e08701518160156020020152610300870151816016602002015261032087015181601760200201526103408701518160186020020152610360870151816019602002015261038087015181601a60200201526103a087015181601b6020020181905250610c0f8860200151612475565b6103808201526040880151610c2390612475565b6103a08201526060880151610c3790612475565b6103c08201526080880151610c4b90612475565b6103e082015260a0880151610c5f90612475565b610400820152610100880151610c7490612475565b61042082015260c0880151610c8890612475565b61044082015260e0880151610c9c90612475565b6104608201526020880151610cb090612475565b6104808201526040880151610cc490612475565b6104a08201526060880151610cd890612475565b6104c08201526080880151610cec90612475565b6104e082015260a0880151610d0090612475565b610500820152606086015160808501516101808a01515f92610d45929091877f00000000000000000000000000000000000000000000000000000000000000006124cc565b805160a0870151919250610d58916120d3565b604086018190526101808a01515160c0890151610d88929161060691610d7e91906120d3565b8860c001516120d3565b604086015260c0870151610d9b906125e7565b60608601525f5b610dae6001601c614f6e565b811015610fb0575f610de160017f0000000000000000000000000000000000000000000000000000000000000000614f6e565b821015905080610f5657610e146108b98a60e0015188856001610e049190614f81565b601c81106108af576108af614fbb565b60a088015260e0890151610e42906108b99088610e32866001614f81565b601c81106108d3576108d3614fbb565b60c0880152606087015160a0880151610e5b91906120d3565b60e0880152606087015160c08a0151610e7791610d7e916120d3565b6101008801819052610e9990610e8c906124b4565b6106068960e001516124b4565b8583610ea760286001614f81565b610eb19190614f81565b60468110610ec157610ec1614fbb565b60200201526101008701516101808c01515f91610efd91610ee3866001614f81565b601c8110610ef357610ef3614fbb565b60200201516120d3565b9050610f19816106068a60e0015187876001610ee39190614f81565b9050610f298860400151826120ec565b6040890152606088015160c08b0151610f4f91610f45916120d3565b8b60c001516120d3565b6060890152505b610f7a8b610160015183601b8110610f7057610f70614fbb565b6020020151612475565b8483610f8860286001614f81565b610f929190614f81565b60468110610fa257610fa2614fbb565b602002015250600101610da2565b5060408051808201909152600181526002602082015282610fd3601c6028614f81565b60468110610fe357610fe3614fbb565b6020020152604085015183610ffa601c6028614f81565b6046811061100a5761100a614fbb565b60200201526101c08901515f9061102090612475565b90508083611030601c6028614f81565b61103b906001614f81565b6046811061104b5761104b614fbb565b602002015260e088015184611062601c6028614f81565b61106d906001614f81565b6046811061107d5761107d614fbb565b60200201525f61108d84866125f2565b90505f611099836126b8565b90506110a582826126fe565b9c9b505050505050505050505050565b6110bd614957565b50604080516103c08101825263020000008152601960208083019190915261040c82840152825180840184527f1d3f6c4f254599191da5308cb600563f25cc189302fda1ff974624cb766507c881527f29ea062935de86e3e730b3d5a9ff1812c90415e0d36391ebba23723a966bdb3a818301526060830152825180840184527f226d7967352d2d66bea3bdfc710737c648886e245e3d17472631e3ba704045ab81527f28f58220d322790460baccd2f57415b2af4050c2cc19b9f75f8f76a4df27d3e2818301526080830152825180840184527f305cffa652147dbb78e56538d95cbc8f1ef72558daacf5641592efa8474e7db481527f2c2b9023386a94f5018a7f5ae185b188bca5784b7d5ec25e333fe131c3fe71308183015260a0830152825180840184527f0bdda4989b79f2d12e9716d6a0398fff6ffd07a21ab01037bb5d576f1e79601d81527f2175c971d1c1e4d244287b57859ffaa657efd308331c3bc4b3aeacaa585caf7b8183015260c0830152825180840184527f06361975e858c40f41732defd018ea1744c903ed913e5395a75b4619f1e52c1181527f03fa3276f24a5610f4e89fdb196aa4d58e682363e3db74ab74cef6dc0cce8ff08183015260e0830152825180840184527f11519bd8c9baf4e5dfaf2202b477ddd2a71642958e6d344d988b21fc0462c0ad81527f19e87b75a14f428110d402370835a77dd922212bca240b3a3de4c576896b990a81830152610100830152825180840184527f25a5859635c879aab2434f0abb7d4d49ee8c6caab3e0be1e5dcc5b20164f96ef81527f2b8c29f921dad7a6b79c13d62ad140d6b2d14c0723f5650775209438e58af12281830152610120830152825180840184527f169ade294e42e1bd18710d07147cc925a5a907b94fad4d2b811c3fc1354178f681527f029208937f2fdc496e8c7dbb5b44b32bb9d21dd100fccfdc7c4eb2f17272fc5481830152610140830152825180840184527f1d03f655954abc2e44a3e196ad331169aa61a005b2c0a8b6dd77aad7231769b781527f1cf9e000661d05f92c789cd242b7bf2879a1af25b2c59951b07d0095422c857981830152610160830152825180840184527f1661de4b3d5bc0a131b65cb2cddc0f73881b1a2a6cb3db70a3857900ed5edde581527f15e16951b86c6a1b86fb300df8fb10d41f5a393b190bdc54596d479495245b6881830152610180830152825180840184527f0a1803388e0820afcf10c9472c4a3055676772b0a25613df9f93405047563cc581527f0e0e157900d8247babb08961c290849fcec5dfe670cbee084294ffd5c9159e06818301526101a0830152825180840184527f178d04d500c4b1f6a3fb28232a88170bcda963fbe8a84b3a4367609557b54ba581527f0e7554f46e23aa8bfce4f844400eee5b9b3d275eb5e779f34659c84dad1b96ed818301526101c0830152825180840184527f1c59941775788d0eefe58d0cdc800712c27634f24affe5785c4a625ee02328ba81527f29e83885ac4f11cb4395d1c3aa9a3aa613bd848eec0eda011a9af7899c38bf63818301526101e0830152825180840184527f0b366bc769bab4d043b40818007136a960ffb2aba6067d8aa5b3e151094a00bb81527f2aad7cf160a1153e4f27b21689783932ad785c4bfe15b1bcd7e9645167f1713981830152610200830152825180840184527f090e5587dbb6f81a4e3145e0d6c0a27332eeccd1dbc7d8977e0f091543edb2f381527f02ce04233461716a9b1de69dda59084852efe322b51652daf920590bf4dfd34581830152610220830152825180840184527f1a6db67136003e3d08d5883fa3c9f7819c1d160911668619a7a9bfba07d07f1681527f2bddf26be606ea79dd5619256ea5d1fe84ceba529a3c9c0733ad10ca77ffa92481830152610240830152825180840184527f0cd7e9193db0842ae6a24411e01e706b94f685c362161f2d749a03b9153bfe4781527f07cec05beeed56897b6aae42f043781e41dbd3cb47889dd067e4337f2c77958681830152610260830152825180840184527f0f0b9aa54219a10be5e672717c4fed3486741da8971156ac4ed09b64823af68d81527f03be510c10715e1088ede62a4472ea74f99a6c5e57603a2f9d19b39075d578a181830152610280830152825180840184527f1e2e2caca3cc826e8a9c8379b88ef042bfd2af0e96da2c843fb41b8f739ba4e481527f018a6eae54c193b4cecd708547c8df037a004f3d7c9cde108c5e3d01fe8b63cb818301526102a0830152825180840184527f1603c7af8ae49f4e2243dc7fba3ac4f69c9896473edeea29320cc67dd26512ca81527f2feaa7a7b9ea3f0fc830e22d76e710f5ad9cc2308f0e5d943bced8c5e61511a3818301526102c0830152825180840184527f2b2bc8e723c93a8e2ddefa89be6199d18ee2b6cd8c34ed6029123afc0594463381527f1f0708dc0b3ae49b687990ee35732057e9aa9aeb8d7174c9be0212710a4875ec818301526102e0830152825180840184527f2f4e0e73619e22e05200bd9de4ea73a3fc38ac033787e58016ef8f6e0c20b1fb81527f2f2b94d720217b157176b458c9d8f1b192a1466618a7901bce7f435a1edd6da181830152610300830152825180840184527f2003a0aec140164182e4ff65e13c9fd005e08922f739d8b6423dcf8fa26f9ec281527f13793b4ea820fac86bf339259e4c76e9e5a49a35f7c1a1ccf7f2ed9e0215748881830152610320830152825180840184527f1abe3e80fbe4e7e479e25e018648cfbf398a6057281cecf3c3a76f220a62474081527f29a28edb5e574311167384f452aa8112795513c8c164fcbcd592386a7fbfc33381830152610340830152825180840184527f21ad8f9bf46d94bf9d93469d756464c74999dbb805c6ab7b2bfcb5c3a495c81081527f224803cf8531674748532f90c6a2a835030a07111344dc02418159a6178927a881830152610360830152825180840184526001815260028183015261038083015282518084019093527f07b0c95648ca8135e093b45e15d0d350ed23b4c49ebd99113de222681ef4c62183527f19b758cc3a695fa42efc8c049481eb4f70f44b29f4e4cf673edeeda6d65dd6de908301526103a081019190915290565b5f602082146119ea5760405162461bcd60e51b815260206004820152601460248201527334b73b30b634b210313cba32b99039b1b0b630b960611b60448201526064015b60405180910390fd5b6119f76105fc8385614fe7565b9392505050565b611a06614c44565b60808214611a4c5760405162461bcd60e51b81526020600482015260136024820152721a5b9d985b1a5908189e5d195cc81c1bda5b9d606a1b60448201526064016119e1565b604080516080810190915280611a6560205f8688614f94565b611a6e91614fe7565b8152602090810190611a84906040908688614f94565b611a8d91614fe7565b8152602001611aa0606060408688614f94565b611aa991614fe7565b8152602001611abc608060608688614f94565b611ac591614fe7565b90529392505050565b611ad6614c68565b5f611ae5898989898989612902565b604086019190915260208501919091529083529250611b04838a612da8565b608085019190915260608401919091529199919850909650505050505050565b611b2c614c98565b5f611b35614cb7565b848152610100848101805151602080850191909152815181015160408086019190915282518101516060808701919091529251830151608086015260a080890180515191870191909152805183015160c0870152805182015160e087015251909201519284019290925251611bcb91611bb091849101615004565b604051602081830303815290604052805190602001206120b5565b9150611bd682612e77565b6020850152835260015b611bec6002601961504c565b811015611c6c57611c0983604051602001611bb091815260200190565b9250611c1483612e77565b85611c20846002614f57565b60198110611c3057611c30614fbb565b6020020186611c40856002614f57565b611c4b906001614f81565b60198110611c5b57611c5b614fbb565b602002019190915252600101611be0565b50611c8382604051602001611bb091815260200190565b91505f611c8f83612e77565b85611c9c60016019614f6e565b60198110611cac57611cac614fbb565b60200201919091525050509250929050565b611cc6614cd6565b5f805b601c811015611d1857611ce884604051602001611bb091815260200190565b93505f611cf485612e77565b8584601c8110611d0657611d06614fbb565b60200201919091525050600101611cc9565b5090929050565b611d27614cd6565b5f805b601c811015611dea57611d3b614cb7565b8481525f5b6008811015611da45786610120015183601c8110611d6057611d60614fbb565b60200201518160088110611d7657611d76614fbb565b602002015182611d87836001614f81565b60098110611d9757611d97614fbb565b6020020152600101611d40565b50611db981604051602001611bb09190615004565b94505f611dc586612e77565b8685601c8110611dd757611dd7614fbb565b6020020191909152505050600101611d2a565b50909391925050565b5f5f611dfd614cf5565b8381525f5b6028811015611e50578561014001518160288110611e2257611e22614fbb565b602002015182611e33836001614f81565b60298110611e4357611e43614fbb565b6020020152600101611e02565b50611e6581604051602001611bb0919061505f565b91505f611e7183612e77565b5096929550919350505050565b5f5f611e88614d14565b8381525f5b611e996001601c614f6e565b811015611fd75785610160015181601b8110611eb757611eb7614fbb565b60200201515182611ec9836004614f57565b611ed4906001614f81565b606d8110611ee457611ee4614fbb565b602002015261016086015181601b8110611f0057611f00614fbb565b60200201516020015182826004611f179190614f57565b611f22906002614f81565b606d8110611f3257611f32614fbb565b602002015261016086015181601b8110611f4e57611f4e614fbb565b60200201516040015182611f63836004614f57565b611f6e906003614f81565b606d8110611f7e57611f7e614fbb565b602002015261016086015181601b8110611f9a57611f9a614fbb565b60200201516060015182611faf836004614f57565b611fba906004614f81565b606d8110611fca57611fca614fbb565b6020020152600101611e8d565b50611e6581604051602001611bb09190615093565b5f5f611ff6614d33565b8381525f5b601c8110156120495785610180015181601c811061201b5761201b614fbb565b60200201518261202c836001614f81565b601d811061203c5761203c614fbb565b6020020152600101611ffb565b50611e6581604051602001611bb091906150c7565b5f5f612068614d52565b8381526101a085018051516020808401919091528151810151604080850191909152825181015160608086019190915292519092015160808401529051611e6591611bb0918491016150fb565b5f6120cd5f51602061523d5f395f51905f528361512e565b92915050565b5f5f51602061523d5f395f51905f528284099392505050565b5f5f51602061523d5f395f51905f528284089392505050565b5f5f51602061523d5f395f51905f5261212b835f51602061523d5f395f51905f52614f6e565b84089392505050565b5f6119f7836106018461240c565b81515f908190612154908560016108d3565b929092149392505050565b60408051610100810182527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffec5181526102d060208201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff1191810191909152609060608201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff71608082015260f060a08201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593effffd3160c08201526113b060e08201525f906001825b60088110156122465761223c826106018784612105565b9150600101612225565b5061224f614d70565b5f5b60088110156122b0575f84826008811061226d5761226d614fbb565b60200201519050612282816106018985612105565b905061228d8161240c565b9050808383600881106122a2576122a2614fbb565b602002015250600101612251565b505f5b6008811015612303575f8782600881106122cf576122cf614fbb565b602002015190506122ec81848460088110610ef357610ef3614fbb565b90506122f886826120ec565b9550506001016122b3565b5061082e84836120d3565b5f5f612324600161060685610601896001612105565b905061233084826120d3565b95945050505050565b5f612342614d8f565b61234d868285612ea7565b61235986868386613053565b6123658686838661323b565b612370868285613437565b61237b86828561361f565b61238786868386613968565b612392868285614202565b61239d8682856145cd565b61082e81856148c2565b6123af614cd6565b81815260015b601c811015612406576123e7826123cd600184614f6e565b601c81106123dd576123dd614fbb565b60200201516125e7565b8282601c81106123f9576123f9614fbb565b60200201526001016123b5565b50919050565b5f5f8290505f604051602081526020808201526020604082015282606082015260025f51602061523d5f395f51905f520360808201525f51602061523d5f395f51905f5260a082015260205f60c08360055afa90508061246a575f5ffd5b50505f519392505050565b61247d614dae565b604051806040016040528060888460200151901b845f015117815260200160888460600151901b8460400151178152509050919050565b5f6120cd825f51602061523d5f395f51905f52614f6e565b6124d4614cd6565b601c5b80156125dd575f846124ea600184614f6e565b601c81106124fa576124fa614fbb565b602002015190505f8861250e600185614f6e565b601c811061251e5761251e614fbb565b602002015190505f61257961253d612536858c6120d3565b60026120d3565b6106248a61254c600189614f6e565b601c811061255c5761255c614fbb565b60200201516106016125738861060160018a612105565b87612105565b905061259a816106016108b961259487610601600189612105565b866120ec565b90508584116125c95797508780856125b3600187614f6e565b601c81106125c3576125c3614fbb565b60200201525b505050806125d690615141565b90506124d7565b5095945050505050565b5f6120cd82836120d3565b6125fa614dae565b5f612607601c6028614f81565b612612906002614f81565b90506001604051855151604082015285516020015160608201528451608082015260408160606040840160075afa8216915060015b838110156126a05760208102870160208202870181515160408501528151602001516060850152805160808501525050604080830160606040850160075afa8316925060408260808460065afa90921691600101612647565b50805184526020810151602085015250505092915050565b6126c0614dae565b5f51602061521d5f395f51905f5282602001515f51602061521d5f395f51905f526126eb9190614f6e565b6126f5919061512e565b60208301525090565b81516020808401518351848301516040805194850195909552938301919091527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c260608301527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed60808301527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b60a08301527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa60c083015260e08201526101008101919091527f260e01b251f6f1c7e7ff4e580791dee8ea51d87a358e038b4efe30fac09383c16101208201527f0118c4d5b837bcc2bc89b5b398b5974e9f5944073b32078b7e231fec938883b06101408201527f04fc6369f7110fe3d25156c1bb9a72859cf2a04641f99ba4ee413c80da6a5fe46101608201527f22febda3c0c0632a56475b4214e5615e11e6dd3f96e6cea2854a87d4dacc5e556101808201525f9081906101a00160405160208183030381529060405290505f5f60086001600160a01b0316836040516128949190615156565b5f60405180830381855afa9150503d805f81146128cc576040519150601f19603f3d011682016040523d82523d5f602084013e6128d1565b606091505b50915091505f818060200190518101906128eb919061516c565b90508280156128f75750805b979650505050505050565b5f80808080612912876003614f81565b61291d90600c614f81565b6001600160401b038111156129345761293461518b565b60405190808252806020026020018201604052801561295d578160200160208202803683370190505b509050875f1b815f8151811061297557612975614fbb565b602002602001018181525050865f1b8160018151811061299757612997614fbb565b602002602001018181525050855f1b816002815181106129b9576129b9614fbb565b60209081029190910101525f5b6129d1601089614f6e565b811015612a22578a8a828181106129ea576129ea614fbb565b90506020020135828260036129ff9190614f81565b81518110612a0f57612a0f614fbb565b60209081029190910101526001016129c6565b505f5b6010811015612a93578b51612a4d908260108110612a4557612a45614fbb565b602002015190565b82826010612a5c8c6003614f81565b612a669190614f6e565b612a709190614f81565b81518110612a8057612a80614fbb565b6020908102919091010152600101612a25565b5060208b01515181612aa6896003614f81565b81518110612ab657612ab6614fbb565b6020908102919091018101919091528b810151015181612ad7896003614f81565b612ae2906001614f81565b81518110612af257612af2614fbb565b6020908102919091018101919091528b01516040015181612b14896003614f81565b612b1f906002614f81565b81518110612b2f57612b2f614fbb565b6020908102919091018101919091528b01516060015181612b51896003614f81565b612b5c906003614f81565b81518110612b6c57612b6c614fbb565b602090810291909101015260408b01515181612b89896003614f81565b612b94906004614f81565b81518110612ba457612ba4614fbb565b60209081029190910181019190915260408c0151015181612bc6896003614f81565b612bd1906005614f81565b81518110612be157612be1614fbb565b60209081029190910101526040808c0151015181612c00896003614f81565b612c0b906006614f81565b81518110612c1b57612c1b614fbb565b602090810291909101015260408b01516060015181612c3b896003614f81565b612c46906007614f81565b81518110612c5657612c56614fbb565b602090810291909101015260608b01515181612c73896003614f81565b612c7e906008614f81565b81518110612c8e57612c8e614fbb565b60209081029190910181019190915260608c0151015181612cb0896003614f81565b612cbb906009614f81565b81518110612ccb57612ccb614fbb565b602090810291909101015260608b01516040015181612ceb896003614f81565b612cf690600a614f81565b81518110612d0657612d06614fbb565b60209081029190910101526060808c0151015181612d25896003614f81565b612d3090600b614f81565b81518110612d4057612d40614fbb565b602002602001018181525050612d6081604051602001611bb0919061519f565b9150612d6b82612e77565b6040805160208101869052929750909550612d869101611bb0565b91505f612d9283612e77565b50959c949b509499509097509195505050505050565b5f5f5f612db3614dc6565b85815260c085810180515160208085019190915281518101516040808601919091528251810151606080870191909152925183015160808087019190915260e0808b0180515160a089015280518501519688019690965285518301519087015293518301516101008601529288018051516101208601528051820151610140860152805184015161016086015251909101516101808401529051612e5d91611bb0918491016151d4565b9150612e6882612e77565b90979096509194509092505050565b5f80826001600160801b038116608082901c612e92826120b5565b9450612e9d816120b5565b9350505050915091565b5f612eb3846007614927565b90507f183227397098d014dc2822db40c0ac2e9419f4243cdcb848a1f0fac9f80000005f612f14612f0e612ee8856003612105565b610601612f03612ef88b5f614927565b6106018c601c614927565b6106018b601b614927565b836120d3565b9050612f95612f8a612f71612f58612f3f85610606612f348d6002614927565b6106018e601b614927565b610606612f4d8c6003614927565b6106018d601c614927565b610606612f668b6004614927565b6106018c601d614927565b610606612f7f8a6005614927565b6106018b601e614927565b610606886001614927565b9050612fb481610606612fa9866001612105565b6106018a6026614927565b9050612fc081846120d3565b9050612fcc81856120d3565b8552505f9050613006612ffc612ff1612fe688601b614927565b61060689601e614927565b610624886023614927565b610606875f614927565b905061301781610601846002612105565b905061302881610601846001612105565b905061303481836120d3565b905061304081846120d3565b9050808460015b60200201525050505050565b5f5f5f61308961307f61306789601b614927565b6106066130758b6011614927565b8a606001516120d3565b87608001516120ec565b90506130c2816106016130b86130a08b601c614927565b6106066130ae8d6012614927565b8c606001516120d3565b89608001516120ec565b90506130e7816106016130b86130d98b601d614927565b6106066130ae8d6013614927565b905061310c816106016130b86130fe8b601e614927565b6106066130ae8d6014614927565b92505f905061313061307f61312289601b614927565b6106066130758b600d614927565b9050613155816106016130b86131478b601c614927565b6106066130ae8d600e614927565b905061317a816106016130b861316c8b601d614927565b6106066130ae8d600f614927565b905061319f816106016130b86131918b601e614927565b6106066130ae8d6010614927565b91505f90506131c66131c06131b589601f614927565b6106068a6019614927565b846120d3565b90506131fb816106246131f56131dd8b6027614927565b6106066131eb8d601a614927565b8c60a001516120d3565b856120d3565b905061320781856120d3565b6040860152505f61322a6131f561321f89601a614927565b6106018a6027614927565b606090950194909452505050505050565b5f5f6132996132816132696132546130b88a6015614927565b6106066132628b6016614927565b8a516120d3565b6106066132778a6017614927565b89602001516120d3565b61060661328f896018614927565b88604001516120d3565b91505f6132d06132b76132ad89601b614927565b88608001516120ec565b6106066132c58a6003614927565b6106018b6023614927565b90505f6132f96132e189601c614927565b6106066132ee8b5f614927565b6106018c6024614927565b90505f61332361330a8a601d614927565b6106066133188c6001614927565b6106018d6025614927565b905061336261334a61333c85610606868d5f01516120d3565b610606848c602001516120d3565b6106066133588c6004614927565b8b604001516120d3565b93505050505f6133766131c0886020614927565b90505f6133876131c0896020614927565b90505f6133bf6133a661339b8b6022614927565b6106068c6006614927565b6106246133b48c6022614927565b6106018d6006614927565b90505f6133e36133dd6133d287896120d3565b6106018d6020614927565b83612105565b90506133ef81886120d3565b90505f6134176134096134038d6006614927565b876120d3565b6106246134038e6021614927565b60808a018390529050808960055b60200201525050505050505050505050565b5f6134435f6001612105565b90505f6134515f6002612105565b90505f61345f5f6003612105565b90505f61347b61347088601c614927565b61062489601b614927565b90505f61349761348c89601d614927565b6106248a601c614927565b90505f6134b36134a88a601e614927565b6106248b601d614927565b90505f6134cf6134c48b6023614927565b6106248c601e614927565b9050836134e081610601818b6120ec565b90506134f081610601878a6120ec565b90506135008161060187896120ec565b9050613511816106018d6008614927565b905061351d818a6120d3565b60c08b0152508261353281610601818b6120ec565b905061354281610601868a6120ec565b90506135528161060186896120ec565b9050613563816106018d6008614927565b905061356f818a6120d3565b60e08b0152508161358481610601818b6120ec565b905061359481610601858a6120ec565b90506135a48161060185896120ec565b90506135b5816106018d6008614927565b90506135c1818a6120d3565b6101008b015250806135d781610601818b6120ec565b90506135e781610601848a6120ec565b90506135f78161060184896120ec565b9050613608816106018d6008614927565b9050613614818a6120d3565b9050808a6009613425565b6136586040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61366384601c614927565b815261367084601d614927565b6020820152613680846023614927565b6040820152613690846026614927565b60608201526136a0846025614927565b60808201526136b0846024614927565b60a08201525f6136c1856002614927565b90505f6136ce865f614927565b90505f6136e28460400151855f0151612105565b90505f6136f7856020015186602001516120d3565b606086015190915086905f9061370d90806120d3565b90505f61372b61372589602001518a606001516120d3565b886120d3565b90505f61374a6137438a60a001518b604001516120ec565b8a516120ec565b905061375961340382886120d3565b905061378061377a61377461376e8487612105565b88612105565b846120ec565b836120ec565b90506137a861379d61379283876120d3565b6106018f6009614927565b61060160018a612105565b6101408c015250505050602085015160808601515f916137c7916120ec565b90505f6137e56137db8860600151886120d3565b8860200151612105565b90505f6138096137f584876120d3565b6106066131f58b60a001518c5f0151612105565b905061383161382661381b838c6120d3565b6106018e6009614927565b610601600189612105565b6101608b0152505f9150613852905061384b8360116120ec565b87516120d3565b90505f61385f83846120ec565b905061386b81826120ec565b90505f6138798360096120d3565b90506138a261389c6131c06138958b60a001518c5f01516120ec565b8b516120ec565b82612105565b60c089018190525f906138bd9061372590613792908d6120d3565b90506138d08b600a6020020151826120ec565b6101408c0152505086515f92506138f7915061384b906138f090806120ec565b88516120ec565b90505f613937613912836106018a5f01518b60a00151612105565b60208901516106249061392590806120ec565b6106018b602001518c608001516120ec565b905061395489600b6020020151610606613725613792858d6120d3565b89600b602002015250505050505050505050565b6139fc604051806102c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b613a31613a18613a0d87601b614927565b610601886024614927565b610606613a26886023614927565b61060189601c614927565b8152613a76613a6b613a52613a4788601b614927565b61060189601e614927565b610606613a6089601c614927565b6106018a601d614927565b610624876025614927565b60408201819052613a8b90600160441b6120d3565b60408201819052613aa190610624876026614927565b604082018190528151613ab491906120ec565b60408201819052613aca90610601876005614927565b60408201528051613adf90600160441b6120d3565b808252613aff90610606613af4886023614927565b610601896024614927565b80825260208201819052613b1b90610624612fe688601d614927565b60208201819052613b3190610601876004614927565b6020820152805160608201819052613b4e9061060687601e614927565b60608201819052613b7290610624613b67886025614927565b610606896026614927565b60608201819052613b8790610601875f614927565b8160600181815250505f613bb0613ba6836020015184604001516120ec565b83606001516120ec565b9050613bc181610601886003614927565b9050613bd9613bd1876024614927565b6140006120d3565b60808301819052613bef90610606886023614927565b60808301819052613c02906140006120d3565b60808301819052613c189061060688601d614927565b60808301819052613c2b906140006120d3565b60808301819052613c419061060688601c614927565b60808301819052613c54906140006120d3565b60808301819052613c6a9061060688601b614927565b60808301819052613c809061062488601e614927565b60808301819052613c9690610601886005614927565b6080830152613ca9613bd1876025614927565b60a08301819052613cbf90610606886024614927565b60a08301819052613cd2906140006120d3565b60a08301819052613ce890610606886023614927565b60a08301819052613cfb906140006120d3565b60a08301819052613d119061060688601e614927565b60a08301819052613d24906140006120d3565b60a08301819052613d3a9061060688601d614927565b60a08301819052613d5090610624886026614927565b60a08301819052613d6590610601885f614927565b60a0830181905260808301515f91613d7d91906120ec565b9050613d8e81610601896004614927565b9050613da8613d9e88601d614927565b87604001516120d3565b60c08401819052613dc1906106066132778a601c614927565b60c08401819052613de190610606613dda8a601b614927565b89516120d3565b60c08401819052613df790610606896001614927565b60c0840181905260e08401819052613e149061062489601e614927565b60c0840152613e27613470886023614927565b610140840152613e46613e3b886026614927565b61062489601e614927565b610120840152610140830151613e6b90613e6090806120d3565b846101400151612105565b610280840152610140830151613ead90613ea290613e9b9061060160015f51602061523d5f395f51905f52614f6e565b60016120ec565b8461012001516120d3565b6101608401819052613ee490613ed690610601613ecb8b6002614927565b6106018c6003614927565b6106016134038a600a614927565b6101a0860152610280830151613f0690613ed690610601613ecb8b6002614927565b6101c086015260c0830151613f2e90610601613f238a6002614927565b6106018b6003614927565b6101e08401525f613f4d613f4389601e614927565b8560e00151612105565b9050613f5c61389c82836120d3565b6101a0850152613f7061328f896025614927565b6101008501819052613f9490610606613f8a8b6024614927565b8a602001516120d3565b6101008501819052613fae906106066132628b6023614927565b610100850152613fcd613fc2896026614927565b856101000151612105565b6101008501525f613fe26134a88a6025614927565b9050614036614010612f0e613e9b88610140015160015f51602061523d5f395f51905f526106019190614f6e565b610601613e9b88610100015160015f51602061523d5f395f51905f526106019190614f6e565b61018086015261010085015161405b9061405090806120d3565b866101000151612105565b6101c086015261018085015161408e9061407a906106018c6007614927565b6106016140888c600a614927565b896120d3565b6101e08801526102808501516140ad9061407a906106018c6007614927565b6102008801526101c08501516140cc9061407a906106018c6007614927565b6102208801526101a08501516140e7906106018b6007614927565b6102008601526141066140fb8a6024614927565b6106248b601c614927565b610220860152610140850151614145906134a89061413a90613e9b9061060160015f51602061523d5f395f51905f52614f6e565b8761022001516120d3565b61024086018190526101e0860151610260870181905261417c91610606906106016141718e6005614927565b6106018f6002614927565b610260860181905260c086015161419f9190610606906106016141718e5f614927565b61026086018190526102008601516141b791906120ec565b61026086018190526141cd9061377490866120ec565b6102a086018190526141e7906106016140888c600a614927565b6102a0860181905287600c6020020152505050505050505050565b6142786040518061022001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61429161428685601b614927565b610606866002614927565b81526142ac6142a185601c614927565b610606866003614927565b60208201526142ca6142bf85601d614927565b610606866004614927565b60408201526142e86142dd85601e614927565b610606866005614927565b6060820152805161431a906143139061430c9061430590806120d3565b84516120d3565b83516120d3565b82516120d3565b608082015260208101516143589061434e906143449061433a90806120d3565b84602001516120d3565b83602001516120d3565b82602001516120d3565b60a082015260408101516143969061438c906143829061437890806120d3565b84604001516120d3565b83604001516120d3565b82604001516120d3565b60c082015260608101516143d4906143ca906143c0906143b690806120d3565b84606001516120d3565b83606001516120d3565b82606001516120d3565b60e0820152608081015160a08201516143ed91906120ec565b61010082015260c081015160e082015161440791906120ec565b61012082015260a081015161442b9061442090806120ec565b8261012001516120ec565b61014082015260e081015161444f9061444490806120ec565b8261010001516120ec565b61016082015261012081015161446590806120ec565b6101e082018190526144869061447b90806120ec565b8261016001516120ec565b6101e082015261010081015161449c90806120ec565b6101a082018190526144bd906144b290806120ec565b8261014001516120ec565b6101a082018190526101608201516144d4916120ec565b6101808201526101408101516101e08201516144f091906120ec565b6101c0820152614504612f0e85600b614927565b610200820181905261024084015161018083015161452f9261060691610601906106248a6023614927565b836012602002015261455f8360136020020151610606836102000151610601856101a001516106248a6024614927565b836013602002015261458f8360146020020151610606836102000151610601856101c001516106248a6025614927565b83601460200201526145bf8360156020020151610606836102000151610601856101e001516106248a6026614927565b836015602002015250505050565b61461f6040518061016001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f60405180608001604052806146547f10dc6e9c006ea38b04b1e03b4bd9490c0d03f98929ca1d7fb56821fd19d3b6e76120b5565b81526020016146827f0c28145b6a44df3e0149b3d0a30b3bb599df9756d4dd9b84a86b38cfb45a740b6120b5565b81526020016146af7e544b8338791518b2c7645a50392798b21f75bb60e3596170067d00141cac156120b5565b81526020016146dd7f222c01175718386f2e2e82eb122789e352e105a3b8fa852613bc534433ee428b6120b5565b905290506146fa6146ef86601b614927565b610606876002614927565b610120830181905261472e9061472390613ea29061471890806120d3565b8561012001516120d3565b8361012001516120d3565b825261473b85601c614927565b602083015261474b85601d614927565b604083015261475b85601e614927565b60608301528151602083015161478391613ba69161477991906120ec565b84604001516120ec565b60808301526147966131c086600c614927565b61014083015281516147b7906147ad90835f610ef3565b83608001516120ec565b60a08301526147e384601660200201516106068461014001516106018660a001516106248b6023614927565b6102c085015260208201516147fe906147ad90836001610ef3565b60c083015261482a84601760200201516106068461014001516106018660c001516106248b6024614927565b6102e08501526040820151614845906147ad90836002610ef3565b60e083015261487184601860200201516106068461014001516106018660e001516106248b6025614927565b610300850152606082015161488c906147ad90836003610ef3565b6101008301526148ba84601960200201516106068461014001516106018661010001516106248b6026614927565b846019613047565b5f6148ce8184816108d3565b905060015b601a81101561492057614916826106068684601a81106148f5576148f5614fbb565b602002015186614906600187614f6e565b60198110610ef357610ef3614fbb565b91506001016148d3565b5092915050565b5f8282602781111561493b5761493b615208565b6028811061494b5761494b614fbb565b60200201519392505050565b604051806103c001604052805f81526020015f81526020015f815260200161497d614dae565b815260200161498a614dae565b8152602001614997614dae565b81526020016149a4614dae565b81526020016149b1614dae565b81526020016149be614dae565b81526020016149cb614dae565b81526020016149d8614dae565b81526020016149e5614dae565b81526020016149f2614dae565b81526020016149ff614dae565b8152602001614a0c614dae565b8152602001614a19614dae565b8152602001614a26614dae565b8152602001614a33614dae565b8152602001614a40614dae565b8152602001614a4d614dae565b8152602001614a5a614dae565b8152602001614a67614dae565b8152602001614a74614dae565b8152602001614a81614dae565b8152602001614a8e614dae565b8152602001614a9b614dae565b8152602001614aa8614dae565b8152602001614ab5614dae565b8152602001614ac2614dae565b8152602001614acf614dae565b905290565b604051806101e00160405280614ae8614de5565b8152602001614af5614c44565b8152602001614b02614c44565b8152602001614b0f614c44565b8152602001614b1c614c44565b8152602001614b29614c44565b8152602001614b36614c44565b8152602001614b43614c44565b8152602001614b50614c44565b8152602001614b5d614e04565b8152602001614b6a614e32565b8152602001614b77614e51565b8152602001614b84614cd6565b8152602001614b91614c44565b8152602001614acf614c44565b604051806101000160405280614bb2614c68565b8152602001614bbf614c98565b8152602001614bcc614cd6565b8152602001614bd9614cd6565b81526020015f81526020015f81526020015f81526020015f81525090565b604051806108c001604052806046906020820280368337509192915050565b604051806108c001604052806046905b614c2e614dae565b815260200190600190039081614c265790505090565b60405180608001604052805f81526020015f81526020015f81526020015f81525090565b6040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6040518061032001604052806019906020820280368337509192915050565b6040518061012001604052806009906020820280368337509192915050565b604051806103800160405280601c906020820280368337509192915050565b6040518061052001604052806029906020820280368337509192915050565b60405180610da00160405280606d906020820280368337509192915050565b604051806103a00160405280601d906020820280368337509192915050565b6040518060a001604052806005906020820280368337509192915050565b6040518061010001604052806008906020820280368337509192915050565b604051806103400160405280601a906020820280368337509192915050565b60405180604001604052805f81526020015f81525090565b604051806101a00160405280600d906020820280368337509192915050565b6040518061020001604052806010906020820280368337509192915050565b604051806103800160405280601c905b614e1c614d70565b815260200190600190039081614e145790505090565b6040518061050001604052806028906020820280368337509192915050565b604051806103600160405280601b905b614e69614c44565b815260200190600190039081614e615790505090565b5f5f5f5f60408587031215614e92575f5ffd5b84356001600160401b03811115614ea7575f5ffd5b8501601f81018713614eb7575f5ffd5b80356001600160401b03811115614ecc575f5ffd5b876020828401011115614edd575f5ffd5b6020918201955093508501356001600160401b03811115614efc575f5ffd5b8501601f81018713614f0c575f5ffd5b80356001600160401b03811115614f21575f5ffd5b8760208260051b8401011115614f35575f5ffd5b949793965060200194505050565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176120cd576120cd614f43565b818103818111156120cd576120cd614f43565b808201808211156120cd576120cd614f43565b5f5f85851115614fa2575f5ffd5b83861115614fae575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52603260045260245ffd5b5f60018201614fe057614fe0614f43565b5060010190565b803560208310156120cd575f19602084900360031b1b1692915050565b5f8183825b6009811015615028578151835260209283019290910190600101615009565b5050506101208201905092915050565b634e487b7160e01b5f52601260045260245ffd5b5f8261505a5761505a615038565b500490565b5f8183825b6029811015615083578151835260209283019290910190600101615064565b5050506105208201905092915050565b5f8183825b606d8110156150b7578151835260209283019290910190600101615098565b505050610da08201905092915050565b5f8183825b601d8110156150eb5781518352602092830192909101906001016150cc565b5050506103a08201905092915050565b5f8183825b600581101561511f578151835260209283019290910190600101615100565b50505060a08201905092915050565b5f8261513c5761513c615038565b500690565b5f8161514f5761514f614f43565b505f190190565b5f82518060208501845e5f920191825250919050565b5f6020828403121561517c575f5ffd5b815180151581146119f7575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b81515f90829060208501835b828110156151c95781518452602093840193909101906001016151ab565b509195945050505050565b5f8183825b600d8110156151f85781518352602092830192909101906001016151d9565b5050506101a08201905092915050565b634e487b7160e01b5f52602160045260245ffdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001";
3
+ */ export const HonkVerifierBytecode = "0x60e0604052348015600e575f5ffd5b506302000000608052601960a05261040c60c05260805160a05160c05161525b61005a5f395f61063401525f818161073f01528181610d210152610dbd01525f6105d8015261525b5ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063ea50d0e41461002d575b5f5ffd5b61004061003b366004614e7d565b610054565b604051901515815260200160405180910390f35b5f6100626101c86020614f55565b8414610081576040516376ba560560e11b815260040160405180910390fd5b5f61008a6101a5565b90505f61009787876101ba565b9050601082604001516100aa9190614f6c565b84146100c95760405163fa06659360e01b815260040160405180910390fd5b5f6100e0828787865f015187604001516001610513565b90506101308686808060200260200160405190810160405280939291908181526020018383602002808284375f9201919091525050855185516060810151608090910151919350915060016105c2565b815160a001525f6101418383610737565b905080610161576040516313f8744360e31b815260040160405180910390fd5b5f61016d848685610838565b90508061018d576040516352ec174560e11b815260040160405180910390fd5b8180156101975750805b9a9950505050505050505050565b6101ad614955565b6101b56110b5565b905090565b6101c2614ad2565b5f805b6010811015610224576101f18583866101df826020614f7f565b926101ec93929190614f92565b61199b565b8351826010811061020457610204614fb9565b60200201818152505060208261021a9190614f7f565b91506001016101c5565b50610248848285610236826080614f7f565b9261024393929190614f92565b6119fc565b6020830152610258608082614f7f565b905061026b848285610236826080614f7f565b604083015261027b608082614f7f565b905061028e848285610236826080614f7f565b606083015261029e608082614f7f565b90506102b1848285610236826080614f7f565b60c08301526102c1608082614f7f565b90506102d4848285610236826080614f7f565b60e08301526102e4608082614f7f565b90506102f7848285610236826080614f7f565b60808084019190915261030a9082614f7f565b905061031d848285610236826080614f7f565b61010083015261032e608082614f7f565b9050610341848285610236826080614f7f565b60a0830152610351608082614f7f565b90505f5b601c8110156103d0575f5b60088110156103c75761037a8684876101df826020614f7f565b84610120015183601c811061039157610391614fb9565b602002015182600881106103a7576103a7614fb9565b6020020181815250506020836103bd9190614f7f565b9250600101610360565b50600101610355565b505f5b6028811015610424576103ed8583866101df826020614f7f565b836101400151826028811061040457610404614fb9565b60200201818152505060208261041a9190614f7f565b91506001016103d3565b505f5b6104336001601c614f6c565b81101561047c5761044b858386610236826080614f7f565b83610160015182601b811061046257610462614fb9565b6020020152610472608083614f7f565b9150600101610427565b505f5b601c8110156104d0576104998583866101df826020614f7f565b83610180015182601c81106104b0576104b0614fb9565b6020020181815250506020826104c69190614f7f565b915060010161047f565b506104e2848285610236826080614f7f565b6101a08301526104f3608082614f7f565b9050610506848285610236826080614f7f565b6101c08301525092915050565b61051b614b9c565b5f61052b88888888888887611acc565b908352905061053a8189611b22565b6020840191909152905061054d81611cbc565b604084019190915290506105618882611d1d565b606084019190915290506105758882611df1565b608084019190915290506105898882611e7c565b60a0840191909152905061059d8882611fea565b60c084019190915290506105b1888261205c565b5060e0830152509695505050505050565b5f6001808261060b86610606896106016105fc8a7f0000000000000000000000000000000000000000000000000000000000000000614f7f565b6120b3565b6120d1565b6120ea565b90505f610629876106248a6106016105fc8b6001614f7f565b612103565b90505f5b61065860107f0000000000000000000000000000000000000000000000000000000000000000614f6c565b8110156106c5575f6106828c838151811061067557610675614fb9565b60200260200101516120b3565b90506106928661060186846120ea565b95506106a28561060185846120ea565b94506106ae848b6120ea565b93506106ba838b612103565b92505060010161062d565b505f5b601081101561072c575f8a82601081106106e4576106e4614fb9565b602002015190506106f98661060186846120ea565b95506107098561060185846120ea565b9450610715848b6120ea565b9350610721838b612103565b9250506001016106c8565b506101978484612132565b5f806001815b7f000000000000000000000000000000000000000000000000000000000000000081101561080e575f86610120015182601c811061077d5761077d614fb9565b602002015190505f61078f8286612140565b9050806107af576040516313f8744360e31b815260040160405180910390fd5b5f876060015184601c81106107c6576107c6614fb9565b602002015190506107d7838261215d565b95506107fe886040015185601c81106107f2576107f2614fb9565b6020020151868361230c565b945050505080600101905061073d565b505f610828866101400151865f0151876020015185612337565b90508281145b9695505050505050565b5f61087f6040518061012001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f61088d8460a001516123a5565b9050610897614bf5565b61089f614c14565b60e08601516108be906108b990855f5b6020020151612103565b61240a565b60a085015260e08601516108dd906108b990855f5b60200201516120ea565b60c080860182905260a0860151908801516108fc9261060691906120d1565b845260a086015161092a906109109061240a565b6106018660a001516106248a60c001518960c001516120d1565b6020850152600182526101a088015161094290612473565b81526001606085018190525f60808601525b602381116109fa5761097561096b865f01516124b2565b86606001516120d1565b83826046811061098757610987614fb9565b602002015260808501516101408a01516109ca9190610606906109ab600186614f6c565b602881106109bb576109bb614fb9565b602002015188606001516120d1565b8560800181815250506109e5856060015188608001516120d1565b60608601526109f381614fcd565b9050610954565b505f610a0860236001614f7f565b90505b60288111610a8957610a2361096b86602001516124b2565b838260468110610a3557610a35614fb9565b602002015260808501516101408a0151610a599190610606906109ab600186614f6c565b856080018181525050610a74856060015188608001516120d1565b6060860152610a8281614fcd565b9050610a0b565b50606087015181600160200201526080870151816002602002015260a0870151816003602002015260c0870151816004602002015260e0870151816005602002015261010087015181600660200201526101208701518160076020020152610140870151816008602002015261016087015181600960200201526101a087015181600a602002015261018087015181600b60200201526101c087015181600c60200201526101e087015181600d602002015261020087015181600e602002015261022087015181600f60200201526102408701518160106020020152610260870151816011602002015261028087015181601260200201526102a087015181601360200201526102c087015181601460200201526102e08701518160156020020152610300870151816016602002015261032087015181601760200201526103408701518160186020020152610360870151816019602002015261038087015181601a60200201526103a087015181601b6020020181905250610c0f8860200151612473565b6103808201526040880151610c2390612473565b6103a08201526060880151610c3790612473565b6103c08201526080880151610c4b90612473565b6103e082015260a0880151610c5f90612473565b610400820152610100880151610c7490612473565b61042082015260c0880151610c8890612473565b61044082015260e0880151610c9c90612473565b6104608201526020880151610cb090612473565b6104808201526040880151610cc490612473565b6104a08201526060880151610cd890612473565b6104c08201526080880151610cec90612473565b6104e082015260a0880151610d0090612473565b610500820152606086015160808501516101808a01515f92610d45929091877f00000000000000000000000000000000000000000000000000000000000000006124ca565b805160a0870151919250610d58916120d1565b604086018190526101808a01515160c0890151610d88929161060691610d7e91906120d1565b8860c001516120d1565b604086015260c0870151610d9b906125e5565b60608601525f5b610dae6001601c614f6c565b811015610fb0575f610de160017f0000000000000000000000000000000000000000000000000000000000000000614f6c565b821015905080610f5657610e146108b98a60e0015188856001610e049190614f7f565b601c81106108af576108af614fb9565b60a088015260e0890151610e42906108b99088610e32866001614f7f565b601c81106108d3576108d3614fb9565b60c0880152606087015160a0880151610e5b91906120d1565b60e0880152606087015160c08a0151610e7791610d7e916120d1565b6101008801819052610e9990610e8c906124b2565b6106068960e001516124b2565b8583610ea760286001614f7f565b610eb19190614f7f565b60468110610ec157610ec1614fb9565b60200201526101008701516101808c01515f91610efd91610ee3866001614f7f565b601c8110610ef357610ef3614fb9565b60200201516120d1565b9050610f19816106068a60e0015187876001610ee39190614f7f565b9050610f298860400151826120ea565b6040890152606088015160c08b0151610f4f91610f45916120d1565b8b60c001516120d1565b6060890152505b610f7a8b610160015183601b8110610f7057610f70614fb9565b6020020151612473565b8483610f8860286001614f7f565b610f929190614f7f565b60468110610fa257610fa2614fb9565b602002015250600101610da2565b5060408051808201909152600181526002602082015282610fd3601c6028614f7f565b60468110610fe357610fe3614fb9565b6020020152604085015183610ffa601c6028614f7f565b6046811061100a5761100a614fb9565b60200201526101c08901515f9061102090612473565b90508083611030601c6028614f7f565b61103b906001614f7f565b6046811061104b5761104b614fb9565b602002015260e088015184611062601c6028614f7f565b61106d906001614f7f565b6046811061107d5761107d614fb9565b60200201525f61108d84866125f0565b90505f611099836126b6565b90506110a582826126fc565b9c9b505050505050505050505050565b6110bd614955565b50604080516103c08101825263020000008152601960208083019190915261040c82840152825180840184527f154145769781fc51e303af886691df45595eebc66494ddfcf5806fca0e8f555f81527f2fce680535bc067330b730328da33674da3af2646f10aed8e8b91c5e6f255462818301526060830152825180840184527f2b9b048d34eafe257a8280b700b52f434fd049a88dea9fc4de64940c1d77b4bf81527f1d6dae38e6bb62ead8f87c343b309a4c04701a14dc0a9c046875944591d92a75818301526080830152825180840184527f174d67ebc38470dfa98390dd32a64f243596ca4514f42943af22210ad83a76fe81527f0d13fd672d101506f16536fadc099bbd128d607bece66c7037c30a4fd8be417d8183015260a0830152825180840184527f1c62f9995f3d2f1f46121a2f1a4ca42a534d0cb862a43035a2fed49cf720e8c181527f01f4da0ce20acdd8c982f300d0770079d0ebe9f86b8a026d97334ebfcb1578448183015260c0830152825180840184527f195b50cc5370f4ccc72e3bfeca1a3d53864b6cb2515a74f5abda99b88ec0d1c781527f1a7720347dc26e1d9b1026df50dc6e0c0fa548ff7e7519d60172b27fe293675d8183015260e0830152825180840184527f185d397f813179d48ba907a60396310ee9322a7876660855736f0929d80f3b2e81527f26127a5dcc7a124bd0b4e225e13885f65d8f2249909896cd38f4ef85b94740c381830152610100830152825180840184527f25a5859635c879aab2434f0abb7d4d49ee8c6caab3e0be1e5dcc5b20164f96ef81527f2b8c29f921dad7a6b79c13d62ad140d6b2d14c0723f5650775209438e58af12281830152610120830152825180840184527f1dee935e8f04be926140a56f272448e892b082405a0dbb09289a6bd2071bf47481527f2e0a1cb1d2a742c6502ae1b7b4f9487b54a72cb6784f36da4f4a3705244194c881830152610140830152825180840184527f272147d400c228a2c53d8e86664a7d33ab81d9c63223a72189ab3397909f215781527f08abfd0396e3eb47a01cbf020d9a8e3ffb447c8a1af075d72cd321237e17462881830152610160830152825180840184527f022727763f1eba0e436d08ffd7da9b7b0c9c1ebddc48549e9b96ebb3f661a81a81527f153c5c75bafbf0ad1c3a431c2eac823788e4be6d9290a564d0c7ee680d961abb81830152610180830152825180840184527f05775e7427c8d7c8c2fc1fcaf14ca9bec5174f23777c4c688c3fd24e07c076aa81527f17c77ccd253e7e73f7260a00ba0fff89ee0d7a923ab7fafde89c9734e9d56a74818301526101a0830152825180840184527f0e188ffa07792fb39342d7820a20d2ded32d3b3febdcccdcb895c5bffe9cdb1881527f23c6645a97204f3907fa1fbf33e498c2c46bdb8356686fa27a5fe80e38bc40a4818301526101c0830152825180840184527e43d0dd6dff61a88c7baf92d2c3468d7610c9570223fd01d587cd8ebe76e20481527f1f4c74a12ad4ec46b896688627e883450cb5d2ee3dd72adcdb29ed548ab1fa76818301526101e0830152825180840184527f1a6300d1dc14a77b979ab0cce86af3173730a63529e8c0586db13d399b2d859481527f2d43612c94929e64f924bf83218002c49d58d9a1a899e37eba5ee7b27c35d88981830152610200830152825180840184527f0c4c56b49e7cd34782f9b53882351134d254e70519043b7a701013c98dc4b85e81527f249bbf1333da0ec7f0e86e9f55e9b14910570ca73807f6e0c98302b4f57e79da81830152610220830152825180840184527f16879d4e866f09c42ea84f0292b396fba58522752f791b7a45ced896c5257c3981527f013618b85ae921608943e037c90bff9a1e473a456ece35706db53b5247fe26fc81830152610240830152825180840184527f04502977e07af4771a538def7186527986f13d31dbe8c3708a7a2037630b66ce81527f20f75711e7274610096c3d734f58c1b859a726cfd74bd6536804ca0c2556ddeb81830152610260830152825180840184527f148bfa02a3aaac17fc931b4e0c60957901520dd2dee6d0445bd570db0dc2f39581527f2cd619975151d8a894ba2739f3b245ff4e7e5ab709c0b33a49a62d0607fd821881830152610280830152825180840184527f18f879fc5dcd60fe2103edd88c4c83b2d7c5e008fc0543e426261129c647035e81527f1e5232a2ef88e4d5b38616cb9d4ee509f5e46895bd1b5b1dd838350737ec2665818301526102a0830152825180840184527e1f94899e777e334bacf16ec04de7e3afb05a02c35f8ad424d976c8bf92b51981527f0cf4be2bb570d5114b7e02f91979ab2c9ce8afdad6697a0ef083fb0a9ed0906d818301526102c0830152825180840184527f0c8e5bce68752178362c285fd5b187d0661c5cdd1455da961bd4f1a797d09fc581527f06b758f2c95620c1a864bbc9736bb0d91ee3725cb576500d35c27fbd8f461739818301526102e0830152825180840184527f2f4e0e73619e22e05200bd9de4ea73a3fc38ac033787e58016ef8f6e0c20b1fb81527f2f2b94d720217b157176b458c9d8f1b192a1466618a7901bce7f435a1edd6da181830152610300830152825180840184527f2003a0aec140164182e4ff65e13c9fd005e08922f739d8b6423dcf8fa26f9ec281527f13793b4ea820fac86bf339259e4c76e9e5a49a35f7c1a1ccf7f2ed9e0215748881830152610320830152825180840184527f1abe3e80fbe4e7e479e25e018648cfbf398a6057281cecf3c3a76f220a62474081527f29a28edb5e574311167384f452aa8112795513c8c164fcbcd592386a7fbfc33381830152610340830152825180840184527f21ad8f9bf46d94bf9d93469d756464c74999dbb805c6ab7b2bfcb5c3a495c81081527f224803cf8531674748532f90c6a2a835030a07111344dc02418159a6178927a881830152610360830152825180840184526001815260028183015261038083015282518084019093527f2c8ba8b7588e820707a83fb97ea211c1808a14906e5185a03cec7863a0e9fccc83527f0ca11281dbf483c9976ba4ea389e3f1bde37428be0694e307cd86fa186f86141908301526103a081019190915290565b5f602082146119e85760405162461bcd60e51b815260206004820152601460248201527334b73b30b634b210313cba32b99039b1b0b630b960611b60448201526064015b60405180910390fd5b6119f56105fc8385614fe5565b9392505050565b611a04614c42565b60808214611a4a5760405162461bcd60e51b81526020600482015260136024820152721a5b9d985b1a5908189e5d195cc81c1bda5b9d606a1b60448201526064016119df565b604080516080810190915280611a6360205f8688614f92565b611a6c91614fe5565b8152602090810190611a82906040908688614f92565b611a8b91614fe5565b8152602001611a9e606060408688614f92565b611aa791614fe5565b8152602001611aba608060608688614f92565b611ac391614fe5565b90529392505050565b611ad4614c66565b5f611ae3898989898989612900565b604086019190915260208501919091529083529250611b02838a612da6565b608085019190915260608401919091529199919850909650505050505050565b611b2a614c96565b5f611b33614cb5565b848152610100848101805151602080850191909152815181015160408086019190915282518101516060808701919091529251830151608086015260a080890180515191870191909152805183015160c0870152805182015160e087015251909201519284019290925251611bc991611bae91849101615002565b604051602081830303815290604052805190602001206120b3565b9150611bd482612e75565b6020850152835260015b611bea6002601961504a565b811015611c6a57611c0783604051602001611bae91815260200190565b9250611c1283612e75565b85611c1e846002614f55565b60198110611c2e57611c2e614fb9565b6020020186611c3e856002614f55565b611c49906001614f7f565b60198110611c5957611c59614fb9565b602002019190915252600101611bde565b50611c8182604051602001611bae91815260200190565b91505f611c8d83612e75565b85611c9a60016019614f6c565b60198110611caa57611caa614fb9565b60200201919091525050509250929050565b611cc4614cd4565b5f805b601c811015611d1657611ce684604051602001611bae91815260200190565b93505f611cf285612e75565b8584601c8110611d0457611d04614fb9565b60200201919091525050600101611cc7565b5090929050565b611d25614cd4565b5f805b601c811015611de857611d39614cb5565b8481525f5b6008811015611da25786610120015183601c8110611d5e57611d5e614fb9565b60200201518160088110611d7457611d74614fb9565b602002015182611d85836001614f7f565b60098110611d9557611d95614fb9565b6020020152600101611d3e565b50611db781604051602001611bae9190615002565b94505f611dc386612e75565b8685601c8110611dd557611dd5614fb9565b6020020191909152505050600101611d28565b50909391925050565b5f5f611dfb614cf3565b8381525f5b6028811015611e4e578561014001518160288110611e2057611e20614fb9565b602002015182611e31836001614f7f565b60298110611e4157611e41614fb9565b6020020152600101611e00565b50611e6381604051602001611bae919061505d565b91505f611e6f83612e75565b5096929550919350505050565b5f5f611e86614d12565b8381525f5b611e976001601c614f6c565b811015611fd55785610160015181601b8110611eb557611eb5614fb9565b60200201515182611ec7836004614f55565b611ed2906001614f7f565b606d8110611ee257611ee2614fb9565b602002015261016086015181601b8110611efe57611efe614fb9565b60200201516020015182826004611f159190614f55565b611f20906002614f7f565b606d8110611f3057611f30614fb9565b602002015261016086015181601b8110611f4c57611f4c614fb9565b60200201516040015182611f61836004614f55565b611f6c906003614f7f565b606d8110611f7c57611f7c614fb9565b602002015261016086015181601b8110611f9857611f98614fb9565b60200201516060015182611fad836004614f55565b611fb8906004614f7f565b606d8110611fc857611fc8614fb9565b6020020152600101611e8b565b50611e6381604051602001611bae9190615091565b5f5f611ff4614d31565b8381525f5b601c8110156120475785610180015181601c811061201957612019614fb9565b60200201518261202a836001614f7f565b601d811061203a5761203a614fb9565b6020020152600101611ff9565b50611e6381604051602001611bae91906150c5565b5f5f612066614d50565b8381526101a085018051516020808401919091528151810151604080850191909152825181015160608086019190915292519092015160808401529051611e6391611bae918491016150f9565b5f6120cb5f51602061523b5f395f51905f528361512c565b92915050565b5f5f51602061523b5f395f51905f528284099392505050565b5f5f51602061523b5f395f51905f528284089392505050565b5f5f51602061523b5f395f51905f52612129835f51602061523b5f395f51905f52614f6c565b84089392505050565b5f6119f5836106018461240a565b81515f908190612152908560016108d3565b929092149392505050565b60408051610100810182527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffec5181526102d060208201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff1191810191909152609060608201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffff71608082015260f060a08201527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593effffd3160c08201526113b060e08201525f906001825b60088110156122445761223a826106018784612103565b9150600101612223565b5061224d614d6e565b5f5b60088110156122ae575f84826008811061226b5761226b614fb9565b60200201519050612280816106018985612103565b905061228b8161240a565b9050808383600881106122a0576122a0614fb9565b60200201525060010161224f565b505f5b6008811015612301575f8782600881106122cd576122cd614fb9565b602002015190506122ea81848460088110610ef357610ef3614fb9565b90506122f686826120ea565b9550506001016122b1565b5061082e84836120d1565b5f5f612322600161060685610601896001612103565b905061232e84826120d1565b95945050505050565b5f612340614d8d565b61234b868285612ea5565b61235786868386613051565b61236386868386613239565b61236e868285613435565b61237986828561361d565b61238586868386613966565b612390868285614200565b61239b8682856145cb565b61082e81856148c0565b6123ad614cd4565b81815260015b601c811015612404576123e5826123cb600184614f6c565b601c81106123db576123db614fb9565b60200201516125e5565b8282601c81106123f7576123f7614fb9565b60200201526001016123b3565b50919050565b5f5f8290505f604051602081526020808201526020604082015282606082015260025f51602061523b5f395f51905f520360808201525f51602061523b5f395f51905f5260a082015260205f60c08360055afa905080612468575f5ffd5b50505f519392505050565b61247b614dac565b604051806040016040528060888460200151901b845f015117815260200160888460600151901b8460400151178152509050919050565b5f6120cb825f51602061523b5f395f51905f52614f6c565b6124d2614cd4565b601c5b80156125db575f846124e8600184614f6c565b601c81106124f8576124f8614fb9565b602002015190505f8861250c600185614f6c565b601c811061251c5761251c614fb9565b602002015190505f61257761253b612534858c6120d1565b60026120d1565b6106248a61254a600189614f6c565b601c811061255a5761255a614fb9565b60200201516106016125718861060160018a612103565b87612103565b9050612598816106016108b961259287610601600189612103565b866120ea565b90508584116125c75797508780856125b1600187614f6c565b601c81106125c1576125c1614fb9565b60200201525b505050806125d49061513f565b90506124d5565b5095945050505050565b5f6120cb82836120d1565b6125f8614dac565b5f612605601c6028614f7f565b612610906002614f7f565b90506001604051855151604082015285516020015160608201528451608082015260408160606040840160075afa8216915060015b8381101561269e5760208102870160208202870181515160408501528151602001516060850152805160808501525050604080830160606040850160075afa8316925060408260808460065afa90921691600101612645565b50805184526020810151602085015250505092915050565b6126be614dac565b5f51602061521b5f395f51905f5282602001515f51602061521b5f395f51905f526126e99190614f6c565b6126f3919061512c565b60208301525090565b81516020808401518351848301516040805194850195909552938301919091527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c260608301527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed60808301527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b60a08301527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa60c083015260e08201526101008101919091527f260e01b251f6f1c7e7ff4e580791dee8ea51d87a358e038b4efe30fac09383c16101208201527f0118c4d5b837bcc2bc89b5b398b5974e9f5944073b32078b7e231fec938883b06101408201527f04fc6369f7110fe3d25156c1bb9a72859cf2a04641f99ba4ee413c80da6a5fe46101608201527f22febda3c0c0632a56475b4214e5615e11e6dd3f96e6cea2854a87d4dacc5e556101808201525f9081906101a00160405160208183030381529060405290505f5f60086001600160a01b0316836040516128929190615154565b5f60405180830381855afa9150503d805f81146128ca576040519150601f19603f3d011682016040523d82523d5f602084013e6128cf565b606091505b50915091505f818060200190518101906128e9919061516a565b90508280156128f55750805b979650505050505050565b5f80808080612910876003614f7f565b61291b90600c614f7f565b6001600160401b0381111561293257612932615189565b60405190808252806020026020018201604052801561295b578160200160208202803683370190505b509050875f1b815f8151811061297357612973614fb9565b602002602001018181525050865f1b8160018151811061299557612995614fb9565b602002602001018181525050855f1b816002815181106129b7576129b7614fb9565b60209081029190910101525f5b6129cf601089614f6c565b811015612a20578a8a828181106129e8576129e8614fb9565b90506020020135828260036129fd9190614f7f565b81518110612a0d57612a0d614fb9565b60209081029190910101526001016129c4565b505f5b6010811015612a91578b51612a4b908260108110612a4357612a43614fb9565b602002015190565b82826010612a5a8c6003614f7f565b612a649190614f6c565b612a6e9190614f7f565b81518110612a7e57612a7e614fb9565b6020908102919091010152600101612a23565b5060208b01515181612aa4896003614f7f565b81518110612ab457612ab4614fb9565b6020908102919091018101919091528b810151015181612ad5896003614f7f565b612ae0906001614f7f565b81518110612af057612af0614fb9565b6020908102919091018101919091528b01516040015181612b12896003614f7f565b612b1d906002614f7f565b81518110612b2d57612b2d614fb9565b6020908102919091018101919091528b01516060015181612b4f896003614f7f565b612b5a906003614f7f565b81518110612b6a57612b6a614fb9565b602090810291909101015260408b01515181612b87896003614f7f565b612b92906004614f7f565b81518110612ba257612ba2614fb9565b60209081029190910181019190915260408c0151015181612bc4896003614f7f565b612bcf906005614f7f565b81518110612bdf57612bdf614fb9565b60209081029190910101526040808c0151015181612bfe896003614f7f565b612c09906006614f7f565b81518110612c1957612c19614fb9565b602090810291909101015260408b01516060015181612c39896003614f7f565b612c44906007614f7f565b81518110612c5457612c54614fb9565b602090810291909101015260608b01515181612c71896003614f7f565b612c7c906008614f7f565b81518110612c8c57612c8c614fb9565b60209081029190910181019190915260608c0151015181612cae896003614f7f565b612cb9906009614f7f565b81518110612cc957612cc9614fb9565b602090810291909101015260608b01516040015181612ce9896003614f7f565b612cf490600a614f7f565b81518110612d0457612d04614fb9565b60209081029190910101526060808c0151015181612d23896003614f7f565b612d2e90600b614f7f565b81518110612d3e57612d3e614fb9565b602002602001018181525050612d5e81604051602001611bae919061519d565b9150612d6982612e75565b6040805160208101869052929750909550612d849101611bae565b91505f612d9083612e75565b50959c949b509499509097509195505050505050565b5f5f5f612db1614dc4565b85815260c085810180515160208085019190915281518101516040808601919091528251810151606080870191909152925183015160808087019190915260e0808b0180515160a089015280518501519688019690965285518301519087015293518301516101008601529288018051516101208601528051820151610140860152805184015161016086015251909101516101808401529051612e5b91611bae918491016151d2565b9150612e6682612e75565b90979096509194509092505050565b5f80826001600160801b038116608082901c612e90826120b3565b9450612e9b816120b3565b9350505050915091565b5f612eb1846007614925565b90507f183227397098d014dc2822db40c0ac2e9419f4243cdcb848a1f0fac9f80000005f612f12612f0c612ee6856003612103565b610601612f01612ef68b5f614925565b6106018c601c614925565b6106018b601b614925565b836120d1565b9050612f93612f88612f6f612f56612f3d85610606612f328d6002614925565b6106018e601b614925565b610606612f4b8c6003614925565b6106018d601c614925565b610606612f648b6004614925565b6106018c601d614925565b610606612f7d8a6005614925565b6106018b601e614925565b610606886001614925565b9050612fb281610606612fa7866001612103565b6106018a6026614925565b9050612fbe81846120d1565b9050612fca81856120d1565b8552505f9050613004612ffa612fef612fe488601b614925565b61060689601e614925565b610624886023614925565b610606875f614925565b905061301581610601846002612103565b905061302681610601846001612103565b905061303281836120d1565b905061303e81846120d1565b9050808460015b60200201525050505050565b5f5f5f61308761307d61306589601b614925565b6106066130738b6011614925565b8a606001516120d1565b87608001516120ea565b90506130c0816106016130b661309e8b601c614925565b6106066130ac8d6012614925565b8c606001516120d1565b89608001516120ea565b90506130e5816106016130b66130d78b601d614925565b6106066130ac8d6013614925565b905061310a816106016130b66130fc8b601e614925565b6106066130ac8d6014614925565b92505f905061312e61307d61312089601b614925565b6106066130738b600d614925565b9050613153816106016130b66131458b601c614925565b6106066130ac8d600e614925565b9050613178816106016130b661316a8b601d614925565b6106066130ac8d600f614925565b905061319d816106016130b661318f8b601e614925565b6106066130ac8d6010614925565b91505f90506131c46131be6131b389601f614925565b6106068a6019614925565b846120d1565b90506131f9816106246131f36131db8b6027614925565b6106066131e98d601a614925565b8c60a001516120d1565b856120d1565b905061320581856120d1565b6040860152505f6132286131f361321d89601a614925565b6106018a6027614925565b606090950194909452505050505050565b5f5f61329761327f6132676132526130b68a6015614925565b6106066132608b6016614925565b8a516120d1565b6106066132758a6017614925565b89602001516120d1565b61060661328d896018614925565b88604001516120d1565b91505f6132ce6132b56132ab89601b614925565b88608001516120ea565b6106066132c38a6003614925565b6106018b6023614925565b90505f6132f76132df89601c614925565b6106066132ec8b5f614925565b6106018c6024614925565b90505f6133216133088a601d614925565b6106066133168c6001614925565b6106018d6025614925565b905061336061334861333a85610606868d5f01516120d1565b610606848c602001516120d1565b6106066133568c6004614925565b8b604001516120d1565b93505050505f6133746131be886020614925565b90505f6133856131be896020614925565b90505f6133bd6133a46133998b6022614925565b6106068c6006614925565b6106246133b28c6022614925565b6106018d6006614925565b90505f6133e16133db6133d087896120d1565b6106018d6020614925565b83612103565b90506133ed81886120d1565b90505f6134156134076134018d6006614925565b876120d1565b6106246134018e6021614925565b60808a018390529050808960055b60200201525050505050505050505050565b5f6134415f6001612103565b90505f61344f5f6002612103565b90505f61345d5f6003612103565b90505f61347961346e88601c614925565b61062489601b614925565b90505f61349561348a89601d614925565b6106248a601c614925565b90505f6134b16134a68a601e614925565b6106248b601d614925565b90505f6134cd6134c28b6023614925565b6106248c601e614925565b9050836134de81610601818b6120ea565b90506134ee81610601878a6120ea565b90506134fe8161060187896120ea565b905061350f816106018d6008614925565b905061351b818a6120d1565b60c08b0152508261353081610601818b6120ea565b905061354081610601868a6120ea565b90506135508161060186896120ea565b9050613561816106018d6008614925565b905061356d818a6120d1565b60e08b0152508161358281610601818b6120ea565b905061359281610601858a6120ea565b90506135a28161060185896120ea565b90506135b3816106018d6008614925565b90506135bf818a6120d1565b6101008b015250806135d581610601818b6120ea565b90506135e581610601848a6120ea565b90506135f58161060184896120ea565b9050613606816106018d6008614925565b9050613612818a6120d1565b9050808a6009613423565b6136566040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61366184601c614925565b815261366e84601d614925565b602082015261367e846023614925565b604082015261368e846026614925565b606082015261369e846025614925565b60808201526136ae846024614925565b60a08201525f6136bf856002614925565b90505f6136cc865f614925565b90505f6136e08460400151855f0151612103565b90505f6136f5856020015186602001516120d1565b606086015190915086905f9061370b90806120d1565b90505f61372961372389602001518a606001516120d1565b886120d1565b90505f6137486137418a60a001518b604001516120ea565b8a516120ea565b905061375761340182886120d1565b905061377e61377861377261376c8487612103565b88612103565b846120ea565b836120ea565b90506137a661379b61379083876120d1565b6106018f6009614925565b61060160018a612103565b6101408c015250505050602085015160808601515f916137c5916120ea565b90505f6137e36137d98860600151886120d1565b8860200151612103565b90505f6138076137f384876120d1565b6106066131f38b60a001518c5f0151612103565b905061382f613824613819838c6120d1565b6106018e6009614925565b610601600189612103565b6101608b0152505f915061385090506138498360116120ea565b87516120d1565b90505f61385d83846120ea565b905061386981826120ea565b90505f6138778360096120d1565b90506138a061389a6131be6138938b60a001518c5f01516120ea565b8b516120ea565b82612103565b60c089018190525f906138bb9061372390613790908d6120d1565b90506138ce8b600a6020020151826120ea565b6101408c0152505086515f92506138f59150613849906138ee90806120ea565b88516120ea565b90505f613935613910836106018a5f01518b60a00151612103565b60208901516106249061392390806120ea565b6106018b602001518c608001516120ea565b905061395289600b6020020151610606613723613790858d6120d1565b89600b602002015250505050505050505050565b6139fa604051806102c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b613a2f613a16613a0b87601b614925565b610601886024614925565b610606613a24886023614925565b61060189601c614925565b8152613a74613a69613a50613a4588601b614925565b61060189601e614925565b610606613a5e89601c614925565b6106018a601d614925565b610624876025614925565b60408201819052613a8990600160441b6120d1565b60408201819052613a9f90610624876026614925565b604082018190528151613ab291906120ea565b60408201819052613ac890610601876005614925565b60408201528051613add90600160441b6120d1565b808252613afd90610606613af2886023614925565b610601896024614925565b80825260208201819052613b1990610624612fe488601d614925565b60208201819052613b2f90610601876004614925565b6020820152805160608201819052613b4c9061060687601e614925565b60608201819052613b7090610624613b65886025614925565b610606896026614925565b60608201819052613b8590610601875f614925565b8160600181815250505f613bae613ba4836020015184604001516120ea565b83606001516120ea565b9050613bbf81610601886003614925565b9050613bd7613bcf876024614925565b6140006120d1565b60808301819052613bed90610606886023614925565b60808301819052613c00906140006120d1565b60808301819052613c169061060688601d614925565b60808301819052613c29906140006120d1565b60808301819052613c3f9061060688601c614925565b60808301819052613c52906140006120d1565b60808301819052613c689061060688601b614925565b60808301819052613c7e9061062488601e614925565b60808301819052613c9490610601886005614925565b6080830152613ca7613bcf876025614925565b60a08301819052613cbd90610606886024614925565b60a08301819052613cd0906140006120d1565b60a08301819052613ce690610606886023614925565b60a08301819052613cf9906140006120d1565b60a08301819052613d0f9061060688601e614925565b60a08301819052613d22906140006120d1565b60a08301819052613d389061060688601d614925565b60a08301819052613d4e90610624886026614925565b60a08301819052613d6390610601885f614925565b60a0830181905260808301515f91613d7b91906120ea565b9050613d8c81610601896004614925565b9050613da6613d9c88601d614925565b87604001516120d1565b60c08401819052613dbf906106066132758a601c614925565b60c08401819052613ddf90610606613dd88a601b614925565b89516120d1565b60c08401819052613df590610606896001614925565b60c0840181905260e08401819052613e129061062489601e614925565b60c0840152613e2561346e886023614925565b610140840152613e44613e39886026614925565b61062489601e614925565b610120840152610140830151613e6990613e5e90806120d1565b846101400151612103565b610280840152610140830151613eab90613ea090613e999061060160015f51602061523b5f395f51905f52614f6c565b60016120ea565b8461012001516120d1565b6101608401819052613ee290613ed490610601613ec98b6002614925565b6106018c6003614925565b6106016134018a600a614925565b6101a0860152610280830151613f0490613ed490610601613ec98b6002614925565b6101c086015260c0830151613f2c90610601613f218a6002614925565b6106018b6003614925565b6101e08401525f613f4b613f4189601e614925565b8560e00151612103565b9050613f5a61389a82836120d1565b6101a0850152613f6e61328d896025614925565b6101008501819052613f9290610606613f888b6024614925565b8a602001516120d1565b6101008501819052613fac906106066132608b6023614925565b610100850152613fcb613fc0896026614925565b856101000151612103565b6101008501525f613fe06134a68a6025614925565b905061403461400e612f0c613e9988610140015160015f51602061523b5f395f51905f526106019190614f6c565b610601613e9988610100015160015f51602061523b5f395f51905f526106019190614f6c565b6101808601526101008501516140599061404e90806120d1565b866101000151612103565b6101c086015261018085015161408c90614078906106018c6007614925565b6106016140868c600a614925565b896120d1565b6101e08801526102808501516140ab90614078906106018c6007614925565b6102008801526101c08501516140ca90614078906106018c6007614925565b6102208801526101a08501516140e5906106018b6007614925565b6102008601526141046140f98a6024614925565b6106248b601c614925565b610220860152610140850151614143906134a69061413890613e999061060160015f51602061523b5f395f51905f52614f6c565b8761022001516120d1565b61024086018190526101e0860151610260870181905261417a916106069061060161416f8e6005614925565b6106018f6002614925565b610260860181905260c086015161419d91906106069061060161416f8e5f614925565b61026086018190526102008601516141b591906120ea565b61026086018190526141cb9061377290866120ea565b6102a086018190526141e5906106016140868c600a614925565b6102a0860181905287600c6020020152505050505050505050565b6142766040518061022001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b61428f61428485601b614925565b610606866002614925565b81526142aa61429f85601c614925565b610606866003614925565b60208201526142c86142bd85601d614925565b610606866004614925565b60408201526142e66142db85601e614925565b610606866005614925565b60608201528051614318906143119061430a9061430390806120d1565b84516120d1565b83516120d1565b82516120d1565b608082015260208101516143569061434c906143429061433890806120d1565b84602001516120d1565b83602001516120d1565b82602001516120d1565b60a082015260408101516143949061438a906143809061437690806120d1565b84604001516120d1565b83604001516120d1565b82604001516120d1565b60c082015260608101516143d2906143c8906143be906143b490806120d1565b84606001516120d1565b83606001516120d1565b82606001516120d1565b60e0820152608081015160a08201516143eb91906120ea565b61010082015260c081015160e082015161440591906120ea565b61012082015260a08101516144299061441e90806120ea565b8261012001516120ea565b61014082015260e081015161444d9061444290806120ea565b8261010001516120ea565b61016082015261012081015161446390806120ea565b6101e082018190526144849061447990806120ea565b8261016001516120ea565b6101e082015261010081015161449a90806120ea565b6101a082018190526144bb906144b090806120ea565b8261014001516120ea565b6101a082018190526101608201516144d2916120ea565b6101808201526101408101516101e08201516144ee91906120ea565b6101c0820152614502612f0c85600b614925565b610200820181905261024084015161018083015161452d9261060691610601906106248a6023614925565b836012602002015261455d8360136020020151610606836102000151610601856101a001516106248a6024614925565b836013602002015261458d8360146020020151610606836102000151610601856101c001516106248a6025614925565b83601460200201526145bd8360156020020151610606836102000151610601856101e001516106248a6026614925565b836015602002015250505050565b61461d6040518061016001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f60405180608001604052806146527f10dc6e9c006ea38b04b1e03b4bd9490c0d03f98929ca1d7fb56821fd19d3b6e76120b3565b81526020016146807f0c28145b6a44df3e0149b3d0a30b3bb599df9756d4dd9b84a86b38cfb45a740b6120b3565b81526020016146ad7e544b8338791518b2c7645a50392798b21f75bb60e3596170067d00141cac156120b3565b81526020016146db7f222c01175718386f2e2e82eb122789e352e105a3b8fa852613bc534433ee428b6120b3565b905290506146f86146ed86601b614925565b610606876002614925565b610120830181905261472c9061472190613ea09061471690806120d1565b8561012001516120d1565b8361012001516120d1565b825261473985601c614925565b602083015261474985601d614925565b604083015261475985601e614925565b60608301528151602083015161478191613ba49161477791906120ea565b84604001516120ea565b60808301526147946131be86600c614925565b61014083015281516147b5906147ab90835f610ef3565b83608001516120ea565b60a08301526147e184601660200201516106068461014001516106018660a001516106248b6023614925565b6102c085015260208201516147fc906147ab90836001610ef3565b60c083015261482884601760200201516106068461014001516106018660c001516106248b6024614925565b6102e08501526040820151614843906147ab90836002610ef3565b60e083015261486f84601860200201516106068461014001516106018660e001516106248b6025614925565b610300850152606082015161488a906147ab90836003610ef3565b6101008301526148b884601960200201516106068461014001516106018661010001516106248b6026614925565b846019613045565b5f6148cc8184816108d3565b905060015b601a81101561491e57614914826106068684601a81106148f3576148f3614fb9565b602002015186614904600187614f6c565b60198110610ef357610ef3614fb9565b91506001016148d1565b5092915050565b5f8282602781111561493957614939615206565b6028811061494957614949614fb9565b60200201519392505050565b604051806103c001604052805f81526020015f81526020015f815260200161497b614dac565b8152602001614988614dac565b8152602001614995614dac565b81526020016149a2614dac565b81526020016149af614dac565b81526020016149bc614dac565b81526020016149c9614dac565b81526020016149d6614dac565b81526020016149e3614dac565b81526020016149f0614dac565b81526020016149fd614dac565b8152602001614a0a614dac565b8152602001614a17614dac565b8152602001614a24614dac565b8152602001614a31614dac565b8152602001614a3e614dac565b8152602001614a4b614dac565b8152602001614a58614dac565b8152602001614a65614dac565b8152602001614a72614dac565b8152602001614a7f614dac565b8152602001614a8c614dac565b8152602001614a99614dac565b8152602001614aa6614dac565b8152602001614ab3614dac565b8152602001614ac0614dac565b8152602001614acd614dac565b905290565b604051806101e00160405280614ae6614de3565b8152602001614af3614c42565b8152602001614b00614c42565b8152602001614b0d614c42565b8152602001614b1a614c42565b8152602001614b27614c42565b8152602001614b34614c42565b8152602001614b41614c42565b8152602001614b4e614c42565b8152602001614b5b614e02565b8152602001614b68614e30565b8152602001614b75614e4f565b8152602001614b82614cd4565b8152602001614b8f614c42565b8152602001614acd614c42565b604051806101000160405280614bb0614c66565b8152602001614bbd614c96565b8152602001614bca614cd4565b8152602001614bd7614cd4565b81526020015f81526020015f81526020015f81526020015f81525090565b604051806108c001604052806046906020820280368337509192915050565b604051806108c001604052806046905b614c2c614dac565b815260200190600190039081614c245790505090565b60405180608001604052805f81526020015f81526020015f81526020015f81525090565b6040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6040518061032001604052806019906020820280368337509192915050565b6040518061012001604052806009906020820280368337509192915050565b604051806103800160405280601c906020820280368337509192915050565b6040518061052001604052806029906020820280368337509192915050565b60405180610da00160405280606d906020820280368337509192915050565b604051806103a00160405280601d906020820280368337509192915050565b6040518060a001604052806005906020820280368337509192915050565b6040518061010001604052806008906020820280368337509192915050565b604051806103400160405280601a906020820280368337509192915050565b60405180604001604052805f81526020015f81525090565b604051806101a00160405280600d906020820280368337509192915050565b6040518061020001604052806010906020820280368337509192915050565b604051806103800160405280601c905b614e1a614d6e565b815260200190600190039081614e125790505090565b6040518061050001604052806028906020820280368337509192915050565b604051806103600160405280601b905b614e67614c42565b815260200190600190039081614e5f5790505090565b5f5f5f5f60408587031215614e90575f5ffd5b84356001600160401b03811115614ea5575f5ffd5b8501601f81018713614eb5575f5ffd5b80356001600160401b03811115614eca575f5ffd5b876020828401011115614edb575f5ffd5b6020918201955093508501356001600160401b03811115614efa575f5ffd5b8501601f81018713614f0a575f5ffd5b80356001600160401b03811115614f1f575f5ffd5b8760208260051b8401011115614f33575f5ffd5b949793965060200194505050565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176120cb576120cb614f41565b818103818111156120cb576120cb614f41565b808201808211156120cb576120cb614f41565b5f5f85851115614fa0575f5ffd5b83861115614fac575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52603260045260245ffd5b5f60018201614fde57614fde614f41565b5060010190565b803560208310156120cb575f19602084900360031b1b1692915050565b5f8183825b6009811015615026578151835260209283019290910190600101615007565b5050506101208201905092915050565b634e487b7160e01b5f52601260045260245ffd5b5f8261505857615058615036565b500490565b5f8183825b6029811015615081578151835260209283019290910190600101615062565b5050506105208201905092915050565b5f8183825b606d8110156150b5578151835260209283019290910190600101615096565b505050610da08201905092915050565b5f8183825b601d8110156150e95781518352602092830192909101906001016150ca565b5050506103a08201905092915050565b5f8183825b600581101561511d5781518352602092830192909101906001016150fe565b50505060a08201905092915050565b5f8261513a5761513a615036565b500690565b5f8161514d5761514d614f41565b505f190190565b5f82518060208501845e5f920191825250919050565b5f6020828403121561517a575f5ffd5b815180151581146119f5575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b81515f90829060208501835b828110156151c75781518452602093840193909101906001016151a9565b509195945050505050565b5f8183825b600d8110156151f65781518352602092830192909101906001016151d7565b5050506101a08201905092915050565b634e487b7160e01b5f52602160045260245ffdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001";
4
4
  /**
5
5
  * HonkVerifier link references.
6
6
  */ export const HonkVerifierLinkReferences = {};