// // Since output gets invoked with every match, we need to filter matched events
// Since output gets invoked with every match, we need to filter matched events
// // Matched events are saved in a list and each further eventmatch B to an event A is getting appended to the second list (so with every invoke take the last elements of the lists)
// Matched events are saved in a list and each further eventmatch B to an event A is getting appended to the second list (so with every invoke take the last elements of the lists)