even bigger mess than before. project() should encompass breaking and indentation