needs to be more responsive
functionally done
functionally done