- swap -rot ( x1 x2 y1 y2 )
- 2dup * negate ( x1 x2 y1 y2 -y1y2 )
- 4 pick 4 pick * + ( x1 x2 y1 y2 (x1x2-y1y2))
- 4 roll 2 roll * ( x2 y1 (x1x2-y1y2) x1y2 )
- 3 roll 3 roll * + ( (x1x2-y1y2) (x1y2+x2y1) )
+ swap -rot ( x1 x2 y1 y2 )
+ 2dup * negate ( x1 x2 y1 y2 -y1y2 )
+ 4 pick 4 pick * + ( x1 x2 y1 y2 (x1x2-y1y2))
+ 4 roll 2 roll * ( x2 y1 (x1x2-y1y2) x1y2 )
+ 3 roll 3 roll * + ( (x1x2-y1y2) (x1y2+x2y1) )