[ { "inputs": [], "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": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "previousAdminRole", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "newAdminRole", "type": "bytes32" } ], "name": "RoleAdminChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleGranted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleRevoked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [], "name": "BURNER_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "DEFAULT_ADMIN_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MAX_LIMIT", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MINTER_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "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": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "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": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" } ], "name": "getRoleAdmin", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "grantRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "hasRole", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "renounceRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "revokeRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" } ]
60a060405262000014620001a860201b60201c565b600a6200002291906200063d565b633b9aca006200003391906200068e565b6080908152503480156200004657600080fd5b506040518060400160405280600181526020017f4d000000000000000000000000000000000000000000000000000000000000008152506040518060400160405280600181526020017f4d000000000000000000000000000000000000000000000000000000000000008152508160039081620000c4919062000949565b508060049081620000d6919062000949565b505050620000fd6000801b620000f1620001b160201b60201c565b620001b960201b60201c565b6200013e7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a662000132620001b160201b60201c565b620001b960201b60201c565b6200017f7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84862000173620001b160201b60201c565b620001b960201b60201c565b620001a262000193620001b160201b60201c565b608051620001cf60201b60201c565b62000b1c565b60006012905090565b600033905090565b620001cb82826200033c60201b60201c565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000241576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002389062000a91565b60405180910390fd5b62000255600083836200042e60201b60201c565b806002600082825462000269919062000ab3565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200031c919062000aff565b60405180910390a362000338600083836200043360201b60201c565b5050565b6200034e82826200043860201b60201c565b6200042a5760016005600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003cf620001b160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b505050565b505050565b60006005600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200053157808604811115620005095762000508620004a3565b5b6001851615620005195780820291505b80810290506200052985620004d2565b9450620004e9565b94509492505050565b6000826200054c57600190506200061f565b816200055c57600090506200061f565b81600181146200057557600281146200058057620005b6565b60019150506200061f565b60ff841115620005955762000594620004a3565b5b8360020a915084821115620005af57620005ae620004a3565b5b506200061f565b5060208310610133831016604e8410600b8410161715620005f05782820a905083811115620005ea57620005e9620004a3565b5b6200061f565b620005ff8484846001620004df565b92509050818404811115620006195762000618620004a3565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b60006200064a8262000626565b9150620006578362000630565b9250620006867fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200053a565b905092915050565b60006200069b8262000626565b9150620006a88362000626565b9250828202620006b88162000626565b91508282048414831517620006d257620006d1620004a3565b5b5092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200075b57607f821691505b60208210810362000771576200077062000713565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620007db7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200079c565b620007e786836200079c565b95508019841693508086168417925050509392505050565b6000819050919050565b60006200082a620008246200081e8462000626565b620007ff565b62000626565b9050919050565b6000819050919050565b620008468362000809565b6200085e620008558262000831565b848454620007a9565b825550505050565b600090565b6200087562000866565b620008828184846200083b565b505050565b5b81811015620008aa576200089e6000826200086b565b60018101905062000888565b5050565b601f821115620008f957620008c38162000777565b620008ce846200078c565b81016020851015620008de578190505b620008f6620008ed856200078c565b83018262000887565b50505b505050565b600082821c905092915050565b60006200091e60001984600802620008fe565b1980831691505092915050565b60006200093983836200090b565b9150826002028217905092915050565b6200095482620006d9565b67ffffffffffffffff81111562000970576200096f620006e4565b5b6200097c825462000742565b62000989828285620008ae565b600060209050601f831160018114620009c15760008415620009ac578287015190505b620009b885826200092b565b86555062000a28565b601f198416620009d18662000777565b60005b82811015620009fb57848901518255600182019150602085019450602081019050620009d4565b8683101562000a1b578489015162000a17601f8916826200090b565b8355505b6001600288020188555050505b505050505050565b600082825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600062000a79601f8362000a30565b915062000a868262000a41565b602082019050919050565b6000602082019050818103600083015262000aac8162000a6a565b9050919050565b600062000ac08262000626565b915062000acd8362000626565b925082820190508082111562000ae85762000ae7620004a3565b5b92915050565b62000af98162000626565b82525050565b600060208201905062000b16600083018462000aee565b92915050565b60805161263362000b3f600039600081816105df015261078e01526126336000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c806339509351116100c3578063a217fddf1161007c578063a217fddf146103c6578063a457c2d7146103e4578063a9059cbb14610414578063d539139314610444578063d547741f14610462578063dd62ed3e1461047e5761014d565b806339509351146102e057806340c10f191461031057806342966c681461032c57806370a082311461034857806391d148541461037857806395d89b41146103a85761014d565b806323b872dd1161011557806323b872dd1461020c578063248a9ca31461023c578063282c51f31461026c5780632f2ff15d1461028a578063313ce567146102a657806336568abe146102c45761014d565b806301ffc9a71461015257806306fdde0314610182578063095ea7b3146101a0578063114cccd2146101d057806318160ddd146101ee575b600080fd5b61016c6004803603810190610167919061188d565b6104ae565b60405161017991906118d5565b60405180910390f35b61018a610528565b6040516101979190611980565b60405180910390f35b6101ba60048036038101906101b59190611a36565b6105ba565b6040516101c791906118d5565b60405180910390f35b6101d86105dd565b6040516101e59190611a85565b60405180910390f35b6101f6610601565b6040516102039190611a85565b60405180910390f35b61022660048036038101906102219190611aa0565b61060b565b60405161023391906118d5565b60405180910390f35b61025660048036038101906102519190611b29565b61063a565b6040516102639190611b65565b60405180910390f35b61027461065a565b6040516102819190611b65565b60405180910390f35b6102a4600480360381019061029f9190611b80565b61067e565b005b6102ae61069f565b6040516102bb9190611bdc565b60405180910390f35b6102de60048036038101906102d99190611b80565b6106a8565b005b6102fa60048036038101906102f59190611a36565b61072b565b60405161030791906118d5565b60405180910390f35b61032a60048036038101906103259190611a36565b610762565b005b61034660048036038101906103419190611bf7565b610810565b005b610362600480360381019061035d9190611c24565b61084f565b60405161036f9190611a85565b60405180910390f35b610392600480360381019061038d9190611b80565b610897565b60405161039f91906118d5565b60405180910390f35b6103b0610902565b6040516103bd9190611980565b60405180910390f35b6103ce610994565b6040516103db9190611b65565b60405180910390f35b6103fe60048036038101906103f99190611a36565b61099b565b60405161040b91906118d5565b60405180910390f35b61042e60048036038101906104299190611a36565b610a12565b60405161043b91906118d5565b60405180910390f35b61044c610a35565b6040516104599190611b65565b60405180910390f35b61047c60048036038101906104779190611b80565b610a59565b005b61049860048036038101906104939190611c51565b610a7a565b6040516104a59190611a85565b60405180910390f35b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610521575061052082610b01565b5b9050919050565b60606003805461053790611cc0565b80601f016020809104026020016040519081016040528092919081815260200182805461056390611cc0565b80156105b05780601f10610585576101008083540402835291602001916105b0565b820191906000526020600020905b81548152906001019060200180831161059357829003601f168201915b5050505050905090565b6000806105c5610b6b565b90506105d2818585610b73565b600191505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600254905090565b600080610616610b6b565b9050610623858285610d3c565b61062e858585610dc8565b60019150509392505050565b600060056000838152602001908152602001600020600101549050919050565b7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84881565b6106878261063a565b6106908161103e565b61069a8383611052565b505050565b60006012905090565b6106b0610b6b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461071d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161071490611d63565b60405180910390fd5b6107278282611133565b5050565b600080610736610b6b565b90506107578185856107488589610a7a565b6107529190611db2565b610b73565b600191505092915050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a661078c8161103e565b7f0000000000000000000000000000000000000000000000000000000000000000826107b6610601565b6107c09190611db2565b1115610801576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f890611e32565b60405180910390fd5b61080b8383611215565b505050565b7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84861083a8161103e565b61084b610845610b6b565b8361136b565b5050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60006005600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60606004805461091190611cc0565b80601f016020809104026020016040519081016040528092919081815260200182805461093d90611cc0565b801561098a5780601f1061095f5761010080835404028352916020019161098a565b820191906000526020600020905b81548152906001019060200180831161096d57829003601f168201915b5050505050905090565b6000801b81565b6000806109a6610b6b565b905060006109b48286610a7a565b9050838110156109f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109f090611ec4565b60405180910390fd5b610a068286868403610b73565b60019250505092915050565b600080610a1d610b6b565b9050610a2a818585610dc8565b600191505092915050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b610a628261063a565b610a6b8161103e565b610a758383611133565b505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610be2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd990611f56565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c51576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4890611fe8565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610d2f9190611a85565b60405180910390a3505050565b6000610d488484610a7a565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610dc25781811015610db4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dab90612054565b60405180910390fd5b610dc18484848403610b73565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e2e906120e6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ea6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e9d90612178565b60405180910390fd5b610eb1838383611538565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610f37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2e9061220a565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110259190611a85565b60405180910390a361103884848461153d565b50505050565b61104f8161104a610b6b565b611542565b50565b61105c8282610897565b61112f5760016005600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506110d4610b6b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b61113d8282610897565b156112115760006005600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506111b6610b6b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611284576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127b90612276565b60405180910390fd5b61129060008383611538565b80600260008282546112a29190611db2565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516113539190611a85565b60405180910390a36113676000838361153d565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d190612308565b60405180910390fd5b6113e682600083611538565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561146c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114639061239a565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161151f9190611a85565b60405180910390a36115338360008461153d565b505050565b505050565b505050565b61154c8282610897565b6115c357611559816115c7565b6115678360001c60206115f4565b60405160200161157892919061248e565b6040516020818303038152906040526040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ba9190611980565b60405180910390fd5b5050565b60606115ed8273ffffffffffffffffffffffffffffffffffffffff16601460ff166115f4565b9050919050565b60606000600283600261160791906124c8565b6116119190611db2565b67ffffffffffffffff81111561162a5761162961250a565b5b6040519080825280601f01601f19166020018201604052801561165c5781602001600182028036833780820191505090505b5090507f30000000000000000000000000000000000000000000000000000000000000008160008151811061169457611693612539565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f7800000000000000000000000000000000000000000000000000000000000000816001815181106116f8576116f7612539565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600184600261173891906124c8565b6117429190611db2565b90505b60018111156117e2577f3031323334353637383961626364656600000000000000000000000000000000600f86166010811061178457611783612539565b5b1a60f81b82828151811061179b5761179a612539565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c9450806117db90612568565b9050611745565b5060008414611826576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161181d906125dd565b60405180910390fd5b8091505092915050565b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61186a81611835565b811461187557600080fd5b50565b60008135905061188781611861565b92915050565b6000602082840312156118a3576118a2611830565b5b60006118b184828501611878565b91505092915050565b60008115159050919050565b6118cf816118ba565b82525050565b60006020820190506118ea60008301846118c6565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561192a57808201518184015260208101905061190f565b60008484015250505050565b6000601f19601f8301169050919050565b6000611952826118f0565b61195c81856118fb565b935061196c81856020860161190c565b61197581611936565b840191505092915050565b6000602082019050818103600083015261199a8184611947565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006119cd826119a2565b9050919050565b6119dd816119c2565b81146119e857600080fd5b50565b6000813590506119fa816119d4565b92915050565b6000819050919050565b611a1381611a00565b8114611a1e57600080fd5b50565b600081359050611a3081611a0a565b92915050565b60008060408385031215611a4d57611a4c611830565b5b6000611a5b858286016119eb565b9250506020611a6c85828601611a21565b9150509250929050565b611a7f81611a00565b82525050565b6000602082019050611a9a6000830184611a76565b92915050565b600080600060608486031215611ab957611ab8611830565b5b6000611ac7868287016119eb565b9350506020611ad8868287016119eb565b9250506040611ae986828701611a21565b9150509250925092565b6000819050919050565b611b0681611af3565b8114611b1157600080fd5b50565b600081359050611b2381611afd565b92915050565b600060208284031215611b3f57611b3e611830565b5b6000611b4d84828501611b14565b91505092915050565b611b5f81611af3565b82525050565b6000602082019050611b7a6000830184611b56565b92915050565b60008060408385031215611b9757611b96611830565b5b6000611ba585828601611b14565b9250506020611bb6858286016119eb565b9150509250929050565b600060ff82169050919050565b611bd681611bc0565b82525050565b6000602082019050611bf16000830184611bcd565b92915050565b600060208284031215611c0d57611c0c611830565b5b6000611c1b84828501611a21565b91505092915050565b600060208284031215611c3a57611c39611830565b5b6000611c48848285016119eb565b91505092915050565b60008060408385031215611c6857611c67611830565b5b6000611c76858286016119eb565b9250506020611c87858286016119eb565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611cd857607f821691505b602082108103611ceb57611cea611c91565b5b50919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000611d4d602f836118fb565b9150611d5882611cf1565b604082019050919050565b60006020820190508181036000830152611d7c81611d40565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611dbd82611a00565b9150611dc883611a00565b9250828201905080821115611de057611ddf611d83565b5b92915050565b7f4d6178206c696d69740000000000000000000000000000000000000000000000600082015250565b6000611e1c6009836118fb565b9150611e2782611de6565b602082019050919050565b60006020820190508181036000830152611e4b81611e0f565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611eae6025836118fb565b9150611eb982611e52565b604082019050919050565b60006020820190508181036000830152611edd81611ea1565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611f406024836118fb565b9150611f4b82611ee4565b604082019050919050565b60006020820190508181036000830152611f6f81611f33565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611fd26022836118fb565b9150611fdd82611f76565b604082019050919050565b6000602082019050818103600083015261200181611fc5565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b600061203e601d836118fb565b915061204982612008565b602082019050919050565b6000602082019050818103600083015261206d81612031565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006120d06025836118fb565b91506120db82612074565b604082019050919050565b600060208201905081810360008301526120ff816120c3565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006121626023836118fb565b915061216d82612106565b604082019050919050565b6000602082019050818103600083015261219181612155565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006121f46026836118fb565b91506121ff82612198565b604082019050919050565b60006020820190508181036000830152612223816121e7565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000612260601f836118fb565b915061226b8261222a565b602082019050919050565b6000602082019050818103600083015261228f81612253565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b60006122f26021836118fb565b91506122fd82612296565b604082019050919050565b60006020820190508181036000830152612321816122e5565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006123846022836118fb565b915061238f82612328565b604082019050919050565b600060208201905081810360008301526123b381612377565b9050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b60006123fb6017836123ba565b9150612406826123c5565b601782019050919050565b600061241c826118f0565b61242681856123ba565b935061243681856020860161190c565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b60006124786011836123ba565b915061248382612442565b601182019050919050565b6000612499826123ee565b91506124a58285612411565b91506124b08261246b565b91506124bc8284612411565b91508190509392505050565b60006124d382611a00565b91506124de83611a00565b92508282026124ec81611a00565b9150828204841483151761250357612502611d83565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061257382611a00565b91506000820361258657612585611d83565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b60006125c76020836118fb565b91506125d282612591565b602082019050919050565b600060208201905081810360008301526125f6816125ba565b905091905056fea26469706673582212209dd145be5ea1ca8bddd79cd409931f9d670520fe3c2653fa9c870891a0068f2f64736f6c63430008110033