pub fn preprocess(ast: AST) -> AST