static int autohelperread_attack22(int trans, int move, int color, int action) { int b, A; UNUSED(color); UNUSED(action); b = AFFINE_TRANSFORM(685, trans, move); A = AFFINE_TRANSFORM(721, trans, move); return countlib(A) <= 3 && accuratelib(b, color, MAX_LIBERTIES, NULL) <= 3 && accuratelib(move, OTHER_COLOR(color), MAX_LIBERTIES, NULL) > 2; }
static int autohelperread_attack19(int trans, int move, int color, int action) { int a, b; UNUSED(color); UNUSED(action); a = AFFINE_TRANSFORM(722, trans, move); b = AFFINE_TRANSFORM(721, trans, move); return rgoal[a] == 3 && accuratelib(b, color, MAX_LIBERTIES, NULL) <= 1 && accuratelib(move, color, MAX_LIBERTIES, NULL) > 2; }
static int autohelperread_attack3(int trans, int move, int color, int action) { int a, b; UNUSED(color); UNUSED(action); a = AFFINE_TRANSFORM(685, trans, move); b = AFFINE_TRANSFORM(647, trans, move); return rgoal[a] == 1 && accuratelib(move, color, MAX_LIBERTIES, NULL) == 1 && accuratelib(b, color, MAX_LIBERTIES, NULL) == 2 && accuratelib(b, OTHER_COLOR(color), MAX_LIBERTIES, NULL) <= countlib(a) && countlib(a) == 2; }
static int autohelperread_attack8(int trans, int move, int color, int action) { int A; UNUSED(color); A = AFFINE_TRANSFORM(647, trans, move); if (!action) return accuratelib(move, color, MAX_LIBERTIES, NULL) > 1; { int ostar = accuratelib(move, color, MAX_LIBERTIES, NULL); if (countlib(A) == 1 && ostar >= 3) ((read_attack + 8)->value) = 78; else if (countlib(A) == 1) ((read_attack + 8)->value) = 72; else if (countlib(A) == 2 && ostar > 2) /* FIXME: i.e. backfill hack; causes explosion; see reading:35*/ ((read_attack + 8)->value) = 10; else ((read_attack + 8)->value) = 0;}; return 0; }
static int autohelperread_attack1(int trans, int move, int color, int action) { int a; UNUSED(color); a = AFFINE_TRANSFORM(647, trans, move); if (!action) return rgoal[a] == 1; { int ostar = accuratelib(move, color, MAX_LIBERTIES, NULL); int xstar = accuratelib(move, OTHER_COLOR(color), MAX_LIBERTIES, NULL); if (countlib(a) == 2 && ostar > 1 && xstar >=4) ((read_attack + 1)->value) = 80; else if (countlib(a) == 2 && ostar > 1 && xstar > 2) ((read_attack + 1)->value) = 72; else if (countlib(a) == 2 && ostar > 1) ((read_attack + 1)->value) = 70; else if ((countlib(a) == 1 || xstar > countlib(a)+4)) ((read_attack + 1)->value) = 97; else if (xstar > countlib(a)+3 && ostar > 1) ((read_attack + 1)->value) = 96; else if (xstar > countlib(a)+2 && ostar > 1) ((read_attack + 1)->value) = 95; else if (xstar > countlib(a)+1 && ostar > 2) ((read_attack + 1)->value) = 64; else if (xstar > countlib(a)+1 && ostar > 1) ((read_attack + 1)->value) = 63; else if (xstar > countlib(a)+1 && ostar > 1) ((read_attack + 1)->value) = 62; else if (xstar > countlib(a) && ostar > 2) ((read_attack + 1)->value) = 61; else if (xstar > countlib(a) && ostar > 1) ((read_attack + 1)->value) = 60; else if (xstar == countlib(a) && ostar > 1 && (ostar == xstar || ostar >= countlib(a))) ((read_attack + 1)->value) = 60; else if (countlib(a) == 3 && ostar >= 5) ((read_attack + 1)->value) = 53; else if (countlib(a) == 3 && ostar >= 4) ((read_attack + 1)->value) = 52; else if (countlib(a) == 3 && ostar >= 3) ((read_attack + 1)->value) = 51; else if (xstar >= countlib(a) && ostar > 1) ((read_attack + 1)->value) = 15; else ((read_attack + 1)->value) = 2;}; return 0; }
static int autohelperread_attack2(int trans, int move, int color, int action) { int a; UNUSED(color); UNUSED(action); a = AFFINE_TRANSFORM(647, trans, move); return rgoal[a] == 1 && accuratelib(move, color, MAX_LIBERTIES, NULL) == 1; }
static int autohelperread_attack9(int trans, int move, int color, int action) { int a; UNUSED(color); UNUSED(action); a = AFFINE_TRANSFORM(610, trans, move); return accuratelib(a, color, MAX_LIBERTIES, NULL) == 1; }
static int autohelperdefpat0(int trans, int move, int color, int action) { UNUSED(trans); UNUSED(color); UNUSED(action); UNUSED(move); return accuratelib(move, color, MAX_LIBERTIES, NULL)>1; }
static int autohelperread_attack18(int trans, int move, int color, int action) { int a; UNUSED(color); UNUSED(action); a = AFFINE_TRANSFORM(721, trans, move); return countlib(a) == 2 && accuratelib(move, color, MAX_LIBERTIES, NULL) > 1; }
static int autohelperread_attack10(int trans, int move, int color, int action) { int a, B; UNUSED(color); UNUSED(action); a = AFFINE_TRANSFORM(646, trans, move); B = AFFINE_TRANSFORM(647, trans, move); return rgoal[a] == 1 && countlib(B) == 2 && accuratelib(move, color, MAX_LIBERTIES, NULL) >= 2 && accuratelib(move, OTHER_COLOR(color), MAX_LIBERTIES, NULL) >= 2&& ((goallib == 3 && stackp <= backfill2_depth) || (goallib == 2 && stackp <= backfill_depth)); }
static int autohelperread_attack17(int trans, int move, int color, int action) { int a, b; UNUSED(color); UNUSED(action); a = AFFINE_TRANSFORM(720, trans, move); b = AFFINE_TRANSFORM(757, trans, move); return countlib(b) < goallib && countlib(a) == countlib(b) && accuratelib(move, color, MAX_LIBERTIES, NULL) >= countlib(b); }
static int autohelperread_attack21(int trans, int move, int color, int action) { int a, b; UNUSED(color); UNUSED(action); a = AFFINE_TRANSFORM(648, trans, move); b = AFFINE_TRANSFORM(685, trans, move); return goallib < countlib(a) && countlib(a) <=3 && accuratelib(move, color, MAX_LIBERTIES, NULL) >= 2 && accuratelib(b, OTHER_COLOR(color), MAX_LIBERTIES, NULL) <= 4; }
static int autohelperdefpat31(int trans, int move, int color, int action) { int a, b, C; UNUSED(color); UNUSED(action); a = AFFINE_TRANSFORM(610, trans, move); b = AFFINE_TRANSFORM(648, trans, move); C = AFFINE_TRANSFORM(647, trans, move); return countlib(a)>1 && countlib(b)>1 && countlib(C)<=2 && accuratelib(move, color, MAX_LIBERTIES, NULL)>1; }
static int autohelperread_attack14(int trans, int move, int color, int action) { int a, c, B; UNUSED(color); UNUSED(action); a = AFFINE_TRANSFORM(609, trans, move); c = AFFINE_TRANSFORM(646, trans, move); B = AFFINE_TRANSFORM(683, trans, move); return rgoal[a] == 1 && countlib(a) >= accuratelib(c, color, MAX_LIBERTIES, NULL) && accuratelib(move, color, MAX_LIBERTIES, NULL) > countlib(B); }
static int autohelperread_attack20(int trans, int move, int color, int action) { int a; UNUSED(color); a = AFFINE_TRANSFORM(721, trans, move); if (!action) return (countlib(a) <= 3 && accuratelib(move, color, MAX_LIBERTIES, NULL) >= 2); if (countlib(a) == 2) ((read_attack + 20)->value) = 49; else if (countlib(a) == 1 && countstones(a) > 1) ((read_attack + 20)->value) = 79; else if (countlib(a) == 1) ((read_attack + 20)->value) = 48; else if (stackp <= backfill_depth && stackp <= superstring_depth /* || !atari_possible*/) ((read_attack + 20)->value) = 12; else ((read_attack + 20)->value) = 0;; return 0; }
static int autohelperread_attack4(int trans, int move, int color, int action) { int a, b; UNUSED(color); a = AFFINE_TRANSFORM(647, trans, move); b = AFFINE_TRANSFORM(685, trans, move); if (!action) return rgoal[a] == 1 && accuratelib(b, OTHER_COLOR(color), MAX_LIBERTIES, NULL)==1; if (goallib == 2) ((read_attack + 4)->value) = 71; else ((read_attack + 4)->value) = 55;; return 0; }
static int autohelperread_attack24(int trans, int move, int color, int action) { int a, b; UNUSED(color); a = AFFINE_TRANSFORM(646, trans, move); b = AFFINE_TRANSFORM(683, trans, move); if (!action) return rgoal[a] == 1; if (accuratelib(b, color, MAX_LIBERTIES, NULL) <= 1) ((read_attack + 24)->value) = 49; else ((read_attack + 24)->value) = 0;; return 0; }
static int autohelperread_attack12(int trans, int move, int color, int action) { int a, B; UNUSED(color); UNUSED(action); a = AFFINE_TRANSFORM(683, trans, move); B = AFFINE_TRANSFORM(646, trans, move); return 0 && rgoal[B] == 2 && countlib(a) <= 2 && countlib(B) <= goallib && (is_ko_point(move) || accuratelib(move, color, MAX_LIBERTIES, NULL) > 1); }