added touch events