func angdiff a b . r = (b - a) mod 360 if r < -180 r += 360 elif r >= 180 r -= 360 . return r . proc pd a b . . print b & " " & a & " -> " & angdiff a b . pd 20 45 pd -45 45 pd -85 90 pd -95 90 pd -45 125 pd -45 145 pd 29.4803 -88.6381 pd -78.3251 -159.036 pd -70099.74233810938 29840.67437876723 pd -165313.6666297357 33693.9894517456 pd 1174.8380510598456 -154146.66490124757 pd 60175.77306795546 42213.07192354373