the tap functions works