reorganise
Remove junk
Final version
Final version