public boolean isSatisfiedBy(Recipient recipient) {
if (!(recipient instanceof RemotePartContainingRecipient))
return false;
if (!localPartSpecification.isSatisfiedBy(recipient.localPart()))
return false;
Mailbox mailbox =
((RemotePartContainingRecipient) recipient).getMailbox();
return remotePartSpecification.isSatisfiedBy(mailbox.getRemotePart());
}