ETH Price: $2,613.90 (-0.47%)

Contract

0x04DC3d3014f8b4071D9198725CDf40efCcbF9476
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Remint192563912024-02-18 18:14:23242 days ago1708280063IN
0x04DC3d30...fCcbF9476
0 ETH0.0058064727.13079836
Remint192563812024-02-18 18:12:11242 days ago1708279931IN
0x04DC3d30...fCcbF9476
0 ETH0.00609828.49296443
Remint192563042024-02-18 17:56:35242 days ago1708278995IN
0x04DC3d30...fCcbF9476
0 ETH0.0066861431.24105332
Remint192561852024-02-18 17:32:11242 days ago1708277531IN
0x04DC3d30...fCcbF9476
0 ETH0.0065679830.6889203
Remint192561282024-02-18 17:20:47242 days ago1708276847IN
0x04DC3d30...fCcbF9476
0 ETH0.0057874627.04193534
Remint192560152024-02-18 16:57:47242 days ago1708275467IN
0x04DC3d30...fCcbF9476
0 ETH0.0308567934.93377488
Remint192141992024-02-12 20:02:47248 days ago1707768167IN
0x04DC3d30...fCcbF9476
0 ETH0.0065929435.0654921
Remint192141212024-02-12 19:47:11248 days ago1707767231IN
0x04DC3d30...fCcbF9476
0 ETH0.0078726441.87175791
Remint192118912024-02-12 12:17:23248 days ago1707740243IN
0x04DC3d30...fCcbF9476
0 ETH0.0213892917.38204005
Remint192118872024-02-12 12:16:35248 days ago1707740195IN
0x04DC3d30...fCcbF9476
0 ETH0.0060786418.42270821
Remint192107452024-02-12 8:26:35248 days ago1707726395IN
0x04DC3d30...fCcbF9476
0 ETH0.0296568319.69243901
Remint192107332024-02-12 8:24:11248 days ago1707726251IN
0x04DC3d30...fCcbF9476
0 ETH0.0474184319.59735831
Remint192107242024-02-12 8:22:23248 days ago1707726143IN
0x04DC3d30...fCcbF9476
0 ETH0.0223619719.56010522
Remint192106882024-02-12 8:15:11248 days ago1707725711IN
0x04DC3d30...fCcbF9476
0 ETH0.0490550621.04837191
Remint192093602024-02-12 3:47:23249 days ago1707709643IN
0x04DC3d30...fCcbF9476
0 ETH0.0061770219.52073263
Remint192059422024-02-11 16:14:47249 days ago1707668087IN
0x04DC3d30...fCcbF9476
0 ETH0.0094488629.86045573
Remint192055982024-02-11 15:05:11249 days ago1707663911IN
0x04DC3d30...fCcbF9476
0 ETH0.021401529.24982063
Remint192055492024-02-11 14:54:59249 days ago1707663299IN
0x04DC3d30...fCcbF9476
0 ETH0.0048648625.87446445
Remint192055012024-02-11 14:45:23249 days ago1707662723IN
0x04DC3d30...fCcbF9476
0 ETH0.0069775232.60250238
Remint192046382024-02-11 11:51:11249 days ago1707652271IN
0x04DC3d30...fCcbF9476
0 ETH0.0233718923.15447906
Remint192044502024-02-11 11:13:11249 days ago1707649991IN
0x04DC3d30...fCcbF9476
0 ETH0.0046683721.81302148
Remint192044412024-02-11 11:11:23249 days ago1707649883IN
0x04DC3d30...fCcbF9476
0 ETH0.0043042620.11171401
Remint192042692024-02-11 10:36:23249 days ago1707647783IN
0x04DC3d30...fCcbF9476
0 ETH0.005778527.00008192
Remint192038672024-02-11 9:15:11249 days ago1707642911IN
0x04DC3d30...fCcbF9476
0 ETH0.0112499424.66400483
Remint192038572024-02-11 9:13:11249 days ago1707642791IN
0x04DC3d30...fCcbF9476
0 ETH0.0118944527.01517576
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
RuggedEcho

Compiler Version
v0.8.22+commit.4fc1097e

Optimization Enabled:
Yes with 200 runs

Other Settings:
paris EvmVersion
File 1 of 1 : Echo.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;

interface IERC404 {
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external;

    function transfer(
        address recipient,
        uint256 amount
    ) external returns (bool);
}

contract RuggedEcho {

    
    error InvalidAmount();
    error TransferFailed();

    uint256 public constant ERC721_TOTAL_SUPPLY = 10_000;
    IERC404 public token;

    constructor(address _tokenAddress) {
        token = IERC404(_tokenAddress);
    }

    function receiveAndReturnERC20(uint256 _amount) public {
        // Check if the amount is greater than 1 ether
        if (_amount < 1 ether) {
            revert InvalidAmount();
        }
        token.transferFrom(msg.sender, address(this), _amount);

        bool success = token.transfer(msg.sender, _amount);
        if (!success) {
            revert TransferFailed();
        }
    }

    function remint(uint256[] memory _tokenIds) public {

        for (uint256 i = 0; i < _tokenIds.length; i++) {
            if (_tokenIds[i] > ERC721_TOTAL_SUPPLY) {
                revert InvalidAmount();
            }
            token.transferFrom(msg.sender, address(this), _tokenIds[i]);
        }

        bool success = token.transfer(msg.sender, _tokenIds.length * 1 ether);
        if (!success) {
            revert TransferFailed();
        }
    }
}

Settings
{
  "remappings": [
    "forge-std/=lib/forge-std/src/",
    "@openzeppelin/=lib/openzeppelin-contracts/",
    "@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/",
    "ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/",
    "erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/",
    "openzeppelin-contracts/=lib/openzeppelin-contracts/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "ipfs",
    "appendCBOR": true
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "paris",
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"InvalidAmount","type":"error"},{"inputs":[],"name":"TransferFailed","type":"error"},{"inputs":[],"name":"ERC721_TOTAL_SUPPLY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"receiveAndReturnERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"_tokenIds","type":"uint256[]"}],"name":"remint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"token","outputs":[{"internalType":"contract IERC404","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

608060405234801561001057600080fd5b5060405161056838038061056883398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b6104d5806100936000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80630c955a801461005157806346ec966914610066578063ee15356714610082578063fc0c546a14610095575b600080fd5b61006461005f36600461035e565b6100c0565b005b61006f61271081565b6040519081526020015b60405180910390f35b61006461009036600461041c565b61027d565b6000546100a8906001600160a01b031681565b6040516001600160a01b039091168152602001610079565b60005b81518110156101bc576127108282815181106100e1576100e1610435565b602002602001015111156101085760405163162908e360e11b815260040160405180910390fd5b60008054906101000a90046001600160a01b03166001600160a01b03166323b872dd333085858151811061013e5761013e610435565b60209081029190910101516040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606401600060405180830381600087803b15801561019857600080fd5b505af11580156101ac573d6000803e3d6000fd5b5050600190920191506100c39050565b506000805482516001600160a01b039091169063a9059cbb9033906101e990670de0b6b3a764000061044b565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044015b6020604051808303816000875af1158015610235573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102599190610476565b905080610279576040516312171d8360e31b815260040160405180910390fd5b5050565b670de0b6b3a76400008110156102a65760405163162908e360e11b815260040160405180910390fd5b6000546040516323b872dd60e01b8152336004820152306024820152604481018390526001600160a01b03909116906323b872dd90606401600060405180830381600087803b1580156102f857600080fd5b505af115801561030c573d6000803e3d6000fd5b50506000805460405163a9059cbb60e01b8152336004820152602481018690529193506001600160a01b0316915063a9059cbb90604401610216565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561037157600080fd5b823567ffffffffffffffff8082111561038957600080fd5b818501915085601f83011261039d57600080fd5b8135818111156103af576103af610348565b8060051b604051601f19603f830116810181811085821117156103d4576103d4610348565b6040529182528482019250838101850191888311156103f257600080fd5b938501935b82851015610410578435845293850193928501926103f7565b98975050505050505050565b60006020828403121561042e57600080fd5b5035919050565b634e487b7160e01b600052603260045260246000fd5b808202811582820484141761047057634e487b7160e01b600052601160045260246000fd5b92915050565b60006020828403121561048857600080fd5b8151801515811461049857600080fd5b939250505056fea2646970667358221220ab86d16a79de6f2979e89cc12319e60141f98f3b5ccbfe217b46a1c30c1da0f164736f6c63430008160033000000000000000000000000be33f57f41a20b2f00dec91dcc1169597f36221f

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80630c955a801461005157806346ec966914610066578063ee15356714610082578063fc0c546a14610095575b600080fd5b61006461005f36600461035e565b6100c0565b005b61006f61271081565b6040519081526020015b60405180910390f35b61006461009036600461041c565b61027d565b6000546100a8906001600160a01b031681565b6040516001600160a01b039091168152602001610079565b60005b81518110156101bc576127108282815181106100e1576100e1610435565b602002602001015111156101085760405163162908e360e11b815260040160405180910390fd5b60008054906101000a90046001600160a01b03166001600160a01b03166323b872dd333085858151811061013e5761013e610435565b60209081029190910101516040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606401600060405180830381600087803b15801561019857600080fd5b505af11580156101ac573d6000803e3d6000fd5b5050600190920191506100c39050565b506000805482516001600160a01b039091169063a9059cbb9033906101e990670de0b6b3a764000061044b565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044015b6020604051808303816000875af1158015610235573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102599190610476565b905080610279576040516312171d8360e31b815260040160405180910390fd5b5050565b670de0b6b3a76400008110156102a65760405163162908e360e11b815260040160405180910390fd5b6000546040516323b872dd60e01b8152336004820152306024820152604481018390526001600160a01b03909116906323b872dd90606401600060405180830381600087803b1580156102f857600080fd5b505af115801561030c573d6000803e3d6000fd5b50506000805460405163a9059cbb60e01b8152336004820152602481018690529193506001600160a01b0316915063a9059cbb90604401610216565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561037157600080fd5b823567ffffffffffffffff8082111561038957600080fd5b818501915085601f83011261039d57600080fd5b8135818111156103af576103af610348565b8060051b604051601f19603f830116810181811085821117156103d4576103d4610348565b6040529182528482019250838101850191888311156103f257600080fd5b938501935b82851015610410578435845293850193928501926103f7565b98975050505050505050565b60006020828403121561042e57600080fd5b5035919050565b634e487b7160e01b600052603260045260246000fd5b808202811582820484141761047057634e487b7160e01b600052601160045260246000fd5b92915050565b60006020828403121561048857600080fd5b8151801515811461049857600080fd5b939250505056fea2646970667358221220ab86d16a79de6f2979e89cc12319e60141f98f3b5ccbfe217b46a1c30c1da0f164736f6c63430008160033

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

000000000000000000000000be33f57f41a20b2f00dec91dcc1169597f36221f

-----Decoded View---------------
Arg [0] : _tokenAddress (address): 0xbE33F57f41a20b2f00DEc91DcC1169597f36221F

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000be33f57f41a20b2f00dec91dcc1169597f36221f


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.