fixed .gitignore
finished most of the function