Overview ERC20
PRICE
$0.057777

ON-CHAIN MARKET CAP n/a

Total Supply:
1,000,000,000.00 YOSHI

Holders:
113
Profile Summary
Blockchain:
Ethereum (1)


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

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
No

Created At:
Thu, 31 Oct 2024 01:21:59 GMT
YOSHI.sol
contracts
YOSHI.sol


Contract ABI
[
  {
    "inputs": [
      {
        "internalType": "string",
        "name": "_name",
        "type": "string"
      },
      {
        "internalType": "string",
        "name": "_symbol",
        "type": "string"
      },
      {
        "internalType": "address",
        "name": "_treasury",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "_owner",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "_operationsWalletAddress",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "_router",
        "type": "address"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "constructor"
  },
  {
    "inputs": [],
    "name": "CallFailed",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "CannotPauseAgain",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "CannotSetMaxTxAmountToLessThanHalfPercent",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "CannotSetMaxTxAmountToMoreThan10Percent",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "from",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      }
    ],
    "name": "ERC20BlacklistedAddress",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxTxAmount",
        "type": "uint256"
      }
    ],
    "name": "ERC20ExceedsMaxTxAmount",
    "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": "ERC20NoBuyFromContracts",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxTxAmount",
        "type": "uint256"
      }
    ],
    "name": "ERC20TransferExceedsMaxTx",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "maxWalletAmount",
        "type": "uint256"
      }
    ],
    "name": "ERC20TransferExceedsMaxWallet",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "EnforcedPause",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "ExpectedPause",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "addr",
        "type": "address"
      }
    ],
    "name": "InvalidAddress",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "LiquidityIsStillLocked",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "NotOwnerOrOperations",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "OnlyOneBuyPerBlock",
    "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": "TaxExceeds10Percent",
    "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": "addy",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "bool",
        "name": "changer",
        "type": "bool"
      }
    ],
    "name": "BlacklistAddress",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "ethAmount",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "tokenAmount",
        "type": "uint256"
      }
    ],
    "name": "LiquidityAdded",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "owner",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "LiquidityRecovered",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "from",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "to",
        "type": "uint256"
      }
    ],
    "name": "MaxTxAmountChange",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "from",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "to",
        "type": "uint256"
      }
    ],
    "name": "MaxWalletChange",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "bool",
        "name": "changer",
        "type": "bool"
      }
    ],
    "name": "NoBuyFromContracts",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "int8",
        "name": "t",
        "type": "int8"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "from",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "to",
        "type": "uint256"
      }
    ],
    "name": "OperationsTaxChange",
    "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": false,
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "Paused",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "from",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "to",
        "type": "address"
      }
    ],
    "name": "PoolChanged",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "address",
        "name": "_newWallet",
        "type": "address"
      }
    ],
    "name": "SetOperationsWallet",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "tokensSwapped",
        "type": "uint256"
      }
    ],
    "name": "SwapAndLiquify",
    "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": "amount",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amountAfterTax",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "tax",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "taxRate",
        "type": "uint256"
      }
    ],
    "name": "TaxedTransfer",
    "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"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "Unpaused",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "addy",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "bool",
        "name": "changer",
        "type": "bool"
      }
    ],
    "name": "WhitelistAddress",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "WithdrawETH",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "address",
        "name": "token",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "WithdrawTokens",
    "type": "event"
  },
  {
    "inputs": [],
    "name": "_progressSwap",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "addLiquidity",
    "outputs": [],
    "stateMutability": "payable",
    "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": "addy",
        "type": "address"
      },
      {
        "internalType": "bool",
        "name": "changer",
        "type": "bool"
      }
    ],
    "name": "blacklistAddress",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "blacklistedAddresses",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "decimals",
    "outputs": [
      {
        "internalType": "uint8",
        "name": "",
        "type": "uint8"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "addy",
        "type": "address"
      },
      {
        "internalType": "bool",
        "name": "changer",
        "type": "bool"
      }
    ],
    "name": "emergencyTaxRemoval",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getLowerTxValue",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getUpperTxValue",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "hasFee",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "maxTxAmount",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "_maxTxAmount",
        "type": "uint256"
      }
    ],
    "name": "maxTxAmountChange",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "maxWalletAmount",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "_maxWalletAmount",
        "type": "uint256"
      }
    ],
    "name": "maxWalletChange",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "name",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "operationsTaxBuy",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "operationsTaxSell",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "operationsWallet",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "owner",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "pauseOnce",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "paused",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "pausedOnce",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "renounceOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "router",
    "outputs": [
      {
        "internalType": "contract IUniswapV2Router02",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "_tax",
        "type": "uint256"
      }
    ],
    "name": "setOperationsTaxBuy",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "_tax",
        "type": "uint256"
      }
    ],
    "name": "setOperationsTaxSell",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "_newWallet",
        "type": "address"
      }
    ],
    "name": "setOperationsWallet",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "symbol",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "totalSupply",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "transfer",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "from",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "transferFrom",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "newOwner",
        "type": "address"
      }
    ],
    "name": "transferOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "uniswapV2Pair",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "unpause",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "whitelistedAddresses",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "withdrawETH",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "token",
        "type": "address"
      }
    ],
    "name": "withdrawTokens",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "stateMutability": "payable",
    "type": "receive"
  }
]


Contract Creation Code
60806040526005600c556005600d556000600f60146101000a81548160ff0219169083151502179055506000600f60156101000a81548160ff0219169083151502179055503480156200005157600080fd5b506040516200608b3803806200608b833981810160405281019062000077919062001c0d565b858585858486828686816003908162000091919062001f32565b508060049081620000a3919062001f32565b505050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036200011b5760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016200011291906200202a565b60405180910390fd5b6200012c81620008bd60201b60201c565b506000600560146101000a81548160ff02191690831515021790555081600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b6000620002906200098360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000675573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200069b919062002047565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000725573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200074b919062002047565b6040518363ffffffff1660e01b81526004016200076a92919062002079565b6020604051808303816000875af11580156200078a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007b0919062002047565b600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600b6000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050505050506200088e846b033b2e3c9fd0803ce8000000620009ad60201b60201c565b69152d02c7e14af68000006006819055506a01a784379d99db4200000060078190555050505050505062002522565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000a225760006040517fec442f0500000000000000000000000000000000000000000000000000000000815260040162000a1991906200202a565b60405180910390fd5b62000a366000838362000a3a60201b60201c565b5050565b62000a4a620012ec60201b60201c565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000abf5760006040517fec442f0500000000000000000000000000000000000000000000000000000000815260040162000ab691906200202a565b60405180910390fd5b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168062000b615750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1562000ba85782826040517fd6fdca5700000000000000000000000000000000000000000000000000000000815260040162000b9f92919062002079565b60405180910390fd5b600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801562000c4d5750600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1562000d6c57600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161462000d6b57600060065490508082111562000cfa5781816040517f1026baf800000000000000000000000000000000000000000000000000000000815260040162000cf1929190620020b7565b60405180910390fd5b600060075490508062000d13856200133660201b60201c565b8462000d20919062002113565b111562000d685782816040517ff4f86d2d00000000000000000000000000000000000000000000000000000000815260040162000d5f929190620020b7565b60405180910390fd5b50505b5b6000819050600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801562000e165750600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15620012d357600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148062000ec65750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b15620012d25760065482111562000f1a57816006546040517fac5219fa00000000000000000000000000000000000000000000000000000000815260040162000f11929190620020b7565b60405180910390fd5b6000600c5411801562000f7a57508373ffffffffffffffffffffffffffffffffffffffff16600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b801562000fd15750600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156200100a57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15620010cf576000600c5490506000606482856200102991906200214e565b620010359190620021c8565b90506200104a8630836200137e60201b60201c565b808462001058919062002200565b92508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f950bf68fecec7b605a7ba01ed8c599a388694fd2f5b588a71f54ccd1c01ca16b86868587604051620010bf94939291906200223b565b60405180910390a35050620012d1565b8273ffffffffffffffffffffffffffffffffffffffff16600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148015620011775750600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015620011b057503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015620011ca5750600f60149054906101000a900460ff16155b15620012d0576000600d549050600060648285620011e991906200214e565b620011f59190620021c8565b90506200120a8630836200137e60201b60201c565b6001600f60146101000a81548160ff021916908315150217905550620012356200148060201b60201c565b6000600f60146101000a81548160ff02191690831515021790555080846200125e919062002200565b92508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f950bf68fecec7b605a7ba01ed8c599a388694fd2f5b588a71f54ccd1c01ca16b86868587604051620012c594939291906200223b565b60405180910390a350505b5b5b5b620012e6848483620017ce60201b60201c565b50505050565b620012fc620019fe60201b60201c565b1562001334576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620013f35760006040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401620013ea91906200202a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620014685760006040517fec442f050000000000000000000000000000000000000000000000000000000081526004016200145f91906200202a565b60405180910390fd5b6200147b83838362000a3a60201b60201c565b505050565b600062001493306200133660201b60201c565b905060008103620014a55750620017cc565b6000600267ffffffffffffffff811115620014c557620014c462001a44565b5b604051908082528060200260200182016040528015620014f45781602001602082028036833780820191505090505b50905030816000815181106200150f576200150e62002288565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620015b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015dd919062002047565b81600181518110620015f457620015f362002288565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250503073ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b81526004016200168d929190620022b7565b6020604051808303816000875af1158015620016ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016d3919062002321565b50600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b81526004016200175c95949392919062002464565b600060405180830381600087803b1580156200177757600080fd5b505af11580156200178c573d6000803e3d6000fd5b505050507f42c9c0bd1fc983236459b9be3c73e1bb9bcec04b2a2dafe47ffe5629d4bbc20782604051620017c19190620024c8565b60405180910390a150505b565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036200182457806002600082825462001817919062002113565b92505081905550620018fa565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015620018b3578381836040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401620018aa93929190620024e5565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362001945578060026000828254039250508190555062001992565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620019f19190620024c8565b60405180910390a3505050565b6000600560149054906101000a900460ff16905090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62001a7e8262001a33565b810181811067ffffffffffffffff8211171562001aa05762001a9f62001a44565b5b80604052505050565b600062001ab562001a15565b905062001ac3828262001a73565b919050565b600067ffffffffffffffff82111562001ae65762001ae562001a44565b5b62001af18262001a33565b9050602081019050919050565b60005b8381101562001b1e57808201518184015260208101905062001b01565b60008484015250505050565b600062001b4162001b3b8462001ac8565b62001aa9565b90508281526020810184848401111562001b605762001b5f62001a2e565b5b62001b6d84828562001afe565b509392505050565b600082601f83011262001b8d5762001b8c62001a29565b5b815162001b9f84826020860162001b2a565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062001bd58262001ba8565b9050919050565b62001be78162001bc8565b811462001bf357600080fd5b50565b60008151905062001c078162001bdc565b92915050565b60008060008060008060c0878903121562001c2d5762001c2c62001a1f565b5b600087015167ffffffffffffffff81111562001c4e5762001c4d62001a24565b5b62001c5c89828a0162001b75565b965050602087015167ffffffffffffffff81111562001c805762001c7f62001a24565b5b62001c8e89828a0162001b75565b955050604062001ca189828a0162001bf6565b945050606062001cb489828a0162001bf6565b935050608062001cc789828a0162001bf6565b92505060a062001cda89828a0162001bf6565b9150509295509295509295565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062001d3a57607f821691505b60208210810362001d505762001d4f62001cf2565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262001dba7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262001d7b565b62001dc6868362001d7b565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062001e1362001e0d62001e078462001dde565b62001de8565b62001dde565b9050919050565b6000819050919050565b62001e2f8362001df2565b62001e4762001e3e8262001e1a565b84845462001d88565b825550505050565b600090565b62001e5e62001e4f565b62001e6b81848462001e24565b505050565b5b8181101562001e935762001e8760008262001e54565b60018101905062001e71565b5050565b601f82111562001ee25762001eac8162001d56565b62001eb78462001d6b565b8101602085101562001ec7578190505b62001edf62001ed68562001d6b565b83018262001e70565b50505b505050565b600082821c905092915050565b600062001f076000198460080262001ee7565b1980831691505092915050565b600062001f22838362001ef4565b9150826002028217905092915050565b62001f3d8262001ce7565b67ffffffffffffffff81111562001f595762001f5862001a44565b5b62001f65825462001d21565b62001f7282828562001e97565b600060209050601f83116001811462001faa576000841562001f95578287015190505b62001fa1858262001f14565b86555062002011565b601f19841662001fba8662001d56565b60005b8281101562001fe45784890151825560018201915060208501945060208101905062001fbd565b8683101562002004578489015162002000601f89168262001ef4565b8355505b6001600288020188555050505b505050505050565b620020248162001bc8565b82525050565b600060208201905062002041600083018462002019565b92915050565b60006020828403121562002060576200205f62001a1f565b5b6000620020708482850162001bf6565b91505092915050565b600060408201905062002090600083018562002019565b6200209f602083018462002019565b9392505050565b620020b18162001dde565b82525050565b6000604082019050620020ce6000830185620020a6565b620020dd6020830184620020a6565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620021208262001dde565b91506200212d8362001dde565b9250828201905080821115620021485762002147620020e4565b5b92915050565b60006200215b8262001dde565b9150620021688362001dde565b9250828202620021788162001dde565b91508282048414831517620021925762002191620020e4565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620021d58262001dde565b9150620021e28362001dde565b925082620021f557620021f462002199565b5b828204905092915050565b60006200220d8262001dde565b91506200221a8362001dde565b9250828203905081811115620022355762002234620020e4565b5b92915050565b6000608082019050620022526000830187620020a6565b620022616020830186620020a6565b620022706040830185620020a6565b6200227f6060830184620020a6565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000604082019050620022ce600083018562002019565b620022dd6020830184620020a6565b9392505050565b60008115159050919050565b620022fb81620022e4565b81146200230757600080fd5b50565b6000815190506200231b81620022f0565b92915050565b6000602082840312156200233a576200233962001a1f565b5b60006200234a848285016200230a565b91505092915050565b6000819050919050565b60006200237e62002378620023728462002353565b62001de8565b62001dde565b9050919050565b62002390816200235d565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b620023cd8162001bc8565b82525050565b6000620023e18383620023c2565b60208301905092915050565b6000602082019050919050565b6000620024078262002396565b620024138185620023a1565b93506200242083620023b2565b8060005b83811015620024575781516200243b8882620023d3565b97506200244883620023ed565b92505060018101905062002424565b5085935050505092915050565b600060a0820190506200247b6000830188620020a6565b6200248a602083018762002385565b81810360408301526200249e8186620023fa565b9050620024af606083018562002019565b620024be6080830184620020a6565b9695505050505050565b6000602082019050620024df6000830184620020a6565b92915050565b6000606082019050620024fc600083018662002019565b6200250b6020830185620020a6565b6200251a6040830184620020a6565b949350505050565b613b5980620025326000396000f3fe6080604052600436106102345760003560e01c8063715018a61161012e578063d5749d42116100ab578063ef437ff51161006f578063ef437ff514610807578063ef46d6b014610830578063f2fde38b1461085b578063f887ea4014610884578063fd72e22a146108af5761023b565b8063d5749d4214610743578063dd62ed3e14610780578063e086e5ec146107bd578063e8078d94146107d4578063ee5ecc89146107de5761023b565b80638da5cb5b116100f25780638da5cb5b1461065a57806395d89b41146106855780639f31e369146106b0578063a9059cbb146106db578063aa4bde28146107185761023b565b8063715018a614610587578063740f820a1461059e5780637497e296146105c757806375ca0b46146106045780638c0b5e221461062f5761023b565b806337df2de2116101bc57806349df728c1161018057806349df728c146104a25780635c975abb146104cb5780635e27922e146104f6578063614eca141461052157806370a082311461054a5761023b565b806337df2de2146103e15780633f4ba83a1461040c578063432c771a14610423578063455a43961461044e57806349bd5a5e146104775761023b565b806318160ddd1161020357806318160ddd1461030e5780631f6dcb0b1461033957806323b872dd14610362578063313ce5671461039f57806331c224a6146103ca5761023b565b806306c933d81461024057806306fdde031461027d578063095ea7b3146102a85780630ab68e47146102e55761023b565b3661023b57005b600080fd5b34801561024c57600080fd5b5061026760048036038101906102629190613075565b6108da565b60405161027491906130bd565b60405180910390f35b34801561028957600080fd5b506102926108fa565b60405161029f9190613168565b60405180910390f35b3480156102b457600080fd5b506102cf60048036038101906102ca91906131c0565b61098c565b6040516102dc91906130bd565b60405180910390f35b3480156102f157600080fd5b5061030c60048036038101906103079190613200565b6109af565b005b34801561031a57600080fd5b506103236109fc565b604051610330919061323c565b60405180910390f35b34801561034557600080fd5b50610360600480360381019061035b9190613200565b610a06565b005b34801561036e57600080fd5b5061038960048036038101906103849190613257565b610a53565b60405161039691906130bd565b60405180910390f35b3480156103ab57600080fd5b506103b4610a82565b6040516103c191906132c6565b60405180910390f35b3480156103d657600080fd5b506103df610a8b565b005b3480156103ed57600080fd5b506103f6610aff565b604051610403919061323c565b60405180910390f35b34801561041857600080fd5b50610421610b26565b005b34801561042f57600080fd5b50610438610b38565b60405161044591906130bd565b60405180910390f35b34801561045a57600080fd5b506104756004803603810190610470919061330d565b610b4b565b005b34801561048357600080fd5b5061048c610bfc565b604051610499919061335c565b60405180910390f35b3480156104ae57600080fd5b506104c960048036038101906104c49190613075565b610c22565b005b3480156104d757600080fd5b506104e0610e54565b6040516104ed91906130bd565b60405180910390f35b34801561050257600080fd5b5061050b610e6b565b604051610518919061323c565b60405180910390f35b34801561052d57600080fd5b5061054860048036038101906105439190613200565b610e71565b005b34801561055657600080fd5b50610571600480360381019061056c9190613075565b610fca565b60405161057e919061323c565b60405180910390f35b34801561059357600080fd5b5061059c611012565b005b3480156105aa57600080fd5b506105c560048036038101906105c09190613200565b611026565b005b3480156105d357600080fd5b506105ee60048036038101906105e99190613075565b61117f565b6040516105fb91906130bd565b60405180910390f35b34801561061057600080fd5b5061061961119f565b604051610626919061323c565b60405180910390f35b34801561063b57600080fd5b506106446111a5565b604051610651919061323c565b60405180910390f35b34801561066657600080fd5b5061066f6111ab565b60405161067c919061335c565b60405180910390f35b34801561069157600080fd5b5061069a6111d5565b6040516106a79190613168565b60405180910390f35b3480156106bc57600080fd5b506106c5611267565b6040516106d291906130bd565b60405180910390f35b3480156106e757600080fd5b5061070260048036038101906106fd91906131c0565b61127a565b60405161070f91906130bd565b60405180910390f35b34801561072457600080fd5b5061072d61129d565b60405161073a919061323c565b60405180910390f35b34801561074f57600080fd5b5061076a60048036038101906107659190613075565b6112a3565b60405161077791906130bd565b60405180910390f35b34801561078c57600080fd5b506107a760048036038101906107a29190613377565b6112c3565b6040516107b4919061323c565b60405180910390f35b3480156107c957600080fd5b506107d261134a565b005b6107dc611525565b005b3480156107ea57600080fd5b5061080560048036038101906108009190613075565b611736565b005b34801561081357600080fd5b5061082e6004803603810190610829919061330d565b6119ec565b005b34801561083c57600080fd5b50610845611b6b565b604051610852919061323c565b60405180910390f35b34801561086757600080fd5b50610882600480360381019061087d9190613075565b611b92565b005b34801561089057600080fd5b50610899611c18565b6040516108a69190613416565b60405180910390f35b3480156108bb57600080fd5b506108c4611c3e565b6040516108d1919061335c565b60405180910390f35b600b6020528060005260406000206000915054906101000a900460ff1681565b60606003805461090990613460565b80601f016020809104026020016040519081016040528092919081815260200182805461093590613460565b80156109825780601f1061095757610100808354040283529160200191610982565b820191906000526020600020905b81548152906001019060200180831161096557829003601f168201915b5050505050905090565b600080610997611c64565b90506109a4818585611c6c565b600191505092915050565b6109b7611c7e565b7fe3052f2f134f247948088ca6829f4168989b7313f1b54de88cc18178a249de4b600654826040516109ea929190613491565b60405180910390a18060068190555050565b6000600254905090565b610a0e611c7e565b7f1b970b75ef934269cd0be4373c907bd8a8527f3413dc1ae746eebf30d2aee1cb60075482604051610a41929190613491565b60405180910390a18060078190555050565b600080610a5e611c64565b9050610a6b858285611d05565b610a76858585611d99565b60019150509392505050565b60006012905090565b610a93611c7e565b600f60159054906101000a900460ff1615610ada576040517f14e0430500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600f60156101000a81548160ff021916908315150217905550610afd611e8d565b565b60006064600a610b0d6109fc565b610b1791906134e9565b610b21919061355a565b905090565b610b2e611c7e565b610b36611ef0565b565b600f60149054906101000a900460ff1681565b610b53611c7e565b80600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f09fb98d4f02479ce251faed0f992a3c326d006e19ffa4f7269239763a644f72582604051610bf091906130bd565b60405180910390a25050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610c2a611c64565b73ffffffffffffffffffffffffffffffffffffffff16610c486111ab565b73ffffffffffffffffffffffffffffffffffffffff1614158015610cc15750610c6f611c64565b73ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b15610cf8576040517f1045f14200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610d33919061335c565b602060405180830381865afa158015610d50573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7491906135a0565b90508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401610dd39291906135cd565b6020604051808303816000875af1158015610df2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e16919061360b565b507f680f2e4f4032ebf1774e8cdbaddcb1b617a5a606411c8ca96257ada338d3833c8282604051610e489291906135cd565b60405180910390a15050565b6000600560149054906101000a900460ff16905090565b600c5481565b610e79611c64565b73ffffffffffffffffffffffffffffffffffffffff16610e976111ab565b73ffffffffffffffffffffffffffffffffffffffff1614158015610f105750610ebe611c64565b73ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b15610f47576040517f1045f14200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6005811115610f82576040517f562a566500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600c819055507f8e6ab5a3ef7850e3581114828d52b8029bd1a04919b33b282f75213bb8481dd46001600c5483604051610fbf93929190613680565b60405180910390a150565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61101a611c7e565b6110246000611f53565b565b61102e611c64565b73ffffffffffffffffffffffffffffffffffffffff1661104c6111ab565b73ffffffffffffffffffffffffffffffffffffffff16141580156110c55750611073611c64565b73ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b156110fc576040517f1045f14200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6005811115611137576040517f562a566500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600d819055507f8e6ab5a3ef7850e3581114828d52b8029bd1a04919b33b282f75213bb8481dd46002600d5483604051611174939291906136f2565b60405180910390a150565b60096020528060005260406000206000915054906101000a900460ff1681565b600d5481565b60065481565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546111e490613460565b80601f016020809104026020016040519081016040528092919081815260200182805461121090613460565b801561125d5780601f106112325761010080835404028352916020019161125d565b820191906000526020600020905b81548152906001019060200180831161124057829003601f168201915b5050505050905090565b600f60159054906101000a900460ff1681565b600080611285611c64565b9050611292818585611d99565b600191505092915050565b60075481565b600a6020528060005260406000206000915054906101000a900460ff1681565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611352611c64565b73ffffffffffffffffffffffffffffffffffffffff166113706111ab565b73ffffffffffffffffffffffffffffffffffffffff16141580156113e95750611397611c64565b73ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b15611420576040517f1045f14200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60004790506000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168260405161146d9061375a565b60006040518083038185875af1925050503d80600081146114aa576040519150601f19603f3d011682016040523d82523d6000602084013e6114af565b606091505b50509050806114ea576040517f3204506f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f94effa14ea3a1ef396fa2fd829336d1597f1d76b548c26bfa2332869706638af82604051611519919061323c565b60405180910390a15050565b61152d611c64565b73ffffffffffffffffffffffffffffffffffffffff1661154b6111ab565b73ffffffffffffffffffffffffffffffffffffffff16141580156115c45750611572611c64565b73ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b156115fb576040517f1045f14200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061160633610fca565b9050611613333083611d99565b61164030600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683611c6c565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7193430846000803361038442611693919061376f565b6040518863ffffffff1660e01b81526004016116b4969594939291906137de565b60606040518083038185885af11580156116d2573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906116f7919061383f565b5050507f38f8a0c92f4c5b0b6877f878cb4c0c8d348a47b76d716c8e78f425043df9515b348260405161172b929190613491565b60405180910390a150565b61173e611c64565b73ffffffffffffffffffffffffffffffffffffffff1661175c6111ab565b73ffffffffffffffffffffffffffffffffffffffff16141580156117d55750611783611c64565b73ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b1561180c576040517f1045f14200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361187d57806040517f8e4c8aa6000000000000000000000000000000000000000000000000000000008152600401611874919061335c565b60405180910390fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f56a15c3c0ab49fe2049a0c64f269486c32caf6fa97679f011f7c9c3c82e526ca816040516119e1919061335c565b60405180910390a150565b6119f4611c64565b73ffffffffffffffffffffffffffffffffffffffff16611a126111ab565b73ffffffffffffffffffffffffffffffffffffffff1614158015611a8b5750611a39611c64565b73ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b15611ac2576040517f1045f14200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f33e0bf3ce98fac4118d5a0a8fe49e83b6acdfdef32871c9eca20e1528d7701ba82604051611b5f91906130bd565b60405180910390a25050565b600060c86001611b796109fc565b611b8391906134e9565b611b8d919061355a565b905090565b611b9a611c7e565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611c0c5760006040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401611c03919061335c565b60405180910390fd5b611c1581611f53565b50565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600033905090565b611c798383836001612019565b505050565b611c86611c64565b73ffffffffffffffffffffffffffffffffffffffff16611ca46111ab565b73ffffffffffffffffffffffffffffffffffffffff1614611d0357611cc7611c64565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401611cfa919061335c565b60405180910390fd5b565b6000611d1184846112c3565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611d935781811015611d83578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401611d7a93929190613892565b60405180910390fd5b611d9284848484036000612019565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611e0b5760006040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401611e02919061335c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611e7d5760006040517fec442f05000000000000000000000000000000000000000000000000000000008152600401611e74919061335c565b60405180910390fd5b611e888383836121f0565b505050565b611e95612a40565b6001600560146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611ed9611c64565b604051611ee6919061335c565b60405180910390a1565b611ef8612a81565b6000600560146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611f3c611c64565b604051611f49919061335c565b60405180910390a1565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff160361208b5760006040517fe602df05000000000000000000000000000000000000000000000000000000008152600401612082919061335c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036120fd5760006040517f94280d620000000000000000000000000000000000000000000000000000000081526004016120f4919061335c565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080156121ea578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516121e1919061323c565b60405180910390a35b50505050565b6121f8612a40565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361226a5760006040517fec442f05000000000000000000000000000000000000000000000000000000008152600401612261919061335c565b60405180910390fd5b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061230b5750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561234f5782826040517fd6fdca570000000000000000000000000000000000000000000000000000000081526004016123469291906138c9565b60405180910390fd5b600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156123f35750600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561250057600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146124ff57600060065490508082111561249b5781816040517f1026baf8000000000000000000000000000000000000000000000000000000008152600401612492929190613491565b60405180910390fd5b60006007549050806124ac85610fca565b846124b7919061376f565b11156124fc5782816040517ff4f86d2d0000000000000000000000000000000000000000000000000000000081526004016124f3929190613491565b60405180910390fd5b50505b5b6000819050600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156125a95750600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15612a2f57600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806126575750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b15612a2e576006548211156126a757816006546040517fac5219fa00000000000000000000000000000000000000000000000000000000815260040161269e929190613491565b60405180910390fd5b6000600c5411801561270657508373ffffffffffffffffffffffffffffffffffffffff16600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b801561275c5750600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561279457503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15612847576000600c5490506000606482856127b091906134e9565b6127ba919061355a565b90506127c7863083611d99565b80846127d391906138f2565b92508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f950bf68fecec7b605a7ba01ed8c599a388694fd2f5b588a71f54ccd1c01ca16b868685876040516128389493929190613926565b60405180910390a35050612a2d565b8273ffffffffffffffffffffffffffffffffffffffff16600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480156128ee5750600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561292657503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561293f5750600f60149054906101000a900460ff16155b15612a2c576000600d54905060006064828561295b91906134e9565b612965919061355a565b9050612972863083611d99565b6001600f60146101000a81548160ff021916908315150217905550612995612ac1565b6000600f60146101000a81548160ff02191690831515021790555080846129bc91906138f2565b92508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f950bf68fecec7b605a7ba01ed8c599a388694fd2f5b588a71f54ccd1c01ca16b86868587604051612a219493929190613926565b60405180910390a350505b5b5b5b612a3a848483612ded565b50505050565b612a48610e54565b15612a7f576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b612a89610e54565b612abf576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6000612acc30610fca565b905060008103612adc5750612deb565b6000600267ffffffffffffffff811115612af957612af861396b565b5b604051908082528060200260200182016040528015612b275781602001602082028036833780820191505090505b5090503081600081518110612b3f57612b3e61399a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612be6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c0a91906139de565b81600181518110612c1e57612c1d61399a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250503073ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b8152600401612cb59291906135cd565b6020604051808303816000875af1158015612cd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf8919061360b565b50600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b8152600401612d7f959493929190613ac9565b600060405180830381600087803b158015612d9957600080fd5b505af1158015612dad573d6000803e3d6000fd5b505050507f42c9c0bd1fc983236459b9be3c73e1bb9bcec04b2a2dafe47ffe5629d4bbc20782604051612de0919061323c565b60405180910390a150505b565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612e3f578060026000828254612e33919061376f565b92505081905550612f12565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015612ecb578381836040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401612ec293929190613892565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612f5b5780600260008282540392505081905550612fa8565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051613005919061323c565b60405180910390a3505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061304282613017565b9050919050565b61305281613037565b811461305d57600080fd5b50565b60008135905061306f81613049565b92915050565b60006020828403121561308b5761308a613012565b5b600061309984828501613060565b91505092915050565b60008115159050919050565b6130b7816130a2565b82525050565b60006020820190506130d260008301846130ae565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156131125780820151818401526020810190506130f7565b60008484015250505050565b6000601f19601f8301169050919050565b600061313a826130d8565b61314481856130e3565b93506131548185602086016130f4565b61315d8161311e565b840191505092915050565b60006020820190508181036000830152613182818461312f565b905092915050565b6000819050919050565b61319d8161318a565b81146131a857600080fd5b50565b6000813590506131ba81613194565b92915050565b600080604083850312156131d7576131d6613012565b5b60006131e585828601613060565b92505060206131f6858286016131ab565b9150509250929050565b60006020828403121561321657613215613012565b5b6000613224848285016131ab565b91505092915050565b6132368161318a565b82525050565b6000602082019050613251600083018461322d565b92915050565b6000806000606084860312156132705761326f613012565b5b600061327e86828701613060565b935050602061328f86828701613060565b92505060406132a0868287016131ab565b9150509250925092565b600060ff82169050919050565b6132c0816132aa565b82525050565b60006020820190506132db60008301846132b7565b92915050565b6132ea816130a2565b81146132f557600080fd5b50565b600081359050613307816132e1565b92915050565b6000806040838503121561332457613323613012565b5b600061333285828601613060565b9250506020613343858286016132f8565b9150509250929050565b61335681613037565b82525050565b6000602082019050613371600083018461334d565b92915050565b6000806040838503121561338e5761338d613012565b5b600061339c85828601613060565b92505060206133ad85828601613060565b9150509250929050565b6000819050919050565b60006133dc6133d76133d284613017565b6133b7565b613017565b9050919050565b60006133ee826133c1565b9050919050565b6000613400826133e3565b9050919050565b613410816133f5565b82525050565b600060208201905061342b6000830184613407565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061347857607f821691505b60208210810361348b5761348a613431565b5b50919050565b60006040820190506134a6600083018561322d565b6134b3602083018461322d565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006134f48261318a565b91506134ff8361318a565b925082820261350d8161318a565b91508282048414831517613524576135236134ba565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006135658261318a565b91506135708361318a565b9250826135805761357f61352b565b5b828204905092915050565b60008151905061359a81613194565b92915050565b6000602082840312156135b6576135b5613012565b5b60006135c48482850161358b565b91505092915050565b60006040820190506135e2600083018561334d565b6135ef602083018461322d565b9392505050565b600081519050613605816132e1565b92915050565b60006020828403121561362157613620613012565b5b600061362f848285016135f6565b91505092915050565b6000819050919050565b60008160000b9050919050565b600061366a61366561366084613638565b6133b7565b613642565b9050919050565b61367a8161364f565b82525050565b60006060820190506136956000830186613671565b6136a2602083018561322d565b6136af604083018461322d565b949350505050565b6000819050919050565b60006136dc6136d76136d2846136b7565b6133b7565b613642565b9050919050565b6136ec816136c1565b82525050565b600060608201905061370760008301866136e3565b613714602083018561322d565b613721604083018461322d565b949350505050565b600081905092915050565b50565b6000613744600083613729565b915061374f82613734565b600082019050919050565b600061376582613737565b9150819050919050565b600061377a8261318a565b91506137858361318a565b925082820190508082111561379d5761379c6134ba565b5b92915050565b6000819050919050565b60006137c86137c36137be846137a3565b6133b7565b61318a565b9050919050565b6137d8816137ad565b82525050565b600060c0820190506137f3600083018961334d565b613800602083018861322d565b61380d60408301876137cf565b61381a60608301866137cf565b613827608083018561334d565b61383460a083018461322d565b979650505050505050565b60008060006060848603121561385857613857613012565b5b60006138668682870161358b565b93505060206138778682870161358b565b92505060406138888682870161358b565b9150509250925092565b60006060820190506138a7600083018661334d565b6138b4602083018561322d565b6138c1604083018461322d565b949350505050565b60006040820190506138de600083018561334d565b6138eb602083018461334d565b9392505050565b60006138fd8261318a565b91506139088361318a565b92508282039050818111156139205761391f6134ba565b5b92915050565b600060808201905061393b600083018761322d565b613948602083018661322d565b613955604083018561322d565b613962606083018461322d565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815190506139d881613049565b92915050565b6000602082840312156139f4576139f3613012565b5b6000613a02848285016139c9565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613a4081613037565b82525050565b6000613a528383613a37565b60208301905092915050565b6000602082019050919050565b6000613a7682613a0b565b613a808185613a16565b9350613a8b83613a27565b8060005b83811015613abc578151613aa38882613a46565b9750613aae83613a5e565b925050600181019050613a8f565b5085935050505092915050565b600060a082019050613ade600083018861322d565b613aeb60208301876137cf565b8181036040830152613afd8186613a6b565b9050613b0c606083018561334d565b613b19608083018461322d565b969550505050505056fea26469706673582212202550183b77e6f3a614c98cbe12d868b76a303b127ee016c77df4e2436c730eaa64736f6c6343000814003300000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000100000000000000000000000000b16d6790c85bf3c505882b3aa2cd2cc6b02a7115000000000000000000000000b16d6790c85bf3c505882b3aa2cd2cc6b02a7115000000000000000000000000b16d6790c85bf3c505882b3aa2cd2cc6b02a71150000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000000000000000000000000000000000000000000005594f5348490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005594f534849000000000000000000000000000000000000000000000000000000
Constructor Arguments
(ABI-Encoded and is the last bytes of the Contract Creation Code above)
0x00000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000100000000000000000000000000b16d6790c85bf3c505882b3aa2cd2cc6b02a7115000000000000000000000000b16d6790c85bf3c505882b3aa2cd2cc6b02a7115000000000000000000000000b16d6790c85bf3c505882b3aa2cd2cc6b02a71150000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000000000000000000000000000000000000000000005594f5348490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005594f534849000000000000000000000000000000000000000000000000000000

----Decoded View------------Arg [0] : _name (string): YOSHIArg [1] : _symbol (string): YOSHIArg [2] : _treasury (address): 0xb16d6790C85bf3C505882B3AA2CD2CC6b02a7115Arg [3] : _owner (address): 0xb16d6790C85bf3C505882B3AA2CD2CC6b02a7115Arg [4] : _operationsWalletAddress (address): 0xb16d6790C85bf3C505882B3AA2CD2CC6b02a7115Arg [5] : _router (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D

----Encoded View------------Arg [0] : 0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000005594f534849000000000000000000000000000000000000000000000000000000Arg [1] : 0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000005594f534849000000000000000000000000000000000000000000000000000000Arg [2] : 0x000000000000000000000000b16d6790c85bf3c505882b3aa2cd2cc6b02a7115Arg [3] : 0x000000000000000000000000b16d6790c85bf3c505882b3aa2cd2cc6b02a7115Arg [4] : 0x000000000000000000000000b16d6790c85bf3c505882b3aa2cd2cc6b02a7115Arg [5] : 0x0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d