BTW I'm not a huge fan of using <|,  I think the code would be more readable here with an explicit lambda and parentheses