Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 12 from a total of 12 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Deploy | 19441137 | 721 days ago | IN | 0 ETH | 0.01311965 | ||||
| Deploy | 19441132 | 721 days ago | IN | 0 ETH | 0.01250954 | ||||
| Deploy | 19441072 | 721 days ago | IN | 0 ETH | 0.0127866 | ||||
| Deploy | 19441068 | 721 days ago | IN | 0 ETH | 0.0134061 | ||||
| Deploy | 19440958 | 721 days ago | IN | 0 ETH | 0.01487562 | ||||
| Deploy | 19440943 | 721 days ago | IN | 0 ETH | 0.01381388 | ||||
| Deploy | 15792678 | 1233 days ago | IN | 0 ETH | 0.00664079 | ||||
| Deploy | 14567161 | 1425 days ago | IN | 0 ETH | 0.01218763 | ||||
| Deploy | 14227802 | 1477 days ago | IN | 0 ETH | 0.01417233 | ||||
| Deploy | 14227366 | 1477 days ago | IN | 0 ETH | 0.01616275 | ||||
| Deploy | 14104730 | 1496 days ago | IN | 0 ETH | 0.02768511 | ||||
| Deploy | 13025432 | 1665 days ago | IN | 0 ETH | 0.0175856 |
Latest 12 internal transactions
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| 0x3d602d80 | 19441137 | 721 days ago | Contract Creation | 0 ETH | |||
| 0x3d602d80 | 19441132 | 721 days ago | Contract Creation | 0 ETH | |||
| 0x3d602d80 | 19441072 | 721 days ago | Contract Creation | 0 ETH | |||
| 0x3d602d80 | 19441068 | 721 days ago | Contract Creation | 0 ETH | |||
| 0x3d602d80 | 19440958 | 721 days ago | Contract Creation | 0 ETH | |||
| 0x3d602d80 | 19440943 | 721 days ago | Contract Creation | 0 ETH | |||
| 0x3d602d80 | 15792678 | 1233 days ago | Contract Creation | 0 ETH | |||
| - | 14567161 | 1425 days ago | Contract Creation | 0 ETH | |||
| - | 14227802 | 1477 days ago | Contract Creation | 0 ETH | |||
| - | 14227366 | 1477 days ago | Contract Creation | 0 ETH | |||
| - | 14104730 | 1496 days ago | Contract Creation | 0 ETH | |||
| - | 13025432 | 1665 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Contract Name:
SynapseERC20Factory
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT
pragma solidity 0.6.12;
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/proxy/Clones.sol";
import "./interfaces/ISynapseERC20.sol";
contract SynapseERC20Factory {
constructor() public {}
event SynapseERC20Created(address contractAddress);
/**
* @notice Deploys a new node
* @param synapseERC20Address address of the synapseERC20Address contract to initialize with
* @param name Token name
* @param symbol Token symbol
* @param decimals Token name
* @param owner admin address to be initialized with
* @return Address of the newest node management contract created
**/
function deploy(
address synapseERC20Address,
string memory name,
string memory symbol,
uint8 decimals,
address owner
) external returns (address) {
address synERC20Clone = Clones.clone(synapseERC20Address);
ISynapseERC20(synERC20Clone).initialize(
name,
symbol,
decimals,
owner
);
emit SynapseERC20Created(synERC20Clone);
return synERC20Clone;
}
}// SPDX-License-Identifier: MIT
pragma solidity >=0.6.0 <0.8.0;
import "../utils/Context.sol";
/**
* @dev Contract module which provides a basic access control mechanism, where
* there is an account (an owner) that can be granted exclusive access to
* specific functions.
*
* By default, the owner account will be the one that deploys the contract. This
* can later be changed with {transferOwnership}.
*
* This module is used through inheritance. It will make available the modifier
* `onlyOwner`, which can be applied to your functions to restrict their use to
* the owner.
*/
abstract contract Ownable is Context {
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
/**
* @dev Initializes the contract setting the deployer as the initial owner.
*/
constructor () internal {
address msgSender = _msgSender();
_owner = msgSender;
emit OwnershipTransferred(address(0), msgSender);
}
/**
* @dev Returns the address of the current owner.
*/
function owner() public view virtual returns (address) {
return _owner;
}
/**
* @dev Throws if called by any account other than the owner.
*/
modifier onlyOwner() {
require(owner() == _msgSender(), "Ownable: caller is not the owner");
_;
}
/**
* @dev Leaves the contract without owner. It will not be possible to call
* `onlyOwner` functions anymore. Can only be called by the current owner.
*
* NOTE: Renouncing ownership will leave the contract without an owner,
* thereby removing any functionality that is only available to the owner.
*/
function renounceOwnership() public virtual onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
/**
* @dev Transfers ownership of the contract to a new account (`newOwner`).
* Can only be called by the current owner.
*/
function transferOwnership(address newOwner) public virtual onlyOwner {
require(newOwner != address(0), "Ownable: new owner is the zero address");
emit OwnershipTransferred(_owner, newOwner);
_owner = newOwner;
}
}// SPDX-License-Identifier: MIT
pragma solidity >=0.6.0 <0.8.0;
/**
* @dev https://eips.ethereum.org/EIPS/eip-1167[EIP 1167] is a standard for
* deploying minimal proxy contracts, also known as "clones".
*
* > To simply and cheaply clone contract functionality in an immutable way, this standard specifies
* > a minimal bytecode implementation that delegates all calls to a known, fixed address.
*
* The library includes functions to deploy a proxy using either `create` (traditional deployment) or `create2`
* (salted deterministic deployment). It also includes functions to predict the addresses of clones deployed using the
* deterministic method.
*
* _Available since v3.4._
*/
library Clones {
/**
* @dev Deploys and returns the address of a clone that mimics the behaviour of `master`.
*
* This function uses the create opcode, which should never revert.
*/
function clone(address master) internal returns (address instance) {
// solhint-disable-next-line no-inline-assembly
assembly {
let ptr := mload(0x40)
mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)
mstore(add(ptr, 0x14), shl(0x60, master))
mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)
instance := create(0, ptr, 0x37)
}
require(instance != address(0), "ERC1167: create failed");
}
/**
* @dev Deploys and returns the address of a clone that mimics the behaviour of `master`.
*
* This function uses the create2 opcode and a `salt` to deterministically deploy
* the clone. Using the same `master` and `salt` multiple time will revert, since
* the clones cannot be deployed twice at the same address.
*/
function cloneDeterministic(address master, bytes32 salt) internal returns (address instance) {
// solhint-disable-next-line no-inline-assembly
assembly {
let ptr := mload(0x40)
mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)
mstore(add(ptr, 0x14), shl(0x60, master))
mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)
instance := create2(0, ptr, 0x37, salt)
}
require(instance != address(0), "ERC1167: create2 failed");
}
/**
* @dev Computes the address of a clone deployed using {Clones-cloneDeterministic}.
*/
function predictDeterministicAddress(address master, bytes32 salt, address deployer) internal pure returns (address predicted) {
// solhint-disable-next-line no-inline-assembly
assembly {
let ptr := mload(0x40)
mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)
mstore(add(ptr, 0x14), shl(0x60, master))
mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf3ff00000000000000000000000000000000)
mstore(add(ptr, 0x38), shl(0x60, deployer))
mstore(add(ptr, 0x4c), salt)
mstore(add(ptr, 0x6c), keccak256(ptr, 0x37))
predicted := keccak256(add(ptr, 0x37), 0x55)
}
}
/**
* @dev Computes the address of a clone deployed using {Clones-cloneDeterministic}.
*/
function predictDeterministicAddress(address master, bytes32 salt) internal view returns (address predicted) {
return predictDeterministicAddress(master, salt, address(this));
}
}// SPDX-License-Identifier: MIT
pragma solidity >=0.6.0 <0.8.0;
/*
* @dev Provides information about the current execution context, including the
* sender of the transaction and its data. While these are generally available
* via msg.sender and msg.data, they should not be accessed in such a direct
* manner, since when dealing with GSN meta-transactions the account sending and
* paying for execution may not be the actual sender (as far as an application
* is concerned).
*
* This contract is only required for intermediate, library-like contracts.
*/
abstract contract Context {
function _msgSender() internal view virtual returns (address payable) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes memory) {
this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
return msg.data;
}
}// SPDX-License-Identifier: MIT
pragma solidity >=0.6.0 <0.8.0;
interface ISynapseERC20 {
function initialize(
string memory _name, string memory _symbol, uint8 _decimals, address owner) external;
}{
"evmVersion": "istanbul",
"libraries": {},
"metadata": {
"bytecodeHash": "ipfs",
"useLiteralContent": true
},
"optimizer": {
"enabled": true,
"runs": 10000
},
"remappings": [],
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"abi"
]
}
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"contractAddress","type":"address"}],"name":"SynapseERC20Created","type":"event"},{"inputs":[{"internalType":"address","name":"synapseERC20Address","type":"address"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint8","name":"decimals","type":"uint8"},{"internalType":"address","name":"owner","type":"address"}],"name":"deploy","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
608060405234801561001057600080fd5b5061049d806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80635d58ce2414610030575b600080fd5b610198600480360360a081101561004657600080fd5b73ffffffffffffffffffffffffffffffffffffffff823516919081019060408101602082013564010000000081111561007e57600080fd5b82018360208201111561009057600080fd5b803590602001918460018302840111640100000000831117156100b257600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929594936020810193503591505064010000000081111561010557600080fd5b82018360208201111561011757600080fd5b8035906020019184600183028401116401000000008311171561013957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505050813560ff169250506020013573ffffffffffffffffffffffffffffffffffffffff166101c1565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6000806101cd87610380565b90508073ffffffffffffffffffffffffffffffffffffffff1663de7ea79d878787876040518563ffffffff1660e01b81526004018080602001806020018560ff1681526020018473ffffffffffffffffffffffffffffffffffffffff168152602001838103835287818151815260200191508051906020019080838360005b8381101561026457818101518382015260200161024c565b50505050905090810190601f1680156102915780820380516001836020036101000a031916815260200191505b50838103825286518152865160209182019188019080838360005b838110156102c45781810151838201526020016102ac565b50505050905090810190601f1680156102f15780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b15801561031457600080fd5b505af1158015610328573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8516815290517f3f53e2db82c60058131913739ee1bca25955b597586645b6043f9902e9bdf0dd9350908190036020019150a19695505050505050565b60006040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528260601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f091505073ffffffffffffffffffffffffffffffffffffffff811661046257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f455243313136373a20637265617465206661696c656400000000000000000000604482015290519081900360640190fd5b91905056fea2646970667358221220455b4470c667e6860dec0642eaecfebefb9c0307724edb783ec4ba3bb8189d8d64736f6c634300060c0033
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061002b5760003560e01c80635d58ce2414610030575b600080fd5b610198600480360360a081101561004657600080fd5b73ffffffffffffffffffffffffffffffffffffffff823516919081019060408101602082013564010000000081111561007e57600080fd5b82018360208201111561009057600080fd5b803590602001918460018302840111640100000000831117156100b257600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929594936020810193503591505064010000000081111561010557600080fd5b82018360208201111561011757600080fd5b8035906020019184600183028401116401000000008311171561013957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505050813560ff169250506020013573ffffffffffffffffffffffffffffffffffffffff166101c1565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6000806101cd87610380565b90508073ffffffffffffffffffffffffffffffffffffffff1663de7ea79d878787876040518563ffffffff1660e01b81526004018080602001806020018560ff1681526020018473ffffffffffffffffffffffffffffffffffffffff168152602001838103835287818151815260200191508051906020019080838360005b8381101561026457818101518382015260200161024c565b50505050905090810190601f1680156102915780820380516001836020036101000a031916815260200191505b50838103825286518152865160209182019188019080838360005b838110156102c45781810151838201526020016102ac565b50505050905090810190601f1680156102f15780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b15801561031457600080fd5b505af1158015610328573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8516815290517f3f53e2db82c60058131913739ee1bca25955b597586645b6043f9902e9bdf0dd9350908190036020019150a19695505050505050565b60006040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528260601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f091505073ffffffffffffffffffffffffffffffffffffffff811661046257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f455243313136373a20637265617465206661696c656400000000000000000000604482015290519081900360640190fd5b91905056fea2646970667358221220455b4470c667e6860dec0642eaecfebefb9c0307724edb783ec4ba3bb8189d8d64736f6c634300060c0033
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ 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.