contract EmergencyERC20Drain is Ownable {
    /**
    * @dev Allows owner to withdraw any ERC20 tokens sent by mistake to the contract.
    * Taken from Zilliqa's token contract: https://github.com/Zilliqa/Zilliqa-ERC20-Token
    */
    function drain(
        IERC20 token,
        uint amount
    )
        public
        onlyOwner
    {
        token.transfer(owner(), amount);
    }
}
function drain(
    IERC20 token,
    uint amount
)
    public
    onlyOwner
{
    token.transfer(owner(), amount);
}

/**
 * @dev Allows owner to withdraw any ERC20 tokens sent by mistake to the contract.
 * Taken from Zilliqa's token contract: https://github.com/Zilliqa/Zilliqa-ERC20-Token
 */