touching logic