Logic working but need clean up