[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "address", "name": "target", "type": "address" } ], "name": "AddressEmptyCode", "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": "FailedInnerCall", "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": "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": "BLAST", "outputs": [ { "internalType": "contract IBlast", "name": "", "type": "address" } ], "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": "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": "recipient", "type": "address" }, { "internalType": "bool", "name": "isMax", "type": "bool" } ], "name": "claimGas", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "manager", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes[]", "name": "data", "type": "bytes[]" } ], "name": "multicall", "outputs": [ { "internalType": "bytes[]", "name": "results", "type": "bytes[]" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "blastGas", "type": "address" } ], "name": "setGasMode", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_manager", "type": "address" } ], "name": "setManager", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "blastPoints", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "setPointsOperator", "outputs": [], "stateMutability": "nonpayable", "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" } ]
60806040523480156200001157600080fd5b50604051806040016040528060088152602001675061727469636c6560c01b8152506040518060400160405280600381526020016250544360e81b815250816003908162000060919062000337565b5060046200006f828262000337565b5050600580546001600160a01b031916331790555060408051634e606c4760e01b8152905173430000000000000000000000000000000000000291634e606c4791600480830192600092919082900301818387803b158015620000d157600080fd5b505af1158015620000e6573d6000803e3d6000fd5b5050505062000115336012600a620000ff919062000518565b6200010f90630bebc2006200052d565b6200011b565b6200055d565b6001600160a01b0382166200014b5760405163ec442f0560e01b8152600060048201526024015b60405180910390fd5b62000159600083836200015d565b5050565b6001600160a01b0383166200018c57806002600082825462000180919062000547565b90915550620002009050565b6001600160a01b03831660009081526020819052604090205481811015620001e15760405163391434e360e21b81526001600160a01b0385166004820152602481018290526044810183905260640162000142565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b0382166200021e576002805482900390556200023d565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200028391815260200190565b60405180910390a3505050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620002bb57607f821691505b602082108103620002dc57634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111562000332576000816000526020600020601f850160051c810160208610156200030d5750805b601f850160051c820191505b818110156200032e5782815560010162000319565b5050505b505050565b81516001600160401b0381111562000353576200035362000290565b6200036b81620003648454620002a6565b84620002e2565b602080601f831160018114620003a357600084156200038a5750858301515b600019600386901b1c1916600185901b1785556200032e565b600085815260208120601f198616915b82811015620003d457888601518255948401946001909101908401620003b3565b5085821015620003f35787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200045a5781600019048211156200043e576200043e62000403565b808516156200044c57918102915b93841c93908002906200041e565b509250929050565b600082620004735750600162000512565b81620004825750600062000512565b81600181146200049b5760028114620004a657620004c6565b600191505062000512565b60ff841115620004ba57620004ba62000403565b50506001821b62000512565b5060208310610133831016604e8410600b8410161715620004eb575081810a62000512565b620004f7838362000419565b80600019048211156200050e576200050e62000403565b0290505b92915050565b600062000526838362000462565b9392505050565b808202811582820484141762000512576200051262000403565b8082018082111562000512576200051262000403565b611160806200056d6000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c806395d89b4111610097578063c8b11dfe11610066578063c8b11dfe14610239578063d0ebdbe71461024c578063dd62ed3e1461025f578063e220831d1461029857600080fd5b806395d89b41146101e357806397d75776146101eb578063a9059cbb14610206578063ac9650d81461021957600080fd5b80632d195bd2116100d35780632d195bd21461016b578063313ce56714610180578063481c6a751461018f57806370a08231146101ba57600080fd5b806306fdde0314610105578063095ea7b31461012357806318160ddd1461014657806323b872dd14610158575b600080fd5b61010d6102ab565b60405161011a9190610dbd565b60405180910390f35b610136610131366004610dec565b61033d565b604051901515815260200161011a565b6002545b60405190815260200161011a565b610136610166366004610e16565b610357565b61017e610179366004610e52565b61037d565b005b6040516012815260200161011a565b6005546101a2906001600160a01b031681565b6040516001600160a01b03909116815260200161011a565b61014a6101c8366004610e52565b6001600160a01b031660009081526020819052604090205490565b61010d610432565b6101a273430000000000000000000000000000000000000281565b610136610214366004610dec565b610441565b61022c610227366004610e6d565b61044f565b60405161011a9190610ee2565b61014a610247366004610f64565b610537565b61017e61025a366004610e52565b61069e565b61014a61026d366004610fa0565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61017e6102a6366004610fa0565b6107ae565b6060600380546102ba90610fd3565b80601f01602080910402602001604051908101604052809291908181526020018280546102e690610fd3565b80156103335780601f1061030857610100808354040283529160200191610333565b820191906000526020600020905b81548152906001019060200180831161031657829003601f168201915b5050505050905090565b60003361034b818585610880565b60019150505b92915050565b600033610365858285610892565b610370858585610947565b60019150505b9392505050565b6005546001600160a01b031633146103dc5760405162461bcd60e51b815260206004820152601260248201527f426c6173743a206e6f74206d616e61676572000000000000000000000000000060448201526064015b60405180910390fd5b806001600160a01b0316634e606c476040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561041757600080fd5b505af115801561042b573d6000803e3d6000fd5b5050505050565b6060600480546102ba90610fd3565b60003361034b818585610947565b6040805160008152602081019091526060908267ffffffffffffffff81111561047a5761047a611023565b6040519080825280602002602001820160405280156104ad57816020015b60608152602001906001900390816104985790505b50915060005b8381101561052f5761050a308686848181106104d1576104d1611039565b90506020028101906104e3919061104f565b856040516020016104f6939291906110bb565b6040516020818303038152906040526109d8565b83828151811061051c5761051c611039565b60209081029190910101526001016104b3565b505092915050565b6005546000906001600160a01b031633146105945760405162461bcd60e51b815260206004820152601260248201527f426c6173743a206e6f74206d616e61676572000000000000000000000000000060448201526064016103d3565b811561063f576040517f662aa11d0000000000000000000000000000000000000000000000000000000081523060048201526001600160a01b03841660248201527343000000000000000000000000000000000000029063662aa11d906044015b6020604051808303816000875af1158015610614573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063891906110e2565b9050610351565b6040517f954fa5ee0000000000000000000000000000000000000000000000000000000081523060048201526001600160a01b03841660248201527343000000000000000000000000000000000000029063954fa5ee906044016105f5565b6005546001600160a01b031633146106f85760405162461bcd60e51b815260206004820152601260248201527f426c6173743a206e6f74206d616e61676572000000000000000000000000000060448201526064016103d3565b6001600160a01b0381166107745760405162461bcd60e51b815260206004820152602360248201527f426c6173744d616e616765723a20696e76616c696420746f6b656e206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016103d3565b600580547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b6005546001600160a01b031633146108085760405162461bcd60e51b815260206004820152601260248201527f426c6173743a206e6f74206d616e61676572000000000000000000000000000060448201526064016103d3565b6040517f36b91f2b0000000000000000000000000000000000000000000000000000000081526001600160a01b0382811660048301528316906336b91f2b90602401600060405180830381600087803b15801561086457600080fd5b505af1158015610878573d6000803e3d6000fd5b505050505050565b61088d8383836001610a4e565b505050565b6001600160a01b038381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146109415781811015610932576040517ffb8f41b20000000000000000000000000000000000000000000000000000000081526001600160a01b038416600482015260248101829052604481018390526064016103d3565b61094184848484036000610a4e565b50505050565b6001600160a01b03831661098a576040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600060048201526024016103d3565b6001600160a01b0382166109cd576040517fec442f05000000000000000000000000000000000000000000000000000000008152600060048201526024016103d3565b61088d838383610b55565b6060600080846001600160a01b0316846040516109f591906110fb565b600060405180830381855af49150503d8060008114610a30576040519150601f19603f3d011682016040523d82523d6000602084013e610a35565b606091505b5091509150610a45858383610c98565b95945050505050565b6001600160a01b038416610a91576040517fe602df05000000000000000000000000000000000000000000000000000000008152600060048201526024016103d3565b6001600160a01b038316610ad4576040517f94280d62000000000000000000000000000000000000000000000000000000008152600060048201526024016103d3565b6001600160a01b038085166000908152600160209081526040808320938716835292905220829055801561094157826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610b4791815260200190565b60405180910390a350505050565b6001600160a01b038316610b80578060026000828254610b759190611117565b90915550610c0b9050565b6001600160a01b03831660009081526020819052604090205481811015610bec576040517fe450d38c0000000000000000000000000000000000000000000000000000000081526001600160a01b038516600482015260248101829052604481018390526064016103d3565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b038216610c2757600280548290039055610c46565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c8b91815260200190565b60405180910390a3505050565b606082610cad57610ca882610d0d565b610376565b8151158015610cc457506001600160a01b0384163b155b15610d06576040517f9996b3150000000000000000000000000000000000000000000000000000000081526001600160a01b03851660048201526024016103d3565b5080610376565b805115610d1d5780518082602001fd5b6040517f1425ea4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b83811015610d6a578181015183820152602001610d52565b50506000910152565b60008151808452610d8b816020860160208601610d4f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006103766020830184610d73565b80356001600160a01b0381168114610de757600080fd5b919050565b60008060408385031215610dff57600080fd5b610e0883610dd0565b946020939093013593505050565b600080600060608486031215610e2b57600080fd5b610e3484610dd0565b9250610e4260208501610dd0565b9150604084013590509250925092565b600060208284031215610e6457600080fd5b61037682610dd0565b60008060208385031215610e8057600080fd5b823567ffffffffffffffff80821115610e9857600080fd5b818501915085601f830112610eac57600080fd5b813581811115610ebb57600080fd5b8660208260051b8501011115610ed057600080fd5b60209290920196919550909350505050565b600060208083016020845280855180835260408601915060408160051b87010192506020870160005b82811015610f57577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0888603018452610f45858351610d73565b94509285019290850190600101610f0b565b5092979650505050505050565b60008060408385031215610f7757600080fd5b610f8083610dd0565b915060208301358015158114610f9557600080fd5b809150509250929050565b60008060408385031215610fb357600080fd5b610fbc83610dd0565b9150610fca60208401610dd0565b90509250929050565b600181811c90821680610fe757607f821691505b60208210810361100757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe184360301811261108457600080fd5b83018035915067ffffffffffffffff82111561109f57600080fd5b6020019150368190038213156110b457600080fd5b9250929050565b8284823760008382016000815283516110d8818360208801610d4f565b0195945050505050565b6000602082840312156110f457600080fd5b5051919050565b6000825161110d818460208701610d4f565b9190910192915050565b808201808211156103515761035161100d56fea2646970667358221220680589185a5edbcf02a3e4b079c42222b0e27e7cc2d70f610c4caea61b7f148c64736f6c63430008170033