contract Power {



  function balanceOf(address _holder) constant returns (uint256);

  function totalSupply() constant returns (uint256);

  function activeSupply() constant returns (uint256);


  // ############################################
  // ########### ADMIN FUNCTIONS ################
  // ############################################

  function slashPower(address _holder, uint256 _value, bytes32 _data) public ;

  function powerUp(address _holder, uint256 _value) public ;

  // ############################################
  // ########### PUBLIC FUNCTIONS ###############
  // ############################################

  // registers a powerdown request
  function transfer(address _to, uint256 _amountPower) public returns (bool success);

  function downtime() public returns (uint256);

  function downTick(address _owner) public;

  function downs(address _owner) constant public returns (uint256, uint256, uint256);

}
function slashPower(address _holder, uint256 _value, bytes32 _data) public ;

// ############################################
// ########### ADMIN FUNCTIONS ################
// ############################################