finished except for main view