shortening logic