ROUND_00_15
ROUND_00_15(i, a, b, c, d, e, f, g, h); \
ROUND_00_15(0, a, b, c, d, e, f, g, h);
ROUND_00_15(1, h, a, b, c, d, e, f, g);
ROUND_00_15(2, g, h, a, b, c, d, e, f);
ROUND_00_15(3, f, g, h, a, b, c, d, e);
ROUND_00_15(4, e, f, g, h, a, b, c, d);
ROUND_00_15(5, d, e, f, g, h, a, b, c);
ROUND_00_15(6, c, d, e, f, g, h, a, b);
ROUND_00_15(7, b, c, d, e, f, g, h, a);
ROUND_00_15(8, a, b, c, d, e, f, g, h);
ROUND_00_15(9, h, a, b, c, d, e, f, g);
ROUND_00_15(10, g, h, a, b, c, d, e, f);
ROUND_00_15(11, f, g, h, a, b, c, d, e);
ROUND_00_15(12, e, f, g, h, a, b, c, d);
ROUND_00_15(13, d, e, f, g, h, a, b, c);
ROUND_00_15(14, c, d, e, f, g, h, a, b);
ROUND_00_15(15, b, c, d, e, f, g, h, a);
ROUND_00_15(0, a, b, c, d, e, f, g, h);
ROUND_00_15(1, h, a, b, c, d, e, f, g);
ROUND_00_15(2, g, h, a, b, c, d, e, f);
ROUND_00_15(3, f, g, h, a, b, c, d, e);
ROUND_00_15(4, e, f, g, h, a, b, c, d);
ROUND_00_15(5, d, e, f, g, h, a, b, c);
ROUND_00_15(6, c, d, e, f, g, h, a, b);
ROUND_00_15(7, b, c, d, e, f, g, h, a);
ROUND_00_15(8, a, b, c, d, e, f, g, h);
ROUND_00_15(9, h, a, b, c, d, e, f, g);
ROUND_00_15(10, g, h, a, b, c, d, e, f);
ROUND_00_15(11, f, g, h, a, b, c, d, e);
ROUND_00_15(12, e, f, g, h, a, b, c, d);
ROUND_00_15(13, d, e, f, g, h, a, b, c);
ROUND_00_15(14, c, d, e, f, g, h, a, b);
ROUND_00_15(15, b, c, d, e, f, g, h, a);
ROUND_00_15(i + j, a, b, c, d, e, f, g, h); \
ROUND_00_15(0, a, b, c, d, e, f, g, h);
ROUND_00_15(1, h, a, b, c, d, e, f, g);
ROUND_00_15(2, g, h, a, b, c, d, e, f);
ROUND_00_15(3, f, g, h, a, b, c, d, e);
ROUND_00_15(4, e, f, g, h, a, b, c, d);
ROUND_00_15(5, d, e, f, g, h, a, b, c);
ROUND_00_15(6, c, d, e, f, g, h, a, b);
ROUND_00_15(7, b, c, d, e, f, g, h, a);
ROUND_00_15(8, a, b, c, d, e, f, g, h);
ROUND_00_15(9, h, a, b, c, d, e, f, g);
ROUND_00_15(10, g, h, a, b, c, d, e, f);
ROUND_00_15(11, f, g, h, a, b, c, d, e);
ROUND_00_15(12, e, f, g, h, a, b, c, d);
ROUND_00_15(13, d, e, f, g, h, a, b, c);
ROUND_00_15(14, c, d, e, f, g, h, a, b);
ROUND_00_15(15, b, c, d, e, f, g, h, a);
ROUND_00_15(0, a, b, c, d, e, f, g, h);
ROUND_00_15(1, h, a, b, c, d, e, f, g);
ROUND_00_15(2, g, h, a, b, c, d, e, f);
ROUND_00_15(3, f, g, h, a, b, c, d, e);
ROUND_00_15(4, e, f, g, h, a, b, c, d);
ROUND_00_15(5, d, e, f, g, h, a, b, c);
ROUND_00_15(6, c, d, e, f, g, h, a, b);
ROUND_00_15(7, b, c, d, e, f, g, h, a);
ROUND_00_15(8, a, b, c, d, e, f, g, h);
ROUND_00_15(9, h, a, b, c, d, e, f, g);
ROUND_00_15(10, g, h, a, b, c, d, e, f);
ROUND_00_15(11, f, g, h, a, b, c, d, e);
ROUND_00_15(12, e, f, g, h, a, b, c, d);
ROUND_00_15(13, d, e, f, g, h, a, b, c);
ROUND_00_15(14, c, d, e, f, g, h, a, b);
ROUND_00_15(15, b, c, d, e, f, g, h, a);