[ { "inputs": [ { "internalType": "string", "name": "name_", "type": "string" }, { "internalType": "string", "name": "symbol_", "type": "string" }, { "internalType": "address", "name": "owner_", "type": "address" }, { "internalType": "address", "name": "asset_", "type": "address" }, { "internalType": "uint256", "name": "precision_", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner_", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender_", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount_", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "caller_", "type": "address" }, { "indexed": true, "internalType": "address", "name": "owner_", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "assets_", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "shares_", "type": "uint256" } ], "name": "Deposit", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "freeAssets_", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "issuanceRate_", "type": "uint256" } ], "name": "IssuanceParamsUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner_", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner_", "type": "address" } ], "name": "OwnershipAccepted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner_", "type": "address" }, { "indexed": true, "internalType": "address", "name": "pendingOwner_", "type": "address" } ], "name": "PendingOwnerSet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner_", "type": "address" }, { "indexed": true, "internalType": "address", "name": "recipient_", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount_", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner_", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "vestingPeriodFinish_", "type": "uint256" } ], "name": "VestingScheduleUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "caller_", "type": "address" }, { "indexed": true, "internalType": "address", "name": "receiver_", "type": "address" }, { "indexed": true, "internalType": "address", "name": "owner_", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "assets_", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "shares_", "type": "uint256" } ], "name": "Withdraw", "type": "event" }, { "inputs": [], "name": "DOMAIN_SEPARATOR", "outputs": [ { "internalType": "bytes32", "name": "domainSeparator_", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PERMIT_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "acceptOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender_", "type": "address" }, { "internalType": "uint256", "name": "amount_", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "success_", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "asset", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account_", "type": "address" } ], "name": "balanceOfAssets", "outputs": [ { "internalType": "uint256", "name": "balanceOfAssets_", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "shares_", "type": "uint256" } ], "name": "convertToAssets", "outputs": [ { "internalType": "uint256", "name": "assets_", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assets_", "type": "uint256" } ], "name": "convertToShares", "outputs": [ { "internalType": "uint256", "name": "shares_", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender_", "type": "address" }, { "internalType": "uint256", "name": "subtractedAmount_", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "success_", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assets_", "type": "uint256" }, { "internalType": "address", "name": "receiver_", "type": "address" } ], "name": "deposit", "outputs": [ { "internalType": "uint256", "name": "shares_", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assets_", "type": "uint256" }, { "internalType": "address", "name": "receiver_", "type": "address" }, { "internalType": "uint256", "name": "deadline_", "type": "uint256" }, { "internalType": "uint8", "name": "v_", "type": "uint8" }, { "internalType": "bytes32", "name": "r_", "type": "bytes32" }, { "internalType": "bytes32", "name": "s_", "type": "bytes32" } ], "name": "depositWithPermit", "outputs": [ { "internalType": "uint256", "name": "shares_", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "freeAssets", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender_", "type": "address" }, { "internalType": "uint256", "name": "addedAmount_", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "success_", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "issuanceRate", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lastUpdated", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "receiver_", "type": "address" } ], "name": "maxDeposit", "outputs": [ { "internalType": "uint256", "name": "maxAssets_", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "receiver_", "type": "address" } ], "name": "maxMint", "outputs": [ { "internalType": "uint256", "name": "maxShares_", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner_", "type": "address" } ], "name": "maxRedeem", "outputs": [ { "internalType": "uint256", "name": "maxShares_", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner_", "type": "address" } ], "name": "maxWithdraw", "outputs": [ { "internalType": "uint256", "name": "maxAssets_", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "shares_", "type": "uint256" }, { "internalType": "address", "name": "receiver_", "type": "address" } ], "name": "mint", "outputs": [ { "internalType": "uint256", "name": "assets_", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "shares_", "type": "uint256" }, { "internalType": "address", "name": "receiver_", "type": "address" }, { "internalType": "uint256", "name": "maxAssets_", "type": "uint256" }, { "internalType": "uint256", "name": "deadline_", "type": "uint256" }, { "internalType": "uint8", "name": "v_", "type": "uint8" }, { "internalType": "bytes32", "name": "r_", "type": "bytes32" }, { "internalType": "bytes32", "name": "s_", "type": "bytes32" } ], "name": "mintWithPermit", "outputs": [ { "internalType": "uint256", "name": "assets_", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "nonces", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pendingOwner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner_", "type": "address" }, { "internalType": "address", "name": "spender_", "type": "address" }, { "internalType": "uint256", "name": "amount_", "type": "uint256" }, { "internalType": "uint256", "name": "deadline_", "type": "uint256" }, { "internalType": "uint8", "name": "v_", "type": "uint8" }, { "internalType": "bytes32", "name": "r_", "type": "bytes32" }, { "internalType": "bytes32", "name": "s_", "type": "bytes32" } ], "name": "permit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "precision", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assets_", "type": "uint256" } ], "name": "previewDeposit", "outputs": [ { "internalType": "uint256", "name": "shares_", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "shares_", "type": "uint256" } ], "name": "previewMint", "outputs": [ { "internalType": "uint256", "name": "assets_", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "shares_", "type": "uint256" } ], "name": "previewRedeem", "outputs": [ { "internalType": "uint256", "name": "assets_", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assets_", "type": "uint256" } ], "name": "previewWithdraw", "outputs": [ { "internalType": "uint256", "name": "shares_", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "shares_", "type": "uint256" }, { "internalType": "address", "name": "receiver_", "type": "address" }, { "internalType": "address", "name": "owner_", "type": "address" } ], "name": "redeem", "outputs": [ { "internalType": "uint256", "name": "assets_", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "pendingOwner_", "type": "address" } ], "name": "setPendingOwner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalAssets", "outputs": [ { "internalType": "uint256", "name": "totalManagedAssets_", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient_", "type": "address" }, { "internalType": "uint256", "name": "amount_", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "success_", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner_", "type": "address" }, { "internalType": "address", "name": "recipient_", "type": "address" }, { "internalType": "uint256", "name": "amount_", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "success_", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "vestingPeriod_", "type": "uint256" } ], "name": "updateVestingSchedule", "outputs": [ { "internalType": "uint256", "name": "issuanceRate_", "type": "uint256" }, { "internalType": "uint256", "name": "freeAssets_", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "vestingPeriodFinish", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assets_", "type": "uint256" }, { "internalType": "address", "name": "receiver_", "type": "address" }, { "internalType": "address", "name": "owner_", "type": "address" } ], "name": "withdraw", "outputs": [ { "internalType": "uint256", "name": "shares_", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" } ]
60c06040526001600d553480156200001657600080fd5b506040516200447c3803806200447c83398181016040528101906200003c91906200041d565b84848373ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200008a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000b0919062000521565b8260009081620000c1919062000794565b508160019081620000d3919062000794565b508060ff1660808160ff1681525050505050600073ffffffffffffffffffffffffffffffffffffffff1683600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905573ffffffffffffffffffffffffffffffffffffffff160362000196576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200018d90620008dc565b60405180910390fd5b81600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060a081815250505050505050620008fe565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620002538262000208565b810181811067ffffffffffffffff8211171562000275576200027462000219565b5b80604052505050565b60006200028a620001ea565b905062000298828262000248565b919050565b600067ffffffffffffffff821115620002bb57620002ba62000219565b5b620002c68262000208565b9050602081019050919050565b60005b83811015620002f3578082015181840152602081019050620002d6565b60008484015250505050565b60006200031662000310846200029d565b6200027e565b90508281526020810184848401111562000335576200033462000203565b5b62000342848285620002d3565b509392505050565b600082601f830112620003625762000361620001fe565b5b815162000374848260208601620002ff565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620003aa826200037d565b9050919050565b620003bc816200039d565b8114620003c857600080fd5b50565b600081519050620003dc81620003b1565b92915050565b6000819050919050565b620003f781620003e2565b81146200040357600080fd5b50565b6000815190506200041781620003ec565b92915050565b600080600080600060a086880312156200043c576200043b620001f4565b5b600086015167ffffffffffffffff8111156200045d576200045c620001f9565b5b6200046b888289016200034a565b955050602086015167ffffffffffffffff8111156200048f576200048e620001f9565b5b6200049d888289016200034a565b9450506040620004b088828901620003cb565b9350506060620004c388828901620003cb565b9250506080620004d68882890162000406565b9150509295509295909350565b600060ff82169050919050565b620004fb81620004e3565b81146200050757600080fd5b50565b6000815190506200051b81620004f0565b92915050565b6000602082840312156200053a5762000539620001f4565b5b60006200054a848285016200050a565b91505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620005a657607f821691505b602082108103620005bc57620005bb6200055e565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620006267fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620005e7565b620006328683620005e7565b95508019841693508086168417925050509392505050565b6000819050919050565b6000620006756200066f6200066984620003e2565b6200064a565b620003e2565b9050919050565b6000819050919050565b620006918362000654565b620006a9620006a0826200067c565b848454620005f4565b825550505050565b600090565b620006c0620006b1565b620006cd81848462000686565b505050565b5b81811015620006f557620006e9600082620006b6565b600181019050620006d3565b5050565b601f82111562000744576200070e81620005c2565b6200071984620005d7565b8101602085101562000729578190505b620007416200073885620005d7565b830182620006d2565b50505b505050565b600082821c905092915050565b6000620007696000198460080262000749565b1980831691505092915050565b600062000784838362000756565b9150826002028217905092915050565b6200079f8262000553565b67ffffffffffffffff811115620007bb57620007ba62000219565b5b620007c782546200058d565b620007d4828285620006f9565b600060209050601f8311600181146200080c5760008415620007f7578287015190505b62000803858262000776565b86555062000873565b601f1984166200081c86620005c2565b60005b8281101562000846578489015182556001820191506020850194506020810190506200081f565b8683101562000866578489015162000862601f89168262000756565b8355505b6001600288020188555050505b505050505050565b600082825260208201905092915050565b7f5244543a433a4f574e45525f5a45524f5f414444524553530000000000000000600082015250565b6000620008c46018836200087b565b9150620008d1826200088c565b602082019050919050565b60006020820190508181036000830152620008f781620008b5565b9050919050565b60805160a051613b4a62000932600039600081816109b5015281816116550152611a7901526000610b730152613b4a6000f3fe608060405234801561001057600080fd5b50600436106102745760003560e01c80637ecebe0011610151578063c63d75b6116100c3578063d505accf11610087578063d505accf14610863578063d905777e1461087f578063dd62ed3e146108af578063e13aa990146108df578063e30c397814610910578063ef8b30f71461092e57610274565b8063c63d75b614610797578063c6e6f592146107c7578063ce96cb77146107f7578063d0b06f5d14610827578063d3b5dc3b1461084557610274565b8063a457c2d711610115578063a457c2d71461068b578063a9059cbb146106bb578063b3d7f6b9146106eb578063b460af941461071b578063ba0876521461074b578063c42069ec1461077b57610274565b80637ecebe00146105bf5780638da5cb5b146105ef5780639159b2061461060d57806394bf804d1461063d57806395d89b411461066d57610274565b806338d52e0f116101ea5780634cdad506116101ae5780634cdad506146104c557806350921b23146104f557806360dd37d9146105255780636e553f651461055557806370a082311461058557806379ba5097146105b557610274565b806338d52e0f1461040b57806339509351146104295780633c2f7773146104595780633c9ae2ba14610477578063402d267d1461049557610274565b806311f240ac1161023c57806311f240ac1461034557806318160ddd1461036357806323b872dd1461038157806330adf81f146103b1578063313ce567146103cf5780633644e515146103ed57610274565b806301e1d1141461027957806306fdde031461029757806307a2d13a146102b5578063095ea7b3146102e55780630a28a47714610315575b600080fd5b61028161095e565b60405161028e91906127c6565b60405180910390f35b61029f6109fe565b6040516102ac9190612871565b60405180910390f35b6102cf60048036038101906102ca91906128c4565b610a8c565b6040516102dc91906127c6565b60405180910390f35b6102ff60048036038101906102fa919061294f565b610ac9565b60405161030c91906129aa565b60405180910390f35b61032f600480360381019061032a91906128c4565b610ae0565b60405161033c91906127c6565b60405180910390f35b61034d610b1b565b60405161035a91906127c6565b60405180910390f35b61036b610b21565b60405161037891906127c6565b60405180910390f35b61039b600480360381019061039691906129c5565b610b27565b6040516103a891906129aa565b60405180910390f35b6103b9610b4a565b6040516103c69190612a31565b60405180910390f35b6103d7610b71565b6040516103e49190612a68565b60405180910390f35b6103f5610b95565b6040516104029190612a31565b60405180910390f35b610413610c3d565b6040516104209190612a92565b60405180910390f35b610443600480360381019061043e919061294f565b610c63565b60405161045091906129aa565b60405180910390f35b610461610d01565b60405161046e91906127c6565b60405180910390f35b61047f610d07565b60405161048c91906127c6565b60405180910390f35b6104af60048036038101906104aa9190612aad565b610d0d565b6040516104bc91906127c6565b60405180910390f35b6104df60048036038101906104da91906128c4565b610d37565b6040516104ec91906127c6565b60405180910390f35b61050f600480360381019061050a9190612b32565b610d49565b60405161051c91906127c6565b60405180910390f35b61053f600480360381019061053a9190612bbf565b610e5a565b60405161054c91906127c6565b60405180910390f35b61056f600480360381019061056a9190612c61565b610fa3565b60405161057c91906127c6565b60405180910390f35b61059f600480360381019061059a9190612aad565b611017565b6040516105ac91906127c6565b60405180910390f35b6105bd61102f565b005b6105d960048036038101906105d49190612aad565b6111c0565b6040516105e691906127c6565b60405180910390f35b6105f76111d8565b6040516106049190612a92565b60405180910390f35b61062760048036038101906106229190612aad565b6111fe565b60405161063491906127c6565b60405180910390f35b61065760048036038101906106529190612c61565b61124f565b60405161066491906127c6565b60405180910390f35b6106756112c3565b6040516106829190612871565b60405180910390f35b6106a560048036038101906106a0919061294f565b611351565b6040516106b291906129aa565b60405180910390f35b6106d560048036038101906106d0919061294f565b611368565b6040516106e291906129aa565b60405180910390f35b610705600480360381019061070091906128c4565b61137f565b60405161071291906127c6565b60405180910390f35b61073560048036038101906107309190612ca1565b6113ba565b60405161074291906127c6565b60405180910390f35b61076560048036038101906107609190612ca1565b611430565b60405161077291906127c6565b60405180910390f35b61079560048036038101906107909190612aad565b6114a6565b005b6107b160048036038101906107ac9190612aad565b6115d4565b6040516107be91906127c6565b60405180910390f35b6107e160048036038101906107dc91906128c4565b6115fe565b6040516107ee91906127c6565b60405180910390f35b610811600480360381019061080c9190612aad565b61163b565b60405161081e91906127c6565b60405180910390f35b61082f61164d565b60405161083c91906127c6565b60405180910390f35b61084d611653565b60405161085a91906127c6565b60405180910390f35b61087d60048036038101906108789190612cf4565b611677565b005b61089960048036038101906108949190612aad565b611921565b6040516108a691906127c6565b60405180910390f35b6108c960048036038101906108c49190612d96565b61196a565b6040516108d691906127c6565b60405180910390f35b6108f960048036038101906108f491906128c4565b61198f565b604051610907929190612dd6565b60405180910390f35b610918611bff565b6040516109259190612a92565b60405180910390f35b610948600480360381019061094391906128c4565b611c25565b60405161095591906127c6565b60405180910390f35b600080600a54905060008103610979576009549150506109fb565b6000600c5490506000600b54905060008242116109a157814261099c9190612e2e565b6109ae565b81836109ad9190612e2e565b5b90506009547f000000000000000000000000000000000000000000000000000000000000000082866109e09190612e62565b6109ea9190612ed3565b6109f49190612f04565b9450505050505b90565b60008054610a0b90612f67565b80601f0160208091040260200160405190810160405280929190818152602001828054610a3790612f67565b8015610a845780601f10610a5957610100808354040283529160200191610a84565b820191906000526020600020905b815481529060010190602001808311610a6757829003601f168201915b505050505081565b600080600254905060008114610abf5780610aa561095e565b84610ab09190612e62565b610aba9190612ed3565b610ac1565b825b915050919050565b6000610ad6338484611c37565b6001905092915050565b600080600254905060008114610b1157610b0c8184610aff9190612e62565b610b0761095e565b611d20565b610b13565b825b915050919050565b60095481565b60025481565b6000610b34843384611d5f565b610b3f848484611e24565b600190509392505050565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c960001b81565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6000604051610bc7919061303b565b60405180910390206040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250805190602001204630604051602001610c22959493929190613052565b60405160208183030381529060405280519060200120905090565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610cf7338484600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cf29190612f04565b611c37565b6001905092915050565b600c5481565b600a5481565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9050919050565b6000610d4282610a8c565b9050919050565b60006001600d5414610d90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d87906130f1565b60405180910390fd5b6002600d81905550600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d505accf33308a898989896040518863ffffffff1660e01b8152600401610dff9796959493929190613111565b600060405180830381600087803b158015610e1957600080fd5b505af1158015610e2d573d6000803e3d6000fd5b50505050610e48610e3d88611c25565b915081888833611f31565b6001600d819055509695505050505050565b60006001600d5414610ea1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e98906130f1565b60405180910390fd5b6002600d8190555085610eb38961137f565b9150811115610ef7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eee906131cc565b60405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d505accf333089898989896040518863ffffffff1660e01b8152600401610f5e9796959493929190613111565b600060405180830381600087803b158015610f7857600080fd5b505af1158015610f8c573d6000803e3d6000fd5b505050506001600d81905550979650505050505050565b60006001600d5414610fea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe1906130f1565b60405180910390fd5b6002600d81905550611009610ffe84611c25565b915081848433611f31565b6001600d8190555092915050565b60036020528060005260406000206000915090505481565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b690613238565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f357bdeb5828fa83945f38a88510ce5cd7d628dafb346d767efbc693149fdd97c60405160405180910390a333600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60056020528060005260406000206000915090505481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000611248600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a8c565b9050919050565b60006001600d5414611296576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161128d906130f1565b60405180910390fd5b6002600d819055506112b5836112ab8561137f565b9250828433611f31565b6001600d8190555092915050565b600180546112d090612f67565b80601f01602080910402602001604051908101604052809291908181526020018280546112fc90612f67565b80156113495780601f1061131e57610100808354040283529160200191611349565b820191906000526020600020905b81548152906001019060200180831161132c57829003601f168201915b505050505081565b600061135e338484611d5f565b6001905092915050565b6000611375338484611e24565b6001905092915050565b6000806002549050600081146113b0576113ab61139a61095e565b846113a59190612e62565b82611d20565b6113b2565b825b915050919050565b60006001600d5414611401576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113f8906130f1565b60405180910390fd5b6002600d8190555061142161141585610ae0565b9150818585853361216d565b6001600d819055509392505050565b60006001600d5414611477576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146e906130f1565b60405180910390fd5b6002600d819055506114978461148c86610d37565b92508285853361216d565b6001600d819055509392505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611536576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152d906132a4565b60405180910390fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fa86864fa6b65f969d5ac8391ddaac6a0eba3f41386cbf6e78c3e4d6c59eb115f60405160405180910390a350565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9050919050565b6000806002549050600081146116315761161661095e565b81846116229190612e62565b61162c9190612ed3565b611633565b825b915050919050565b6000611646826111fe565b9050919050565b600b5481565b7f000000000000000000000000000000000000000000000000000000000000000081565b428410156116ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b190613310565b60405180910390fd5b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08160001c111580156116fe5750601b8360ff1614806116fd5750601c8360ff16145b5b61173d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117349061337c565b60405180910390fd5b6000611747610b95565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c960001b898989600560008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600101919050558a6040516020016117d29695949392919061339c565b604051602081830303815290604052805190602001206040516020016117f9929190613475565b60405160208183030381529060405280519060200120905060006001828686866040516000815260200160405260405161183694939291906134ac565b6020604051602081039080840390855afa158015611858573d6000803e3d6000fd5b5050506020604051035190508873ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480156118cc5750600073ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff1614155b61190b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119029061353d565b60405180910390fd5b5050611918878787611c37565b50505050505050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6004602052816000526040600020602052806000526040600020600091509150505481565b600080600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a19906135a9565b60405180910390fd5b600060025403611a67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5e90613615565b60405180910390fd5b611a6f61095e565b60098190559050827f000000000000000000000000000000000000000000000000000000000000000082600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611af49190612a92565b602060405180830381865afa158015611b11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b35919061364a565b611b3f9190612e2e565b611b499190612e62565b611b539190612ed3565b600a81905591508242600b819055611b6b9190612f04565b600c819055507f68b521a89bf844ff03e484d89fd64ce292a698ec522170f0dad7ecd11c2dc8fa8183604051611ba2929190612dd6565b60405180910390a13373ffffffffffffffffffffffffffffffffffffffff167f8c84e3b4df93f5b7c8d4ab6647708f5b14cacc124e22908187e30695ec54bab3600c54604051611bf291906127c6565b60405180910390a2915091565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000611c30826115fe565b9050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055604051611d1391906127c6565b60405180910390a3505050565b6000808284611d2f9190613677565b11611d3b576000611d3e565b60015b60ff168284611d4d9190612ed3565b611d579190612f04565b905092915050565b6000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611e1e57611e1d84848484611e189190612e2e565b611c37565b5b50505050565b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611e739190612e2e565b9250508190555080600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611f2491906127c6565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611fa0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f97906136f4565b60405180910390fd5b60008403611fe3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fda90613760565b60405180910390fd5b60008303612026576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201d906137cc565b60405180910390fd5b61203082856123ff565b60008361203b61095e565b6120459190612f04565b6009819055905060006120566124cf565b90508373ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d787896040516120b7929190612dd6565b60405180910390a37f68b521a89bf844ff03e484d89fd64ce292a698ec522170f0dad7ecd11c2dc8fa82826040516120f0929190612dd6565b60405180910390a1612126600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168430886124f4565b612165576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161215c90613838565b60405180910390fd5b505050505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036121dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121d3906138a4565b60405180910390fd5b6000850361221f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161221690613910565b60405180910390fd5b60008403612262576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122599061397c565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146122a1576122a0828287611d5f565b5b6122ab8286612583565b6000846122b661095e565b6122c09190612e2e565b6009819055905060006122d16124cf565b90508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167ffbde797d201c681b91056529119e0b02407c7bb96a4a2c75c01fc9667232c8db898b604051612349929190612dd6565b60405180910390a47f68b521a89bf844ff03e484d89fd64ce292a698ec522170f0dad7ecd11c2dc8fa8282604051612382929190612dd6565b60405180910390a16123b7600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168688612653565b6123f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123ed906139e8565b60405180910390fd5b50505050505050565b80600260008282546124119190612f04565b9250508190555080600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516124c391906127c6565b60405180910390a35050565b6000600c5442600b819055116124e757600a546124ea565b60005b600a819055905090565b6000612579856323b872dd60e01b86868660405160240161251793929190613a08565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506126df565b9050949350505050565b80600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546125d29190612e2e565b9250508190555080600260008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161264791906127c6565b60405180910390a35050565b60006126d68463a9059cbb60e01b8585604051602401612674929190613a3f565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506126df565b90509392505050565b6000808373ffffffffffffffffffffffffffffffffffffffff163b0361270857600090506127a7565b60608373ffffffffffffffffffffffffffffffffffffffff168360405161272f9190613aa4565b6000604051808303816000865af19150503d806000811461276c576040519150601f19603f3d011682016040523d82523d6000602084013e612771565b606091505b5080925081935050508180156127a357506000815114806127a25750808060200190518101906127a19190613ae7565b5b5b9150505b92915050565b6000819050919050565b6127c0816127ad565b82525050565b60006020820190506127db60008301846127b7565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561281b578082015181840152602081019050612800565b60008484015250505050565b6000601f19601f8301169050919050565b6000612843826127e1565b61284d81856127ec565b935061285d8185602086016127fd565b61286681612827565b840191505092915050565b6000602082019050818103600083015261288b8184612838565b905092915050565b600080fd5b6128a1816127ad565b81146128ac57600080fd5b50565b6000813590506128be81612898565b92915050565b6000602082840312156128da576128d9612893565b5b60006128e8848285016128af565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061291c826128f1565b9050919050565b61292c81612911565b811461293757600080fd5b50565b60008135905061294981612923565b92915050565b6000806040838503121561296657612965612893565b5b60006129748582860161293a565b9250506020612985858286016128af565b9150509250929050565b60008115159050919050565b6129a48161298f565b82525050565b60006020820190506129bf600083018461299b565b92915050565b6000806000606084860312156129de576129dd612893565b5b60006129ec8682870161293a565b93505060206129fd8682870161293a565b9250506040612a0e868287016128af565b9150509250925092565b6000819050919050565b612a2b81612a18565b82525050565b6000602082019050612a466000830184612a22565b92915050565b600060ff82169050919050565b612a6281612a4c565b82525050565b6000602082019050612a7d6000830184612a59565b92915050565b612a8c81612911565b82525050565b6000602082019050612aa76000830184612a83565b92915050565b600060208284031215612ac357612ac2612893565b5b6000612ad18482850161293a565b91505092915050565b612ae381612a4c565b8114612aee57600080fd5b50565b600081359050612b0081612ada565b92915050565b612b0f81612a18565b8114612b1a57600080fd5b50565b600081359050612b2c81612b06565b92915050565b60008060008060008060c08789031215612b4f57612b4e612893565b5b6000612b5d89828a016128af565b9650506020612b6e89828a0161293a565b9550506040612b7f89828a016128af565b9450506060612b9089828a01612af1565b9350506080612ba189828a01612b1d565b92505060a0612bb289828a01612b1d565b9150509295509295509295565b600080600080600080600060e0888a031215612bde57612bdd612893565b5b6000612bec8a828b016128af565b9750506020612bfd8a828b0161293a565b9650506040612c0e8a828b016128af565b9550506060612c1f8a828b016128af565b9450506080612c308a828b01612af1565b93505060a0612c418a828b01612b1d565b92505060c0612c528a828b01612b1d565b91505092959891949750929550565b60008060408385031215612c7857612c77612893565b5b6000612c86858286016128af565b9250506020612c978582860161293a565b9150509250929050565b600080600060608486031215612cba57612cb9612893565b5b6000612cc8868287016128af565b9350506020612cd98682870161293a565b9250506040612cea8682870161293a565b9150509250925092565b600080600080600080600060e0888a031215612d1357612d12612893565b5b6000612d218a828b0161293a565b9750506020612d328a828b0161293a565b9650506040612d438a828b016128af565b9550506060612d548a828b016128af565b9450506080612d658a828b01612af1565b93505060a0612d768a828b01612b1d565b92505060c0612d878a828b01612b1d565b91505092959891949750929550565b60008060408385031215612dad57612dac612893565b5b6000612dbb8582860161293a565b9250506020612dcc8582860161293a565b9150509250929050565b6000604082019050612deb60008301856127b7565b612df860208301846127b7565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612e39826127ad565b9150612e44836127ad565b9250828203905081811115612e5c57612e5b612dff565b5b92915050565b6000612e6d826127ad565b9150612e78836127ad565b9250828202612e86816127ad565b91508282048414831517612e9d57612e9c612dff565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612ede826127ad565b9150612ee9836127ad565b925082612ef957612ef8612ea4565b5b828204905092915050565b6000612f0f826127ad565b9150612f1a836127ad565b9250828201905080821115612f3257612f31612dff565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612f7f57607f821691505b602082108103612f9257612f91612f38565b5b50919050565b600081905092915050565b60008190508160005260206000209050919050565b60008154612fc581612f67565b612fcf8186612f98565b94506001821660008114612fea5760018114612fff57613032565b60ff1983168652811515820286019350613032565b61300885612fa3565b60005b8381101561302a5781548189015260018201915060208101905061300b565b838801955050505b50505092915050565b60006130478284612fb8565b915081905092915050565b600060a0820190506130676000830188612a22565b6130746020830187612a22565b6130816040830186612a22565b61308e60608301856127b7565b61309b6080830184612a83565b9695505050505050565b7f5244543a4c4f434b454400000000000000000000000000000000000000000000600082015250565b60006130db600a836127ec565b91506130e6826130a5565b602082019050919050565b6000602082019050818103600083015261310a816130ce565b9050919050565b600060e082019050613126600083018a612a83565b6131336020830189612a83565b61314060408301886127b7565b61314d60608301876127b7565b61315a6080830186612a59565b61316760a0830185612a22565b61317460c0830184612a22565b98975050505050505050565b7f5244543a4d57503a494e53554646494349454e545f5045524d49540000000000600082015250565b60006131b6601b836127ec565b91506131c182613180565b602082019050919050565b600060208201905081810360008301526131e5816131a9565b9050919050565b7f5244543a414f3a4e4f545f504f00000000000000000000000000000000000000600082015250565b6000613222600d836127ec565b915061322d826131ec565b602082019050919050565b6000602082019050818103600083015261325181613215565b9050919050565b7f5244543a53504f3a4e4f545f4f574e4552000000000000000000000000000000600082015250565b600061328e6011836127ec565b915061329982613258565b602082019050919050565b600060208201905081810360008301526132bd81613281565b9050919050565b7f45524332303a503a455850495245440000000000000000000000000000000000600082015250565b60006132fa600f836127ec565b9150613305826132c4565b602082019050919050565b60006020820190508181036000830152613329816132ed565b9050919050565b7f45524332303a503a4d414c4c4541424c45000000000000000000000000000000600082015250565b60006133666011836127ec565b915061337182613330565b602082019050919050565b6000602082019050818103600083015261339581613359565b9050919050565b600060c0820190506133b16000830189612a22565b6133be6020830188612a83565b6133cb6040830187612a83565b6133d860608301866127b7565b6133e560808301856127b7565b6133f260a08301846127b7565b979650505050505050565b600081905092915050565b7f1901000000000000000000000000000000000000000000000000000000000000600082015250565b600061343e6002836133fd565b915061344982613408565b600282019050919050565b6000819050919050565b61346f61346a82612a18565b613454565b82525050565b600061348082613431565b915061348c828561345e565b60208201915061349c828461345e565b6020820191508190509392505050565b60006080820190506134c16000830187612a22565b6134ce6020830186612a59565b6134db6040830185612a22565b6134e86060830184612a22565b95945050505050565b7f45524332303a503a494e56414c49445f5349474e415455524500000000000000600082015250565b60006135276019836127ec565b9150613532826134f1565b602082019050919050565b600060208201905081810360008301526135568161351a565b9050919050565b7f5244543a5556533a4e4f545f4f574e4552000000000000000000000000000000600082015250565b60006135936011836127ec565b915061359e8261355d565b602082019050919050565b600060208201905081810360008301526135c281613586565b9050919050565b7f5244543a5556533a5a45524f5f535550504c5900000000000000000000000000600082015250565b60006135ff6013836127ec565b915061360a826135c9565b602082019050919050565b6000602082019050818103600083015261362e816135f2565b9050919050565b60008151905061364481612898565b92915050565b6000602082840312156136605761365f612893565b5b600061366e84828501613635565b91505092915050565b6000613682826127ad565b915061368d836127ad565b92508261369d5761369c612ea4565b5b828206905092915050565b7f5244543a4d3a5a45524f5f524543454956455200000000000000000000000000600082015250565b60006136de6013836127ec565b91506136e9826136a8565b602082019050919050565b6000602082019050818103600083015261370d816136d1565b9050919050565b7f5244543a4d3a5a45524f5f534841524553000000000000000000000000000000600082015250565b600061374a6011836127ec565b915061375582613714565b602082019050919050565b600060208201905081810360008301526137798161373d565b9050919050565b7f5244543a4d3a5a45524f5f415353455453000000000000000000000000000000600082015250565b60006137b66011836127ec565b91506137c182613780565b602082019050919050565b600060208201905081810360008301526137e5816137a9565b9050919050565b7f5244543a4d3a5452414e534645525f46524f4d00000000000000000000000000600082015250565b60006138226013836127ec565b915061382d826137ec565b602082019050919050565b6000602082019050818103600083015261385181613815565b9050919050565b7f5244543a423a5a45524f5f524543454956455200000000000000000000000000600082015250565b600061388e6013836127ec565b915061389982613858565b602082019050919050565b600060208201905081810360008301526138bd81613881565b9050919050565b7f5244543a423a5a45524f5f534841524553000000000000000000000000000000600082015250565b60006138fa6011836127ec565b9150613905826138c4565b602082019050919050565b60006020820190508181036000830152613929816138ed565b9050919050565b7f5244543a423a5a45524f5f415353455453000000000000000000000000000000600082015250565b60006139666011836127ec565b915061397182613930565b602082019050919050565b6000602082019050818103600083015261399581613959565b9050919050565b7f5244543a423a5452414e53464552000000000000000000000000000000000000600082015250565b60006139d2600e836127ec565b91506139dd8261399c565b602082019050919050565b60006020820190508181036000830152613a01816139c5565b9050919050565b6000606082019050613a1d6000830186612a83565b613a2a6020830185612a83565b613a3760408301846127b7565b949350505050565b6000604082019050613a546000830185612a83565b613a6160208301846127b7565b9392505050565b600081519050919050565b6000613a7e82613a68565b613a888185612f98565b9350613a988185602086016127fd565b80840191505092915050565b6000613ab08284613a73565b915081905092915050565b613ac48161298f565b8114613acf57600080fd5b50565b600081519050613ae181613abb565b92915050565b600060208284031215613afd57613afc612893565b5b6000613b0b84828501613ad2565b9150509291505056fea264697066735822122040f82169d54fd3be0764aa41225bc5aae7e179a3bcf93208ca2be357cc5b821e64736f6c6343000812003300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000a8c2111fa095d07facc7d963cc752c253504c2de0000000000000000000000006b268960693359f8c64e043d72ce7580867521b2000000000000000000000000000000000000000c9f2c9cd04674edea40000000000000000000000000000000000000000000000000000000000000000000000d43524f43204c50205661756c740000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000087843524f432d6c70000000000000000000000000000000000000000000000000
0xa264697066735822122040f82169d54fd3be0764aa41225bc5aae7e179a3bcf93208ca2be357cc5b821e64736f6c6343000812003300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000a8c2111fa095d07facc7d963cc752c253504c2de0000000000000000000000006b268960693359f8c64e043d72ce7580867521b2000000000000000000000000000000000000000c9f2c9cd04674edea40000000000000000000000000000000000000000000000000000000000000000000000d43524f43204c50205661756c740000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000087843524f432d6c70000000000000000000000000000000000000000000000000