static double block_angle(int x, int y, int cx, int cy, MotionVector *shift)

{

    double a1, a2, diff;



    a1 = atan2(y - cy, x - cx);

    a2 = atan2(y - cy + shift->y, x - cx + shift->x);



    diff = a2 - a1;



    return (diff > M_PI)  ? diff - 2 * M_PI :

           (diff < -M_PI) ? diff + 2 * M_PI :

           diff;

}

static double block_angle(int x, int y, int cx, int cy, MotionVector *shift)

{

    double a1, a2, diff;



    a1 = atan2(y - cy, x - cx);

    a2 = atan2(y - cy + shift->y, x - cx + shift->x);



    diff = a2 - a1;



    return (diff > M_PI)  ? diff - 2 * M_PI :

           (diff < -M_PI) ? diff + 2 * M_PI :

           diff;

}

static double block_angle(int x, int y, int cx, int cy, MotionVector *shift)
static double FUNC_0(int VAR_0, int VAR_1, int VAR_2, int VAR_3, MotionVector *VAR_4)

{

    double VAR_5, VAR_6, VAR_7;



    VAR_5 = atan2(VAR_1 - VAR_3, VAR_0 - VAR_2);

    VAR_6 = atan2(VAR_1 - VAR_3 + VAR_4->VAR_1, VAR_0 - VAR_2 + VAR_4->VAR_0);



    VAR_7 = VAR_6 - VAR_5;



    return (VAR_7 > M_PI)  ? VAR_7 - 2 * M_PI :

           (VAR_7 < -M_PI) ? VAR_7 + 2 * M_PI :

           VAR_7;

}

static double FUNC_0(int VAR_0, int VAR_1, int VAR_2, int VAR_3, MotionVector *VAR_4)
{ double VAR_5, VAR_6, VAR_7; VAR_5 = atan2(VAR_1 - VAR_3, VAR_0 - VAR_2); VAR_6 = atan2(VAR_1 - VAR_3 + VAR_4->VAR_1, VAR_0 - VAR_2 + VAR_4->VAR_0); VAR_7 = VAR_6 - VAR_5; return (VAR_7 > M_PI)  ? VAR_7 - 2 * M_PI :
(VAR_7 < -M_PI) ? VAR_7 + 2 * M_PI :
VAR_7; }