clean up
begin moving logic to model