Overview ERC721
Total Supply:
2,504 LOFI

Holders:
463
Profile Summary
Blockchain:
C-Chain (43114)

Contract Source Code Verified (Partial Match)
Contract Name:
LofiLeopards

Compiler Version
v0.8.1+commit.df193b15

Optimization Enabled:
No

Created At:
Wed, 24 Aug 2022 20:27:38 GMT
LofiLeopards.sol
contracts
LofiLeopards.sol


Contract ABI
[
  {
    "inputs": [],
    "stateMutability": "nonpayable",
    "type": "constructor"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "owner",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "approved",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "uint256",
        "name": "tokenId",
        "type": "uint256"
      }
    ],
    "name": "Approval",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "owner",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "operator",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "bool",
        "name": "approved",
        "type": "bool"
      }
    ],
    "name": "ApprovalForAll",
    "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": true,
        "internalType": "uint256",
        "name": "tokenId",
        "type": "uint256"
      }
    ],
    "name": "Transfer",
    "type": "event"
  },
  {
    "inputs": [
      {
        "internalType": "address[]",
        "name": "_accounts",
        "type": "address[]"
      }
    ],
    "name": "airdrop",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "tokenId",
        "type": "uint256"
      }
    ],
    "name": "approve",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "owner",
        "type": "address"
      }
    ],
    "name": "balanceOf",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "tokenId",
        "type": "uint256"
      }
    ],
    "name": "getApproved",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "getArtist",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "owner",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "operator",
        "type": "address"
      }
    ],
    "name": "isApprovedForAll",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "legendaryAirdrop",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "legendaryTokenCount",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "quantity",
        "type": "uint256"
      }
    ],
    "name": "mint",
    "outputs": [],
    "stateMutability": "payable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "mintActive",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "name",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "owner",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "tokenId",
        "type": "uint256"
      }
    ],
    "name": "ownerOf",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "renounceOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "_tokenId",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "_salePrice",
        "type": "uint256"
      }
    ],
    "name": "royaltyInfo",
    "outputs": [
      {
        "internalType": "address",
        "name": "receiver",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "royaltyAmount",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "from",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "tokenId",
        "type": "uint256"
      }
    ],
    "name": "safeTransferFrom",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "from",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "tokenId",
        "type": "uint256"
      },
      {
        "internalType": "bytes",
        "name": "_data",
        "type": "bytes"
      }
    ],
    "name": "safeTransferFrom",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "secondsUntilMint",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "operator",
        "type": "address"
      },
      {
        "internalType": "bool",
        "name": "approved",
        "type": "bool"
      }
    ],
    "name": "setApprovalForAll",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "artist_",
        "type": "address"
      }
    ],
    "name": "setArtist",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "string",
        "name": "customBaseURI_",
        "type": "string"
      }
    ],
    "name": "setBaseURI",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bool",
        "name": "status",
        "type": "bool"
      }
    ],
    "name": "setMintActive",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "startTime_",
        "type": "uint256"
      }
    ],
    "name": "setStartTime",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes4",
        "name": "interfaceId",
        "type": "bytes4"
      }
    ],
    "name": "supportsInterface",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "symbol",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "uint256",
        "name": "tokenId",
        "type": "uint256"
      }
    ],
    "name": "tokenURI",
    "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": "from",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "tokenId",
        "type": "uint256"
      }
    ],
    "name": "transferFrom",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "newOwner",
        "type": "address"
      }
    ],
    "name": "transferOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  }
]


Contract Creation Code
608060405260006008553480156200001657600080fd5b506109956040518060400160405280600d81526020017f4c6f4669204c656f7061726473000000000000000000000000000000000000008152506040518060400160405280600481526020017f4c4f46490000000000000000000000000000000000000000000000000000000081525081600090805190602001906200009e9291906200029d565b508060019080519060200190620000b79291906200029d565b505050620000da620000ce620001cf60201b60201c565b620001d760201b60201c565b80600981905550506040518060600160405280602781526020016200429760279139600f9080519060200190620001139291906200029d565b50610995600e819055506102ee6010819055506000601560006101000a81548160ff021916908315150217905550600a601181905550670429d069189e00006012819055507373af430b3ba5abb336e835ede31702d7330b3169601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550636306b478601481905550610996600c819055506000600d81905550620003b2565b600033905090565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b828054620002ab906200034d565b90600052602060002090601f016020900481019282620002cf57600085556200031b565b82601f10620002ea57805160ff19168380011785556200031b565b828001600101855582156200031b579182015b828111156200031a578251825591602001919060010190620002fd565b5b5090506200032a91906200032e565b5090565b5b80821115620003495760008160009055506001016200032f565b5090565b600060028204905060018216806200036657607f821691505b602082108114156200037d576200037c62000383565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b613ed580620003c26000396000f3fe6080604052600436106101c25760003560e01c8063729ad39e116100f7578063b43fec5a11610095578063e094826b11610064578063e094826b1461061e578063e985e9c514610649578063ee1cc94414610686578063f2fde38b146106af576101c2565b8063b43fec5a14610564578063b88d4fde1461058f578063c87b56dd146105b8578063d4c97533146105f5576101c2565b80638da5cb5b116100d15780638da5cb5b146104c957806395d89b41146104f4578063a0712d681461051f578063a22cb4651461053b576101c2565b8063729ad39e1461045e5780637e5ec188146104875780638406a0e01461049e576101c2565b80632a55205a1161016457806355f804b31161013e57806355f804b3146103a45780636352211e146103cd57806370a082311461040a578063715018a614610447576101c2565b80632a55205a146103145780633e0a322d1461035257806342842e0e1461037b576101c2565b8063095ea7b3116101a0578063095ea7b31461026c57806318160ddd1461029557806323b872dd146102c057806325fd90f3146102e9576101c2565b806301ffc9a7146101c757806306fdde0314610204578063081812fc1461022f575b600080fd5b3480156101d357600080fd5b506101ee60048036038101906101e99190612bed565b6106d8565b6040516101fb919061318b565b60405180910390f35b34801561021057600080fd5b50610219610741565b60405161022691906131a6565b60405180910390f35b34801561023b57600080fd5b5061025660048036038101906102519190612c80565b6107d3565b60405161026391906130fb565b60405180910390f35b34801561027857600080fd5b50610293600480360381019061028e9190612b47565b610858565b005b3480156102a157600080fd5b506102aa610970565b6040516102b79190613468565b60405180910390f35b3480156102cc57600080fd5b506102e760048036038101906102e29190612a41565b61098e565b005b3480156102f557600080fd5b506102fe6109ee565b60405161030b919061318b565b60405180910390f35b34801561032057600080fd5b5061033b60048036038101906103369190612ca9565b610a12565b604051610349929190613162565b60405180910390f35b34801561035e57600080fd5b5061037960048036038101906103749190612c80565b610a5e565b005b34801561038757600080fd5b506103a2600480360381019061039d9190612a41565b610ae4565b005b3480156103b057600080fd5b506103cb60048036038101906103c69190612c3f565b610b04565b005b3480156103d957600080fd5b506103f460048036038101906103ef9190612c80565b610b9a565b60405161040191906130fb565b60405180910390f35b34801561041657600080fd5b50610431600480360381019061042c91906129dc565b610c4c565b60405161043e9190613468565b60405180910390f35b34801561045357600080fd5b5061045c610d04565b005b34801561046a57600080fd5b5061048560048036038101906104809190612b83565b610d8c565b005b34801561049357600080fd5b5061049c610e74565b005b3480156104aa57600080fd5b506104b3610f65565b6040516104c09190613468565b60405180910390f35b3480156104d557600080fd5b506104de610f90565b6040516104eb91906130fb565b60405180910390f35b34801561050057600080fd5b50610509610fba565b60405161051691906131a6565b60405180910390f35b61053960048036038101906105349190612c80565b61104c565b005b34801561054757600080fd5b50610562600480360381019061055d9190612b0b565b6111bc565b005b34801561057057600080fd5b506105796111d2565b6040516105869190613468565b60405180910390f35b34801561059b57600080fd5b506105b660048036038101906105b19190612a90565b6111dc565b005b3480156105c457600080fd5b506105df60048036038101906105da9190612c80565b61123e565b6040516105ec91906131a6565b60405180910390f35b34801561060157600080fd5b5061061c600480360381019061061791906129dc565b611390565b005b34801561062a57600080fd5b50610633611450565b60405161064091906130fb565b60405180910390f35b34801561065557600080fd5b50610670600480360381019061066b9190612a05565b61147a565b60405161067d919061318b565b60405180910390f35b34801561069257600080fd5b506106ad60048036038101906106a89190612bc4565b61150e565b005b3480156106bb57600080fd5b506106d660048036038101906106d191906129dc565b6115a7565b005b6000632a55205a60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161415610730576001905061073c565b6107398261169f565b90505b919050565b60606000805461075090613744565b80601f016020809104026020016040519081016040528092919081815260200182805461077c90613744565b80156107c95780601f1061079e576101008083540402835291602001916107c9565b820191906000526020600020905b8154815290600101906020018083116107ac57829003601f168201915b5050505050905090565b60006107de82611781565b61081d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610814906133a8565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061086382610b9a565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156108d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108cb90613408565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108f36117ed565b73ffffffffffffffffffffffffffffffffffffffff16148061092257506109218161091c6117ed565b61147a565b5b610961576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610958906132a8565b60405180910390fd5b61096b83836117f5565b505050565b6000600d5461097f600b6118ae565b6109899190613579565b905090565b61099f6109996117ed565b826118bc565b6109de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109d590613448565b60405180910390fd5b6109e983838361199a565b505050565b6000601560009054906101000a900460ff1680610a0d57506014544210155b905090565b600080601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661271060105485610a499190613600565b610a5391906135cf565b915091509250929050565b610a666117ed565b73ffffffffffffffffffffffffffffffffffffffff16610a84610f90565b73ffffffffffffffffffffffffffffffffffffffff1614610ada576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ad1906133c8565b60405180910390fd5b8060148190555050565b610aff838383604051806020016040528060008152506111dc565b505050565b610b0c6117ed565b73ffffffffffffffffffffffffffffffffffffffff16610b2a610f90565b73ffffffffffffffffffffffffffffffffffffffff1614610b80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b77906133c8565b60405180910390fd5b80600f9080519060200190610b9692919061276a565b5050565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610c43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c3a90613308565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610cbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb4906132e8565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610d0c6117ed565b73ffffffffffffffffffffffffffffffffffffffff16610d2a610f90565b73ffffffffffffffffffffffffffffffffffffffff1614610d80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d77906133c8565b60405180910390fd5b610d8a6000611c01565b565b610d946117ed565b73ffffffffffffffffffffffffffffffffffffffff16610db2610f90565b73ffffffffffffffffffffffffffffffffffffffff1614610e08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dff906133c8565b60405180910390fd5b60005b8151811015610e7057610e5d828281518110610e50577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151611cc7565b8080610e68906137a7565b915050610e0b565b5050565b610e7c6117ed565b73ffffffffffffffffffffffffffffffffffffffff16610e9a610f90565b73ffffffffffffffffffffffffffffffffffffffff1614610ef0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ee7906133c8565b60405180910390fd5b6109d0600c541115610f0157600080fd5b610f2f601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600c54611d98565b6001600c6000828254610f429190613579565b925050819055506001600d6000828254610f5c9190613579565b92505081905550565b6000610f6f6109ee565b610f885742601454610f81919061365a565b9050610f8d565b600090505b90565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060018054610fc990613744565b80601f0160208091040260200160405190810160405280929190818152602001828054610ff590613744565b80156110425780601f1061101757610100808354040283529160200191611042565b820191906000526020600020905b81548152906001019060200180831161102557829003601f168201915b5050505050905090565b6110546109ee565b611093576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161108a90613428565b60405180910390fd5b6011548111156110d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110cf90613328565b60405180910390fd5b601254816110e69190613600565b341015611128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111f906132c8565b60405180910390fd5b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015611190573d6000803e3d6000fd5b5060005b818110156111b8576111a533611cc7565b80806111b0906137a7565b915050611194565b5050565b6111ce6111c76117ed565b8383611f72565b5050565b6000600d54905090565b6111ed6111e76117ed565b836118bc565b61122c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122390613448565b60405180910390fd5b611238848484846120df565b50505050565b606061124982611781565b611288576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127f90613368565b60405180910390fd5b60006006600084815260200190815260200160002080546112a890613744565b80601f01602080910402602001604051908101604052809291908181526020018280546112d490613744565b80156113215780601f106112f657610100808354040283529160200191611321565b820191906000526020600020905b81548152906001019060200180831161130457829003601f168201915b50505050509050600061133261213b565b905060008151141561134857819250505061138b565b60008251111561137d5780826040516020016113659291906130ab565b6040516020818303038152906040529250505061138b565b611386846121cd565b925050505b919050565b6113986117ed565b73ffffffffffffffffffffffffffffffffffffffff166113b6610f90565b73ffffffffffffffffffffffffffffffffffffffff161461140c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611403906133c8565b60405180910390fd5b80601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6115166117ed565b73ffffffffffffffffffffffffffffffffffffffff16611534610f90565b73ffffffffffffffffffffffffffffffffffffffff161461158a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611581906133c8565b60405180910390fd5b80601560006101000a81548160ff02191690831515021790555050565b6115af6117ed565b73ffffffffffffffffffffffffffffffffffffffff166115cd610f90565b73ffffffffffffffffffffffffffffffffffffffff1614611623576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161a906133c8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611693576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168a906131e8565b60405180910390fd5b61169c81611c01565b50565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061176a57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061177a575061177982612274565b5b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661186883610b9a565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600081600001549050919050565b60006118c782611781565b611906576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118fd90613288565b60405180910390fd5b600061191183610b9a565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061198057508373ffffffffffffffffffffffffffffffffffffffff16611968846107d3565b73ffffffffffffffffffffffffffffffffffffffff16145b806119915750611990818561147a565b5b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166119ba82610b9a565b73ffffffffffffffffffffffffffffffffffffffff1614611a10576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0790613208565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7790613248565b60405180910390fd5b611a8b8383836122de565b611a966000826117f5565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611ae6919061365a565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611b3d9190613579565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611bfc8383836122e3565b505050565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000611cd3600b6118ae565b600e54611ce0919061365a565b4442604051602001611cf39291906130cf565b6040516020818303038152906040528051906020012060001c611d1691906137fa565b9050611d22600b6122e8565b600e54611d2f600b6118ae565b1115611d70576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d6790613388565b60405180910390fd5b60006001611d7d836122fe565b611d879190613579565b9050611d938382611d98565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611e08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dff90613348565b60405180910390fd5b611e1181611781565b15611e51576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4890613228565b60405180910390fd5b611e5d600083836122de565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611ead9190613579565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611f6e600083836122e3565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611fe1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fd890613268565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516120d2919061318b565b60405180910390a3505050565b6120ea84848461199a565b6120f684848484612403565b612135576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161212c906131c8565b60405180910390fd5b50505050565b6060600f805461214a90613744565b80601f016020809104026020016040519081016040528092919081815260200182805461217690613744565b80156121c35780601f10612198576101008083540402835291602001916121c3565b820191906000526020600020905b8154815290600101906020018083116121a657829003601f168201915b5050505050905090565b60606121d882611781565b612217576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161220e906133e8565b60405180910390fd5b600061222161213b565b90506000815111612241576040518060200160405280600081525061226c565b8061224b8461259a565b60405160200161225c9291906130ab565b6040516020818303038152906040525b915050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b505050565b505050565b6001816000016000828254019250508190555050565b600080600854600954612311919061365a565b90506000806000600a6000600186612329919061365a565b81526020019081526020016000205414156123525760018361234b919061365a565b9150612375565b600a6000600185612363919061365a565b81526020019081526020016000205491505b6000600a60008781526020019081526020016000205414156123b15784905081600a6000878152602001908152602001600020819055506123e0565b600a600086815260200190815260200160002054905081600a6000878152602001908152602001600020819055505b600860008154809291906123f3906137a7565b9190505550809350505050919050565b60006124248473ffffffffffffffffffffffffffffffffffffffff16612747565b1561258d578373ffffffffffffffffffffffffffffffffffffffff1663150b7a0261244d6117ed565b8786866040518563ffffffff1660e01b815260040161246f9493929190613116565b602060405180830381600087803b15801561248957600080fd5b505af19250505080156124ba57506040513d601f19601f820116820180604052508101906124b79190612c16565b60015b61253d573d80600081146124ea576040519150601f19603f3d011682016040523d82523d6000602084013e6124ef565b606091505b50600081511415612535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161252c906131c8565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050612592565b600190505b949350505050565b606060008214156125e2576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612742565b600082905060005b600082146126145780806125fd906137a7565b915050600a8261260d91906135cf565b91506125ea565b60008167ffffffffffffffff811115612656577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280601f01601f1916602001820160405280156126885781602001600182028036833780820191505090505b5090505b6000851461273b576001826126a1919061365a565b9150600a856126b091906137fa565b60306126bc9190613579565b60f81b8183815181106126f8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a8561273491906135cf565b945061268c565b8093505050505b919050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b82805461277690613744565b90600052602060002090601f01602090048101928261279857600085556127df565b82601f106127b157805160ff19168380011785556127df565b828001600101855582156127df579182015b828111156127de5782518255916020019190600101906127c3565b5b5090506127ec91906127f0565b5090565b5b808211156128095760008160009055506001016127f1565b5090565b600061282061281b846134a8565b613483565b9050808382526020820190508285602086028201111561283f57600080fd5b60005b8581101561286f578161285588826128f5565b845260208401935060208301925050600181019050612842565b5050509392505050565b600061288c612887846134d4565b613483565b9050828152602081018484840111156128a457600080fd5b6128af848285613702565b509392505050565b60006128ca6128c584613505565b613483565b9050828152602081018484840111156128e257600080fd5b6128ed848285613702565b509392505050565b60008135905061290481613e43565b92915050565b600082601f83011261291b57600080fd5b813561292b84826020860161280d565b91505092915050565b60008135905061294381613e5a565b92915050565b60008135905061295881613e71565b92915050565b60008151905061296d81613e71565b92915050565b600082601f83011261298457600080fd5b8135612994848260208601612879565b91505092915050565b600082601f8301126129ae57600080fd5b81356129be8482602086016128b7565b91505092915050565b6000813590506129d681613e88565b92915050565b6000602082840312156129ee57600080fd5b60006129fc848285016128f5565b91505092915050565b60008060408385031215612a1857600080fd5b6000612a26858286016128f5565b9250506020612a37858286016128f5565b9150509250929050565b600080600060608486031215612a5657600080fd5b6000612a64868287016128f5565b9350506020612a75868287016128f5565b9250506040612a86868287016129c7565b9150509250925092565b60008060008060808587031215612aa657600080fd5b6000612ab4878288016128f5565b9450506020612ac5878288016128f5565b9350506040612ad6878288016129c7565b925050606085013567ffffffffffffffff811115612af357600080fd5b612aff87828801612973565b91505092959194509250565b60008060408385031215612b1e57600080fd5b6000612b2c858286016128f5565b9250506020612b3d85828601612934565b9150509250929050565b60008060408385031215612b5a57600080fd5b6000612b68858286016128f5565b9250506020612b79858286016129c7565b9150509250929050565b600060208284031215612b9557600080fd5b600082013567ffffffffffffffff811115612baf57600080fd5b612bbb8482850161290a565b91505092915050565b600060208284031215612bd657600080fd5b6000612be484828501612934565b91505092915050565b600060208284031215612bff57600080fd5b6000612c0d84828501612949565b91505092915050565b600060208284031215612c2857600080fd5b6000612c368482850161295e565b91505092915050565b600060208284031215612c5157600080fd5b600082013567ffffffffffffffff811115612c6b57600080fd5b612c778482850161299d565b91505092915050565b600060208284031215612c9257600080fd5b6000612ca0848285016129c7565b91505092915050565b60008060408385031215612cbc57600080fd5b6000612cca858286016129c7565b9250506020612cdb858286016129c7565b9150509250929050565b612cee8161368e565b82525050565b612cfd816136a0565b82525050565b6000612d0e82613536565b612d18818561354c565b9350612d28818560208601613711565b612d31816138e7565b840191505092915050565b6000612d4782613541565b612d51818561355d565b9350612d61818560208601613711565b612d6a816138e7565b840191505092915050565b6000612d8082613541565b612d8a818561356e565b9350612d9a818560208601613711565b80840191505092915050565b6000612db360328361355d565b9150612dbe826138f8565b604082019050919050565b6000612dd660268361355d565b9150612de182613947565b604082019050919050565b6000612df960258361355d565b9150612e0482613996565b604082019050919050565b6000612e1c601c8361355d565b9150612e27826139e5565b602082019050919050565b6000612e3f60248361355d565b9150612e4a82613a0e565b604082019050919050565b6000612e6260198361355d565b9150612e6d82613a5d565b602082019050919050565b6000612e85602c8361355d565b9150612e9082613a86565b604082019050919050565b6000612ea860388361355d565b9150612eb382613ad5565b604082019050919050565b6000612ecb60158361355d565b9150612ed682613b24565b602082019050919050565b6000612eee602a8361355d565b9150612ef982613b4d565b604082019050919050565b6000612f1160298361355d565b9150612f1c82613b9c565b604082019050919050565b6000612f34601e8361355d565b9150612f3f82613beb565b602082019050919050565b6000612f5760208361355d565b9150612f6282613c14565b602082019050919050565b6000612f7a60318361355d565b9150612f8582613c3d565b604082019050919050565b6000612f9d601c8361355d565b9150612fa882613c8c565b602082019050919050565b6000612fc0602c8361355d565b9150612fcb82613cb5565b604082019050919050565b6000612fe360208361355d565b9150612fee82613d04565b602082019050919050565b6000613006602f8361355d565b915061301182613d2d565b604082019050919050565b600061302960218361355d565b915061303482613d7c565b604082019050919050565b600061304c60168361355d565b915061305782613dcb565b602082019050919050565b600061306f60318361355d565b915061307a82613df4565b604082019050919050565b61308e816136f8565b82525050565b6130a56130a0826136f8565b6137f0565b82525050565b60006130b78285612d75565b91506130c38284612d75565b91508190509392505050565b60006130db8285613094565b6020820191506130eb8284613094565b6020820191508190509392505050565b60006020820190506131106000830184612ce5565b92915050565b600060808201905061312b6000830187612ce5565b6131386020830186612ce5565b6131456040830185613085565b81810360608301526131578184612d03565b905095945050505050565b60006040820190506131776000830185612ce5565b6131846020830184613085565b9392505050565b60006020820190506131a06000830184612cf4565b92915050565b600060208201905081810360008301526131c08184612d3c565b905092915050565b600060208201905081810360008301526131e181612da6565b9050919050565b6000602082019050818103600083015261320181612dc9565b9050919050565b6000602082019050818103600083015261322181612dec565b9050919050565b6000602082019050818103600083015261324181612e0f565b9050919050565b6000602082019050818103600083015261326181612e32565b9050919050565b6000602082019050818103600083015261328181612e55565b9050919050565b600060208201905081810360008301526132a181612e78565b9050919050565b600060208201905081810360008301526132c181612e9b565b9050919050565b600060208201905081810360008301526132e181612ebe565b9050919050565b6000602082019050818103600083015261330181612ee1565b9050919050565b6000602082019050818103600083015261332181612f04565b9050919050565b6000602082019050818103600083015261334181612f27565b9050919050565b6000602082019050818103600083015261336181612f4a565b9050919050565b6000602082019050818103600083015261338181612f6d565b9050919050565b600060208201905081810360008301526133a181612f90565b9050919050565b600060208201905081810360008301526133c181612fb3565b9050919050565b600060208201905081810360008301526133e181612fd6565b9050919050565b6000602082019050818103600083015261340181612ff9565b9050919050565b600060208201905081810360008301526134218161301c565b9050919050565b600060208201905081810360008301526134418161303f565b9050919050565b6000602082019050818103600083015261346181613062565b9050919050565b600060208201905061347d6000830184613085565b92915050565b600061348d61349e565b90506134998282613776565b919050565b6000604051905090565b600067ffffffffffffffff8211156134c3576134c26138b8565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156134ef576134ee6138b8565b5b6134f8826138e7565b9050602081019050919050565b600067ffffffffffffffff8211156135205761351f6138b8565b5b613529826138e7565b9050602081019050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b6000613584826136f8565b915061358f836136f8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156135c4576135c361382b565b5b828201905092915050565b60006135da826136f8565b91506135e5836136f8565b9250826135f5576135f461385a565b5b828204905092915050565b600061360b826136f8565b9150613616836136f8565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561364f5761364e61382b565b5b828202905092915050565b6000613665826136f8565b9150613670836136f8565b9250828210156136835761368261382b565b5b828203905092915050565b6000613699826136d8565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b8381101561372f578082015181840152602081019050613714565b8381111561373e576000848401525b50505050565b6000600282049050600182168061375c57607f821691505b602082108114156137705761376f613889565b5b50919050565b61377f826138e7565b810181811067ffffffffffffffff8211171561379e5761379d6138b8565b5b80604052505050565b60006137b2826136f8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156137e5576137e461382b565b5b600182019050919050565b6000819050919050565b6000613805826136f8565b9150613810836136f8565b9250826138205761381f61385a565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b7f4e6f7420656e6f75676820415641582073656e742e0000000000000000000000600082015250565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b7f43616e6e6f74206d696e742074686174206d616e79206174206f6e63652e0000600082015250565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b7f45524337323155524953746f726167653a2055524920717565727920666f722060008201527f6e6f6e6578697374656e7420746f6b656e000000000000000000000000000000602082015250565b7f50726f6a6563742069732066696e6973686564206d696e74696e672e00000000600082015250565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b7f4d696e74696e67206973206e6f74206163746976652e00000000000000000000600082015250565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b613e4c8161368e565b8114613e5757600080fd5b50565b613e63816136a0565b8114613e6e57600080fd5b50565b613e7a816136ac565b8114613e8557600080fd5b50565b613e91816136f8565b8114613e9c57600080fd5b5056fea2646970667358221220a13f23ecf7ac33b76cfa60d4ce1fd8fb625609c7e7891c693d8cba8cd4bd975b64736f6c6343000801003368747470733a2f2f6e6674732e6270692e6e6574776f726b2f6c6f66695f6c656f70617264732f