ETH Price: $1,588.98 (+0.16%)
Gas: 21 Gwei
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Sponsored

Transaction Hash
Method
Block
From
To
Value
0x6080604089297042019-11-14 1:32:321411 days 17 hrs ago1573695152IN
 Create: StakeData
0 ETH0.002435792

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
StakeData

Compiler Version
v0.5.12+commit.7709ece9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2019-11-14
*/

// File: contracts/external/SafeMath.sol

pragma solidity 0.5.12;


/**
 * @title Math provides arithmetic functions for uint type pairs.
 * You can safely `plus`, `minus`, `times`, and `divide` uint numbers without fear of integer overflow.
 * You can also find the `min` and `max` of two numbers.
 */
library SafeMath {

  function min(uint x, uint y) internal pure returns (uint) { return x <= y ? x : y; }
  function max(uint x, uint y) internal pure returns (uint) { return x >= y ? x : y; }


  /** @dev adds two numbers, reverts on overflow */
  function plus(uint x, uint y) internal pure returns (uint z) { require((z = x + y) >= x, "bad addition"); }

  /** @dev subtracts two numbers, reverts on overflow (i.e. if subtrahend is greater than minuend) */
  function minus(uint x, uint y) internal pure returns (uint z) { require((z = x - y) <= x, "bad subtraction"); }


  /** @dev multiplies two numbers, reverts on overflow */
  function times(uint x, uint y) internal pure returns (uint z) { require(y == 0 || (z = x * y) / y == x, "bad multiplication"); }

  /** @dev divides two numbers and returns the remainder (unsigned integer modulo), reverts when dividing by zero */
  function mod(uint x, uint y) internal pure returns (uint z) {
    require(y != 0, "bad modulo; using 0 as divisor");
    z = x % y;
  }

  /** @dev Integer division of two numbers truncating the quotient, reverts on division by zero */
  function div(uint a, uint b) internal pure returns (uint c) {
    // assert(b > 0); // Solidity automatically throws when dividing by 0
    c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
  }

}

// File: contracts/gluon/GluonView.sol

pragma solidity 0.5.12;


interface GluonView {
  function app(uint32 id) external view returns (address current, address proposal, uint activationBlock);
  function current(uint32 id) external view returns (address);
  function history(uint32 id) external view returns (address[] memory);
  function getBalance(uint32 id, address asset) external view returns (uint);
  function isAnyLogic(uint32 id, address logic) external view returns (bool);
  function isAppOwner(uint32 id, address appOwner) external view returns (bool);
  function proposals(address logic) external view returns (bool);
  function totalAppsCount() external view returns(uint32);
}

// File: contracts/gluon/GluonCentric.sol

pragma solidity 0.5.12;



contract GluonCentric {
  uint32 internal constant REGISTRY_INDEX = 0;
  uint32 internal constant STAKE_INDEX = 1;

  uint32 public id;
  address public gluon;

  constructor(uint32 id_, address gluon_) public {
    id = id_;
    gluon = gluon_;
  }

  modifier onlyCurrentLogic { require(currentLogic() == msg.sender, "invalid sender; must be current logic contract"); _; }
  modifier onlyGluon { require(gluon == msg.sender, "invalid sender; must be gluon contract"); _; }
  modifier onlyOwner { require(GluonView(gluon).isAppOwner(id, msg.sender), "invalid sender; must be app owner"); _; }

  function currentLogic() public view returns (address) { return GluonView(gluon).current(id); }
}

// File: contracts/apps/stake/StakeData.sol

pragma solidity 0.5.12;




contract StakeData is GluonCentric {
  using SafeMath for uint;

  mapping(address => address[]) public accountToProposals;
  mapping(address => bool[]) public accountToSides;
  mapping(address => mapping(bool => uint)) public voteTally; // proposal => side(true/false) => totalVotes
  mapping(address => address) public accountLocation; // account => logic
  mapping(address => uint) public balance;

  constructor(address gluon) GluonCentric(STAKE_INDEX, gluon) public { }

  function updateAccountLocation(address account, address logic) external onlyCurrentLogic { accountLocation[account] = logic; }

  function updateBalance(address account, uint quantity) external onlyCurrentLogic { balance[account] = quantity; }

  function voteAppUpgrade(address proposal, address account, bool side, uint quantity) external onlyCurrentLogic returns (uint, uint) {
    uint index = getVoteIndex(account, proposal);
    bool firstVote = index == accountToProposals[account].length;
    require(firstVote || accountToSides[account][index] != side, "cannot vote same side again");
    if (firstVote) {
      accountToProposals[account].push(proposal);
      accountToSides[account].push(side);
    } else {
      voteTally[proposal][!side] = voteTally[proposal][!side].minus(quantity);
      accountToSides[account][index] = side;
    }
    voteTally[proposal][side] = voteTally[proposal][side].plus(quantity);
    return getVoteTally(proposal);
  }

  function deleteVoteTally(address proposal) external onlyCurrentLogic {
    voteTally[proposal][true] = voteTally[proposal][false] = 0;
  }

  function getVoteIndex(address account, address proposal) public view returns (uint) {
    address[] memory proposals = accountToProposals[account];
    for (uint i = 0; i < proposals.length; i++) {
      if (proposals[i] == proposal) return i;
    }
    return proposals.length;
  }

  function getAllProposals(address account) external view returns (address[] memory proposals, bool[] memory sides) {
    proposals = accountToProposals[account];
    sides = accountToSides[account];
  }

  function removeResolvedProposals(address account) external onlyCurrentLogic {
    if (accountToProposals[account].length == 0) return;
    address[] storage allProposed = accountToProposals[account];
    bool[] storage sides = accountToSides[account];
    for (uint i = allProposed.length; i > 0; i--) {
      if (!GluonView(gluon).proposals(allProposed[i - 1])) {
        allProposed[i - 1] = allProposed[allProposed.length - 1];
        allProposed.pop();
        sides[i - 1] = sides[sides.length - 1];
        sides.pop();
      }
    }
  }

  function updateVotes(address proposal, bool side, uint quantity, bool increased) external onlyCurrentLogic returns (uint approvals, uint disapprovals) {
    uint tally = voteTally[proposal][side];
    voteTally[proposal][side] = increased ? tally.plus(quantity) : tally.minus(quantity);
    return getVoteTally(proposal);
  }

  function getVoteTally(address proposal) public view returns (uint approvals, uint disapprovals) {
    approvals = voteTally[proposal][true];
    disapprovals = voteTally[proposal][false];
  }

}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"gluon","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"accountLocation","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"accountToProposals","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"accountToSides","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"currentLogic","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"proposal","type":"address"}],"name":"deleteVoteTally","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getAllProposals","outputs":[{"internalType":"address[]","name":"proposals","type":"address[]"},{"internalType":"bool[]","name":"sides","type":"bool[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"address","name":"proposal","type":"address"}],"name":"getVoteIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"proposal","type":"address"}],"name":"getVoteTally","outputs":[{"internalType":"uint256","name":"approvals","type":"uint256"},{"internalType":"uint256","name":"disapprovals","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"gluon","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"id","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"removeResolvedProposals","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"address","name":"logic","type":"address"}],"name":"updateAccountLocation","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"quantity","type":"uint256"}],"name":"updateBalance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"proposal","type":"address"},{"internalType":"bool","name":"side","type":"bool"},{"internalType":"uint256","name":"quantity","type":"uint256"},{"internalType":"bool","name":"increased","type":"bool"}],"name":"updateVotes","outputs":[{"internalType":"uint256","name":"approvals","type":"uint256"},{"internalType":"uint256","name":"disapprovals","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"proposal","type":"address"},{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"side","type":"bool"},{"internalType":"uint256","name":"quantity","type":"uint256"}],"name":"voteAppUpgrade","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bool","name":"","type":"bool"}],"name":"voteTally","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}]

608060405234801561001057600080fd5b506040516111233803806111238339818101604052602081101561003357600080fd5b5051600080546001600160a01b0390921664010000000002600160201b600160c01b031963ffffffff19909316600117929092169190911790556110a78061007c6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063822b662d116100a2578063af640d0f11610071578063af640d0f146103c8578063bd5053d1146103e9578063e0b1cccb14610425578063e3d670d714610451578063ea796240146104775761010b565b8063822b662d1461029557806387cb37e3146102d35780639853d922146102db578063aa3cdd2f1461039a5761010b565b806342bb316e116100de57806342bb316e146101dc5780634de7e38d1461021b5780636f945a08146102495780637a32832c1461026f5761010b565b806310344a6f1461011057806310fd341a1461015057806327869c571461019057806339cc6b7a146101b4575b600080fd5b61013c6004803603604081101561012657600080fd5b506001600160a01b0381351690602001356104a3565b604080519115158252519081900360200190f35b61017e6004803603604081101561016657600080fd5b506001600160a01b03813581169160200135166104e3565b60408051918252519081900360200190f35b6101986105a9565b604080516001600160a01b039092168252519081900360200190f35b6101da600480360360208110156101ca57600080fd5b50356001600160a01b03166105c0565b005b610202600480360360208110156101f257600080fd5b50356001600160a01b031661063d565b6040805192835260208301919091528051918290030190f35b6101da6004803603604081101561023157600080fd5b506001600160a01b038135811691602001351661066c565b6101da6004803603602081101561025f57600080fd5b50356001600160a01b03166106e8565b6101986004803603602081101561028557600080fd5b50356001600160a01b031661097d565b610202600480360360808110156102ab57600080fd5b506001600160a01b038135811691602081013590911690604081013515159060600135610998565b610198610c53565b610301600480360360208110156102f157600080fd5b50356001600160a01b0316610cdd565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b8381101561034557818101518382015260200161032d565b50505050905001838103825284818151815260200191508051906020019060200280838360005b8381101561038457818101518382015260200161036c565b5050505090500194505050505060405180910390f35b61017e600480360360408110156103b057600080fd5b506001600160a01b0381351690602001351515610dfb565b6103d0610e18565b6040805163ffffffff9092168252519081900360200190f35b610202600480360360808110156103ff57600080fd5b506001600160a01b03813516906020810135151590604081013590606001351515610e24565b6101da6004803603604081101561043b57600080fd5b506001600160a01b038135169060200135610f02565b61017e6004803603602081101561046757600080fd5b50356001600160a01b0316610f6c565b6101986004803603604081101561048d57600080fd5b506001600160a01b038135169060200135610f7e565b600260205281600052604060002081815481106104bc57fe5b9060005260206000209060209182820401919006915091509054906101000a900460ff1681565b6001600160a01b0382166000908152600160209081526040808320805482518185028101850190935280835260609383018282801561054b57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161052d575b50939450600093505050505b815181101561059e57836001600160a01b031682828151811061057657fe5b60200260200101516001600160a01b031614156105965791506105a39050565b600101610557565b505190505b92915050565b60005464010000000090046001600160a01b031681565b336105c9610c53565b6001600160a01b03161461060e5760405162461bcd60e51b815260040180806020018281038252602e815260200180611045602e913960400191505060405180910390fd5b6001600160a01b0316600090815260036020908152604080832083805290915280822082905560018252812055565b6001600160a01b0316600090815260036020908152604080832060018452909152808220548280529120549091565b33610675610c53565b6001600160a01b0316146106ba5760405162461bcd60e51b815260040180806020018281038252602e815260200180611045602e913960400191505060405180910390fd5b6001600160a01b03918216600090815260046020526040902080546001600160a01b03191691909216179055565b336106f1610c53565b6001600160a01b0316146107365760405162461bcd60e51b815260040180806020018281038252602e815260200180611045602e913960400191505060405180910390fd5b6001600160a01b0381166000908152600160205260409020546107585761097a565b6001600160a01b0381166000908152600160209081526040808320600290925290912081545b801561097657600060049054906101000a90046001600160a01b03166001600160a01b0316633341b4458460018403815481106107b757fe5b60009182526020918290200154604080516001600160e01b031960e086901b1681526001600160a01b0390921660048301525160248083019392829003018186803b15801561080557600080fd5b505afa158015610819573d6000803e3d6000fd5b505050506040513d602081101561082f57600080fd5b505161096d5782548390600019810190811061084757fe5b9060005260206000200160009054906101000a90046001600160a01b031683600183038154811061087457fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550828054806108ac57fe5b600082815260209020810160001990810180546001600160a01b03191690559081019091558254839181019081106108e057fe5b90600052602060002090602091828204019190069054906101000a900460ff1682600183038154811061090f57fe5b90600052602060002090602091828204019190066101000a81548160ff0219169083151502179055508180548061094257fe5b60019003818190600052602060002090602091828204019190066101000a81549060ff021916905590555b6000190161077e565b5050505b50565b6004602052600090815260409020546001600160a01b031681565b600080336109a4610c53565b6001600160a01b0316146109e95760405162461bcd60e51b815260040180806020018281038252602e815260200180611045602e913960400191505060405180910390fd5b60006109f586886104e3565b6001600160a01b03871660009081526001602052604090205490915081148080610a6857506001600160a01b03871660009081526002602052604090208054871515919084908110610a4357fe5b90600052602060002090602091828204019190069054906101000a900460ff16151514155b610ab9576040805162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420766f74652073616d65207369646520616761696e0000000000604482015290519081900360640190fd5b8015610b3d576001600160a01b038781166000818152600160208181526040808420805480850182559085528285200180546001600160a01b031916968f16969096179095559282526002835292812080549384018155815281902090820401805460ff601f9093166101000a928302191688151592909202919091179055610bdf565b6001600160a01b038816600090815260036020908152604080832089158452909152902054610b72908663ffffffff610fb316565b6001600160a01b03808a1660009081526003602090815260408083208b158452825280832094909455918a168152600290915220805487919084908110610bb557fe5b90600052602060002090602091828204019190066101000a81548160ff0219169083151502179055505b6001600160a01b03881660009081526003602090815260408083208915158452909152902054610c15908663ffffffff610ffd16565b6001600160a01b03891660009081526003602090815260408083208a15158452909152902055610c448861063d565b93509350505094509492505050565b60008054604080516320f49ddb60e01b815263ffffffff8316600482015290516401000000009092046001600160a01b0316916320f49ddb91602480820192602092909190829003018186803b158015610cac57600080fd5b505afa158015610cc0573d6000803e3d6000fd5b505050506040513d6020811015610cd657600080fd5b5051905090565b60608060016000846001600160a01b03166001600160a01b03168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610d5957602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610d3b575b5050505050915060026000846001600160a01b03166001600160a01b03168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610def57602002820191906000526020600020906000905b825461010083900a900460ff161515815260206001928301818104948501949093039092029101808411610dbe5790505b50505050509050915091565b600360209081526000928352604080842090915290825290205481565b60005463ffffffff1681565b60008033610e30610c53565b6001600160a01b031614610e755760405162461bcd60e51b815260040180806020018281038252602e815260200180611045602e913960400191505060405180910390fd5b6001600160a01b0386166000908152600360209081526040808320881515845290915290205483610eb557610eb0818663ffffffff610fb316565b610ec5565b610ec5818663ffffffff610ffd16565b6001600160a01b03881660009081526003602090815260408083208a15158452909152902055610ef48761063d565b925092505094509492505050565b33610f0b610c53565b6001600160a01b031614610f505760405162461bcd60e51b815260040180806020018281038252602e815260200180611045602e913960400191505060405180910390fd5b6001600160a01b03909116600090815260056020526040902055565b60056020526000908152604090205481565b60016020528160005260406000208181548110610f9757fe5b6000918252602090912001546001600160a01b03169150829050565b808203828111156105a3576040805162461bcd60e51b815260206004820152600f60248201526e3130b21039bab13a3930b1ba34b7b760891b604482015290519081900360640190fd5b808201828110156105a3576040805162461bcd60e51b815260206004820152600c60248201526b3130b21030b23234ba34b7b760a11b604482015290519081900360640190fdfe696e76616c69642073656e6465723b206d7573742062652063757272656e74206c6f67696320636f6e7472616374a265627a7a72315820817e900459418be6adbd229404eeefd378f33857326c14f576141962353954be64736f6c634300050c003200000000000000000000000075ace7a086ea0fb1a79e43cc6331ad053d8c67cb

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061010b5760003560e01c8063822b662d116100a2578063af640d0f11610071578063af640d0f146103c8578063bd5053d1146103e9578063e0b1cccb14610425578063e3d670d714610451578063ea796240146104775761010b565b8063822b662d1461029557806387cb37e3146102d35780639853d922146102db578063aa3cdd2f1461039a5761010b565b806342bb316e116100de57806342bb316e146101dc5780634de7e38d1461021b5780636f945a08146102495780637a32832c1461026f5761010b565b806310344a6f1461011057806310fd341a1461015057806327869c571461019057806339cc6b7a146101b4575b600080fd5b61013c6004803603604081101561012657600080fd5b506001600160a01b0381351690602001356104a3565b604080519115158252519081900360200190f35b61017e6004803603604081101561016657600080fd5b506001600160a01b03813581169160200135166104e3565b60408051918252519081900360200190f35b6101986105a9565b604080516001600160a01b039092168252519081900360200190f35b6101da600480360360208110156101ca57600080fd5b50356001600160a01b03166105c0565b005b610202600480360360208110156101f257600080fd5b50356001600160a01b031661063d565b6040805192835260208301919091528051918290030190f35b6101da6004803603604081101561023157600080fd5b506001600160a01b038135811691602001351661066c565b6101da6004803603602081101561025f57600080fd5b50356001600160a01b03166106e8565b6101986004803603602081101561028557600080fd5b50356001600160a01b031661097d565b610202600480360360808110156102ab57600080fd5b506001600160a01b038135811691602081013590911690604081013515159060600135610998565b610198610c53565b610301600480360360208110156102f157600080fd5b50356001600160a01b0316610cdd565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b8381101561034557818101518382015260200161032d565b50505050905001838103825284818151815260200191508051906020019060200280838360005b8381101561038457818101518382015260200161036c565b5050505090500194505050505060405180910390f35b61017e600480360360408110156103b057600080fd5b506001600160a01b0381351690602001351515610dfb565b6103d0610e18565b6040805163ffffffff9092168252519081900360200190f35b610202600480360360808110156103ff57600080fd5b506001600160a01b03813516906020810135151590604081013590606001351515610e24565b6101da6004803603604081101561043b57600080fd5b506001600160a01b038135169060200135610f02565b61017e6004803603602081101561046757600080fd5b50356001600160a01b0316610f6c565b6101986004803603604081101561048d57600080fd5b506001600160a01b038135169060200135610f7e565b600260205281600052604060002081815481106104bc57fe5b9060005260206000209060209182820401919006915091509054906101000a900460ff1681565b6001600160a01b0382166000908152600160209081526040808320805482518185028101850190935280835260609383018282801561054b57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161052d575b50939450600093505050505b815181101561059e57836001600160a01b031682828151811061057657fe5b60200260200101516001600160a01b031614156105965791506105a39050565b600101610557565b505190505b92915050565b60005464010000000090046001600160a01b031681565b336105c9610c53565b6001600160a01b03161461060e5760405162461bcd60e51b815260040180806020018281038252602e815260200180611045602e913960400191505060405180910390fd5b6001600160a01b0316600090815260036020908152604080832083805290915280822082905560018252812055565b6001600160a01b0316600090815260036020908152604080832060018452909152808220548280529120549091565b33610675610c53565b6001600160a01b0316146106ba5760405162461bcd60e51b815260040180806020018281038252602e815260200180611045602e913960400191505060405180910390fd5b6001600160a01b03918216600090815260046020526040902080546001600160a01b03191691909216179055565b336106f1610c53565b6001600160a01b0316146107365760405162461bcd60e51b815260040180806020018281038252602e815260200180611045602e913960400191505060405180910390fd5b6001600160a01b0381166000908152600160205260409020546107585761097a565b6001600160a01b0381166000908152600160209081526040808320600290925290912081545b801561097657600060049054906101000a90046001600160a01b03166001600160a01b0316633341b4458460018403815481106107b757fe5b60009182526020918290200154604080516001600160e01b031960e086901b1681526001600160a01b0390921660048301525160248083019392829003018186803b15801561080557600080fd5b505afa158015610819573d6000803e3d6000fd5b505050506040513d602081101561082f57600080fd5b505161096d5782548390600019810190811061084757fe5b9060005260206000200160009054906101000a90046001600160a01b031683600183038154811061087457fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550828054806108ac57fe5b600082815260209020810160001990810180546001600160a01b03191690559081019091558254839181019081106108e057fe5b90600052602060002090602091828204019190069054906101000a900460ff1682600183038154811061090f57fe5b90600052602060002090602091828204019190066101000a81548160ff0219169083151502179055508180548061094257fe5b60019003818190600052602060002090602091828204019190066101000a81549060ff021916905590555b6000190161077e565b5050505b50565b6004602052600090815260409020546001600160a01b031681565b600080336109a4610c53565b6001600160a01b0316146109e95760405162461bcd60e51b815260040180806020018281038252602e815260200180611045602e913960400191505060405180910390fd5b60006109f586886104e3565b6001600160a01b03871660009081526001602052604090205490915081148080610a6857506001600160a01b03871660009081526002602052604090208054871515919084908110610a4357fe5b90600052602060002090602091828204019190069054906101000a900460ff16151514155b610ab9576040805162461bcd60e51b815260206004820152601b60248201527f63616e6e6f7420766f74652073616d65207369646520616761696e0000000000604482015290519081900360640190fd5b8015610b3d576001600160a01b038781166000818152600160208181526040808420805480850182559085528285200180546001600160a01b031916968f16969096179095559282526002835292812080549384018155815281902090820401805460ff601f9093166101000a928302191688151592909202919091179055610bdf565b6001600160a01b038816600090815260036020908152604080832089158452909152902054610b72908663ffffffff610fb316565b6001600160a01b03808a1660009081526003602090815260408083208b158452825280832094909455918a168152600290915220805487919084908110610bb557fe5b90600052602060002090602091828204019190066101000a81548160ff0219169083151502179055505b6001600160a01b03881660009081526003602090815260408083208915158452909152902054610c15908663ffffffff610ffd16565b6001600160a01b03891660009081526003602090815260408083208a15158452909152902055610c448861063d565b93509350505094509492505050565b60008054604080516320f49ddb60e01b815263ffffffff8316600482015290516401000000009092046001600160a01b0316916320f49ddb91602480820192602092909190829003018186803b158015610cac57600080fd5b505afa158015610cc0573d6000803e3d6000fd5b505050506040513d6020811015610cd657600080fd5b5051905090565b60608060016000846001600160a01b03166001600160a01b03168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610d5957602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610d3b575b5050505050915060026000846001600160a01b03166001600160a01b03168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610def57602002820191906000526020600020906000905b825461010083900a900460ff161515815260206001928301818104948501949093039092029101808411610dbe5790505b50505050509050915091565b600360209081526000928352604080842090915290825290205481565b60005463ffffffff1681565b60008033610e30610c53565b6001600160a01b031614610e755760405162461bcd60e51b815260040180806020018281038252602e815260200180611045602e913960400191505060405180910390fd5b6001600160a01b0386166000908152600360209081526040808320881515845290915290205483610eb557610eb0818663ffffffff610fb316565b610ec5565b610ec5818663ffffffff610ffd16565b6001600160a01b03881660009081526003602090815260408083208a15158452909152902055610ef48761063d565b925092505094509492505050565b33610f0b610c53565b6001600160a01b031614610f505760405162461bcd60e51b815260040180806020018281038252602e815260200180611045602e913960400191505060405180910390fd5b6001600160a01b03909116600090815260056020526040902055565b60056020526000908152604090205481565b60016020528160005260406000208181548110610f9757fe5b6000918252602090912001546001600160a01b03169150829050565b808203828111156105a3576040805162461bcd60e51b815260206004820152600f60248201526e3130b21039bab13a3930b1ba34b7b760891b604482015290519081900360640190fd5b808201828110156105a3576040805162461bcd60e51b815260206004820152600c60248201526b3130b21030b23234ba34b7b760a11b604482015290519081900360640190fdfe696e76616c69642073656e6465723b206d7573742062652063757272656e74206c6f67696320636f6e7472616374a265627a7a72315820817e900459418be6adbd229404eeefd378f33857326c14f576141962353954be64736f6c634300050c0032

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

00000000000000000000000075ace7a086ea0fb1a79e43cc6331ad053d8c67cb

-----Decoded View---------------
Arg [0] : gluon (address): 0x75ACe7a086eA0FB1a79e43Cc6331Ad053d8C67cB

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000075ace7a086ea0fb1a79e43cc6331ad053d8c67cb


Swarm Source

bzzr://817e900459418be6adbd229404eeefd378f33857326c14f576141962353954be

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.

Validator Index Block Amount
View All Withdrawals

Txn Hash Block Value Eth2 PubKey Valid
View All Deposits
[ 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.