Feature Tip: Add private address tag to any address under My Name Tag !
Overview
Max Total Supply
1,000,000,000 ARA
Holders
4,944 ( 0.020%)
Market
Price
$0.00 @ 0.000000 ETH (+0.45%)
Onchain Market Cap
$214,740.00
Circulating Supply Market Cap
$158,155.00
Other Info
Token Contract (WITH 18 Decimals)
Balance
100,000 ARAValue
$21.47 ( ~0.00776498309084248 Eth) [0.0100%]Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
AraProxy
Compiler Version
v0.4.24+commit.e67f0147
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-01-30 */ pragma solidity ^0.4.24; /** * @title AraProxy * @dev Gives the possibility to delegate any call to a foreign implementation. */ contract AraProxy { bytes32 private constant registryPosition_ = keccak256("io.ara.proxy.registry"); bytes32 private constant implementationPosition_ = keccak256("io.ara.proxy.implementation"); modifier restricted() { bytes32 registryPosition = registryPosition_; address registryAddress; assembly { registryAddress := sload(registryPosition) } require( msg.sender == registryAddress, "Only the AraRegistry can upgrade this proxy." ); _; } /** * @dev the constructor sets the AraRegistry address */ constructor(address _registryAddress, address _implementationAddress) public { bytes32 registryPosition = registryPosition_; bytes32 implementationPosition = implementationPosition_; assembly { sstore(registryPosition, _registryAddress) sstore(implementationPosition, _implementationAddress) } } function setImplementation(address _newImplementation) public restricted { require(_newImplementation != address(0)); bytes32 implementationPosition = implementationPosition_; assembly { sstore(implementationPosition, _newImplementation) } } /** * @dev Fallback function allowing to perform a delegatecall to the given implementation. * This function will return whatever the implementation call returns */ function () payable public { bytes32 implementationPosition = implementationPosition_; address _impl; assembly { _impl := sload(implementationPosition) } assembly { let ptr := mload(0x40) calldatacopy(ptr, 0, calldatasize) let result := delegatecall(gas, _impl, ptr, calldatasize, 0, 0) let size := returndatasize returndatacopy(ptr, 0, size) switch result case 0 { revert(ptr, size) } default { return(ptr, size) } } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"_newImplementation","type":"address"}],"name":"setImplementation","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registryAddress","type":"address"},{"name":"_implementationAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]
Contract Creation Code
608060405234801561001057600080fd5b50604051604080610366833981018060405281019080805190602001909291908051906020019092919050505060008060405180807f696f2e6172612e70726f78792e7265676973747279000000000000000000000081525060150190506040518091039020915060405180807f696f2e6172612e70726f78792e696d706c656d656e746174696f6e0000000000815250601b019050604051809103902090508382558281555050505061029d806100c96000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063d784d426146100a7575b60008060405180807f696f2e6172612e70726f78792e696d706c656d656e746174696f6e0000000000815250601b019050604051809103902091508154905060405136600082376000803683855af43d806000843e81600081146100a3578184f35b8184fd5b3480156100b357600080fd5b506100e8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506100ea565b005b600080600060405180807f696f2e6172612e70726f78792e72656769737472790000000000000000000000815250601501905060405180910390209150815490508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156101f4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001807f4f6e6c79207468652041726152656769737472792063616e207570677261646581526020017f20746869732070726f78792e000000000000000000000000000000000000000081525060400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561023057600080fd5b60405180807f696f2e6172612e70726f78792e696d706c656d656e746174696f6e0000000000815250601b01905060405180910390209250838355505050505600a165627a7a7230582005642ac97894b238b61c8ffa819c5dc691441cccd53318629232345ba3846b4a0029000000000000000000000000f8314584346fc84e96b36113784f6b562e5b01af000000000000000000000000b8ca408aff631b65021850cd7ebf8eac7f3c0312
Deployed Bytecode
0x608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063d784d426146100a7575b60008060405180807f696f2e6172612e70726f78792e696d706c656d656e746174696f6e0000000000815250601b019050604051809103902091508154905060405136600082376000803683855af43d806000843e81600081146100a3578184f35b8184fd5b3480156100b357600080fd5b506100e8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506100ea565b005b600080600060405180807f696f2e6172612e70726f78792e72656769737472790000000000000000000000815250601501905060405180910390209150815490508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156101f4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001807f4f6e6c79207468652041726152656769737472792063616e207570677261646581526020017f20746869732070726f78792e000000000000000000000000000000000000000081525060400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561023057600080fd5b60405180807f696f2e6172612e70726f78792e696d706c656d656e746174696f6e0000000000815250601b01905060405180910390209250838355505050505600a165627a7a7230582005642ac97894b238b61c8ffa819c5dc691441cccd53318629232345ba3846b4a0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000f8314584346fc84e96b36113784f6b562e5b01af000000000000000000000000B8ca408AfF631b65021850cD7eBf8EAC7f3c0312
-----Decoded View---------------
Arg [0] : _registryAddress (address): 0xf8314584346fc84E96b36113784f6B562E5B01af
Arg [1] : _implementationAddress (address): 0xB8ca408AfF631b65021850cD7eBf8EAC7f3c0312
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000f8314584346fc84e96b36113784f6b562e5b01af
Arg [1] : 000000000000000000000000B8ca408AfF631b65021850cD7eBf8EAC7f3c0312
Swarm Source
bzzr://05642ac97894b238b61c8ffa819c5dc691441cccd53318629232345ba3846b4a
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.