make modal display correctly
clean code
separate view deeper