added tap recognizer