Disassociates an EIP. If the EIP was allocated for a VPC instance,
        an AllocationId(aid) must be provided instead of a PublicIp.

def disassociate(self, eip_or_aid):
        """Disassociates an EIP. If the EIP was allocated for a VPC instance,
        an AllocationId(aid) must be provided instead of a PublicIp.
        """
        if "." in eip_or_aid:               # If an IP is given (Classic)
            return "true" == self.call("DisassociateAddress",
                                       response_data_key="return",
                                       PublicIp=eip_or_aid)
        else:                               # If an AID is given (VPC)
            return "true" == self.call("DisassociateAddress",
                                       response_data_key="return",
                                       AllocationId=eip_or_aid)