Either<L, R> where(bool Function(R r) predicate, L Function() fallback) => filter(predicate, fallback);