optimism: Compiled contract with size over 24kb leads to failed transactions with unclear error message

Describe the bug When attempting to debug an issue with prediqt-core I experienced a familiar CALL_EXCEPTION error when running local integration tests.

To Reproduce Steps to reproduce the behavior:

  1. Git clone my fork of prediqt-core and install deps: git clone git@github.com:platocrat/prediqt-core.git && yarn
  2. Checkout my branch: git checkout chore/get-tests-to-run
  3. Remove the monorepo and re-add and install it: rm -rf optimism && git clone https://github.com/ethereum-optimism/optimism.git && cd optimism && yarn && yarn build
  4. Build and start the L1 and L2 docker services: cd ops && docker-compose build && docker-compose up
  5. Run the integration tests of prediqt-core: yarn test:ovm
  6. See error
yarn run v1.22.5
$ cross-env HARDHAT_NETWORK=optimism cross-env HARDHAT_DEPLOY_FIXTURE=true HARDHAT_COMPILE=true mocha --bail --recursive test


  Market Dapp
Nothing to compile
Creating Typechain artifacts in directory typechain for target ethers-v5
Successfully generated Typechain artifacts!
    1) Should be able to create a market


  0 passing (7s)
  1 failing

  1) Market Dapp
       Should be able to create a market:
     ERROR processing /home/kesar/projects/prediqt-core/deploy/001_deploy_market_factory.ts:
Error: transaction failed (transactionHash="0x2d50726e0606eb0a0e50436979b773d2040975467c9a0c12b87c94f4406c8218", transaction={"hash":"0x2d50726e0606eb0a0e50436979b773d2040975467c9a0c12b87c94f4406c8218","type":null,"accessList":null,"blockHash":"0x8cdd1814a3baaa5a1f2a7d1cca87b75033cf7de223097d9f7b62f6e38faa8159","blockNumber":2,"transactionIndex":0,"confirmations":1,"from":"0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266","gasPrice":{"type":"BigNumber","hex":"0x00"},"gasLimit":{"type":"BigNumber","hex":"0x89543f"},"to":null,"value":{"type":"BigNumber","hex":"0x00"},"nonce":1,"data":"0x60806040523480156100195760008061001661001f565b50505b5061008a565b632a2a7adb598160e01b8152600481016020815285602082015260005b8681101561005757808601518282016040015260200161003c565b506020828760640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b505050565b616d69806100996000396000f3fe60806040523480156200001c57600080620000196200024e565b50505b5060043610620000515760003560e01c80632729b91a1462000061578063a54025441462000090578063b1283e7714620000a9575b6000806200005e6200024e565b50505b6200007862000072366004620004e2565b620000c0565b6040516200008791906200065d565b60405180910390f35b6200009a620001ea565b60405162000087919062000796565b62000078620000ba36600462000602565b620001fe565b600080898989895a620000d2620002bb565b8a8a8a8a604051620000e49062000317565b620000f89998979695949392919062000671565b6040518091039060006200010b62000325565b5050801580156200012b573d6000803e3d6000620001286200024e565b50505b5090505a62000139620002bb565b6001600160a01b0316816001600160a01b03167f09e48df7857bd0c1e0d31bb8a85d42cf1874817895f171c917f6ee2cea73ec2060405160405180910390a38060008060018162000189620003b1565b01808262000196620003fe565b505060009283526000190191602091502001600181620001b5620003b1565b816001600160a01b0302191690836001600160a01b0316021790620001d9620003fe565b50919b9a5050505050505050505050565b60008080620001f8620003b1565b91505090565b600081816200020c620003b1565b81106200022357600080620002206200024e565b50505b90600052602060002001600091506200023b620003b1565b906101000a90046001600160a01b031681565b632a2a7adb598160e01b8152600481016020815285602082015260005b86811015620002885780860151828201604001526020016200026b565b506020828760640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b505050565b6373509064598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051935060005b60408110156200031257600082820152602001620002f9565b505050565b6165c980620007a083390190565b6314aa2ff7598160e01b8152600481016020815286602082015260005b878110156200035f57808701518282016040015260200162000342565b506020828860640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8151965059825b81811015620003aa576000815260200162000394565b5050505050565b6303daa959598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b80516000825293506020620002f9565b6322bd64c0598160e01b8152836004820152846024820152600081604483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b600081526020620002f9565b80356001600160a01b038116811462000470576000806200046d6200024e565b50505b919050565b60008083601f840112620004925781826200048f6200024e565b50505b50813567ffffffffffffffff811115620004b5578182620004b26200024e565b50505b6020830191508360208083028501011115620004db57600080620004d86200024e565b50505b9250929050565b60008060008060008060008060c0898b03121562000509578384620005066200024e565b50505b883567ffffffffffffffff808211156200052c578586620005296200024e565b50505b818b0191508b601f8301126200054b578586620005486200024e565b50505b81358181111562000565578687620005626200024e565b50505b8c6020828501011115620005825786876200057f6200024e565b50505b60209283019a509850908a01359080821115620005a8578586620005a56200024e565b50505b50620005b78b828c0162000475565b9097509550620005cc905060408a016200044d565b9350620005dc60608a016200044d565b925060808901359150620005f360a08a016200044d565b90509295985092959890939650565b6000602082840312156200061f5780816200061c6200024e565b50505b5035919050565b6001600160a01b03169052565b60008284528282602086013780602084860101526020601f19601f85011685010190509392505050565b6001600160a01b0391909116815260200190565b600060e082526200068760e083018b8d62000633565b8281036020840152808982526020820190506020808b028301018b845b8c8110156200073e57848303601f19018452368e9003601e1901823512620006d5578586620006d26200024e565b50505b8d82350167ffffffffffffffff81351115620006fa578687620006f76200024e565b50505b803536038f131562000715578687620007126200024e565b50505b620007268482356020840162000633565b602095860195909450929092019150600101620006a4565b505080935050505062000755604083018862000626565b62000764606083018762000626565b62000773608083018662000626565b8360a08301526200078860c083018462000626565b9a9950505050505050505050565b9081526020019056fe6101006040523480156200001d576000806200001a620008f8565b50505b50604051620065c9380380620065c9833981016040819052620000409162000d07565b60405160408082019052600c81526b4d61726b657445524337323160a01b602082015287620000766301ffc9a760e01b6200042f565b60068280516200008b92916020019062000965565b506007818051620000a192916020019062000965565b50620000b46380ac58cd60e01b6200042f565b620000c6635b5e139f60e01b6200042f565b620000d863780e9d6360e01b6200042f565b50505a620000e562000a27565b82116200011a5760405162461bcd60e51b8152600401620001069062000f5c565b6040518091039062000117620008f8565b50505b62000127846001620004df565b6200015b60018860405160200162000140919062000e83565b6040516020818303038152906040526200064a60201b60201c565b600b8780516200017092916020019062000965565b506001600160601b0319606084811b821660805286811b821660a05260c084905282901b1660e0526001600c8181620001a862000a7e565b8160ff02191690836002811115620001bc57fe5b021790620001c962000acb565b5050506001865111620002045760405162461bcd60e51b8152600401620001f09062000f93565b6040518091039062000201620008f8565b50505b600086516001600160401b0381118015620002295760008062000226620008f8565b50505b5060405190808252806020026020018201604052801562000254578160200160208202803683370190505b50905060005b875181101562000353578781815181106200027157fe5b60200260200101515a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b6040811015620002d157600082820152602001620002b8565b50505084604051620002e39062000b1a565b620002f19392919062000eb4565b6040518091039060006200030462000b28565b50508015801562000324573d6000803e3d600062000321620008f8565b50505b508282815181106200033257fe5b6001600160a01b03909216602092830291909101909101526001016200025a565b50600a8180516200036992916020019062000bb4565b50846001600160a01b03165a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b6040811015620003cc57600082820152602001620003b3565b5050506001600160a01b0316876001600160a01b03167f782d64d7e69bf2133e0dc8a15fbdbd60e3d93b74b6b99fa7f1a5ac26c8e4de998b88888760405162000419949392919062000ee9565b60405180910390a4505050505050505062001021565b6001600160e01b03198082161415620004995760405162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e746572666163652069640000000060448201526064016040518091039062000496620008f8565b50505b6001600160e01b031981166000908152602081905260019060409020600181620004c262000a7e565b8160ff02191690831515021790620004d962000acb565b50505050565b6001600160a01b038216620005455760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016040518091039062000542620008f8565b50505b6200055081620006c5565b15620005ad5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015260640160405180910390620005aa620008f8565b50505b620005bb60008383620006c0565b6001600160a01b03821660009081526001602052620005ee90829060409020620006ea60201b62001a461790919060201c565b506200060c818360026200070160201b62001a52179092919060201c565b50806001600160a01b03831660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b6200065582620006c5565b6200069d5760405162461bcd60e51b815260040180806020018281038252602c8152602001806200659d602c9139604001915050604051809103906200069a620008f8565b50505b60008281526008602052819060409020908051620006c092916020019062000965565b505050565b6000620006e28260026200072360201b62001a721790919060201c565b90505b919050565b6000620006f8838362000731565b90505b92915050565b60006200071984846001600160a01b038516620007c1565b90505b9392505050565b6000620006f88383620008d5565b60006200073f8383620008d5565b620007b8578183806001816200075462000a7e565b0180826200076162000acb565b5050600092835260001901916020915020016200077d62000acb565b50839050806200078c62000a7e565b600084815260018601602052909150604090208190620007ab62000acb565b50505060019050620006fb565b506000620006fb565b6000828152600184016020528060408120620007dc62000a7e565b9050806200088f578460405180604001604052808681526020018581525090806001816200080962000a7e565b0180826200081662000acb565b50506000928352600019019160209150206002909102018151816200083a62000acb565b50506020820151816001016200084f62000acb565b5050505084600001806200086262000a7e565b6000868152600188016020529091506040902081906200088162000acb565b50505060019150506200071c565b8285600019830181620008a162000a7e565b8110620008aa57fe5b90600052602060002090600202016001018190620008c762000acb565b50505060009150506200071c565b60008181526001830160205260408120620008ef62000a7e565b15159392505050565b632a2a7adb598160e01b8152600481016020815285602082015260005b868110156200093257808601518282016040015260200162000915565b506020828760640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b505050565b82806200097162000a7e565b600181600116156101000203166002900490600052602060002090601f016020900481019282620009b157600085620009a962000acb565b505062000a15565b82601f10620009cf57805160ff19168380011785620009a962000acb565b82800160010185620009e062000acb565b5050821562000a15579182015b8281111562000a155782518262000a0362000acb565b505091602001919060010190620009ed565b5062000a2392915062000c39565b5090565b63bdbf8c36598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051935060005b6040811015620006c05760008282015260200162000a65565b6303daa959598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051600082529350602062000a65565b6322bd64c0598160e01b8152836004820152846024820152600081604483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b60008152602062000a65565b61211e806200447f83390190565b6314aa2ff7598160e01b8152600481016020815286602082015260005b8781101562000b6257808701518282016040015260200162000b45565b506020828860640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8151965059825b8181101562000bad576000815260200162000b97565b5050505050565b828062000bc062000a7e565b828262000bcc62000acb565b505090600052602060002090810192821562000a15579160200282015b8281111562000a155782518260018162000c0262000a7e565b816001600160a01b0302191690836001600160a01b031602179062000c2662000acb565b5050509160200191906001019062000be9565b8082111562000a23576000808262000c5062000acb565b50505060010162000c39565b6000815190506001600160a01b0381168114620006e55760008062000c80620008f8565b5050919050565b600082601f83011262000ca357808162000ca0620008f8565b50505b81516001600160401b0381111562000cb757fe5b62000ccc601f8201601f191660200162000fca565b81815284602083860101111562000cec57828362000ce9620008f8565b50505b62000cff82602083016020870162000ff2565b949350505050565b600080600080600080600060e0888a03121562000d2d57828362000d2a620008f8565b50505b87516001600160401b038082111562000d4f57848562000d4c620008f8565b50505b62000d5d8b838c0162000c87565b985060208a015191508082111562000d7e57848562000d7b620008f8565b50505b818a0191508a601f83011262000d9d57848562000d9a620008f8565b50505b81518181111562000daa57fe5b62000dba60208083020162000fca565b818152602080820193508401875b8381101562000df95762000de38f6020845189010162000c87565b8552602094850194919091019060010162000dc8565b50508099505050505062000e106040890162000c5c565b945062000e206060890162000c5c565b935062000e306080890162000c5c565b925060a0880151915062000e4760c0890162000c5c565b905092959891949750929550565b6000815180845262000e6f81602086016020860162000ff2565b601f01601f19169290920160200192915050565b600066697066733a2f2f60c81b8252825162000ea781600785016020870162000ff2565b9190910160070192915050565b60006060825262000ec9606083018662000e55565b6001600160a01b0394851660208401529290931660409091015292915050565b60006080825262000efe608083018762000e55565b602060018060a01b038088168286015286604086015284830360608601528286518085528784019484019150855b8181101562000f4c57838651168352948401949184019160010162000f2c565b50909a9950505050505050505050565b60208082526017908201527f4d61726b65743a2057524f4e475f54494d455354414d50000000000000000000604082015260600190565b6020808252601d908201527f4d61726b65743a2057524f4e475f4f5554434f4d45535f414d4f554e54000000604082015260600190565b600060405190508181016001600160401b038111828210171562000fea57fe5b604052919050565b60005b838110156200100f57808201518382015260200162000ff5565b83811115620004d95750506000910152565b60805160601c60a05160601c60c05160e05160601c61340b6200107460003980610e3f528061140252806119995250806107d3528061159c52508061042b52508061044f528061072a525061340b6000f3fe608060405234801561001957600080610016612848565b50505b50600436106101cd5760003560e01c80636352211e11610102578063b80777ea116100a0578063d7959cf91161007a578063d7959cf914610397578063d8dfeb451461039f578063e985e9c5146103a7578063f452a8ac146103ba576101cd565b8063b80777ea14610369578063b88d4fde14610371578063c87b56dd14610384576101cd565b806395d89b41116100dc57806395d89b4114610328578063a0712d6814610330578063a22cb46514610343578063aad3ec9614610356576101cd565b80636352211e146102fa5780636c0360eb1461030d57806370a0823114610315576101cd565b806318160ddd1161016f5780632f745c59116101495780632f745c59146102ae57806342842e0e146102c15780634f64b2be146102d45780634f6ccce7146102e7576101cd565b806318160ddd14610271578063200d2ed21461028657806323b872dd1461029b576101cd565b806306fdde03116101ab57806306fdde0314610221578063081812fc14610236578063095ea7b3146102495780630a2a39c81461025e576101cd565b806301ffc9a7146101db57806302d05d3f1461020457806304f3bcec14610219575b6000806101d8612848565b50505b6101ee6101e9366004612e58565b6103db565b6040516101fb9190612f19565b60405180910390f35b61020c610429565b6040516101fb9190612ec8565b61020c61044d565b610229610471565b6040516101fb9190612f38565b61020c610244366004612ea7565b61052e565b61025c610257366004612cfa565b6105ad565b005b6101ee61026c366004612d2c565b610695565b610279610a6d565b6040516101fb919061317a565b61028e610a7e565b6040516101fb9190612f24565b61025c6102a9366004612ba1565b610a97565b6102796102bc366004612cfa565b610af7565b61025c6102cf366004612ba1565b610b22565b61020c6102e2366004612ea7565b610b3b565b6102796102f5366004612ea7565b610b84565b61020c610308366004612ea7565b610b9a565b610229610bc0565b610279610323366004612b43565b610c66565b610229610cd7565b61027961033e366004612ea7565b610d7d565b61025c610351366004612cbb565b61112a565b610279610364366004612cfa565b61125d565b61027961159a565b61025c61037f366004612be5565b6115be565b610229610392366004612ea7565b611625565b6102296118de565b61020c611997565b6101ee6103b5366004612b66565b6119bb565b6103cd6103c8366004612b43565b611a09565b6040516101fb929190612f00565b7fffffffff00000000000000000000000000000000000000000000000000000000811660009081526020819052604081206000906104176128b3565b906101000a900460ff1690505b919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060068061047e6128b3565b600181600116156101000203166002900480601f0160208091040260200160405190810160405281815291906020830182806104b86128b3565b600181600116156101000203166002900480156105245780601f106104f25761010080836104e46128b3565b040283529160200191610524565b820191906000526020600020905b816105096128b3565b8152906001019060200180831161050057829003601f168201915b5050505050905090565b600061053982611a7e565b61057d5760405162461bcd60e51b815260040180806020018281038252602c815260200180613335602c91396040019150506040518091039061057a612848565b50505b60008281526004602052604090206000906105966128b3565b906101000a90046001600160a01b03169050919050565b60006105b882610b9a565b9050806001600160a01b0316836001600160a01b031614156106145760405162461bcd60e51b81526004018080602001828103825260218152602001806133b96021913960400191505060405180910390610611612848565b50505b806001600160a01b0316610626611a8b565b6001600160a01b031614806106425750610642816103b5611a8b565b6106865760405162461bcd60e51b81526004018080602001828103825260388152602001806132676038913960400191505060405180910390610683612848565b50505b6106908383611a96565b505050565b60006001806000600c6106a66128b3565b906101000a900460ff1660028111156106bb57fe5b146106ea5760405162461bcd60e51b81526004016106d890613030565b604051809103906106e7612848565b50505b600a806106f56128b3565b90508351146107285760405162461bcd60e51b81526004016107169061309e565b60405180910390610725612848565b50505b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165a61075b61290e565b6001600160a01b0316146107935760405162461bcd60e51b815260040161078190613067565b60405180910390610790612848565b50505b600a8061079e6128b3565b90508351146107d15760405162461bcd60e51b81526004016107bf9061310c565b604051809103906107ce612848565b50505b7f00000000000000000000000000000000000000000000000000000000000000005a6107fb612954565b101561082b5760405162461bcd60e51b815260040161081990612f8b565b60405180910390610828612848565b50505b6000805b845181101561096057600085828151811061084657fe5b602002602001015160200151101580156108785750606485828151811061086957fe5b60200260200101516020015111155b6108a65760405162461bcd60e51b815260040161089490613143565b604051809103906108a3612848565b50505b8481815181106108b257fe5b6020026020010151600d60008784815181106108ca57fe5b6020026020010151516001600160a01b03166001600160a01b031681526020019081526020016000208151816001816109016128b3565b816001600160a01b0302191690836001600160a01b031602179061092361299a565b50505060208201518160010161093761299a565b505090505084818151811061094857fe5b6020026020010151602001519091019060010161082f565b50806064146109935760405162461bcd60e51b815260040161098190612fc2565b60405180910390610990612848565b50505b6002600c6001816109a26128b3565b8160ff021916908360028111156109b557fe5b0217906109c061299a565b5050505a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b6040811015610a1957600082820152602001610a02565b5050506001600160a01b03165a610a2e61290e565b6001600160a01b03167f85fe05c69e32ec3aed403e05e055faa5b8f0dec24c0f5ef97a497b8f4b8228b560405160405180910390a35060019392505050565b6000610a796002611b23565b905090565b6000600c610a8a6128b3565b906101000a900460ff1681565b610aa8610aa2611a8b565b82611b2e565b610aec5760405162461bcd60e51b81526004018080602001828103825260318152602001806133da6031913960400191505060405180910390610ae9612848565b50505b610690838383611bdb565b6001600160a01b03821660009081526001602052610b19826040832090611d3d565b90505b92915050565b61069083838360405160208101604052600081526115be565b600a8181610b476128b3565b8110610b5b57600080610b58612848565b50505b9060005260206000200160009150610b716128b3565b906101000a90046001600160a01b031681565b600080610b92600284611d49565b509392505050565b6000610b1c826040516060810160405260298082526132c9602083013960029190611d65565b6060600980610bcd6128b3565b600181600116156101000203166002900480601f016020809104026020016040519081016040528181529190602083018280610c076128b3565b600181600116156101000203166002900480156105245780601f10610c335761010080836104e46128b3565b820191906000526020600020905b81610c4a6128b3565b81529060010190602001808311610c4157509395945050505050565b60006001600160a01b038216610cb65760405162461bcd60e51b815260040180806020018281038252602a81526020018061329f602a913960400191505060405180910390610cb3612848565b50505b6001600160a01b03821660009081526001602052610b1c9060409020611b23565b6060600780610ce46128b3565b600181600116156101000203166002900480601f016020809104026020016040519081016040528181529190602083018280610d1e6128b3565b600181600116156101000203166002900480156105245780601f10610d4a5761010080836104e46128b3565b820191906000526020600020905b81610d616128b3565b81529060010190602001808311610d5857509395945050505050565b60006001806000600c610d8e6128b3565b906101000a900460ff166002811115610da357fe5b14610dd25760405162461bcd60e51b8152600401610dc090613030565b60405180910390610dcf612848565b50505b6000600e610dde6128b3565b906101000a900460ff1615610e175760405162461bcd60e51b8152600401610e05906130d5565b60405180910390610e14612848565b50505b6001600e8181610e256128b3565b8160ff02191690831515021790610e3a61299a565b5050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd5a610e7561290e565b5a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b6040811015610ecb57600082820152602001610eb4565b505050866040518463ffffffff1660e01b8152600401610eed93929190612edc565b60206040518083038160008780610f026129e8565b158015610f1757600080610f14612848565b50505b505a610f21612a34565b505050505050158015610f41573d6000803e3d6000610f3e612848565b50505b50505050604051601f3d908101601f19168201604052610f649190810190612e33565b5060005b600a80610f736128b3565b905081101561104e57600a8181610f886128b3565b8110610f9057fe5b90600052602060002001600090610fa56128b3565b906101000a90046001600160a01b03166001600160a01b03166340c10f195a610fcc61290e565b866040518363ffffffff1660e01b8152600401610fea929190612f00565b60006040518083038160008780610fff6129e8565b15801561101457600080611011612848565b50505b505a61101e612a34565b50505050505015801561103e573d6000803e3d600061103b612848565b50505b505060019092019150610f689050565b505a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b60408110156110a55760008282015260200161108e565b5050506001600160a01b03165a6110ba61290e565b6001600160a01b03167f9d228d69b5fdb8d273a2336f8fb8612d039631024ea9bf09c424a9503aa078f0856040516110f2919061317a565b60405180910390a38291506000600e60018161110c6128b3565b8160ff0219169083151502179061112161299a565b50505050919050565b611132611a8b565b6001600160a01b0316826001600160a01b031614156111a05760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016040518091039061119d612848565b50505b80600560006111ad611a8b565b6001600160a01b03166001600160a01b031681526020019081526020016000206001600160a01b0384166000908152602091909152604090206001816111f16128b3565b8160ff0219169083151502179061120661299a565b505050816001600160a01b031661121b611a8b565b6001600160a01b03167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051901515815260200160405180910390a35050565b60006002806000600c61126e6128b3565b906101000a900460ff16600281111561128357fe5b146112b25760405162461bcd60e51b81526004016112a090613030565b604051809103906112af612848565b50505b6000600e6112be6128b3565b906101000a900460ff16156112f75760405162461bcd60e51b81526004016112e5906130d5565b604051809103906112f4612848565b50505b6001600e81816113056128b3565b8160ff0219169083151502179061131a61299a565b50505060006001600160a01b0316600d60005a61133561290e565b6001600160a01b03166001600160a01b031681526020019081526020016000206000906113606128b3565b906101000a90046001600160a01b03166001600160a01b031614156113a95760405162461bcd60e51b815260040161139790612ff9565b604051809103906113a6612848565b50505b60006113f860646113f2600d60005a6113c061290e565b6001600160a01b03166001600160a01b031681526020019081526020016000206001016113eb6128b3565b8790611d72565b90611dda565b905080156114c7577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663a9059cbb86836040518363ffffffff1660e01b815260040161144e929190612f00565b602060405180830381600087806114636129e8565b15801561147857600080611475612848565b50505b505a611482612a34565b5050505050501580156114a2573d6000803e3d600061149f612848565b50505b50505050604051601f3d908101601f191682016040526114c59190810190612e33565b505b5a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b604081101561151d57600082820152602001611506565b5050506001600160a01b0316856001600160a01b03167ff7a40077ff7a04c7e61f6f26fb13774259ddf1b6bce9ecf26a8276cdd399268383604051611562919061317a565b60405180910390a391506000600e60018161157b6128b3565b8160ff0219169083151502179061159061299a565b5050505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6115cf6115c9611a8b565b83611b2e565b6116135760405162461bcd60e51b81526004018080602001828103825260318152602001806133da6031913960400191505060405180910390611610612848565b50505b61161f84848484611e49565b50505050565b606061163082611a7e565b6116745760405162461bcd60e51b815260040180806020018281038252602f81526020018061338a602f913960400191505060405180910390611671612848565b50505b60008281526008602052604081208061168b6128b3565b600181600116156101000203166002900480601f0160208091040260200160405190810160405281815291906020830182806116c56128b3565b600181600116156101000203166002900480156117315780601f106116ff5761010080836116f16128b3565b040283529160200191611731565b820191906000526020600020905b816117166128b3565b8152906001019060200180831161170d57829003601f168201915b505050505090506000611742610bc0565b9050805161175257509050610424565b6000825111156118195780826040516020018083805190602001908083835b602083106117905780518252601f199092019160209182019101611771565b6001836020036101000a038019825116818451161790925250505091909101905082805190602001908083835b602083106117dc5780518252601f1990920191602091820191016117bd565b6001836020036101000a03801982511681845116179092525050509190910193506040925050505160208183030381529060405292505050610424565b8061182385611ea9565b6040516020018083805190602001908083835b602083106118555780518252601f199092019160209182019101611836565b6001836020036101000a038019825116818451161790925250505091909101905082805190602001908083835b602083106118a15780518252601f199092019160209182019101611882565b6001836020036101000a03801982511681845116179092525050509190910193506040925050505160208183030381529060405292505050919050565b600b806118e96128b3565b600181600116156101000203166002900480601f0160208091040260200160405190810160405281815291906020830182806119236128b3565b6001816001161561010002031660029004801561198f5780601f1061195d57610100808361194f6128b3565b04028352916020019161198f565b820191906000526020600020905b816119746128b3565b8152906001019060200180831161196b57829003601f168201915b505050505081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001600160a01b03821660009081526005602052604081206001600160a01b0383166000908152602091909152604090206000906119f76128b3565b906101000a900460ff16905092915050565b600d6020528060005260406000209050600081611a246128b3565b906101000a90046001600160a01b03169080600101611a416128b3565b905082565b6000610b198383611fc2565b6000611a6884846001600160a01b038516612043565b90505b9392505050565b6000610b198383612141565b6000610b1c600283611a72565b60005a610a7961290e565b60008181526004602052829060409020600181611ab16128b3565b816001600160a01b0302191690836001600160a01b0316021790611ad361299a565b50505080826001600160a01b0316611aea83610b9a565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000610b1c82612162565b6000611b3982611a7e565b611b7d5760405162461bcd60e51b815260040180806020018281038252602c81526020018061323b602c913960400191505060405180910390611b7a612848565b50505b6000611b8883610b9a565b9050806001600160a01b0316846001600160a01b03161480611bc35750836001600160a01b0316611bb88461052e565b6001600160a01b0316145b80611bd35750611bd381856119bb565b949350505050565b826001600160a01b0316611bee82610b9a565b6001600160a01b031614611c3c5760405162461bcd60e51b81526004018080602001828103825260298152602001806133616029913960400191505060405180910390611c39612848565b50505b6001600160a01b038216611c8a5760405162461bcd60e51b81526004018080602001828103825260248152602001806132176024913960400191505060405180910390611c87612848565b50505b611c95838383610690565b611ca0600082611a96565b6001600160a01b03831660009081526001602052611cc4908290604090209061216e565b506001600160a01b03821660009081526001602052611ce99082906040902090611a46565b50611cf660028284611a52565b5080826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b6000610b19838361217a565b6000808080611d5886866121f3565b9097909650945050505050565b6000611a6884848461228f565b600082611d8157506000610b1c565b82820282848281611d8e57fe5b0414610b195760405162461bcd60e51b81526004018080602001828103825260218152602001806133146021913960400191505060405180910390611dd1612848565b50509392505050565b6000808211611e385760405162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015260640160405180910390611e35612848565b50505b818381611e4157fe5b049392505050565b611e54848484611bdb565b611e6084848484612377565b61161f5760405162461bcd60e51b81526004018080602001828103825260328152602001806131e56032913960400191505060405180910390611ea1612848565b505050505050565b606081611eeb5760405160408082019052600181527f300000000000000000000000000000000000000000000000000000000000000060208201529050610424565b8160005b8115611f0357600101600a82049150611eef565b60008167ffffffffffffffff81118015611f2557600080611f22612848565b50505b50604051818152601f19601f8301168101602001604052908015611f50576020820181803683370190505b50859350905060001982015b8315611fb9576000198101906030600a86060160f81b90839081518110611f7f57fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a84049350611f5c565b50949350505050565b6000611fce8383612141565b61203b57818380600181611fe06128b3565b018082611feb61299a565b50506000928352600019019160209150200161200561299a565b50839050806120126128b3565b60008481526001860160205290915060409020819061202f61299a565b50505060019050610b1c565b506000610b1c565b600082815260018401602052806040812061205c6128b3565b905080612101578460405180604001604052808681526020018581525090806001816120866128b3565b01808261209161299a565b50506000928352600019019160209150206002909102018151816120b361299a565b50506020820151816001016120c661299a565b5050505084600001806120d76128b3565b6000868152600188016020529091506040902081906120f461299a565b5050506001915050611a6b565b82856000198301816121116128b3565b811061211957fe5b9060005260206000209060020201600101819061213461299a565b5050506000915050611a6b565b600081815260018301602052604081206121596128b3565b15159392505050565b60008180611a6b6128b3565b6000610b198383612529565b60008183806121876128b3565b9050116121ce5760405162461bcd60e51b81526004018080602001828103825260228152602001806131c360229139604001915050604051809103906121cb612848565b50505b8282816121d96128b3565b81106121e157fe5b90600052602060002001610b196128b3565b6000808284806122016128b3565b9050116122485760405162461bcd60e51b81526004018080602001828103825260228152602001806132f26022913960400191505060405180910390612245612848565b50505b60008484816122556128b3565b811061225d57fe5b9060005260206000206002909102019050806122776128b3565b816001016122836128b3565b92509250509250929050565b60008281526001840160205280604081206122a86128b3565b9050828161233d5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156122f95780820151838201526020016122e1565b50505050905090810190601f1680156123265780820380516001836020036101000a031916815260200191505b50925050506040518091039061233a612848565b50505b508460001982018161234d6128b3565b811061235557fe5b906000526020600020906002020160010161236e6128b3565b95945050505050565b600061238b846001600160a01b031661264a565b61239757506001611bd3565b60006124c8630a85bd0160e11b6123ac611a8b565b88878760405160240180856001600160a01b03168152602001846001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156124135780820151838201526020016123fb565b50505050905090810190601f1680156124405780820380516001836020036101000a031916815260200191505b5095505050505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1690911790526040516060810160405260328082526131e560208301396001600160a01b0388169190612656565b9050600060208201825160208110156124e9576000806124e6612848565b50505b8101908080517fffffffff0000000000000000000000000000000000000000000000000000000016630a85bd0160e11b1495505050505050949350505050565b60008181526001830160205280604081206125426128b3565b9050801561264057600019810160006001868061255d6128b3565b905003905060008660000182816125726128b3565b811061257a57fe5b9060005260206000200161258c6128b3565b90508087848161259a6128b3565b81106125a257fe5b9060005260206000200181906125b661299a565b505050600081815260018881016020528401906040902081906125d761299a565b50505086600001806125e76128b3565b806125ee57fe5b6001900381819060005260206000200160009061260961299a565b50509061261461299a565b50506000868152600188016020526040902060009061263161299a565b50506001945050505050610b1c565b6000915050610b1c565b600080826121596129e8565b6060611a688484600085606061266b8561264a565b6126c45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401604051809103906126c1612848565b50505b600080866001600160a01b031685876040518082805190602001908083835b602083106127025780518252601f1990920191602091820191016126e3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875a61273b612a34565b505050505050925050503d8060008114612771576040513d603f01601f191681016040523d815291503d6000602084013e612776565b606091505b5091509150612786828286612791565b979650505050505050565b606083156127a0575081611a6b565b6000835111156127c157825180846020016127b9612848565b505050611a6b565b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561280b5780820151838201526020016127f3565b50505050905090810190601f1680156128385780820380516001836020036101000a031916815260200191505b509250505060405180910390611dd15b632a2a7adb598160e01b8152600481016020815285602082015260005b86811015612880578086015182820160400152602001612865565b506020828760640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b505050565b6303daa959598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051935060005b6040811015610690576000828201526020016128f7565b6373509064598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b805160008252935060206128f7565b63bdbf8c36598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b805160008252935060206128f7565b6322bd64c0598160e01b8152836004820152846024820152600081604483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b6000815260206128f7565b638435035b598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b805160008252935060206128f7565b6385979f76598160e01b8152612a65565b8080831115610b1c575090919050565b8080831015610b1c575090919050565b836004820152846024820152606060448201528760648201526084810160005b89811015612a9d578089015182820152602001612a85565b506060828a60a40184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b815160408301513d6000853e8c8c82606087013350600060045af15059612af28e3d612a55565b8d01612afe8187612a45565b5b82811015612b135760008152602001612aff565b50929d50505050505050565b80356001600160a01b038116811461042457600080612b3c612848565b5050919050565b600060208284031215612b5d578081612b5a612848565b50505b610b1982612b1f565b60008060408385031215612b81578081612b7e612848565b50505b612b8a83612b1f565b9150612b9860208401612b1f565b90509250929050565b600080600060608486031215612bbe578081612bbb612848565b50505b612bc784612b1f565b9250612bd560208501612b1f565b9150604084013590509250925092565b60008060008060808587031215612c03578081612c00612848565b50505b612c0c85612b1f565b93506020612c1b818701612b1f565b935060408601359250606086013567ffffffffffffffff80821115612c47578384612c44612848565b50505b818801915088601f830112612c63578384612c60612848565b50505b813581811115612c6f57fe5b612c81601f8201601f19168501613183565b91508082528984828501011115612c9f578485612c9c612848565b50505b8084840185840137810190920192909252939692955090935050565b60008060408385031215612cd6578182612cd3612848565b50505b612cdf83612b1f565b91506020830135612cef816131ab565b809150509250929050565b60008060408385031215612d15578182612d12612848565b50505b612d1e83612b1f565b946020939093013593505050565b60006020808385031215612d47578182612d44612848565b50505b823567ffffffffffffffff80821115612d67578384612d64612848565b50505b818501915085601f830112612d83578384612d80612848565b50505b813581811115612d8f57fe5b612d9c8485830201613183565b818152848101908486016040808502870188018b1015612dc3578889612dc0612848565b50505b8896505b84871015612e245780828c031215612de6578889612de3612848565b50505b80518181018181108882111715612df957fe5b8252612e0483612b1f565b815282890135898201528452600196909601959287019290810190612dc7565b50909998505050505050505050565b600060208284031215612e4d578081612e4a612848565b50505b8151610b19816131ab565b600060208284031215612e72578081612e6f612848565b50505b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610b19578182611dd1612848565b600060208284031215612ec1578081612ebe612848565b50505b5035919050565b6001600160a01b0391909116815260200190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b6020810160038310612f3257fe5b91905290565b6000602080835283518082850152825b81811015612f6457828187010151858201604001528201612f48565b81811115612f755783604083870101525b50601f01601f1916929092016040019392505050565b60208082526011908201527f4d61726b65743a20544f4f5f4541524c59000000000000000000000000000000604082015260600190565b6020808252601a908201527f4d61726b65743a2057524f4e475f53554d5f4f5554434f4d4553000000000000604082015260600190565b6020808252601c908201527f4d61726b65743a20544f4b454e5f444f45535f4e4f545f455849535400000000604082015260600190565b60208082526014908201527f4d61726b65743a2057524f4e475f535441545553000000000000000000000000604082015260600190565b60208082526011908201527f4d61726b65743a20464f5242494444454e000000000000000000000000000000604082015260600190565b6020808252601c908201527f4d61726b65743a2057524f4e475f5245534f4c56455f414d4f554e5400000000604082015260600190565b60208082526012908201527f436f6e7472616374206973206c6f636b65640000000000000000000000000000604082015260600190565b60208082526018908201527f4d61726b65743a204d495353494e475f4f5554434f4d45530000000000000000604082015260600190565b60208082526014908201527f4d61726b65743a2057524f4e475f524553554c54000000000000000000000000604082015260600190565b90815260200190565b6000604051905081810181811067ffffffffffffffff821117156131a357fe5b604052919050565b80151581146131bf57600080610690612848565b5056fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e456e756d657261626c654d61703a20696e646578206f7574206f6620626f756e6473536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314d657461646174613a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656460806040523480156200001c5760008062000019620004a5565b50505b506040516200211e3803806200211e833981810160405260608110156200004d576000806200004a620004a5565b50505b8101908080516040519392919084640100000000821115620000795760008062000076620004a5565b50505b9083019060208201858111156200009a5760008062000097620004a5565b50505b8251640100000000811182820188101715620000c057600080620000bd620004a5565b50505b825250602001908051906020019080838360005b83811015620000ee578082015183820152602001620000d4565b50505050905090810190601f1680156200011c5780820380516001836020036101000a031916815260200191505b5060405260200180519291906020018051925060409150505160408082019052600b81526a04d61726b657445524332360ac1b60208201528360038280516200016a92916020019062000512565b5060048180516200018092916020019062000512565b506012600560018162000192620005d4565b8160ff021916908360ff16021790620001aa62000636565b50505050506000620001c1620002ea60201b60201c565b905080600561010081620001d4620005d4565b816001600160a01b0302191690836001600160a01b0316021790620001f862000636565b5050506001600160a01b0381166000600080516020620020fe83398151915260405160405180910390a3506200022e82620002fc565b620002e1816001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186806200026862000685565b15801562000280576000806200027d620004a5565b50505b505a6200028c620006d2565b5050505050158015620002ae573d6000803e3d6000620002ab620004a5565b50505b505050506040513d6020811015620002d057600080620002cd620004a5565b50505b810190808051925050620004589050565b50505062000834565b60005a620002f7620007ca565b905090565b62000306620002ea565b6001600160a01b03166200031962000480565b6001600160a01b0316146200037f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401604051809103906200037c620004a5565b50505b6001600160a01b038116620003d15760405162461bcd60e51b8152600401808060200182810382526026815260200180620020d86026913960400191505060405180910390620003ce620004a5565b50505b6001600160a01b03811660016005620003e9620005d4565b906101000a90046001600160a01b03166001600160a01b0316600080516020620020fe83398151915260405160405180910390a3806005610100816200042e620005d4565b816001600160a01b0302191690836001600160a01b03160217906200045262000636565b50505050565b80600560018162000468620005d4565b8160ff021916908360ff160217906200045262000636565b60006001600562000490620005d4565b906101000a90046001600160a01b0316905090565b632a2a7adb598160e01b8152600481016020815285602082015260005b86811015620004df578086015182820160400152602001620004c2565b506020828760640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b505050565b82806200051e620005d4565b600181600116156101000203166002900490600052602060002090601f0160209004810192826200055e576000856200055662000636565b5050620005c2565b82601f106200057c57805160ff191683800117856200055662000636565b828001600101856200058d62000636565b50508215620005c2579182015b82811115620005c257825182620005b062000636565b5050916020019190600101906200059a565b50620005d092915062000811565b5090565b6303daa959598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051935060005b6040811015620006315760008282015260200162000618565b505050565b6322bd64c0598160e01b8152836004820152846024820152600081604483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b60008152602062000618565b638435035b598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051600082529350602062000618565b638540661f598160e01b815262000708565b8080831115620006f15750815b92915050565b8080831015620006f1575090919050565b836004820152846024820152606060448201528660648201526084810160005b888110156200074257808801518282015260200162000728565b506060828960a40184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b815160408301513d6000853e8b8b82606087013350600060045af15059620007998d3d620006f7565b8c01620007a78187620006e4565b5b82811015620007be5760008152602001620007a8565b50929c50505050505050565b6373509064598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051600082529350602062000618565b80821115620005d057600080826200082862000636565b50505060010162000811565b61189480620008446000396000f3fe6080604052348015610019576000806100166113d2565b50505b50600436106101095760003560e01c806370a08231116100a0578063a457c2d71161006f578063a457c2d71461034b578063a9059cbb14610380578063dd62ed3e146103b5578063f2fde38b146103ec57610109565b806370a08231146102e8578063715018a6146103175780638da5cb5b1461031f57806395d89b411461034357610109565b8063313ce567116100dc578063313ce56714610238578063395093511461025657806340c10f191461028b57806342966c68146102c257610109565b806306fdde0314610117578063095ea7b31461019657806318160ddd146101df57806323b872dd146101f9575b6000806101146113d2565b50505b61011f61041b565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561015b578082015183820152602001610143565b50505050905090810190601f1680156101885780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cb600480360360408110156101b5576000806101b26113d2565b50505b506001600160a01b0381351690602001356104d8565b604051901515815260200160405180910390f35b6101e76104f6565b60405190815260200160405180910390f35b6101cb60048036036060811015610218576000806102156113d2565b50505b506001600160a01b03813581169160208101359091169060400135610507565b61024061059b565b60405160ff909116815260200160405180910390f35b6101cb60048036036040811015610275576000806102726113d2565b50505b506001600160a01b0381351690602001356105b7565b6102c0600480360360408110156102aa576000806102a76113d2565b50505b506001600160a01b03813516906020013561061c565b005b6102c0600480360360208110156102e1576000806102de6113d2565b50505b50356106a6565b6101e760048036036020811015610307576000806103046113d2565b50505b50356001600160a01b031661094f565b6102c061096f565b610327610a75565b6040516001600160a01b03909116815260200160405180910390f35b61011f610a98565b6101cb6004803603604081101561036a576000806103676113d2565b50505b506001600160a01b038135169060200135610b3e565b6101cb6004803603604081101561039f5760008061039c6113d2565b50505b506001600160a01b038135169060200135610bb4565b6101e7600480360360408110156103d4576000806103d16113d2565b50505b506001600160a01b0381358116916020013516610bc8565b6102c06004803603602081101561040b576000806104086113d2565b50505b50356001600160a01b0316610c08565b606060038061042861143d565b600181600116156101000203166002900480601f01602080910402602001604051908101604052818152919060208301828061046261143d565b600181600116156101000203166002900480156104ce5780601f1061049c57610100808361048e61143d565b0402835291602001916104ce565b820191906000526020600020905b816104b361143d565b815290600101906020018083116104aa57829003601f168201915b5050505050905090565b60006104ec6104e5610d5e565b8484610d69565b5060015b92915050565b6000600261050261143d565b905090565b6000610514848484610e91565b61059184610520610d5e565b61058c856040516060810160405260288082526117dd60208301396001600160a01b038a166000908152600160205260409020600061055d610d5e565b6001600160a01b03166001600160a01b0316815260200190815260200160002061058561143d565b919061102f565b610d69565b5060019392505050565b60008060056105a861143d565b906101000a900460ff16905090565b60006104ec6105c4610d5e565b8461058c85600160006105d5610d5e565b6001600160a01b03166001600160a01b031681526020019081526020016000206001600160a01b03891660009081526020919091526040902061061661143d565b906110cf565b610624610d5e565b6001600160a01b0316610635610a75565b6001600160a01b0316146106985760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401604051809103906106956113d2565b50505b6106a28282611137565b5050565b601560056106b261143d565b906101000a900460ff16156107165760405162461bcd60e51b815260206004820152601260248201527f436f6e7472616374206973206c6f636b656400000000000000000000000000006044820152606401604051809103906107136113d2565b50505b60016005600160a81b8161072861143d565b8160ff0219169083151502179061073d611498565b5050506107525a61074c6114e6565b82611250565b5a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b60408110156107a857600082820152602001610791565b5050506001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186806107de61152c565b1580156107f3576000806107f06113d2565b50505b505a6107fd611578565b505050505015801561081c573d6000803e3d60006108196113d2565b50505b505050506040513d602081101561083b576000806108386113d2565b50505b8101908080516001600160a01b0316925063aad3ec969150505a61085d6114e6565b836040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526024820152604401602060405180830381600087806108b761152c565b1580156108cc576000806108c96113d2565b50505b505a6108d6611663565b5050505050501580156108f6573d6000803e3d60006108f36113d2565b50505b505050506040513d6020811015610915576000806109126113d2565b50505b810190808051506000925060059150600160a81b90508161093461143d565b8160ff02191690831515021790610949611498565b50505050565b6001600160a01b03811660009081526020819052604081206104f061143d565b610977610d5e565b6001600160a01b0316610988610a75565b6001600160a01b0316146109eb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401604051809103906109e86113d2565b50505b6000600160056109f961143d565b906101000a90046001600160a01b03166001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600561010081610a4e61143d565b816001600160a01b0302191690836001600160a01b0316021790610a70611498565b505050565b600060016005610a8361143d565b906101000a90046001600160a01b0316905090565b6060600480610aa561143d565b600181600116156101000203166002900480601f016020809104026020016040519081016040528181529190602083018280610adf61143d565b600181600116156101000203166002900480156104ce5780601f10610b0b57610100808361048e61143d565b820191906000526020600020905b81610b2261143d565b81529060010190602001808311610b1957509395945050505050565b60006104ec610b4b610d5e565b8461058c8560405160608101604052602580825261186f602083013960016000610b73610d5e565b6001600160a01b03166001600160a01b031681526020019081526020016000206001600160a01b038a1660009081526020919091526040902061058561143d565b60006104ec610bc1610d5e565b8484610e91565b6001600160a01b03821660009081526001602052604081206001600160a01b038316600090815260209190915260409020610c0161143d565b9392505050565b610c10610d5e565b6001600160a01b0316610c21610a75565b6001600160a01b031614610c845760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640160405180910390610c816113d2565b50505b6001600160a01b038116610cd25760405162461bcd60e51b815260040180806020018281038252602681526020018061176f6026913960400191505060405180910390610ccf6113d2565b50505b6001600160a01b03811660016005610ce861143d565b906101000a90046001600160a01b03166001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600561010081610d3c61143d565b816001600160a01b0302191690836001600160a01b0316021790610949611498565b60005a6105026114e6565b6001600160a01b038316610db75760405162461bcd60e51b815260040180806020018281038252602481526020018061184b6024913960400191505060405180910390610db46113d2565b50505b6001600160a01b038216610e055760405162461bcd60e51b81526004018080602001828103825260228152602001806117956022913960400191505060405180910390610e026113d2565b50505b6001600160a01b038316600090815260016020528190604090206001600160a01b0384166000908152602091909152604090208190610e42611498565b505050816001600160a01b0316836001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405190815260200160405180910390a3505050565b6001600160a01b038316610edf5760405162461bcd60e51b81526004018080602001828103825260258152602001806118266025913960400191505060405180910390610edc6113d2565b50505b6001600160a01b038216610f2d5760405162461bcd60e51b815260040180806020018281038252602381526020018061172a6023913960400191505060405180910390610f2a6113d2565b50505b610f38838383610a70565b610f73816040516060810160405260268082526117b760208301396001600160a01b038616600090815260208190526040902061058561143d565b6001600160a01b03841660009081526020819052604090208190610f95611498565b5050506001600160a01b03821660009081526020819052610fbe9082906040902061061661143d565b6001600160a01b03831660009081526020819052604090208190610fe0611498565b505050816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a3505050565b600081848411156110c75760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561108357808201518382015260200161106b565b50505050905090810190601f1680156110b05780820380516001836020036101000a031916815260200191505b5092505050604051809103906110c46113d2565b50505b505050900390565b600082820183811015610c015760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016040518091039061112e6113d2565b50509392505050565b6001600160a01b03821661119a5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401604051809103906111976113d2565b50505b6111a660008383610a70565b6111b481600261061661143d565b8060026111bf611498565b5050506001600160a01b038216600090815260208190526111e89082906040902061061661143d565b6001600160a01b0383166000908152602081905260409020819061120a611498565b5050506001600160a01b03821660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a35050565b6001600160a01b03821661129e5760405162461bcd60e51b8152600401808060200182810382526021815260200180611805602191396040019150506040518091039061129b6113d2565b50505b6112aa82600083610a70565b6112e58160405160608101604052602280825261174d60208301396001600160a01b038516600090815260208190526040902061058561143d565b6001600160a01b03831660009081526020819052604090208190611307611498565b50505061131e81600261131861143d565b90611370565b806002611329611498565b5060009150506001600160a01b0383167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a35050565b6000828211156113cc5760405162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f7700006044820152606401604051809103906110c76113d2565b50900390565b632a2a7adb598160e01b8152600481016020815285602082015260005b8681101561140a5780860151828201604001526020016113ef565b506020828760640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b505050565b6303daa959598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051935060005b6040811015610a7057600082820152602001611481565b6322bd64c0598160e01b8152836004820152846024820152600081604483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b600081526020611481565b6373509064598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b80516000825293506020611481565b638435035b598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b80516000825293506020611481565b638540661f598160e01b81526115a9565b80808311156104f0575090919050565b80808310156104f0575090919050565b836004820152846024820152606060448201528660648201526084810160005b888110156115e15780880151828201526020016115c9565b506060828960a40184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b815160408301513d6000853e8b8b82606087013350600060045af150596116368d3d611599565b8c016116428187611589565b5b828110156116575760008152602001611643565b50929c50505050505050565b6385979f76598160e01b8152836004820152846024820152606060448201528760648201526084810160005b898110156116a757808901518282015260200161168f565b506060828a60a40184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b815160408301513d6000853e8c8c82606087013350600060045af150596116fc8e3d611599565b8d016117088187611589565b5b8281101561171d5760008152602001611709565b50929d5050505050505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573738be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e04552433732314d657461646174613a2055524920736574206f66206e6f6e6578697374656e7420746f6b656e","r":"0x6fd8a1bcb4d7e28cbf03e26cdab8ede4e45b111b9bf0b329950cd1de1d610e18","s":"0x0d1eb144a68014d08c6f1d59b55835017872e16e85e31d200695d7e16ddfd2ac","v":876,"creates":"0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512","chainId":420}, receipt={"to":null,"from":"0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266","contractAddress":"0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512","transactionIndex":0,"gasUsed":{"type":"BigNumber","hex":"0x7d7717"},"logsBloom":"0x00000000000000000000000000000000000000000000000000040000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000008000000000000000010000000000000000000000400000000000000000000000100008000000000000000000000000010000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000200000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","blockHash":"0x8cdd1814a3baaa5a1f2a7d1cca87b75033cf7de223097d9f7b62f6e38faa8159","transactionHash":"0x2d50726e0606eb0a0e50436979b773d2040975467c9a0c12b87c94f4406c8218","logs":[{"transactionIndex":0,"blockNumber":2,"transactionHash":"0x2d50726e0606eb0a0e50436979b773d2040975467c9a0c12b87c94f4406c8218","address":"0x4200000000000000000000000000000000000006","topics":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","0x000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb92266","0x0000000000000000000000004200000000000000000000000000000000000005"],"data":"0x0000000000000000000000000000000000000000000000000000000000000000","logIndex":0,"blockHash":"0x8cdd1814a3baaa5a1f2a7d1cca87b75033cf7de223097d9f7b62f6e38faa8159"}],"blockNumber":2,"confirmations":1,"cumulativeGasUsed":{"type":"BigNumber","hex":"0x7d7717"},"status":0,"byzantium":true}, code=CALL_EXCEPTION, version=providers/5.1.2)
    at Logger.makeError (/home/kesar/projects/prediqt-core/node_modules/@ethersproject/logger/src.ts/index.ts:205:28)
    at Logger.throwError (/home/kesar/projects/prediqt-core/node_modules/@ethersproject/logger/src.ts/index.ts:217:20)
    at Web3Provider.<anonymous> (/home/kesar/projects/prediqt-core/node_modules/@ethersproject/providers/src.ts/base-provider.ts:1084:24)
    at step (/home/kesar/projects/prediqt-core/node_modules/@ethersproject/providers/lib/base-provider.js:48:23)
    at Object.next (/home/kesar/projects/prediqt-core/node_modules/@ethersproject/providers/lib/base-provider.js:29:53)
    at fulfilled (/home/kesar/projects/prediqt-core/node_modules/@ethersproject/providers/lib/base-provider.js:20:58)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
  Error: ERROR processing /home/kesar/projects/prediqt-core/deploy/001_deploy_market_factory.ts:
  Error: transaction failed (transactionHash="0x2d50726e0606eb0a0e50436979b773d2040975467c9a0c12b87c94f4406c8218", transaction={"hash":"0x2d50726e0606eb0a0e50436979b773d2040975467c9a0c12b87c94f4406c8218","type":null,"accessList":null,"blockHash":"0x8cdd1814a3baaa5a1f2a7d1cca87b75033cf7de223097d9f7b62f6e38faa8159","blockNumber":2,"transactionIndex":0,"confirmations":1,"from":"0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266","gasPrice":{"type":"BigNumber","hex":"0x00"},"gasLimit":{"type":"BigNumber","hex":"0x89543f"},"to":null,"value":{"type":"BigNumber","hex":"0x00"},"nonce":1,"data":"0x60806040523480156100195760008061001661001f565b50505b5061008a565b632a2a7adb598160e01b8152600481016020815285602082015260005b8681101561005757808601518282016040015260200161003c565b506020828760640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b505050565b616d69806100996000396000f3fe60806040523480156200001c57600080620000196200024e565b50505b5060043610620000515760003560e01c80632729b91a1462000061578063a54025441462000090578063b1283e7714620000a9575b6000806200005e6200024e565b50505b6200007862000072366004620004e2565b620000c0565b6040516200008791906200065d565b60405180910390f35b6200009a620001ea565b60405162000087919062000796565b62000078620000ba36600462000602565b620001fe565b600080898989895a620000d2620002bb565b8a8a8a8a604051620000e49062000317565b620000f89998979695949392919062000671565b6040518091039060006200010b62000325565b5050801580156200012b573d6000803e3d6000620001286200024e565b50505b5090505a62000139620002bb565b6001600160a01b0316816001600160a01b03167f09e48df7857bd0c1e0d31bb8a85d42cf1874817895f171c917f6ee2cea73ec2060405160405180910390a38060008060018162000189620003b1565b01808262000196620003fe565b505060009283526000190191602091502001600181620001b5620003b1565b816001600160a01b0302191690836001600160a01b0316021790620001d9620003fe565b50919b9a5050505050505050505050565b60008080620001f8620003b1565b91505090565b600081816200020c620003b1565b81106200022357600080620002206200024e565b50505b90600052602060002001600091506200023b620003b1565b906101000a90046001600160a01b031681565b632a2a7adb598160e01b8152600481016020815285602082015260005b86811015620002885780860151828201604001526020016200026b565b506020828760640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b505050565b6373509064598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051935060005b60408110156200031257600082820152602001620002f9565b505050565b6165c980620007a083390190565b6314aa2ff7598160e01b8152600481016020815286602082015260005b878110156200035f57808701518282016040015260200162000342565b506020828860640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8151965059825b81811015620003aa576000815260200162000394565b5050505050565b6303daa959598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b80516000825293506020620002f9565b6322bd64c0598160e01b8152836004820152846024820152600081604483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b600081526020620002f9565b80356001600160a01b038116811462000470576000806200046d6200024e565b50505b919050565b60008083601f840112620004925781826200048f6200024e565b50505b50813567ffffffffffffffff811115620004b5578182620004b26200024e565b50505b6020830191508360208083028501011115620004db57600080620004d86200024e565b50505b9250929050565b60008060008060008060008060c0898b03121562000509578384620005066200024e565b50505b883567ffffffffffffffff808211156200052c578586620005296200024e565b50505b818b0191508b601f8301126200054b578586620005486200024e565b50505b81358181111562000565578687620005626200024e565b50505b8c6020828501011115620005825786876200057f6200024e565b50505b60209283019a509850908a01359080821115620005a8578586620005a56200024e565b50505b50620005b78b828c0162000475565b9097509550620005cc905060408a016200044d565b9350620005dc60608a016200044d565b925060808901359150620005f360a08a016200044d565b90509295985092959890939650565b6000602082840312156200061f5780816200061c6200024e565b50505b5035919050565b6001600160a01b03169052565b60008284528282602086013780602084860101526020601f19601f85011685010190509392505050565b6001600160a01b0391909116815260200190565b600060e082526200068760e083018b8d62000633565b8281036020840152808982526020820190506020808b028301018b845b8c8110156200073e57848303601f19018452368e9003601e1901823512620006d5578586620006d26200024e565b50505b8d82350167ffffffffffffffff81351115620006fa578687620006f76200024e565b50505b803536038f131562000715578687620007126200024e565b50505b620007268482356020840162000633565b602095860195909450929092019150600101620006a4565b505080935050505062000755604083018862000626565b62000764606083018762000626565b62000773608083018662000626565b8360a08301526200078860c083018462000626565b9a9950505050505050505050565b9081526020019056fe6101006040523480156200001d576000806200001a620008f8565b50505b50604051620065c9380380620065c9833981016040819052620000409162000d07565b60405160408082019052600c81526b4d61726b657445524337323160a01b602082015287620000766301ffc9a760e01b6200042f565b60068280516200008b92916020019062000965565b506007818051620000a192916020019062000965565b50620000b46380ac58cd60e01b6200042f565b620000c6635b5e139f60e01b6200042f565b620000d863780e9d6360e01b6200042f565b50505a620000e562000a27565b82116200011a5760405162461bcd60e51b8152600401620001069062000f5c565b6040518091039062000117620008f8565b50505b62000127846001620004df565b6200015b60018860405160200162000140919062000e83565b6040516020818303038152906040526200064a60201b60201c565b600b8780516200017092916020019062000965565b506001600160601b0319606084811b821660805286811b821660a05260c084905282901b1660e0526001600c8181620001a862000a7e565b8160ff02191690836002811115620001bc57fe5b021790620001c962000acb565b5050506001865111620002045760405162461bcd60e51b8152600401620001f09062000f93565b6040518091039062000201620008f8565b50505b600086516001600160401b0381118015620002295760008062000226620008f8565b50505b5060405190808252806020026020018201604052801562000254578160200160208202803683370190505b50905060005b875181101562000353578781815181106200027157fe5b60200260200101515a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b6040811015620002d157600082820152602001620002b8565b50505084604051620002e39062000b1a565b620002f19392919062000eb4565b6040518091039060006200030462000b28565b50508015801562000324573d6000803e3d600062000321620008f8565b50505b508282815181106200033257fe5b6001600160a01b03909216602092830291909101909101526001016200025a565b50600a8180516200036992916020019062000bb4565b50846001600160a01b03165a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b6040811015620003cc57600082820152602001620003b3565b5050506001600160a01b0316876001600160a01b03167f782d64d7e69bf2133e0dc8a15fbdbd60e3d93b74b6b99fa7f1a5ac26c8e4de998b88888760405162000419949392919062000ee9565b60405180910390a4505050505050505062001021565b6001600160e01b03198082161415620004995760405162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e746572666163652069640000000060448201526064016040518091039062000496620008f8565b50505b6001600160e01b031981166000908152602081905260019060409020600181620004c262000a7e565b8160ff02191690831515021790620004d962000acb565b50505050565b6001600160a01b038216620005455760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016040518091039062000542620008f8565b50505b6200055081620006c5565b15620005ad5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015260640160405180910390620005aa620008f8565b50505b620005bb60008383620006c0565b6001600160a01b03821660009081526001602052620005ee90829060409020620006ea60201b62001a461790919060201c565b506200060c818360026200070160201b62001a52179092919060201c565b50806001600160a01b03831660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b6200065582620006c5565b6200069d5760405162461bcd60e51b815260040180806020018281038252602c8152602001806200659d602c9139604001915050604051809103906200069a620008f8565b50505b60008281526008602052819060409020908051620006c092916020019062000965565b505050565b6000620006e28260026200072360201b62001a721790919060201c565b90505b919050565b6000620006f8838362000731565b90505b92915050565b60006200071984846001600160a01b038516620007c1565b90505b9392505050565b6000620006f88383620008d5565b60006200073f8383620008d5565b620007b8578183806001816200075462000a7e565b0180826200076162000acb565b5050600092835260001901916020915020016200077d62000acb565b50839050806200078c62000a7e565b600084815260018601602052909150604090208190620007ab62000acb565b50505060019050620006fb565b506000620006fb565b6000828152600184016020528060408120620007dc62000a7e565b9050806200088f578460405180604001604052808681526020018581525090806001816200080962000a7e565b0180826200081662000acb565b50506000928352600019019160209150206002909102018151816200083a62000acb565b50506020820151816001016200084f62000acb565b5050505084600001806200086262000a7e565b6000868152600188016020529091506040902081906200088162000acb565b50505060019150506200071c565b8285600019830181620008a162000a7e565b8110620008aa57fe5b90600052602060002090600202016001018190620008c762000acb565b50505060009150506200071c565b60008181526001830160205260408120620008ef62000a7e565b15159392505050565b632a2a7adb598160e01b8152600481016020815285602082015260005b868110156200093257808601518282016040015260200162000915565b506020828760640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b505050565b82806200097162000a7e565b600181600116156101000203166002900490600052602060002090601f016020900481019282620009b157600085620009a962000acb565b505062000a15565b82601f10620009cf57805160ff19168380011785620009a962000acb565b82800160010185620009e062000acb565b5050821562000a15579182015b8281111562000a155782518262000a0362000acb565b505091602001919060010190620009ed565b5062000a2392915062000c39565b5090565b63bdbf8c36598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051935060005b6040811015620006c05760008282015260200162000a65565b6303daa959598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051600082529350602062000a65565b6322bd64c0598160e01b8152836004820152846024820152600081604483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b60008152602062000a65565b61211e806200447f83390190565b6314aa2ff7598160e01b8152600481016020815286602082015260005b8781101562000b6257808701518282016040015260200162000b45565b506020828860640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8151965059825b8181101562000bad576000815260200162000b97565b5050505050565b828062000bc062000a7e565b828262000bcc62000acb565b505090600052602060002090810192821562000a15579160200282015b8281111562000a155782518260018162000c0262000a7e565b816001600160a01b0302191690836001600160a01b031602179062000c2662000acb565b5050509160200191906001019062000be9565b8082111562000a23576000808262000c5062000acb565b50505060010162000c39565b6000815190506001600160a01b0381168114620006e55760008062000c80620008f8565b5050919050565b600082601f83011262000ca357808162000ca0620008f8565b50505b81516001600160401b0381111562000cb757fe5b62000ccc601f8201601f191660200162000fca565b81815284602083860101111562000cec57828362000ce9620008f8565b50505b62000cff82602083016020870162000ff2565b949350505050565b600080600080600080600060e0888a03121562000d2d57828362000d2a620008f8565b50505b87516001600160401b038082111562000d4f57848562000d4c620008f8565b50505b62000d5d8b838c0162000c87565b985060208a015191508082111562000d7e57848562000d7b620008f8565b50505b818a0191508a601f83011262000d9d57848562000d9a620008f8565b50505b81518181111562000daa57fe5b62000dba60208083020162000fca565b818152602080820193508401875b8381101562000df95762000de38f6020845189010162000c87565b8552602094850194919091019060010162000dc8565b50508099505050505062000e106040890162000c5c565b945062000e206060890162000c5c565b935062000e306080890162000c5c565b925060a0880151915062000e4760c0890162000c5c565b905092959891949750929550565b6000815180845262000e6f81602086016020860162000ff2565b601f01601f19169290920160200192915050565b600066697066733a2f2f60c81b8252825162000ea781600785016020870162000ff2565b9190910160070192915050565b60006060825262000ec9606083018662000e55565b6001600160a01b0394851660208401529290931660409091015292915050565b60006080825262000efe608083018762000e55565b602060018060a01b038088168286015286604086015284830360608601528286518085528784019484019150855b8181101562000f4c57838651168352948401949184019160010162000f2c565b50909a9950505050505050505050565b60208082526017908201527f4d61726b65743a2057524f4e475f54494d455354414d50000000000000000000604082015260600190565b6020808252601d908201527f4d61726b65743a2057524f4e475f4f5554434f4d45535f414d4f554e54000000604082015260600190565b600060405190508181016001600160401b038111828210171562000fea57fe5b604052919050565b60005b838110156200100f57808201518382015260200162000ff5565b83811115620004d95750506000910152565b60805160601c60a05160601c60c05160e05160601c61340b6200107460003980610e3f528061140252806119995250806107d3528061159c52508061042b52508061044f528061072a525061340b6000f3fe608060405234801561001957600080610016612848565b50505b50600436106101cd5760003560e01c80636352211e11610102578063b80777ea116100a0578063d7959cf91161007a578063d7959cf914610397578063d8dfeb451461039f578063e985e9c5146103a7578063f452a8ac146103ba576101cd565b8063b80777ea14610369578063b88d4fde14610371578063c87b56dd14610384576101cd565b806395d89b41116100dc57806395d89b4114610328578063a0712d6814610330578063a22cb46514610343578063aad3ec9614610356576101cd565b80636352211e146102fa5780636c0360eb1461030d57806370a0823114610315576101cd565b806318160ddd1161016f5780632f745c59116101495780632f745c59146102ae57806342842e0e146102c15780634f64b2be146102d45780634f6ccce7146102e7576101cd565b806318160ddd14610271578063200d2ed21461028657806323b872dd1461029b576101cd565b806306fdde03116101ab57806306fdde0314610221578063081812fc14610236578063095ea7b3146102495780630a2a39c81461025e576101cd565b806301ffc9a7146101db57806302d05d3f1461020457806304f3bcec14610219575b6000806101d8612848565b50505b6101ee6101e9366004612e58565b6103db565b6040516101fb9190612f19565b60405180910390f35b61020c610429565b6040516101fb9190612ec8565b61020c61044d565b610229610471565b6040516101fb9190612f38565b61020c610244366004612ea7565b61052e565b61025c610257366004612cfa565b6105ad565b005b6101ee61026c366004612d2c565b610695565b610279610a6d565b6040516101fb919061317a565b61028e610a7e565b6040516101fb9190612f24565b61025c6102a9366004612ba1565b610a97565b6102796102bc366004612cfa565b610af7565b61025c6102cf366004612ba1565b610b22565b61020c6102e2366004612ea7565b610b3b565b6102796102f5366004612ea7565b610b84565b61020c610308366004612ea7565b610b9a565b610229610bc0565b610279610323366004612b43565b610c66565b610229610cd7565b61027961033e366004612ea7565b610d7d565b61025c610351366004612cbb565b61112a565b610279610364366004612cfa565b61125d565b61027961159a565b61025c61037f366004612be5565b6115be565b610229610392366004612ea7565b611625565b6102296118de565b61020c611997565b6101ee6103b5366004612b66565b6119bb565b6103cd6103c8366004612b43565b611a09565b6040516101fb929190612f00565b7fffffffff00000000000000000000000000000000000000000000000000000000811660009081526020819052604081206000906104176128b3565b906101000a900460ff1690505b919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060068061047e6128b3565b600181600116156101000203166002900480601f0160208091040260200160405190810160405281815291906020830182806104b86128b3565b600181600116156101000203166002900480156105245780601f106104f25761010080836104e46128b3565b040283529160200191610524565b820191906000526020600020905b816105096128b3565b8152906001019060200180831161050057829003601f168201915b5050505050905090565b600061053982611a7e565b61057d5760405162461bcd60e51b815260040180806020018281038252602c815260200180613335602c91396040019150506040518091039061057a612848565b50505b60008281526004602052604090206000906105966128b3565b906101000a90046001600160a01b03169050919050565b60006105b882610b9a565b9050806001600160a01b0316836001600160a01b031614156106145760405162461bcd60e51b81526004018080602001828103825260218152602001806133b96021913960400191505060405180910390610611612848565b50505b806001600160a01b0316610626611a8b565b6001600160a01b031614806106425750610642816103b5611a8b565b6106865760405162461bcd60e51b81526004018080602001828103825260388152602001806132676038913960400191505060405180910390610683612848565b50505b6106908383611a96565b505050565b60006001806000600c6106a66128b3565b906101000a900460ff1660028111156106bb57fe5b146106ea5760405162461bcd60e51b81526004016106d890613030565b604051809103906106e7612848565b50505b600a806106f56128b3565b90508351146107285760405162461bcd60e51b81526004016107169061309e565b60405180910390610725612848565b50505b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165a61075b61290e565b6001600160a01b0316146107935760405162461bcd60e51b815260040161078190613067565b60405180910390610790612848565b50505b600a8061079e6128b3565b90508351146107d15760405162461bcd60e51b81526004016107bf9061310c565b604051809103906107ce612848565b50505b7f00000000000000000000000000000000000000000000000000000000000000005a6107fb612954565b101561082b5760405162461bcd60e51b815260040161081990612f8b565b60405180910390610828612848565b50505b6000805b845181101561096057600085828151811061084657fe5b602002602001015160200151101580156108785750606485828151811061086957fe5b60200260200101516020015111155b6108a65760405162461bcd60e51b815260040161089490613143565b604051809103906108a3612848565b50505b8481815181106108b257fe5b6020026020010151600d60008784815181106108ca57fe5b6020026020010151516001600160a01b03166001600160a01b031681526020019081526020016000208151816001816109016128b3565b816001600160a01b0302191690836001600160a01b031602179061092361299a565b50505060208201518160010161093761299a565b505090505084818151811061094857fe5b6020026020010151602001519091019060010161082f565b50806064146109935760405162461bcd60e51b815260040161098190612fc2565b60405180910390610990612848565b50505b6002600c6001816109a26128b3565b8160ff021916908360028111156109b557fe5b0217906109c061299a565b5050505a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b6040811015610a1957600082820152602001610a02565b5050506001600160a01b03165a610a2e61290e565b6001600160a01b03167f85fe05c69e32ec3aed403e05e055faa5b8f0dec24c0f5ef97a497b8f4b8228b560405160405180910390a35060019392505050565b6000610a796002611b23565b905090565b6000600c610a8a6128b3565b906101000a900460ff1681565b610aa8610aa2611a8b565b82611b2e565b610aec5760405162461bcd60e51b81526004018080602001828103825260318152602001806133da6031913960400191505060405180910390610ae9612848565b50505b610690838383611bdb565b6001600160a01b03821660009081526001602052610b19826040832090611d3d565b90505b92915050565b61069083838360405160208101604052600081526115be565b600a8181610b476128b3565b8110610b5b57600080610b58612848565b50505b9060005260206000200160009150610b716128b3565b906101000a90046001600160a01b031681565b600080610b92600284611d49565b509392505050565b6000610b1c826040516060810160405260298082526132c9602083013960029190611d65565b6060600980610bcd6128b3565b600181600116156101000203166002900480601f016020809104026020016040519081016040528181529190602083018280610c076128b3565b600181600116156101000203166002900480156105245780601f10610c335761010080836104e46128b3565b820191906000526020600020905b81610c4a6128b3565b81529060010190602001808311610c4157509395945050505050565b60006001600160a01b038216610cb65760405162461bcd60e51b815260040180806020018281038252602a81526020018061329f602a913960400191505060405180910390610cb3612848565b50505b6001600160a01b03821660009081526001602052610b1c9060409020611b23565b6060600780610ce46128b3565b600181600116156101000203166002900480601f016020809104026020016040519081016040528181529190602083018280610d1e6128b3565b600181600116156101000203166002900480156105245780601f10610d4a5761010080836104e46128b3565b820191906000526020600020905b81610d616128b3565b81529060010190602001808311610d5857509395945050505050565b60006001806000600c610d8e6128b3565b906101000a900460ff166002811115610da357fe5b14610dd25760405162461bcd60e51b8152600401610dc090613030565b60405180910390610dcf612848565b50505b6000600e610dde6128b3565b906101000a900460ff1615610e175760405162461bcd60e51b8152600401610e05906130d5565b60405180910390610e14612848565b50505b6001600e8181610e256128b3565b8160ff02191690831515021790610e3a61299a565b5050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd5a610e7561290e565b5a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b6040811015610ecb57600082820152602001610eb4565b505050866040518463ffffffff1660e01b8152600401610eed93929190612edc565b60206040518083038160008780610f026129e8565b158015610f1757600080610f14612848565b50505b505a610f21612a34565b505050505050158015610f41573d6000803e3d6000610f3e612848565b50505b50505050604051601f3d908101601f19168201604052610f649190810190612e33565b5060005b600a80610f736128b3565b905081101561104e57600a8181610f886128b3565b8110610f9057fe5b90600052602060002001600090610fa56128b3565b906101000a90046001600160a01b03166001600160a01b03166340c10f195a610fcc61290e565b866040518363ffffffff1660e01b8152600401610fea929190612f00565b60006040518083038160008780610fff6129e8565b15801561101457600080611011612848565b50505b505a61101e612a34565b50505050505015801561103e573d6000803e3d600061103b612848565b50505b505060019092019150610f689050565b505a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b60408110156110a55760008282015260200161108e565b5050506001600160a01b03165a6110ba61290e565b6001600160a01b03167f9d228d69b5fdb8d273a2336f8fb8612d039631024ea9bf09c424a9503aa078f0856040516110f2919061317a565b60405180910390a38291506000600e60018161110c6128b3565b8160ff0219169083151502179061112161299a565b50505050919050565b611132611a8b565b6001600160a01b0316826001600160a01b031614156111a05760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016040518091039061119d612848565b50505b80600560006111ad611a8b565b6001600160a01b03166001600160a01b031681526020019081526020016000206001600160a01b0384166000908152602091909152604090206001816111f16128b3565b8160ff0219169083151502179061120661299a565b505050816001600160a01b031661121b611a8b565b6001600160a01b03167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051901515815260200160405180910390a35050565b60006002806000600c61126e6128b3565b906101000a900460ff16600281111561128357fe5b146112b25760405162461bcd60e51b81526004016112a090613030565b604051809103906112af612848565b50505b6000600e6112be6128b3565b906101000a900460ff16156112f75760405162461bcd60e51b81526004016112e5906130d5565b604051809103906112f4612848565b50505b6001600e81816113056128b3565b8160ff0219169083151502179061131a61299a565b50505060006001600160a01b0316600d60005a61133561290e565b6001600160a01b03166001600160a01b031681526020019081526020016000206000906113606128b3565b906101000a90046001600160a01b03166001600160a01b031614156113a95760405162461bcd60e51b815260040161139790612ff9565b604051809103906113a6612848565b50505b60006113f860646113f2600d60005a6113c061290e565b6001600160a01b03166001600160a01b031681526020019081526020016000206001016113eb6128b3565b8790611d72565b90611dda565b905080156114c7577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663a9059cbb86836040518363ffffffff1660e01b815260040161144e929190612f00565b602060405180830381600087806114636129e8565b15801561147857600080611475612848565b50505b505a611482612a34565b5050505050501580156114a2573d6000803e3d600061149f612848565b50505b50505050604051601f3d908101601f191682016040526114c59190810190612e33565b505b5a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b604081101561151d57600082820152602001611506565b5050506001600160a01b0316856001600160a01b03167ff7a40077ff7a04c7e61f6f26fb13774259ddf1b6bce9ecf26a8276cdd399268383604051611562919061317a565b60405180910390a391506000600e60018161157b6128b3565b8160ff0219169083151502179061159061299a565b5050505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6115cf6115c9611a8b565b83611b2e565b6116135760405162461bcd60e51b81526004018080602001828103825260318152602001806133da6031913960400191505060405180910390611610612848565b50505b61161f84848484611e49565b50505050565b606061163082611a7e565b6116745760405162461bcd60e51b815260040180806020018281038252602f81526020018061338a602f913960400191505060405180910390611671612848565b50505b60008281526008602052604081208061168b6128b3565b600181600116156101000203166002900480601f0160208091040260200160405190810160405281815291906020830182806116c56128b3565b600181600116156101000203166002900480156117315780601f106116ff5761010080836116f16128b3565b040283529160200191611731565b820191906000526020600020905b816117166128b3565b8152906001019060200180831161170d57829003601f168201915b505050505090506000611742610bc0565b9050805161175257509050610424565b6000825111156118195780826040516020018083805190602001908083835b602083106117905780518252601f199092019160209182019101611771565b6001836020036101000a038019825116818451161790925250505091909101905082805190602001908083835b602083106117dc5780518252601f1990920191602091820191016117bd565b6001836020036101000a03801982511681845116179092525050509190910193506040925050505160208183030381529060405292505050610424565b8061182385611ea9565b6040516020018083805190602001908083835b602083106118555780518252601f199092019160209182019101611836565b6001836020036101000a038019825116818451161790925250505091909101905082805190602001908083835b602083106118a15780518252601f199092019160209182019101611882565b6001836020036101000a03801982511681845116179092525050509190910193506040925050505160208183030381529060405292505050919050565b600b806118e96128b3565b600181600116156101000203166002900480601f0160208091040260200160405190810160405281815291906020830182806119236128b3565b6001816001161561010002031660029004801561198f5780601f1061195d57610100808361194f6128b3565b04028352916020019161198f565b820191906000526020600020905b816119746128b3565b8152906001019060200180831161196b57829003601f168201915b505050505081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001600160a01b03821660009081526005602052604081206001600160a01b0383166000908152602091909152604090206000906119f76128b3565b906101000a900460ff16905092915050565b600d6020528060005260406000209050600081611a246128b3565b906101000a90046001600160a01b03169080600101611a416128b3565b905082565b6000610b198383611fc2565b6000611a6884846001600160a01b038516612043565b90505b9392505050565b6000610b198383612141565b6000610b1c600283611a72565b60005a610a7961290e565b60008181526004602052829060409020600181611ab16128b3565b816001600160a01b0302191690836001600160a01b0316021790611ad361299a565b50505080826001600160a01b0316611aea83610b9a565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000610b1c82612162565b6000611b3982611a7e565b611b7d5760405162461bcd60e51b815260040180806020018281038252602c81526020018061323b602c913960400191505060405180910390611b7a612848565b50505b6000611b8883610b9a565b9050806001600160a01b0316846001600160a01b03161480611bc35750836001600160a01b0316611bb88461052e565b6001600160a01b0316145b80611bd35750611bd381856119bb565b949350505050565b826001600160a01b0316611bee82610b9a565b6001600160a01b031614611c3c5760405162461bcd60e51b81526004018080602001828103825260298152602001806133616029913960400191505060405180910390611c39612848565b50505b6001600160a01b038216611c8a5760405162461bcd60e51b81526004018080602001828103825260248152602001806132176024913960400191505060405180910390611c87612848565b50505b611c95838383610690565b611ca0600082611a96565b6001600160a01b03831660009081526001602052611cc4908290604090209061216e565b506001600160a01b03821660009081526001602052611ce99082906040902090611a46565b50611cf660028284611a52565b5080826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b6000610b19838361217a565b6000808080611d5886866121f3565b9097909650945050505050565b6000611a6884848461228f565b600082611d8157506000610b1c565b82820282848281611d8e57fe5b0414610b195760405162461bcd60e51b81526004018080602001828103825260218152602001806133146021913960400191505060405180910390611dd1612848565b50509392505050565b6000808211611e385760405162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015260640160405180910390611e35612848565b50505b818381611e4157fe5b049392505050565b611e54848484611bdb565b611e6084848484612377565b61161f5760405162461bcd60e51b81526004018080602001828103825260328152602001806131e56032913960400191505060405180910390611ea1612848565b505050505050565b606081611eeb5760405160408082019052600181527f300000000000000000000000000000000000000000000000000000000000000060208201529050610424565b8160005b8115611f0357600101600a82049150611eef565b60008167ffffffffffffffff81118015611f2557600080611f22612848565b50505b50604051818152601f19601f8301168101602001604052908015611f50576020820181803683370190505b50859350905060001982015b8315611fb9576000198101906030600a86060160f81b90839081518110611f7f57fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a84049350611f5c565b50949350505050565b6000611fce8383612141565b61203b57818380600181611fe06128b3565b018082611feb61299a565b50506000928352600019019160209150200161200561299a565b50839050806120126128b3565b60008481526001860160205290915060409020819061202f61299a565b50505060019050610b1c565b506000610b1c565b600082815260018401602052806040812061205c6128b3565b905080612101578460405180604001604052808681526020018581525090806001816120866128b3565b01808261209161299a565b50506000928352600019019160209150206002909102018151816120b361299a565b50506020820151816001016120c661299a565b5050505084600001806120d76128b3565b6000868152600188016020529091506040902081906120f461299a565b5050506001915050611a6b565b82856000198301816121116128b3565b811061211957fe5b9060005260206000209060020201600101819061213461299a565b5050506000915050611a6b565b600081815260018301602052604081206121596128b3565b15159392505050565b60008180611a6b6128b3565b6000610b198383612529565b60008183806121876128b3565b9050116121ce5760405162461bcd60e51b81526004018080602001828103825260228152602001806131c360229139604001915050604051809103906121cb612848565b50505b8282816121d96128b3565b81106121e157fe5b90600052602060002001610b196128b3565b6000808284806122016128b3565b9050116122485760405162461bcd60e51b81526004018080602001828103825260228152602001806132f26022913960400191505060405180910390612245612848565b50505b60008484816122556128b3565b811061225d57fe5b9060005260206000206002909102019050806122776128b3565b816001016122836128b3565b92509250509250929050565b60008281526001840160205280604081206122a86128b3565b9050828161233d5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156122f95780820151838201526020016122e1565b50505050905090810190601f1680156123265780820380516001836020036101000a031916815260200191505b50925050506040518091039061233a612848565b50505b508460001982018161234d6128b3565b811061235557fe5b906000526020600020906002020160010161236e6128b3565b95945050505050565b600061238b846001600160a01b031661264a565b61239757506001611bd3565b60006124c8630a85bd0160e11b6123ac611a8b565b88878760405160240180856001600160a01b03168152602001846001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156124135780820151838201526020016123fb565b50505050905090810190601f1680156124405780820380516001836020036101000a031916815260200191505b5095505050505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1690911790526040516060810160405260328082526131e560208301396001600160a01b0388169190612656565b9050600060208201825160208110156124e9576000806124e6612848565b50505b8101908080517fffffffff0000000000000000000000000000000000000000000000000000000016630a85bd0160e11b1495505050505050949350505050565b60008181526001830160205280604081206125426128b3565b9050801561264057600019810160006001868061255d6128b3565b905003905060008660000182816125726128b3565b811061257a57fe5b9060005260206000200161258c6128b3565b90508087848161259a6128b3565b81106125a257fe5b9060005260206000200181906125b661299a565b505050600081815260018881016020528401906040902081906125d761299a565b50505086600001806125e76128b3565b806125ee57fe5b6001900381819060005260206000200160009061260961299a565b50509061261461299a565b50506000868152600188016020526040902060009061263161299a565b50506001945050505050610b1c565b6000915050610b1c565b600080826121596129e8565b6060611a688484600085606061266b8561264a565b6126c45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401604051809103906126c1612848565b50505b600080866001600160a01b031685876040518082805190602001908083835b602083106127025780518252601f1990920191602091820191016126e3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875a61273b612a34565b505050505050925050503d8060008114612771576040513d603f01601f191681016040523d815291503d6000602084013e612776565b606091505b5091509150612786828286612791565b979650505050505050565b606083156127a0575081611a6b565b6000835111156127c157825180846020016127b9612848565b505050611a6b565b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561280b5780820151838201526020016127f3565b50505050905090810190601f1680156128385780820380516001836020036101000a031916815260200191505b509250505060405180910390611dd15b632a2a7adb598160e01b8152600481016020815285602082015260005b86811015612880578086015182820160400152602001612865565b506020828760640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b505050565b6303daa959598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051935060005b6040811015610690576000828201526020016128f7565b6373509064598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b805160008252935060206128f7565b63bdbf8c36598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b805160008252935060206128f7565b6322bd64c0598160e01b8152836004820152846024820152600081604483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b6000815260206128f7565b638435035b598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b805160008252935060206128f7565b6385979f76598160e01b8152612a65565b8080831115610b1c575090919050565b8080831015610b1c575090919050565b836004820152846024820152606060448201528760648201526084810160005b89811015612a9d578089015182820152602001612a85565b506060828a60a40184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b815160408301513d6000853e8c8c82606087013350600060045af15059612af28e3d612a55565b8d01612afe8187612a45565b5b82811015612b135760008152602001612aff565b50929d50505050505050565b80356001600160a01b038116811461042457600080612b3c612848565b5050919050565b600060208284031215612b5d578081612b5a612848565b50505b610b1982612b1f565b60008060408385031215612b81578081612b7e612848565b50505b612b8a83612b1f565b9150612b9860208401612b1f565b90509250929050565b600080600060608486031215612bbe578081612bbb612848565b50505b612bc784612b1f565b9250612bd560208501612b1f565b9150604084013590509250925092565b60008060008060808587031215612c03578081612c00612848565b50505b612c0c85612b1f565b93506020612c1b818701612b1f565b935060408601359250606086013567ffffffffffffffff80821115612c47578384612c44612848565b50505b818801915088601f830112612c63578384612c60612848565b50505b813581811115612c6f57fe5b612c81601f8201601f19168501613183565b91508082528984828501011115612c9f578485612c9c612848565b50505b8084840185840137810190920192909252939692955090935050565b60008060408385031215612cd6578182612cd3612848565b50505b612cdf83612b1f565b91506020830135612cef816131ab565b809150509250929050565b60008060408385031215612d15578182612d12612848565b50505b612d1e83612b1f565b946020939093013593505050565b60006020808385031215612d47578182612d44612848565b50505b823567ffffffffffffffff80821115612d67578384612d64612848565b50505b818501915085601f830112612d83578384612d80612848565b50505b813581811115612d8f57fe5b612d9c8485830201613183565b818152848101908486016040808502870188018b1015612dc3578889612dc0612848565b50505b8896505b84871015612e245780828c031215612de6578889612de3612848565b50505b80518181018181108882111715612df957fe5b8252612e0483612b1f565b815282890135898201528452600196909601959287019290810190612dc7565b50909998505050505050505050565b600060208284031215612e4d578081612e4a612848565b50505b8151610b19816131ab565b600060208284031215612e72578081612e6f612848565b50505b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610b19578182611dd1612848565b600060208284031215612ec1578081612ebe612848565b50505b5035919050565b6001600160a01b0391909116815260200190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b6020810160038310612f3257fe5b91905290565b6000602080835283518082850152825b81811015612f6457828187010151858201604001528201612f48565b81811115612f755783604083870101525b50601f01601f1916929092016040019392505050565b60208082526011908201527f4d61726b65743a20544f4f5f4541524c59000000000000000000000000000000604082015260600190565b6020808252601a908201527f4d61726b65743a2057524f4e475f53554d5f4f5554434f4d4553000000000000604082015260600190565b6020808252601c908201527f4d61726b65743a20544f4b454e5f444f45535f4e4f545f455849535400000000604082015260600190565b60208082526014908201527f4d61726b65743a2057524f4e475f535441545553000000000000000000000000604082015260600190565b60208082526011908201527f4d61726b65743a20464f5242494444454e000000000000000000000000000000604082015260600190565b6020808252601c908201527f4d61726b65743a2057524f4e475f5245534f4c56455f414d4f554e5400000000604082015260600190565b60208082526012908201527f436f6e7472616374206973206c6f636b65640000000000000000000000000000604082015260600190565b60208082526018908201527f4d61726b65743a204d495353494e475f4f5554434f4d45530000000000000000604082015260600190565b60208082526014908201527f4d61726b65743a2057524f4e475f524553554c54000000000000000000000000604082015260600190565b90815260200190565b6000604051905081810181811067ffffffffffffffff821117156131a357fe5b604052919050565b80151581146131bf57600080610690612848565b5056fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e456e756d657261626c654d61703a20696e646578206f7574206f6620626f756e6473536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314d657461646174613a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656460806040523480156200001c5760008062000019620004a5565b50505b506040516200211e3803806200211e833981810160405260608110156200004d576000806200004a620004a5565b50505b8101908080516040519392919084640100000000821115620000795760008062000076620004a5565b50505b9083019060208201858111156200009a5760008062000097620004a5565b50505b8251640100000000811182820188101715620000c057600080620000bd620004a5565b50505b825250602001908051906020019080838360005b83811015620000ee578082015183820152602001620000d4565b50505050905090810190601f1680156200011c5780820380516001836020036101000a031916815260200191505b5060405260200180519291906020018051925060409150505160408082019052600b81526a04d61726b657445524332360ac1b60208201528360038280516200016a92916020019062000512565b5060048180516200018092916020019062000512565b506012600560018162000192620005d4565b8160ff021916908360ff16021790620001aa62000636565b50505050506000620001c1620002ea60201b60201c565b905080600561010081620001d4620005d4565b816001600160a01b0302191690836001600160a01b0316021790620001f862000636565b5050506001600160a01b0381166000600080516020620020fe83398151915260405160405180910390a3506200022e82620002fc565b620002e1816001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186806200026862000685565b15801562000280576000806200027d620004a5565b50505b505a6200028c620006d2565b5050505050158015620002ae573d6000803e3d6000620002ab620004a5565b50505b505050506040513d6020811015620002d057600080620002cd620004a5565b50505b810190808051925050620004589050565b50505062000834565b60005a620002f7620007ca565b905090565b62000306620002ea565b6001600160a01b03166200031962000480565b6001600160a01b0316146200037f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401604051809103906200037c620004a5565b50505b6001600160a01b038116620003d15760405162461bcd60e51b8152600401808060200182810382526026815260200180620020d86026913960400191505060405180910390620003ce620004a5565b50505b6001600160a01b03811660016005620003e9620005d4565b906101000a90046001600160a01b03166001600160a01b0316600080516020620020fe83398151915260405160405180910390a3806005610100816200042e620005d4565b816001600160a01b0302191690836001600160a01b03160217906200045262000636565b50505050565b80600560018162000468620005d4565b8160ff021916908360ff160217906200045262000636565b60006001600562000490620005d4565b906101000a90046001600160a01b0316905090565b632a2a7adb598160e01b8152600481016020815285602082015260005b86811015620004df578086015182820160400152602001620004c2565b506020828760640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b505050565b82806200051e620005d4565b600181600116156101000203166002900490600052602060002090601f0160209004810192826200055e576000856200055662000636565b5050620005c2565b82601f106200057c57805160ff191683800117856200055662000636565b828001600101856200058d62000636565b50508215620005c2579182015b82811115620005c257825182620005b062000636565b5050916020019190600101906200059a565b50620005d092915062000811565b5090565b6303daa959598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051935060005b6040811015620006315760008282015260200162000618565b505050565b6322bd64c0598160e01b8152836004820152846024820152600081604483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b60008152602062000618565b638435035b598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051600082529350602062000618565b638540661f598160e01b815262000708565b8080831115620006f15750815b92915050565b8080831015620006f1575090919050565b836004820152846024820152606060448201528660648201526084810160005b888110156200074257808801518282015260200162000728565b506060828960a40184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b815160408301513d6000853e8b8b82606087013350600060045af15059620007998d3d620006f7565b8c01620007a78187620006e4565b5b82811015620007be5760008152602001620007a8565b50929c50505050505050565b6373509064598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051600082529350602062000618565b80821115620005d057600080826200082862000636565b50505060010162000811565b61189480620008446000396000f3fe6080604052348015610019576000806100166113d2565b50505b50600436106101095760003560e01c806370a08231116100a0578063a457c2d71161006f578063a457c2d71461034b578063a9059cbb14610380578063dd62ed3e146103b5578063f2fde38b146103ec57610109565b806370a08231146102e8578063715018a6146103175780638da5cb5b1461031f57806395d89b411461034357610109565b8063313ce567116100dc578063313ce56714610238578063395093511461025657806340c10f191461028b57806342966c68146102c257610109565b806306fdde0314610117578063095ea7b31461019657806318160ddd146101df57806323b872dd146101f9575b6000806101146113d2565b50505b61011f61041b565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561015b578082015183820152602001610143565b50505050905090810190601f1680156101885780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cb600480360360408110156101b5576000806101b26113d2565b50505b506001600160a01b0381351690602001356104d8565b604051901515815260200160405180910390f35b6101e76104f6565b60405190815260200160405180910390f35b6101cb60048036036060811015610218576000806102156113d2565b50505b506001600160a01b03813581169160208101359091169060400135610507565b61024061059b565b60405160ff909116815260200160405180910390f35b6101cb60048036036040811015610275576000806102726113d2565b50505b506001600160a01b0381351690602001356105b7565b6102c0600480360360408110156102aa576000806102a76113d2565b50505b506001600160a01b03813516906020013561061c565b005b6102c0600480360360208110156102e1576000806102de6113d2565b50505b50356106a6565b6101e760048036036020811015610307576000806103046113d2565b50505b50356001600160a01b031661094f565b6102c061096f565b610327610a75565b6040516001600160a01b03909116815260200160405180910390f35b61011f610a98565b6101cb6004803603604081101561036a576000806103676113d2565b50505b506001600160a01b038135169060200135610b3e565b6101cb6004803603604081101561039f5760008061039c6113d2565b50505b506001600160a01b038135169060200135610bb4565b6101e7600480360360408110156103d4576000806103d16113d2565b50505b506001600160a01b0381358116916020013516610bc8565b6102c06004803603602081101561040b576000806104086113d2565b50505b50356001600160a01b0316610c08565b606060038061042861143d565b600181600116156101000203166002900480601f01602080910402602001604051908101604052818152919060208301828061046261143d565b600181600116156101000203166002900480156104ce5780601f1061049c57610100808361048e61143d565b0402835291602001916104ce565b820191906000526020600020905b816104b361143d565b815290600101906020018083116104aa57829003601f168201915b5050505050905090565b60006104ec6104e5610d5e565b8484610d69565b5060015b92915050565b6000600261050261143d565b905090565b6000610514848484610e91565b61059184610520610d5e565b61058c856040516060810160405260288082526117dd60208301396001600160a01b038a166000908152600160205260409020600061055d610d5e565b6001600160a01b03166001600160a01b0316815260200190815260200160002061058561143d565b919061102f565b610d69565b5060019392505050565b60008060056105a861143d565b906101000a900460ff16905090565b60006104ec6105c4610d5e565b8461058c85600160006105d5610d5e565b6001600160a01b03166001600160a01b031681526020019081526020016000206001600160a01b03891660009081526020919091526040902061061661143d565b906110cf565b610624610d5e565b6001600160a01b0316610635610a75565b6001600160a01b0316146106985760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401604051809103906106956113d2565b50505b6106a28282611137565b5050565b601560056106b261143d565b906101000a900460ff16156107165760405162461bcd60e51b815260206004820152601260248201527f436f6e7472616374206973206c6f636b656400000000000000000000000000006044820152606401604051809103906107136113d2565b50505b60016005600160a81b8161072861143d565b8160ff0219169083151502179061073d611498565b5050506107525a61074c6114e6565b82611250565b5a63996d79a5598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051925060005b60408110156107a857600082820152602001610791565b5050506001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186806107de61152c565b1580156107f3576000806107f06113d2565b50505b505a6107fd611578565b505050505015801561081c573d6000803e3d60006108196113d2565b50505b505050506040513d602081101561083b576000806108386113d2565b50505b8101908080516001600160a01b0316925063aad3ec969150505a61085d6114e6565b836040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526024820152604401602060405180830381600087806108b761152c565b1580156108cc576000806108c96113d2565b50505b505a6108d6611663565b5050505050501580156108f6573d6000803e3d60006108f36113d2565b50505b505050506040513d6020811015610915576000806109126113d2565b50505b810190808051506000925060059150600160a81b90508161093461143d565b8160ff02191690831515021790610949611498565b50505050565b6001600160a01b03811660009081526020819052604081206104f061143d565b610977610d5e565b6001600160a01b0316610988610a75565b6001600160a01b0316146109eb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401604051809103906109e86113d2565b50505b6000600160056109f961143d565b906101000a90046001600160a01b03166001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600561010081610a4e61143d565b816001600160a01b0302191690836001600160a01b0316021790610a70611498565b505050565b600060016005610a8361143d565b906101000a90046001600160a01b0316905090565b6060600480610aa561143d565b600181600116156101000203166002900480601f016020809104026020016040519081016040528181529190602083018280610adf61143d565b600181600116156101000203166002900480156104ce5780601f10610b0b57610100808361048e61143d565b820191906000526020600020905b81610b2261143d565b81529060010190602001808311610b1957509395945050505050565b60006104ec610b4b610d5e565b8461058c8560405160608101604052602580825261186f602083013960016000610b73610d5e565b6001600160a01b03166001600160a01b031681526020019081526020016000206001600160a01b038a1660009081526020919091526040902061058561143d565b60006104ec610bc1610d5e565b8484610e91565b6001600160a01b03821660009081526001602052604081206001600160a01b038316600090815260209190915260409020610c0161143d565b9392505050565b610c10610d5e565b6001600160a01b0316610c21610a75565b6001600160a01b031614610c845760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640160405180910390610c816113d2565b50505b6001600160a01b038116610cd25760405162461bcd60e51b815260040180806020018281038252602681526020018061176f6026913960400191505060405180910390610ccf6113d2565b50505b6001600160a01b03811660016005610ce861143d565b906101000a90046001600160a01b03166001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600561010081610d3c61143d565b816001600160a01b0302191690836001600160a01b0316021790610949611498565b60005a6105026114e6565b6001600160a01b038316610db75760405162461bcd60e51b815260040180806020018281038252602481526020018061184b6024913960400191505060405180910390610db46113d2565b50505b6001600160a01b038216610e055760405162461bcd60e51b81526004018080602001828103825260228152602001806117956022913960400191505060405180910390610e026113d2565b50505b6001600160a01b038316600090815260016020528190604090206001600160a01b0384166000908152602091909152604090208190610e42611498565b505050816001600160a01b0316836001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405190815260200160405180910390a3505050565b6001600160a01b038316610edf5760405162461bcd60e51b81526004018080602001828103825260258152602001806118266025913960400191505060405180910390610edc6113d2565b50505b6001600160a01b038216610f2d5760405162461bcd60e51b815260040180806020018281038252602381526020018061172a6023913960400191505060405180910390610f2a6113d2565b50505b610f38838383610a70565b610f73816040516060810160405260268082526117b760208301396001600160a01b038616600090815260208190526040902061058561143d565b6001600160a01b03841660009081526020819052604090208190610f95611498565b5050506001600160a01b03821660009081526020819052610fbe9082906040902061061661143d565b6001600160a01b03831660009081526020819052604090208190610fe0611498565b505050816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a3505050565b600081848411156110c75760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561108357808201518382015260200161106b565b50505050905090810190601f1680156110b05780820380516001836020036101000a031916815260200191505b5092505050604051809103906110c46113d2565b50505b505050900390565b600082820183811015610c015760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016040518091039061112e6113d2565b50509392505050565b6001600160a01b03821661119a5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401604051809103906111976113d2565b50505b6111a660008383610a70565b6111b481600261061661143d565b8060026111bf611498565b5050506001600160a01b038216600090815260208190526111e89082906040902061061661143d565b6001600160a01b0383166000908152602081905260409020819061120a611498565b5050506001600160a01b03821660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a35050565b6001600160a01b03821661129e5760405162461bcd60e51b8152600401808060200182810382526021815260200180611805602191396040019150506040518091039061129b6113d2565b50505b6112aa82600083610a70565b6112e58160405160608101604052602280825261174d60208301396001600160a01b038516600090815260208190526040902061058561143d565b6001600160a01b03831660009081526020819052604090208190611307611498565b50505061131e81600261131861143d565b90611370565b806002611329611498565b5060009150506001600160a01b0383167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a35050565b6000828211156113cc5760405162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f7700006044820152606401604051809103906110c76113d2565b50900390565b632a2a7adb598160e01b8152600481016020815285602082015260005b8681101561140a5780860151828201604001526020016113ef565b506020828760640184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b505050565b6303daa959598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b8051935060005b6040811015610a7057600082820152602001611481565b6322bd64c0598160e01b8152836004820152846024820152600081604483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b600081526020611481565b6373509064598160e01b8152602081600483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b80516000825293506020611481565b638435035b598160e01b8152836004820152602081602483336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b80516000825293506020611481565b638540661f598160e01b81526115a9565b80808311156104f0575090919050565b80808310156104f0575090919050565b836004820152846024820152606060448201528660648201526084810160005b888110156115e15780880151828201526020016115c9565b506060828960a40184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b815160408301513d6000853e8b8b82606087013350600060045af150596116368d3d611599565b8c016116428187611589565b5b828110156116575760008152602001611643565b50929c50505050505050565b6385979f76598160e01b8152836004820152846024820152606060448201528760648201526084810160005b898110156116a757808901518282015260200161168f565b506060828a60a40184336000905af158600e01573d6000803e3d6000fd5b3d6001141558600a015760016000f35b815160408301513d6000853e8c8c82606087013350600060045af150596116fc8e3d611599565b8d016117088187611589565b5b8281101561171d5760008152602001611709565b50929d5050505050505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573738be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e04552433732314d657461646174613a2055524920736574206f66206e6f6e6578697374656e7420746f6b656e","r":"0x6fd8a1bcb4d7e28cbf03e26cdab8ede4e45b111b9bf0b329950cd1de1d610e18","s":"0x0d1eb144a68014d08c6f1d59b55835017872e16e85e31d200695d7e16ddfd2ac","v":876,"creates":"0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512","chainId":420}, receipt={"to":null,"from":"0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266","contractAddress":"0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512","transactionIndex":0,"gasUsed":{"type":"BigNumber","hex":"0x7d7717"},"logsBloom":"0x00000000000000000000000000000000000000000000000000040000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000008000000000000000010000000000000000000000400000000000000000000000100008000000000000000000000000010000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000200000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","blockHash":"0x8cdd1814a3baaa5a1f2a7d1cca87b75033cf7de223097d9f7b62f6e38faa8159","transactionHash":"0x2d50726e0606eb0a0e50436979b773d2040975467c9a0c12b87c94f4406c8218","logs":[{"transactionIndex":0,"blockNumber":2,"transactionHash":"0x2d50726e0606eb0a0e50436979b773d2040975467c9a0c12b87c94f4406c8218","address":"0x4200000000000000000000000000000000000006","topics":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","0x000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb92266","0x0000000000000000000000004200000000000000000000000000000000000005"],"data":"0x0000000000000000000000000000000000000000000000000000000000000000","logIndex":0,"blockHash":"0x8cdd1814a3baaa5a1f2a7d1cca87b75033cf7de223097d9f7b62f6e38faa8159"}],"blockNumber":2,"confirmations":1,"cumulativeGasUsed":{"type":"BigNumber","hex":"0x7d7717"},"status":0,"byzantium":true}, code=CALL_EXCEPTION, version=providers/5.1.2)
      at Logger.makeError (node_modules/@ethersproject/logger/src.ts/index.ts:205:28)
      at Logger.throwError (node_modules/@ethersproject/logger/src.ts/index.ts:217:20)
      at Web3Provider.<anonymous> (node_modules/@ethersproject/providers/src.ts/base-provider.ts:1084:24)
      at step (node_modules/@ethersproject/providers/lib/base-provider.js:48:23)
      at Object.next (node_modules/@ethersproject/providers/lib/base-provider.js:29:53)
      at fulfilled (node_modules/@ethersproject/providers/lib/base-provider.js:20:58)
      at processTicksAndRejections (internal/process/task_queues.js:93:5)
      at DeploymentsManager.executeDeployScripts (node_modules/hardhat-deploy/src/DeploymentsManager.ts:1009:19)
      at processTicksAndRejections (internal/process/task_queues.js:93:5)
      at DeploymentsManager.runDeploy (node_modules/hardhat-deploy/src/DeploymentsManager.ts:844:5)
      at Object.fixture (node_modules/hardhat-deploy/src/DeploymentsManager.ts:285:9)
      at DeploymentsManager.setup (node_modules/hardhat-deploy/src/DeploymentsManager.ts:1170:9)
      at Object.fixture (node_modules/hardhat-deploy/src/DeploymentsManager.ts:255:9)



info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

Expected behavior There should be no call exception error

UPDATE

This still fails! Added error logs

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 26 (26 by maintainers)

Most upvoted comments

@platocrat - I have a strong feeling this is not related to our tooling, but rather trying to do an invalid call. I would check that

  1. The contract deployment succeeded (there is code at the address you are calling)
  2. The interface you are using to call the contract is correct

@snario Thoughts on this issue? I’ve spent quite some time trying to debug this with no luck

commenting this line that creates ERC20 ( https://github.com/PrediqtCom/prediqt-core/blob/main/src/ERC721/MarketERC721.sol#L49 )

without that line commented error goes to market factory unknown

with that line commented: unknown (1)

so somehow, that line is breaking the deploy for step 1 (market factory) errors on 002 and 003 are probably unrealted to 001 because those are from uniswap v3. if you notice in the beginning of 002 and 003_ there are some commented bytecodes / abis that are compiled with OVM for uniswap v3