add (2) fail safe to prevent infinite rotation