[ { "inputs": [ { "internalType": "string", "name": "name", "type": "string" }, { "internalType": "string", "name": "symbol", "type": "string" }, { "internalType": "uint8", "name": "decimals_", "type": "uint8" }, { "internalType": "uint256", "name": "maxSupply_", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "uint256", "name": "supplyAfterMint", "type": "uint256" } ], "name": "MaxSupplyExceeded", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "SenderNotBurner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "SenderNotMinter", "type": "error" }, { "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": "address", "name": "burner", "type": "address" } ], "name": "BurnAccessGranted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "burner", "type": "address" } ], "name": "BurnAccessRevoked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "minter", "type": "address" } ], "name": "MintAccessGranted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "minter", "type": "address" } ], "name": "MintAccessRevoked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" } ], "name": "OwnershipTransferRequested", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" } ], "name": "OwnershipTransferred", "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" }, { "indexed": false, "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "Transfer", "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": "acceptOwnership", "outputs": [], "stateMutability": "nonpayable", "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": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burnFrom", "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": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseApproval", "outputs": [ { "internalType": "bool", "name": "success", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getBurners", "outputs": [ { "internalType": "address[]", "name": "", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getMinters", "outputs": [ { "internalType": "address[]", "name": "", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "burner", "type": "address" } ], "name": "grantBurnRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "burnAndMinter", "type": "address" } ], "name": "grantMintAndBurnRoles", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "minter", "type": "address" } ], "name": "grantMintRole", "outputs": [], "stateMutability": "nonpayable", "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": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "type": "uint256" } ], "name": "increaseApproval", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "burner", "type": "address" } ], "name": "isBurner", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "minter", "type": "address" } ], "name": "isMinter", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "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": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "burner", "type": "address" } ], "name": "revokeBurnRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "minter", "type": "address" } ], "name": "revokeMintRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "pure", "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": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "transferAndCall", "outputs": [ { "internalType": "bool", "name": "success", "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" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60c06040523480156200001157600080fd5b5060405162001e1a38038062001e1a83398101604081905262000034916200027a565b338060008686818160036200004a838262000396565b50600462000059828262000396565b5050506001600160a01b0384169150620000bc90505760405162461bcd60e51b815260206004820152601860248201527f43616e6e6f7420736574206f776e657220746f207a65726f000000000000000060448201526064015b60405180910390fd5b600580546001600160a01b0319166001600160a01b0384811691909117909155811615620000ef57620000ef8162000106565b50505060ff90911660805260a05250620004629050565b336001600160a01b03821603620001605760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c660000000000000000006044820152606401620000b3565b600680546001600160a01b0319166001600160a01b03838116918217909255600554604051919216907fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae127890600090a350565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620001da57600080fd5b81516001600160401b0380821115620001f757620001f7620001b2565b604051601f8301601f19908116603f01168101908282118183101715620002225762000222620001b2565b81604052838152602092508660208588010111156200024057600080fd5b600091505b8382101562000264578582018301518183018401529082019062000245565b6000602085830101528094505050505092915050565b600080600080608085870312156200029157600080fd5b84516001600160401b0380821115620002a957600080fd5b620002b788838901620001c8565b95506020870151915080821115620002ce57600080fd5b50620002dd87828801620001c8565b935050604085015160ff81168114620002f557600080fd5b6060959095015193969295505050565b600181811c908216806200031a57607f821691505b6020821081036200033b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111562000391576000816000526020600020601f850160051c810160208610156200036c5750805b601f850160051c820191505b818110156200038d5782815560010162000378565b5050505b505050565b81516001600160401b03811115620003b257620003b2620001b2565b620003ca81620003c3845462000305565b8462000341565b602080601f831160018114620004025760008415620003e95750858301515b600019600386901b1c1916600185901b1785556200038d565b600085815260208120601f198616915b82811015620004335788860151825594840194600190910190840162000412565b5085821015620004525787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a051611984620004966000396000818161042d015281816107ee01526108180152600061027101526119846000f3fe608060405234801561001057600080fd5b50600436106101f05760003560e01c806379cc67901161010f578063c2e3273d116100a2578063d73dd62311610071578063d73dd62314610451578063dd62ed3e14610464578063f2fde38b1461049d578063f81094f3146104b057600080fd5b8063c2e3273d146103f2578063c630948d14610405578063c64d0ebc14610418578063d5abeb011461042b57600080fd5b80639dc29fac116100de5780639dc29fac146103a6578063a457c2d7146103b9578063a9059cbb146103cc578063aa271e1a146103df57600080fd5b806379cc67901461036857806386fe8b431461037b5780638da5cb5b1461038357806395d89b411461039e57600080fd5b806340c10f19116101875780636618846311610156578063661884631461030f5780636b32810b1461032257806370a082311461033757806379ba50971461036057600080fd5b806340c10f19146102c157806342966c68146102d65780634334614a146102e95780634f5632f8146102fc57600080fd5b806323b872dd116101c357806323b872dd14610257578063313ce5671461026a578063395093511461029b5780634000aea0146102ae57600080fd5b806301ffc9a7146101f557806306fdde031461021d578063095ea7b31461023257806318160ddd14610245575b600080fd5b6102086102033660046115c0565b6104c3565b60405190151581526020015b60405180910390f35b610225610594565b6040516102149190611630565b61020861024036600461165f565b610626565b6002545b604051908152602001610214565b610208610265366004611689565b61063e565b60405160ff7f0000000000000000000000000000000000000000000000000000000000000000168152602001610214565b6102086102a936600461165f565b610662565b6102086102bc3660046116db565b6106a1565b6102d46102cf36600461165f565b610790565b005b6102d46102e43660046117a6565b6108aa565b6102086102f73660046117bf565b6108de565b6102d461030a3660046117bf565b6108eb565b61020861031d36600461165f565b61093a565b61032a61094d565b60405161021491906117da565b6102496103453660046117bf565b6001600160a01b031660009081526020819052604090205490565b6102d461095e565b6102d461037636600461165f565b610a20565b61032a610a56565b6005546040516001600160a01b039091168152602001610214565b610225610a62565b6102d46103b436600461165f565b610a71565b6102086103c736600461165f565b610a7b565b6102086103da36600461165f565b610b25565b6102086103ed3660046117bf565b610b33565b6102d46104003660046117bf565b610b40565b6102d46104133660046117bf565b610b8f565b6102d46104263660046117bf565b610b9d565b7f0000000000000000000000000000000000000000000000000000000000000000610249565b6102d461045f36600461165f565b610bec565b610249610472366004611827565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6102d46104ab3660046117bf565b610bf6565b6102d46104be3660046117bf565b610c07565b60006001600160e01b031982167f36372b0700000000000000000000000000000000000000000000000000000000148061052657506001600160e01b031982167f4000aea000000000000000000000000000000000000000000000000000000000145b8061055a57506001600160e01b031982167fe6599b4d00000000000000000000000000000000000000000000000000000000145b8061058e57506001600160e01b031982167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b6060600380546105a39061185a565b80601f01602080910402602001604051908101604052809291908181526020018280546105cf9061185a565b801561061c5780601f106105f15761010080835404028352916020019161061c565b820191906000526020600020905b8154815290600101906020018083116105ff57829003601f168201915b5050505050905090565b600033610634818585610c56565b5060019392505050565b60003361064c858285610c7d565b610657858585610d09565b506001949350505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190610634908290869061069c9087906118aa565b610c56565b60006106ad8484610b25565b50836001600160a01b0316336001600160a01b03167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c1685856040516106f39291906118bd565b60405180910390a36001600160a01b0384163b15610634576040517fa4c0ed360000000000000000000000000000000000000000000000000000000081526001600160a01b0385169063a4c0ed3690610754903390879087906004016118de565b600060405180830381600087803b15801561076e57600080fd5b505af1158015610782573d6000803e3d6000fd5b505050505060019392505050565b61079933610b33565b6107d6576040517fe2c8c9d50000000000000000000000000000000000000000000000000000000081523360048201526024015b60405180910390fd5b81306001600160a01b038216036107ec57600080fd5b7f00000000000000000000000000000000000000000000000000000000000000001580159061084d57507f00000000000000000000000000000000000000000000000000000000000000008261084160025490565b61084b91906118aa565b115b1561089b578161085c60025490565b61086691906118aa565b6040517fcbbf11130000000000000000000000000000000000000000000000000000000081526004016107cd91815260200190565b6108a58383610d2a565b505050565b6108b3336108de565b6108d25760405163c820b10b60e01b81523360048201526024016107cd565b6108db81610de9565b50565b600061058e600983610df3565b6108f3610e15565b6108fe600982610e71565b156108db576040516001600160a01b038216907f0a675452746933cefe3d74182e78db7afe57ba60eaa4234b5d85e9aa41b0610c90600090a250565b60006109468383610a7b565b9392505050565b60606109596007610e86565b905090565b6006546001600160a01b031633146109b85760405162461bcd60e51b815260206004820152601660248201527f4d7573742062652070726f706f736564206f776e65720000000000000000000060448201526064016107cd565b6005805473ffffffffffffffffffffffffffffffffffffffff19808216339081179093556006805490911690556040516001600160a01b03909116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a350565b610a29336108de565b610a485760405163c820b10b60e01b81523360048201526024016107cd565b610a528282610e93565b5050565b60606109596009610e86565b6060600480546105a39061185a565b610a528282610a20565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919083811015610b185760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084016107cd565b6106578286868403610c56565b600033610634818585610d09565b600061058e600783610df3565b610b48610e15565b610b53600782610ea8565b156108db576040516001600160a01b038216907fe46fef8bbff1389d9010703cf8ebb363fb3daf5bf56edc27080b67bc8d9251ea90600090a250565b610b9881610b40565b6108db815b610ba5610e15565b610bb0600982610ea8565b156108db576040516001600160a01b038216907f92308bb7573b2a3d17ddb868b39d8ebec433f3194421abc22d084f89658c9bad90600090a250565b6108a58282610662565b610bfe610e15565b6108db81610ebd565b610c0f610e15565b610c1a600782610e71565b156108db576040516001600160a01b038216907fed998b960f6340d045f620c119730f7aa7995e7425c2401d3a5b64ff998a59e990600090a250565b81306001600160a01b03821603610c6c57600080fd5b610c77848484610f74565b50505050565b6001600160a01b038381166000908152600160209081526040808320938616835292905220546000198114610c775781811015610cfc5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016107cd565b610c778484848403610c56565b81306001600160a01b03821603610d1f57600080fd5b610c778484846110cc565b6001600160a01b038216610d805760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016107cd565b8060026000828254610d9291906118aa565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6108db33826112b9565b6001600160a01b03811660009081526001830160205260408120541515610946565b6005546001600160a01b03163314610e6f5760405162461bcd60e51b815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e65720000000000000000000060448201526064016107cd565b565b6000610946836001600160a01b038416611422565b6060600061094683611515565b610e9e823383610c7d565b610a5282826112b9565b6000610946836001600160a01b038416611571565b336001600160a01b03821603610f155760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c6600000000000000000060448201526064016107cd565b6006805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03838116918217909255600554604051919216907fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae127890600090a350565b6001600160a01b038316610fef5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016107cd565b6001600160a01b03821661106b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016107cd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166111485760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016107cd565b6001600160a01b0382166111c45760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016107cd565b6001600160a01b038316600090815260208190526040902054818110156112535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016107cd565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610c77565b6001600160a01b0382166113355760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016107cd565b6001600160a01b038216600090815260208190526040902054818110156113c45760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016107cd565b6001600160a01b0383166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b6000818152600183016020526040812054801561150b57600061144660018361190f565b855490915060009061145a9060019061190f565b90508181146114bf57600086600001828154811061147a5761147a611922565b906000526020600020015490508087600001848154811061149d5761149d611922565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806114d0576114d0611938565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061058e565b600091505061058e565b60608160000180548060200260200160405190810160405280929190818152602001828054801561156557602002820191906000526020600020905b815481526020019060010190808311611551575b50505050509050919050565b60008181526001830160205260408120546115b85750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561058e565b50600061058e565b6000602082840312156115d257600080fd5b81356001600160e01b03198116811461094657600080fd5b6000815180845260005b81811015611610576020818501810151868301820152016115f4565b506000602082860101526020601f19601f83011685010191505092915050565b60208152600061094660208301846115ea565b80356001600160a01b038116811461165a57600080fd5b919050565b6000806040838503121561167257600080fd5b61167b83611643565b946020939093013593505050565b60008060006060848603121561169e57600080fd5b6116a784611643565b92506116b560208501611643565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156116f057600080fd5b6116f984611643565b925060208401359150604084013567ffffffffffffffff8082111561171d57600080fd5b818601915086601f83011261173157600080fd5b813581811115611743576117436116c5565b604051601f8201601f19908116603f0116810190838211818310171561176b5761176b6116c5565b8160405282815289602084870101111561178457600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156117b857600080fd5b5035919050565b6000602082840312156117d157600080fd5b61094682611643565b6020808252825182820181905260009190848201906040850190845b8181101561181b5783516001600160a01b0316835292840192918401916001016117f6565b50909695505050505050565b6000806040838503121561183a57600080fd5b61184383611643565b915061185160208401611643565b90509250929050565b600181811c9082168061186e57607f821691505b60208210810361188e57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561058e5761058e611894565b8281526040602082015260006118d660408301846115ea565b949350505050565b6001600160a01b038416815282602082015260606040820152600061190660608301846115ea565b95945050505050565b8181038181111561058e5761058e611894565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfea26469706673582212204aa38b1e6e7c564154e55bbde34a9ad58572818580f88fadf4c4b6cf2865fb9d64736f6c63430008180033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007426e4d2061656d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006426e4d61656d0000000000000000000000000000000000000000000000000000