/* Generated by Yosys 0.8+314 (git sha1 ef84b434, clang 6.0.0-1ubuntu2 -fPIC -Os) */ (* \nmigen.hierarchy = "top.black_fill_east" *) (* generator = "nMigen" *) module black_fill_east(empty, \output , pieces); wire [7:0] \$1 ; wire [64:0] \$10 ; wire [64:0] \$12 ; wire [64:0] \$13 ; wire [64:0] \$15 ; wire [66:0] \$17 ; wire [66:0] \$18 ; wire [66:0] \$20 ; wire [66:0] \$22 ; wire [66:0] \$24 ; wire [66:0] \$25 ; wire [66:0] \$27 ; wire [70:0] \$29 ; wire [63:0] \$3 ; wire [70:0] \$30 ; wire [70:0] \$32 ; wire [70:0] \$34 ; wire [64:0] \$36 ; wire [64:0] \$37 ; wire [7:0] \$39 ; wire [64:0] \$41 ; wire [64:0] \$5 ; wire [64:0] \$6 ; wire [64:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = pieces0 <<< (* src = "attacks-qbb.py:34" *) 1'h1; assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = empty0 <<< (* src = "attacks-qbb.py:35" *) 2'h2; assign \$1 = ~ (* src = "attacks-qbb.py:177" *) 8'hff; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = pieces1 <<< (* src = "attacks-qbb.py:36" *) 2'h2; assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = empty1 <<< (* src = "attacks-qbb.py:37" *) 3'h4; assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = empty2 <<< (* src = "attacks-qbb.py:38" *) 1'h1; assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:177" *) 8'hff; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = empty <<< (* src = "attacks-qbb.py:33" *) 1'h1; assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.black_fill_north" *) (* generator = "nMigen" *) module black_fill_north(empty, \output , pieces); wire [63:0] \$1 ; wire [78:0] \$10 ; wire [78:0] \$11 ; wire [78:0] \$13 ; wire [94:0] \$15 ; wire [94:0] \$16 ; wire [94:0] \$18 ; wire [94:0] \$20 ; wire [94:0] \$22 ; wire [94:0] \$23 ; wire [94:0] \$25 ; wire [126:0] \$27 ; wire [126:0] \$28 ; wire [78:0] \$3 ; wire [126:0] \$30 ; wire [126:0] \$32 ; wire [78:0] \$34 ; wire [78:0] \$35 ; wire [78:0] \$37 ; wire [78:0] \$4 ; wire [78:0] \$6 ; wire [78:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$11 = pieces0 <<< (* src = "attacks-qbb.py:34" *) 4'h8; assign \$13 = pieces0 & (* src = "attacks-qbb.py:34" *) \$11 ; assign \$16 = empty0 <<< (* src = "attacks-qbb.py:35" *) 5'h10; assign \$18 = pieces1 & (* src = "attacks-qbb.py:35" *) \$16 ; assign \$1 = pieces & (* src = "attacks-qbb.py:32" *) 64'hffffffffffffffff; assign \$20 = empty0 | (* src = "attacks-qbb.py:35" *) \$18 ; assign \$23 = pieces1 <<< (* src = "attacks-qbb.py:36" *) 5'h10; assign \$25 = pieces1 & (* src = "attacks-qbb.py:36" *) \$23 ; assign \$28 = empty1 <<< (* src = "attacks-qbb.py:37" *) 6'h20; assign \$30 = pieces2 & (* src = "attacks-qbb.py:37" *) \$28 ; assign \$32 = empty1 | (* src = "attacks-qbb.py:37" *) \$30 ; assign \$35 = empty2 <<< (* src = "attacks-qbb.py:38" *) 4'h8; assign \$37 = \$35 & (* src = "attacks-qbb.py:38" *) 64'hffffffffffffffff; assign \$4 = empty <<< (* src = "attacks-qbb.py:33" *) 4'h8; assign \$6 = pieces0 & (* src = "attacks-qbb.py:33" *) \$4 ; assign \$8 = empty | (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$1 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$3 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$10 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$15 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$22 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$27 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$34 [63:0]; end assign \$3 = \$8 ; assign \$10 = \$13 ; assign \$15 = \$20 ; assign \$22 = \$25 ; assign \$27 = \$32 ; assign \$34 = \$37 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.black_fill_northeast" *) (* generator = "nMigen" *) module black_fill_northeast(empty, \output , pieces); wire [7:0] \$1 ; wire [78:0] \$10 ; wire [78:0] \$12 ; wire [78:0] \$13 ; wire [78:0] \$15 ; wire [94:0] \$17 ; wire [94:0] \$18 ; wire [94:0] \$20 ; wire [94:0] \$22 ; wire [94:0] \$24 ; wire [94:0] \$25 ; wire [94:0] \$27 ; wire [126:0] \$29 ; wire [63:0] \$3 ; wire [126:0] \$30 ; wire [126:0] \$32 ; wire [126:0] \$34 ; wire [78:0] \$36 ; wire [78:0] \$37 ; wire [7:0] \$39 ; wire [78:0] \$41 ; wire [78:0] \$5 ; wire [78:0] \$6 ; wire [78:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = pieces0 <<< (* src = "attacks-qbb.py:34" *) 4'h9; assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = empty0 <<< (* src = "attacks-qbb.py:35" *) 5'h12; assign \$1 = ~ (* src = "attacks-qbb.py:176" *) 8'hff; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = pieces1 <<< (* src = "attacks-qbb.py:36" *) 5'h12; assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = empty1 <<< (* src = "attacks-qbb.py:37" *) 6'h24; assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = empty2 <<< (* src = "attacks-qbb.py:38" *) 4'h9; assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:176" *) 8'hff; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = empty <<< (* src = "attacks-qbb.py:33" *) 4'h9; assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.black_fill_northwest" *) (* generator = "nMigen" *) module black_fill_northwest(empty, \output , pieces); wire [63:0] \$1 ; wire [70:0] \$10 ; wire [70:0] \$12 ; wire [70:0] \$13 ; wire [70:0] \$15 ; wire [78:0] \$17 ; wire [78:0] \$18 ; wire [78:0] \$20 ; wire [78:0] \$22 ; wire [78:0] \$24 ; wire [78:0] \$25 ; wire [78:0] \$27 ; wire [94:0] \$29 ; wire [63:0] \$3 ; wire [94:0] \$30 ; wire [94:0] \$32 ; wire [94:0] \$34 ; wire [70:0] \$36 ; wire [70:0] \$37 ; wire [63:0] \$39 ; wire [70:0] \$41 ; wire [70:0] \$5 ; wire [70:0] \$6 ; wire [70:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hfffffffffffffff9); assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hfffffffffffffff2); assign \$1 = ~ (* src = "attacks-qbb.py:182" *) 64'h8080808080808080; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hfffffffffffffff2); assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hffffffffffffffe4); assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hfffffffffffffff9); assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:182" *) 64'h8080808080808080; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hfffffffffffffff9); assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.black_fill_south" *) (* generator = "nMigen" *) module black_fill_south(empty, \output , pieces); wire [63:0] \$1 ; wire [70:0] \$10 ; wire [70:0] \$11 ; wire [70:0] \$13 ; wire [78:0] \$15 ; wire [78:0] \$16 ; wire [78:0] \$18 ; wire [78:0] \$20 ; wire [78:0] \$22 ; wire [78:0] \$23 ; wire [78:0] \$25 ; wire [94:0] \$27 ; wire [94:0] \$28 ; wire [70:0] \$3 ; wire [94:0] \$30 ; wire [94:0] \$32 ; wire [70:0] \$34 ; wire [70:0] \$35 ; wire [70:0] \$37 ; wire [70:0] \$4 ; wire [70:0] \$6 ; wire [70:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$11 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hfffffffffffffff8); assign \$13 = pieces0 & (* src = "attacks-qbb.py:34" *) \$11 ; assign \$16 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hfffffffffffffff0); assign \$18 = pieces1 & (* src = "attacks-qbb.py:35" *) \$16 ; assign \$1 = pieces & (* src = "attacks-qbb.py:32" *) 64'hffffffffffffffff; assign \$20 = empty0 | (* src = "attacks-qbb.py:35" *) \$18 ; assign \$23 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hfffffffffffffff0); assign \$25 = pieces1 & (* src = "attacks-qbb.py:36" *) \$23 ; assign \$28 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hffffffffffffffe0); assign \$30 = pieces2 & (* src = "attacks-qbb.py:37" *) \$28 ; assign \$32 = empty1 | (* src = "attacks-qbb.py:37" *) \$30 ; assign \$35 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hfffffffffffffff8); assign \$37 = \$35 & (* src = "attacks-qbb.py:38" *) 64'hffffffffffffffff; assign \$4 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hfffffffffffffff8); assign \$6 = pieces0 & (* src = "attacks-qbb.py:33" *) \$4 ; assign \$8 = empty | (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$1 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$3 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$10 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$15 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$22 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$27 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$34 [63:0]; end assign \$3 = \$8 ; assign \$10 = \$13 ; assign \$15 = \$20 ; assign \$22 = \$25 ; assign \$27 = \$32 ; assign \$34 = \$37 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.black_fill_southeast" *) (* generator = "nMigen" *) module black_fill_southeast(empty, \output , pieces); wire [7:0] \$1 ; wire [70:0] \$10 ; wire [70:0] \$12 ; wire [70:0] \$13 ; wire [70:0] \$15 ; wire [78:0] \$17 ; wire [78:0] \$18 ; wire [78:0] \$20 ; wire [78:0] \$22 ; wire [78:0] \$24 ; wire [78:0] \$25 ; wire [78:0] \$27 ; wire [94:0] \$29 ; wire [63:0] \$3 ; wire [94:0] \$30 ; wire [94:0] \$32 ; wire [94:0] \$34 ; wire [70:0] \$36 ; wire [70:0] \$37 ; wire [7:0] \$39 ; wire [70:0] \$41 ; wire [70:0] \$5 ; wire [70:0] \$6 ; wire [70:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hfffffffffffffff9); assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hfffffffffffffff2); assign \$1 = ~ (* src = "attacks-qbb.py:178" *) 8'hff; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hfffffffffffffff2); assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hffffffffffffffe4); assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hfffffffffffffff9); assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:178" *) 8'hff; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hfffffffffffffff9); assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.black_fill_southwest" *) (* generator = "nMigen" *) module black_fill_southwest(empty, \output , pieces); wire [63:0] \$1 ; wire [78:0] \$10 ; wire [78:0] \$12 ; wire [78:0] \$13 ; wire [78:0] \$15 ; wire [94:0] \$17 ; wire [94:0] \$18 ; wire [94:0] \$20 ; wire [94:0] \$22 ; wire [94:0] \$24 ; wire [94:0] \$25 ; wire [94:0] \$27 ; wire [126:0] \$29 ; wire [63:0] \$3 ; wire [126:0] \$30 ; wire [126:0] \$32 ; wire [126:0] \$34 ; wire [78:0] \$36 ; wire [78:0] \$37 ; wire [63:0] \$39 ; wire [78:0] \$41 ; wire [78:0] \$5 ; wire [78:0] \$6 ; wire [78:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hfffffffffffffff7); assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hffffffffffffffee); assign \$1 = ~ (* src = "attacks-qbb.py:180" *) 64'h8080808080808080; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hffffffffffffffee); assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hffffffffffffffdc); assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hfffffffffffffff7); assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:180" *) 64'h8080808080808080; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hfffffffffffffff7); assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.black_fill_west" *) (* generator = "nMigen" *) module black_fill_west(empty, \output , pieces); wire [63:0] \$1 ; wire [63:0] \$11 ; wire [63:0] \$13 ; wire [64:0] \$15 ; wire [64:0] \$16 ; wire [64:0] \$18 ; wire [64:0] \$20 ; wire [64:0] \$22 ; wire [64:0] \$23 ; wire [64:0] \$25 ; wire [66:0] \$27 ; wire [66:0] \$28 ; wire [63:0] \$3 ; wire [66:0] \$30 ; wire [66:0] \$32 ; wire [63:0] \$34 ; wire [63:0] \$36 ; wire [63:0] \$38 ; wire [63:0] \$5 ; wire [63:0] \$7 ; wire [63:0] \$9 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$9 = empty | (* src = "attacks-qbb.py:33" *) \$7 ; assign \$11 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hffffffffffffffff); assign \$13 = pieces0 & (* src = "attacks-qbb.py:34" *) \$11 ; assign \$16 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hfffffffffffffffe); assign \$18 = pieces1 & (* src = "attacks-qbb.py:35" *) \$16 ; assign \$1 = ~ (* src = "attacks-qbb.py:181" *) 64'h8080808080808080; assign \$20 = empty0 | (* src = "attacks-qbb.py:35" *) \$18 ; assign \$23 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hfffffffffffffffe); assign \$25 = pieces1 & (* src = "attacks-qbb.py:36" *) \$23 ; assign \$28 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hfffffffffffffffc); assign \$30 = pieces2 & (* src = "attacks-qbb.py:37" *) \$28 ; assign \$32 = empty1 | (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hffffffffffffffff); assign \$36 = ~ (* src = "attacks-qbb.py:181" *) 64'h8080808080808080; assign \$38 = \$34 & (* src = "attacks-qbb.py:38" *) \$36 ; assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$5 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hffffffffffffffff); assign \$7 = pieces0 & (* src = "attacks-qbb.py:33" *) \$5 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$9 ; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$13 ; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$15 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$22 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$27 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$38 ; end assign \$15 = \$20 ; assign \$22 = \$25 ; assign \$27 = \$32 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.black_king" *) (* generator = "nMigen" *) module black_king(n, ne, e, se, s, sw, w, nw, pieces); wire [78:0] \$1 ; wire [64:0] \$11 ; wire [63:0] \$12 ; wire [63:0] \$14 ; wire [64:0] \$16 ; wire [63:0] \$18 ; wire [78:0] \$2 ; wire [63:0] \$20 ; wire [63:0] \$22 ; wire [63:0] \$24 ; wire [7:0] \$26 ; wire [63:0] \$28 ; wire [63:0] \$30 ; wire [7:0] \$32 ; wire [63:0] \$34 ; wire [63:0] \$36 ; wire [70:0] \$38 ; wire [7:0] \$39 ; wire [78:0] \$4 ; wire [63:0] \$41 ; wire [70:0] \$43 ; wire [63:0] \$5 ; wire [63:0] \$7 ; wire [78:0] \$9 ; (* src = "attacks-qbb.py:80" *) reg [63:0] \$next\e ; (* src = "attacks-qbb.py:78" *) reg [63:0] \$next\n ; (* src = "attacks-qbb.py:79" *) reg [63:0] \$next\ne ; (* src = "attacks-qbb.py:85" *) reg [63:0] \$next\nw ; (* src = "attacks-qbb.py:82" *) reg [63:0] \$next\s ; (* src = "attacks-qbb.py:81" *) reg [63:0] \$next\se ; (* src = "attacks-qbb.py:83" *) reg [63:0] \$next\sw ; (* src = "attacks-qbb.py:84" *) reg [63:0] \$next\w ; (* src = "attacks-qbb.py:80" *) output [63:0] e; (* src = "attacks-qbb.py:78" *) output [63:0] n; (* src = "attacks-qbb.py:79" *) output [63:0] ne; (* src = "attacks-qbb.py:85" *) output [63:0] nw; (* src = "attacks-qbb.py:76" *) input [63:0] pieces; (* src = "attacks-qbb.py:82" *) output [63:0] s; (* src = "attacks-qbb.py:81" *) output [63:0] se; (* src = "attacks-qbb.py:83" *) output [63:0] sw; (* src = "attacks-qbb.py:84" *) output [63:0] w; assign \$9 = \$7 <<< (* src = "attacks-qbb.py:92" *) 4'h9; assign \$12 = ~ (* src = "attacks-qbb.py:93" *) 64'h8080808080808080; assign \$14 = pieces & (* src = "attacks-qbb.py:93" *) \$12 ; assign \$16 = \$14 <<< (* src = "attacks-qbb.py:93" *) 1'h1; assign \$18 = ~ (* src = "attacks-qbb.py:94" *) 64'h8080808080808080; assign \$20 = pieces & (* src = "attacks-qbb.py:94" *) \$18 ; assign \$22 = \$20 >>> (* src = "attacks-qbb.py:94" *) 3'h7; assign \$24 = pieces >>> (* src = "attacks-qbb.py:95" *) 4'h8; assign \$26 = ~ (* src = "attacks-qbb.py:96" *) 8'hff; assign \$28 = pieces & (* src = "attacks-qbb.py:96" *) \$26 ; assign \$2 = pieces <<< (* src = "attacks-qbb.py:91" *) 4'h8; assign \$30 = \$28 >>> (* src = "attacks-qbb.py:96" *) 4'h9; assign \$32 = ~ (* src = "attacks-qbb.py:97" *) 8'hff; assign \$34 = pieces & (* src = "attacks-qbb.py:97" *) \$32 ; assign \$36 = \$34 >>> (* src = "attacks-qbb.py:97" *) 1'h1; assign \$39 = ~ (* src = "attacks-qbb.py:98" *) 8'hff; assign \$41 = pieces & (* src = "attacks-qbb.py:98" *) \$39 ; assign \$43 = \$41 <<< (* src = "attacks-qbb.py:98" *) 3'h7; assign \$5 = ~ (* src = "attacks-qbb.py:92" *) 64'h8080808080808080; assign \$7 = pieces & (* src = "attacks-qbb.py:92" *) \$5 ; always @* begin \$next\n = 64'h0000000000000000; \$next\n = \$1 [63:0]; end always @* begin \$next\ne = 64'h0000000000000000; \$next\ne = \$4 [63:0]; end always @* begin \$next\e = 64'h0000000000000000; \$next\e = \$11 [63:0]; end always @* begin \$next\se = 64'h0000000000000000; \$next\se = \$22 ; end always @* begin \$next\s = 64'h0000000000000000; \$next\s = \$24 ; end always @* begin \$next\sw = 64'h0000000000000000; \$next\sw = \$30 ; end always @* begin \$next\w = 64'h0000000000000000; \$next\w = \$36 ; end always @* begin \$next\nw = 64'h0000000000000000; \$next\nw = \$38 [63:0]; end assign \$1 = \$2 ; assign \$4 = \$9 ; assign \$11 = \$16 ; assign \$38 = \$43 ; assign nw = \$next\nw ; assign w = \$next\w ; assign sw = \$next\sw ; assign s = \$next\s ; assign se = \$next\se ; assign e = \$next\e ; assign ne = \$next\ne ; assign n = \$next\n ; endmodule (* \nmigen.hierarchy = "top.black_knights" *) (* generator = "nMigen" *) module black_knights(nne, ene, ese, sse, ssw, wsw, wnw, nnw, knights); wire [94:0] \$1 ; wire [7:0] \$11 ; wire [78:0] \$13 ; wire [15:0] \$15 ; wire [78:0] \$17 ; wire [63:0] \$19 ; wire [94:0] \$2 ; wire [7:0] \$21 ; wire [63:0] \$23 ; wire [15:0] \$25 ; wire [63:0] \$27 ; wire [63:0] \$29 ; wire [7:0] \$31 ; wire [63:0] \$33 ; wire [63:0] \$35 ; wire [63:0] \$37 ; wire [63:0] \$39 ; wire [7:0] \$4 ; wire [63:0] \$41 ; wire [55:0] \$43 ; wire [63:0] \$45 ; wire [63:0] \$47 ; wire [63:0] \$49 ; wire [70:0] \$51 ; wire [70:0] \$52 ; wire [55:0] \$54 ; wire [70:0] \$56 ; wire [63:0] \$58 ; wire [94:0] \$6 ; wire [70:0] \$60 ; wire [78:0] \$62 ; wire [78:0] \$63 ; wire [63:0] \$65 ; wire [78:0] \$67 ; wire [78:0] \$8 ; wire [78:0] \$9 ; (* src = "attacks-qbb.py:49" *) reg [63:0] \$next\ene ; (* src = "attacks-qbb.py:50" *) reg [63:0] \$next\ese ; (* src = "attacks-qbb.py:48" *) reg [63:0] \$next\nne ; (* src = "attacks-qbb.py:55" *) reg [63:0] \$next\nnw ; (* src = "attacks-qbb.py:51" *) reg [63:0] \$next\sse ; (* src = "attacks-qbb.py:52" *) reg [63:0] \$next\ssw ; (* src = "attacks-qbb.py:54" *) reg [63:0] \$next\wnw ; (* src = "attacks-qbb.py:53" *) reg [63:0] \$next\wsw ; (* src = "attacks-qbb.py:49" *) output [63:0] ene; (* src = "attacks-qbb.py:50" *) output [63:0] ese; (* src = "attacks-qbb.py:46" *) input [63:0] knights; (* src = "attacks-qbb.py:48" *) output [63:0] nne; (* src = "attacks-qbb.py:55" *) output [63:0] nnw; (* src = "attacks-qbb.py:51" *) output [63:0] sse; (* src = "attacks-qbb.py:52" *) output [63:0] ssw; (* src = "attacks-qbb.py:54" *) output [63:0] wnw; (* src = "attacks-qbb.py:53" *) output [63:0] wsw; assign \$9 = knights <<< (* src = "attacks-qbb.py:62" *) 4'ha; assign \$11 = ~ (* src = "attacks-qbb.py:62" *) 8'hff; assign \$13 = \$9 & (* src = "attacks-qbb.py:62" *) \$11 ; assign \$15 = ~ (* src = "attacks-qbb.py:62" *) 16'haaaa; assign \$17 = \$13 & (* src = "attacks-qbb.py:62" *) \$15 ; assign \$19 = knights >>> (* src = "attacks-qbb.py:63" *) 3'h6; assign \$21 = ~ (* src = "attacks-qbb.py:63" *) 8'hff; assign \$23 = \$19 & (* src = "attacks-qbb.py:63" *) \$21 ; assign \$25 = ~ (* src = "attacks-qbb.py:63" *) 16'haaaa; assign \$27 = \$23 & (* src = "attacks-qbb.py:63" *) \$25 ; assign \$2 = knights <<< (* src = "attacks-qbb.py:61" *) 5'h11; assign \$29 = knights >>> (* src = "attacks-qbb.py:64" *) 4'hf; assign \$31 = ~ (* src = "attacks-qbb.py:64" *) 8'hff; assign \$33 = \$29 & (* src = "attacks-qbb.py:64" *) \$31 ; assign \$35 = knights >>> (* src = "attacks-qbb.py:65" *) 5'h11; assign \$37 = ~ (* src = "attacks-qbb.py:65" *) 64'h8080808080808080; assign \$39 = \$35 & (* src = "attacks-qbb.py:65" *) \$37 ; assign \$41 = knights >>> (* src = "attacks-qbb.py:66" *) 4'ha; assign \$43 = ~ (* src = "attacks-qbb.py:66" *) 56'h81020408102040; assign \$45 = \$41 & (* src = "attacks-qbb.py:66" *) \$43 ; assign \$47 = ~ (* src = "attacks-qbb.py:66" *) 64'h8080808080808080; assign \$4 = ~ (* src = "attacks-qbb.py:61" *) 8'hff; assign \$49 = \$45 & (* src = "attacks-qbb.py:66" *) \$47 ; assign \$52 = knights <<< (* src = "attacks-qbb.py:67" *) 3'h6; assign \$54 = ~ (* src = "attacks-qbb.py:67" *) 56'h81020408102040; assign \$56 = \$52 & (* src = "attacks-qbb.py:67" *) \$54 ; assign \$58 = ~ (* src = "attacks-qbb.py:67" *) 64'h8080808080808080; assign \$60 = \$56 & (* src = "attacks-qbb.py:67" *) \$58 ; assign \$63 = knights <<< (* src = "attacks-qbb.py:68" *) 4'hf; assign \$65 = ~ (* src = "attacks-qbb.py:68" *) 64'h8080808080808080; assign \$67 = \$63 & (* src = "attacks-qbb.py:68" *) \$65 ; assign \$6 = \$2 & (* src = "attacks-qbb.py:61" *) \$4 ; always @* begin \$next\nne = 64'h0000000000000000; \$next\nne = \$1 [63:0]; end always @* begin \$next\ene = 64'h0000000000000000; \$next\ene = \$8 [63:0]; end always @* begin \$next\ese = 64'h0000000000000000; \$next\ese = \$27 ; end always @* begin \$next\sse = 64'h0000000000000000; \$next\sse = \$33 ; end always @* begin \$next\ssw = 64'h0000000000000000; \$next\ssw = \$39 ; end always @* begin \$next\wsw = 64'h0000000000000000; \$next\wsw = \$49 ; end always @* begin \$next\wnw = 64'h0000000000000000; \$next\wnw = \$51 [63:0]; end always @* begin \$next\nnw = 64'h0000000000000000; \$next\nnw = \$62 [63:0]; end assign \$1 = \$6 ; assign \$8 = \$17 ; assign \$51 = \$60 ; assign \$62 = \$67 ; assign nnw = \$next\nnw ; assign wnw = \$next\wnw ; assign wsw = \$next\wsw ; assign ssw = \$next\ssw ; assign sse = \$next\sse ; assign ese = \$next\ese ; assign ene = \$next\ene ; assign nne = \$next\nne ; endmodule (* \nmigen.hierarchy = "top.black_pawns" *) (* generator = "nMigen" *) module black_pawns(se, sw, pawns); (* src = "attacks-qbb.py:108" *) reg [63:0] \$next\ne ; (* src = "attacks-qbb.py:111" *) reg [63:0] \$next\nw ; (* src = "attacks-qbb.py:109" *) reg [63:0] \$next\se ; (* src = "attacks-qbb.py:76" *) reg [63:0] \$next\step_pieces ; (* src = "attacks-qbb.py:110" *) reg [63:0] \$next\sw ; (* src = "attacks-qbb.py:108" *) wire [63:0] ne; (* src = "attacks-qbb.py:111" *) wire [63:0] nw; (* src = "attacks-qbb.py:106" *) input [63:0] pawns; (* src = "attacks-qbb.py:109" *) output [63:0] se; (* src = "attacks-qbb.py:79" *) wire [63:0] step_ne; (* src = "attacks-qbb.py:85" *) wire [63:0] step_nw; (* src = "attacks-qbb.py:76" *) wire [63:0] step_pieces; (* src = "attacks-qbb.py:81" *) wire [63:0] step_se; (* src = "attacks-qbb.py:83" *) wire [63:0] step_sw; (* src = "attacks-qbb.py:110" *) output [63:0] sw; \step$1 step ( .ne(step_ne), .nw(step_nw), .pieces(step_pieces), .se(step_se), .sw(step_sw) ); always @* begin \$next\step_pieces = 64'h0000000000000000; \$next\step_pieces = pawns; end always @* begin \$next\ne = 64'h0000000000000000; \$next\ne = step_ne; end always @* begin \$next\se = 64'h0000000000000000; \$next\se = step_se; end always @* begin \$next\sw = 64'h0000000000000000; \$next\sw = step_sw; end always @* begin \$next\nw = 64'h0000000000000000; \$next\nw = step_nw; end assign nw = \$next\nw ; assign sw = \$next\sw ; assign se = \$next\se ; assign ne = \$next\ne ; assign step_pieces = \$next\step_pieces ; endmodule (* \nmigen.hierarchy = "top.white_king_pawn_attacks.step" *) (* generator = "nMigen" *) module step(ne, se, sw, nw, pieces); wire [78:0] \$1 ; wire [64:0] \$11 ; wire [63:0] \$12 ; wire [63:0] \$14 ; wire [64:0] \$16 ; wire [63:0] \$18 ; wire [78:0] \$2 ; wire [63:0] \$20 ; wire [63:0] \$22 ; wire [63:0] \$24 ; wire [7:0] \$26 ; wire [63:0] \$28 ; wire [63:0] \$30 ; wire [7:0] \$32 ; wire [63:0] \$34 ; wire [63:0] \$36 ; wire [70:0] \$38 ; wire [7:0] \$39 ; wire [78:0] \$4 ; wire [63:0] \$41 ; wire [70:0] \$43 ; wire [63:0] \$5 ; wire [63:0] \$7 ; wire [78:0] \$9 ; (* src = "attacks-qbb.py:80" *) reg [63:0] \$next\e ; (* src = "attacks-qbb.py:78" *) reg [63:0] \$next\n ; (* src = "attacks-qbb.py:79" *) reg [63:0] \$next\ne ; (* src = "attacks-qbb.py:85" *) reg [63:0] \$next\nw ; (* src = "attacks-qbb.py:82" *) reg [63:0] \$next\s ; (* src = "attacks-qbb.py:81" *) reg [63:0] \$next\se ; (* src = "attacks-qbb.py:83" *) reg [63:0] \$next\sw ; (* src = "attacks-qbb.py:84" *) reg [63:0] \$next\w ; (* src = "attacks-qbb.py:80" *) wire [63:0] e; (* src = "attacks-qbb.py:78" *) wire [63:0] n; (* src = "attacks-qbb.py:79" *) output [63:0] ne; (* src = "attacks-qbb.py:85" *) output [63:0] nw; (* src = "attacks-qbb.py:76" *) input [63:0] pieces; (* src = "attacks-qbb.py:82" *) wire [63:0] s; (* src = "attacks-qbb.py:81" *) output [63:0] se; (* src = "attacks-qbb.py:83" *) output [63:0] sw; (* src = "attacks-qbb.py:84" *) wire [63:0] w; assign \$9 = \$7 <<< (* src = "attacks-qbb.py:92" *) 4'h9; assign \$12 = ~ (* src = "attacks-qbb.py:93" *) 64'h8080808080808080; assign \$14 = pieces & (* src = "attacks-qbb.py:93" *) \$12 ; assign \$16 = \$14 <<< (* src = "attacks-qbb.py:93" *) 1'h1; assign \$18 = ~ (* src = "attacks-qbb.py:94" *) 64'h8080808080808080; assign \$20 = pieces & (* src = "attacks-qbb.py:94" *) \$18 ; assign \$22 = \$20 >>> (* src = "attacks-qbb.py:94" *) 3'h7; assign \$24 = pieces >>> (* src = "attacks-qbb.py:95" *) 4'h8; assign \$26 = ~ (* src = "attacks-qbb.py:96" *) 8'hff; assign \$28 = pieces & (* src = "attacks-qbb.py:96" *) \$26 ; assign \$2 = pieces <<< (* src = "attacks-qbb.py:91" *) 4'h8; assign \$30 = \$28 >>> (* src = "attacks-qbb.py:96" *) 4'h9; assign \$32 = ~ (* src = "attacks-qbb.py:97" *) 8'hff; assign \$34 = pieces & (* src = "attacks-qbb.py:97" *) \$32 ; assign \$36 = \$34 >>> (* src = "attacks-qbb.py:97" *) 1'h1; assign \$39 = ~ (* src = "attacks-qbb.py:98" *) 8'hff; assign \$41 = pieces & (* src = "attacks-qbb.py:98" *) \$39 ; assign \$43 = \$41 <<< (* src = "attacks-qbb.py:98" *) 3'h7; assign \$5 = ~ (* src = "attacks-qbb.py:92" *) 64'h8080808080808080; assign \$7 = pieces & (* src = "attacks-qbb.py:92" *) \$5 ; always @* begin \$next\n = 64'h0000000000000000; \$next\n = \$1 [63:0]; end always @* begin \$next\ne = 64'h0000000000000000; \$next\ne = \$4 [63:0]; end always @* begin \$next\e = 64'h0000000000000000; \$next\e = \$11 [63:0]; end always @* begin \$next\se = 64'h0000000000000000; \$next\se = \$22 ; end always @* begin \$next\s = 64'h0000000000000000; \$next\s = \$24 ; end always @* begin \$next\sw = 64'h0000000000000000; \$next\sw = \$30 ; end always @* begin \$next\w = 64'h0000000000000000; \$next\w = \$36 ; end always @* begin \$next\nw = 64'h0000000000000000; \$next\nw = \$38 [63:0]; end assign \$1 = \$2 ; assign \$4 = \$9 ; assign \$11 = \$16 ; assign \$38 = \$43 ; assign nw = \$next\nw ; assign w = \$next\w ; assign sw = \$next\sw ; assign s = \$next\s ; assign se = \$next\se ; assign e = \$next\e ; assign ne = \$next\ne ; assign n = \$next\n ; endmodule (* \nmigen.hierarchy = "top.black_pawns.step" *) (* generator = "nMigen" *) module \step$1 (ne, se, sw, nw, pieces); wire [78:0] \$1 ; wire [64:0] \$11 ; wire [63:0] \$12 ; wire [63:0] \$14 ; wire [64:0] \$16 ; wire [63:0] \$18 ; wire [78:0] \$2 ; wire [63:0] \$20 ; wire [63:0] \$22 ; wire [63:0] \$24 ; wire [7:0] \$26 ; wire [63:0] \$28 ; wire [63:0] \$30 ; wire [7:0] \$32 ; wire [63:0] \$34 ; wire [63:0] \$36 ; wire [70:0] \$38 ; wire [7:0] \$39 ; wire [78:0] \$4 ; wire [63:0] \$41 ; wire [70:0] \$43 ; wire [63:0] \$5 ; wire [63:0] \$7 ; wire [78:0] \$9 ; (* src = "attacks-qbb.py:80" *) reg [63:0] \$next\e ; (* src = "attacks-qbb.py:78" *) reg [63:0] \$next\n ; (* src = "attacks-qbb.py:79" *) reg [63:0] \$next\ne ; (* src = "attacks-qbb.py:85" *) reg [63:0] \$next\nw ; (* src = "attacks-qbb.py:82" *) reg [63:0] \$next\s ; (* src = "attacks-qbb.py:81" *) reg [63:0] \$next\se ; (* src = "attacks-qbb.py:83" *) reg [63:0] \$next\sw ; (* src = "attacks-qbb.py:84" *) reg [63:0] \$next\w ; (* src = "attacks-qbb.py:80" *) wire [63:0] e; (* src = "attacks-qbb.py:78" *) wire [63:0] n; (* src = "attacks-qbb.py:79" *) output [63:0] ne; (* src = "attacks-qbb.py:85" *) output [63:0] nw; (* src = "attacks-qbb.py:76" *) input [63:0] pieces; (* src = "attacks-qbb.py:82" *) wire [63:0] s; (* src = "attacks-qbb.py:81" *) output [63:0] se; (* src = "attacks-qbb.py:83" *) output [63:0] sw; (* src = "attacks-qbb.py:84" *) wire [63:0] w; assign \$9 = \$7 <<< (* src = "attacks-qbb.py:92" *) 4'h9; assign \$12 = ~ (* src = "attacks-qbb.py:93" *) 64'h8080808080808080; assign \$14 = pieces & (* src = "attacks-qbb.py:93" *) \$12 ; assign \$16 = \$14 <<< (* src = "attacks-qbb.py:93" *) 1'h1; assign \$18 = ~ (* src = "attacks-qbb.py:94" *) 64'h8080808080808080; assign \$20 = pieces & (* src = "attacks-qbb.py:94" *) \$18 ; assign \$22 = \$20 >>> (* src = "attacks-qbb.py:94" *) 3'h7; assign \$24 = pieces >>> (* src = "attacks-qbb.py:95" *) 4'h8; assign \$26 = ~ (* src = "attacks-qbb.py:96" *) 8'hff; assign \$28 = pieces & (* src = "attacks-qbb.py:96" *) \$26 ; assign \$2 = pieces <<< (* src = "attacks-qbb.py:91" *) 4'h8; assign \$30 = \$28 >>> (* src = "attacks-qbb.py:96" *) 4'h9; assign \$32 = ~ (* src = "attacks-qbb.py:97" *) 8'hff; assign \$34 = pieces & (* src = "attacks-qbb.py:97" *) \$32 ; assign \$36 = \$34 >>> (* src = "attacks-qbb.py:97" *) 1'h1; assign \$39 = ~ (* src = "attacks-qbb.py:98" *) 8'hff; assign \$41 = pieces & (* src = "attacks-qbb.py:98" *) \$39 ; assign \$43 = \$41 <<< (* src = "attacks-qbb.py:98" *) 3'h7; assign \$5 = ~ (* src = "attacks-qbb.py:92" *) 64'h8080808080808080; assign \$7 = pieces & (* src = "attacks-qbb.py:92" *) \$5 ; always @* begin \$next\n = 64'h0000000000000000; \$next\n = \$1 [63:0]; end always @* begin \$next\ne = 64'h0000000000000000; \$next\ne = \$4 [63:0]; end always @* begin \$next\e = 64'h0000000000000000; \$next\e = \$11 [63:0]; end always @* begin \$next\se = 64'h0000000000000000; \$next\se = \$22 ; end always @* begin \$next\s = 64'h0000000000000000; \$next\s = \$24 ; end always @* begin \$next\sw = 64'h0000000000000000; \$next\sw = \$30 ; end always @* begin \$next\w = 64'h0000000000000000; \$next\w = \$36 ; end always @* begin \$next\nw = 64'h0000000000000000; \$next\nw = \$38 [63:0]; end assign \$1 = \$2 ; assign \$4 = \$9 ; assign \$11 = \$16 ; assign \$38 = \$43 ; assign nw = \$next\nw ; assign w = \$next\w ; assign sw = \$next\sw ; assign s = \$next\s ; assign se = \$next\se ; assign e = \$next\e ; assign ne = \$next\ne ; assign n = \$next\n ; endmodule (* \nmigen.hierarchy = "top" *) (* top = 1 *) (* generator = "nMigen" *) module top(nbk, rqk, enemy, pieces, empty, \pieces$1 , \empty$2 , \pieces$3 , n, ne, e, s, sw, w, pbq); wire [63:0] \$10 ; wire [63:0] \$100 ; wire [63:0] \$102 ; wire [63:0] \$104 ; wire [63:0] \$106 ; wire [63:0] \$108 ; wire [63:0] \$110 ; wire [63:0] \$112 ; wire [63:0] \$114 ; wire [63:0] \$116 ; wire [63:0] \$118 ; wire [63:0] \$12 ; wire [63:0] \$120 ; wire [63:0] \$122 ; wire [63:0] \$125 ; wire [63:0] \$127 ; wire [63:0] \$129 ; wire [63:0] \$131 ; wire [63:0] \$133 ; wire [63:0] \$135 ; wire [63:0] \$137 ; wire [63:0] \$139 ; wire [63:0] \$14 ; wire [63:0] \$141 ; wire [63:0] \$143 ; wire [63:0] \$145 ; wire [63:0] \$147 ; wire [63:0] \$149 ; wire [63:0] \$151 ; wire [63:0] \$153 ; wire [63:0] \$155 ; wire [63:0] \$157 ; wire [63:0] \$159 ; wire [63:0] \$16 ; wire [63:0] \$161 ; wire [63:0] \$163 ; wire [63:0] \$165 ; wire [63:0] \$167 ; wire [63:0] \$169 ; wire [63:0] \$171 ; wire [63:0] \$173 ; wire [63:0] \$175 ; wire [63:0] \$177 ; wire [63:0] \$179 ; wire [63:0] \$18 ; wire [63:0] \$181 ; wire [63:0] \$183 ; wire [63:0] \$185 ; wire [63:0] \$187 ; wire [63:0] \$189 ; wire [63:0] \$191 ; wire [63:0] \$193 ; wire [63:0] \$195 ; wire [63:0] \$197 ; wire [63:0] \$199 ; wire [63:0] \$20 ; wire [63:0] \$201 ; wire [63:0] \$203 ; wire [63:0] \$205 ; wire [63:0] \$207 ; wire [63:0] \$209 ; wire [63:0] \$211 ; wire [63:0] \$213 ; wire [63:0] \$215 ; wire [63:0] \$217 ; wire [63:0] \$219 ; wire [63:0] \$22 ; wire [63:0] \$221 ; wire [63:0] \$223 ; wire [63:0] \$225 ; wire [63:0] \$227 ; wire [63:0] \$229 ; wire [63:0] \$231 ; wire [63:0] \$233 ; wire [63:0] \$235 ; wire [63:0] \$237 ; wire [63:0] \$239 ; wire [63:0] \$24 ; wire [63:0] \$241 ; wire [63:0] \$243 ; wire [63:0] \$245 ; wire [63:0] \$247 ; wire [63:0] \$249 ; wire [63:0] \$251 ; wire [63:0] \$253 ; wire [63:0] \$255 ; wire [63:0] \$257 ; wire [63:0] \$259 ; wire [63:0] \$26 ; wire [63:0] \$261 ; wire [63:0] \$263 ; wire [63:0] \$265 ; wire [63:0] \$267 ; wire [63:0] \$269 ; wire [63:0] \$271 ; wire [63:0] \$273 ; wire [63:0] \$275 ; wire [63:0] \$277 ; wire [63:0] \$279 ; wire [63:0] \$28 ; wire [63:0] \$281 ; wire [64:0] \$283 ; wire [63:0] \$284 ; wire [64:0] \$286 ; wire [64:0] \$288 ; wire [65:0] \$290 ; wire [64:0] \$291 ; wire [64:0] \$293 ; wire [65:0] \$295 ; wire [65:0] \$297 ; wire [64:0] \$299 ; wire [63:0] \$30 ; wire [63:0] \$300 ; wire [64:0] \$302 ; wire [64:0] \$304 ; wire [63:0] \$305 ; wire [63:0] \$307 ; wire [64:0] \$309 ; wire [63:0] \$311 ; wire [63:0] \$313 ; wire [63:0] \$314 ; wire [63:0] \$317 ; wire [63:0] \$319 ; wire [63:0] \$32 ; wire [63:0] \$321 ; wire [63:0] \$323 ; wire [63:0] \$325 ; wire [63:0] \$326 ; wire [63:0] \$329 ; wire [63:0] \$331 ; wire [63:0] \$333 ; wire [63:0] \$335 ; wire [63:0] \$337 ; wire [63:0] \$338 ; wire [63:0] \$34 ; wire [63:0] \$341 ; wire [63:0] \$343 ; wire [63:0] \$345 ; wire [63:0] \$347 ; wire [63:0] \$349 ; wire [63:0] \$351 ; wire [63:0] \$353 ; wire [63:0] \$354 ; wire [63:0] \$357 ; wire [63:0] \$36 ; wire [63:0] \$38 ; wire [63:0] \$4 ; wire [63:0] \$40 ; wire [63:0] \$42 ; wire [63:0] \$44 ; wire [63:0] \$46 ; wire [63:0] \$48 ; wire [63:0] \$50 ; wire [63:0] \$52 ; wire [63:0] \$54 ; wire [63:0] \$56 ; wire [63:0] \$58 ; wire [63:0] \$6 ; wire [63:0] \$60 ; wire [63:0] \$62 ; wire [63:0] \$64 ; wire [63:0] \$66 ; wire [63:0] \$68 ; wire [63:0] \$70 ; wire [63:0] \$72 ; wire [63:0] \$74 ; wire [63:0] \$76 ; wire [63:0] \$78 ; wire [63:0] \$8 ; wire [63:0] \$80 ; wire [63:0] \$82 ; wire [63:0] \$84 ; wire [63:0] \$86 ; wire [63:0] \$88 ; wire [63:0] \$90 ; wire [63:0] \$92 ; wire [63:0] \$94 ; wire [63:0] \$96 ; wire [63:0] \$98 ; (* src = "attacks-qbb.py:332" *) reg [63:0] \$next\all_in_between ; (* src = "attacks-qbb.py:329" *) reg [63:0] \$next\antidiagonal_in_between ; (* src = "attacks-qbb.py:439" *) reg [63:0] \$next\antidiagonal_sliders ; (* src = "attacks-qbb.py:326" *) reg [63:0] \$next\attacked_by_black ; (* src = "attacks-qbb.py:245" *) reg [63:0] \$next\bbishops ; (* src = "attacks-qbb.py:248" *) reg [63:0] \$next\bking ; (* src = "attacks-qbb.py:244" *) reg [63:0] \$next\bknights ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\black_fill_east_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\black_fill_east_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\black_fill_north_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\black_fill_north_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\black_fill_northeast_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\black_fill_northeast_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\black_fill_northwest_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\black_fill_northwest_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\black_fill_south_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\black_fill_south_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\black_fill_southeast_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\black_fill_southeast_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\black_fill_southwest_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\black_fill_southwest_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\black_fill_west_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\black_fill_west_pieces ; (* src = "attacks-qbb.py:76" *) reg [63:0] \$next\black_king_pieces ; (* src = "attacks-qbb.py:46" *) reg [63:0] \$next\black_knights_knights ; (* src = "attacks-qbb.py:106" *) reg [63:0] \$next\black_pawns_pawns ; (* src = "attacks-qbb.py:413" *) reg [63:0] \$next\blockers ; (* src = "attacks-qbb.py:243" *) reg [63:0] \$next\bpawns ; (* src = "attacks-qbb.py:247" *) reg [63:0] \$next\bqueens ; (* src = "attacks-qbb.py:246" *) reg [63:0] \$next\brooks ; (* src = "attacks-qbb.py:417" *) reg [63:0] \$next\check_dest ; (* src = "attacks-qbb.py:414" *) reg [63:0] \$next\checking_pieces ; (* src = "attacks-qbb.py:335" *) reg [63:0] \$next\diag_king_attacks ; (* src = "attacks-qbb.py:328" *) reg [63:0] \$next\diagonal_in_between ; (* src = "attacks-qbb.py:438" *) reg [63:0] \$next\diagonal_sliders ; (* src = "attacks-qbb.py:141" *) reg [63:0] \$next\e ; (* src = "attacks-qbb.py:252" *) reg [63:0] \$next\empty$124 ; (* src = "attacks-qbb.py:250" *) reg [63:0] \$next\friendly ; (* src = "attacks-qbb.py:330" *) reg [63:0] \$next\horizontal_in_between ; (* src = "attacks-qbb.py:436" *) reg [63:0] \$next\horizontal_sliders ; (* src = "attacks-qbb.py:337" *) reg [63:0] \$next\knight_king_attacks ; (* src = "attacks-qbb.py:139" *) reg [63:0] \$next\n ; (* src = "attacks-qbb.py:140" *) reg [63:0] \$next\ne ; (* src = "attacks-qbb.py:251" *) reg [63:0] \$next\occ ; (* src = "attacks-qbb.py:334" *) reg [63:0] \$next\ortho_king_attacks ; (* src = "attacks-qbb.py:336" *) reg [63:0] \$next\pawn_king_attacks ; (* src = "attacks-qbb.py:143" *) reg [63:0] \$next\s ; (* src = "attacks-qbb.py:144" *) reg [63:0] \$next\sw ; (* src = "attacks-qbb.py:418" *) reg [63:0] \$next\target_mask ; (* src = "attacks-qbb.py:331" *) reg [63:0] \$next\vertical_in_between ; (* src = "attacks-qbb.py:437" *) reg [63:0] \$next\vertical_sliders ; (* src = "attacks-qbb.py:145" *) reg [63:0] \$next\w ; (* src = "attacks-qbb.py:238" *) reg [63:0] \$next\wbishops ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_fill_east_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_fill_east_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_fill_north_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_fill_north_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_fill_northeast_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_fill_northeast_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_fill_south_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_fill_south_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_fill_southwest_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_fill_southwest_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_fill_west_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_fill_west_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_king_fill_east_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_king_fill_east_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_king_fill_north_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_king_fill_north_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_king_fill_northeast_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_king_fill_northeast_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_king_fill_northwest_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_king_fill_northwest_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_king_fill_south_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_king_fill_south_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_king_fill_southeast_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_king_fill_southeast_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_king_fill_southwest_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_king_fill_southwest_pieces ; (* src = "attacks-qbb.py:14" *) reg [63:0] \$next\white_king_fill_west_empty ; (* src = "attacks-qbb.py:15" *) reg [63:0] \$next\white_king_fill_west_pieces ; (* src = "attacks-qbb.py:46" *) reg [63:0] \$next\white_king_knight_attacks_knights ; (* src = "attacks-qbb.py:106" *) reg [63:0] \$next\white_king_pawn_attacks_pawns ; (* src = "attacks-qbb.py:46" *) reg [63:0] \$next\white_knights_knights ; (* src = "attacks-qbb.py:241" *) reg [63:0] \$next\wking ; (* src = "attacks-qbb.py:237" *) reg [63:0] \$next\wknights ; (* src = "attacks-qbb.py:236" *) reg [63:0] \$next\wpawns ; (* src = "attacks-qbb.py:240" *) reg [63:0] \$next\wqueens ; (* src = "attacks-qbb.py:239" *) reg [63:0] \$next\wrooks ; (* src = "attacks-qbb.py:415" *) reg [63:0] \$next\zero_if_check ; (* src = "attacks-qbb.py:416" *) reg [63:0] \$next\zero_if_double_check ; (* src = "attacks-qbb.py:332" *) wire [63:0] all_in_between; (* src = "attacks-qbb.py:329" *) wire [63:0] antidiagonal_in_between; (* src = "attacks-qbb.py:439" *) wire [63:0] antidiagonal_sliders; (* src = "attacks-qbb.py:326" *) wire [63:0] attacked_by_black; (* src = "attacks-qbb.py:245" *) wire [63:0] bbishops; (* src = "attacks-qbb.py:248" *) wire [63:0] bking; (* src = "attacks-qbb.py:244" *) wire [63:0] bknights; (* src = "attacks-qbb.py:14" *) wire [63:0] black_fill_east_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] black_fill_east_output; (* src = "attacks-qbb.py:15" *) wire [63:0] black_fill_east_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] black_fill_north_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] black_fill_north_output; (* src = "attacks-qbb.py:15" *) wire [63:0] black_fill_north_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] black_fill_northeast_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] black_fill_northeast_output; (* src = "attacks-qbb.py:15" *) wire [63:0] black_fill_northeast_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] black_fill_northwest_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] black_fill_northwest_output; (* src = "attacks-qbb.py:15" *) wire [63:0] black_fill_northwest_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] black_fill_south_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] black_fill_south_output; (* src = "attacks-qbb.py:15" *) wire [63:0] black_fill_south_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] black_fill_southeast_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] black_fill_southeast_output; (* src = "attacks-qbb.py:15" *) wire [63:0] black_fill_southeast_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] black_fill_southwest_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] black_fill_southwest_output; (* src = "attacks-qbb.py:15" *) wire [63:0] black_fill_southwest_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] black_fill_west_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] black_fill_west_output; (* src = "attacks-qbb.py:15" *) wire [63:0] black_fill_west_pieces; (* src = "attacks-qbb.py:80" *) wire [63:0] black_king_e; (* src = "attacks-qbb.py:78" *) wire [63:0] black_king_n; (* src = "attacks-qbb.py:79" *) wire [63:0] black_king_ne; (* src = "attacks-qbb.py:85" *) wire [63:0] black_king_nw; (* src = "attacks-qbb.py:76" *) wire [63:0] black_king_pieces; (* src = "attacks-qbb.py:82" *) wire [63:0] black_king_s; (* src = "attacks-qbb.py:81" *) wire [63:0] black_king_se; (* src = "attacks-qbb.py:83" *) wire [63:0] black_king_sw; (* src = "attacks-qbb.py:84" *) wire [63:0] black_king_w; (* src = "attacks-qbb.py:49" *) wire [63:0] black_knights_ene; (* src = "attacks-qbb.py:50" *) wire [63:0] black_knights_ese; (* src = "attacks-qbb.py:46" *) wire [63:0] black_knights_knights; (* src = "attacks-qbb.py:48" *) wire [63:0] black_knights_nne; (* src = "attacks-qbb.py:55" *) wire [63:0] black_knights_nnw; (* src = "attacks-qbb.py:51" *) wire [63:0] black_knights_sse; (* src = "attacks-qbb.py:52" *) wire [63:0] black_knights_ssw; (* src = "attacks-qbb.py:54" *) wire [63:0] black_knights_wnw; (* src = "attacks-qbb.py:53" *) wire [63:0] black_knights_wsw; (* src = "attacks-qbb.py:106" *) wire [63:0] black_pawns_pawns; (* src = "attacks-qbb.py:109" *) wire [63:0] black_pawns_se; (* src = "attacks-qbb.py:110" *) wire [63:0] black_pawns_sw; (* src = "attacks-qbb.py:413" *) wire [63:0] blockers; (* src = "attacks-qbb.py:243" *) wire [63:0] bpawns; (* src = "attacks-qbb.py:247" *) wire [63:0] bqueens; (* src = "attacks-qbb.py:246" *) wire [63:0] brooks; (* src = "attacks-qbb.py:417" *) wire [63:0] check_dest; (* src = "attacks-qbb.py:414" *) wire [63:0] checking_pieces; (* src = "attacks-qbb.py:335" *) wire [63:0] diag_king_attacks; (* src = "attacks-qbb.py:328" *) wire [63:0] diagonal_in_between; (* src = "attacks-qbb.py:438" *) wire [63:0] diagonal_sliders; (* src = "attacks-qbb.py:141" *) output [63:0] e; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:252" *) wire [63:0] \empty$124 ; (* src = "attacks-qbb.py:14" *) input [63:0] \empty$2 ; (* src = "attacks-qbb.py:136" *) input [63:0] enemy; (* src = "attacks-qbb.py:250" *) wire [63:0] friendly; (* src = "attacks-qbb.py:330" *) wire [63:0] horizontal_in_between; (* src = "attacks-qbb.py:436" *) wire [63:0] horizontal_sliders; (* src = "attacks-qbb.py:337" *) wire [63:0] knight_king_attacks; (* src = "attacks-qbb.py:139" *) output [63:0] n; (* src = "attacks-qbb.py:134" *) input [63:0] nbk; (* src = "attacks-qbb.py:140" *) output [63:0] ne; (* src = "attacks-qbb.py:251" *) wire [63:0] occ; (* src = "attacks-qbb.py:334" *) wire [63:0] ortho_king_attacks; (* src = "attacks-qbb.py:336" *) wire [63:0] pawn_king_attacks; (* src = "attacks-qbb.py:133" *) input [63:0] pbq; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:15" *) input [63:0] \pieces$1 ; (* src = "attacks-qbb.py:76" *) input [63:0] \pieces$3 ; (* src = "attacks-qbb.py:135" *) input [63:0] rqk; (* src = "attacks-qbb.py:143" *) output [63:0] s; (* src = "attacks-qbb.py:144" *) output [63:0] sw; (* src = "attacks-qbb.py:418" *) wire [63:0] target_mask; (* src = "attacks-qbb.py:331" *) wire [63:0] vertical_in_between; (* src = "attacks-qbb.py:437" *) wire [63:0] vertical_sliders; (* src = "attacks-qbb.py:145" *) output [63:0] w; (* src = "attacks-qbb.py:238" *) wire [63:0] wbishops; (* src = "attacks-qbb.py:14" *) wire [63:0] white_fill_east_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_fill_east_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_fill_east_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_fill_north_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_fill_north_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_fill_north_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_fill_northeast_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_fill_northeast_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_fill_northeast_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_fill_south_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_fill_south_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_fill_south_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_fill_southwest_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_fill_southwest_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_fill_southwest_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_fill_west_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_fill_west_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_fill_west_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_king_fill_east_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_king_fill_east_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_king_fill_east_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_king_fill_north_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_king_fill_north_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_king_fill_north_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_king_fill_northeast_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_king_fill_northeast_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_king_fill_northeast_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_king_fill_northwest_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_king_fill_northwest_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_king_fill_northwest_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_king_fill_south_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_king_fill_south_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_king_fill_south_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_king_fill_southeast_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_king_fill_southeast_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_king_fill_southeast_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_king_fill_southwest_empty; (* src = "attacks-qbb.py:15" *) wire [63:0] white_king_fill_southwest_pieces; (* src = "attacks-qbb.py:14" *) wire [63:0] white_king_fill_west_empty; (* src = "attacks-qbb.py:16" *) wire [63:0] white_king_fill_west_output; (* src = "attacks-qbb.py:15" *) wire [63:0] white_king_fill_west_pieces; (* src = "attacks-qbb.py:49" *) wire [63:0] white_king_knight_attacks_ene; (* src = "attacks-qbb.py:50" *) wire [63:0] white_king_knight_attacks_ese; (* src = "attacks-qbb.py:46" *) wire [63:0] white_king_knight_attacks_knights; (* src = "attacks-qbb.py:48" *) wire [63:0] white_king_knight_attacks_nne; (* src = "attacks-qbb.py:55" *) wire [63:0] white_king_knight_attacks_nnw; (* src = "attacks-qbb.py:51" *) wire [63:0] white_king_knight_attacks_sse; (* src = "attacks-qbb.py:52" *) wire [63:0] white_king_knight_attacks_ssw; (* src = "attacks-qbb.py:54" *) wire [63:0] white_king_knight_attacks_wnw; (* src = "attacks-qbb.py:53" *) wire [63:0] white_king_knight_attacks_wsw; (* src = "attacks-qbb.py:108" *) wire [63:0] white_king_pawn_attacks_ne; (* src = "attacks-qbb.py:111" *) wire [63:0] white_king_pawn_attacks_nw; (* src = "attacks-qbb.py:106" *) wire [63:0] white_king_pawn_attacks_pawns; (* src = "attacks-qbb.py:46" *) wire [63:0] white_knights_knights; (* src = "attacks-qbb.py:241" *) wire [63:0] wking; (* src = "attacks-qbb.py:237" *) wire [63:0] wknights; (* src = "attacks-qbb.py:236" *) wire [63:0] wpawns; (* src = "attacks-qbb.py:240" *) wire [63:0] wqueens; (* src = "attacks-qbb.py:239" *) wire [63:0] wrooks; (* src = "attacks-qbb.py:415" *) wire [63:0] zero_if_check; (* src = "attacks-qbb.py:416" *) wire [63:0] zero_if_double_check; assign \$100 = pbq & (* src = "attacks-qbb.py:266" *) rqk; assign \$102 = ~ (* src = "attacks-qbb.py:266" *) enemy; assign \$104 = \$100 & (* src = "attacks-qbb.py:266" *) \$102 ; assign \$106 = nbk & (* src = "attacks-qbb.py:267" *) rqk; assign \$108 = ~ (* src = "attacks-qbb.py:267" *) enemy; assign \$10 = \$6 & (* src = "attacks-qbb.py:255" *) \$8 ; assign \$110 = \$106 & (* src = "attacks-qbb.py:267" *) \$108 ; assign \$112 = pbq & (* src = "attacks-qbb.py:269" *) nbk; assign \$114 = \$112 & (* src = "attacks-qbb.py:269" *) rqk; assign \$116 = ~ (* src = "attacks-qbb.py:269" *) enemy; assign \$118 = \$114 & (* src = "attacks-qbb.py:269" *) \$116 ; assign \$120 = pbq | (* src = "attacks-qbb.py:270" *) nbk; assign \$122 = \$120 | (* src = "attacks-qbb.py:270" *) rqk; assign \$125 = ~ (* src = "attacks-qbb.py:271" *) pbq; assign \$127 = ~ (* src = "attacks-qbb.py:271" *) nbk; assign \$12 = ~ (* src = "attacks-qbb.py:255" *) enemy; assign \$129 = \$125 & (* src = "attacks-qbb.py:271" *) \$127 ; assign \$131 = ~ (* src = "attacks-qbb.py:271" *) rqk; assign \$133 = \$129 & (* src = "attacks-qbb.py:271" *) \$131 ; assign \$135 = bqueens | (* src = "attacks-qbb.py:278" *) brooks; assign \$137 = bqueens | (* src = "attacks-qbb.py:279" *) bbishops; assign \$139 = bqueens | (* src = "attacks-qbb.py:280" *) brooks; assign \$141 = bqueens | (* src = "attacks-qbb.py:281" *) bbishops; assign \$143 = bqueens | (* src = "attacks-qbb.py:282" *) brooks; assign \$145 = bqueens | (* src = "attacks-qbb.py:283" *) bbishops; assign \$147 = bqueens | (* src = "attacks-qbb.py:284" *) brooks; assign \$14 = \$10 & (* src = "attacks-qbb.py:255" *) \$12 ; assign \$149 = bqueens | (* src = "attacks-qbb.py:285" *) bbishops; assign \$151 = occ ^ (* src = "attacks-qbb.py:287" *) wking; assign \$153 = occ ^ (* src = "attacks-qbb.py:288" *) wking; assign \$155 = occ ^ (* src = "attacks-qbb.py:289" *) wking; assign \$157 = occ ^ (* src = "attacks-qbb.py:290" *) wking; assign \$159 = occ ^ (* src = "attacks-qbb.py:291" *) wking; assign \$161 = occ ^ (* src = "attacks-qbb.py:292" *) wking; assign \$163 = occ ^ (* src = "attacks-qbb.py:293" *) wking; assign \$165 = occ ^ (* src = "attacks-qbb.py:294" *) wking; assign \$167 = black_fill_northwest_output | (* src = "attacks-qbb.py:365" *) black_fill_north_output; assign \$16 = ~ (* src = "attacks-qbb.py:256" *) pbq; assign \$169 = \$167 | (* src = "attacks-qbb.py:365" *) black_fill_northeast_output; assign \$171 = \$169 | (* src = "attacks-qbb.py:365" *) black_fill_east_output; assign \$173 = \$171 | (* src = "attacks-qbb.py:365" *) black_fill_southeast_output; assign \$175 = \$173 | (* src = "attacks-qbb.py:365" *) black_fill_south_output; assign \$177 = \$175 | (* src = "attacks-qbb.py:365" *) black_fill_southwest_output; assign \$179 = \$177 | (* src = "attacks-qbb.py:365" *) black_fill_west_output; assign \$181 = \$179 | (* src = "attacks-qbb.py:365" *) black_pawns_se; assign \$183 = \$181 | (* src = "attacks-qbb.py:365" *) black_pawns_sw; assign \$185 = \$183 | (* src = "attacks-qbb.py:365" *) black_knights_nne; assign \$187 = \$185 | (* src = "attacks-qbb.py:365" *) black_knights_ene; assign \$18 = \$16 & (* src = "attacks-qbb.py:256" *) nbk; assign \$189 = \$187 | (* src = "attacks-qbb.py:365" *) black_knights_ese; assign \$191 = \$189 | (* src = "attacks-qbb.py:365" *) black_knights_sse; assign \$193 = \$191 | (* src = "attacks-qbb.py:365" *) black_knights_ssw; assign \$195 = \$193 | (* src = "attacks-qbb.py:365" *) black_knights_wsw; assign \$197 = \$195 | (* src = "attacks-qbb.py:365" *) black_knights_wnw; assign \$199 = \$197 | (* src = "attacks-qbb.py:365" *) black_knights_nnw; assign \$201 = \$199 | (* src = "attacks-qbb.py:365" *) black_king_n; assign \$203 = \$201 | (* src = "attacks-qbb.py:365" *) black_king_ne; assign \$205 = \$203 | (* src = "attacks-qbb.py:365" *) black_king_e; assign \$207 = \$205 | (* src = "attacks-qbb.py:365" *) black_king_se; assign \$20 = ~ (* src = "attacks-qbb.py:256" *) rqk; assign \$209 = \$207 | (* src = "attacks-qbb.py:365" *) black_king_s; assign \$211 = \$209 | (* src = "attacks-qbb.py:365" *) black_king_sw; assign \$213 = \$211 | (* src = "attacks-qbb.py:365" *) black_king_w; assign \$215 = \$213 | (* src = "attacks-qbb.py:366" *) black_king_nw; assign \$217 = black_fill_north_output & (* src = "attacks-qbb.py:370" *) white_king_fill_south_output; assign \$219 = black_fill_south_output & (* src = "attacks-qbb.py:371" *) white_king_fill_north_output; assign \$221 = \$217 | (* src = "attacks-qbb.py:371" *) \$219 ; assign \$223 = black_fill_west_output & (* src = "attacks-qbb.py:374" *) white_king_fill_east_output; assign \$225 = black_fill_east_output & (* src = "attacks-qbb.py:375" *) white_king_fill_west_output; assign \$227 = \$223 | (* src = "attacks-qbb.py:375" *) \$225 ; assign \$22 = \$18 & (* src = "attacks-qbb.py:256" *) \$20 ; assign \$229 = black_fill_southwest_output & (* src = "attacks-qbb.py:378" *) white_king_fill_northeast_output; assign \$231 = black_fill_northeast_output & (* src = "attacks-qbb.py:379" *) white_king_fill_northeast_output; assign \$233 = \$229 | (* src = "attacks-qbb.py:379" *) \$231 ; assign \$235 = black_fill_northwest_output & (* src = "attacks-qbb.py:382" *) white_king_fill_southeast_output; assign \$237 = black_fill_southeast_output & (* src = "attacks-qbb.py:383" *) white_king_fill_northwest_output; assign \$239 = \$235 | (* src = "attacks-qbb.py:383" *) \$237 ; assign \$241 = horizontal_in_between | (* src = "attacks-qbb.py:387" *) vertical_in_between; assign \$243 = diagonal_in_between | (* src = "attacks-qbb.py:390" *) antidiagonal_in_between; assign \$245 = white_king_pawn_attacks_ne | (* src = "attacks-qbb.py:395" *) white_king_pawn_attacks_nw; assign \$247 = white_king_knight_attacks_nne | (* src = "attacks-qbb.py:404" *) white_king_knight_attacks_ene; assign \$24 = ~ (* src = "attacks-qbb.py:256" *) enemy; assign \$249 = \$247 | (* src = "attacks-qbb.py:404" *) white_king_knight_attacks_ese; assign \$251 = \$249 | (* src = "attacks-qbb.py:404" *) white_king_knight_attacks_sse; assign \$253 = \$251 | (* src = "attacks-qbb.py:404" *) white_king_knight_attacks_ssw; assign \$255 = \$253 | (* src = "attacks-qbb.py:404" *) white_king_knight_attacks_wsw; assign \$257 = \$255 | (* src = "attacks-qbb.py:404" *) white_king_knight_attacks_wnw; assign \$259 = \$257 | (* src = "attacks-qbb.py:405" *) white_king_knight_attacks_nnw; assign \$261 = ortho_king_attacks | (* src = "attacks-qbb.py:409" *) diag_king_attacks; assign \$263 = all_in_between & (* src = "attacks-qbb.py:421" *) \empty$124 ; assign \$265 = brooks | (* src = "attacks-qbb.py:425" *) bqueens; assign \$267 = ortho_king_attacks & (* src = "attacks-qbb.py:425" *) \$265 ; assign \$26 = \$22 & (* src = "attacks-qbb.py:256" *) \$24 ; assign \$269 = bbishops | (* src = "attacks-qbb.py:425" *) bqueens; assign \$271 = diag_king_attacks & (* src = "attacks-qbb.py:425" *) \$269 ; assign \$273 = \$267 | (* src = "attacks-qbb.py:425" *) \$271 ; assign \$275 = knight_king_attacks & (* src = "attacks-qbb.py:425" *) bknights; assign \$277 = \$273 | (* src = "attacks-qbb.py:425" *) \$275 ; assign \$279 = pawn_king_attacks & (* src = "attacks-qbb.py:426" *) bpawns; assign \$281 = \$277 | (* src = "attacks-qbb.py:426" *) \$279 ; assign \$284 = attacked_by_black & (* src = "attacks-qbb.py:428" *) wking; assign \$286 = \$284 - (* src = "attacks-qbb.py:428" *) 1'h1; assign \$288 = \$286 >>> (* src = "attacks-qbb.py:428" *) 6'h3f; assign \$28 = pbq & (* src = "attacks-qbb.py:257" *) nbk; assign \$291 = checking_pieces - (* src = "attacks-qbb.py:430" *) 1'h1; assign \$293 = checking_pieces & (* src = "attacks-qbb.py:430" *) \$291 ; assign \$295 = \$293 - (* src = "attacks-qbb.py:430" *) 1'h1; assign \$297 = \$295 >>> (* src = "attacks-qbb.py:430" *) 6'h3f; assign \$300 = checking_pieces | (* src = "attacks-qbb.py:432" *) blockers; assign \$302 = $signed(\$300 ) | (* src = "attacks-qbb.py:432" *) $signed(zero_if_check); assign \$305 = ~ (* src = "attacks-qbb.py:433" *) friendly; assign \$307 = \$305 & (* src = "attacks-qbb.py:433" *) check_dest; assign \$30 = ~ (* src = "attacks-qbb.py:257" *) enemy; assign \$309 = $signed(\$307 ) & (* src = "attacks-qbb.py:433" *) $signed(zero_if_double_check); assign \$311 = wrooks | (* src = "attacks-qbb.py:443" *) wqueens; assign \$314 = all_in_between ^ (* src = "attacks-qbb.py:444" *) horizontal_in_between; assign \$313 = ~ (* src = "attacks-qbb.py:444" *) \$314 ; assign \$317 = \$311 & (* src = "attacks-qbb.py:444" *) \$313 ; assign \$319 = white_fill_east_output & (* src = "attacks-qbb.py:449" *) target_mask; assign \$321 = white_fill_west_output & (* src = "attacks-qbb.py:453" *) target_mask; assign \$323 = wrooks | (* src = "attacks-qbb.py:456" *) wqueens; assign \$326 = all_in_between ^ (* src = "attacks-qbb.py:457" *) vertical_in_between; assign \$325 = ~ (* src = "attacks-qbb.py:457" *) \$326 ; assign \$32 = \$28 & (* src = "attacks-qbb.py:257" *) \$30 ; assign \$329 = \$323 & (* src = "attacks-qbb.py:457" *) \$325 ; assign \$331 = white_fill_north_output & (* src = "attacks-qbb.py:462" *) target_mask; assign \$333 = white_fill_south_output & (* src = "attacks-qbb.py:466" *) target_mask; assign \$335 = wbishops | (* src = "attacks-qbb.py:469" *) wqueens; assign \$338 = all_in_between ^ (* src = "attacks-qbb.py:470" *) diagonal_in_between; assign \$337 = ~ (* src = "attacks-qbb.py:470" *) \$338 ; assign \$341 = \$335 & (* src = "attacks-qbb.py:470" *) \$337 ; assign \$343 = white_fill_northeast_output & (* src = "attacks-qbb.py:475" *) target_mask; assign \$345 = white_fill_northeast_output & (* src = "attacks-qbb.py:488" *) target_mask; assign \$347 = white_fill_southwest_output & (* src = "attacks-qbb.py:479" *) target_mask; assign \$34 = ~ (* src = "attacks-qbb.py:258" *) pbq; assign \$349 = white_fill_southwest_output & (* src = "attacks-qbb.py:492" *) target_mask; assign \$351 = wbishops | (* src = "attacks-qbb.py:482" *) wqueens; assign \$354 = all_in_between ^ (* src = "attacks-qbb.py:483" *) antidiagonal_in_between; assign \$353 = ~ (* src = "attacks-qbb.py:483" *) \$354 ; assign \$357 = \$351 & (* src = "attacks-qbb.py:483" *) \$353 ; assign \$36 = ~ (* src = "attacks-qbb.py:258" *) nbk; assign \$38 = \$34 & (* src = "attacks-qbb.py:258" *) \$36 ; assign \$40 = \$38 & (* src = "attacks-qbb.py:258" *) rqk; assign \$42 = ~ (* src = "attacks-qbb.py:258" *) enemy; assign \$44 = \$40 & (* src = "attacks-qbb.py:258" *) \$42 ; assign \$46 = pbq & (* src = "attacks-qbb.py:259" *) rqk; assign \$48 = ~ (* src = "attacks-qbb.py:259" *) enemy; assign \$4 = ~ (* src = "attacks-qbb.py:255" *) nbk; assign \$50 = \$46 & (* src = "attacks-qbb.py:259" *) \$48 ; assign \$52 = nbk & (* src = "attacks-qbb.py:260" *) rqk; assign \$54 = ~ (* src = "attacks-qbb.py:260" *) enemy; assign \$56 = \$52 & (* src = "attacks-qbb.py:260" *) \$54 ; assign \$58 = ~ (* src = "attacks-qbb.py:262" *) nbk; assign \$60 = pbq & (* src = "attacks-qbb.py:262" *) \$58 ; assign \$62 = ~ (* src = "attacks-qbb.py:262" *) rqk; assign \$64 = \$60 & (* src = "attacks-qbb.py:262" *) \$62 ; assign \$66 = ~ (* src = "attacks-qbb.py:262" *) enemy; assign \$68 = \$64 & (* src = "attacks-qbb.py:262" *) \$66 ; assign \$6 = pbq & (* src = "attacks-qbb.py:255" *) \$4 ; assign \$70 = ~ (* src = "attacks-qbb.py:263" *) pbq; assign \$72 = \$70 & (* src = "attacks-qbb.py:263" *) nbk; assign \$74 = ~ (* src = "attacks-qbb.py:263" *) rqk; assign \$76 = \$72 & (* src = "attacks-qbb.py:263" *) \$74 ; assign \$78 = ~ (* src = "attacks-qbb.py:263" *) enemy; assign \$80 = \$76 & (* src = "attacks-qbb.py:263" *) \$78 ; assign \$82 = pbq & (* src = "attacks-qbb.py:264" *) nbk; assign \$84 = ~ (* src = "attacks-qbb.py:264" *) enemy; assign \$86 = \$82 & (* src = "attacks-qbb.py:264" *) \$84 ; assign \$88 = ~ (* src = "attacks-qbb.py:265" *) pbq; assign \$8 = ~ (* src = "attacks-qbb.py:255" *) rqk; assign \$90 = ~ (* src = "attacks-qbb.py:265" *) nbk; assign \$92 = \$88 & (* src = "attacks-qbb.py:265" *) \$90 ; assign \$94 = \$92 & (* src = "attacks-qbb.py:265" *) rqk; assign \$96 = ~ (* src = "attacks-qbb.py:265" *) enemy; assign \$98 = \$94 & (* src = "attacks-qbb.py:265" *) \$96 ; black_fill_east black_fill_east ( .empty(black_fill_east_empty), .\output (black_fill_east_output), .pieces(black_fill_east_pieces) ); black_fill_north black_fill_north ( .empty(black_fill_north_empty), .\output (black_fill_north_output), .pieces(black_fill_north_pieces) ); black_fill_northeast black_fill_northeast ( .empty(black_fill_northeast_empty), .\output (black_fill_northeast_output), .pieces(black_fill_northeast_pieces) ); black_fill_northwest black_fill_northwest ( .empty(black_fill_northwest_empty), .\output (black_fill_northwest_output), .pieces(black_fill_northwest_pieces) ); black_fill_south black_fill_south ( .empty(black_fill_south_empty), .\output (black_fill_south_output), .pieces(black_fill_south_pieces) ); black_fill_southeast black_fill_southeast ( .empty(black_fill_southeast_empty), .\output (black_fill_southeast_output), .pieces(black_fill_southeast_pieces) ); black_fill_southwest black_fill_southwest ( .empty(black_fill_southwest_empty), .\output (black_fill_southwest_output), .pieces(black_fill_southwest_pieces) ); black_fill_west black_fill_west ( .empty(black_fill_west_empty), .\output (black_fill_west_output), .pieces(black_fill_west_pieces) ); black_king black_king ( .e(black_king_e), .n(black_king_n), .ne(black_king_ne), .nw(black_king_nw), .pieces(black_king_pieces), .s(black_king_s), .se(black_king_se), .sw(black_king_sw), .w(black_king_w) ); black_knights black_knights ( .ene(black_knights_ene), .ese(black_knights_ese), .knights(black_knights_knights), .nne(black_knights_nne), .nnw(black_knights_nnw), .sse(black_knights_sse), .ssw(black_knights_ssw), .wnw(black_knights_wnw), .wsw(black_knights_wsw) ); black_pawns black_pawns ( .pawns(black_pawns_pawns), .se(black_pawns_se), .sw(black_pawns_sw) ); white_fill_east white_fill_east ( .empty(white_fill_east_empty), .\output (white_fill_east_output), .pieces(white_fill_east_pieces) ); white_fill_north white_fill_north ( .empty(white_fill_north_empty), .\output (white_fill_north_output), .pieces(white_fill_north_pieces) ); white_fill_northeast white_fill_northeast ( .empty(white_fill_northeast_empty), .\output (white_fill_northeast_output), .pieces(white_fill_northeast_pieces) ); white_fill_northwest white_fill_northwest ( .empty(\empty$2 ), .pieces(\pieces$1 ) ); white_fill_south white_fill_south ( .empty(white_fill_south_empty), .\output (white_fill_south_output), .pieces(white_fill_south_pieces) ); white_fill_southeast white_fill_southeast ( .empty(empty), .pieces(pieces) ); white_fill_southwest white_fill_southwest ( .empty(white_fill_southwest_empty), .\output (white_fill_southwest_output), .pieces(white_fill_southwest_pieces) ); white_fill_west white_fill_west ( .empty(white_fill_west_empty), .\output (white_fill_west_output), .pieces(white_fill_west_pieces) ); white_king white_king ( .pieces(\pieces$3 ) ); white_king_fill_east white_king_fill_east ( .empty(white_king_fill_east_empty), .\output (white_king_fill_east_output), .pieces(white_king_fill_east_pieces) ); white_king_fill_north white_king_fill_north ( .empty(white_king_fill_north_empty), .\output (white_king_fill_north_output), .pieces(white_king_fill_north_pieces) ); white_king_fill_northeast white_king_fill_northeast ( .empty(white_king_fill_northeast_empty), .\output (white_king_fill_northeast_output), .pieces(white_king_fill_northeast_pieces) ); white_king_fill_northwest white_king_fill_northwest ( .empty(white_king_fill_northwest_empty), .\output (white_king_fill_northwest_output), .pieces(white_king_fill_northwest_pieces) ); white_king_fill_south white_king_fill_south ( .empty(white_king_fill_south_empty), .\output (white_king_fill_south_output), .pieces(white_king_fill_south_pieces) ); white_king_fill_southeast white_king_fill_southeast ( .empty(white_king_fill_southeast_empty), .\output (white_king_fill_southeast_output), .pieces(white_king_fill_southeast_pieces) ); white_king_fill_southwest white_king_fill_southwest ( .empty(white_king_fill_southwest_empty), .pieces(white_king_fill_southwest_pieces) ); white_king_fill_west white_king_fill_west ( .empty(white_king_fill_west_empty), .\output (white_king_fill_west_output), .pieces(white_king_fill_west_pieces) ); white_king_knight_attacks white_king_knight_attacks ( .ene(white_king_knight_attacks_ene), .ese(white_king_knight_attacks_ese), .knights(white_king_knight_attacks_knights), .nne(white_king_knight_attacks_nne), .nnw(white_king_knight_attacks_nnw), .sse(white_king_knight_attacks_sse), .ssw(white_king_knight_attacks_ssw), .wnw(white_king_knight_attacks_wnw), .wsw(white_king_knight_attacks_wsw) ); white_king_pawn_attacks white_king_pawn_attacks ( .ne(white_king_pawn_attacks_ne), .nw(white_king_pawn_attacks_nw), .pawns(white_king_pawn_attacks_pawns) ); white_knights white_knights ( .knights(white_knights_knights) ); always @* begin \$next\wpawns = 64'h0000000000000000; \$next\wpawns = \$14 ; end always @* begin \$next\wknights = 64'h0000000000000000; \$next\wknights = \$26 ; end always @* begin \$next\bqueens = 64'h0000000000000000; \$next\bqueens = \$104 ; end always @* begin \$next\bking = 64'h0000000000000000; \$next\bking = \$110 ; end always @* begin \$next\friendly = 64'h0000000000000000; \$next\friendly = \$118 ; end always @* begin \$next\occ = 64'h0000000000000000; \$next\occ = \$122 ; end always @* begin \$next\empty$124 = 64'h0000000000000000; \$next\empty$124 = \$133 ; end always @* begin \$next\black_fill_north_pieces = 64'h0000000000000000; \$next\black_fill_north_pieces = \$135 ; end always @* begin \$next\black_fill_northeast_pieces = 64'h0000000000000000; \$next\black_fill_northeast_pieces = \$137 ; end always @* begin \$next\black_fill_east_pieces = 64'h0000000000000000; \$next\black_fill_east_pieces = \$139 ; end always @* begin \$next\black_fill_southeast_pieces = 64'h0000000000000000; \$next\black_fill_southeast_pieces = \$141 ; end always @* begin \$next\black_fill_south_pieces = 64'h0000000000000000; \$next\black_fill_south_pieces = \$143 ; end always @* begin \$next\wbishops = 64'h0000000000000000; \$next\wbishops = \$32 ; end always @* begin \$next\black_fill_southwest_pieces = 64'h0000000000000000; \$next\black_fill_southwest_pieces = \$145 ; end always @* begin \$next\black_fill_west_pieces = 64'h0000000000000000; \$next\black_fill_west_pieces = \$147 ; end always @* begin \$next\black_fill_northwest_pieces = 64'h0000000000000000; \$next\black_fill_northwest_pieces = \$149 ; end always @* begin \$next\black_fill_north_empty = 64'h0000000000000000; \$next\black_fill_north_empty = \$151 ; end always @* begin \$next\black_fill_northeast_empty = 64'h0000000000000000; \$next\black_fill_northeast_empty = \$153 ; end always @* begin \$next\black_fill_east_empty = 64'h0000000000000000; \$next\black_fill_east_empty = \$155 ; end always @* begin \$next\black_fill_southeast_empty = 64'h0000000000000000; \$next\black_fill_southeast_empty = \$157 ; end always @* begin \$next\black_fill_south_empty = 64'h0000000000000000; \$next\black_fill_south_empty = \$159 ; end always @* begin \$next\black_fill_southwest_empty = 64'h0000000000000000; \$next\black_fill_southwest_empty = \$161 ; end always @* begin \$next\black_fill_west_empty = 64'h0000000000000000; \$next\black_fill_west_empty = \$163 ; end always @* begin \$next\wrooks = 64'h0000000000000000; \$next\wrooks = \$44 ; end always @* begin \$next\black_fill_northwest_empty = 64'h0000000000000000; \$next\black_fill_northwest_empty = \$165 ; end always @* begin \$next\black_pawns_pawns = 64'h0000000000000000; \$next\black_pawns_pawns = bpawns; end always @* begin \$next\black_knights_knights = 64'h0000000000000000; \$next\black_knights_knights = bknights; end always @* begin \$next\black_king_pieces = 64'h0000000000000000; \$next\black_king_pieces = bking; end always @* begin \$next\white_king_fill_north_pieces = 64'h0000000000000000; \$next\white_king_fill_north_pieces = wking; end always @* begin \$next\white_king_fill_northeast_pieces = 64'h0000000000000000; \$next\white_king_fill_northeast_pieces = wking; end always @* begin \$next\white_king_fill_east_pieces = 64'h0000000000000000; \$next\white_king_fill_east_pieces = wking; end always @* begin \$next\white_king_fill_southeast_pieces = 64'h0000000000000000; \$next\white_king_fill_southeast_pieces = wking; end always @* begin \$next\white_king_fill_south_pieces = 64'h0000000000000000; \$next\white_king_fill_south_pieces = wking; end always @* begin \$next\white_king_fill_southwest_pieces = 64'h0000000000000000; \$next\white_king_fill_southwest_pieces = wking; end always @* begin \$next\wqueens = 64'h0000000000000000; \$next\wqueens = \$50 ; end always @* begin \$next\white_king_fill_west_pieces = 64'h0000000000000000; \$next\white_king_fill_west_pieces = wking; end always @* begin \$next\white_king_fill_northwest_pieces = 64'h0000000000000000; \$next\white_king_fill_northwest_pieces = wking; end always @* begin \$next\white_king_fill_north_empty = 64'h0000000000000000; \$next\white_king_fill_north_empty = occ; end always @* begin \$next\white_king_fill_northeast_empty = 64'h0000000000000000; \$next\white_king_fill_northeast_empty = occ; end always @* begin \$next\white_king_fill_east_empty = 64'h0000000000000000; \$next\white_king_fill_east_empty = occ; end always @* begin \$next\white_king_fill_southeast_empty = 64'h0000000000000000; \$next\white_king_fill_southeast_empty = occ; end always @* begin \$next\white_king_fill_south_empty = 64'h0000000000000000; \$next\white_king_fill_south_empty = occ; end always @* begin \$next\white_king_fill_southwest_empty = 64'h0000000000000000; \$next\white_king_fill_southwest_empty = occ; end always @* begin \$next\white_king_fill_west_empty = 64'h0000000000000000; \$next\white_king_fill_west_empty = occ; end always @* begin \$next\white_king_fill_northwest_empty = 64'h0000000000000000; \$next\white_king_fill_northwest_empty = occ; end always @* begin \$next\wking = 64'h0000000000000000; \$next\wking = \$56 ; end always @* begin \$next\white_king_pawn_attacks_pawns = 64'h0000000000000000; \$next\white_king_pawn_attacks_pawns = wking; end always @* begin \$next\white_king_knight_attacks_knights = 64'h0000000000000000; \$next\white_king_knight_attacks_knights = wking; end always @* begin \$next\white_knights_knights = 64'h0000000000000000; \$next\white_knights_knights = wknights; end always @* begin \$next\attacked_by_black = 64'h0000000000000000; \$next\attacked_by_black = \$215 ; end always @* begin \$next\vertical_in_between = 64'h0000000000000000; \$next\vertical_in_between = \$221 ; end always @* begin \$next\horizontal_in_between = 64'h0000000000000000; \$next\horizontal_in_between = \$227 ; end always @* begin \$next\diagonal_in_between = 64'h0000000000000000; \$next\diagonal_in_between = \$233 ; end always @* begin \$next\antidiagonal_in_between = 64'h0000000000000000; \$next\antidiagonal_in_between = \$239 ; end always @* begin \$next\ortho_king_attacks = 64'h0000000000000000; \$next\ortho_king_attacks = \$241 ; end always @* begin \$next\diag_king_attacks = 64'h0000000000000000; \$next\diag_king_attacks = \$243 ; end always @* begin \$next\bpawns = 64'h0000000000000000; \$next\bpawns = \$68 ; end always @* begin \$next\pawn_king_attacks = 64'h0000000000000000; \$next\pawn_king_attacks = \$245 ; end always @* begin \$next\knight_king_attacks = 64'h0000000000000000; \$next\knight_king_attacks = \$259 ; end always @* begin \$next\all_in_between = 64'h0000000000000000; \$next\all_in_between = \$261 ; end always @* begin \$next\blockers = 64'h0000000000000000; \$next\blockers = \$263 ; end always @* begin \$next\checking_pieces = 64'h0000000000000000; \$next\checking_pieces = \$281 ; end always @* begin \$next\zero_if_check = 64'h0000000000000000; \$next\zero_if_check = \$283 [63:0]; end always @* begin \$next\zero_if_double_check = 64'h0000000000000000; \$next\zero_if_double_check = \$290 [63:0]; end always @* begin \$next\check_dest = 64'h0000000000000000; \$next\check_dest = \$299 [63:0]; end always @* begin \$next\target_mask = 64'h0000000000000000; \$next\target_mask = \$304 [63:0]; end always @* begin \$next\horizontal_sliders = 64'h0000000000000000; \$next\horizontal_sliders = \$317 ; end always @* begin \$next\bknights = 64'h0000000000000000; \$next\bknights = \$80 ; end always @* begin \$next\white_fill_east_pieces = 64'h0000000000000000; \$next\white_fill_east_pieces = horizontal_sliders; end always @* begin \$next\white_fill_east_empty = 64'h0000000000000000; \$next\white_fill_east_empty = \empty$124 ; end always @* begin \$next\e = 64'h0000000000000000; \$next\e = \$319 ; end always @* begin \$next\white_fill_west_pieces = 64'h0000000000000000; \$next\white_fill_west_pieces = horizontal_sliders; end always @* begin \$next\white_fill_west_empty = 64'h0000000000000000; \$next\white_fill_west_empty = \empty$124 ; end always @* begin \$next\w = 64'h0000000000000000; \$next\w = \$321 ; end always @* begin \$next\vertical_sliders = 64'h0000000000000000; \$next\vertical_sliders = \$329 ; end always @* begin \$next\white_fill_north_pieces = 64'h0000000000000000; \$next\white_fill_north_pieces = vertical_sliders; end always @* begin \$next\white_fill_north_empty = 64'h0000000000000000; \$next\white_fill_north_empty = \empty$124 ; end always @* begin \$next\n = 64'h0000000000000000; \$next\n = \$331 ; end always @* begin \$next\bbishops = 64'h0000000000000000; \$next\bbishops = \$86 ; end always @* begin \$next\white_fill_south_pieces = 64'h0000000000000000; \$next\white_fill_south_pieces = vertical_sliders; end always @* begin \$next\white_fill_south_empty = 64'h0000000000000000; \$next\white_fill_south_empty = \empty$124 ; end always @* begin \$next\s = 64'h0000000000000000; \$next\s = \$333 ; end always @* begin \$next\diagonal_sliders = 64'h0000000000000000; \$next\diagonal_sliders = \$341 ; end always @* begin \$next\white_fill_northeast_pieces = 64'h0000000000000000; \$next\white_fill_northeast_pieces = diagonal_sliders; \$next\white_fill_northeast_pieces = antidiagonal_sliders; end always @* begin \$next\white_fill_northeast_empty = 64'h0000000000000000; \$next\white_fill_northeast_empty = \empty$124 ; \$next\white_fill_northeast_empty = \empty$124 ; end always @* begin \$next\ne = 64'h0000000000000000; \$next\ne = \$343 ; \$next\ne = \$345 ; end always @* begin \$next\white_fill_southwest_pieces = 64'h0000000000000000; \$next\white_fill_southwest_pieces = diagonal_sliders; \$next\white_fill_southwest_pieces = antidiagonal_sliders; end always @* begin \$next\white_fill_southwest_empty = 64'h0000000000000000; \$next\white_fill_southwest_empty = \empty$124 ; \$next\white_fill_southwest_empty = \empty$124 ; end always @* begin \$next\sw = 64'h0000000000000000; \$next\sw = \$347 ; \$next\sw = \$349 ; end always @* begin \$next\brooks = 64'h0000000000000000; \$next\brooks = \$98 ; end always @* begin \$next\antidiagonal_sliders = 64'h0000000000000000; \$next\antidiagonal_sliders = \$357 ; end assign \$283 = \$288 ; assign \$290 = \$297 ; assign \$299 = \$302 ; assign \$304 = \$309 ; assign antidiagonal_sliders = \$next\antidiagonal_sliders ; assign sw = \$next\sw ; assign white_fill_southwest_empty = \$next\white_fill_southwest_empty ; assign white_fill_southwest_pieces = \$next\white_fill_southwest_pieces ; assign ne = \$next\ne ; assign white_fill_northeast_empty = \$next\white_fill_northeast_empty ; assign white_fill_northeast_pieces = \$next\white_fill_northeast_pieces ; assign diagonal_sliders = \$next\diagonal_sliders ; assign s = \$next\s ; assign white_fill_south_empty = \$next\white_fill_south_empty ; assign white_fill_south_pieces = \$next\white_fill_south_pieces ; assign n = \$next\n ; assign white_fill_north_empty = \$next\white_fill_north_empty ; assign white_fill_north_pieces = \$next\white_fill_north_pieces ; assign vertical_sliders = \$next\vertical_sliders ; assign w = \$next\w ; assign white_fill_west_empty = \$next\white_fill_west_empty ; assign white_fill_west_pieces = \$next\white_fill_west_pieces ; assign e = \$next\e ; assign white_fill_east_empty = \$next\white_fill_east_empty ; assign white_fill_east_pieces = \$next\white_fill_east_pieces ; assign horizontal_sliders = \$next\horizontal_sliders ; assign target_mask = \$next\target_mask ; assign check_dest = \$next\check_dest ; assign zero_if_double_check = \$next\zero_if_double_check ; assign zero_if_check = \$next\zero_if_check ; assign checking_pieces = \$next\checking_pieces ; assign blockers = \$next\blockers ; assign all_in_between = \$next\all_in_between ; assign knight_king_attacks = \$next\knight_king_attacks ; assign pawn_king_attacks = \$next\pawn_king_attacks ; assign diag_king_attacks = \$next\diag_king_attacks ; assign ortho_king_attacks = \$next\ortho_king_attacks ; assign antidiagonal_in_between = \$next\antidiagonal_in_between ; assign diagonal_in_between = \$next\diagonal_in_between ; assign horizontal_in_between = \$next\horizontal_in_between ; assign vertical_in_between = \$next\vertical_in_between ; assign attacked_by_black = \$next\attacked_by_black ; assign white_knights_knights = \$next\white_knights_knights ; assign white_king_knight_attacks_knights = \$next\white_king_knight_attacks_knights ; assign white_king_pawn_attacks_pawns = \$next\white_king_pawn_attacks_pawns ; assign white_king_fill_northwest_empty = \$next\white_king_fill_northwest_empty ; assign white_king_fill_west_empty = \$next\white_king_fill_west_empty ; assign white_king_fill_southwest_empty = \$next\white_king_fill_southwest_empty ; assign white_king_fill_south_empty = \$next\white_king_fill_south_empty ; assign white_king_fill_southeast_empty = \$next\white_king_fill_southeast_empty ; assign white_king_fill_east_empty = \$next\white_king_fill_east_empty ; assign white_king_fill_northeast_empty = \$next\white_king_fill_northeast_empty ; assign white_king_fill_north_empty = \$next\white_king_fill_north_empty ; assign white_king_fill_northwest_pieces = \$next\white_king_fill_northwest_pieces ; assign white_king_fill_west_pieces = \$next\white_king_fill_west_pieces ; assign white_king_fill_southwest_pieces = \$next\white_king_fill_southwest_pieces ; assign white_king_fill_south_pieces = \$next\white_king_fill_south_pieces ; assign white_king_fill_southeast_pieces = \$next\white_king_fill_southeast_pieces ; assign white_king_fill_east_pieces = \$next\white_king_fill_east_pieces ; assign white_king_fill_northeast_pieces = \$next\white_king_fill_northeast_pieces ; assign white_king_fill_north_pieces = \$next\white_king_fill_north_pieces ; assign black_king_pieces = \$next\black_king_pieces ; assign black_knights_knights = \$next\black_knights_knights ; assign black_pawns_pawns = \$next\black_pawns_pawns ; assign black_fill_northwest_empty = \$next\black_fill_northwest_empty ; assign black_fill_west_empty = \$next\black_fill_west_empty ; assign black_fill_southwest_empty = \$next\black_fill_southwest_empty ; assign black_fill_south_empty = \$next\black_fill_south_empty ; assign black_fill_southeast_empty = \$next\black_fill_southeast_empty ; assign black_fill_east_empty = \$next\black_fill_east_empty ; assign black_fill_northeast_empty = \$next\black_fill_northeast_empty ; assign black_fill_north_empty = \$next\black_fill_north_empty ; assign black_fill_northwest_pieces = \$next\black_fill_northwest_pieces ; assign black_fill_west_pieces = \$next\black_fill_west_pieces ; assign black_fill_southwest_pieces = \$next\black_fill_southwest_pieces ; assign black_fill_south_pieces = \$next\black_fill_south_pieces ; assign black_fill_southeast_pieces = \$next\black_fill_southeast_pieces ; assign black_fill_east_pieces = \$next\black_fill_east_pieces ; assign black_fill_northeast_pieces = \$next\black_fill_northeast_pieces ; assign black_fill_north_pieces = \$next\black_fill_north_pieces ; assign \empty$124 = \$next\empty$124 ; assign occ = \$next\occ ; assign friendly = \$next\friendly ; assign bking = \$next\bking ; assign bqueens = \$next\bqueens ; assign brooks = \$next\brooks ; assign bbishops = \$next\bbishops ; assign bknights = \$next\bknights ; assign bpawns = \$next\bpawns ; assign wking = \$next\wking ; assign wqueens = \$next\wqueens ; assign wrooks = \$next\wrooks ; assign wbishops = \$next\wbishops ; assign wknights = \$next\wknights ; assign wpawns = \$next\wpawns ; endmodule (* \nmigen.hierarchy = "top.white_fill_east" *) (* generator = "nMigen" *) module white_fill_east(empty, \output , pieces); wire [7:0] \$1 ; wire [64:0] \$10 ; wire [64:0] \$12 ; wire [64:0] \$13 ; wire [64:0] \$15 ; wire [66:0] \$17 ; wire [66:0] \$18 ; wire [66:0] \$20 ; wire [66:0] \$22 ; wire [66:0] \$24 ; wire [66:0] \$25 ; wire [66:0] \$27 ; wire [70:0] \$29 ; wire [63:0] \$3 ; wire [70:0] \$30 ; wire [70:0] \$32 ; wire [70:0] \$34 ; wire [64:0] \$36 ; wire [64:0] \$37 ; wire [7:0] \$39 ; wire [64:0] \$41 ; wire [64:0] \$5 ; wire [64:0] \$6 ; wire [64:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = pieces0 <<< (* src = "attacks-qbb.py:34" *) 1'h1; assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = empty0 <<< (* src = "attacks-qbb.py:35" *) 2'h2; assign \$1 = ~ (* src = "attacks-qbb.py:168" *) 8'hff; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = pieces1 <<< (* src = "attacks-qbb.py:36" *) 2'h2; assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = empty1 <<< (* src = "attacks-qbb.py:37" *) 3'h4; assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = empty2 <<< (* src = "attacks-qbb.py:38" *) 1'h1; assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:168" *) 8'hff; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = empty <<< (* src = "attacks-qbb.py:33" *) 1'h1; assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_fill_north" *) (* generator = "nMigen" *) module white_fill_north(empty, \output , pieces); wire [63:0] \$1 ; wire [78:0] \$10 ; wire [78:0] \$11 ; wire [78:0] \$13 ; wire [94:0] \$15 ; wire [94:0] \$16 ; wire [94:0] \$18 ; wire [94:0] \$20 ; wire [94:0] \$22 ; wire [94:0] \$23 ; wire [94:0] \$25 ; wire [126:0] \$27 ; wire [126:0] \$28 ; wire [78:0] \$3 ; wire [126:0] \$30 ; wire [126:0] \$32 ; wire [78:0] \$34 ; wire [78:0] \$35 ; wire [78:0] \$37 ; wire [78:0] \$4 ; wire [78:0] \$6 ; wire [78:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$11 = pieces0 <<< (* src = "attacks-qbb.py:34" *) 4'h8; assign \$13 = pieces0 & (* src = "attacks-qbb.py:34" *) \$11 ; assign \$16 = empty0 <<< (* src = "attacks-qbb.py:35" *) 5'h10; assign \$18 = pieces1 & (* src = "attacks-qbb.py:35" *) \$16 ; assign \$1 = pieces & (* src = "attacks-qbb.py:32" *) 64'hffffffffffffffff; assign \$20 = empty0 | (* src = "attacks-qbb.py:35" *) \$18 ; assign \$23 = pieces1 <<< (* src = "attacks-qbb.py:36" *) 5'h10; assign \$25 = pieces1 & (* src = "attacks-qbb.py:36" *) \$23 ; assign \$28 = empty1 <<< (* src = "attacks-qbb.py:37" *) 6'h20; assign \$30 = pieces2 & (* src = "attacks-qbb.py:37" *) \$28 ; assign \$32 = empty1 | (* src = "attacks-qbb.py:37" *) \$30 ; assign \$35 = empty2 <<< (* src = "attacks-qbb.py:38" *) 4'h8; assign \$37 = \$35 & (* src = "attacks-qbb.py:38" *) 64'hffffffffffffffff; assign \$4 = empty <<< (* src = "attacks-qbb.py:33" *) 4'h8; assign \$6 = pieces0 & (* src = "attacks-qbb.py:33" *) \$4 ; assign \$8 = empty | (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$1 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$3 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$10 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$15 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$22 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$27 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$34 [63:0]; end assign \$3 = \$8 ; assign \$10 = \$13 ; assign \$15 = \$20 ; assign \$22 = \$25 ; assign \$27 = \$32 ; assign \$34 = \$37 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_fill_northeast" *) (* generator = "nMigen" *) module white_fill_northeast(empty, \output , pieces); wire [7:0] \$1 ; wire [78:0] \$10 ; wire [78:0] \$12 ; wire [78:0] \$13 ; wire [78:0] \$15 ; wire [94:0] \$17 ; wire [94:0] \$18 ; wire [94:0] \$20 ; wire [94:0] \$22 ; wire [94:0] \$24 ; wire [94:0] \$25 ; wire [94:0] \$27 ; wire [126:0] \$29 ; wire [63:0] \$3 ; wire [126:0] \$30 ; wire [126:0] \$32 ; wire [126:0] \$34 ; wire [78:0] \$36 ; wire [78:0] \$37 ; wire [7:0] \$39 ; wire [78:0] \$41 ; wire [78:0] \$5 ; wire [78:0] \$6 ; wire [78:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = pieces0 <<< (* src = "attacks-qbb.py:34" *) 4'h9; assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = empty0 <<< (* src = "attacks-qbb.py:35" *) 5'h12; assign \$1 = ~ (* src = "attacks-qbb.py:167" *) 8'hff; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = pieces1 <<< (* src = "attacks-qbb.py:36" *) 5'h12; assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = empty1 <<< (* src = "attacks-qbb.py:37" *) 6'h24; assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = empty2 <<< (* src = "attacks-qbb.py:38" *) 4'h9; assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:167" *) 8'hff; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = empty <<< (* src = "attacks-qbb.py:33" *) 4'h9; assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_fill_northwest" *) (* generator = "nMigen" *) module white_fill_northwest(empty, pieces); wire [63:0] \$1 ; wire [70:0] \$10 ; wire [70:0] \$12 ; wire [70:0] \$13 ; wire [70:0] \$15 ; wire [78:0] \$17 ; wire [78:0] \$18 ; wire [78:0] \$20 ; wire [78:0] \$22 ; wire [78:0] \$24 ; wire [78:0] \$25 ; wire [78:0] \$27 ; wire [94:0] \$29 ; wire [63:0] \$3 ; wire [94:0] \$30 ; wire [94:0] \$32 ; wire [94:0] \$34 ; wire [70:0] \$36 ; wire [70:0] \$37 ; wire [63:0] \$39 ; wire [70:0] \$41 ; wire [70:0] \$5 ; wire [70:0] \$6 ; wire [70:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) wire [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hfffffffffffffff9); assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hfffffffffffffff2); assign \$1 = ~ (* src = "attacks-qbb.py:173" *) 64'h8080808080808080; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hfffffffffffffff2); assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hffffffffffffffe4); assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hfffffffffffffff9); assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:173" *) 64'h8080808080808080; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hfffffffffffffff9); assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_fill_south" *) (* generator = "nMigen" *) module white_fill_south(empty, \output , pieces); wire [63:0] \$1 ; wire [70:0] \$10 ; wire [70:0] \$11 ; wire [70:0] \$13 ; wire [78:0] \$15 ; wire [78:0] \$16 ; wire [78:0] \$18 ; wire [78:0] \$20 ; wire [78:0] \$22 ; wire [78:0] \$23 ; wire [78:0] \$25 ; wire [94:0] \$27 ; wire [94:0] \$28 ; wire [70:0] \$3 ; wire [94:0] \$30 ; wire [94:0] \$32 ; wire [70:0] \$34 ; wire [70:0] \$35 ; wire [70:0] \$37 ; wire [70:0] \$4 ; wire [70:0] \$6 ; wire [70:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$11 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hfffffffffffffff8); assign \$13 = pieces0 & (* src = "attacks-qbb.py:34" *) \$11 ; assign \$16 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hfffffffffffffff0); assign \$18 = pieces1 & (* src = "attacks-qbb.py:35" *) \$16 ; assign \$1 = pieces & (* src = "attacks-qbb.py:32" *) 64'hffffffffffffffff; assign \$20 = empty0 | (* src = "attacks-qbb.py:35" *) \$18 ; assign \$23 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hfffffffffffffff0); assign \$25 = pieces1 & (* src = "attacks-qbb.py:36" *) \$23 ; assign \$28 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hffffffffffffffe0); assign \$30 = pieces2 & (* src = "attacks-qbb.py:37" *) \$28 ; assign \$32 = empty1 | (* src = "attacks-qbb.py:37" *) \$30 ; assign \$35 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hfffffffffffffff8); assign \$37 = \$35 & (* src = "attacks-qbb.py:38" *) 64'hffffffffffffffff; assign \$4 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hfffffffffffffff8); assign \$6 = pieces0 & (* src = "attacks-qbb.py:33" *) \$4 ; assign \$8 = empty | (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$1 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$3 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$10 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$15 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$22 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$27 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$34 [63:0]; end assign \$3 = \$8 ; assign \$10 = \$13 ; assign \$15 = \$20 ; assign \$22 = \$25 ; assign \$27 = \$32 ; assign \$34 = \$37 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_fill_southeast" *) (* generator = "nMigen" *) module white_fill_southeast(empty, pieces); wire [7:0] \$1 ; wire [70:0] \$10 ; wire [70:0] \$12 ; wire [70:0] \$13 ; wire [70:0] \$15 ; wire [78:0] \$17 ; wire [78:0] \$18 ; wire [78:0] \$20 ; wire [78:0] \$22 ; wire [78:0] \$24 ; wire [78:0] \$25 ; wire [78:0] \$27 ; wire [94:0] \$29 ; wire [63:0] \$3 ; wire [94:0] \$30 ; wire [94:0] \$32 ; wire [94:0] \$34 ; wire [70:0] \$36 ; wire [70:0] \$37 ; wire [7:0] \$39 ; wire [70:0] \$41 ; wire [70:0] \$5 ; wire [70:0] \$6 ; wire [70:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) wire [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hfffffffffffffff9); assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hfffffffffffffff2); assign \$1 = ~ (* src = "attacks-qbb.py:169" *) 8'hff; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hfffffffffffffff2); assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hffffffffffffffe4); assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hfffffffffffffff9); assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:169" *) 8'hff; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hfffffffffffffff9); assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_fill_southwest" *) (* generator = "nMigen" *) module white_fill_southwest(empty, \output , pieces); wire [63:0] \$1 ; wire [78:0] \$10 ; wire [78:0] \$12 ; wire [78:0] \$13 ; wire [78:0] \$15 ; wire [94:0] \$17 ; wire [94:0] \$18 ; wire [94:0] \$20 ; wire [94:0] \$22 ; wire [94:0] \$24 ; wire [94:0] \$25 ; wire [94:0] \$27 ; wire [126:0] \$29 ; wire [63:0] \$3 ; wire [126:0] \$30 ; wire [126:0] \$32 ; wire [126:0] \$34 ; wire [78:0] \$36 ; wire [78:0] \$37 ; wire [63:0] \$39 ; wire [78:0] \$41 ; wire [78:0] \$5 ; wire [78:0] \$6 ; wire [78:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hfffffffffffffff7); assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hffffffffffffffee); assign \$1 = ~ (* src = "attacks-qbb.py:171" *) 64'h8080808080808080; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hffffffffffffffee); assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hffffffffffffffdc); assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hfffffffffffffff7); assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:171" *) 64'h8080808080808080; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hfffffffffffffff7); assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_fill_west" *) (* generator = "nMigen" *) module white_fill_west(empty, \output , pieces); wire [63:0] \$1 ; wire [63:0] \$11 ; wire [63:0] \$13 ; wire [64:0] \$15 ; wire [64:0] \$16 ; wire [64:0] \$18 ; wire [64:0] \$20 ; wire [64:0] \$22 ; wire [64:0] \$23 ; wire [64:0] \$25 ; wire [66:0] \$27 ; wire [66:0] \$28 ; wire [63:0] \$3 ; wire [66:0] \$30 ; wire [66:0] \$32 ; wire [63:0] \$34 ; wire [63:0] \$36 ; wire [63:0] \$38 ; wire [63:0] \$5 ; wire [63:0] \$7 ; wire [63:0] \$9 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$9 = empty | (* src = "attacks-qbb.py:33" *) \$7 ; assign \$11 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hffffffffffffffff); assign \$13 = pieces0 & (* src = "attacks-qbb.py:34" *) \$11 ; assign \$16 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hfffffffffffffffe); assign \$18 = pieces1 & (* src = "attacks-qbb.py:35" *) \$16 ; assign \$1 = ~ (* src = "attacks-qbb.py:172" *) 64'h8080808080808080; assign \$20 = empty0 | (* src = "attacks-qbb.py:35" *) \$18 ; assign \$23 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hfffffffffffffffe); assign \$25 = pieces1 & (* src = "attacks-qbb.py:36" *) \$23 ; assign \$28 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hfffffffffffffffc); assign \$30 = pieces2 & (* src = "attacks-qbb.py:37" *) \$28 ; assign \$32 = empty1 | (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hffffffffffffffff); assign \$36 = ~ (* src = "attacks-qbb.py:172" *) 64'h8080808080808080; assign \$38 = \$34 & (* src = "attacks-qbb.py:38" *) \$36 ; assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$5 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hffffffffffffffff); assign \$7 = pieces0 & (* src = "attacks-qbb.py:33" *) \$5 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$9 ; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$13 ; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$15 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$22 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$27 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$38 ; end assign \$15 = \$20 ; assign \$22 = \$25 ; assign \$27 = \$32 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_king" *) (* generator = "nMigen" *) module white_king(pieces); wire [78:0] \$1 ; wire [64:0] \$11 ; wire [63:0] \$12 ; wire [63:0] \$14 ; wire [64:0] \$16 ; wire [63:0] \$18 ; wire [78:0] \$2 ; wire [63:0] \$20 ; wire [63:0] \$22 ; wire [63:0] \$24 ; wire [7:0] \$26 ; wire [63:0] \$28 ; wire [63:0] \$30 ; wire [7:0] \$32 ; wire [63:0] \$34 ; wire [63:0] \$36 ; wire [70:0] \$38 ; wire [7:0] \$39 ; wire [78:0] \$4 ; wire [63:0] \$41 ; wire [70:0] \$43 ; wire [63:0] \$5 ; wire [63:0] \$7 ; wire [78:0] \$9 ; (* src = "attacks-qbb.py:80" *) reg [63:0] \$next\e ; (* src = "attacks-qbb.py:78" *) reg [63:0] \$next\n ; (* src = "attacks-qbb.py:79" *) reg [63:0] \$next\ne ; (* src = "attacks-qbb.py:85" *) reg [63:0] \$next\nw ; (* src = "attacks-qbb.py:82" *) reg [63:0] \$next\s ; (* src = "attacks-qbb.py:81" *) reg [63:0] \$next\se ; (* src = "attacks-qbb.py:83" *) reg [63:0] \$next\sw ; (* src = "attacks-qbb.py:84" *) reg [63:0] \$next\w ; (* src = "attacks-qbb.py:80" *) wire [63:0] e; (* src = "attacks-qbb.py:78" *) wire [63:0] n; (* src = "attacks-qbb.py:79" *) wire [63:0] ne; (* src = "attacks-qbb.py:85" *) wire [63:0] nw; (* src = "attacks-qbb.py:76" *) input [63:0] pieces; (* src = "attacks-qbb.py:82" *) wire [63:0] s; (* src = "attacks-qbb.py:81" *) wire [63:0] se; (* src = "attacks-qbb.py:83" *) wire [63:0] sw; (* src = "attacks-qbb.py:84" *) wire [63:0] w; assign \$9 = \$7 <<< (* src = "attacks-qbb.py:92" *) 4'h9; assign \$12 = ~ (* src = "attacks-qbb.py:93" *) 64'h8080808080808080; assign \$14 = pieces & (* src = "attacks-qbb.py:93" *) \$12 ; assign \$16 = \$14 <<< (* src = "attacks-qbb.py:93" *) 1'h1; assign \$18 = ~ (* src = "attacks-qbb.py:94" *) 64'h8080808080808080; assign \$20 = pieces & (* src = "attacks-qbb.py:94" *) \$18 ; assign \$22 = \$20 >>> (* src = "attacks-qbb.py:94" *) 3'h7; assign \$24 = pieces >>> (* src = "attacks-qbb.py:95" *) 4'h8; assign \$26 = ~ (* src = "attacks-qbb.py:96" *) 8'hff; assign \$28 = pieces & (* src = "attacks-qbb.py:96" *) \$26 ; assign \$2 = pieces <<< (* src = "attacks-qbb.py:91" *) 4'h8; assign \$30 = \$28 >>> (* src = "attacks-qbb.py:96" *) 4'h9; assign \$32 = ~ (* src = "attacks-qbb.py:97" *) 8'hff; assign \$34 = pieces & (* src = "attacks-qbb.py:97" *) \$32 ; assign \$36 = \$34 >>> (* src = "attacks-qbb.py:97" *) 1'h1; assign \$39 = ~ (* src = "attacks-qbb.py:98" *) 8'hff; assign \$41 = pieces & (* src = "attacks-qbb.py:98" *) \$39 ; assign \$43 = \$41 <<< (* src = "attacks-qbb.py:98" *) 3'h7; assign \$5 = ~ (* src = "attacks-qbb.py:92" *) 64'h8080808080808080; assign \$7 = pieces & (* src = "attacks-qbb.py:92" *) \$5 ; always @* begin \$next\n = 64'h0000000000000000; \$next\n = \$1 [63:0]; end always @* begin \$next\ne = 64'h0000000000000000; \$next\ne = \$4 [63:0]; end always @* begin \$next\e = 64'h0000000000000000; \$next\e = \$11 [63:0]; end always @* begin \$next\se = 64'h0000000000000000; \$next\se = \$22 ; end always @* begin \$next\s = 64'h0000000000000000; \$next\s = \$24 ; end always @* begin \$next\sw = 64'h0000000000000000; \$next\sw = \$30 ; end always @* begin \$next\w = 64'h0000000000000000; \$next\w = \$36 ; end always @* begin \$next\nw = 64'h0000000000000000; \$next\nw = \$38 [63:0]; end assign \$1 = \$2 ; assign \$4 = \$9 ; assign \$11 = \$16 ; assign \$38 = \$43 ; assign nw = \$next\nw ; assign w = \$next\w ; assign sw = \$next\sw ; assign s = \$next\s ; assign se = \$next\se ; assign e = \$next\e ; assign ne = \$next\ne ; assign n = \$next\n ; endmodule (* \nmigen.hierarchy = "top.white_king_fill_east" *) (* generator = "nMigen" *) module white_king_fill_east(empty, \output , pieces); wire [7:0] \$1 ; wire [64:0] \$10 ; wire [64:0] \$12 ; wire [64:0] \$13 ; wire [64:0] \$15 ; wire [66:0] \$17 ; wire [66:0] \$18 ; wire [66:0] \$20 ; wire [66:0] \$22 ; wire [66:0] \$24 ; wire [66:0] \$25 ; wire [66:0] \$27 ; wire [70:0] \$29 ; wire [63:0] \$3 ; wire [70:0] \$30 ; wire [70:0] \$32 ; wire [70:0] \$34 ; wire [64:0] \$36 ; wire [64:0] \$37 ; wire [7:0] \$39 ; wire [64:0] \$41 ; wire [64:0] \$5 ; wire [64:0] \$6 ; wire [64:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = pieces0 <<< (* src = "attacks-qbb.py:34" *) 1'h1; assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = empty0 <<< (* src = "attacks-qbb.py:35" *) 2'h2; assign \$1 = ~ (* src = "attacks-qbb.py:159" *) 8'hff; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = pieces1 <<< (* src = "attacks-qbb.py:36" *) 2'h2; assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = empty1 <<< (* src = "attacks-qbb.py:37" *) 3'h4; assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = empty2 <<< (* src = "attacks-qbb.py:38" *) 1'h1; assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:159" *) 8'hff; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = empty <<< (* src = "attacks-qbb.py:33" *) 1'h1; assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_king_fill_north" *) (* generator = "nMigen" *) module white_king_fill_north(empty, \output , pieces); wire [63:0] \$1 ; wire [78:0] \$10 ; wire [78:0] \$11 ; wire [78:0] \$13 ; wire [94:0] \$15 ; wire [94:0] \$16 ; wire [94:0] \$18 ; wire [94:0] \$20 ; wire [94:0] \$22 ; wire [94:0] \$23 ; wire [94:0] \$25 ; wire [126:0] \$27 ; wire [126:0] \$28 ; wire [78:0] \$3 ; wire [126:0] \$30 ; wire [126:0] \$32 ; wire [78:0] \$34 ; wire [78:0] \$35 ; wire [78:0] \$37 ; wire [78:0] \$4 ; wire [78:0] \$6 ; wire [78:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$11 = pieces0 <<< (* src = "attacks-qbb.py:34" *) 4'h8; assign \$13 = pieces0 & (* src = "attacks-qbb.py:34" *) \$11 ; assign \$16 = empty0 <<< (* src = "attacks-qbb.py:35" *) 5'h10; assign \$18 = pieces1 & (* src = "attacks-qbb.py:35" *) \$16 ; assign \$1 = pieces & (* src = "attacks-qbb.py:32" *) 64'hffffffffffffffff; assign \$20 = empty0 | (* src = "attacks-qbb.py:35" *) \$18 ; assign \$23 = pieces1 <<< (* src = "attacks-qbb.py:36" *) 5'h10; assign \$25 = pieces1 & (* src = "attacks-qbb.py:36" *) \$23 ; assign \$28 = empty1 <<< (* src = "attacks-qbb.py:37" *) 6'h20; assign \$30 = pieces2 & (* src = "attacks-qbb.py:37" *) \$28 ; assign \$32 = empty1 | (* src = "attacks-qbb.py:37" *) \$30 ; assign \$35 = empty2 <<< (* src = "attacks-qbb.py:38" *) 4'h8; assign \$37 = \$35 & (* src = "attacks-qbb.py:38" *) 64'hffffffffffffffff; assign \$4 = empty <<< (* src = "attacks-qbb.py:33" *) 4'h8; assign \$6 = pieces0 & (* src = "attacks-qbb.py:33" *) \$4 ; assign \$8 = empty | (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$1 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$3 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$10 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$15 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$22 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$27 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$34 [63:0]; end assign \$3 = \$8 ; assign \$10 = \$13 ; assign \$15 = \$20 ; assign \$22 = \$25 ; assign \$27 = \$32 ; assign \$34 = \$37 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_king_fill_northeast" *) (* generator = "nMigen" *) module white_king_fill_northeast(empty, \output , pieces); wire [7:0] \$1 ; wire [78:0] \$10 ; wire [78:0] \$12 ; wire [78:0] \$13 ; wire [78:0] \$15 ; wire [94:0] \$17 ; wire [94:0] \$18 ; wire [94:0] \$20 ; wire [94:0] \$22 ; wire [94:0] \$24 ; wire [94:0] \$25 ; wire [94:0] \$27 ; wire [126:0] \$29 ; wire [63:0] \$3 ; wire [126:0] \$30 ; wire [126:0] \$32 ; wire [126:0] \$34 ; wire [78:0] \$36 ; wire [78:0] \$37 ; wire [7:0] \$39 ; wire [78:0] \$41 ; wire [78:0] \$5 ; wire [78:0] \$6 ; wire [78:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = pieces0 <<< (* src = "attacks-qbb.py:34" *) 4'h9; assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = empty0 <<< (* src = "attacks-qbb.py:35" *) 5'h12; assign \$1 = ~ (* src = "attacks-qbb.py:158" *) 8'hff; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = pieces1 <<< (* src = "attacks-qbb.py:36" *) 5'h12; assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = empty1 <<< (* src = "attacks-qbb.py:37" *) 6'h24; assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = empty2 <<< (* src = "attacks-qbb.py:38" *) 4'h9; assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:158" *) 8'hff; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = empty <<< (* src = "attacks-qbb.py:33" *) 4'h9; assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_king_fill_northwest" *) (* generator = "nMigen" *) module white_king_fill_northwest(empty, \output , pieces); wire [63:0] \$1 ; wire [70:0] \$10 ; wire [70:0] \$12 ; wire [70:0] \$13 ; wire [70:0] \$15 ; wire [78:0] \$17 ; wire [78:0] \$18 ; wire [78:0] \$20 ; wire [78:0] \$22 ; wire [78:0] \$24 ; wire [78:0] \$25 ; wire [78:0] \$27 ; wire [94:0] \$29 ; wire [63:0] \$3 ; wire [94:0] \$30 ; wire [94:0] \$32 ; wire [94:0] \$34 ; wire [70:0] \$36 ; wire [70:0] \$37 ; wire [63:0] \$39 ; wire [70:0] \$41 ; wire [70:0] \$5 ; wire [70:0] \$6 ; wire [70:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hfffffffffffffff9); assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hfffffffffffffff2); assign \$1 = ~ (* src = "attacks-qbb.py:164" *) 64'h8080808080808080; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hfffffffffffffff2); assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hffffffffffffffe4); assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hfffffffffffffff9); assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:164" *) 64'h8080808080808080; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hfffffffffffffff9); assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_king_fill_south" *) (* generator = "nMigen" *) module white_king_fill_south(empty, \output , pieces); wire [63:0] \$1 ; wire [70:0] \$10 ; wire [70:0] \$11 ; wire [70:0] \$13 ; wire [78:0] \$15 ; wire [78:0] \$16 ; wire [78:0] \$18 ; wire [78:0] \$20 ; wire [78:0] \$22 ; wire [78:0] \$23 ; wire [78:0] \$25 ; wire [94:0] \$27 ; wire [94:0] \$28 ; wire [70:0] \$3 ; wire [94:0] \$30 ; wire [94:0] \$32 ; wire [70:0] \$34 ; wire [70:0] \$35 ; wire [70:0] \$37 ; wire [70:0] \$4 ; wire [70:0] \$6 ; wire [70:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$11 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hfffffffffffffff8); assign \$13 = pieces0 & (* src = "attacks-qbb.py:34" *) \$11 ; assign \$16 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hfffffffffffffff0); assign \$18 = pieces1 & (* src = "attacks-qbb.py:35" *) \$16 ; assign \$1 = pieces & (* src = "attacks-qbb.py:32" *) 64'hffffffffffffffff; assign \$20 = empty0 | (* src = "attacks-qbb.py:35" *) \$18 ; assign \$23 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hfffffffffffffff0); assign \$25 = pieces1 & (* src = "attacks-qbb.py:36" *) \$23 ; assign \$28 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hffffffffffffffe0); assign \$30 = pieces2 & (* src = "attacks-qbb.py:37" *) \$28 ; assign \$32 = empty1 | (* src = "attacks-qbb.py:37" *) \$30 ; assign \$35 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hfffffffffffffff8); assign \$37 = \$35 & (* src = "attacks-qbb.py:38" *) 64'hffffffffffffffff; assign \$4 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hfffffffffffffff8); assign \$6 = pieces0 & (* src = "attacks-qbb.py:33" *) \$4 ; assign \$8 = empty | (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$1 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$3 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$10 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$15 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$22 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$27 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$34 [63:0]; end assign \$3 = \$8 ; assign \$10 = \$13 ; assign \$15 = \$20 ; assign \$22 = \$25 ; assign \$27 = \$32 ; assign \$34 = \$37 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_king_fill_southeast" *) (* generator = "nMigen" *) module white_king_fill_southeast(empty, \output , pieces); wire [7:0] \$1 ; wire [70:0] \$10 ; wire [70:0] \$12 ; wire [70:0] \$13 ; wire [70:0] \$15 ; wire [78:0] \$17 ; wire [78:0] \$18 ; wire [78:0] \$20 ; wire [78:0] \$22 ; wire [78:0] \$24 ; wire [78:0] \$25 ; wire [78:0] \$27 ; wire [94:0] \$29 ; wire [63:0] \$3 ; wire [94:0] \$30 ; wire [94:0] \$32 ; wire [94:0] \$34 ; wire [70:0] \$36 ; wire [70:0] \$37 ; wire [7:0] \$39 ; wire [70:0] \$41 ; wire [70:0] \$5 ; wire [70:0] \$6 ; wire [70:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hfffffffffffffff9); assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hfffffffffffffff2); assign \$1 = ~ (* src = "attacks-qbb.py:160" *) 8'hff; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hfffffffffffffff2); assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hffffffffffffffe4); assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hfffffffffffffff9); assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:160" *) 8'hff; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hfffffffffffffff9); assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_king_fill_southwest" *) (* generator = "nMigen" *) module white_king_fill_southwest(empty, pieces); wire [63:0] \$1 ; wire [78:0] \$10 ; wire [78:0] \$12 ; wire [78:0] \$13 ; wire [78:0] \$15 ; wire [94:0] \$17 ; wire [94:0] \$18 ; wire [94:0] \$20 ; wire [94:0] \$22 ; wire [94:0] \$24 ; wire [94:0] \$25 ; wire [94:0] \$27 ; wire [126:0] \$29 ; wire [63:0] \$3 ; wire [126:0] \$30 ; wire [126:0] \$32 ; wire [126:0] \$34 ; wire [78:0] \$36 ; wire [78:0] \$37 ; wire [63:0] \$39 ; wire [78:0] \$41 ; wire [78:0] \$5 ; wire [78:0] \$6 ; wire [78:0] \$8 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) wire [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$10 = empty | (* src = "attacks-qbb.py:33" *) \$8 ; assign \$13 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hfffffffffffffff7); assign \$15 = pieces0 & (* src = "attacks-qbb.py:34" *) \$13 ; assign \$18 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hffffffffffffffee); assign \$1 = ~ (* src = "attacks-qbb.py:162" *) 64'h8080808080808080; assign \$20 = pieces1 & (* src = "attacks-qbb.py:35" *) \$18 ; assign \$22 = empty0 | (* src = "attacks-qbb.py:35" *) \$20 ; assign \$25 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hffffffffffffffee); assign \$27 = pieces1 & (* src = "attacks-qbb.py:36" *) \$25 ; assign \$30 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hffffffffffffffdc); assign \$32 = pieces2 & (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = empty1 | (* src = "attacks-qbb.py:37" *) \$32 ; assign \$37 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hfffffffffffffff7); assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$39 = ~ (* src = "attacks-qbb.py:162" *) 64'h8080808080808080; assign \$41 = \$37 & (* src = "attacks-qbb.py:38" *) \$39 ; assign \$6 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hfffffffffffffff7); assign \$8 = pieces0 & (* src = "attacks-qbb.py:33" *) \$6 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$5 [63:0]; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$12 [63:0]; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$17 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$24 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$29 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$36 [63:0]; end assign \$5 = \$10 ; assign \$12 = \$15 ; assign \$17 = \$22 ; assign \$24 = \$27 ; assign \$29 = \$34 ; assign \$36 = \$41 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_king_fill_west" *) (* generator = "nMigen" *) module white_king_fill_west(empty, \output , pieces); wire [63:0] \$1 ; wire [63:0] \$11 ; wire [63:0] \$13 ; wire [64:0] \$15 ; wire [64:0] \$16 ; wire [64:0] \$18 ; wire [64:0] \$20 ; wire [64:0] \$22 ; wire [64:0] \$23 ; wire [64:0] \$25 ; wire [66:0] \$27 ; wire [66:0] \$28 ; wire [63:0] \$3 ; wire [66:0] \$30 ; wire [66:0] \$32 ; wire [63:0] \$34 ; wire [63:0] \$36 ; wire [63:0] \$38 ; wire [63:0] \$5 ; wire [63:0] \$7 ; wire [63:0] \$9 ; (* src = "attacks-qbb.py:25" *) reg [63:0] \$next\empty0 ; (* src = "attacks-qbb.py:27" *) reg [63:0] \$next\empty1 ; (* src = "attacks-qbb.py:29" *) reg [63:0] \$next\empty2 ; (* src = "attacks-qbb.py:16" *) reg [63:0] \$next\output ; (* src = "attacks-qbb.py:24" *) reg [63:0] \$next\pieces0 ; (* src = "attacks-qbb.py:26" *) reg [63:0] \$next\pieces1 ; (* src = "attacks-qbb.py:28" *) reg [63:0] \$next\pieces2 ; (* src = "attacks-qbb.py:14" *) input [63:0] empty; (* src = "attacks-qbb.py:25" *) wire [63:0] empty0; (* src = "attacks-qbb.py:27" *) wire [63:0] empty1; (* src = "attacks-qbb.py:29" *) wire [63:0] empty2; (* src = "attacks-qbb.py:16" *) output [63:0] \output ; (* src = "attacks-qbb.py:15" *) input [63:0] pieces; (* src = "attacks-qbb.py:24" *) wire [63:0] pieces0; (* src = "attacks-qbb.py:26" *) wire [63:0] pieces1; (* src = "attacks-qbb.py:28" *) wire [63:0] pieces2; assign \$9 = empty | (* src = "attacks-qbb.py:33" *) \$7 ; assign \$11 = $signed(pieces0) <<< (* src = "attacks-qbb.py:34" *) $signed(64'hffffffffffffffff); assign \$13 = pieces0 & (* src = "attacks-qbb.py:34" *) \$11 ; assign \$16 = $signed(empty0) <<< (* src = "attacks-qbb.py:35" *) $signed(64'hfffffffffffffffe); assign \$18 = pieces1 & (* src = "attacks-qbb.py:35" *) \$16 ; assign \$1 = ~ (* src = "attacks-qbb.py:163" *) 64'h8080808080808080; assign \$20 = empty0 | (* src = "attacks-qbb.py:35" *) \$18 ; assign \$23 = $signed(pieces1) <<< (* src = "attacks-qbb.py:36" *) $signed(64'hfffffffffffffffe); assign \$25 = pieces1 & (* src = "attacks-qbb.py:36" *) \$23 ; assign \$28 = $signed(empty1) <<< (* src = "attacks-qbb.py:37" *) $signed(64'hfffffffffffffffc); assign \$30 = pieces2 & (* src = "attacks-qbb.py:37" *) \$28 ; assign \$32 = empty1 | (* src = "attacks-qbb.py:37" *) \$30 ; assign \$34 = $signed(empty2) <<< (* src = "attacks-qbb.py:38" *) $signed(64'hffffffffffffffff); assign \$36 = ~ (* src = "attacks-qbb.py:163" *) 64'h8080808080808080; assign \$38 = \$34 & (* src = "attacks-qbb.py:38" *) \$36 ; assign \$3 = pieces & (* src = "attacks-qbb.py:32" *) \$1 ; assign \$5 = $signed(empty) <<< (* src = "attacks-qbb.py:33" *) $signed(64'hffffffffffffffff); assign \$7 = pieces0 & (* src = "attacks-qbb.py:33" *) \$5 ; always @* begin \$next\pieces0 = 64'h0000000000000000; \$next\pieces0 = \$3 ; end always @* begin \$next\empty0 = 64'h0000000000000000; \$next\empty0 = \$9 ; end always @* begin \$next\pieces1 = 64'h0000000000000000; \$next\pieces1 = \$13 ; end always @* begin \$next\empty1 = 64'h0000000000000000; \$next\empty1 = \$15 [63:0]; end always @* begin \$next\pieces2 = 64'h0000000000000000; \$next\pieces2 = \$22 [63:0]; end always @* begin \$next\empty2 = 64'h0000000000000000; \$next\empty2 = \$27 [63:0]; end always @* begin \$next\output = 64'h0000000000000000; \$next\output = \$38 ; end assign \$15 = \$20 ; assign \$22 = \$25 ; assign \$27 = \$32 ; assign \output = \$next\output ; assign empty2 = \$next\empty2 ; assign pieces2 = \$next\pieces2 ; assign empty1 = \$next\empty1 ; assign pieces1 = \$next\pieces1 ; assign empty0 = \$next\empty0 ; assign pieces0 = \$next\pieces0 ; endmodule (* \nmigen.hierarchy = "top.white_king_knight_attacks" *) (* generator = "nMigen" *) module white_king_knight_attacks(nne, ene, ese, sse, ssw, wsw, wnw, nnw, knights); wire [94:0] \$1 ; wire [7:0] \$11 ; wire [78:0] \$13 ; wire [15:0] \$15 ; wire [78:0] \$17 ; wire [63:0] \$19 ; wire [94:0] \$2 ; wire [7:0] \$21 ; wire [63:0] \$23 ; wire [15:0] \$25 ; wire [63:0] \$27 ; wire [63:0] \$29 ; wire [7:0] \$31 ; wire [63:0] \$33 ; wire [63:0] \$35 ; wire [63:0] \$37 ; wire [63:0] \$39 ; wire [7:0] \$4 ; wire [63:0] \$41 ; wire [55:0] \$43 ; wire [63:0] \$45 ; wire [63:0] \$47 ; wire [63:0] \$49 ; wire [70:0] \$51 ; wire [70:0] \$52 ; wire [55:0] \$54 ; wire [70:0] \$56 ; wire [63:0] \$58 ; wire [94:0] \$6 ; wire [70:0] \$60 ; wire [78:0] \$62 ; wire [78:0] \$63 ; wire [63:0] \$65 ; wire [78:0] \$67 ; wire [78:0] \$8 ; wire [78:0] \$9 ; (* src = "attacks-qbb.py:49" *) reg [63:0] \$next\ene ; (* src = "attacks-qbb.py:50" *) reg [63:0] \$next\ese ; (* src = "attacks-qbb.py:48" *) reg [63:0] \$next\nne ; (* src = "attacks-qbb.py:55" *) reg [63:0] \$next\nnw ; (* src = "attacks-qbb.py:51" *) reg [63:0] \$next\sse ; (* src = "attacks-qbb.py:52" *) reg [63:0] \$next\ssw ; (* src = "attacks-qbb.py:54" *) reg [63:0] \$next\wnw ; (* src = "attacks-qbb.py:53" *) reg [63:0] \$next\wsw ; (* src = "attacks-qbb.py:49" *) output [63:0] ene; (* src = "attacks-qbb.py:50" *) output [63:0] ese; (* src = "attacks-qbb.py:46" *) input [63:0] knights; (* src = "attacks-qbb.py:48" *) output [63:0] nne; (* src = "attacks-qbb.py:55" *) output [63:0] nnw; (* src = "attacks-qbb.py:51" *) output [63:0] sse; (* src = "attacks-qbb.py:52" *) output [63:0] ssw; (* src = "attacks-qbb.py:54" *) output [63:0] wnw; (* src = "attacks-qbb.py:53" *) output [63:0] wsw; assign \$9 = knights <<< (* src = "attacks-qbb.py:62" *) 4'ha; assign \$11 = ~ (* src = "attacks-qbb.py:62" *) 8'hff; assign \$13 = \$9 & (* src = "attacks-qbb.py:62" *) \$11 ; assign \$15 = ~ (* src = "attacks-qbb.py:62" *) 16'haaaa; assign \$17 = \$13 & (* src = "attacks-qbb.py:62" *) \$15 ; assign \$19 = knights >>> (* src = "attacks-qbb.py:63" *) 3'h6; assign \$21 = ~ (* src = "attacks-qbb.py:63" *) 8'hff; assign \$23 = \$19 & (* src = "attacks-qbb.py:63" *) \$21 ; assign \$25 = ~ (* src = "attacks-qbb.py:63" *) 16'haaaa; assign \$27 = \$23 & (* src = "attacks-qbb.py:63" *) \$25 ; assign \$2 = knights <<< (* src = "attacks-qbb.py:61" *) 5'h11; assign \$29 = knights >>> (* src = "attacks-qbb.py:64" *) 4'hf; assign \$31 = ~ (* src = "attacks-qbb.py:64" *) 8'hff; assign \$33 = \$29 & (* src = "attacks-qbb.py:64" *) \$31 ; assign \$35 = knights >>> (* src = "attacks-qbb.py:65" *) 5'h11; assign \$37 = ~ (* src = "attacks-qbb.py:65" *) 64'h8080808080808080; assign \$39 = \$35 & (* src = "attacks-qbb.py:65" *) \$37 ; assign \$41 = knights >>> (* src = "attacks-qbb.py:66" *) 4'ha; assign \$43 = ~ (* src = "attacks-qbb.py:66" *) 56'h81020408102040; assign \$45 = \$41 & (* src = "attacks-qbb.py:66" *) \$43 ; assign \$47 = ~ (* src = "attacks-qbb.py:66" *) 64'h8080808080808080; assign \$4 = ~ (* src = "attacks-qbb.py:61" *) 8'hff; assign \$49 = \$45 & (* src = "attacks-qbb.py:66" *) \$47 ; assign \$52 = knights <<< (* src = "attacks-qbb.py:67" *) 3'h6; assign \$54 = ~ (* src = "attacks-qbb.py:67" *) 56'h81020408102040; assign \$56 = \$52 & (* src = "attacks-qbb.py:67" *) \$54 ; assign \$58 = ~ (* src = "attacks-qbb.py:67" *) 64'h8080808080808080; assign \$60 = \$56 & (* src = "attacks-qbb.py:67" *) \$58 ; assign \$63 = knights <<< (* src = "attacks-qbb.py:68" *) 4'hf; assign \$65 = ~ (* src = "attacks-qbb.py:68" *) 64'h8080808080808080; assign \$67 = \$63 & (* src = "attacks-qbb.py:68" *) \$65 ; assign \$6 = \$2 & (* src = "attacks-qbb.py:61" *) \$4 ; always @* begin \$next\nne = 64'h0000000000000000; \$next\nne = \$1 [63:0]; end always @* begin \$next\ene = 64'h0000000000000000; \$next\ene = \$8 [63:0]; end always @* begin \$next\ese = 64'h0000000000000000; \$next\ese = \$27 ; end always @* begin \$next\sse = 64'h0000000000000000; \$next\sse = \$33 ; end always @* begin \$next\ssw = 64'h0000000000000000; \$next\ssw = \$39 ; end always @* begin \$next\wsw = 64'h0000000000000000; \$next\wsw = \$49 ; end always @* begin \$next\wnw = 64'h0000000000000000; \$next\wnw = \$51 [63:0]; end always @* begin \$next\nnw = 64'h0000000000000000; \$next\nnw = \$62 [63:0]; end assign \$1 = \$6 ; assign \$8 = \$17 ; assign \$51 = \$60 ; assign \$62 = \$67 ; assign nnw = \$next\nnw ; assign wnw = \$next\wnw ; assign wsw = \$next\wsw ; assign ssw = \$next\ssw ; assign sse = \$next\sse ; assign ese = \$next\ese ; assign ene = \$next\ene ; assign nne = \$next\nne ; endmodule (* \nmigen.hierarchy = "top.white_king_pawn_attacks" *) (* generator = "nMigen" *) module white_king_pawn_attacks(ne, nw, pawns); (* src = "attacks-qbb.py:108" *) reg [63:0] \$next\ne ; (* src = "attacks-qbb.py:111" *) reg [63:0] \$next\nw ; (* src = "attacks-qbb.py:109" *) reg [63:0] \$next\se ; (* src = "attacks-qbb.py:76" *) reg [63:0] \$next\step_pieces ; (* src = "attacks-qbb.py:110" *) reg [63:0] \$next\sw ; (* src = "attacks-qbb.py:108" *) output [63:0] ne; (* src = "attacks-qbb.py:111" *) output [63:0] nw; (* src = "attacks-qbb.py:106" *) input [63:0] pawns; (* src = "attacks-qbb.py:109" *) wire [63:0] se; (* src = "attacks-qbb.py:79" *) wire [63:0] step_ne; (* src = "attacks-qbb.py:85" *) wire [63:0] step_nw; (* src = "attacks-qbb.py:76" *) wire [63:0] step_pieces; (* src = "attacks-qbb.py:81" *) wire [63:0] step_se; (* src = "attacks-qbb.py:83" *) wire [63:0] step_sw; (* src = "attacks-qbb.py:110" *) wire [63:0] sw; step step ( .ne(step_ne), .nw(step_nw), .pieces(step_pieces), .se(step_se), .sw(step_sw) ); always @* begin \$next\step_pieces = 64'h0000000000000000; \$next\step_pieces = pawns; end always @* begin \$next\ne = 64'h0000000000000000; \$next\ne = step_ne; end always @* begin \$next\se = 64'h0000000000000000; \$next\se = step_se; end always @* begin \$next\sw = 64'h0000000000000000; \$next\sw = step_sw; end always @* begin \$next\nw = 64'h0000000000000000; \$next\nw = step_nw; end assign nw = \$next\nw ; assign sw = \$next\sw ; assign se = \$next\se ; assign ne = \$next\ne ; assign step_pieces = \$next\step_pieces ; endmodule (* \nmigen.hierarchy = "top.white_knights" *) (* generator = "nMigen" *) module white_knights(knights); wire [94:0] \$1 ; wire [7:0] \$11 ; wire [78:0] \$13 ; wire [15:0] \$15 ; wire [78:0] \$17 ; wire [63:0] \$19 ; wire [94:0] \$2 ; wire [7:0] \$21 ; wire [63:0] \$23 ; wire [15:0] \$25 ; wire [63:0] \$27 ; wire [63:0] \$29 ; wire [7:0] \$31 ; wire [63:0] \$33 ; wire [63:0] \$35 ; wire [63:0] \$37 ; wire [63:0] \$39 ; wire [7:0] \$4 ; wire [63:0] \$41 ; wire [55:0] \$43 ; wire [63:0] \$45 ; wire [63:0] \$47 ; wire [63:0] \$49 ; wire [70:0] \$51 ; wire [70:0] \$52 ; wire [55:0] \$54 ; wire [70:0] \$56 ; wire [63:0] \$58 ; wire [94:0] \$6 ; wire [70:0] \$60 ; wire [78:0] \$62 ; wire [78:0] \$63 ; wire [63:0] \$65 ; wire [78:0] \$67 ; wire [78:0] \$8 ; wire [78:0] \$9 ; (* src = "attacks-qbb.py:49" *) reg [63:0] \$next\ene ; (* src = "attacks-qbb.py:50" *) reg [63:0] \$next\ese ; (* src = "attacks-qbb.py:48" *) reg [63:0] \$next\nne ; (* src = "attacks-qbb.py:55" *) reg [63:0] \$next\nnw ; (* src = "attacks-qbb.py:51" *) reg [63:0] \$next\sse ; (* src = "attacks-qbb.py:52" *) reg [63:0] \$next\ssw ; (* src = "attacks-qbb.py:54" *) reg [63:0] \$next\wnw ; (* src = "attacks-qbb.py:53" *) reg [63:0] \$next\wsw ; (* src = "attacks-qbb.py:49" *) wire [63:0] ene; (* src = "attacks-qbb.py:50" *) wire [63:0] ese; (* src = "attacks-qbb.py:46" *) input [63:0] knights; (* src = "attacks-qbb.py:48" *) wire [63:0] nne; (* src = "attacks-qbb.py:55" *) wire [63:0] nnw; (* src = "attacks-qbb.py:51" *) wire [63:0] sse; (* src = "attacks-qbb.py:52" *) wire [63:0] ssw; (* src = "attacks-qbb.py:54" *) wire [63:0] wnw; (* src = "attacks-qbb.py:53" *) wire [63:0] wsw; assign \$9 = knights <<< (* src = "attacks-qbb.py:62" *) 4'ha; assign \$11 = ~ (* src = "attacks-qbb.py:62" *) 8'hff; assign \$13 = \$9 & (* src = "attacks-qbb.py:62" *) \$11 ; assign \$15 = ~ (* src = "attacks-qbb.py:62" *) 16'haaaa; assign \$17 = \$13 & (* src = "attacks-qbb.py:62" *) \$15 ; assign \$19 = knights >>> (* src = "attacks-qbb.py:63" *) 3'h6; assign \$21 = ~ (* src = "attacks-qbb.py:63" *) 8'hff; assign \$23 = \$19 & (* src = "attacks-qbb.py:63" *) \$21 ; assign \$25 = ~ (* src = "attacks-qbb.py:63" *) 16'haaaa; assign \$27 = \$23 & (* src = "attacks-qbb.py:63" *) \$25 ; assign \$2 = knights <<< (* src = "attacks-qbb.py:61" *) 5'h11; assign \$29 = knights >>> (* src = "attacks-qbb.py:64" *) 4'hf; assign \$31 = ~ (* src = "attacks-qbb.py:64" *) 8'hff; assign \$33 = \$29 & (* src = "attacks-qbb.py:64" *) \$31 ; assign \$35 = knights >>> (* src = "attacks-qbb.py:65" *) 5'h11; assign \$37 = ~ (* src = "attacks-qbb.py:65" *) 64'h8080808080808080; assign \$39 = \$35 & (* src = "attacks-qbb.py:65" *) \$37 ; assign \$41 = knights >>> (* src = "attacks-qbb.py:66" *) 4'ha; assign \$43 = ~ (* src = "attacks-qbb.py:66" *) 56'h81020408102040; assign \$45 = \$41 & (* src = "attacks-qbb.py:66" *) \$43 ; assign \$47 = ~ (* src = "attacks-qbb.py:66" *) 64'h8080808080808080; assign \$4 = ~ (* src = "attacks-qbb.py:61" *) 8'hff; assign \$49 = \$45 & (* src = "attacks-qbb.py:66" *) \$47 ; assign \$52 = knights <<< (* src = "attacks-qbb.py:67" *) 3'h6; assign \$54 = ~ (* src = "attacks-qbb.py:67" *) 56'h81020408102040; assign \$56 = \$52 & (* src = "attacks-qbb.py:67" *) \$54 ; assign \$58 = ~ (* src = "attacks-qbb.py:67" *) 64'h8080808080808080; assign \$60 = \$56 & (* src = "attacks-qbb.py:67" *) \$58 ; assign \$63 = knights <<< (* src = "attacks-qbb.py:68" *) 4'hf; assign \$65 = ~ (* src = "attacks-qbb.py:68" *) 64'h8080808080808080; assign \$67 = \$63 & (* src = "attacks-qbb.py:68" *) \$65 ; assign \$6 = \$2 & (* src = "attacks-qbb.py:61" *) \$4 ; always @* begin \$next\nne = 64'h0000000000000000; \$next\nne = \$1 [63:0]; end always @* begin \$next\ene = 64'h0000000000000000; \$next\ene = \$8 [63:0]; end always @* begin \$next\ese = 64'h0000000000000000; \$next\ese = \$27 ; end always @* begin \$next\sse = 64'h0000000000000000; \$next\sse = \$33 ; end always @* begin \$next\ssw = 64'h0000000000000000; \$next\ssw = \$39 ; end always @* begin \$next\wsw = 64'h0000000000000000; \$next\wsw = \$49 ; end always @* begin \$next\wnw = 64'h0000000000000000; \$next\wnw = \$51 [63:0]; end always @* begin \$next\nnw = 64'h0000000000000000; \$next\nnw = \$62 [63:0]; end assign \$1 = \$6 ; assign \$8 = \$17 ; assign \$51 = \$60 ; assign \$62 = \$67 ; assign nnw = \$next\nnw ; assign wnw = \$next\wnw ; assign wsw = \$next\wsw ; assign ssw = \$next\ssw ; assign sse = \$next\sse ; assign ese = \$next\ese ; assign ene = \$next\ene ; assign nne = \$next\nne ; endmodule