almost done need work on refreshing