UNPKG

ufomarketplace-sdk-new

Version:

SDK to interact with set ufo marketplace contracts

486 lines (484 loc) 224 kB
/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; import type { Provider, TransactionRequest } from "@ethersproject/providers"; import type { SuperGalaticFactoryTest, SuperGalaticFactoryTestInterface, } from "../../SupergalaticFactory.t.sol/SuperGalaticFactoryTest"; const _abi = [ { type: "function", name: "IS_TEST", inputs: [], outputs: [ { name: "", type: "bool", internalType: "bool", }, ], stateMutability: "pure", }, { type: "function", name: "beamMainnetFork", inputs: [], outputs: [ { name: "", type: "uint256", internalType: "uint256", }, ], stateMutability: "view", }, { type: "function", name: "failed", inputs: [], outputs: [ { name: "", type: "bool", internalType: "bool", }, ], stateMutability: "nonpayable", }, { type: "function", name: "setUp", inputs: [], outputs: [], stateMutability: "nonpayable", }, { type: "function", name: "test_MintNftByNative", inputs: [], outputs: [], stateMutability: "nonpayable", }, { type: "function", name: "test_mintSuperGalatic", inputs: [], outputs: [], stateMutability: "nonpayable", }, { type: "function", name: "test_purchaseLootbox", inputs: [], outputs: [], stateMutability: "nonpayable", }, { type: "function", name: "test_updateBodyPart", inputs: [], outputs: [], stateMutability: "nonpayable", }, { type: "event", name: "Log", inputs: [ { name: "err", type: "string", indexed: false, internalType: "string", }, ], anonymous: false, }, { type: "event", name: "LogAddress", inputs: [ { name: "value", type: "address", indexed: false, internalType: "address", }, ], anonymous: false, }, { type: "event", name: "LogArray", inputs: [ { name: "value", type: "address[]", indexed: false, internalType: "address[]", }, ], anonymous: false, }, { type: "event", name: "LogArray", inputs: [ { name: "value", type: "bool[]", indexed: false, internalType: "bool[]", }, ], anonymous: false, }, { type: "event", name: "LogArray", inputs: [ { name: "value", type: "bytes32[]", indexed: false, internalType: "bytes32[]", }, ], anonymous: false, }, { type: "event", name: "LogArray", inputs: [ { name: "value", type: "int256[]", indexed: false, internalType: "int256[]", }, ], anonymous: false, }, { type: "event", name: "LogArray", inputs: [ { name: "value", type: "string[]", indexed: false, internalType: "string[]", }, ], anonymous: false, }, { type: "event", name: "LogArray", inputs: [ { name: "value", type: "uint256[]", indexed: false, internalType: "uint256[]", }, ], anonymous: false, }, { type: "event", name: "LogBytes", inputs: [ { name: "value", type: "bytes", indexed: false, internalType: "bytes", }, ], anonymous: false, }, { type: "event", name: "LogBytes32", inputs: [ { name: "value", type: "bytes32", indexed: false, internalType: "bytes32", }, ], anonymous: false, }, { type: "event", name: "LogInt256", inputs: [ { name: "value", type: "int256", indexed: false, internalType: "int256", }, ], anonymous: false, }, { type: "event", name: "LogNamedAddress", inputs: [ { name: "key", type: "string", indexed: false, internalType: "string", }, { name: "value", type: "address", indexed: false, internalType: "address", }, ], anonymous: false, }, { type: "event", name: "LogNamedArray", inputs: [ { name: "key", type: "string", indexed: false, internalType: "string", }, { name: "value", type: "address[]", indexed: false, internalType: "address[]", }, ], anonymous: false, }, { type: "event", name: "LogNamedArray", inputs: [ { name: "key", type: "string", indexed: false, internalType: "string", }, { name: "value", type: "bool[]", indexed: false, internalType: "bool[]", }, ], anonymous: false, }, { type: "event", name: "LogNamedArray", inputs: [ { name: "key", type: "string", indexed: false, internalType: "string", }, { name: "value", type: "bytes32[]", indexed: false, internalType: "bytes32[]", }, ], anonymous: false, }, { type: "event", name: "LogNamedArray", inputs: [ { name: "key", type: "string", indexed: false, internalType: "string", }, { name: "value", type: "int256[]", indexed: false, internalType: "int256[]", }, ], anonymous: false, }, { type: "event", name: "LogNamedArray", inputs: [ { name: "key", type: "string", indexed: false, internalType: "string", }, { name: "value", type: "string[]", indexed: false, internalType: "string[]", }, ], anonymous: false, }, { type: "event", name: "LogNamedArray", inputs: [ { name: "key", type: "string", indexed: false, internalType: "string", }, { name: "value", type: "uint256[]", indexed: false, internalType: "uint256[]", }, ], anonymous: false, }, { type: "event", name: "LogNamedBytes", inputs: [ { name: "key", type: "string", indexed: false, internalType: "string", }, { name: "value", type: "bytes", indexed: false, internalType: "bytes", }, ], anonymous: false, }, { type: "event", name: "LogNamedBytes32", inputs: [ { name: "key", type: "string", indexed: false, internalType: "string", }, { name: "value", type: "bytes32", indexed: false, internalType: "bytes32", }, ], anonymous: false, }, { type: "event", name: "LogNamedInt256", inputs: [ { name: "key", type: "string", indexed: false, internalType: "string", }, { name: "value", type: "int256", indexed: false, internalType: "int256", }, ], anonymous: false, }, { type: "event", name: "LogNamedString", inputs: [ { name: "key", type: "string", indexed: false, internalType: "string", }, { name: "value", type: "string", indexed: false, internalType: "string", }, ], anonymous: false, }, { type: "event", name: "LogNamedUint256", inputs: [ { name: "key", type: "string", indexed: false, internalType: "string", }, { name: "value", type: "uint256", indexed: false, internalType: "uint256", }, ], anonymous: false, }, { type: "event", name: "LogString", inputs: [ { name: "value", type: "string", indexed: false, internalType: "string", }, ], anonymous: false, }, { type: "event", name: "LogUint256", inputs: [ { name: "value", type: "uint256", indexed: false, internalType: "uint256", }, ], anonymous: false, }, ] as const; const _bytecode = "0x6080604052601280546001600160a01b03191673d51bfa777609213a653a2cd067c9a0132a2d316a17905534801561003657600080fd5b506201a08180620000486000396000f3fe60806040523480156200001157600080fd5b5060043610620000935760003560e01c8063363bd1321162000062578063363bd13214620000d55780637b5262cf14620000df578063ba414fa614620000e9578063fa7626d4146200010457600080fd5b80630a9254e4146200009857806320f6de3614620000a45780632648002c14620000ae578063283571a414620000b8575b600080fd5b620000a26200010c565b005b620000a262000118565b620000a262000870565b620000c260015481565b6040519081526020015b60405180910390f35b620000a262000c2c565b620000a26200121f565b620000f3620015f8565b6040519015158152602001620000cc565b6001620000f3565b6200011662001719565b565b6010546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206201a035833981519152906306447d5690602401600060405180830381600087803b1580156200016d57600080fd5b505af115801562000182573d6000803e3d6000fd5b5050600354604051632cc8265560e01b8152600160048201526001600160a01b039091169250632cc826559150602401600060405180830381600087803b158015620001cd57600080fd5b505af1158015620001e2573d6000803e3d6000fd5b50506003546010546040516301416cad60e21b81526001600160a01b03918216600482015291169250630505b2b49150602401600060405180830381600087803b1580156200023057600080fd5b505af115801562000245573d6000803e3d6000fd5b505060035460405163334672c160e01b8152670de0b6b3a764000060048201526001600160a01b03909116925063334672c19150602401600060405180830381600087803b1580156200029757600080fd5b505af1158015620002ac573d6000803e3d6000fd5b505050506000805160206201a05583398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620002fe57600080fd5b505af115801562000313573d6000803e3d6000fd5b50506003546040805163dbd2cb6960e01b81529051600a94506000935084926001600160a01b03169163dbd2cb69916004808301926020929190829003018186803b1580156200036257600080fd5b505afa15801562000377573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200039d919062002baa565b620003a9919062002e3c565b6013546040516303223eab60e11b81526001600160a01b0390911660048201529091506000805160206201a035833981519152906306447d5690602401600060405180830381600087803b1580156200040157600080fd5b505af115801562000416573d6000803e3d6000fd5b506000925060019150620004279050565b60405190808252806020026020018201604052801562000451578160200160208202803683370190505b5090506000816000815181106200046c576200046c62002e99565b60209081029190910101526040805160018082528183019092526000918160200160208202803683370190505090508381600081518110620004b257620004b262002e99565b6020908102919091010152604080516001808252818301909252600091816020016020820280368337019050506040516301f7b4f360e41b8152603260048201529091506000805160206201a03583398151915290631f7b4f3090602401600060405180830381600087803b1580156200052b57600080fd5b505af115801562000540573d6000803e3d6000fd5b50505050600360009054906101000a90046001600160a01b03166001600160a01b0316638d9c39716040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200059557600080fd5b505af1158015620005aa573d6000803e3d6000fd5b50506040516301f7b4f360e41b8152606460048201526000805160206201a0358339815191529250631f7b4f309150602401600060405180830381600087803b158015620005f757600080fd5b505af11580156200060c573d6000803e3d6000fd5b50505050620006446040518060400160405280601081526020016f746f74616c206265616d20707269636560801b815250856200266f565b60035460405163816629c760e01b81526001600160a01b039091169063816629c79086906200067c9087908790879060040162002d0d565b6000604051808303818588803b1580156200069657600080fd5b505af1158015620006ab573d6000803e3d6000fd5b50505050506000805160206201a05583398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620006fe57600080fd5b505af115801562000713573d6000803e3d6000fd5b50506040805180820190915260098152681b999d0818dbdd5b9d60ba1b602082015260035486516200086994509192506001600160a01b031690630bb4d82a90879060009062000767576200076762002e99565b60200260200101516040518263ffffffff1660e01b81526004016200078e91815260200190565b60206040518083038186803b158015620007a757600080fd5b505afa158015620007bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007e2919062002a8c565b6013546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b60206040518083038186803b1580156200082857600080fd5b505afa1580156200083d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000863919062002baa565b6200266f565b5050505050565b6200087a620026bc565b60105460405163ca669fa760e01b81526001600160a01b0390911660048201526000805160206201a0358339815191529063ca669fa790602401600060405180830381600087803b158015620008cf57600080fd5b505af1158015620008e4573d6000803e3d6000fd5b5050600354604051632cc8265560e01b8152600160048201526001600160a01b039091169250632cc826559150602401600060405180830381600087803b1580156200092f57600080fd5b505af115801562000944573d6000803e3d6000fd5b506000925060019150620009559050565b6040519080825280602002602001820160405280156200097f578160200160208202803683370190505b5090507f1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef60001b81600081518110620009bc57620009bc62002e99565b60209081029190910101526013546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206201a035833981519152906306447d5690602401600060405180830381600087803b15801562000a1c57600080fd5b505af115801562000a31573d6000803e3d6000fd5b505060055460035460405163095ea7b360e01b81526001600160a01b039182166004820152683635c9adc5dea0000060248201529116925063095ea7b39150604401602060405180830381600087803b15801562000a8e57600080fd5b505af115801562000aa3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ac9919062002b86565b506040805160018082528183019092526000916020808301908036833701905050905060008160008151811062000b045762000b0462002e99565b602090810291909101015260408051600180825281830190925260009181602001602082028036833701905050905060018160008151811062000b4b5762000b4b62002e99565b602090810291909101015260035460405163d1b5c64360e01b81526001600160a01b039091169063d1b5c6439062000b8c9085908590889060040162002d0d565b600060405180830381600087803b15801562000ba757600080fd5b505af115801562000bbc573d6000803e3d6000fd5b505050506000805160206201a05583398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562000c0e57600080fd5b505af115801562000c23573d6000803e3d6000fd5b50505050505050565b62000c36620026bc565b60105460405163ca669fa760e01b81526001600160a01b0390911660048201526000805160206201a0358339815191529063ca669fa790602401600060405180830381600087803b15801562000c8b57600080fd5b505af115801562000ca0573d6000803e3d6000fd5b5050600354604051632cc8265560e01b8152600160048201526001600160a01b039091169250632cc826559150602401600060405180830381600087803b15801562000ceb57600080fd5b505af115801562000d00573d6000803e3d6000fd5b50600092506001915062000d119050565b60405190808252806020026020018201604052801562000d3b578160200160208202803683370190505b5090507f1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef60001b8160008151811062000d785762000d7862002e99565b60200260200101818152505062000dc260405180604001604052806005815260200164757365723160d81b815250601360009054906101000a90046001600160a01b0316620028de565b604080518082018252600381526207561760ec1b602082015260065460135492516370a0823160e01b81526001600160a01b03938416600482015262000e1593909116906370a08231906024016200080f565b6013546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206201a035833981519152906306447d5690602401600060405180830381600087803b15801562000e6a57600080fd5b505af115801562000e7f573d6000803e3d6000fd5b505060055460035460405163095ea7b360e01b81526001600160a01b039182166004820152683635c9adc5dea0000060248201529116925063095ea7b39150604401602060405180830381600087803b15801562000edc57600080fd5b505af115801562000ef1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f17919062002b86565b5060065460035460405163095ea7b360e01b81526001600160a01b0391821660048201526b204fce5e3e25026110000000602482015291169063095ea7b390604401602060405180830381600087803b15801562000f7457600080fd5b505af115801562000f89573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000faf919062002b86565b506040805160018082528183019092526000916020808301908036833701905050905060008160008151811062000fea5762000fea62002e99565b602090810291909101015260408051600180825281830190925260009181602001602082028036833701905050905060018160008151811062001031576200103162002e99565b602090810291909101015260035460405163d1b5c64360e01b81526001600160a01b039091169063d1b5c64390620010729085908590889060040162002d0d565b600060405180830381600087803b1580156200108d57600080fd5b505af1158015620010a2573d6000803e3d6000fd5b505060408051808201825260148152736e667420636f6e7472616374206164647265737360601b602082015260035491516305da6c1560e11b8152600060048201526200115c94509092506001600160a01b0390911690630bb4d82a9060240160206040518083038186803b1580156200111b57600080fd5b505afa15801562001130573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001156919062002a8c565b620028de565b6003546040516305da6c1560e11b8152600060048201526001600160a01b0390911690631551fbc4908290630bb4d82a9060240160206040518083038186803b158015620011a957600080fd5b505afa158015620011be573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011e4919062002a8c565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152600160248201819052604482015260640162000b8c565b6013546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206201a035833981519152906306447d5690602401600060405180830381600087803b1580156200127457600080fd5b505af115801562001289573d6000803e3d6000fd5b5050604080518082018252600c81526b757364742062616c616e636560a01b6020820152600d5460135492516370a0823160e01b81526001600160a01b039384166004820152620012ec955091935091909116906370a08231906024016200080f565b600d5460035460405163095ea7b360e01b81526001600160a01b03918216600482015264e8d4a51000602482015291169063095ea7b390604401602060405180830381600087803b1580156200134157600080fd5b505af115801562001356573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200137c919062002b86565b50600354604051630354606760e41b8152601e6004820152600260248201526001600160a01b0390911690633546067090604401600060405180830381600087803b158015620013cb57600080fd5b505af1158015620013e0573d6000803e3d6000fd5b505060035460148054604051638d94e5e960e01b815260048101929092526001600160a01b039081166024830152600260448301529091169250638d94e5e99150606401600060405180830381600087803b1580156200143f57600080fd5b505af115801562001454573d6000803e3d6000fd5b5050604080518082018252600c81526b757364742062616c616e636560a01b6020820152600d5460135492516370a0823160e01b81526001600160a01b039384166004820152620014b7955091935091909116906370a08231906024016200080f565b60408051808201825260118152700e0eae4c6d0c2e6cac840d8dedee8c4def607b1b6020808301919091526003548351633b5a50c560e21b8152935162001526946001600160a01b039092169263ed6943149260048082019391829003018186803b1580156200082857600080fd5b604080518082018252600b81526a7761706f6e20707269636560a81b602080830191909152600354835163b046686360e01b815293516200158f946001600160a01b039092169263b04668639260048082019391829003018186803b1580156200082857600080fd5b6000805160206201a05583398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620015dd57600080fd5b505af1158015620015f2573d6000803e3d6000fd5b50505050565b6000805460ff16156200160b5750600190565b6000805160206201a0358339815191523b156200171357604080516000805160206201a035833981519152602082018190526519985a5b195960d21b8284015282518083038401815260608301909352600092909162001690917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc49160800162002c2f565b60408051601f1981840301815290829052620016ac9162002c62565b6000604051808303816000865af19150503d8060008114620016eb576040519150601f19603f3d011682016040523d82523d6000602084013e620016f0565b606091505b509150506000818060200190518101906200170c919062002b86565b9392505050565b50600090565b604051630637469360e31b815260206004820152601c60248201527f68747470733a2f2f6275696c642e6f6e6265616d2e636f6d2f7270630000000060448201526000805160206201a035833981519152906331ba349890606401602060405180830381600087803b1580156200178f57600080fd5b505af1158015620017a4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017ca919062002baa565b6001819055604051639ebf682760e01b815260048101919091526000805160206201a03583398151915290639ebf682790602401600060405180830381600087803b1580156200181957600080fd5b505af11580156200182e573d6000803e3d6000fd5b50505050604051620018409062002951565b604051809103906000f0801580156200185d573d6000803e3d6000fd5b5060008054610100600160a81b0319166101006001600160a01b039384168102919091179182905560405163792e11f560e01b8152600a600482015291049091169063792e11f590602401600060405180830381600087803b158015620018c357600080fd5b505af1158015620018d8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001902919081019062002aac565b80516200191891600e916020909101906200295f565b50600e60008154811062001930576200193062002e99565b600091825260209091200154600f80546001600160a01b0319166001600160a01b03909216919091179055600e8054600190811062001973576200197362002e99565b600091825260209091200154601080546001600160a01b0319166001600160a01b03909216919091179055600e80546002908110620019b657620019b662002e99565b600091825260209091200154601180546001600160a01b0319166001600160a01b03909216919091179055600e80546003908110620019f957620019f962002e99565b600091825260209091200154601380546001600160a01b0319166001600160a01b03909216919091179055600e8054600490811062001a3c5762001a3c62002e99565b600091825260209091200154601480546001600160a01b0319166001600160a01b03909216919091179055600e8054600590811062001a7f5762001a7f62002e99565b600091825260209091200154601580546001600160a01b0319166001600160a01b0392831617905560135460405163c88a5e6d60e01b81529116600482015269d3c21bcecceda100000060248201526000805160206201a0358339815191529063c88a5e6d90604401600060405180830381600087803b15801562001b0357600080fd5b505af115801562001b18573d6000803e3d6000fd5b505060145460405163c88a5e6d60e01b81526001600160a01b03909116600482015269d3c21bcecceda100000060248201526000805160206201a035833981519152925063c88a5e6d9150604401600060405180830381600087803b15801562001b8157600080fd5b505af115801562001b96573d6000803e3d6000fd5b505060155460405163c88a5e6d60e01b81526001600160a01b03909116600482015269d3c21bcecceda100000060248201526000805160206201a035833981519152925063c88a5e6d9150604401600060405180830381600087803b15801562001bff57600080fd5b505af115801562001c14573d6000803e3d6000fd5b505060135460405164e8d4a510009350600692506001600160a01b039091169062001c3f90620029c9565b62001c4d9392919062002dcc565b604051809103906000f08015801562001c6a573d6000803e3d6000fd5b50600d80546001600160a01b0319166001600160a01b0392831617905560105460405191169062001c9b90620029d7565b6001600160a01b039091168152602001604051809103906000f08015801562001cc8573d6000803e3d6000fd5b50600c80546001600160a01b03929092166001600160a01b031992831617905560078054909116737063f3446223bc4f5c37b0f9d1e12547f0358e9017905560405162001d1590620029e5565b604051809103906000f08015801562001d32573d6000803e3d6000fd5b50600480546001600160a01b0319166001600160a01b0392831690811790915560105460405192169162001d6690620029f3565b6001600160a01b03928316815291166020820152604001604051809103906000f08015801562001d9a573d6000803e3d6000fd5b50600880546001600160a01b0319166001600160a01b0392831617905560105460405191169062001dcb9062002a01565b606080825260069082015265506c61736d6160d01b608082015260a06020820181905260039082015262504c5360e81b60c08201526001600160a01b03909116604082015260e001604051809103906000f08015801562001e30573d6000803e3d6000fd5b50600580546001600160a01b0319166001600160a01b039290921691909117905560405162001e5f9062002a0f565b604051809103906000f08015801562001e7c573d6000803e3d6000fd5b50600680546001600160a01b0319166001600160a01b03928316908117909155600f546040519192169062001eb19062002a1d565b62001ebe92919062002c80565b604051809103906000f08015801562001edb573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392831690811790915560105460115460405163485cc95560e01b8152918416600483015290921660248301529063485cc95590604401600060405180830381600087803b15801562001f4357600080fd5b505af115801562001f58573d6000803e3d6000fd5b5050600254600680546001600160a01b0319166001600160a01b03909216919091179055505060405162001f8c9062002a2b565b604051809103906000f08015801562001fa9573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b03928316908117909155600f546040519192169062001fde9062002a1d565b62001feb92919062002c80565b604051809103906000f08015801562002008573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b03928316908117909155601054600854600554600654600c54604051636213b72760e01b8152948716600486015292861660248501529085166044840152683635c9adc5dea00000606484015267016345785d8a00006084840152841660a483015290921660c483015290636213b7279060e401600060405180830381600087803b158015620020ad57600080fd5b505af1158015620020c2573d6000803e3d6000fd5b5050600254600380546001600160a01b0319166001600160a01b039092169190911790555050604051620020f69062002a39565b604051809103906000f08015801562002113573d6000803e3d6000fd5b50600980546001600160a01b0319166001600160a01b03928316908117909155600f5460405191921690620021489062002a1d565b6200215592919062002c80565b604051809103906000f08015801562002172573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392831690811790915560105460035460405163485cc95560e01b8152918416600483015290921660248301529063485cc95590604401600060405180830381600087803b158015620021da57600080fd5b505af1158015620021ef573d6000803e3d6000fd5b5050600254600980546001600160a01b0319166001600160a01b039092169190911790555050604051620022239062002a47565b604051809103906000f08015801562002240573d6000803e3d6000fd5b50600b80546001600160a01b0319166001600160a01b03928316908117909155600f5460405191921690620022759062002a1d565b6200228292919062002c80565b604051809103906000f0801580156200229f573d6000803e3d6000fd5b50600280546001600160a01b039283166001600160a01b03199182168117909255600b80549091168217905560105460065460405163c350a1b560e01b8152918416600483015260fa602483015290921660448301529063c350a1b590606401600060405180830381600087803b1580156200231a57600080fd5b505af11580156200232f573d6000803e3d6000fd5b5050600654600b546010546040516001600160a01b0393841695509183169350909116906200235e9062002a55565b6001600160a01b03938416815291831660208301529091166040820152606001604051809103906000f0801580156200239b573d6000803e3d6000fd5b50600a80546001600160a01b0319166001600160a01b039283161790556010546040516303223eab60e11b8152911660048201526000805160206201a035833981519152906306447d5690602401600060405180830381600087803b1580156200240457600080fd5b505af115801562002419573d6000803e3d6000fd5b505060035460095460405163a424c78360e01b81526001600160a01b0391821660048201529116925063a424c7839150602401600060405180830381600087803b1580156200246757600080fd5b505af11580156200247c573d6000803e3d6000fd5b5050600354600b54604051635a3e62ab60e11b81526001600160a01b0391821660048201529116925063b47cc5569150602401600060405180830381600087803b158015620024ca57600080fd5b505af1158015620024df573d6000803e3d6000fd5b5050600354600d5460405163269fce9f60e11b815260006004820181905260248201526001600160a01b03918216604482015291169250634d3f9d3e9150606401600060405180830381600087803b1580156200253b57600080fd5b505af115801562002550573d6000803e3d6000fd5b50505050600660009054906101000a90046001600160a01b03166001600160a01b031663ba0bba406040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620025a557600080fd5b505af1158015620025ba573d6000803e3d6000fd5b5050600b54600a54604051634d1044b960e01b81526001600160a01b03918216600482015291169250634d1044b99150602401600060405180830381600087803b1580156200260857600080fd5b505af11580156200261d573d6000803e3d6000fd5b505050506000805160206201a05583398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620015dd57600080fd5b620026b882826040516024016200268892919062002da8565b60408051601f198184030181529190526020810180516001600160e01b0316632d839cb360e21b17905262002922565b5050565b604080516002808252606082018352600092602083019080368337505060408051600280825260608201835293945060009390925090602083019080368337505060135484519293506001600160a01b03169184915060009062002724576200272462002e99565b60200260200101906001600160a01b031690816001600160a01b03168152505068a2a15d09519be000008160008151811062002764576200276462002e99565b602090810291909101015260145482516001600160a01b03909116908390600190811062002796576200279662002e99565b60200260200101906001600160a01b031690816001600160a01b031681525050686c6b935b8bbd40000081600181518110620027d657620027d662002e99565b602090810291909101015260105460405163ca669fa760e01b81526001600160a01b0390911660048201526000805160206201a0358339815191529063ca669fa790602401600060405180830381600087803b1580156200283657600080fd5b505af11580156200284b573d6000803e3d6000fd5b50506005546040516307233fbf60e51b81526001600160a01b03909116925063e467f7e0915062002883908590859060040162002ca9565b602060405180830381600087803b1580156200289e57600080fd5b505af1158015620028b3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028d9919062002baa565b505050565b620026b88282604051602401620028f792919062002d7c565b60408051601f198184030181529190526020810180516001600160e01b031663319af33360e01b1790525b6200292d8162002930565b50565b60006a636f6e736f6c652e6c6f679050600080835160208501845afa505050565b6107ba8062002edc83390190565b828054828255906000526020600020908101928215620029b7579160200282015b82811115620029b757825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019062002980565b50620029c592915062002a63565b5090565b61171d806200369683390190565b611f458062004db383390190565b612bd98062006cf883390190565b6104a480620098d183390190565b611ad78062009d7583390190565b611a6c806200b84c83390190565b610eb1806200d2b883390190565b6157ac806200e16983390190565b6127ba806201391583390190565b61351f80620160cf83390190565b610a4780620195ee83390190565b5b80821115620029c5576000815560010162002a64565b805162002a878162002ec5565b919050565b60006020828403121562002a9f57600080fd5b81516200170c8162002ec5565b6000602080838503121562002ac057600080fd5b825167ffffffffffffffff8082111562002ad957600080fd5b818501915085601f83011262002aee57600080fd5b81518181111562002b035762002b0362002eaf565b8060051b604051601f19603f8301168101818110858211171562002b2b5762002b2b62002eaf565b604052828152858101935084860182860187018a101562002b4b57600080fd5b600095505b8386101562002b795762002b648162002a7a565b85526001959095019493860193860162002b50565b5098975050505050505050565b60006020828403121562002b9957600080fd5b815180151581146200170c57600080fd5b60006020828403121562002bbd57600080fd5b5051919050565b600081518084526020808501945080840160005b8381101562002bf65781518752958201959082019060010162002bd8565b509495945050505050565b6000815180845262002c1b81602086016020860162002e6a565b601f01601f19169290920160200192915050565b6001600160e01b031983168152815160009062002c5481600485016020870162002e6a565b919091016004019392505050565b6000825162002c7681846020870162002e6a565b9190910192915050565b6001600160a01b0392831681529116602082015260606040820181905260009082015260800190565b604080825283519082018190526000906020906060840190828701845b8281101562002ced5781516001600160a01b03168452928401929084019060010162002cc6565b5050508381038285015262002d03818662002bc4565b9695505050505050565b60608152600062002d22606083018662002bc4565b60208382038185015262002d37828762002bc4565b8481036040860152855180825282870193509082019060005b8181101562002d6e5784518352938301939183019160010162002d50565b509098975050505050505050565b60408152600062002d91604083018562002c01565b905060018060a01b03831660208301529392505050565b60408152600062002dbd604083018562002c01565b90508260208301529392505050565b60a08152600062002df160a0830160048152631554d11560e21b602082015260400190565b828103602084015262002e158160048152631554d11560e21b602082015260400190565b6040840196909652505060ff9290921660608301526001600160a01b031660809091015290565b600081600019048311821515161562002e6557634e487b7160e01b600052601160045260246000fd5b500290565b60005b8381101562002e8757818101518382015260200162002e6d565b83811115620015f25750506000910152565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b03811681146200292d57600080fdfe6b75736572206164647265737360a01b60a052600c6080527ffadd6953a0436e85528ded789af2e2b7e57c1cd7c68c5c3796d8ea67e0018db76001557f796f75206665656c696e67206c75636b792070756e6b3f00000000000000000060cc52601760ac5260e36040527f1982c532a5d29268425bcfbf045135788c5133835c8cab9378d36348feaa720f60025534801561009957600080fd5b50610711806100a96000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063ba414fa611610066578063ba414fa614610127578063cee1a8fc1461013f578063ec3206a1146100c1578063f82de7b014610154578063fa7626d41461016757600080fd5b8063792e11f514610098578063939cb064146100c1578063a199b3d3146100e2578063b90a68fa146100ea575b600080fd5b6100ab6100a636600461059c565b61016e565b6040516100b89190610620565b60405180910390f35b6100d46100cf36600461059c565b6102f9565b6040519081526020016100b8565b6100d4610314565b600180546040805160208082018490528251808303820181528284019384905280519101209093556001600160a01b0390911690526060016100b8565b61012f610341565b60405190151581526020016100b8565b61015261014d36600461059c565b610462565b005b61015261016236600461059c565b6104d9565b600161012f565b606060008267ffffffffffffffff81111561018b5761018b6106ee565b6040519080825280602002602001820160405280156101b4578160200160208202803683370190505b50905060005b838110156102f2576000306001600160a01b031663b90a68fa6040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156101ff57600080fd5b505af1158015610213573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102379190610551565b60405163c88a5e6d60e01b81526001600160a01b038216600482015268056bc75e2d631000006024820152909150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c88a5e6d90604401600060405180830381600087803b15801561029e57600080fd5b505af11580156102b2573d6000803e3d6000fd5b50505050808383815181106102c9576102c96106d8565b6001600160a01b0390921660209283029190910190910152506102eb81610685565b90506101ba565b5092915050565b600081610304610314565b61030e91906106a0565b92915050565b60025460408051602081018390520160408051601f19818403018152919052805160209091012060025590565b6000805460ff16156103535750600190565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561045c5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b828401528251808303840181526060830190935260009290916103df917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016105f0565b60408051601f19818403018152908290526103f991610614565b6000604051808303816000865af19150503d8060008114610436576040519150601f19603f3d011682016040523d82523d6000602084013e61043b565b606091505b50915050600081806020019051810190610455919061057a565b9392505050565b50600090565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf02610486834261066d565b6040518263ffffffff1660e01b81526004016104a491815260200190565b600060405180830381600087803b1580156104be57600080fd5b505af11580156104d2573d6000803e3d6000fd5b5050505050565b60006104e5824361066d565b6040516301f7b4f360e41b815260048101829052909150737109709ecfa91a80626ff3989d68f67f5b1dd12d90631f7b4f3090602401600060405180830381600087803b15801561053557600080fd5b505af1158015610549573d6000803e3d6000fd5b505050505050565b60006020828403121561056357600080fd5b81516001600160a01b038116811461045557600080fd5b60006020828403121561058c57600080fd5b8151801515811461045557600080fd5b6000602082840312156105ae57600080fd5b5035919050565b6000815160005b818110156105d657602081850181015186830152016105bc565b818111156105e5576000828601525b509290920192915050565b6001600160e01b031983168152600061060c60048301846105b5565b949350505050565b600061045582846105b5565b6020808252825182820181905260009190848201906040850190845b818110156106615783516001600160a01b03168352928401929184019160010161063c565b50909695505050505050565b60008219821115610680576106806106c2565b500190565b6000600019821415610699576106996106c2565b5060010190565b6000826106bd57634e487b7160e01b600052601260045260246000fd5b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fdfea164736f6c6343000807000a60806040526006805460ff191660121790553480156200001e57600080fd5b506040516200171d3803806200171d833981016040819052620000419162000398565b8451859085906200005a9060039060208501906200023b565b508051620000709060049060208401906200023b565b505050620000858184620000d060201b60201c565b620000b17ff0887ba65ee2024ea881d91b74c2450ef19e1557f03bed3ea9f16b037cbe2dc98262000197565b506006805460ff191660ff9290921691909117905550620004c2915050565b6001600160a01b0382166200012b5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b80600260008282546200013f919062000448565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35b5050565b60008281526005602090815260408083206001600160a01b038516845290915290205460ff16620001935760008281526005602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620001f73390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b82805462000249906200046f565b90600052602060002090601f0160209004810192826200026d5760008555620002b8565b82601f106200028857805160ff1916838001178555620002b8565b82800160010185558215620002b8579182015b82811115620002b85782518255916020019190600101906200029b565b50620002c6929150620002ca565b5090565b5b80821115620002c65760008155600101620002cb565b600082601f830112620002f357600080fd5b81516001600160401b0380821115620003105762000310620004ac565b604051601f8301601f19908116603f011681019082821181831017156200033b576200033b620004ac565b816040528381526020925086838588010111156200035857600080fd5b600091505b838210156200037c57858201830151818301840152908201906200035d565b838211156200038e5760008385830101525b9695505050505050565b600080600080600060a08688031215620003b157600080fd5b85516001600160401b0380821115620003c957600080fd5b620003d789838a01620002e1565b96506020880151915080821115620003ee57600080fd5b50620003fd88828901620002e1565b94505060408601519250606086015160ff811681146200041c57600080fd5b60808701519092506001600160a01b03811681146200043a57600080fd5b809150509295509295909350565b600082198211156200046a57634e487b7160e01b600052601160045260246000fd5b500190565b600181811c908216806200048457607f821691505b60208210811415620004a657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b61124b80620004d26000396000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c806342966c68116100c3578063a217fddf1161007c578063a217fddf146102c8578063a457c2d7146102d0578063a9059cbb146102e3578063d547741f146102f6578063dd62ed3e14610309578063fe6d81241461031c57600080fd5b806342966c681461025157806370a082311461026457806376809ce31461028d57806379cc67901461029a57806391d14854146102ad57806395d89b41146102c057600080fd5b8063248a9ca311610115578063248a9ca3146101c75780632f2ff15d146101ea578063313ce567146101ff57806336568abe14610218578063395093511461022b57806340c10f191461023e57600080fd5b806301ffc9a71461015257806306fdde031461017a578063095ea7b31461018f57806318160ddd146101a257806323b872dd146101b4575b600080fd5b61016561016036600461107b565b610343565b60405190151581526020015b60405180910390f35b61018261037a565b604051610171919061111a565b61016561019d366004611015565b61040c565b6002545b604051908152602001610171565b6101656101c2366004610fd9565b610424565b6101a66101d536600461103f565b60009081526005602052604090206001015490565b6101fd6101f8366004611058565b610448565b005b60065460ff165b60405160ff9091168152602001610171565b6101fd610226366004611058565b610472565b610165610239366004611015565b6104f5565b6101a661024c366004611015565b610517565b6101fd61025f36600461103f565b610602565b6101a6610272366004610f8b565b6001600160a01b031660009081526020819052604090205490565b6006546102069060ff1681565b6101fd6102a8366004611015565b61060f565b6101656102bb366004611058565b610624565b61018261064f565b6101a6600081565b6101656102de366004611015565b61065e565b6101656102f1366004611015565b6106d9565b6101fd610304366004611058565b6106e7565b6101a6610317366004610fa6565b61070c565b6101a67ff0887ba65ee2024ea881d91b74c2450ef19e1557f03bed3ea9f16b037cbe2dc981565b60006001600160e01b03198216637965db0b60e01b148061037457506301ffc9a760e01b6001600160e01b03198316145b92915050565b606060038054610389906111c7565b80601f01602080910402602001604051908101604052809291908181526020018280546103b5906111c7565b80156104025780601f106103d757610100808354040283529160200191610402565b820191906000526020600020905b8154815290600101906020018083116103e557829003601f168201915b5050505050905090565b60003361041a818585610737565b5060019392505050565b60003361043285828561085b565b61043d8585856108d5565b506001949350505050565b60008281526005602052604090206001015461046381610a79565b61046d8383610a83565b505050565b6001600160a01b03811633146104e75760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6104f18282610b09565b5050565b60003361041a818585610508838361070c565b610512919061114d565b610737565b60006105437ff0887ba65ee2024ea881d91b74c2450ef19e1557f03bed3ea9f16b037cbe2dc933610624565b6105a55760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c7920416464726573732077697468206d696e74657220726f6c6520636160448201526c6e206d696e7420746f6b656e7360981b60648201526084016104de565b816105f25760405162461bcd60e51b815260206004820152601f60248201527f416d6f756e742073686f756c642062652067726561746572207468616e20300060448201526064016104de565b6105fc8383610b70565b50919050565b61060c3382610c2f565b50565b61061a82338361085b565b6104f18282610c2f565b60009182526005602090815260408084206001600160a01b0393909316845291905290205460ff1690565b606060048054610389906111c7565b6000338161066c828661070c565b9050838110156106cc5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016104de565b61043d8286868403610737565b60003361041a8185856108d5565b60008281526005602052604090206001015461070281610a79565b61046d8383610b09565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166107995760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104de565b6001600160a01b0382166107fa5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104de565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000610867848461070c565b905060001981146108cf57818110156108c25760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016104de565b6108cf8484848403610737565b50505050565b6001600160a01b0383166109395760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104de565b6001600160a01b03821661099b5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104de565b6001600160a01b03831660009081526020819052604090205481811015610a135760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016104de565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36108cf565b61060c8133610d61565b610a8d8282610624565b6104f15760008281526005602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610ac53390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610b138282610624565b156104f15760008281526005602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6001600160a01b038216610bc65760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016104de565b8060026000828254610bd8919061114d565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6001600160a01b038216610c8f5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016104de565b6001600160a01b03821660009081526020819052604090205481811015610d035760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016104de565b6001600160a01b0383166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b610d6b8282610624565b6104f157610d7881610dba565b610d83836020610dcc565b604051602001610d949291906110a5565b60408051601f198184030181529082905262461bcd60e51b82526104de9160040161111a565b60606103746001600160a01b03831660145b60606000610ddb836002611165565b610de690600261114d565b67ffffffffffffffff811115610dfe57610dfe611228565b6040519080825280601f01601f191660200182016040528015610e28576020820181803683370190505b509050600360fc1b81600081518110610e4357610e43611212565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610e7257610e72611212565b60200101906001600160f81b031916908160001a9053506000610e96846002611165565b610ea190600161114d565b90505b6001811115610f19576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610ed557610ed5611212565b1a60f81b828281518110610eeb57610eeb611212565b60200101906001600160f81b031916908160001a90535060049490941c93610f12816111b0565b9050610ea4565b508315610f685760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016104de565b9392505050565b80356001600160a01b0381168114610f8657600080fd5b919050565b600060208284031215610f9d57600080fd5b610f6882610f6f565b60008060408385031215610fb957600080fd5b610fc283610f6f565b9150610fd060208401610f6f565b90509250929050565b600080600060608486031215610fee57600080fd5b610ff784610f6f565b925061100560208501610f6f565b9150604084013590509250925092565b6000806040838503121561102857600080fd5b61103183610f6f565b946020939093013593505050565b60006020828403121561105157600080fd5b5035919050565b6000806040838503121561106b57600080fd5b82359150610fd060208401610f6f565b60006020828403121561108d57600080fd5b81356001600160e01b031981168114610f6857600080fd5b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516110dd816017850160208801611184565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161110e816028840160208801611184565b01602801949350505050565b6020815260008251806020840152611139816040850160208701611184565b601f01601f19169190910160400192915050565b60008219821115611160576111606111fc565b500190565b600081600019048311821515161561117f5761117f6111fc565b500290565b60005b8381101561119f578181015183820152602001611187565b838111156108cf5750506000910152565b6000816111bf576111bf6111fc565b506000190190565b600181811c908216806111db57607f821691505b602082108114156105fc57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fdfea164736f6c6343000807000a60806040523480156200001157600080fd5b5060405162001f4538038062001f45833981016040819052620000349162000a50565b6200003f336200091f565b620003a26103e87fccfe08badd7fbee8a36c1d2ba2b3090f679bf1a4970d307adddb9d938fc7bd72556113887fb116e49c5d725dff7d04eff8de2b6cba606adebd5c51d140fbe3ec5c272c5f7355614e207fc97a69e6e2de1bb9e27f629ecf2981a64edb688b55347fa4daae7dde857b7d91556175307ffa37840a14799ca23d33c55b9b42830805d3d3decc30cbf9394f7f7c62042ab3819055619c407fff03117aca25b284633eab259ac0c2394bf76e317400110747ed535c446b6d5a8190556104b07fedb38a93e6e2e82dbb40826a878df1d817a37ef13fcaa25248649a90fa47497b556117707f58e76cff22dd72278c8f84685a17f449f02ff85d2e9a03f82022b6f39564086055615dc07f158767340ba23d54c9df5ae99b956057eea7a83ae8538a2dc391c346fd5136e255618ca07f5d6cd7de0286a98dfeda5747bd584a64ab88877681c0079306854ffd7e7c1a035561bb807f905a7e789ce10f3196ebafd6961387e80b07e8c162f5e6ee6a1006abce80139e556105dc7fe28818af7bb947aef01108c00a0155d810d5eea20893e766795b298bc4db781955611d4c7f42f44160cc2e77bbab1a45023