incremental code generation; correct indentation still to be solved