docs: @CheckForNull
    private static EmailDeliveryRequest toEmailDeliveryRequest(NotificationWithProjectKeys notification, EmailRecipient recipient, Set<String> subscribedProjectKeys) {
      Set<ChangedIssue> recipientIssuesByProject = notification.getIssues().stream()
        .filter(issue -> issue.getAssignee().filter(assignee -> recipient.getLogin().equals(assignee.getLogin())).isPresent())
        .filter(issue -> subscribedProjectKeys.contains(issue.getProject().getKey()))
        .collect(toSet(notification.getIssues().size()));
      if (recipientIssuesByProject.isEmpty()) {
        return null;
      }
      return new EmailDeliveryRequest(
        recipient.getEmail(),
        new ChangesOnMyIssuesNotification(notification.getChange(), recipientIssuesByProject));
    }