contract CanReclaimToken is Ownable {
  using SafeERC20 for ERC20Basic;

  /**
   * @dev Reclaim all ERC20Basic compatible tokens
   * @param token ERC20Basic The address of the token contract
   */
  function reclaimToken(ERC20Basic token) external onlyOwner {
    uint256 balance = token.balanceOf(this);
    token.safeTransfer(owner, balance);
  }

}
/**
 * @title Contracts that should be able to recover tokens
 * @author SylTi
 * @dev This allow a contract to recover any ERC20 token received in a contract by transfering the balance to the contract owner.
 * This will prevent any accidental loss of tokens.
 */
function reclaimToken(ERC20Basic token) external onlyOwner {
  uint256 balance = token.balanceOf(this);
  token.safeTransfer(owner, balance);
}

/**
 * @dev Reclaim all ERC20Basic compatible tokens
 * @param token ERC20Basic The address of the token contract
 */