账户
0x4d...1943
0x4D...1943

0x4D...1943

$500
此合同的源代码已经过验证!
合同元数据
编译器
0.6.8+commit.0bbfe453
语言
Solidity
合同源代码
文件 1 的 1:refund.sol
// SPDX-License-Identifier: NONE

pragma solidity 0.6.8;



// Part: IERC721

interface IERC721 {
    function ownerOf(uint256 tokenId) external view returns (address owner);
}

// File: refund.sol

contract refund {

    IERC721 public froggies;
    address private owner;
    uint256 public refunded;
    mapping(uint256 => bool) tokenRedeemed;

    constructor(address _froggies) public {
        froggies = IERC721(_froggies);
        owner = msg.sender;
    }

    receive() external payable {
        refunded += msg.value;
    }
    

    function refundTokens(uint256[] memory _tokenids) public {
        uint256 r;
        require(_tokenids.length > 0);
        for(uint256 i = 0; i < _tokenids.length; i++) {
            require(_tokenids[i] <= 1284, "not in snapshot");
            require(froggies.ownerOf(_tokenids[i]) == msg.sender, "not owner");
            require(tokenRedeemed[_tokenids[i]] != true, "already claimed");
            tokenRedeemed[_tokenids[i]] = true;
            r += 0.05 ether;
        }
        payable(msg.sender).transfer(r + tx.gasprice);
    }

    function withdraw() public {
        require(msg.sender == owner);
        refunded -= address(this).balance;
        payable(msg.sender).transfer(address(this).balance);
    }



}
设置
{
  "compilationTarget": {
    "refund.sol": "refund"
  },
  "evmVersion": "istanbul",
  "libraries": {},
  "metadata": {
    "bytecodeHash": "ipfs"
  },
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "remappings": []
}
ABI
[{"inputs":[{"internalType":"address","name":"_froggies","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"froggies","outputs":[{"internalType":"contract IERC721","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"_tokenids","type":"uint256[]"}],"name":"refundTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"refunded","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]