added smartindent