let squeeze_lines program =
let rec lines_squeeze tokens rtokens =
match tokens with
| [] -> List.rev rtokens
| NEWLINE::NEWLINE::rest -> lines_squeeze (NEWLINE::rest) rtokens
| COLON::NEWLINE::rest -> lines_squeeze (COLON::rest) rtokens (* scanner handled this though *)
| token::rest -> lines_squeeze rest (token::rtokens) in
lines_squeeze program []