redid the front end, wip