[ { "inputs": [ { "internalType": "address", "name": "_owner", "type": "address" }, { "internalType": "address", "name": "_whitelisting", "type": "address" }, { "internalType": "string", "name": "name", "type": "string" }, { "internalType": "string", "name": "symbol", "type": "string" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "AccessControlBadConfirmation", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bytes32", "name": "neededRole", "type": "bytes32" } ], "name": "AccessControlUnauthorizedAccount", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "allowance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientAllowance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientBalance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "approver", "type": "address" } ], "name": "ERC20InvalidApprover", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "ERC20InvalidReceiver", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "ERC20InvalidSender", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" } ], "name": "ERC20InvalidSpender", "type": "error" }, { "inputs": [], "name": "OnlyAdmin", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "AdminAdded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "AdminRemoved", "type": "event" }, { "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": "ADMIN_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": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "addAdmin", "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": "value", "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": "address", "name": "account", "type": "address" }, { "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": "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": "address", "name": "user", "type": "address" } ], "name": "guardAdmin", "outputs": [], "stateMutability": "view", "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": "user", "type": "address" } ], "name": "isAdmin", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "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": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "removeAdmin", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "callerConfirmation", "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": "value", "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": "value", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "whitelisting", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ]
60806040523480156200001157600080fd5b50604051620026e5380380620026e5833981810160405281019062000037919062000431565b83828281600390816200004b91906200072c565b5080600490816200005d91906200072c565b505050620000756000801b82620000c260201b60201c565b505082600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505062000813565b6000620000d68383620001c660201b60201c565b620001bb5760016005600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620001576200023160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a460019050620001c0565b600090505b92915050565b60006005600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600033905090565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200027a826200024d565b9050919050565b6200028c816200026d565b81146200029857600080fd5b50565b600081519050620002ac8162000281565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200030782620002bc565b810181811067ffffffffffffffff82111715620003295762000328620002cd565b5b80604052505050565b60006200033e62000239565b90506200034c8282620002fc565b919050565b600067ffffffffffffffff8211156200036f576200036e620002cd565b5b6200037a82620002bc565b9050602081019050919050565b60005b83811015620003a75780820151818401526020810190506200038a565b60008484015250505050565b6000620003ca620003c48462000351565b62000332565b905082815260208101848484011115620003e957620003e8620002b7565b5b620003f684828562000387565b509392505050565b600082601f830112620004165762000415620002b2565b5b815162000428848260208601620003b3565b91505092915050565b600080600080608085870312156200044e576200044d62000243565b5b60006200045e878288016200029b565b945050602062000471878288016200029b565b935050604085015167ffffffffffffffff81111562000495576200049462000248565b5b620004a387828801620003fe565b925050606085015167ffffffffffffffff811115620004c757620004c662000248565b5b620004d587828801620003fe565b91505092959194509250565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200053457607f821691505b6020821081036200054a5762000549620004ec565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620005b47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000575565b620005c0868362000575565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006200060d620006076200060184620005d8565b620005e2565b620005d8565b9050919050565b6000819050919050565b6200062983620005ec565b62000641620006388262000614565b84845462000582565b825550505050565b600090565b6200065862000649565b620006658184846200061e565b505050565b5b818110156200068d57620006816000826200064e565b6001810190506200066b565b5050565b601f821115620006dc57620006a68162000550565b620006b18462000565565b81016020851015620006c1578190505b620006d9620006d08562000565565b8301826200066a565b50505b505050565b600082821c905092915050565b60006200070160001984600802620006e1565b1980831691505092915050565b60006200071c8383620006ee565b9150826002028217905092915050565b6200073782620004e1565b67ffffffffffffffff811115620007535762000752620002cd565b5b6200075f82546200051b565b6200076c82828562000691565b600060209050601f831160018114620007a457600084156200078f578287015190505b6200079b85826200070e565b8655506200080b565b601f198416620007b48662000550565b60005b82811015620007de57848901518255600182019150602085019450602081019050620007b7565b86831015620007fe5784890151620007fa601f891682620006ee565b8355505b6001600288020188555050505b505050505050565b611ec280620008236000396000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c8063520c5828116100c35780639dc29fac1161007c5780639dc29fac146103ed578063a217fddf14610409578063a9059cbb14610427578063d547741f14610457578063dd62ed3e14610473578063e0b60c65146104a357610158565b8063520c582814610317578063704802751461033557806370a082311461035157806375b238fc1461038157806391d148541461039f57806395d89b41146103cf57610158565b8063248a9ca311610115578063248a9ca31461024557806324d7806c146102755780632f2ff15d146102a5578063313ce567146102c157806336568abe146102df57806340c10f19146102fb57610158565b806301ffc9a71461015d57806306fdde031461018d578063095ea7b3146101ab5780631785f53c146101db57806318160ddd146101f757806323b872dd14610215575b600080fd5b6101776004803603810190610172919061190f565b6104bf565b6040516101849190611957565b60405180910390f35b610195610539565b6040516101a29190611a02565b60405180910390f35b6101c560048036038101906101c09190611ab8565b6105cb565b6040516101d29190611957565b60405180910390f35b6101f560048036038101906101f09190611af8565b6105ee565b005b6101ff6106b4565b60405161020c9190611b34565b60405180910390f35b61022f600480360381019061022a9190611b4f565b6106be565b60405161023c9190611957565b60405180910390f35b61025f600480360381019061025a9190611bd8565b61081f565b60405161026c9190611c14565b60405180910390f35b61028f600480360381019061028a9190611af8565b61083f565b60405161029c9190611957565b60405180910390f35b6102bf60048036038101906102ba9190611c2f565b610891565b005b6102c96108b3565b6040516102d69190611c8b565b60405180910390f35b6102f960048036038101906102f49190611c2f565b6108bc565b005b61031560048036038101906103109190611ab8565b610937565b005b61031f6109ed565b60405161032c9190611cb5565b60405180910390f35b61034f600480360381019061034a9190611af8565b610a13565b005b61036b60048036038101906103669190611af8565b610aa4565b6040516103789190611b34565b60405180910390f35b610389610aec565b6040516103969190611c14565b60405180910390f35b6103b960048036038101906103b49190611c2f565b610b10565b6040516103c69190611957565b60405180910390f35b6103d7610b7b565b6040516103e49190611a02565b60405180910390f35b61040760048036038101906104029190611ab8565b610c0d565b005b610411610cc3565b60405161041e9190611c14565b60405180910390f35b610441600480360381019061043c9190611ab8565b610cca565b60405161044e9190611957565b60405180910390f35b610471600480360381019061046c9190611c2f565b610e2c565b005b61048d60048036038101906104889190611cd0565b610e4e565b60405161049a9190611b34565b60405180910390f35b6104bd60048036038101906104b89190611af8565b610ed5565b005b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610532575061053182610f5c565b5b9050919050565b60606003805461054890611d3f565b80601f016020809104026020016040519081016040528092919081815260200182805461057490611d3f565b80156105c15780601f10610596576101008083540402835291602001916105c1565b820191906000526020600020905b8154815290600101906020018083116105a457829003601f168201915b5050505050905090565b6000806105d6610fc6565b90506105e3818585610fce565b600191505092915050565b6000801b6105fb81610fe0565b6106257fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177583610b10565b156106b0576106547fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177583610ff4565b503373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fdb9d5d31320daf5bc7181d565b6da4d12e30f0f4d5aa324a992426c14a1d19ce60405160405180910390a35b5050565b6000600254905090565b600033600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ba137713826040518263ffffffff1660e01b815260040161071c9190611cb5565b602060405180830381865afa158015610739573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061075d9190611d9c565b5083600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ba137713826040518263ffffffff1660e01b81526004016107ba9190611cb5565b602060405180830381865afa1580156107d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107fb9190611d9c565b506108078633866110e7565b61081286868661117b565b6001925050509392505050565b600060056000838152602001908152602001600020600101549050919050565b60008061086c7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177584610b10565b9050600061087d6000801b85610b10565b905081806108885750805b92505050919050565b61089a8261081f565b6108a381610fe0565b6108ad838361126f565b50505050565b60006012905090565b6108c4610fc6565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610928576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6109328282610ff4565b505050565b61094033610ed5565b81600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ba137713826040518263ffffffff1660e01b815260040161099c9190611cb5565b602060405180830381865afa1580156109b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109dd9190611d9c565b506109e88383611361565b505050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610a1c33610ed5565b610a467fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217758261126f565b503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fbf3f493c772c8c283fd124432c2d0f539ab343faa04258fe88e52912d36b102b60405160405180910390a350565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177581565b60006005600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b606060048054610b8a90611d3f565b80601f0160208091040260200160405190810160405280929190818152602001828054610bb690611d3f565b8015610c035780601f10610bd857610100808354040283529160200191610c03565b820191906000526020600020905b815481529060010190602001808311610be657829003601f168201915b5050505050905090565b610c1633610ed5565b81600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ba137713826040518263ffffffff1660e01b8152600401610c729190611cb5565b602060405180830381865afa158015610c8f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cb39190611d9c565b50610cbe83836113e3565b505050565b6000801b81565b600033600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ba137713826040518263ffffffff1660e01b8152600401610d289190611cb5565b602060405180830381865afa158015610d45573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d699190611d9c565b5083600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ba137713826040518263ffffffff1660e01b8152600401610dc69190611cb5565b602060405180830381865afa158015610de3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e079190611d9c565b506000610e12610fc6565b9050610e1f81878761117b565b6001935050505092915050565b610e358261081f565b610e3e81610fe0565b610e488383610ff4565b50505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000610f017fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177583610b10565b90506000610f126000801b84610b10565b905081158015610f20575080155b15610f57576040517f4755657900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b610fdb8383836001611465565b505050565b610ff181610fec610fc6565b61163c565b50565b60006110008383610b10565b156110dc5760006005600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611079610fc6565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a4600190506110e1565b600090505b92915050565b60006110f38484610e4e565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146111755781811015611165578281836040517ffb8f41b200000000000000000000000000000000000000000000000000000000815260040161115c93929190611dc9565b60405180910390fd5b61117484848484036000611465565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036111ed5760006040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081526004016111e49190611cb5565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361125f5760006040517fec442f050000000000000000000000000000000000000000000000000000000081526004016112569190611cb5565b60405180910390fd5b61126a83838361168d565b505050565b600061127b8383610b10565b6113565760016005600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506112f3610fc6565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001905061135b565b600090505b92915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113d35760006040517fec442f050000000000000000000000000000000000000000000000000000000081526004016113ca9190611cb5565b60405180910390fd5b6113df6000838361168d565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036114555760006040517f96c6fd1e00000000000000000000000000000000000000000000000000000000815260040161144c9190611cb5565b60405180910390fd5b6114618260008361168d565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036114d75760006040517fe602df050000000000000000000000000000000000000000000000000000000081526004016114ce9190611cb5565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036115495760006040517f94280d620000000000000000000000000000000000000000000000000000000081526004016115409190611cb5565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508015611636578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161162d9190611b34565b60405180910390a35b50505050565b6116468282610b10565b6116895780826040517fe2517d3f000000000000000000000000000000000000000000000000000000008152600401611680929190611e00565b60405180910390fd5b5050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036116df5780600260008282546116d39190611e58565b925050819055506117b2565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561176b578381836040517fe450d38c00000000000000000000000000000000000000000000000000000000815260040161176293929190611dc9565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036117fb5780600260008282540392505081905550611848565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118a59190611b34565b60405180910390a3505050565b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6118ec816118b7565b81146118f757600080fd5b50565b600081359050611909816118e3565b92915050565b600060208284031215611925576119246118b2565b5b6000611933848285016118fa565b91505092915050565b60008115159050919050565b6119518161193c565b82525050565b600060208201905061196c6000830184611948565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156119ac578082015181840152602081019050611991565b60008484015250505050565b6000601f19601f8301169050919050565b60006119d482611972565b6119de818561197d565b93506119ee81856020860161198e565b6119f7816119b8565b840191505092915050565b60006020820190508181036000830152611a1c81846119c9565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611a4f82611a24565b9050919050565b611a5f81611a44565b8114611a6a57600080fd5b50565b600081359050611a7c81611a56565b92915050565b6000819050919050565b611a9581611a82565b8114611aa057600080fd5b50565b600081359050611ab281611a8c565b92915050565b60008060408385031215611acf57611ace6118b2565b5b6000611add85828601611a6d565b9250506020611aee85828601611aa3565b9150509250929050565b600060208284031215611b0e57611b0d6118b2565b5b6000611b1c84828501611a6d565b91505092915050565b611b2e81611a82565b82525050565b6000602082019050611b496000830184611b25565b92915050565b600080600060608486031215611b6857611b676118b2565b5b6000611b7686828701611a6d565b9350506020611b8786828701611a6d565b9250506040611b9886828701611aa3565b9150509250925092565b6000819050919050565b611bb581611ba2565b8114611bc057600080fd5b50565b600081359050611bd281611bac565b92915050565b600060208284031215611bee57611bed6118b2565b5b6000611bfc84828501611bc3565b91505092915050565b611c0e81611ba2565b82525050565b6000602082019050611c296000830184611c05565b92915050565b60008060408385031215611c4657611c456118b2565b5b6000611c5485828601611bc3565b9250506020611c6585828601611a6d565b9150509250929050565b600060ff82169050919050565b611c8581611c6f565b82525050565b6000602082019050611ca06000830184611c7c565b92915050565b611caf81611a44565b82525050565b6000602082019050611cca6000830184611ca6565b92915050565b60008060408385031215611ce757611ce66118b2565b5b6000611cf585828601611a6d565b9250506020611d0685828601611a6d565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611d5757607f821691505b602082108103611d6a57611d69611d10565b5b50919050565b611d798161193c565b8114611d8457600080fd5b50565b600081519050611d9681611d70565b92915050565b600060208284031215611db257611db16118b2565b5b6000611dc084828501611d87565b91505092915050565b6000606082019050611dde6000830186611ca6565b611deb6020830185611b25565b611df86040830184611b25565b949350505050565b6000604082019050611e156000830185611ca6565b611e226020830184611c05565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611e6382611a82565b9150611e6e83611a82565b9250828201905080821115611e8657611e85611e29565b5b9291505056fea26469706673582212206ddb184aab7e3fb7b2a8bba9ae2e5f86dcb0196c22cbaa91a8f79641182b9c9764736f6c63430008180033000000000000000000000000967fd0348828bdeea50e970fa3d7c769e27b6823000000000000000000000000af28b31596f5ca44f0699d46e53668822a36f92e000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000b50726f6a6563745465737400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000055054455354000000000000000000000000000000000000000000000000000000
0x000000000000000000000000967fd0348828bdeea50e970fa3d7c769e27b6823000000000000000000000000af28b31596f5ca44f0699d46e53668822a36f92e000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000b50726f6a6563745465737400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000055054455354000000000000000000000000000000000000000000000000000000
----Decoded View------------Arg [0] : _owner (address): 0x967Fd0348828BdeEa50E970Fa3d7C769E27b6823Arg [1] : _whitelisting (address): 0xaf28B31596F5ca44F0699d46e53668822A36F92EArg [2] : name (string): ProjectTestArg [3] : symbol (string): PTEST
----Encoded View------------Arg [0] : 0x000000000000000000000000967fd0348828bdeea50e970fa3d7c769e27b6823Arg [1] : 0x000000000000000000000000af28b31596f5ca44f0699d46e53668822a36f92eArg [2] : 0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000b50726f6a65637454657374000000000000000000000000000000000000000000Arg [3] : 0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000055054455354000000000000000000000000000000000000000000000000000000