updated touch method