false
false
0
The new Blockscout UI is now open source! Learn how to deploy it here

Contract Address Details

0x2e2A6cc5e1f775bFdfC4718B4bF28E082B695e4E

Contract Name
PeggedToken
Creator
0xdfef88–208669 at 0x9c9249–6f95e8
Balance
0 ETH
Tokens
Fetching tokens...
Transactions
0 Transactions
Transfers
0 Transfers
Gas Used
Fetching gas used...
Last Balance Update
2431873
Warning! Contract bytecode has been changed and doesn't match the verified one. Therefore, interaction with this smart contract may be risky.
Contract name:
PeggedToken




Optimization enabled
true
Compiler version
v0.8.26+commit.8a97fa7a




Optimization runs
200
EVM Version
paris




Verified at
2025-03-02T09:33:51.609662Z

Contract source code

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;

//fortct
interface IERC20 {
    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

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

    function allowance(
        address owner,
        address spender
    ) external view returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

contract ERC20 is IERC20 {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    uint256 private _totalSupply;
    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    function name() public view virtual returns (string memory) {
        return _name;
    }

    function symbol() public view virtual returns (string memory) {
        return _symbol;
    }

    function decimals() public view virtual returns (uint8) {
        return 18;
    }

    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(
        address account
    ) public view virtual override returns (uint256) {
        return _balances[account];
    }

    function transfer(
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        _transfer(msg.sender, recipient, amount);
        return true;
    }

    function allowance(
        address owner,
        address spender
    ) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(
        address spender,
        uint256 amount
    ) public virtual override returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);
        uint256 currentAllowance = _allowances[sender][msg.sender];
        require(
            currentAllowance >= amount,
            "ERC20: transfer amount exceeds allowance"
        );
        unchecked {
            _approve(sender, msg.sender, currentAllowance - amount);
        }
        return true;
    }

    function increaseAllowance(
        address spender,
        uint256 addedValue
    ) public virtual returns (bool) {
        _approve(
            msg.sender,
            spender,
            _allowances[msg.sender][spender] + addedValue
        );
        return true;
    }

    function decreaseAllowance(
        address spender,
        uint256 subtractedValue
    ) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[msg.sender][spender];
        require(
            currentAllowance >= subtractedValue,
            "ERC20: decreased allowance below zero"
        );
        unchecked {
            _approve(msg.sender, spender, currentAllowance - subtractedValue);
        }
        return true;
    }

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        _balances[sender] -= amount;
        _balances[recipient] += amount;
        emit Transfer(sender, recipient, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");
        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");
        _balances[account] -= amount;
        _totalSupply -= amount;
        emit Transfer(account, address(0), amount);
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
}

contract PeggedToken is ERC20 {
    address public immutable bridge;

    modifier onlyBridge() {
        require(msg.sender == bridge, "Only bridge can call");
        _;
    }

    constructor() ERC20("BNB-Peg-Token", "BNB") {
        bridge = 0xc42Dc8B290354c385925174E9788462437E42052;
    }

    function mint(address to, uint256 amount) external onlyBridge {
        _mint(to, amount);
    }

    function burnFrom(address account, uint256 amount) public {
        uint256 currentAllowance = allowance(account, msg.sender);
        require(
            currentAllowance >= amount,
            "ERC20: burn amount exceeds allowance"
        );
        unchecked {
            _approve(account, msg.sender, currentAllowance - amount);
        }
        _burn(account, amount);
    }
}
        

Contract ABI

[{"type":"constructor","stateMutability":"nonpayable","inputs":[]},{"type":"event","name":"Approval","inputs":[{"type":"address","name":"owner","internalType":"address","indexed":true},{"type":"address","name":"spender","internalType":"address","indexed":true},{"type":"uint256","name":"value","internalType":"uint256","indexed":false}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"type":"address","name":"from","internalType":"address","indexed":true},{"type":"address","name":"to","internalType":"address","indexed":true},{"type":"uint256","name":"value","internalType":"uint256","indexed":false}],"anonymous":false},{"type":"function","stateMutability":"view","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"allowance","inputs":[{"type":"address","name":"owner","internalType":"address"},{"type":"address","name":"spender","internalType":"address"}]},{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"approve","inputs":[{"type":"address","name":"spender","internalType":"address"},{"type":"uint256","name":"amount","internalType":"uint256"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"balanceOf","inputs":[{"type":"address","name":"account","internalType":"address"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"address","name":"","internalType":"address"}],"name":"bridge","inputs":[]},{"type":"function","stateMutability":"nonpayable","outputs":[],"name":"burnFrom","inputs":[{"type":"address","name":"account","internalType":"address"},{"type":"uint256","name":"amount","internalType":"uint256"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"uint8","name":"","internalType":"uint8"}],"name":"decimals","inputs":[]},{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"decreaseAllowance","inputs":[{"type":"address","name":"spender","internalType":"address"},{"type":"uint256","name":"subtractedValue","internalType":"uint256"}]},{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"increaseAllowance","inputs":[{"type":"address","name":"spender","internalType":"address"},{"type":"uint256","name":"addedValue","internalType":"uint256"}]},{"type":"function","stateMutability":"nonpayable","outputs":[],"name":"mint","inputs":[{"type":"address","name":"to","internalType":"address"},{"type":"uint256","name":"amount","internalType":"uint256"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"string","name":"","internalType":"string"}],"name":"name","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"string","name":"","internalType":"string"}],"name":"symbol","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"totalSupply","inputs":[]},{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"transfer","inputs":[{"type":"address","name":"recipient","internalType":"address"},{"type":"uint256","name":"amount","internalType":"uint256"}]},{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"transferFrom","inputs":[{"type":"address","name":"sender","internalType":"address"},{"type":"address","name":"recipient","internalType":"address"},{"type":"uint256","name":"amount","internalType":"uint256"}]}]
              

Contract Creation Code

Verify & Publish
0x60a060405234801561001057600080fd5b506040518060400160405280600d81526020016c21272116a832b396aa37b5b2b760991b8152506040518060400160405280600381526020016221272160e91b8152508160039081610062919061012e565b50600461006f828261012e565b505073c42dc8b290354c385925174e9788462437e42052608052506101ec565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806100b957607f821691505b6020821081036100d957634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561012957806000526020600020601f840160051c810160208510156101065750805b601f840160051c820191505b818110156101265760008155600101610112565b50505b505050565b81516001600160401b038111156101475761014761008f565b61015b8161015584546100a5565b846100df565b6020601f82116001811461018f57600083156101775750848201515b600019600385901b1c1916600184901b178455610126565b600084815260208120601f198516915b828110156101bf578785015182556020948501946001909201910161019f565b50848210156101dd5786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b608051610bf261020e60003960008181610234015261040d0152610bf26000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c806370a082311161008c578063a457c2d711610066578063a457c2d7146101d0578063a9059cbb146101e3578063dd62ed3e146101f6578063e78cea921461022f57600080fd5b806370a082311461018c57806379cc6790146101b557806395d89b41146101c857600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce56714610155578063395093511461016457806340c10f191461017757600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f761026e565b6040516101049190610a20565b60405180910390f35b61012061011b366004610a8a565b610300565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610ab4565b610317565b60405160128152602001610104565b610120610172366004610a8a565b6103c6565b61018a610185366004610a8a565b610402565b005b61013461019a366004610af1565b6001600160a01b031660009081526020819052604090205490565b61018a6101c3366004610a8a565b61047f565b6100f761051b565b6101206101de366004610a8a565b61052a565b6101206101f1366004610a8a565b6105c3565b610134610204366004610b13565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6102567f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610104565b60606003805461027d90610b46565b80601f01602080910402602001604051908101604052809291908181526020018280546102a990610b46565b80156102f65780601f106102cb576101008083540402835291602001916102f6565b820191906000526020600020905b8154815290600101906020018083116102d957829003601f168201915b5050505050905090565b600061030d3384846105d0565b5060015b92915050565b60006103248484846106f5565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156103ae5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6103bb85338584036105d0565b506001949350505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161030d9185906103fd908690610b96565b6105d0565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146104715760405162461bcd60e51b815260206004820152601460248201527313db9b1e48189c9a5919d94818d85b8818d85b1b60621b60448201526064016103a5565b61047b828261085c565b5050565b6001600160a01b0382166000908152600160209081526040808320338452909152902054818110156104ff5760405162461bcd60e51b8152602060048201526024808201527f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f77604482015263616e636560e01b60648201526084016103a5565b61050c83338484036105d0565b610516838361093c565b505050565b60606004805461027d90610b46565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156105ac5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016103a5565b6105b933858584036105d0565b5060019392505050565b600061030d3384846106f5565b6001600160a01b0383166106325760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103a5565b6001600160a01b0382166106935760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103a5565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166107595760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103a5565b6001600160a01b0382166107bb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103a5565b6001600160a01b038316600090815260208190526040812080548392906107e3908490610ba9565b90915550506001600160a01b03821660009081526020819052604081208054839290610810908490610b96565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516106e891815260200190565b6001600160a01b0382166108b25760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016103a5565b80600260008282546108c49190610b96565b90915550506001600160a01b038216600090815260208190526040812080548392906108f1908490610b96565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906020015b60405180910390a35050565b6001600160a01b03821661099c5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016103a5565b6001600160a01b038216600090815260208190526040812080548392906109c4908490610ba9565b9250508190555080600260008282546109dd9190610ba9565b90915550506040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610930565b602081526000825180602084015260005b81811015610a4e5760208186018101516040868401015201610a31565b506000604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b0381168114610a8557600080fd5b919050565b60008060408385031215610a9d57600080fd5b610aa683610a6e565b946020939093013593505050565b600080600060608486031215610ac957600080fd5b610ad284610a6e565b9250610ae060208501610a6e565b929592945050506040919091013590565b600060208284031215610b0357600080fd5b610b0c82610a6e565b9392505050565b60008060408385031215610b2657600080fd5b610b2f83610a6e565b9150610b3d60208401610a6e565b90509250929050565b600181811c90821680610b5a57607f821691505b602082108103610b7a57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561031157610311610b80565b8181038181111561031157610311610b8056fea26469706673582212209d03aa43688ff487039506acef743673a7bd58deacd64300c82c685f415fad6264736f6c634300081a0033

Deployed ByteCode

0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c806370a082311161008c578063a457c2d711610066578063a457c2d7146101d0578063a9059cbb146101e3578063dd62ed3e146101f6578063e78cea921461022f57600080fd5b806370a082311461018c57806379cc6790146101b557806395d89b41146101c857600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce56714610155578063395093511461016457806340c10f191461017757600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f761026e565b6040516101049190610a20565b60405180910390f35b61012061011b366004610a8a565b610300565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610ab4565b610317565b60405160128152602001610104565b610120610172366004610a8a565b6103c6565b61018a610185366004610a8a565b610402565b005b61013461019a366004610af1565b6001600160a01b031660009081526020819052604090205490565b61018a6101c3366004610a8a565b61047f565b6100f761051b565b6101206101de366004610a8a565b61052a565b6101206101f1366004610a8a565b6105c3565b610134610204366004610b13565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6102567f000000000000000000000000c42dc8b290354c385925174e9788462437e4205281565b6040516001600160a01b039091168152602001610104565b60606003805461027d90610b46565b80601f01602080910402602001604051908101604052809291908181526020018280546102a990610b46565b80156102f65780601f106102cb576101008083540402835291602001916102f6565b820191906000526020600020905b8154815290600101906020018083116102d957829003601f168201915b5050505050905090565b600061030d3384846105d0565b5060015b92915050565b60006103248484846106f5565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156103ae5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6103bb85338584036105d0565b506001949350505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161030d9185906103fd908690610b96565b6105d0565b336001600160a01b037f000000000000000000000000c42dc8b290354c385925174e9788462437e4205216146104715760405162461bcd60e51b815260206004820152601460248201527313db9b1e48189c9a5919d94818d85b8818d85b1b60621b60448201526064016103a5565b61047b828261085c565b5050565b6001600160a01b0382166000908152600160209081526040808320338452909152902054818110156104ff5760405162461bcd60e51b8152602060048201526024808201527f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f77604482015263616e636560e01b60648201526084016103a5565b61050c83338484036105d0565b610516838361093c565b505050565b60606004805461027d90610b46565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156105ac5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016103a5565b6105b933858584036105d0565b5060019392505050565b600061030d3384846106f5565b6001600160a01b0383166106325760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103a5565b6001600160a01b0382166106935760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103a5565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166107595760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103a5565b6001600160a01b0382166107bb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103a5565b6001600160a01b038316600090815260208190526040812080548392906107e3908490610ba9565b90915550506001600160a01b03821660009081526020819052604081208054839290610810908490610b96565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516106e891815260200190565b6001600160a01b0382166108b25760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016103a5565b80600260008282546108c49190610b96565b90915550506001600160a01b038216600090815260208190526040812080548392906108f1908490610b96565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906020015b60405180910390a35050565b6001600160a01b03821661099c5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016103a5565b6001600160a01b038216600090815260208190526040812080548392906109c4908490610ba9565b9250508190555080600260008282546109dd9190610ba9565b90915550506040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610930565b602081526000825180602084015260005b81811015610a4e5760208186018101516040868401015201610a31565b506000604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b0381168114610a8557600080fd5b919050565b60008060408385031215610a9d57600080fd5b610aa683610a6e565b946020939093013593505050565b600080600060608486031215610ac957600080fd5b610ad284610a6e565b9250610ae060208501610a6e565b929592945050506040919091013590565b600060208284031215610b0357600080fd5b610b0c82610a6e565b9392505050565b60008060408385031215610b2657600080fd5b610b2f83610a6e565b9150610b3d60208401610a6e565b90509250929050565b600181811c90821680610b5a57607f821691505b602082108103610b7a57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561031157610311610b80565b8181038181111561031157610311610b8056fea26469706673582212209d03aa43688ff487039506acef743673a7bd58deacd64300c82c685f415fad6264736f6c634300081a0033
<script src="{@file}"> </script>