println " b1 b2 diff A diff B" [ [b1: 20, b2: 45 ], [b1: -45, b2: 45 ], [b1: -85, b2: 90 ], [b1: -95, b2: 90 ], [b1: -45, b2: 125 ], [b1: -45, b2: 145 ], [b1: 29.4803, b2: -88.6381 ], [b1: -78.3251, b2: -159.036 ], [b1: -70099.74233810938, b2: 29840.67437876723 ], [b1:-165313.6666297357, b2: 33693.9894517456 ], [b1: 1174.8380510598456, b2:-154146.66490124757 ], [b1: 60175.77306795546, b2: 42213.07192354373 ] ].each { bearings -> def (b1,b2) = bearings.values().collect{ it as double } printf ("%22.13f %22.13f %22.13f %22.13f\n", b1, b2, angleDifferenceA(b1, b2), angleDifferenceB(b1, b2)) }