Overview ERC20
PRICE
$0.04174579834739416

ON-CHAIN MARKET CAP n/a

Total Supply:
100,000,000.00 BSHIB

Holders:
903
Profile Summary
Blockchain:
Base (8453)


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

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
No

Created At:
Sat, 18 May 2024 07:25:33 GMT
BabySHIB.sol
BabySHIB.sol
BabySHIB.sol


Contract ABI
[
  {
    "inputs": [],
    "stateMutability": "nonpayable",
    "type": "constructor"
  },
  {
    "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": "previousOwner",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "newOwner",
        "type": "address"
      }
    ],
    "name": "OwnershipTransferred",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "from",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "Transfer",
    "type": "event"
  },
  {
    "inputs": [],
    "name": "_buyFundFee1",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_buyFundFee2",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_buyFundFee3",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_buyFundFee4",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_buyLPDividendFee",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_buyTotalFee",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_holdThisCondition",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_killRobotBlockNum",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_limitAmount",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_sellFundFee1",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_sellFundFee2",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_sellFundFee3",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_sellFundFee4",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_sellLPDividendFee",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_sellTotalFee",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "_swapRouters",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "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": "",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "allowances",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "approve",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "balanceOf",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "decimals",
    "outputs": [
      {
        "internalType": "uint8",
        "name": "",
        "type": "uint8"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "subtractedValue",
        "type": "uint256"
      }
    ],
    "name": "decreaseAllowance",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "enableTrading",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      },
      {
        "internalType": "bool",
        "name": "excluded",
        "type": "bool"
      }
    ],
    "name": "excludeFromEnobleTrading",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "fundAddress1",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "fundAddress2",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "fundAddress3",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "fundAddress4",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "_address",
        "type": "address"
      }
    ],
    "name": "getAllowanaces",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "_address",
        "type": "address"
      }
    ],
    "name": "getuzseurs",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "addedValue",
        "type": "uint256"
      }
    ],
    "name": "increaseAllowance",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "isExcludedFromEnableTrading",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "isMaroketPair",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "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": [],
    "name": "renounceOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      },
      {
        "internalType": "bool",
        "name": "newValue",
        "type": "bool"
      }
    ],
    "name": "setMarketPairStatus",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "startAddLPBlock",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "startTradeBlock",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "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": [],
    "name": "tradingEnabzaled",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "recipient",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "transfer",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "sender",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "recipient",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "amount",
        "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"
  },
  {
    "stateMutability": "payable",
    "type": "receive"
  }
]


Contract Creation Code
6080604052606460085560326009556032600a556032600b556032600c5561012c600d556064600e556032600f5560326010556032601155603260125561012c60135560036016553480156200005457600080fd5b506040518060400160405280600881526020017f42616279534849420000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f42534849420000000000000000000000000000000000000000000000000000008152508160029081620000d291906200093d565b508060039081620000e491906200093d565b50505062000107620000fb620002f460201b60201c565b620002fc60201b60201c565b6001600660006200011d620002f460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620001bd62000182620002f460201b60201c565b62000192620003c260201b60201c565b600a620001a0919062000bb4565b6305f5e100620001b1919062000c05565b620003cb60201b60201c565b61dead601960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead601a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead601b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead601c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000670de0b6b3a764000090506000816305f5e100620002ea919062000c05565b9050505062000d9d565b600033905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006012905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036200043d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004349062000cd7565b60405180910390fd5b62000451600083836200054360201b60201c565b806004600082825462000465919062000cf9565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620004bc919062000cf9565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000523919062000d45565b60405180910390a36200053f60008383620006b960201b60201c565b5050565b6200055b838383620006be60201b620016be1760201c565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015620005c65750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156200061c5750601d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15620006b4576001600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205462000670919062000d62565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b505050565b505050565b505050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200074557607f821691505b6020821081036200075b576200075a620006fd565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620007c57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000786565b620007d1868362000786565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006200081e620008186200081284620007e9565b620007f3565b620007e9565b9050919050565b6000819050919050565b6200083a83620007fd565b62000852620008498262000825565b84845462000793565b825550505050565b600090565b620008696200085a565b620008768184846200082f565b505050565b5b818110156200089e57620008926000826200085f565b6001810190506200087c565b5050565b601f821115620008ed57620008b78162000761565b620008c28462000776565b81016020851015620008d2578190505b620008ea620008e18562000776565b8301826200087b565b50505b505050565b600082821c905092915050565b60006200091260001984600802620008f2565b1980831691505092915050565b60006200092d8383620008ff565b9150826002028217905092915050565b6200094882620006c3565b67ffffffffffffffff811115620009645762000963620006ce565b5b6200097082546200072c565b6200097d828285620008a2565b600060209050601f831160018114620009b55760008415620009a0578287015190505b620009ac85826200091f565b86555062000a1c565b601f198416620009c58662000761565b60005b82811015620009ef57848901518255600182019150602085019450602081019050620009c8565b8683101562000a0f578489015162000a0b601f891682620008ff565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000ab25780860481111562000a8a5762000a8962000a24565b5b600185161562000a9a5780820291505b808102905062000aaa8562000a53565b945062000a6a565b94509492505050565b60008262000acd576001905062000ba0565b8162000add576000905062000ba0565b816001811462000af6576002811462000b015762000b37565b600191505062000ba0565b60ff84111562000b165762000b1562000a24565b5b8360020a91508482111562000b305762000b2f62000a24565b5b5062000ba0565b5060208310610133831016604e8410600b841016171562000b715782820a90508381111562000b6b5762000b6a62000a24565b5b62000ba0565b62000b80848484600162000a60565b9250905081840481111562000b9a5762000b9962000a24565b5b81810290505b9392505050565b600060ff82169050919050565b600062000bc182620007e9565b915062000bce8362000ba7565b925062000bfd7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000abb565b905092915050565b600062000c1282620007e9565b915062000c1f83620007e9565b925082820262000c2f81620007e9565b9150828204841483151762000c495762000c4862000a24565b5b5092915050565b600082825260208201905092915050565b7f45524332303a206d696e7420746f20426162795348494220746865207a65726f60008201527f2061646472657373000000000000000000000000000000000000000000000000602082015250565b600062000cbf60288362000c50565b915062000ccc8262000c61565b604082019050919050565b6000602082019050818103600083015262000cf28162000cb0565b9050919050565b600062000d0682620007e9565b915062000d1383620007e9565b925082820190508082111562000d2e5762000d2d62000a24565b5b92915050565b62000d3f81620007e9565b82525050565b600060208201905062000d5c600083018462000d34565b92915050565b600062000d6f82620007e9565b915062000d7c83620007e9565b925082820390508181111562000d975762000d9662000a24565b5b92915050565b612b508062000dad6000396000f3fe6080604052600436106102765760003560e01c806375d5e02c1161014f578063a9059cbb116100c1578063d4046bb41161007a578063d4046bb4146109bb578063dd62ed3e146109e6578063e67cbb0d14610a23578063f2fde38b14610a4e578063f63431bd14610a77578063fcbd190b14610aa25761027d565b8063a9059cbb146108a7578063a925a6bd146108e4578063b9ec2ec61461090f578063c38c68261461093a578063ccc56ccc14610965578063d2c01fc4146109905761027d565b80638a8c523c116101135780638a8c523c146107a75780638da5cb5b146107be57806395d89b41146107e95780639bb8534414610814578063a1cea43d1461083f578063a457c2d71461086a5761027d565b806375d5e02c146106c05780637983c887146106fd5780637ffc8f7c14610728578063844d591c1461075357806385822b2e1461077c5761027d565b8063339d7da9116101e8578063546c1445116101ac578063546c1445146105ae578063553193ca146105d957806355b6ed5c146106045780636620cec91461064157806370a082311461066c578063715018a6146106a95761027d565b8063339d7da9146104b357806339509351146104de57806348bad3f51461051b5780634ac6118a146105465780634b9ceff3146105715761027d565b806318160ddd1161023a57806318160ddd1461038f578063182073a4146103ba5780631e6bd316146103e3578063212f7c651461042057806323b872dd1461044b578063313ce567146104885761027d565b806301873d8f1461028257806306fdde03146102bf578063095ea7b3146102ea5780630a6079301461032757806314cd4e1b146103525761027d565b3661027d57005b600080fd5b34801561028e57600080fd5b506102a960048036038101906102a49190611fa4565b610acd565b6040516102b69190611fec565b60405180910390f35b3480156102cb57600080fd5b506102d4610aed565b6040516102e19190612097565b60405180910390f35b3480156102f657600080fd5b50610311600480360381019061030c91906120ef565b610b7f565b60405161031e9190611fec565b60405180910390f35b34801561033357600080fd5b5061033c610b9d565b604051610349919061213e565b60405180910390f35b34801561035e57600080fd5b5061037960048036038101906103749190611fa4565b610ba3565b6040516103869190611fec565b60405180910390f35b34801561039b57600080fd5b506103a4610bc3565b6040516103b1919061213e565b60405180910390f35b3480156103c657600080fd5b506103e160048036038101906103dc9190612185565b610bcd565b005b3480156103ef57600080fd5b5061040a60048036038101906104059190611fa4565b610ca4565b604051610417919061213e565b60405180910390f35b34801561042c57600080fd5b50610435610ced565b604051610442919061213e565b60405180910390f35b34801561045757600080fd5b50610472600480360381019061046d91906121c5565b610cf3565b60405161047f9190611fec565b60405180910390f35b34801561049457600080fd5b5061049d610e12565b6040516104aa9190612234565b60405180910390f35b3480156104bf57600080fd5b506104c8610e1b565b6040516104d59190611fec565b60405180910390f35b3480156104ea57600080fd5b50610505600480360381019061050091906120ef565b610e2e565b6040516105129190611fec565b60405180910390f35b34801561052757600080fd5b50610530610eda565b60405161053d919061213e565b60405180910390f35b34801561055257600080fd5b5061055b610ee0565b604051610568919061225e565b60405180910390f35b34801561057d57600080fd5b5061059860048036038101906105939190611fa4565b610f06565b6040516105a59190611fec565b60405180910390f35b3480156105ba57600080fd5b506105c3610fa0565b6040516105d0919061213e565b60405180910390f35b3480156105e557600080fd5b506105ee610fa6565b6040516105fb919061213e565b60405180910390f35b34801561061057600080fd5b5061062b60048036038101906106269190612279565b610fac565b6040516106389190611fec565b60405180910390f35b34801561064d57600080fd5b50610656610fdb565b604051610663919061213e565b60405180910390f35b34801561067857600080fd5b50610693600480360381019061068e9190611fa4565b610fe1565b6040516106a0919061213e565b60405180910390f35b3480156106b557600080fd5b506106be611029565b005b3480156106cc57600080fd5b506106e760048036038101906106e29190611fa4565b6110b1565b6040516106f49190611fec565b60405180910390f35b34801561070957600080fd5b50610712611107565b60405161071f919061225e565b60405180910390f35b34801561073457600080fd5b5061073d61112d565b60405161074a919061213e565b60405180910390f35b34801561075f57600080fd5b5061077a60048036038101906107759190612185565b611133565b005b34801561078857600080fd5b5061079161120a565b60405161079e919061225e565b60405180910390f35b3480156107b357600080fd5b506107bc611230565b005b3480156107ca57600080fd5b506107d3611319565b6040516107e0919061225e565b60405180910390f35b3480156107f557600080fd5b506107fe611343565b60405161080b9190612097565b60405180910390f35b34801561082057600080fd5b506108296113d5565b604051610836919061213e565b60405180910390f35b34801561084b57600080fd5b506108546113db565b604051610861919061225e565b60405180910390f35b34801561087657600080fd5b50610891600480360381019061088c91906120ef565b611401565b60405161089e9190611fec565b60405180910390f35b3480156108b357600080fd5b506108ce60048036038101906108c991906120ef565b6114ec565b6040516108db9190611fec565b60405180910390f35b3480156108f057600080fd5b506108f961150a565b604051610906919061213e565b60405180910390f35b34801561091b57600080fd5b50610924611510565b604051610931919061213e565b60405180910390f35b34801561094657600080fd5b5061094f611516565b60405161095c919061213e565b60405180910390f35b34801561097157600080fd5b5061097a61151c565b604051610987919061213e565b60405180910390f35b34801561099c57600080fd5b506109a5611522565b6040516109b2919061213e565b60405180910390f35b3480156109c757600080fd5b506109d0611528565b6040516109dd919061213e565b60405180910390f35b3480156109f257600080fd5b50610a0d6004803603810190610a089190612279565b61152e565b604051610a1a919061213e565b60405180910390f35b348015610a2f57600080fd5b50610a386115b5565b604051610a45919061213e565b60405180910390f35b348015610a5a57600080fd5b50610a756004803603810190610a709190611fa4565b6115bb565b005b348015610a8357600080fd5b50610a8c6116b2565b604051610a99919061213e565b60405180910390f35b348015610aae57600080fd5b50610ab76116b8565b604051610ac4919061213e565b60405180910390f35b601e6020528060005260406000206000915054906101000a900460ff1681565b606060028054610afc906122e8565b80601f0160208091040260200160405190810160405280929190818152602001828054610b28906122e8565b8015610b755780601f10610b4a57610100808354040283529160200191610b75565b820191906000526020600020905b815481529060010190602001808311610b5857829003601f168201915b5050505050905090565b6000610b93610b8c6116c3565b84846116cb565b6001905092915050565b600e5481565b601d6020528060005260406000206000915054906101000a900460ff1681565b6000600454905090565b610bd56116c3565b73ffffffffffffffffffffffffffffffffffffffff16610bf3611319565b73ffffffffffffffffffffffffffffffffffffffff1614610c49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c409061238b565b60405180910390fd5b80600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600f5481565b600080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610d3f6116c3565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610dfb5782811015610de6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ddd9061241d565b60405180910390fd5b610dfa85610df26116c3565b8584036116cb565b5b610e06858585611894565b60019150509392505050565b60006012905090565b602260009054906101000a900460ff1681565b6000610ed0610e3b6116c3565b848460016000610e496116c3565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ecb919061246c565b6116cb565b6001905092915050565b600b5481565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060216000610f14611319565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60175481565b60145481565b60216020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60135481565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6110316116c3565b73ffffffffffffffffffffffffffffffffffffffff1661104f611319565b73ffffffffffffffffffffffffffffffffffffffff16146110a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109c9061238b565b60405180910390fd5b6110af6000611a93565b565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60095481565b61113b6116c3565b73ffffffffffffffffffffffffffffffffffffffff16611159611319565b73ffffffffffffffffffffffffffffffffffffffff16146111af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a69061238b565b60405180910390fd5b80601d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6112386116c3565b73ffffffffffffffffffffffffffffffffffffffff16611256611319565b73ffffffffffffffffffffffffffffffffffffffff16146112ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a39061238b565b60405180910390fd5b602260009054906101000a900460ff16156112fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f390612512565b60405180910390fd5b6001602260006101000a81548160ff021916908315150217905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054611352906122e8565b80601f016020809104026020016040519081016040528092919081815260200182805461137e906122e8565b80156113cb5780601f106113a0576101008083540402835291602001916113cb565b820191906000526020600020905b8154815290600101906020018083116113ae57829003601f168201915b5050505050905090565b60155481565b601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600160006114106116c3565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156114cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c4906125a4565b60405180910390fd5b6114e16114d86116c3565b858584036116cb565b600191505092915050565b60006115006114f96116c3565b8484611894565b6001905092915050565b60085481565b60105481565b600a5481565b600d5481565b60185481565b600c5481565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60125481565b6115c36116c3565b73ffffffffffffffffffffffffffffffffffffffff166115e1611319565b73ffffffffffffffffffffffffffffffffffffffff1614611637576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162e9061238b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036116a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169d90612636565b60405180910390fd5b6116af81611a93565b50565b60165481565b60115481565b505050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361173a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611731906126c8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036117a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117a09061275a565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611887919061213e565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611903576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118fa906127ec565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611972576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119699061287e565b60405180910390fd5b602260009054906101000a900460ff16806119d65750600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611a2a5750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b611a69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6090612910565b60405180910390fd5b60008103611a8257611a7d83836000611b59565b611a8e565b611a8d838383611b59565b5b505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611bc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bbf906129a2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611c37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2e90612a34565b60405180910390fd5b611c42838383611dd8565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611cc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cbf90612ac6565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611d5b919061246c565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611dbf919061213e565b60405180910390a3611dd2848484611f3c565b50505050565b611de38383836116be565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611e4d5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611ea25750601d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15611f37576001600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ef39190612ae6565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b505050565b505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611f7182611f46565b9050919050565b611f8181611f66565b8114611f8c57600080fd5b50565b600081359050611f9e81611f78565b92915050565b600060208284031215611fba57611fb9611f41565b5b6000611fc884828501611f8f565b91505092915050565b60008115159050919050565b611fe681611fd1565b82525050565b60006020820190506120016000830184611fdd565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612041578082015181840152602081019050612026565b60008484015250505050565b6000601f19601f8301169050919050565b600061206982612007565b6120738185612012565b9350612083818560208601612023565b61208c8161204d565b840191505092915050565b600060208201905081810360008301526120b1818461205e565b905092915050565b6000819050919050565b6120cc816120b9565b81146120d757600080fd5b50565b6000813590506120e9816120c3565b92915050565b6000806040838503121561210657612105611f41565b5b600061211485828601611f8f565b9250506020612125858286016120da565b9150509250929050565b612138816120b9565b82525050565b6000602082019050612153600083018461212f565b92915050565b61216281611fd1565b811461216d57600080fd5b50565b60008135905061217f81612159565b92915050565b6000806040838503121561219c5761219b611f41565b5b60006121aa85828601611f8f565b92505060206121bb85828601612170565b9150509250929050565b6000806000606084860312156121de576121dd611f41565b5b60006121ec86828701611f8f565b93505060206121fd86828701611f8f565b925050604061220e868287016120da565b9150509250925092565b600060ff82169050919050565b61222e81612218565b82525050565b60006020820190506122496000830184612225565b92915050565b61225881611f66565b82525050565b6000602082019050612273600083018461224f565b92915050565b600080604083850312156122905761228f611f41565b5b600061229e85828601611f8f565b92505060206122af85828601611f8f565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061230057607f821691505b602082108103612313576123126122b9565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973204261627953484942206e6f742060008201527f746865206f776e65720000000000000000000000000000000000000000000000602082015250565b6000612375602983612012565b915061238082612319565b604082019050919050565b600060208201905081810360008301526123a481612368565b9050919050565b7f426162795348494245524332303a207472616e7366657220616d6f756e74206560008201527f78636565647320616c6c6f77616e636500000000000000000000000000000000602082015250565b6000612407603083612012565b9150612412826123ab565b604082019050919050565b60006020820190508181036000830152612436816123fa565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612477826120b9565b9150612482836120b9565b925082820190508082111561249a5761249961243d565b5b92915050565b7f54726164696e6720616c726561647920414420426162795348494220656e616260008201527f6c65642e00000000000000000000000000000000000000000000000000000000602082015250565b60006124fc602483612012565b9150612507826124a0565b604082019050919050565b6000602082019050818103600083015261252b816124ef565b9050919050565b7f455243323042616279534849423a2064656372656173656420616c6c6f77616e60008201527f63652062656c6f77207a65726f00000000000000000000000000000000000000602082015250565b600061258e602d83612012565b915061259982612532565b604082019050919050565b600060208201905081810360008301526125bd81612581565b9050919050565b7f4f776e61626c653a206e6577206f776e6572204261627953484942206973207460008201527f6865207a65726f20616464726573730000000000000000000000000000000000602082015250565b6000612620602f83612012565b915061262b826125c4565b604082019050919050565b6000602082019050818103600083015261264f81612613565b9050919050565b7f45524332303a20426162795348494220617070726f76652066726f6d2074686560008201527f207a65726f206164647265737300000000000000000000000000000000000000602082015250565b60006126b2602d83612012565b91506126bd82612656565b604082019050919050565b600060208201905081810360008301526126e1816126a5565b9050919050565b7f45524332303a20617070726f766520426162795348494220746f20746865207a60008201527f65726f2061646472657373000000000000000000000000000000000000000000602082015250565b6000612744602b83612012565b915061274f826126e8565b604082019050919050565b6000602082019050818103600083015261277381612737565b9050919050565b7f45524332303a207472616e736665722042616279534849422066726f6d20746860008201527f65207a65726f2061646472657373000000000000000000000000000000000000602082015250565b60006127d6602e83612012565b91506127e18261277a565b604082019050919050565b60006020820190508181036000830152612805816127c9565b9050919050565b7f45524332303a207472616e7366657220746f207468652041442042616279534860008201527f4942207a65726f20616464726573730000000000000000000000000000000000602082015250565b6000612868602f83612012565b91506128738261280c565b604082019050919050565b600060208201905081810360008301526128978161285b565b9050919050565b7f54726164696e67204261627953484942206e6f742079657420656e61626c656460008201527f2100000000000000000000000000000000000000000000000000000000000000602082015250565b60006128fa602183612012565b91506129058261289e565b604082019050919050565b60006020820190508181036000830152612929816128ed565b9050919050565b7f42616279534849423a207472616e736665722066726f6d20746865207a65726f60008201527f2061646472657373000000000000000000000000000000000000000000000000602082015250565b600061298c602883612012565b915061299782612930565b604082019050919050565b600060208201905081810360008301526129bb8161297f565b9050919050565b7f42616279534849423a207472616e7366657220746f20746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612a1e602683612012565b9150612a29826129c2565b604082019050919050565b60006020820190508181036000830152612a4d81612a11565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473204260008201527f616279534849422062616c616e63650000000000000000000000000000000000602082015250565b6000612ab0602f83612012565b9150612abb82612a54565b604082019050919050565b60006020820190508181036000830152612adf81612aa3565b9050919050565b6000612af1826120b9565b9150612afc836120b9565b9250828203905081811115612b1457612b1361243d565b5b9291505056fea26469706673582212209d67ca4d18507eac6568dc68c4f3bb4e1eb33912ba93db88160a9a0d6b07347964736f6c63430008110033