updated classes- still working on tap function