contract Reclaimable is CustomAdmin {
  using SafeERC20 for ERC20;

  ///@notice Transfers all Ether held by the contract to the owner.
  function reclaimEther() external onlyAdmin {
    msg.sender.transfer(address(this).balance);
  }

  ///@notice Transfers all ERC20 tokens held by the contract to the owner.
  ///@param _token The amount of token to reclaim.
  function reclaimToken(address _token) external onlyAdmin {
    ERC20 erc20 = ERC20(_token);
    uint256 balance = erc20.balanceOf(this);
    erc20.safeTransfer(msg.sender, balance);
  }
}
///@title Reclaimable Contract
///@author Binod Nirvan
///@notice Reclaimable contract enables the administrators 
///to reclaim accidentally sent Ethers and ERC20 token(s)
///to this contract.
function reclaimEther() external onlyAdmin {
  msg.sender.transfer(address(this).balance);
}

///@notice Transfers all Ether held by the contract to the owner.