Overview ERC20
PRICE
$0.056225

ON-CHAIN MARKET CAP n/a

Total Supply:
1,000,000,000.00 FRANK

Holders:
35
Profile Summary
Blockchain:
Ethereum (1)


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

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
No

Created At:
Tue, 29 Oct 2024 18:38:23 GMT
FrankFRANKfrank.sol
FrankFRANKfrank.sol
FrankFRANKfrank.sol


Contract ABI
[
  {
    "inputs": [],
    "stateMutability": "payable",
    "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": "_maxTaxSwap",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "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": "_taxSwapThreshold",
    "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": [],
    "name": "manualSwap",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "marketPair",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "name",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "pure",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "openTrading",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "owner",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "removeLimits",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "renounceOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "symbol",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "pure",
    "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": [
      {
        "internalType": "address",
        "name": "_tokenAddr",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "_amount",
        "type": "uint256"
      }
    ],
    "name": "undefined",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "uniswapV2Pair",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "stateMutability": "payable",
    "type": "receive"
  }
]


Contract Creation Code
60806040526000600755601460085560146009556000600a556000600b556001600c556000600d556014600e556000600f55600060105560006011556200006e6009600a6200004f919062000ac7565b633b9aca0062000060919062000b18565b6002620006f160201b60201c565b601255620000a46009600a62000085919062000ac7565b633b9aca0062000096919062000b18565b6002620006f160201b60201c565b601355620f4240601455620000e16009600a620000c2919062000ac7565b633b9aca00620000d3919062000b18565b6001620006f160201b60201c565b601555600360185560466019556000601a60006101000a81548160ff0219169083151502179055506000601a60016101000a81548160ff0219169083151502179055506000620001366200072b60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001e46200072b60201b60201c565b600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a62000234919062000ac7565b633b9aca0062000245919062000b18565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600360006200029e6200073360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003576200072b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a620003b6919062000ac7565b633b9aca00620003c7919062000b18565b604051620003d6919062000b74565b60405180910390a3737a250d5630b4cf539739df2c5dacb4c659f2488d601660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200048830601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6200046b919062000ac7565b633b9aca006200047c919062000b18565b6200075c60201b60201c565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620004f6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200051c919062000bfb565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620005a6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005cc919062000bfb565b6040518363ffffffff1660e01b8152600401620005eb92919062000c3e565b6020604051808303816000875af11580156200060b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000631919062000bfb565b601760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160046000601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000e13565b60008060648362000703919062000b18565b9050612710818562000716919062000b18565b62000722919062000c9a565b91505092915050565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620007ce576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620007c59062000d59565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000840576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008379062000df1565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405162000920919062000b74565b60405180910390a3505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115620009bb578086048111156200099357620009926200092d565b5b6001851615620009a35780820291505b8081029050620009b3856200095c565b945062000973565b94509492505050565b600082620009d6576001905062000aa9565b81620009e6576000905062000aa9565b8160018114620009ff576002811462000a0a5762000a40565b600191505062000aa9565b60ff84111562000a1f5762000a1e6200092d565b5b8360020a91508482111562000a395762000a386200092d565b5b5062000aa9565b5060208310610133831016604e8410600b841016171562000a7a5782820a90508381111562000a745762000a736200092d565b5b62000aa9565b62000a89848484600162000969565b9250905081840481111562000aa35762000aa26200092d565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b600062000ad48262000ab0565b915062000ae18362000aba565b925062000b107fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620009c4565b905092915050565b600062000b258262000ab0565b915062000b328362000ab0565b925082820262000b428162000ab0565b9150828204841483151762000b5c5762000b5b6200092d565b5b5092915050565b62000b6e8162000ab0565b82525050565b600060208201905062000b8b600083018462000b63565b92915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000bc38262000b96565b9050919050565b62000bd58162000bb6565b811462000be157600080fd5b50565b60008151905062000bf58162000bca565b92915050565b60006020828403121562000c145762000c1362000b91565b5b600062000c248482850162000be4565b91505092915050565b62000c388162000bb6565b82525050565b600060408201905062000c55600083018562000c2d565b62000c64602083018462000c2d565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000ca78262000ab0565b915062000cb48362000ab0565b92508262000cc75762000cc662000c6b565b5b828204905092915050565b600082825260208201905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600062000d4160248362000cd2565b915062000d4e8262000ce3565b604082019050919050565b6000602082019050818103600083015262000d748162000d32565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600062000dd960228362000cd2565b915062000de68262000d7b565b604082019050919050565b6000602082019050818103600083015262000e0c8162000dca565b9050919050565b6134118062000e236000396000f3fe6080604052600436106101395760003560e01c80637d1db4a5116100ab578063a9059cbb1161006f578063a9059cbb146103ed578063bf474bed1461042a578063c9567bf914610455578063dd62ed3e1461046c578063f2fde38b146104a9578063f5b3c3bf146104d257610140565b80637d1db4a5146103185780638da5cb5b146103435780638f9a55c01461036e57806391ddeef81461039957806395d89b41146103c257610140565b8063313ce567116100fd578063313ce5671461024057806349bd5a5e1461026b57806351bc3c851461029657806370a08231146102ad578063715018a6146102ea578063751039fc1461030157610140565b806306fdde0314610145578063095ea7b3146101705780630faee56f146101ad57806318160ddd146101d857806323b872dd1461020357610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a61050f565b60405161016791906123ec565b60405180910390f35b34801561017c57600080fd5b50610197600480360381019061019291906124a7565b61054c565b6040516101a49190612502565b60405180910390f35b3480156101b957600080fd5b506101c261056a565b6040516101cf919061252c565b60405180910390f35b3480156101e457600080fd5b506101ed610570565b6040516101fa919061252c565b60405180910390f35b34801561020f57600080fd5b5061022a60048036038101906102259190612547565b610594565b6040516102379190612502565b60405180910390f35b34801561024c57600080fd5b5061025561066d565b60405161026291906125b6565b60405180910390f35b34801561027757600080fd5b50610280610676565b60405161028d91906125e0565b60405180910390f35b3480156102a257600080fd5b506102ab61069c565b005b3480156102b957600080fd5b506102d460048036038101906102cf91906125fb565b610739565b6040516102e1919061252c565b60405180910390f35b3480156102f657600080fd5b506102ff610782565b005b34801561030d57600080fd5b506103166108d5565b005b34801561032457600080fd5b5061032d610a05565b60405161033a919061252c565b60405180910390f35b34801561034f57600080fd5b50610358610a0b565b60405161036591906125e0565b60405180910390f35b34801561037a57600080fd5b50610383610a34565b604051610390919061252c565b60405180910390f35b3480156103a557600080fd5b506103c060048036038101906103bb91906124a7565b610a3a565b005b3480156103ce57600080fd5b506103d7610b40565b6040516103e491906123ec565b60405180910390f35b3480156103f957600080fd5b50610414600480360381019061040f91906124a7565b610b7d565b6040516104219190612502565b60405180910390f35b34801561043657600080fd5b5061043f610b9b565b60405161044c919061252c565b60405180910390f35b34801561046157600080fd5b5061046a610ba1565b005b34801561047857600080fd5b50610493600480360381019061048e9190612628565b610e64565b6040516104a0919061252c565b60405180910390f35b3480156104b557600080fd5b506104d060048036038101906104cb91906125fb565b610eeb565b005b3480156104de57600080fd5b506104f960048036038101906104f491906125fb565b6110ac565b6040516105069190612502565b60405180910390f35b60606040518060400160405280600f81526020017f4672616e6b4652414e4b6672616e6b0000000000000000000000000000000000815250905090565b60006105606105596110cc565b84846110d4565b6001905092915050565b60155481565b60006009600a61058091906127ca565b633b9aca0061058f9190612815565b905090565b60006105a184848461129d565b610662846105ad6110cc565b61065d856040518060600160405280602881526020016133b460289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106136110cc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e2b9092919063ffffffff16565b6110d4565b600190509392505050565b60006009905090565b601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166106dd6110cc565b73ffffffffffffffffffffffffffffffffffffffff16146106fd57600080fd5b600061070830610739565b9050600081111561071d5761071c81611e8f565b5b600047905060008111156107355761073481612108565b5b5050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61078a6110cc565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610817576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080e906128a3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6108dd6110cc565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461096a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610961906128a3565b60405180910390fd5b6009600a61097891906127ca565b633b9aca006109879190612815565b6012819055506009600a61099b91906127ca565b633b9aca006109aa9190612815565b6013819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a6109df91906127ca565b633b9aca006109ee9190612815565b6040516109fb919061252c565b60405180910390a1565b60125481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60135481565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a7b6110cc565b73ffffffffffffffffffffffffffffffffffffffff1614610a9b57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401610af8929190612922565b6020604051808303816000875af1158015610b17573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3b9190612977565b505050565b60606040518060400160405280600581526020017f4652414e4b000000000000000000000000000000000000000000000000000000815250905090565b6000610b91610b8a6110cc565b848461129d565b6001905092915050565b60145481565b610ba96110cc565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2d906128a3565b60405180910390fd5b601760149054906101000a900460ff1615610c86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7d906129f0565b60405180910390fd5b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610ccf30610739565b600080610cda610a0b565b426040518863ffffffff1660e01b8152600401610cfc96959493929190612a4b565b60606040518083038185885af1158015610d1a573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3f9190612ac1565b505050601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610de1929190612b14565b6020604051808303816000875af1158015610e00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e249190612977565b506001601a60016101000a81548160ff0219169083151502179055506001601760146101000a81548160ff02191690831515021790555043600781905550565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610ef36110cc565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f77906128a3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610fef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe690612baf565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60046020528060005260406000206000915054906101000a900460ff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611143576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113a90612c41565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a990612cd3565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611290919061252c565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361130c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161130390612d65565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361137b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137290612df7565b60405180910390fd5b600081116113be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b590612e89565b60405180910390fd5b60006113c8610a0b565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156114365750611406610a0b565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611b6e576114776064611469600c54600f54116114565760085461145a565b600a545b8561217490919063ffffffff16565b6121ee90919063ffffffff16565b90506007544303611503576019546005600043815260200190815260200160002054106114d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d090612ef5565b60405180910390fd5b6005600043815260200190815260200160002060008154809291906114fd90612f15565b91905055505b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156115aa5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156116005750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156116bb5760125482111561164a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164190612fa9565b60405180910390fd5b6013548261165785610739565b6116619190612fc9565b11156116a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169990613049565b60405180910390fd5b600f60008154809291906116b590612f15565b91905055505b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561175f5750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156117bd576013548261177185610739565b61177b9190612fc9565b11156117bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117b390613049565b60405180910390fd5b5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561184257503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611886576118836064611875600d54600f541161186257600954611866565b600b545b8561217490919063ffffffff16565b6121ee90919063ffffffff16565b90505b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561192a5750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561196257503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561196c57600090505b600061197730610739565b9050601a60009054906101000a900460ff161580156119df5750600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80156119f75750601a60019054906101000a900460ff165b8015611a04575060145481115b8015611a135750600e54600f54115b15611a9557601154431115611a2b5760006010819055505b60185460105410611a3b57600080fd5b611a58611a5384611a4e84601554612238565b612238565b611e8f565b60004790506000811115611a7057611a6f47612108565b5b60106000815480929190611a8390612f15565b91905055504360118190555050611b6c565b601a60009054906101000a900460ff16158015611afb5750600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8015611b135750601a60019054906101000a900460ff165b8015611b20575060145481115b8015611b2f5750600e54600f54115b15611b6b57611b51611b4c84611b4784601554612238565b612238565b611e8f565b60004790506000811115611b6957611b6847612108565b5b505b5b505b6000811115611c7257611bc981600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461225190919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611c69919061252c565b60405180910390a35b611cc482600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546122af90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611d6b611d1d82846122af90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461225190919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611e1084866122af90919063ffffffff16565b604051611e1d919061252c565b60405180910390a350505050565b6000838311158290611e73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6a91906123ec565b60405180910390fd5b5060008385611e829190613069565b9050809150509392505050565b6001601a60006101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611ec757611ec661309d565b5b604051908082528060200260200182016040528015611ef55781602001602082028036833780820191505090505b5090503081600081518110611f0d57611f0c6130cc565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611fb4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd89190613110565b81600181518110611fec57611feb6130cc565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061205330601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846110d4565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016120b79594939291906131fb565b600060405180830381600087803b1580156120d157600080fd5b505af11580156120e5573d6000803e3d6000fd5b50505050506000601a60006101000a81548160ff02191690831515021790555050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612170573d6000803e3d6000fd5b5050565b600080830361218657600090506121e8565b600082846121949190612815565b90508284826121a39190613284565b146121e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121da90613327565b60405180910390fd5b809150505b92915050565b600061223083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506122f9565b905092915050565b60008183116122475782612249565b815b905092915050565b60008082846122609190612fc9565b9050838110156122a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161229c90613393565b60405180910390fd5b8091505092915050565b60006122f183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611e2b565b905092915050565b60008083118290612340576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161233791906123ec565b60405180910390fd5b506000838561234f9190613284565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561239657808201518184015260208101905061237b565b60008484015250505050565b6000601f19601f8301169050919050565b60006123be8261235c565b6123c88185612367565b93506123d8818560208601612378565b6123e1816123a2565b840191505092915050565b6000602082019050818103600083015261240681846123b3565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061243e82612413565b9050919050565b61244e81612433565b811461245957600080fd5b50565b60008135905061246b81612445565b92915050565b6000819050919050565b61248481612471565b811461248f57600080fd5b50565b6000813590506124a18161247b565b92915050565b600080604083850312156124be576124bd61240e565b5b60006124cc8582860161245c565b92505060206124dd85828601612492565b9150509250929050565b60008115159050919050565b6124fc816124e7565b82525050565b600060208201905061251760008301846124f3565b92915050565b61252681612471565b82525050565b6000602082019050612541600083018461251d565b92915050565b6000806000606084860312156125605761255f61240e565b5b600061256e8682870161245c565b935050602061257f8682870161245c565b925050604061259086828701612492565b9150509250925092565b600060ff82169050919050565b6125b08161259a565b82525050565b60006020820190506125cb60008301846125a7565b92915050565b6125da81612433565b82525050565b60006020820190506125f560008301846125d1565b92915050565b6000602082840312156126115761261061240e565b5b600061261f8482850161245c565b91505092915050565b6000806040838503121561263f5761263e61240e565b5b600061264d8582860161245c565b925050602061265e8582860161245c565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156126ee578086048111156126ca576126c9612668565b5b60018516156126d95780820291505b80810290506126e785612697565b94506126ae565b94509492505050565b60008261270757600190506127c3565b8161271557600090506127c3565b816001811461272b576002811461273557612764565b60019150506127c3565b60ff84111561274757612746612668565b5b8360020a91508482111561275e5761275d612668565b5b506127c3565b5060208310610133831016604e8410600b84101617156127995782820a90508381111561279457612793612668565b5b6127c3565b6127a684848460016126a4565b925090508184048111156127bd576127bc612668565b5b81810290505b9392505050565b60006127d582612471565b91506127e08361259a565b925061280d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846126f7565b905092915050565b600061282082612471565b915061282b83612471565b925082820261283981612471565b915082820484148315176128505761284f612668565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061288d602083612367565b915061289882612857565b602082019050919050565b600060208201905081810360008301526128bc81612880565b9050919050565b6000819050919050565b60006128e86128e36128de84612413565b6128c3565b612413565b9050919050565b60006128fa826128cd565b9050919050565b600061290c826128ef565b9050919050565b61291c81612901565b82525050565b60006040820190506129376000830185612913565b612944602083018461251d565b9392505050565b612954816124e7565b811461295f57600080fd5b50565b6000815190506129718161294b565b92915050565b60006020828403121561298d5761298c61240e565b5b600061299b84828501612962565b91505092915050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b60006129da601783612367565b91506129e5826129a4565b602082019050919050565b60006020820190508181036000830152612a09816129cd565b9050919050565b6000819050919050565b6000612a35612a30612a2b84612a10565b6128c3565b612471565b9050919050565b612a4581612a1a565b82525050565b600060c082019050612a6060008301896125d1565b612a6d602083018861251d565b612a7a6040830187612a3c565b612a876060830186612a3c565b612a9460808301856125d1565b612aa160a083018461251d565b979650505050505050565b600081519050612abb8161247b565b92915050565b600080600060608486031215612ada57612ad961240e565b5b6000612ae886828701612aac565b9350506020612af986828701612aac565b9250506040612b0a86828701612aac565b9150509250925092565b6000604082019050612b2960008301856125d1565b612b36602083018461251d565b9392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612b99602683612367565b9150612ba482612b3d565b604082019050919050565b60006020820190508181036000830152612bc881612b8c565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612c2b602483612367565b9150612c3682612bcf565b604082019050919050565b60006020820190508181036000830152612c5a81612c1e565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612cbd602283612367565b9150612cc882612c61565b604082019050919050565b60006020820190508181036000830152612cec81612cb0565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612d4f602583612367565b9150612d5a82612cf3565b604082019050919050565b60006020820190508181036000830152612d7e81612d42565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612de1602383612367565b9150612dec82612d85565b604082019050919050565b60006020820190508181036000830152612e1081612dd4565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612e73602983612367565b9150612e7e82612e17565b604082019050919050565b60006020820190508181036000830152612ea281612e66565b9050919050565b7f457863656564732062757973206f6e2074686520666972737420626c6f636b2e600082015250565b6000612edf602083612367565b9150612eea82612ea9565b602082019050919050565b60006020820190508181036000830152612f0e81612ed2565b9050919050565b6000612f2082612471565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612f5257612f51612668565b5b600182019050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612f93601983612367565b9150612f9e82612f5d565b602082019050919050565b60006020820190508181036000830152612fc281612f86565b9050919050565b6000612fd482612471565b9150612fdf83612471565b9250828201905080821115612ff757612ff6612668565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000613033601a83612367565b915061303e82612ffd565b602082019050919050565b6000602082019050818103600083015261306281613026565b9050919050565b600061307482612471565b915061307f83612471565b925082820390508181111561309757613096612668565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061310a81612445565b92915050565b6000602082840312156131265761312561240e565b5b6000613134848285016130fb565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61317281612433565b82525050565b60006131848383613169565b60208301905092915050565b6000602082019050919050565b60006131a88261313d565b6131b28185613148565b93506131bd83613159565b8060005b838110156131ee5781516131d58882613178565b97506131e083613190565b9250506001810190506131c1565b5085935050505092915050565b600060a082019050613210600083018861251d565b61321d6020830187612a3c565b818103604083015261322f818661319d565b905061323e60608301856125d1565b61324b608083018461251d565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061328f82612471565b915061329a83612471565b9250826132aa576132a9613255565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000613311602183612367565b915061331c826132b5565b604082019050919050565b6000602082019050818103600083015261334081613304565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061337d601b83612367565b915061338882613347565b602082019050919050565b600060208201905081810360008301526133ac81613370565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122054ec14e8c74cd9fdb995e8213c271c7bcef98615c554b779e3aeff7fd02c316b64736f6c63430008140033