/***********************************************-*-C-*-**********/
/* Overlay mode: Graphic Art Difference */

BLEND_ALGEBRA_INIT

COLORSPACE_RGB
PARALLEL_SAFE
REQUIRE_TRACKS(2)

BLEND_ALGEBRA_PROC

#define s 1
#define d 0

R_OUT = R(s) * (1-A(d)) + R(d) * (1-A(s)) + ABS (R(s) * A(d) - R(d) * A(s));
G_OUT = G(s) * (1-A(d)) + G(d) * (1-A(s)) + ABS (G(s) * A(d) - G(d) * A(s));
B_OUT = B(s) * (1-A(d)) + B(d) * (1-A(s)) + ABS (B(s) * A(d) - B(d) * A(s));
A_OUT = A(s) + A(d) - A(s) * A(d);
  
BLEND_ALGEBRA_END
