static final Conveyor<Free<IOOp, dynamic>, String> stdinReader = Source.eval<Free<IOOp, dynamic>, String?>(io.readln()).repeat().takeWhile((s) => s != null).map((s) => s!);