finished up level 2 functionality