Java8 Stream: Colete elementos após o cumprimento de uma condição

Meu POJO é o seguinte

class EventUser {
  private id;
  private userId;
  private eventId;
}

Eu recupero o objeto EventUser da seguinte maneira:

List<EventUser> eventUsers = eventUserRepository.findByUserId(userId);

Digamos que 'eventUsers' seja o seguinte:

[
{"id":"id200","userId":"001","eventId":"1010"},
{"id":"id101","userId":"001","eventId":"4212"},
{"id":"id402","userId":"001","eventId":"1221"},
{"id":"id301","userId":"001","eventId":"2423"},
{"id":"id701","userId":"001","eventId":"5423"},
{"id":"id601","userId":"001","eventId":"7423"}
]

Usando streaming e sem usar qualquer variável intermediária, como posso filtrar e coletar eventos após um determinado EventUser.id: ex:

List<EventUser> filteredByOffSet = eventUsers.stream.SOMEFILTER_AND_COLLECT("id301");

o resultado deve ser:

[{"id":"id301","userId":"001","eventId":"2423"},
{"id":"id701","userId":"001","eventId":"5423"},
{"id":"id601","userId":"001","eventId":"7423"}]

questionAnswers(4)

yourAnswerToTheQuestion