Overview ERC20
PRICE
n/a

ON-CHAIN MARKET CAP n/a

Total Supply:
1,000,000,000.00 SENSEISON

Holders:
6
Profile Summary
Blockchain:
Base (8453)


Decimals:
18
Contract Source Code Verified (Partial Match)
Contract Name:
LotteryToken

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Created At:
Tue, 17 Sep 2024 20:07:03 GMT
LotteryToken.sol
src
tokens
LotteryToken.sol


Contract ABI
[
  {
    "inputs": [
      {
        "internalType": "string",
        "name": "_name",
        "type": "string"
      },
      {
        "internalType": "string",
        "name": "_symbol",
        "type": "string"
      },
      {
        "internalType": "uint256",
        "name": "_initialSupply",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "_maxWinMultiplier",
        "type": "uint256"
      },
      {
        "internalType": "address",
        "name": "_weth",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "_lotteryMaster",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "_limitOrderContract",
        "type": "address"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "constructor"
  },
  {
    "inputs": [],
    "name": "CannotTaxSelf",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "allowance",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "ERC20InsufficientAllowance",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "owner",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "balance",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "value",
        "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": "OnlyLotteryMaster",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "owner",
        "type": "address"
      }
    ],
    "name": "OwnableInvalidOwner",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "OwnableUnauthorizedAccount",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "TaxAlreadySet",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "TaxTooHigh",
    "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": "oldDex",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "newDex",
        "type": "address"
      }
    ],
    "name": "DexUpdated",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "address",
        "name": "user",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "entryAmount",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "winnings",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "timestamp",
        "type": "uint256"
      }
    ],
    "name": "LotteryWin",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "previousOwner",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "newOwner",
        "type": "address"
      }
    ],
    "name": "OwnershipTransferred",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "dex",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "buyTax",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "sellTax",
        "type": "uint256"
      }
    ],
    "name": "TaxesUpdated",
    "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": "POT_PERCENT_UPDATE_DELAY",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "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": "",
        "type": "address"
      }
    ],
    "name": "buyTax",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "_dexAddress",
        "type": "address"
      }
    ],
    "name": "changeDex",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "decimals",
    "outputs": [
      {
        "internalType": "uint8",
        "name": "",
        "type": "uint8"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "dex",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "_dex",
        "type": "address"
      }
    ],
    "name": "getTaxes",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "buy",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "sell",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "limitOrderContract",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "lotteryMaster",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "maxWinMultiplier",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "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": "_user",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "_entryAmount",
        "type": "uint256"
      }
    ],
    "name": "payWinner",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "pool",
    "outputs": [
      {
        "internalType": "contract IUniswapV3Pool",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "renounceOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "sellTax",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "_pool",
        "type": "address"
      }
    ],
    "name": "setPool",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint24",
        "name": "fee",
        "type": "uint24"
      }
    ],
    "name": "setPoolFee",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "_dex",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "_buyTax",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "_sellTax",
        "type": "uint256"
      }
    ],
    "name": "setTaxes",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "symbol",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "taxed",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "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": [
      {
        "internalType": "address",
        "name": "newOwner",
        "type": "address"
      }
    ],
    "name": "transferOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  }
]


Contract Creation Code
60a06040523480156200001157600080fd5b5060405162001b9538038062001b95833981016040819052620000349162000623565b868686858433858560036200004a838262000767565b50600462000059828262000767565b5050506001600160a01b0381166200008c57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b62000097816200010c565b506001600160a01b038216608052620000b133846200015e565b6008805462ffffff60a01b191661027160a41b179055600680546001600160a01b03199081166001600160a01b0393841617909155600c99909955600d805490991696169590951790965550620008b8975050505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166200018a5760405163ec442f0560e01b81526000600482015260240162000083565b62000198600083836200019c565b5050565b600d546001600160a01b0316156200020f57600d54604051637ea6b20560e01b8152600060048201526001600160a01b0390911690637ea6b20590602401600060405180830381600087803b158015620001f557600080fd5b505af11580156200020a573d6000803e3d6000fd5b505050505b60006200021e8484846200042f565b905080156200023957620002338482620004d8565b62000243565b3060009081526020525b600062000251828462000849565b90506001600160a01b0385166200028257826002600082825462000276919062000865565b90915550620003ae9050565b6001600160a01b03851660009081526020819052604090205483811015620002d75760405163391434e360e21b81526001600160a01b0387166004820152602481018290526044810185905260640162000083565b6001600160a01b0386166000908152602081815260408083208785039055600b90915290205460ff1680156200032657506001600160a01b0385166000908152600b602052604090205460ff16155b80156200033d5750600d546001600160a01b031615155b15620003ac57600d546040516322ba5f7b60e01b81526001600160a01b03878116600483015260248201879052909116906322ba5f7b90604401600060405180830381600087803b1580156200039257600080fd5b505af1158015620003a7573d6000803e3d6000fd5b505050505b505b6001600160a01b038416620003cc57600280548290039055620003eb565b6001600160a01b03841660009081526020819052604090208054820190555b836001600160a01b0316856001600160a01b031660008051602062001b75833981519152856040516200042091815260200190565b60405180910390a35050505050565b6006546000906001600160a01b03908116908516036200045257506000620004d1565b6001600160a01b038085166000908152600960209081526040808320549387168352600a9091529020546127106200048b83866200087b565b62000497919062000895565b620004a3908462000865565b9250612710620004b482866200087b565b620004c0919062000895565b620004cc908462000865565b925050505b9392505050565b600d546001600160a01b0316600090815260208190526040812080548392906200050490849062000865565b9091555050600d546040518281526001600160a01b039182169184169060008051602062001b758339815191529060200160405180910390a35050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200056957600080fd5b81516001600160401b038082111562000586576200058662000541565b604051601f8301601f19908116603f01168101908282118183101715620005b157620005b162000541565b81604052838152602092508683858801011115620005ce57600080fd5b600091505b83821015620005f25785820183015181830184015290820190620005d3565b600093810190920192909252949350505050565b80516001600160a01b03811681146200061e57600080fd5b919050565b600080600080600080600060e0888a0312156200063f57600080fd5b87516001600160401b03808211156200065757600080fd5b620006658b838c0162000557565b985060208a01519150808211156200067c57600080fd5b506200068b8a828b0162000557565b9650506040880151945060608801519350620006aa6080890162000606565b9250620006ba60a0890162000606565b9150620006ca60c0890162000606565b905092959891949750929550565b600181811c90821680620006ed57607f821691505b6020821081036200070e57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200076257600081815260208120601f850160051c810160208610156200073d5750805b601f850160051c820191505b818110156200075e5782815560010162000749565b5050505b505050565b81516001600160401b0381111562000783576200078362000541565b6200079b81620007948454620006d8565b8462000714565b602080601f831160018114620007d35760008415620007ba5750858301515b600019600386901b1c1916600185901b1785556200075e565b600085815260208120601f198616915b828110156200080457888601518255948401946001909101908401620007e3565b5085821015620008235787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b818103818111156200085f576200085f62000833565b92915050565b808201808211156200085f576200085f62000833565b80820281158282048414176200085f576200085f62000833565b600082620008b357634e487b7160e01b600052601260045260246000fd5b500490565b6080516112a4620008d1600039600050506112a46000f3fe608060405234801561001057600080fd5b50600436106101a95760003560e01c806369d2da9c116100f957806395d89b4111610097578063a9059cbb11610071578063a9059cbb146103d0578063d1508814146103e3578063dd62ed3e14610406578063f2fde38b1461043f57600080fd5b806395d89b41146103735780639b7bf8101461037b578063a7493b49146103c657600080fd5b8063715018a6116100d3578063715018a61461032757806373dd250c1461032f5780638da5cb5b1461034257806395101f901461035357600080fd5b806369d2da9c146102d85780636ce49166146102eb57806370a08231146102fe57600080fd5b8063383121fc1161016657806354fb25231161014057806354fb25231461027f5780635dc9dbe8146102925780635f641758146102a5578063692058c2146102c557600080fd5b8063383121fc1461024e5780634437152a146102575780634e958d051461026c57600080fd5b806306fdde03146101ae578063095ea7b3146101cc57806316f0115b146101ef57806318160ddd1461021a57806323b872dd1461022c578063313ce5671461023f575b600080fd5b6101b6610452565b6040516101c39190611027565b60405180910390f35b6101df6101da366004611091565b6104e4565b60405190151581526020016101c3565b600754610202906001600160a01b031681565b6040516001600160a01b0390911681526020016101c3565b6002545b6040519081526020016101c3565b6101df61023a3660046110bb565b6104fe565b604051601281526020016101c3565b61021e600c5481565b61026a6102653660046110f7565b610524565b005b61026a61027a366004611091565b61054e565b600654610202906001600160a01b031681565b600d54610202906001600160a01b031681565b61021e6102b33660046110f7565b600a6020526000908152604090205481565b600854610202906001600160a01b031681565b61026a6102e63660046110f7565b6106c1565b61026a6102f9366004611112565b610820565b61021e61030c3660046110f7565b6001600160a01b031660009081526020819052604090205490565b61026a610838565b61026a61033d366004611145565b61084c565b6005546001600160a01b0316610202565b61021e6103613660046110f7565b60096020526000908152604090205481565b6101b6610878565b6103b16103893660046110f7565b6001600160a01b0316600090815260096020908152604080832054600a909252909120549091565b604080519283526020830191909152016101c3565b61021e6201518081565b6101df6103de366004611091565b610887565b6101df6103f13660046110f7565b600b6020526000908152604090205460ff1681565b61021e61041436600461116a565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61026a61044d3660046110f7565b610895565b6060600380546104619061119d565b80601f016020809104026020016040519081016040528092919081815260200182805461048d9061119d565b80156104da5780601f106104af576101008083540402835291602001916104da565b820191906000526020600020905b8154815290600101906020018083116104bd57829003601f168201915b5050505050905090565b6000336104f28185856108d8565b60019150505b92915050565b60003361050c8582856108e5565b610517858585610963565b60019150505b9392505050565b61052c6109c2565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b600d546001600160a01b031633146105795760405163088b9f0560e21b815260040160405180910390fd5b600d546001600160a01b0316600090815260208190526040812054600c54909190612710906105a890856111ed565b6105b29190611204565b905060008282106105c357826105c5565b815b600d546001600160a01b03166000908152602081905260408120805492935083929091906105f4908490611226565b90915550506001600160a01b03851660009081526020819052604081208054839290610621908490611239565b9091555050600d546040518281526001600160a01b038781169216907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3604080516001600160a01b0387168152602081018690529081018290524260608201527f57d83da7f5e4ca13c8cf122c9337b4b8ec5ccdcdc4b062493af67f414bc0eff49060800160405180910390a15050505050565b6106c96109c2565b6008546001600160a01b031680156107525760085460405163095ea7b360e01b81526001600160a01b03909116600482015260006024820152309063095ea7b3906044016020604051808303816000875af115801561072c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610750919061124c565b505b600880546001600160a01b0319166001600160a01b03841690811790915560405163095ea7b360e01b815260048101919091526000196024820152309063095ea7b3906044016020604051808303816000875af11580156107b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107db919061124c565b50816001600160a01b0316816001600160a01b03167f7944eb377e472febf8aadfe5cfdd9fa974762abb456732d067c1e14d448d05a760405160405180910390a35050565b6108286109c2565b6108338383836109ef565b505050565b6108406109c2565b61084a6000610b64565b565b6108546109c2565b6008805462ffffff909216600160a01b0262ffffff60a01b19909216919091179055565b6060600480546104619061119d565b6000336104f2818585610963565b61089d6109c2565b6001600160a01b0381166108cc57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6108d581610b64565b50565b6108338383836001610bb6565b6001600160a01b03838116600090815260016020908152604080832093861683529290522054600019811461095d578181101561094e57604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064016108c3565b61095d84848484036000610bb6565b50505050565b6001600160a01b03831661098d57604051634b637e8f60e11b8152600060048201526024016108c3565b6001600160a01b0382166109b75760405163ec442f0560e01b8152600060048201526024016108c3565b610833838383610c8b565b6005546001600160a01b0316331461084a5760405163118cdaa760e01b81523360048201526024016108c3565b6103e8821180610a0057506103e881115b15610a1e57604051632bc7b84d60e21b815260040160405180910390fd5b6001600160a01b0383166000908152600b602052604090205460ff168015610a4557508115155b8015610a5057508015155b15610a6e57604051632155322760e11b815260040160405180910390fd5b306001600160a01b03841603610a975760405163e339bdab60e01b815260040160405180910390fd5b6001600160a01b0383166000908152600960209081526040808320859055600a909152902081905581151580610acd5750600081115b15610afa576001600160a01b0383166000908152600b60205260409020805460ff19166001179055610b1b565b6001600160a01b0383166000908152600b60205260409020805460ff191690555b60408051838152602081018390526001600160a01b038516917f3702fe9b6a853faae6207a036846fcd4d7ff8a226ec78129d5588697c0d7eca0910160405180910390a2505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038416610be05760405163e602df0560e01b8152600060048201526024016108c3565b6001600160a01b038316610c0a57604051634a1406b160e11b8152600060048201526024016108c3565b6001600160a01b038085166000908152600160209081526040808320938716835292905220829055801561095d57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610c7d91815260200190565b60405180910390a350505050565b600d546001600160a01b031615610cfb57600d54604051637ea6b20560e01b8152600060048201526001600160a01b0390911690637ea6b20590602401600060405180830381600087803b158015610ce257600080fd5b505af1158015610cf6573d6000803e3d6000fd5b505050505b6000610d08848484610f16565b90508015610d1f57610d1a8482610faf565b610d29565b3060009081526020525b6000610d358284611226565b90506001600160a01b038516610d62578260026000828254610d579190611239565b90915550610e879050565b6001600160a01b03851660009081526020819052604090205483811015610db55760405163391434e360e21b81526001600160a01b038716600482015260248101829052604481018590526064016108c3565b6001600160a01b0386166000908152602081815260408083208785039055600b90915290205460ff168015610e0357506001600160a01b0385166000908152600b602052604090205460ff16155b8015610e195750600d546001600160a01b031615155b15610e8557600d546040516322ba5f7b60e01b81526001600160a01b03878116600483015260248201879052909116906322ba5f7b90604401600060405180830381600087803b158015610e6c57600080fd5b505af1158015610e80573d6000803e3d6000fd5b505050505b505b6001600160a01b038416610ea357600280548290039055610ec2565b6001600160a01b03841660009081526020819052604090208054820190555b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610f0791815260200190565b60405180910390a35050505050565b6006546000906001600160a01b0390811690851603610f375750600061051d565b6001600160a01b038085166000908152600960209081526040808320549387168352600a909152902054612710610f6e83866111ed565b610f789190611204565b610f829084611239565b9250612710610f9182866111ed565b610f9b9190611204565b610fa59084611239565b9695505050505050565b600d546001600160a01b031660009081526020819052604081208054839290610fd9908490611239565b9091555050600d546040518281526001600160a01b03918216918416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600060208083528351808285015260005b8181101561105457858101830151858201604001528201611038565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461108c57600080fd5b919050565b600080604083850312156110a457600080fd5b6110ad83611075565b946020939093013593505050565b6000806000606084860312156110d057600080fd5b6110d984611075565b92506110e760208501611075565b9150604084013590509250925092565b60006020828403121561110957600080fd5b61051d82611075565b60008060006060848603121561112757600080fd5b61113084611075565b95602085013595506040909401359392505050565b60006020828403121561115757600080fd5b813562ffffff8116811461051d57600080fd5b6000806040838503121561117d57600080fd5b61118683611075565b915061119460208401611075565b90509250929050565b600181811c908216806111b157607f821691505b6020821081036111d157634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176104f8576104f86111d7565b60008261122157634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156104f8576104f86111d7565b808201808211156104f8576104f86111d7565b60006020828403121561125e57600080fd5b8151801515811461051d57600080fdfea264697066735822122087b834c190326abeac9be17fc45b12375d7264bac251e3934188ef08d287365b64736f6c63430008140033ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef00000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000033b2e3c9fd0803ce80000000000000000000000000000000000000000000000000000000000000000007530000000000000000000000000420000000000000000000000000000000000000600000000000000000000000029a7efb6bb7e34aa026b26ef0c7227c4e930313d000000000000000000000000300af2ede7cd604355a09884a1521af732f3b8f7000000000000000000000000000000000000000000000000000000000000000c53454e534549275320534f4e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000953454e534549534f4e0000000000000000000000000000000000000000000000