Overview ERC20
PRICE
$0.378412 @ 0.0001158 ETH (4.96%)

ON-CHAIN MARKET CAP $36,619,791.38

Total Supply:
96,856,368.76 WAI

Holders:
802
Profile Summary
Blockchain:
Base (8453)


Decimals:
18
Contract Source Code Verified (Exact Match)
Contract Name:
BaseWaifuToken

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Created At:
Fri, 19 Apr 2024 14:06:49 GMT
BaseWaifuToken.sol
contracts
token
BaseWaifuToken.sol


Contract ABI
[
  {
    "inputs": [
      {
        "components": [
          {
            "internalType": "address",
            "name": "defaultAdmin",
            "type": "address"
          },
          {
            "internalType": "string",
            "name": "name",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "symbol",
            "type": "string"
          }
        ],
        "internalType": "struct BaseWaifuToken.BaseParameters",
        "name": "baseParams",
        "type": "tuple"
      },
      {
        "components": [
          {
            "internalType": "uint256",
            "name": "projectBuyTaxBasisPoints",
            "type": "uint256"
          },
          {
            "internalType": "uint256",
            "name": "projectSellTaxBasisPoints",
            "type": "uint256"
          },
          {
            "internalType": "address",
            "name": "projectTaxRecipient",
            "type": "address"
          }
        ],
        "internalType": "struct BaseWaifuToken.ERC20TaxParameters",
        "name": "taxParams",
        "type": "tuple"
      }
    ],
    "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": "target",
        "type": "address"
      }
    ],
    "name": "AddressEmptyCode",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "AddressInsufficientBalance",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "CannotWithdrawThisToken",
    "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"
  },
  {
    "inputs": [],
    "name": "LiquidityPoolCannotBeAddressZero",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "LiquidityPoolMustBeAContractAddress",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "token",
        "type": "address"
      }
    ],
    "name": "SafeERC20FailedOperation",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "TransferAmountExceedsBalance",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "TransferFailed",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "TransferFromZeroAddress",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "TransferToZeroAddress",
    "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": false,
        "internalType": "address",
        "name": "addedPool",
        "type": "address"
      }
    ],
    "name": "LiquidityPoolAdded",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "address",
        "name": "removedPool",
        "type": "address"
      }
    ],
    "name": "LiquidityPoolRemoved",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "oldBuyBasisPoints",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "newBuyBasisPoints",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "oldSellBasisPoints",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "newSellBasisPoints",
        "type": "uint256"
      }
    ],
    "name": "ProjectTaxBasisPointsChanged",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "address",
        "name": "treasury",
        "type": "address"
      }
    ],
    "name": "ProjectTaxRecipientUpdated",
    "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"
  },
  {
    "stateMutability": "nonpayable",
    "type": "fallback"
  },
  {
    "inputs": [],
    "name": "DEFAULT_ADMIN_ROLE",
    "outputs": [
      {
        "internalType": "bytes32",
        "name": "",
        "type": "bytes32"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "MINTER_ROLE",
    "outputs": [
      {
        "internalType": "bytes32",
        "name": "",
        "type": "bytes32"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "newLiquidityPool_",
        "type": "address"
      }
    ],
    "name": "addLiquidityPool",
    "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": "uint256",
        "name": "value",
        "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": [],
    "name": "decimals",
    "outputs": [
      {
        "internalType": "uint8",
        "name": "",
        "type": "uint8"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "distributeTaxTokens",
    "outputs": [],
    "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": "queryAddress_",
        "type": "address"
      }
    ],
    "name": "isLiquidityPool",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "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": [],
    "name": "projectBuyTaxBasisPoints",
    "outputs": [
      {
        "internalType": "uint16",
        "name": "",
        "type": "uint16"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "projectSellTaxBasisPoints",
    "outputs": [
      {
        "internalType": "uint16",
        "name": "",
        "type": "uint16"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "projectTaxPendingSwap",
    "outputs": [
      {
        "internalType": "uint128",
        "name": "",
        "type": "uint128"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "projectTaxRecipient",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "removedLiquidityPool_",
        "type": "address"
      }
    ],
    "name": "removeLiquidityPool",
    "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": "uint16",
        "name": "newProjectBuyTaxBasisPoints_",
        "type": "uint16"
      },
      {
        "internalType": "uint16",
        "name": "newProjectSellTaxBasisPoints_",
        "type": "uint16"
      }
    ],
    "name": "setProjectTaxRates",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "projectTaxRecipient_",
        "type": "address"
      }
    ],
    "name": "setProjectTaxRecipient",
    "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": "totalBuyTaxBasisPoints",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "totalSellTaxBasisPoints",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "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": "amount",
        "type": "uint256"
      }
    ],
    "name": "transferFrom",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "token_",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount_",
        "type": "uint256"
      }
    ],
    "name": "withdrawERC20",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  }
]


Contract Creation Code
60806040523480156200001157600080fd5b5060405162001d9338038062001d9383398101604081905262000034916200033f565b6020820151604083015160036200004c838262000492565b5060046200005b828262000492565b505082516200006e9150600090620000c6565b506200007a8162000179565b600880546040909301516001600160a01b03166501000000000002600160281b600160c81b03199215159290921664ffffffff01600160c81b031990931692909217179055506200055e565b60008281526005602090815260408083206001600160a01b038516845290915281205460ff166200016f5760008381526005602090815260408083206001600160a01b03861684529091529020805460ff19166001179055620001263390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a450600162000173565b5060005b92915050565b80516000901580156200018e57506020820151155b156200019c57506000919050565b5080516008805460209093015161ffff90811663010000000264ffff0000001991909316610100021664ffffffff001990931692909217179055600190565b919050565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b03811182821017156200021b576200021b620001e0565b60405290565b604051601f8201601f191681016001600160401b03811182821017156200024c576200024c620001e0565b604052919050565b80516001600160a01b0381168114620001db57600080fd5b600082601f8301126200027e57600080fd5b81516001600160401b038111156200029a576200029a620001e0565b6020620002b0601f8301601f1916820162000221565b8281528582848701011115620002c557600080fd5b60005b83811015620002e5578581018301518282018401528201620002c8565b506000928101909101919091529392505050565b6000606082840312156200030c57600080fd5b62000316620001f6565b90508151815260208201516020820152620003346040830162000254565b604082015292915050565b600080608083850312156200035357600080fd5b82516001600160401b03808211156200036b57600080fd5b90840190606082870312156200038057600080fd5b6200038a620001f6565b620003958362000254565b8152602083015182811115620003aa57600080fd5b620003b8888286016200026c565b602083015250604083015182811115620003d157600080fd5b620003df888286016200026c565b604083015250809450505050620003fa8460208501620002f9565b90509250929050565b600181811c908216806200041857607f821691505b6020821081036200043957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200048d57600081815260208120601f850160051c81016020861015620004685750805b601f850160051c820191505b81811015620004895782815560010162000474565b5050505b505050565b81516001600160401b03811115620004ae57620004ae620001e0565b620004c681620004bf845462000403565b846200043f565b602080601f831160018114620004fe5760008415620004e55750858301515b600019600386901b1c1916600185901b17855562000489565b600085815260208120601f198616915b828110156200052f578886015182559484019460019091019084016200050e565b50858210156200054e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b611825806200056e6000396000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c806395d89b411161011a578063b0d75097116100ad578063dd62ed3e1161007c578063dd62ed3e146104a6578063e85455d7146104df578063ea8b2424146104f2578063ee6a934c14610526578063eeae0f9714610539576101fb565b8063b0d750971461042c578063b2c5c9eb14610457578063d53913931461046c578063d547741f14610493576101fb565b8063a217fddf116100e9578063a217fddf146103d8578063a45cae02146103e0578063a9059cbb14610406578063ae22107f14610419576101fb565b806395d89b41146103975780639808751d1461039f5780639dc29fac146103b2578063a1db9782146103c5576101fb565b80632f2ff15d1161019257806342966c681161016157806342966c681461033557806370a082311461034857806391d1485414610371578063936b293414610384576101fb565b80632f2ff15d146102ed578063313ce5671461030057806336568abe1461030f57806340c10f1914610322576101fb565b806318160ddd116101ce57806318160ddd146102a557806323b872dd146102ad578063248a9ca3146102c05780632ead0955146102e3576101fb565b806301ffc9a714610238578063038272b61461026057806306fdde031461027d578063095ea7b314610292575b60405162461bcd60e51b815260206004820152600d60248201526c139bdd081cdd5c1c1bdc9d1959609a1b60448201526064015b60405180910390fd5b61024b610246366004611546565b61054a565b60405190151581526020015b60405180910390f35b6008546301000000900461ffff165b604051908152602001610257565b610285610581565b6040516102579190611594565b61024b6102a03660046115e3565b610613565b60025461026f565b61024b6102bb36600461160d565b61062b565b61026f6102ce366004611649565b60009081526005602052604090206001015490565b6102eb610669565b005b6102eb6102fb366004611662565b6106bf565b60405160128152602001610257565b6102eb61031d366004611662565b6106ea565b6102eb6103303660046115e3565b610722565b6102eb610343366004611649565b610756565b61026f61035636600461168e565b6001600160a01b031660009081526020819052604090205490565b61024b61037f366004611662565b610760565b6102eb6103923660046116bb565b61078b565b61028561092e565b6102eb6103ad36600461168e565b61093d565b6102eb6103c03660046115e3565b6109ae565b6102eb6103d33660046115e3565b6109e2565b61026f600081565b6008546103f390610100900461ffff1681565b60405161ffff9091168152602001610257565b61024b6104143660046115e3565b610a21565b6102eb61042736600461168e565b610a33565b60095461043f906001600160801b031681565b6040516001600160801b039091168152602001610257565b6008546103f3906301000000900461ffff1681565b61026f7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b6102eb6104a1366004611662565b610a83565b61026f6104b43660046116e5565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61024b6104ed36600461168e565b610aa8565b60085461050e906501000000000090046001600160a01b031681565b6040516001600160a01b039091168152602001610257565b6102eb61053436600461168e565b610ab5565b600854610100900461ffff1661026f565b60006001600160e01b03198216637965db0b60e01b148061057b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b6060600380546105909061170f565b80601f01602080910402602001604051908101604052809291908181526020018280546105bc9061170f565b80156106095780601f106105de57610100808354040283529160200191610609565b820191906000526020600020905b8154815290600101906020018083116105ec57829003601f168201915b5050505050905090565b600033610621818585610b45565b5060019392505050565b600033610639858285610b52565b61065c85858561064889610aa8565b80610657575061065788610aa8565b610bca565b60019150505b9392505050565b6009546001600160801b0316156106bd57600980546001600160801b031981169091556008546001600160801b03909116906106bb9030906501000000000090046001600160a01b0316836000610bca565b505b565b6000828152600560205260409020600101546106da81610c86565b6106e48383610c90565b50505050565b6001600160a01b03811633146107135760405163334bd91960e11b815260040160405180910390fd5b61071d8282610d24565b505050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a661074c81610c86565b61071d8383610d91565b6106bb3382610dcb565b60009182526005602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600061079681610c86565b6127108361ffff16106108005760405162461bcd60e51b815260206004820152602c60248201527f4275792074617820626173697320706f696e7473206d757374206265206c657360448201526b073207468616e2031303030360a41b606482015260840161022f565b6127108261ffff161061086b5760405162461bcd60e51b815260206004820152602d60248201527f53656c6c2074617820626173697320706f696e7473206d757374206265206c6560448201526c07373207468616e20313030303609c1b606482015260840161022f565b60085461ffff6101008204811691630100000090048116908516151580610896575060008461ffff16115b6008805462ffffff191691151562ffff0019169190911761010061ffff8881169182029290921764ffff000000191663010000008884169081029190911790935560408051868416815260208101929092529184169181019190915260608101919091527f8da1f77a22734510b762a9625e69e737d7c0cc48984e810e5802fb341eb80a3e9060800160405180910390a15050505050565b6060600480546105909061170f565b600061094881610c86565b6008805465010000000000600160c81b031916650100000000006001600160a01b038516908102919091179091556040519081527fa4eea51cd2f21eac6612ba054a363ae2fd59698fc258ab414313cd73f69f2b85906020015b60405180910390a15050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66109d881610c86565b61071d8383610dcb565b60006109ed81610c86565b306001600160a01b03841603610a0d57610a0d63992501b360e01b610e01565b61071d6001600160a01b0384163384610e0b565b60003361062181858561064883610aa8565b6000610a3e81610c86565b610a49600683610e5d565b506040516001600160a01b03831681527f59c3fbcae88f30e9b0e35c132a7f68c53231dffa4722f197c7ecb0ee013eee60906020016109a2565b600082815260056020526040902060010154610a9e81610c86565b6106e48383610d24565b600061057b600683610e72565b6000610ac081610c86565b6001600160a01b038216610ade57610ade63b47cdee560e01b610e01565b816001600160a01b03163b600003610b0057610b00630f9da0c760e41b610e01565b610b0b600683610e94565b506040516001600160a01b03831681527fb893f883ef734b712208a877459424ee509832c57e0461fb1ac99ed4d42f2d89906020016109a2565b61071d8383836001610ea9565b6001600160a01b0383811660009081526001602090815260408083209386168352929052205460001981146106e45781811015610bbb57604051637dc7a0d960e11b81526001600160a01b0384166004820152602481018290526044810183905260640161022f565b6106e484848484036000610ea9565b6000610bd7858585610f7e565b90506000610be783868887610fee565b9050610c1386610bf7868561175f565b6001600160a01b03909116600090815260208190526040902055565b6001600160a01b0385166000908152602081905260409020805482019055846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c7691815260200190565b60405180910390a3505050505050565b6106bb813361113f565b6000610c9c8383610760565b610d1c5760008381526005602090815260408083206001600160a01b03861684529091529020805460ff19166001179055610cd43390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a450600161057b565b50600061057b565b6000610d308383610760565b15610d1c5760008381526005602090815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a450600161057b565b6001600160a01b038216610dbb5760405163ec442f0560e01b81526000600482015260240161022f565b610dc760008383611178565b5050565b6001600160a01b038216610df557604051634b637e8f60e11b81526000600482015260240161022f565b610dc782600083611178565b8060005260046000fd5b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261071d9084906112a2565b6000610662836001600160a01b038416611305565b6001600160a01b03811660009081526001830160205260408120541515610662565b6000610662836001600160a01b0384166113f8565b6001600160a01b038416610ed35760405163e602df0560e01b81526000600482015260240161022f565b6001600160a01b038316610efd57604051634a1406b160e11b81526000600482015260240161022f565b6001600160a01b03808516600090815260016020908152604080832093871683529290522082905580156106e457826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610f7091815260200190565b60405180910390a350505050565b60006001600160a01b038416610f9e57610f9e630b07e54560e11b610e01565b6001600160a01b038316610fbc57610fbc633a954ecd60e21b610e01565b506001600160a01b0383166000908152602081905260409020548181101561066257610662635dd58b8b60e01b610e01565b600854819060ff168015610fff5750845b1561113757600061100f85610aa8565b801561102957506008546000906301000000900461ffff16115b1561107157600854600980546001600160801b0380821661271061ffff630100000090960495909516880294909404938401166001600160801b0319909116179055016110d4565b61107a84610aa8565b80156110925750600854600090610100900461ffff16115b156110d457600854600980546001600160801b0380821661271061ffff61010090960495909516880294909404938401166001600160801b0319909116179055015b80156111355730600090815260208190526040902080548201905560405181815230906001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a380820391505b505b949350505050565b6111498282610760565b610dc75760405163e2517d3f60e01b81526001600160a01b03821660048201526024810183905260440161022f565b6001600160a01b0383166111a35780600260008282546111989190611772565b909155506112159050565b6001600160a01b038316600090815260208190526040902054818110156111f65760405163391434e360e21b81526001600160a01b0385166004820152602481018290526044810183905260640161022f565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b03821661123157600280548290039055611250565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161129591815260200190565b60405180910390a3505050565b60006112b76001600160a01b0384168361143f565b905080516000141580156112dc5750808060200190518101906112da9190611785565b155b1561071d57604051635274afe760e01b81526001600160a01b038416600482015260240161022f565b600081815260018301602052604081205480156113ee57600061132960018361175f565b855490915060009061133d9060019061175f565b90508082146113a257600086600001828154811061135d5761135d6117a7565b9060005260206000200154905080876000018481548110611380576113806117a7565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806113b3576113b36117bd565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061057b565b600091505061057b565b6000818152600183016020526040812054610d1c5750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561057b565b60606106628383600084600080856001600160a01b0316848660405161146591906117d3565b60006040518083038185875af1925050503d80600081146114a2576040519150601f19603f3d011682016040523d82523d6000602084013e6114a7565b606091505b50915091506114b78683836114c1565b9695505050505050565b6060826114d6576114d18261151d565b610662565b81511580156114ed57506001600160a01b0384163b155b1561151657604051639996b31560e01b81526001600160a01b038516600482015260240161022f565b5080610662565b80511561152d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b60006020828403121561155857600080fd5b81356001600160e01b03198116811461066257600080fd5b60005b8381101561158b578181015183820152602001611573565b50506000910152565b60208152600082518060208401526115b3816040850160208701611570565b601f01601f19169190910160400192915050565b80356001600160a01b03811681146115de57600080fd5b919050565b600080604083850312156115f657600080fd5b6115ff836115c7565b946020939093013593505050565b60008060006060848603121561162257600080fd5b61162b846115c7565b9250611639602085016115c7565b9150604084013590509250925092565b60006020828403121561165b57600080fd5b5035919050565b6000806040838503121561167557600080fd5b82359150611685602084016115c7565b90509250929050565b6000602082840312156116a057600080fd5b610662826115c7565b803561ffff811681146115de57600080fd5b600080604083850312156116ce57600080fd5b6116d7836116a9565b9150611685602084016116a9565b600080604083850312156116f857600080fd5b611701836115c7565b9150611685602084016115c7565b600181811c9082168061172357607f821691505b60208210810361174357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561057b5761057b611749565b8082018082111561057b5761057b611749565b60006020828403121561179757600080fd5b8151801515811461066257600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b600082516117e5818460208701611570565b919091019291505056fea26469706673582212203b0f0c83383838c8318f4f93a29669128c156572a4020b2eb29f065c20ab804064736f6c63430008140033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000fd4ecd1e6d302d989e0d2724e37e645f523da8b00000000000000000000000060604ea5b0bca269f56609b9b8cf40f10a62b7d6000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000003574149000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035741490000000000000000000000000000000000000000000000000000000000
Constructor Arguments
(ABI-Encoded and is the last bytes of the Contract Creation Code above)
0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000fd4ecd1e6d302d989e0d2724e37e645f523da8b00000000000000000000000060604ea5b0bca269f56609b9b8cf40f10a62b7d6000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000003574149000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035741490000000000000000000000000000000000000000000000000000000000