Overview ERC20
PRICE
$0.03273

ON-CHAIN MARKET CAP n/a

Total Supply:
20,000,000.00 PBTC

Holders:
64
Profile Summary
Blockchain:
Ethereum (1)


Decimals:
9
Contract Source Code Verified (Partial Match)
Contract Name:
PublicBitcoin

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
No

Created At:
Wed, 01 Nov 2023 08:07:11 GMT
PublicBitcoin.sol
PublicBitcoin.sol
PublicBitcoin.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": false,
        "internalType": "uint256",
        "name": "_maxTxAmount",
        "type": "uint256"
      }
    ],
    "name": "MaxTxAmountUpdated",
    "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": "_maxTxAmount",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_maxWalletSize",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "_swapTokensAtAmount",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "owner",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      }
    ],
    "name": "allowance",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "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": "pure",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address[]",
        "name": "accounts",
        "type": "address[]"
      },
      {
        "internalType": "bool",
        "name": "excluded",
        "type": "bool"
      }
    ],
    "name": "excludeMultipleAccountsFromFees",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "manualsend",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "manualswap",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "name",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "pure",
    "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": "uint256",
        "name": "redisFeeOnBuy",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "redisFeeOnSell",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "taxFeeOnBuy",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "taxFeeOnSell",
        "type": "uint256"
      }
    ],
    "name": "setFee",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "maxTxAmount",
        "type": "uint256"
      }
    ],
    "name": "setMaxTxnAmount",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "maxWalletSize",
        "type": "uint256"
      }
    ],
    "name": "setMaxWalletSize",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "swapTokensAtAmount",
        "type": "uint256"
      }
    ],
    "name": "setMinSwapTokensThreshold",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bool",
        "name": "_tradingOpen",
        "type": "bool"
      }
    ],
    "name": "setTrading",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "symbol",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "pure",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bool",
        "name": "_swapEnabled",
        "type": "bool"
      }
    ],
    "name": "toggleSwap",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "totalFees",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "totalSupply",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "pure",
    "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"
  },
  {
    "inputs": [],
    "name": "uniswapV2Pair",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "uniswapV2Router",
    "outputs": [
      {
        "internalType": "contract IUniswapV2Router02",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "stateMutability": "payable",
    "type": "receive"
  }
]


Contract Creation Code
608060405266470de4df8200006000196200001b91906200070b565b6000196200002a919062000772565b600655600060085560146009556000600a556028600b55600a54600d55600b54600e55600d54600f55600e546010557396a5fcb847069f87fd503b0e05f015439f9ec74a601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507396a5fcb847069f87fd503b0e05f015439f9ec74a601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060006015806101000a81548160ff0219169083151502179055506001601560166101000a81548160ff02191690831515021790555066016bcc41e9000060165566016bcc41e90000601755642e90edd0006018553480156200016457600080fd5b50600062000177620006a160201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350600654600260006200022c620006a160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000310573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000336919062000817565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200039e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003c4919062000817565b6040518363ffffffff1660e01b8152600401620003e39291906200085a565b6020604051808303816000875af115801562000403573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000429919062000817565b601560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600560006200047f620006a960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200062c620006a160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef66470de4df82000060405162000692919062000898565b60405180910390a350620008b5565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006200071882620006d2565b91506200072583620006d2565b925082620007385762000737620006dc565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200077f82620006d2565b91506200078c83620006d2565b9250828203905081811115620007a757620007a662000743565b5b92915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620007df82620007b2565b9050919050565b620007f181620007d2565b8114620007fd57600080fd5b50565b6000815190506200081181620007e6565b92915050565b60006020828403121562000830576200082f620007ad565b5b6000620008408482850162000800565b91505092915050565b6200085481620007d2565b82525050565b600060408201905062000871600083018562000849565b62000880602083018462000849565b9392505050565b6200089281620006d2565b82525050565b6000602082019050620008af600083018462000887565b92915050565b6138fa80620008c56000396000f3fe6080604052600436106101a05760003560e01c806374010ece116100ec578063a2a957bb1161008a578063c492f04611610064578063c492f0461461058b578063dd62ed3e146105b4578063ea1644d5146105f1578063f2fde38b1461061a576101a7565b8063a2a957bb1461050e578063a9059cbb14610537578063c3c8cd8014610574576101a7565b80638f70ccf7116100c65780638f70ccf7146104665780638f9a55c01461048f57806395d89b41146104ba57806398a5c315146104e5576101a7565b806374010ece146103e75780637d1db4a5146104105780638da5cb5b1461043b576101a7565b80632fd689e3116101595780636d8aa8f8116101335780636d8aa8f8146103535780636fc3eaec1461037c57806370a0823114610393578063715018a6146103d0576101a7565b80632fd689e3146102d2578063313ce567146102fd57806349bd5a5e14610328576101a7565b806306fdde03146101ac578063095ea7b3146101d757806313114a9d146102145780631694505e1461023f57806318160ddd1461026a57806323b872dd14610295576101a7565b366101a757005b600080fd5b3480156101b857600080fd5b506101c1610643565b6040516101ce9190612917565b60405180910390f35b3480156101e357600080fd5b506101fe60048036038101906101f991906129d7565b610680565b60405161020b9190612a32565b60405180910390f35b34801561022057600080fd5b5061022961069e565b6040516102369190612a5c565b60405180910390f35b34801561024b57600080fd5b506102546106a4565b6040516102619190612ad6565b60405180910390f35b34801561027657600080fd5b5061027f6106ca565b60405161028c9190612a5c565b60405180910390f35b3480156102a157600080fd5b506102bc60048036038101906102b79190612af1565b6106d9565b6040516102c99190612a32565b60405180910390f35b3480156102de57600080fd5b506102e76107b2565b6040516102f49190612a5c565b60405180910390f35b34801561030957600080fd5b506103126107b8565b60405161031f9190612b60565b60405180910390f35b34801561033457600080fd5b5061033d6107c1565b60405161034a9190612b8a565b60405180910390f35b34801561035f57600080fd5b5061037a60048036038101906103759190612bd1565b6107e7565b005b34801561038857600080fd5b50610391610899565b005b34801561039f57600080fd5b506103ba60048036038101906103b59190612bfe565b61096a565b6040516103c79190612a5c565b60405180910390f35b3480156103dc57600080fd5b506103e56109bb565b005b3480156103f357600080fd5b5061040e60048036038101906104099190612c2b565b610b0e565b005b34801561041c57600080fd5b50610425610bad565b6040516104329190612a5c565b60405180910390f35b34801561044757600080fd5b50610450610bb3565b60405161045d9190612b8a565b60405180910390f35b34801561047257600080fd5b5061048d60048036038101906104889190612bd1565b610bdc565b005b34801561049b57600080fd5b506104a4610c8e565b6040516104b19190612a5c565b60405180910390f35b3480156104c657600080fd5b506104cf610c94565b6040516104dc9190612917565b60405180910390f35b3480156104f157600080fd5b5061050c60048036038101906105079190612c2b565b610cd1565b005b34801561051a57600080fd5b5061053560048036038101906105309190612c58565b610d70565b005b34801561054357600080fd5b5061055e600480360381019061055991906129d7565b610e9d565b60405161056b9190612a32565b60405180910390f35b34801561058057600080fd5b50610589610ebb565b005b34801561059757600080fd5b506105b260048036038101906105ad9190612d24565b610f94565b005b3480156105c057600080fd5b506105db60048036038101906105d69190612d84565b6110ce565b6040516105e89190612a5c565b60405180910390f35b3480156105fd57600080fd5b5061061860048036038101906106139190612c2b565b611155565b005b34801561062657600080fd5b50610641600480360381019061063c9190612bfe565b6111f4565b005b60606040518060400160405280600d81526020017f5075626c6963426974636f696e00000000000000000000000000000000000000815250905090565b600061069461068d6113b5565b84846113bd565b6001905092915050565b600c5481565b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600066470de4df820000905090565b60006106e6848484611586565b6107a7846106f26113b5565b6107a28560405180606001604052806028815260200161389d60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107586113b5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d269092919063ffffffff16565b6113bd565b600190509392505050565b60185481565b60006009905090565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6107ef6113b5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461087c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087390612e10565b60405180910390fd5b80601560166101000a81548160ff02191690831515021790555050565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108da6113b5565b73ffffffffffffffffffffffffffffffffffffffff1614806109505750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109386113b5565b73ffffffffffffffffffffffffffffffffffffffff16145b61095957600080fd5b600047905061096781611d8a565b50565b60006109b4600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e85565b9050919050565b6109c36113b5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4790612e10565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610b166113b5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ba3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b9a90612e10565b60405180910390fd5b8060168190555050565b60165481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610be46113b5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6890612e10565b60405180910390fd5b80601560146101000a81548160ff02191690831515021790555050565b60175481565b60606040518060400160405280600481526020017f5042544300000000000000000000000000000000000000000000000000000000815250905090565b610cd96113b5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5d90612e10565b60405180910390fd5b8060188190555050565b610d786113b5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dfc90612e10565b60405180910390fd5b8360088190555082600a819055508160098190555080600b81905550600b54600954600a54600854610e379190612e5f565b610e419190612e5f565b610e4b9190612e5f565b600c819055506064600c541115610e97576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e8e90612edf565b60405180910390fd5b50505050565b6000610eb1610eaa6113b5565b8484611586565b6001905092915050565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610efc6113b5565b73ffffffffffffffffffffffffffffffffffffffff161480610f725750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f5a6113b5565b73ffffffffffffffffffffffffffffffffffffffff16145b610f7b57600080fd5b6000610f863061096a565b9050610f9181611ef3565b50565b610f9c6113b5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611029576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102090612e10565b60405180910390fd5b60005b838390508110156110c857816005600086868581811061104f5761104e612eff565b5b90506020020160208101906110649190612bfe565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806110c090612f2e565b91505061102c565b50505050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61115d6113b5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e190612e10565b60405180910390fd5b8060178190555050565b6111fc6113b5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611289576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161128090612e10565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036112f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112ef90612fe8565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361142c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114239061307a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361149b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114929061310c565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516115799190612a5c565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036115f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ec9061319e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611664576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161165b90613230565b60405180910390fd5b600081116116a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169e906132c2565b60405180910390fd5b6116af610bb3565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561171d57506116ed610bb3565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611a2557601560149054906101000a900460ff166117ac5761173e610bb3565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146117ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117a290613354565b60405180910390fd5b5b6016548111156117f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e8906133c0565b60405180910390fd5b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461189e57601754816118538461096a565b61185d9190612e5f565b1061189d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189490613452565b60405180910390fd5b5b60006118a93061096a565b90506000601854821015905060165482106118c45760165491505b8080156118dc575060158054906101000a900460ff16155b80156119365750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b801561194e5750601560169054906101000a900460ff165b80156119a45750600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156119fa5750600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611a2257611a0882611ef3565b60004790506000811115611a2057611a1f47611d8a565b5b505b50505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611acc5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611b7f5750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611b7e5750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b15611b8d5760009050611d14565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611c385750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611c5057600854600d81905550600954600e819055505b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611cfb5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611d1357600a54600d81905550600b54600e819055505b5b611d208484848461216a565b50505050565b6000838311158290611d6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d659190612917565b60405180910390fd5b5060008385611d7d9190613472565b9050809150509392505050565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611dda60028461219790919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611e05573d6000803e3d6000fd5b50601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611e5660028461219790919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611e81573d6000803e3d6000fd5b5050565b6000600654821115611ecc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ec390613518565b60405180910390fd5b6000611ed66121e1565b9050611eeb818461219790919063ffffffff16565b915050919050565b60016015806101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611f2a57611f29613538565b5b604051908082528060200260200182016040528015611f585781602001602082028036833780820191505090505b5090503081600081518110611f7057611f6f612eff565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612017573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061203b919061357c565b8160018151811061204f5761204e612eff565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120b630601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846113bd565b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161211a9594939291906136a2565b600060405180830381600087803b15801561213457600080fd5b505af1158015612148573d6000803e3d6000fd5b505050505060006015806101000a81548160ff02191690831515021790555050565b806121785761217761220c565b5b612183848484612249565b8061219157612190612414565b5b50505050565b60006121d983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612428565b905092915050565b60008060006121ee61248b565b91509150612205818361219790919063ffffffff16565b9250505090565b6000600d5414801561222057506000600e54145b61224757600d54600f81905550600e546010819055506000600d819055506000600e819055505b565b60008060008060008061225b876124e7565b9550955095509550955095506122b986600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461254f90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061234e85600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461259990919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061239a816125f7565b6123a484836126b4565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516124019190612a5c565b60405180910390a3505050505050505050565b600f54600d81905550601054600e81905550565b6000808311829061246f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124669190612917565b60405180910390fd5b506000838561247e919061372b565b9050809150509392505050565b60008060006006549050600066470de4df82000090506124bd66470de4df82000060065461219790919063ffffffff16565b8210156124da5760065466470de4df8200009350935050506124e3565b81819350935050505b9091565b60008060008060008060008060006125048a600d54600e546126ee565b92509250925060006125146121e1565b905060008060006125278e878787612784565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061259183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d26565b905092915050565b60008082846125a89190612e5f565b9050838110156125ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125e4906137a8565b60405180910390fd5b8091505092915050565b60006126016121e1565b90506000612618828461280d90919063ffffffff16565b905061266c81600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461259990919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6126c98260065461254f90919063ffffffff16565b6006819055506126e48160075461259990919063ffffffff16565b6007819055505050565b60008060008061271a606461270c888a61280d90919063ffffffff16565b61219790919063ffffffff16565b905060006127446064612736888b61280d90919063ffffffff16565b61219790919063ffffffff16565b9050600061276d8261275f858c61254f90919063ffffffff16565b61254f90919063ffffffff16565b905080838395509550955050505093509350939050565b60008060008061279d858961280d90919063ffffffff16565b905060006127b4868961280d90919063ffffffff16565b905060006127cb878961280d90919063ffffffff16565b905060006127f4826127e6858761254f90919063ffffffff16565b61254f90919063ffffffff16565b9050838184965096509650505050509450945094915050565b600080830361281f5760009050612881565b6000828461282d91906137c8565b905082848261283c919061372b565b1461287c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128739061387c565b60405180910390fd5b809150505b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156128c15780820151818401526020810190506128a6565b60008484015250505050565b6000601f19601f8301169050919050565b60006128e982612887565b6128f38185612892565b93506129038185602086016128a3565b61290c816128cd565b840191505092915050565b6000602082019050818103600083015261293181846128de565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061296e82612943565b9050919050565b61297e81612963565b811461298957600080fd5b50565b60008135905061299b81612975565b92915050565b6000819050919050565b6129b4816129a1565b81146129bf57600080fd5b50565b6000813590506129d1816129ab565b92915050565b600080604083850312156129ee576129ed612939565b5b60006129fc8582860161298c565b9250506020612a0d858286016129c2565b9150509250929050565b60008115159050919050565b612a2c81612a17565b82525050565b6000602082019050612a476000830184612a23565b92915050565b612a56816129a1565b82525050565b6000602082019050612a716000830184612a4d565b92915050565b6000819050919050565b6000612a9c612a97612a9284612943565b612a77565b612943565b9050919050565b6000612aae82612a81565b9050919050565b6000612ac082612aa3565b9050919050565b612ad081612ab5565b82525050565b6000602082019050612aeb6000830184612ac7565b92915050565b600080600060608486031215612b0a57612b09612939565b5b6000612b188682870161298c565b9350506020612b298682870161298c565b9250506040612b3a868287016129c2565b9150509250925092565b600060ff82169050919050565b612b5a81612b44565b82525050565b6000602082019050612b756000830184612b51565b92915050565b612b8481612963565b82525050565b6000602082019050612b9f6000830184612b7b565b92915050565b612bae81612a17565b8114612bb957600080fd5b50565b600081359050612bcb81612ba5565b92915050565b600060208284031215612be757612be6612939565b5b6000612bf584828501612bbc565b91505092915050565b600060208284031215612c1457612c13612939565b5b6000612c228482850161298c565b91505092915050565b600060208284031215612c4157612c40612939565b5b6000612c4f848285016129c2565b91505092915050565b60008060008060808587031215612c7257612c71612939565b5b6000612c80878288016129c2565b9450506020612c91878288016129c2565b9350506040612ca2878288016129c2565b9250506060612cb3878288016129c2565b91505092959194509250565b600080fd5b600080fd5b600080fd5b60008083601f840112612ce457612ce3612cbf565b5b8235905067ffffffffffffffff811115612d0157612d00612cc4565b5b602083019150836020820283011115612d1d57612d1c612cc9565b5b9250929050565b600080600060408486031215612d3d57612d3c612939565b5b600084013567ffffffffffffffff811115612d5b57612d5a61293e565b5b612d6786828701612cce565b93509350506020612d7a86828701612bbc565b9150509250925092565b60008060408385031215612d9b57612d9a612939565b5b6000612da98582860161298c565b9250506020612dba8582860161298c565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612dfa602083612892565b9150612e0582612dc4565b602082019050919050565b60006020820190508181036000830152612e2981612ded565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612e6a826129a1565b9150612e75836129a1565b9250828201905080821115612e8d57612e8c612e30565b5b92915050565b7f4d757374206b65657020666565732061742031303025206f72206c6573730000600082015250565b6000612ec9601e83612892565b9150612ed482612e93565b602082019050919050565b60006020820190508181036000830152612ef881612ebc565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612f39826129a1565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612f6b57612f6a612e30565b5b600182019050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612fd2602683612892565b9150612fdd82612f76565b604082019050919050565b6000602082019050818103600083015261300181612fc5565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613064602483612892565b915061306f82613008565b604082019050919050565b6000602082019050818103600083015261309381613057565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006130f6602283612892565b91506131018261309a565b604082019050919050565b60006020820190508181036000830152613125816130e9565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000613188602583612892565b91506131938261312c565b604082019050919050565b600060208201905081810360008301526131b78161317b565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061321a602383612892565b9150613225826131be565b604082019050919050565b600060208201905081810360008301526132498161320d565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006132ac602983612892565b91506132b782613250565b604082019050919050565b600060208201905081810360008301526132db8161329f565b9050919050565b7f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060008201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c656400602082015250565b600061333e603f83612892565b9150613349826132e2565b604082019050919050565b6000602082019050818103600083015261336d81613331565b9050919050565b7f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000600082015250565b60006133aa601c83612892565b91506133b582613374565b602082019050919050565b600060208201905081810360008301526133d98161339d565b9050919050565b7f544f4b454e3a2042616c616e636520657863656564732077616c6c657420736960008201527f7a65210000000000000000000000000000000000000000000000000000000000602082015250565b600061343c602383612892565b9150613447826133e0565b604082019050919050565b6000602082019050818103600083015261346b8161342f565b9050919050565b600061347d826129a1565b9150613488836129a1565b92508282039050818111156134a05761349f612e30565b5b92915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000613502602a83612892565b915061350d826134a6565b604082019050919050565b60006020820190508181036000830152613531816134f5565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008151905061357681612975565b92915050565b60006020828403121561359257613591612939565b5b60006135a084828501613567565b91505092915050565b6000819050919050565b60006135ce6135c96135c4846135a9565b612a77565b6129a1565b9050919050565b6135de816135b3565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61361981612963565b82525050565b600061362b8383613610565b60208301905092915050565b6000602082019050919050565b600061364f826135e4565b61365981856135ef565b935061366483613600565b8060005b8381101561369557815161367c888261361f565b975061368783613637565b925050600181019050613668565b5085935050505092915050565b600060a0820190506136b76000830188612a4d565b6136c460208301876135d5565b81810360408301526136d68186613644565b90506136e56060830185612b7b565b6136f26080830184612a4d565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613736826129a1565b9150613741836129a1565b925082613751576137506136fc565b5b828204905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000613792601b83612892565b915061379d8261375c565b602082019050919050565b600060208201905081810360008301526137c181613785565b9050919050565b60006137d3826129a1565b91506137de836129a1565b92508282026137ec816129a1565b9150828204841483151761380357613802612e30565b5b5092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000613866602183612892565b91506138718261380a565b604082019050919050565b6000602082019050818103600083015261389581613859565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212202d7f47ad5279752e2922bdaabea9a0ae22342b0669e45b897e5d83bce9c2606364736f6c63430008120033