bioshogi 0.0.12 → 0.0.14

Sign up to get free protection for your applications and to get access to all the features.
Files changed (605) hide show
  1. checksums.yaml +4 -4
  2. data/A/342/206/222B/342/206/222C/345/233/262/343/201/204.txt +14 -0
  3. data/A/342/206/222B/342/206/222C/346/210/246/346/263/225.txt +96 -0
  4. data/Gemfile.lock +18 -16
  5. data/README.org +3 -3
  6. data/bioshogi.gemspec +2 -2
  7. data/lib/bioshogi/ai/brain.rb +0 -1
  8. data/lib/bioshogi/ai/versus.rb +1 -1
  9. data/lib/bioshogi/{explain/skill_monitor.rb → analysis/analyzer.rb} +88 -35
  10. data/lib/bioshogi/{explain/monitor_mod.rb → analysis/analyzer_mod.rb} +31 -13
  11. data/lib/bioshogi/analysis/attack_info.rb +312 -0
  12. data/lib/bioshogi/{explain → analysis}/board_piller_methods.rb +1 -1
  13. data/lib/bioshogi/{explain → analysis}/chaos_info.rb +1 -1
  14. data/lib/bioshogi/analysis/defense_info.rb +178 -0
  15. data/lib/bioshogi/analysis/file_normalizer.rb +54 -0
  16. data/lib/bioshogi/analysis/frequency.rb +319 -0
  17. data/lib/bioshogi/{explain → analysis}/group_info.rb +1 -1
  18. data/lib/bioshogi/analysis/note_info.rb +100 -0
  19. data/lib/bioshogi/analysis/rocket_analyzer.rb +117 -0
  20. data/lib/bioshogi/{explain → analysis}/sect_info.rb +1 -1
  21. data/lib/bioshogi/{explain → analysis}/shape_info.rb +1457 -514
  22. data/lib/bioshogi/{explain → analysis}/shape_info_relation.rb +2 -2
  23. data/lib/bioshogi/{explain → analysis}/skill_set.rb +8 -3
  24. data/lib/bioshogi/analysis/style_accessor.rb +45 -0
  25. data/lib/bioshogi/analysis/style_info.rb +15 -0
  26. data/lib/bioshogi/analysis/tactic_hit_turn_table.rb +408 -0
  27. data/lib/bioshogi/{explain → analysis}/tactic_hit_turn_table_generator.rb +23 -22
  28. data/lib/bioshogi/{explain → analysis}/tactic_info.rb +55 -32
  29. data/lib/bioshogi/analysis/tactic_stat.rb +14 -0
  30. data/lib/bioshogi/analysis/tactic_validator.rb +60 -0
  31. data/lib/bioshogi/{explain → analysis}/tech_accessor.rb +30 -15
  32. data/lib/bioshogi/analysis/technique_info.rb +63 -0
  33. data/lib/bioshogi/analysis/technique_matcher_helper.rb +8 -0
  34. data/lib/bioshogi/analysis/technique_matcher_info.rb +810 -0
  35. data/lib/bioshogi/{explain//346/211/213/347/255/213 → analysis//345/202/231/350/200/203}//343/203/255/343/202/261/343/203/203/343/203/210.kif +8 -11
  36. data/lib/bioshogi/{explain → analysis}//345/202/231/350/200/203//345/205/245/347/216/211.kif +6 -4
  37. data/lib/bioshogi/analysis//345/202/231/350/200/203//345/220/215/344/272/272/343/201/253/345/256/232/350/267/241/343/201/252/343/201/227.kif +96 -0
  38. data/lib/bioshogi/analysis//345/202/231/350/200/203//345/244/247/351/247/222/343/202/263/343/203/263/343/203/227/343/203/252/343/203/274/343/203/210.kif +155 -0
  39. data/lib/bioshogi/analysis//345/202/231/350/200/203//345/244/247/351/247/222/345/205/250/343/203/226/343/203/203/343/203/201.kif +76 -0
  40. data/lib/bioshogi/analysis//345/202/231/350/200/203//345/257/276/345/261/205/351/243/233/350/273/212.kif +10 -0
  41. data/lib/bioshogi/analysis//345/202/231/350/200/203//345/257/276/346/212/227/345/275/242.kif +11 -0
  42. data/lib/bioshogi/analysis//345/202/231/350/200/203//345/257/276/346/214/257/343/202/212/351/243/233/350/273/212.kif +11 -0
  43. data/lib/bioshogi/analysis//345/202/231/350/200/203//345/257/276/347/251/264/347/206/212.kif +121 -0
  44. data/lib/bioshogi/{explain → analysis}//345/202/231/350/200/203//345/261/205/351/243/233/350/273/212.kif +2 -4
  45. data/lib/bioshogi/analysis//345/202/231/350/200/203//346/200/245/346/210/246.kif +54 -0
  46. data/lib/bioshogi/analysis//345/202/231/350/200/203//346/211/213/345/276/227/350/247/222/344/272/244/346/217/233/345/236/213.kif +15 -0
  47. data/lib/bioshogi/analysis//345/202/231/350/200/203//346/211/213/346/220/215/350/247/222/344/272/244/346/217/233/345/236/213.kif +10 -0
  48. data/lib/bioshogi/analysis//345/202/231/350/200/203//346/214/201/344/271/205/346/210/246.kif +162 -0
  49. data/lib/bioshogi/analysis//345/202/231/350/200/203//346/214/257/343/202/212/351/243/233/350/273/212.kif +11 -0
  50. data/lib/bioshogi/{explain → analysis}//345/202/231/350/200/203//347/233/270/345/205/245/347/216/211.kif +3 -3
  51. data/lib/bioshogi/{explain → analysis}//345/202/231/350/200/203//347/233/270/345/261/205/347/216/211.kif +7 -5
  52. data/lib/bioshogi/analysis//345/202/231/350/200/203//347/233/270/345/261/205/351/243/233/350/273/212.kif +32 -0
  53. data/lib/bioshogi/analysis//345/202/231/350/200/203//347/233/270/346/214/257/343/202/212/351/243/233/350/273/212.kif +16 -0
  54. data/lib/bioshogi/analysis//345/202/231/350/200/203//347/233/270/347/251/264/347/206/212.kif +87 -0
  55. data/lib/bioshogi/analysis//345/202/231/350/200/203//347/237/242/345/200/211/346/226/26024/346/211/213/347/265/204.kif +39 -0
  56. data/lib/bioshogi/analysis//345/202/231/350/200/203//347/237/242/345/200/211/346/227/24724/346/211/213/347/265/204.kif +39 -0
  57. data/lib/bioshogi/analysis//345/202/231/350/200/203//347/237/255/346/211/213/346/225/260.kif +29 -0
  58. data/lib/bioshogi/analysis//345/202/231/350/200/203//347/251/264/347/206/212.kif +121 -0
  59. data/lib/bioshogi/analysis//345/202/231/350/200/203//347/251/264/347/206/212/343/201/256/345/247/277/347/204/274/343/201/215.kif +121 -0
  60. data/lib/bioshogi/analysis//345/202/231/350/200/203//350/203/214/346/260/264/343/201/256/351/231/243.kif +150 -0
  61. data/lib/bioshogi/analysis//345/202/231/350/200/203//350/247/222/344/270/215/346/210/220.kif +23 -0
  62. data/lib/bioshogi/analysis//345/202/231/350/200/203//350/247/222/344/272/244/346/217/233/345/236/213.kif +17 -0
  63. data/lib/bioshogi/analysis//345/202/231/350/200/203//351/203/275/350/251/260/343/202/201.kif +90 -0
  64. data/lib/bioshogi/analysis//345/202/231/350/200/203//351/225/267/346/211/213/346/225/260.kif +356 -0
  65. data/lib/bioshogi/{explain → analysis}//345/202/231/350/200/203//351/243/233/350/273/212/344/270/215/346/210/220.kif +2 -4
  66. data/lib/bioshogi/analysis//345/202/231/350/200/203//351/247/222/346/237/261.kif +191 -0
  67. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/201/202/343/201/232/343/201/276/343/202/204/345/233/262/343/201/204.kif +9 -5
  68. data/lib/bioshogi/analysis//345/233/262/343/201/204//343/201/204/343/201/213/343/201/240/345/233/262/343/201/204.kif +43 -0
  69. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/201/204/343/201/241/343/201/224/345/233/262/343/201/204.kif +10 -8
  70. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/201/213/343/202/223/343/201/264/343/202/207/343/201/206/345/233/262/343/201/204.kif +17 -10
  71. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/201/232/343/202/214/347/276/216/346/277/203.kif +6 -6
  72. data/lib/bioshogi/analysis//345/233/262/343/201/204//343/201/241/343/202/207/343/202/223/343/201/276/343/201/222/347/276/216/346/277/203.kif +42 -0
  73. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/201/270/343/201/223/343/201/277/347/237/242/345/200/211.kif +7 -7
  74. data/lib/bioshogi/analysis//345/233/262/343/201/204//343/202/242/343/203/222/343/203/253/345/233/262/343/201/204.kif +110 -0
  75. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/202/250/343/203/253/343/203/242/345/233/262/343/201/204.kif +6 -4
  76. data/lib/bioshogi/analysis//345/233/262/343/201/204//343/202/252/343/203/252/343/202/270/343/203/212/343/203/253/351/233/201/346/234/250.kif +119 -0
  77. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/202/252/343/203/274/343/203/253/343/203/211/351/233/201/346/234/250.kif +7 -5
  78. data/lib/bioshogi/analysis//345/233/262/343/201/204//343/202/253/343/202/256/345/233/262/343/201/204.kif +178 -0
  79. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/202/253/343/202/277/345/233/262/343/201/204.kif +12 -10
  80. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/202/253/343/203/213/345/233/262/343/201/204.kif +8 -5
  81. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/202/253/343/203/213/347/274/266/345/233/262/343/201/204.kif +3 -3
  82. data/lib/bioshogi/analysis//345/233/262/343/201/204//343/202/253/343/203/226/343/203/210/345/233/262/343/201/204.kif +32 -0
  83. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/202/253/343/203/226/343/203/210/347/276/216/346/277/203.kif +9 -6
  84. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/202/273/343/203/241/343/203/263/343/203/210/345/233/262/343/201/204.kif +13 -6
  85. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/203/200/343/202/244/343/203/244/343/203/242/343/203/263/343/203/211/347/276/216/346/277/203.kif +7 -7
  86. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/203/201/343/203/247/343/202/263/343/203/254/343/203/274/343/203/210/345/233/262/343/201/204.kif +9 -8
  87. data/lib/bioshogi/analysis//345/233/262/343/201/204//343/203/204/343/203/216/351/212/200/345/233/262/343/201/204.kif +48 -0
  88. data/lib/bioshogi/analysis//345/233/262/343/201/204//343/203/204/343/203/216/351/212/200/351/233/201/346/234/250.kif +117 -0
  89. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/203/223/343/203/203/343/202/2604.kif +16 -10
  90. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/203/234/343/203/212/343/203/263/343/202/266/345/233/262/343/201/204.kif +12 -10
  91. data/lib/bioshogi/analysis//345/233/262/343/201/204//343/203/237/343/203/254/343/203/213/343/202/242/343/203/240/345/233/262/343/201/204.kif +166 -0
  92. data/lib/bioshogi/analysis//345/233/262/343/201/204//343/203/240/343/203/252/343/203/244/343/203/252/347/237/242/345/200/211.kif +45 -0
  93. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/203/242/343/203/216/343/203/254/343/203/274/343/203/253/345/233/262/343/201/204.kif +6 -3
  94. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//344/270/200/346/226/207/345/255/227/347/237/242/345/200/211.kif +5 -4
  95. data/lib/bioshogi/analysis//345/233/262/343/201/204//344/270/255/344/275/217/343/201/276/343/201/204.kif +123 -0
  96. data/lib/bioshogi/analysis//345/233/262/343/201/204//344/270/255/345/216/237/345/233/262/343/201/204.kif +34 -0
  97. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//344/270/262/343/202/253/343/203/204/345/233/262/343/201/204.kif +10 -10
  98. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/215/207/347/224/260/347/276/216/346/277/203.kif +5 -3
  99. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/217/263/347/237/242/345/200/211.kif +11 -7
  100. data/lib/bioshogi/analysis//345/233/262/343/201/204//345/233/233/346/236/232/347/251/264/347/206/212.kif +66 -0
  101. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/233/233/346/236/232/347/276/216/346/277/203.kif +12 -10
  102. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/233/233/346/236/232/351/212/200/345/206/240.kif +16 -8
  103. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/233/233/346/256/265/347/253/257/347/216/211.kif +12 -6
  104. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/233/233/346/256/265/347/253/257/347/216/2112.kif +1 -3
  105. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/233/233/350/247/222/347/237/242/345/200/211.kif +10 -7
  106. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/234/237/345/261/205/347/237/242/345/200/211.kif +7 -5
  107. data/lib/bioshogi/analysis//345/233/262/343/201/204//345/235/212/344/270/273/347/276/216/346/277/203.kif +48 -0
  108. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/244/247/345/261/261/347/276/216/346/277/203.kif +9 -7
  109. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/244/247/347/233/276/345/233/262/343/201/204.kif +6 -5
  110. data/lib/bioshogi/analysis//345/233/262/343/201/204//345/244/247/351/232/205/345/233/262/343/201/204.kif +23 -0
  111. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/244/251/345/256/210/351/226/243/345/233/262/343/201/204.kif +7 -5
  112. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/244/251/345/256/210/351/226/243/347/276/216/346/277/203.kif +10 -9
  113. data/lib/bioshogi/analysis//345/233/262/343/201/204//345/244/251/351/207/216/347/237/242/345/200/211.kif +40 -0
  114. data/lib/bioshogi/analysis//345/233/262/343/201/204//345/257/214/345/243/253/350/246/213/347/237/242/345/200/211.kif +154 -0
  115. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/261/205/347/216/211.kif +10 -6
  116. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/261/205/351/243/233/347/251/264/351/237/263/347/204/241/343/201/227/343/201/256/346/247/213/343/201/210.kif +9 -21
  117. data/lib/bioshogi/analysis//345/233/262/343/201/204//345/261/205/351/243/233/350/273/212/347/251/264/347/206/212.kif +56 -0
  118. data/lib/bioshogi/analysis//345/233/262/343/201/204//345/261/205/351/243/233/350/273/212/351/207/221/345/206/240.kif +136 -0
  119. data/lib/bioshogi/analysis//345/233/262/343/201/204//345/261/205/351/243/233/350/273/212/351/207/221/347/204/241/345/217/214.kif +51 -0
  120. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/261/205/351/243/233/350/273/212/351/207/221/347/276/216/346/277/203.kif +8 -8
  121. data/lib/bioshogi/analysis//345/233/262/343/201/204//345/261/205/351/243/233/350/273/212/351/212/200/345/206/240.kif +57 -0
  122. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/267/246/345/261/261/345/233/262/343/201/204.kif +6 -4
  123. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/267/246/347/276/216/346/277/203.kif +7 -7
  124. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/202/252/345/275/242/347/237/242/345/200/211.kif +5 -3
  125. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/343/202/250/343/203/253/343/203/242.kif +7 -5
  126. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/343/203/223/343/203/203/343/202/2604.kif +12 -9
  127. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/343/203/237/343/203/254/343/203/213/343/202/242/343/203/240.kif +14 -11
  128. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/344/270/262/343/202/253/343/203/204/345/233/262/343/201/204.kif +7 -5
  129. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/345/233/233/346/236/232/347/276/216/346/277/203.kif +12 -7
  130. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/345/244/251/345/256/210/351/226/243/347/276/216/346/277/203.kif +7 -6
  131. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/347/251/264/347/206/212.kif +8 -8
  132. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/347/253/257/347/216/211/351/212/200/345/206/240.kif +6 -6
  133. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/351/212/200/345/206/240/347/251/264/347/206/212.kif +10 -9
  134. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/226/207/351/216/256/345/233/262/343/201/204.kif +10 -6
  135. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/226/260/345/236/213/351/233/201/346/234/250.kif +6 -4
  136. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/227/251/345/233/262/343/201/204.kif +5 -5
  137. data/lib/bioshogi/analysis//345/233/262/343/201/204//346/234/250/346/235/221/347/276/216/346/277/203.kif +53 -0
  138. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/235/276/345/260/276/346/265/201/347/251/264/347/206/212.kif +12 -9
  139. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/241/220/345/261/261/346/265/201/344/270/255/345/216/237/345/233/262/343/201/204.kif +8 -5
  140. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/265/201/343/202/214/347/237/242/345/200/211.kif +10 -6
  141. data/lib/bioshogi/analysis//345/233/262/343/201/204//346/265/201/347/267/232/347/237/242/345/200/211.kif +65 -0
  142. data/lib/bioshogi/analysis//345/233/262/343/201/204//347/204/241/346/225/265/345/233/262/343/201/204.kif +20 -0
  143. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//347/204/241/350/262/254/344/273/273/347/237/242/345/200/211.kif +6 -5
  144. data/lib/bioshogi/analysis//345/233/262/343/201/204//347/211/207/343/203/204/343/203/216/351/212/200/345/233/262/343/201/204.kif +50 -0
  145. data/lib/bioshogi/analysis//345/233/262/343/201/204//347/211/207/347/251/264/347/206/212.kif +51 -0
  146. data/lib/bioshogi/analysis//345/233/262/343/201/204//347/211/207/347/276/216/346/277/203/345/233/262/343/201/204.kif +34 -0
  147. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//347/211/207/351/212/200/345/206/240.kif +9 -8
  148. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//347/237/242/345/200/211/346/227/251/345/233/262/343/201/204.kif +9 -6
  149. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//347/237/242/345/200/211/347/251/264/347/206/212.kif +9 -7
  150. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//347/245/236/345/220/211/346/265/201/347/251/264/347/206/212.kif +10 -8
  151. data/lib/bioshogi/analysis//345/233/262/343/201/204//347/251/272/344/270/255/346/245/274/351/226/243.kif +59 -0
  152. data/lib/bioshogi/analysis//345/233/262/343/201/204//347/253/257/347/216/211/351/212/200/345/206/240.kif +63 -0
  153. data/lib/bioshogi/analysis//345/233/262/343/201/204//347/256/261/345/205/245/343/202/212/345/250/230.kif +49 -0
  154. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//347/264/231/347/251/264/347/206/212.kif +12 -9
  155. data/lib/bioshogi/analysis//345/233/262/343/201/204//347/267/217/347/237/242/345/200/211.kif +139 -0
  156. data/lib/bioshogi/analysis//345/233/262/343/201/204//347/276/216/346/277/203/345/233/262/343/201/204.kif +37 -0
  157. data/lib/bioshogi/analysis//345/233/262/343/201/204//347/276/216/346/277/203/347/206/212/345/233/262/343/201/204.kif +52 -0
  158. data/lib/bioshogi/analysis//345/233/262/343/201/204//350/210/237/345/233/262/343/201/204.kif +31 -0
  159. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/210/237/345/233/262/343/201/204DX.kif +9 -5
  160. data/lib/bioshogi/analysis//345/233/262/343/201/204//350/217/212/346/260/264/347/237/242/345/200/211.kif +63 -0
  161. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/217/261/347/237/242/345/200/211.kif +10 -6
  162. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/243/217/343/202/242/343/203/222/343/203/253/345/233/262/343/201/204.kif +8 -6
  163. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/243/276/345/233/272/343/202/201.kif +8 -6
  164. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/247/222/347/237/242/345/200/211.kif +6 -6
  165. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/247/222/351/201/223/344/270/215/347/252/201/343/201/215/345/267/246/347/276/216/346/277/203.kif +6 -4
  166. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/261/206/350/205/220/347/237/242/345/200/211.kif +11 -9
  167. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/200/243/347/233/237/347/276/216/346/277/203.kif +7 -5
  168. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/207/221/345/244/232/344/274/235.kif +4 -1
  169. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/207/221/347/204/241/345/217/214.kif +16 -8
  170. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/207/221/347/233/276/345/233/262/343/201/204.kif +7 -5
  171. data/lib/bioshogi/analysis//345/233/262/343/201/204//351/207/221/347/237/242/345/200/211.kif +50 -0
  172. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/207/221/347/276/216/346/277/203.kif +12 -8
  173. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/207/221/351/226/200/347/237/242/345/200/211.kif +8 -6
  174. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/212/200/345/206/240.kif +10 -8
  175. data/lib/bioshogi/analysis//345/233/262/343/201/204//351/212/200/345/206/240/347/251/264/347/206/212.kif +93 -0
  176. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/212/200/345/244/232/344/274/235.kif +7 -4
  177. data/lib/bioshogi/analysis//345/233/262/343/201/204//351/212/200/347/237/242/345/200/211.kif +46 -0
  178. data/lib/bioshogi/analysis//345/233/262/343/201/204//351/212/200/347/253/213/343/201/241/347/237/242/345/200/211.kif +52 -0
  179. data/lib/bioshogi/analysis//345/233/262/343/201/204//351/212/200/347/276/216/346/277/203.kif +52 -0
  180. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/232/205/347/237/242/345/200/211.kif +8 -8
  181. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/233/242/343/202/214/351/207/221/347/204/241/345/217/214.kif +8 -8
  182. data/lib/bioshogi/analysis//345/233/262/343/201/204//351/233/262/351/232/240/343/202/214/347/216/211.kif +42 -0
  183. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/253/230/347/237/242/345/200/211.kif +9 -7
  184. data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/253/230/347/276/216/346/277/203/345/233/262/343/201/204.kif +9 -8
  185. data/lib/bioshogi/{explain//346/210/246/345/236/213/2/346/211/213/347/233/256/342/226/263/357/274/223 → analysis//346/210/246/346/263/225/2/346/211/213/347/233/256/342/226/2633}/343/203/213/351/243/233/346/210/246/346/263/225.kif +15 -9
  186. data/lib/bioshogi/analysis//346/210/246/346/263/225/2/346/211/213/347/233/256/342/226/2633/344/272/214/351/212/200/343/202/267/343/202/271/343/203/206/343/203/240.kif +10 -0
  187. data/lib/bioshogi/analysis//346/210/246/346/263/225/2/346/211/213/347/233/256/342/226/2636/344/272/214/351/212/200/346/210/246/346/263/225.kif +10 -0
  188. data/lib/bioshogi/analysis//346/210/246/346/263/225/2/346/211/213/347/233/256/342/226/2637/345/233/233/346/255/251/346/210/246/346/263/225.kif +9 -0
  189. data/lib/bioshogi/analysis//346/210/246/346/263/225/3/342/206/2224/342/206/2223/346/210/246/346/263/225.kif +25 -0
  190. data/lib/bioshogi/{explain//346/210/246/345/236/213/4/346/211/213/347/233/256/342/226/263/357/274/223 → analysis//346/210/246/346/263/225/4/346/211/213/347/233/256/342/226/2633}/344/270/211/350/247/222/346/210/246/346/263/225.kif +5 -4
  191. data/lib/bioshogi/analysis//346/210/246/346/263/225/5/346/211/213/347/210/206/345/274/276.kif +42 -0
  192. data/lib/bioshogi/analysis//346/210/246/346/263/225/5/347/255/213/344/275/215/345/217/226/343/202/212.kif +48 -0
  193. data/lib/bioshogi/analysis//346/210/246/346/263/225/5/347/255/213/344/275/215/345/217/226/343/202/212/344/270/255/351/243/233/350/273/212.kif +17 -0
  194. data/lib/bioshogi/{explain//346/210/246/345/236/213//357/274/226 → analysis//346/210/246/346/263/225/6}/347/255/213/344/275/215/345/217/226/343/202/212.kif +12 -8
  195. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}/GAVA/350/247/222.kif +10 -6
  196. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}/UFO/351/212/200.kif +9 -7
  197. data/lib/bioshogi/analysis//346/210/246/346/263/225/U/343/202/277/343/203/274/343/203/263/351/243/233/350/273/212.kif +124 -0
  198. data/lib/bioshogi/analysis//346/210/246/346/263/225/xaby/350/247/222/346/210/246/346/263/225.kif +17 -0
  199. data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/262/357/274/224 → analysis//346/210/246/346/263/225//342/226/2624}/344/272/224/346/255/251/346/227/251/344/273/225/346/216/233/343/201/221.kif +9 -7
  200. data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/262/357/274/224 → analysis//346/210/246/346/263/225//342/226/2624}/345/205/255/351/212/200/345/217/263/346/200/245/346/210/246.kif +9 -8
  201. data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/262/357/274/224 → analysis//346/210/246/346/263/225//342/226/2624}/345/205/255/351/212/200/345/267/246/346/200/245/346/210/246.kif +9 -7
  202. data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/262/357/274/225 → analysis//346/210/246/346/263/225//342/226/2625}/344/270/203/351/207/221/346/210/246/346/263/225.kif +13 -9
  203. data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/262/357/274/225 → analysis//346/210/246/346/263/225//342/226/2625}/344/272/224/351/276/215/344/270/255/351/243/233/350/273/212.kif +9 -7
  204. data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/263/357/274/222 → analysis//346/210/246/346/263/225//342/226/2632}/344/270/211/346/255/251/346/210/246/346/263/225.kif +8 -6
  205. data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/263/357/274/223 → analysis//346/210/246/346/263/225//342/226/2633}/344/270/211/346/241/202/346/210/246/346/263/225.kif +8 -6
  206. data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/263/357/274/223 → analysis//346/210/246/346/263/225//342/226/2633}/344/270/211/350/247/222/345/236/213/347/251/272/344/270/255/346/210/246/346/263/225.kif +10 -6
  207. data/lib/bioshogi/{explain//346/210/246/345/236/213/33 → analysis//346/210/246/346/263/225//342/226/2633/344/270/211}/351/207/221/345/236/213/346/227/251/347/271/260/343/202/212/351/212/200.kif +9 -7
  208. data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/263/357/274/223 → analysis//346/210/246/346/263/225//342/226/2633}/344/270/211/351/243/233/346/210/246/346/263/225.kif +16 -11
  209. data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/263/357/274/224 → analysis//346/210/246/346/263/225//342/226/2634}/344/272/224/350/247/222/346/210/246/346/263/225.kif +8 -6
  210. data/lib/bioshogi/analysis//346/210/246/346/263/225//342/226/2637/344/272/214/351/243/233/344/272/234/346/200/245/346/210/246.kif +94 -0
  211. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/201/206/343/201/243/343/201/213/343/202/212/344/270/211/351/226/223/351/243/233/350/273/212.kif +5 -6
  212. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/201/215/343/202/223/343/201/250/343/201/206/343/202/223/346/210/246/346/263/225.kif +7 -5
  213. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/201/215/357/275/215/343/201/215/357/275/215/351/207/221.kif +8 -8
  214. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/201/244/343/201/217/343/201/244/343/201/217/343/201/274/343/201/206/343/201/227/346/210/246/346/263/225.kif +7 -5
  215. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/201/257/343/201/217/345/274/217/345/233/233/351/226/223/351/243/233/350/273/212.kif +176 -0
  216. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/201/262/343/201/255/343/202/212/351/243/233/350/273/212.kif +8 -6
  217. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/201/270/343/201/252/343/201/241/343/202/207/343/201/223/346/200/245/346/210/246.kif +118 -0
  218. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/204/343/201/260/343/203/234/343/203/274/343/202/272/346/265/201.kif +93 -0
  219. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/242/343/203/222/343/203/253/346/210/246/346/263/225.kif +110 -0
  220. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/202/246/343/202/275/347/237/242/345/200/211.kif +5 -4
  221. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/250/343/203/253/343/203/242/346/200/245/346/210/246.kif +140 -0
  222. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/202/252/343/202/266/343/203/257/343/202/267/343/202/271/343/203/206/343/203/240.kif +12 -9
  223. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/202/253/343/203/213/343/202/253/343/203/213/351/207/221.kif +9 -7
  224. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/253/343/203/213/343/202/253/343/203/213/351/212/200.kif +39 -0
  225. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/202/253/343/203/241/343/203/254/343/202/252/343/203/263/346/210/246/346/263/225.kif +8 -6
  226. data/lib/bioshogi/{explain//346/210/246/345/236/213//344/270/255/347/224/260/345/212/237XP.kif → analysis//346/210/246/346/263/225//343/202/263/343/203/274/343/203/244/343/203/263/346/265/201/344/270/211/351/226/223/351/243/233/350/273/212.kif} +11 -7
  227. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/264/343/202/255/343/202/262/343/203/263/344/270/255/351/243/233/350/273/212.kif +113 -0
  228. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/264/343/203/252/343/202/264/343/203/252/351/207/221.kif +55 -0
  229. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/264/343/203/252/343/203/251/343/201/256/345/217/263/346/211/213.kif +127 -0
  230. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/202/267/343/203/247/343/203/274/343/203/200/343/203/263/343/202/252/343/203/252/343/202/270/343/203/212/343/203/253.kif +18 -5
  231. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/202/267/343/203/247/343/203/274/343/203/200/343/203/263/343/202/267/343/202/271/343/203/206/343/203/240.kif +20 -10
  232. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/202/277/343/203/251/343/203/263/343/203/201/343/203/245/343/203/251/346/210/246/346/263/225.kif +10 -7
  233. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/203/200/343/202/244/343/203/254/343/202/257/343/203/210/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +10 -7
  234. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/204/343/203/216/351/212/200/344/270/255/351/243/233/350/273/212.kif +122 -0
  235. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/204/343/203/216/351/212/200/345/236/213/345/217/263/347/216/211.kif +123 -0
  236. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/203/210/343/203/236/343/203/233/343/203/274/343/202/257.kif +9 -7
  237. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/215/343/202/263/345/274/217/343/202/277/343/203/206/346/255/251/345/217/226/343/202/212.kif +31 -0
  238. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/216/343/203/274/343/202/254/343/203/274/343/203/211/346/210/246/346/263/225.kif +76 -0
  239. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/216/343/203/274/343/203/236/343/203/253/344/270/211/351/226/223/351/243/233/350/273/212.kif +95 -0
  240. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/216/343/203/274/343/203/236/343/203/253/345/233/233/351/226/223/351/243/233/350/273/212.kif +42 -0
  241. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/203/221/343/203/203/343/202/257/343/203/236/343/203/263/346/210/246/346/263/225.kif +6 -4
  242. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/222/343/203/251/343/203/241/346/210/246/346/263/225.kif +53 -0
  243. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/235/343/203/263/343/203/235/343/203/263/346/241/202.kif +47 -0
  244. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/203/240/343/203/252/343/203/244/343/203/252/346/227/251/347/237/263/347/224/260.kif +6 -5
  245. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/241/343/202/244/343/203/211/343/202/267/343/202/271/343/203/206/343/203/240.kif +11 -0
  246. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/241/343/203/252/343/202/261/343/203/263/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +49 -0
  247. data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/242/343/203/216/343/203/254/343/203/274/343/203/253/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +173 -0
  248. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/203/254/343/202/260/343/202/271/343/203/232.kif +13 -10
  249. data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/200/346/211/213/346/220/215/350/247/222/346/217/233/343/202/217/343/202/212.kif +118 -0
  250. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/270/200/347/233/264/347/267/232/347/251/264/347/206/212.kif +12 -13
  251. data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/200/351/226/223/351/243/233/350/273/212.kif +22 -0
  252. data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/200/351/226/223/351/243/233/350/273/212/347/251/264/347/206/212.kif +42 -0
  253. data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/211/346/256/265/345/217/263/347/216/211.kif +139 -0
  254. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/270/211/351/226/223/351/243/233/350/273/212.kif +9 -7
  255. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/270/211/351/226/223/351/243/233/350/273/212/343/203/237/343/203/254/343/203/213/343/202/242/343/203/240.kif +9 -7
  256. data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/211/351/226/223/351/243/233/350/273/212/350/227/244/344/272/225/343/202/267/343/202/271/343/203/206/343/203/240.kif +38 -0
  257. data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/213/347/224/272/346/265/201/344/270/211/351/226/223/351/243/233/350/273/212.kif +49 -0
  258. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/270/255/345/216/237/346/265/201/346/200/245/346/210/246/347/237/242/345/200/211.kif +14 -9
  259. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/270/255/345/216/237/346/265/201/347/233/270/346/216/233/343/201/213/343/202/212.kif +13 -8
  260. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/270/255/345/216/237/351/243/233/350/273/212.kif +10 -11
  261. data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/255/345/272/247/351/243/233/350/273/212.kif +61 -0
  262. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/270/255/351/243/233/350/273/212/343/203/237/343/203/254/343/203/213/343/202/242/343/203/240.kif +8 -6
  263. data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/255/351/243/233/350/273/212/345/267/246/347/251/264/347/206/212.kif +182 -0
  264. data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/270/345/261/261/343/203/257/343/202/257/343/203/201/343/203/263.kif +27 -0
  265. data/lib/bioshogi/analysis//346/210/246/346/263/225//344/271/205/344/277/235/346/265/201/346/227/251/347/237/263/347/224/260.kif +36 -0
  266. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/271/235/351/226/223/351/243/233/350/273/212.kif +18 -6
  267. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/271/235/351/226/223/351/243/233/350/273/212/345/267/246/347/251/264/347/206/212.kif +11 -9
  268. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/205/210/346/211/213/344/270/255/351/243/233/350/273/212.kif +5 -4
  269. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/210/235/346/211/213/342/226/2623/345/205/255/346/255/251/346/210/246/346/263/225.kif +8 -0
  270. data/lib/bioshogi/{explain//346/210/246/345/236/213//345/210/235/346/211/213/357/274/227 → analysis//346/210/246/346/263/225//345/210/235/346/211/213/342/226/2627}/345/205/253/351/212/200/346/210/246/346/263/225.kif +8 -6
  271. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/210/235/346/211/213/342/226/2627/345/205/253/351/243/233/346/210/246/346/263/225.kif +11 -0
  272. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/212/233/346/210/246.kif +7 -5
  273. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/212/240/350/227/244/346/265/201/350/242/226/351/243/233/350/273/212.kif +9 -7
  274. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/213/207/346/260/227/346/265/201.kif +9 -7
  275. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/215/207/347/224/260/345/274/217/347/237/263/347/224/260/346/265/201.kif +12 -10
  276. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/216/237/345/247/213/344/270/255/351/243/233/350/273/212.kif +5 -4
  277. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/216/237/345/247/213/346/243/222/351/212/200.kif +9 -7
  278. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/217/263/345/233/233/351/226/223/351/243/233/350/273/212.kif +31 -0
  279. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/217/263/345/233/233/351/226/223/351/243/233/350/273/212/345/267/246/347/276/216/346/277/203.kif +9 -5
  280. data/lib/bioshogi/{explain//346/210/246/345/236/213//345/217/263/345/233/233/351/226/223/351/243/233/350/273/212.kif → analysis//346/210/246/346/263/225//345/217/263/345/233/233/351/226/223/351/243/233/350/273/212/346/200/245/346/210/246.kif} +11 -9
  281. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/217/263/345/233/233/351/226/223/351/243/233/350/273/212/350/266/205/346/200/245/346/210/246.kif +16 -0
  282. data/lib/bioshogi/{explain//345/233/262/343/201/204 → analysis//346/210/246/346/263/225}//345/217/263/347/216/211.kif +10 -10
  283. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/220/214/345/236/213/347/237/242/345/200/211.kif +60 -0
  284. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +7 -6
  285. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/233/233/346/211/213/350/247/222.kif +11 -8
  286. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/233/233/351/226/223/351/243/233/350/273/212.kif +17 -0
  287. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/233/233/351/226/223/351/243/233/350/273/212/343/203/237/343/203/254/343/203/213/343/202/242/343/203/240.kif +9 -7
  288. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/234/260/344/270/213/351/211/204/351/243/233/350/273/212.kif +153 -0
  289. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/241/232/347/224/260/343/202/271/343/203/232/343/202/267/343/203/243/343/203/253.kif +101 -0
  290. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/244/251/345/275/246/346/265/201/342/226/2626/345/205/255/350/247/222.kif +13 -0
  291. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/244/251/345/275/246/346/265/201/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +33 -0
  292. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/254/211/351/207/216/346/265/201.kif +118 -0
  293. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/256/244/345/262/241/343/202/267/343/202/271/343/203/206/343/203/240.kif +195 -0
  294. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/257/276/343/201/262/343/201/255/343/202/212/351/243/233/350/273/212/343/201/237/343/201/223/351/207/221/346/210/246/346/263/225.kif +70 -0
  295. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/257/276/346/214/257/343/202/212/346/214/201/344/271/205/346/210/246.kif +11 -13
  296. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/257/276/347/237/242/345/200/211/346/200/245/346/210/246/346/243/222/351/212/200.kif +151 -0
  297. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/261/213/346/225/267/346/265/201/344/272/214/346/236/232/351/212/200.kif +9 -6
  298. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/261/213/346/225/267/346/265/201/344/272/214/346/236/232/351/212/200/346/243/222/351/212/200/345/236/213.kif +9 -7
  299. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/261/261/345/264/216/346/265/201/343/203/221/343/203/203/343/202/257/343/203/236/343/203/263.kif +3 -4
  300. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/261/261/347/224/260/345/256/232/350/267/241.kif +45 -0
  301. data/lib/bioshogi/{explain//346/210/246/345/236/213//347/237/242/345/200/211 → analysis//346/210/246/346/263/225/}/345/267/246/347/276/216/346/277/203/346/200/245/346/210/246.kif +13 -7
  302. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/271/273/346/203/263/345/233/233/351/226/223/351/243/233/350/273/212.kif +10 -8
  303. data/lib/bioshogi/analysis//346/210/246/346/263/225//345/277/205/347/254/221/343/201/262/343/201/243/343/201/213/343/201/221/346/210/246/346/263/225.kif +41 -0
  304. data/lib/bioshogi/analysis//346/210/246/346/263/225//346/210/270/351/203/250/346/265/2014/342/206/2223/346/210/246/346/263/225.kif +23 -0
  305. data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/343/203/235/343/203/263/343/203/235/343/203/263/346/241/202.kif +41 -0
  306. data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/345/254/211/351/207/216/346/265/201.kif +132 -0
  307. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/226/260/346/235/221/347/224/260/343/202/267/343/202/271/343/203/206/343/203/240.kif +9 -7
  308. data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/347/237/263/347/224/260/346/265/201.kif +21 -0
  309. data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/347/261/263/351/225/267/347/216/211.kif +139 -0
  310. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/226/260/351/242/250/350/273/212.kif +7 -7
  311. data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/351/254/274/346/256/272/343/201/227.kif +37 -0
  312. data/lib/bioshogi/analysis//346/210/246/346/263/225//346/227/251/347/237/263/347/224/260.kif +16 -0
  313. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/232/264/351/212/200.kif +11 -8
  314. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/234/250/346/235/221/345/256/232/350/267/241.kif +14 -9
  315. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/235/221/347/224/260/343/202/267/343/202/271/343/203/206/343/203/240.kif +5 -4
  316. data/lib/bioshogi/analysis//346/210/246/346/263/225//346/241/220/345/261/261/346/265/201/343/202/277/343/203/206/346/255/251/346/243/222/351/212/200.kif +111 -0
  317. data/lib/bioshogi/analysis//346/210/246/346/263/225//346/243/222/347/216/211.kif +26 -0
  318. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/243/222/351/207/221.kif +9 -7
  319. data/lib/bioshogi/analysis//346/210/246/346/263/225//346/243/222/351/212/200.kif +41 -0
  320. data/lib/bioshogi/analysis//346/210/246/346/263/225//346/243/256/344/270/213/343/202/267/343/202/271/343/203/206/343/203/240.kif +94 -0
  321. data/lib/bioshogi/analysis//346/210/246/346/263/225//346/243/256/345/256/211/346/265/201/350/242/226/351/243/233/350/273/212/347/251/264/347/206/212.kif +39 -0
  322. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/245/240/346/234/254/345/274/217/347/237/263/347/224/260/346/265/201.kif +15 -9
  323. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/245/265/351/231/220/346/227/251/347/271/260/343/202/212/351/212/200.kif +8 -5
  324. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/250/252/346/255/251/345/217/226/343/202/212.kif +8 -6
  325. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/270/205/351/207/216/346/265/201/345/262/220/351/230/234/346/210/246/346/263/225.kif +14 -9
  326. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/216/211/351/240/255/344/275/215/345/217/226/343/202/212.kif +11 -7
  327. data/lib/bioshogi/analysis//346/210/246/346/263/225//347/216/211/351/240/255/351/212/200.kif +119 -0
  328. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/233/256/343/201/217/343/202/211/343/201/276/343/201/227/346/210/246/346/263/225.kif +5 -6
  329. data/lib/bioshogi/analysis//346/210/246/346/263/225//347/233/270/346/214/257/343/202/212/351/243/233/350/273/212.kif +10 -0
  330. data/lib/bioshogi/analysis//346/210/246/346/263/225//347/233/270/346/216/233/343/201/213/343/202/212.kif +20 -0
  331. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/233/270/346/216/233/343/201/213/343/202/212/346/243/222/351/212/200.kif +8 -6
  332. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/233/270/346/250/252/346/255/251/345/217/226/343/202/212.kif +11 -7
  333. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/233/270/347/255/213/351/201/225/343/201/204/350/247/222.kif +10 -8
  334. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/234/237/351/203/250/346/265/201.kif +19 -11
  335. data/lib/bioshogi/analysis//346/210/246/346/263/225//347/237/242/345/200/211/342/226/2623/344/270/203/351/212/200/346/210/246/346/263/225.kif +83 -0
  336. data/lib/bioshogi/analysis//346/210/246/346/263/225//347/237/242/345/200/211/344/270/255/351/243/233/350/273/212.kif +37 -0
  337. data/lib/bioshogi/{explain//345/233/262/343/201/204 → analysis//346/210/246/346/263/225}//347/237/242/345/200/211/345/217/263/347/216/211.kif +7 -5
  338. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/237/242/345/200/211/346/243/222/351/212/200.kif +12 -8
  339. data/lib/bioshogi/analysis//346/210/246/346/263/225//347/237/242/345/200/211/346/265/201/344/270/255/351/243/233/350/273/212.kif +38 -0
  340. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/237/263/347/224/260/346/265/201.kif +8 -6
  341. data/lib/bioshogi/analysis//346/210/246/346/263/225//347/245/236/345/220/211/346/265/201/344/270/211/351/226/223/351/243/233/350/273/212.kif +41 -0
  342. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/250/262/345/272/255/346/210/246/346/263/225.kif +8 -7
  343. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/251/264/350/247/222/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +6 -7
  344. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/251/264/350/247/222/346/210/246/346/263/225.kif +19 -13
  345. data/lib/bioshogi/analysis//346/210/246/346/263/225//347/253/213/347/237/263/346/265/201/345/233/233/351/226/223/351/243/233/350/273/212.kif +60 -0
  346. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/253/257/346/243/222/351/212/200.kif +12 -10
  347. data/lib/bioshogi/analysis//346/210/246/346/263/225//347/253/271/351/203/250/343/202/271/343/203/232/343/202/267/343/203/243/343/203/253.kif +45 -0
  348. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/255/213/351/201/225/343/201/204/350/247/222.kif +15 -9
  349. data/lib/bioshogi/analysis//346/210/246/346/263/225//347/255/213/351/201/225/343/201/204/350/247/222/350/237/273/345/234/260/347/215/204/346/210/246/346/263/225.kif +56 -0
  350. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/261/263/351/225/267/346/265/201/346/200/245/346/210/246/347/237/242/345/200/211.kif +12 -7
  351. data/lib/bioshogi/{explain//345/233/262/343/201/204 → analysis//346/210/246/346/263/225}//347/263/270/350/260/267/346/265/201/345/217/263/347/216/211.kif +11 -7
  352. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/276/275/347/224/237/345/274/217/350/242/226/351/243/233/350/273/212.kif +16 -8
  353. data/lib/bioshogi/{explain//345/233/262/343/201/204 → analysis//346/210/246/346/263/225}//347/276/275/347/224/237/346/265/201/345/217/263/347/216/211.kif +9 -7
  354. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/200/200/351/276/215/343/201/262/343/201/255/343/202/212/351/243/233/350/273/212.kif +6 -7
  355. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/200/200/351/276/215/345/233/233/351/226/223/351/243/233/350/273/212.kif +12 -9
  356. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/204/207/343/202/267/343/202/271/343/203/206/343/203/240.kif +8 -8
  357. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/205/260/346/216/233/343/201/221/351/212/200.kif +13 -9
  358. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/212/261/346/235/221/346/265/201/345/220/215/345/217/244/345/261/213/346/210/246/346/263/225.kif +14 -8
  359. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/213/261/343/201/241/343/202/203/343/202/223/346/265/201/344/270/255/351/243/233/350/273/212.kif +12 -10
  360. data/lib/bioshogi/{explain//346/210/246/345/236/213/ → analysis//346/210/246/346/263/225//350/213/261/346/230/245/346/265/201}/343/201/213/343/201/276/343/201/204/343/201/237/343/201/241/346/210/246/346/263/225.kif +21 -14
  361. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/213/261/346/230/245/346/265/201/343/202/253/343/203/241/343/203/254/343/202/252/343/203/263.kif +15 -12
  362. data/lib/bioshogi/analysis//346/210/246/346/263/225//350/217/205/344/272/225/346/265/201/344/270/211/351/226/223/351/243/233/350/273/212.kif +24 -0
  363. data/lib/bioshogi/{explain//346/210/246/345/236/213//350/217/234/343/200/205/346/262/263/346/265/201/342/226/263/357/274/224 → analysis//346/210/246/346/263/225//350/217/234/343/200/205/346/262/263/346/265/201/342/226/2634}/345/233/233/350/247/222.kif +5 -4
  364. data/lib/bioshogi/analysis//346/210/246/346/263/225//350/217/234/343/200/205/346/262/263/346/265/201/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +167 -0
  365. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/227/244/344/272/225/343/202/267/343/202/271/343/203/206/343/203/240.kif +9 -7
  366. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/227/244/346/243/256/346/265/201/346/200/245/346/210/246/347/237/242/345/200/211.kif +9 -8
  367. data/lib/bioshogi/analysis//346/210/246/346/263/225//350/242/226/351/243/233/350/273/212.kif +256 -0
  368. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/243/217/343/202/242/343/203/222/343/203/253/346/210/246/346/263/225.kif +9 -7
  369. data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/344/272/244/346/217/233/346/214/257/343/202/212/351/243/233/350/273/212.kif +116 -0
  370. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/247/222/346/217/233/343/202/217/343/202/212.kif +8 -5
  371. data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/346/217/233/343/202/217/343/202/212/345/217/263/347/216/211.kif +134 -0
  372. data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/346/217/233/343/202/217/343/202/212/346/227/251/347/271/260/343/202/212/351/212/200.kif +159 -0
  373. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/247/222/346/217/233/343/202/217/343/202/212/346/243/222/351/212/200.kif +10 -7
  374. data/lib/bioshogi/{explain//346/210/246/345/236/213//350/247/222/346/217/233/343/202/217/343/202/212/346/226/260/345/236/213.kif → analysis//346/210/246/346/263/225//350/247/222/346/217/233/343/202/217/343/202/212/350/205/260/346/216/233/343/201/221/351/212/200.kif} +9 -8
  375. data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/346/217/233/343/202/217/343/202/212/350/205/260/346/216/233/343/201/221/351/212/200/346/227/247/345/236/213.kif +52 -0
  376. data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/351/201/223/343/202/252/343/203/274/343/203/227/343/203/263/345/233/233/351/226/223/351/243/233/350/273/212.kif +13 -0
  377. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/247/222/351/240/255/346/255/251/346/210/246/346/263/225.kif +5 -6
  378. data/lib/bioshogi/analysis//346/210/246/346/263/225//350/266/205/346/200/245/346/210/246.kif +38 -0
  379. data/lib/bioshogi/{explain//346/210/246/345/236/213//350/266/205/351/200/237/342/226/262/357/274/223/344/270/203/351/212/200.kif → analysis//346/210/246/346/263/225//350/266/205/351/200/237/342/226/2623/344/270/203/351/212/200/346/210/246/346/263/225.kif} +13 -9
  380. data/lib/bioshogi/analysis//346/210/246/346/263/225//351/200/206/346/243/222/351/212/200.kif +42 -0
  381. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/201/240/345/261/261/346/265/201.kif +11 -11
  382. data/lib/bioshogi/{explain//346/210/246/345/236/213//351/203/275/346/210/220/346/265/201/342/226/263/357/274/223 → analysis//346/210/246/346/263/225//351/203/275/346/210/220/346/265/201/342/226/2633}/344/270/200/351/207/221.kif +7 -5
  383. data/lib/bioshogi/analysis//346/210/246/346/263/225//351/207/221/346/262/242/346/265/201.kif +11 -0
  384. data/lib/bioshogi/analysis//346/210/246/346/263/225//351/207/221/347/204/241/345/217/214/346/200/245/346/210/246.kif +51 -0
  385. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/207/221/351/212/200/346/251/213.kif +14 -11
  386. data/lib/bioshogi/analysis//346/210/246/346/263/225//351/210/264/346/234/250/346/265/201/346/227/251/347/237/263/347/224/260.kif +40 -0
  387. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/212/200/351/233/262/351/233/200.kif +12 -8
  388. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/216/226/351/216/214/351/212/200.kif +11 -8
  389. data/lib/bioshogi/{explain//346/210/246/345/236/213/ → analysis//346/210/246/346/263/225//351/226/223/345/256/256}/344/271/205/345/244/242/346/265/201.kif +10 -6
  390. data/lib/bioshogi/analysis//346/210/246/346/263/225//351/230/252/347/224/260/346/265/2012/346/211/213/347/233/256/342/226/2639/345/233/233/346/255/251.kif +10 -0
  391. data/lib/bioshogi/{explain//346/210/246/345/236/213//351/230/252/347/224/260/346/265/201/345/220/221 → analysis//346/210/246/346/263/225//351/230/252/347/224/260/346/265/201/345/220/221/343/201/213/343/201/204}/351/243/233/350/273/212.kif +12 -6
  392. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/230/277/344/271/205/346/264/245/346/265/201/346/200/245/346/210/246/347/237/242/345/200/211.kif +10 -7
  393. data/lib/bioshogi/analysis//346/210/246/346/263/225//351/231/275/345/213/225/346/214/257/343/202/212/351/243/233/350/273/212.kif +14 -0
  394. data/lib/bioshogi/analysis//346/210/246/346/263/225//351/233/200/345/210/272/343/201/227.kif +94 -0
  395. data/lib/bioshogi/{explain//345/233/262/343/201/204 → analysis//346/210/246/346/263/225}//351/233/201/346/234/250/345/217/263/347/216/211.kif +12 -9
  396. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/235/222/351/207/216/346/265/201.kif +9 -7
  397. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/242/250/350/273/212.kif +8 -7
  398. data/lib/bioshogi/analysis//346/210/246/346/263/225//351/243/233/351/250/250/343/201/256/344/270/255/351/243/233/350/273/212/345/220/210/346/216/214/351/200/240/343/202/212.kif +102 -0
  399. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/243/257/345/263/266/346/265/201/345/274/225/343/201/215/350/247/222/346/210/246/346/263/225.kif +9 -7
  400. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/243/257/345/263/266/346/265/201/347/233/270/346/216/233/343/201/213/343/202/212/345/274/225/343/201/215/350/247/222/346/210/246/346/263/225.kif +11 -9
  401. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/253/230/347/224/260/346/265/201/345/267/246/347/216/211.kif +15 -11
  402. data/lib/bioshogi/analysis//346/210/246/346/263/225//351/254/274/346/256/272/343/201/227.kif +26 -0
  403. data/lib/bioshogi/analysis//346/210/246/346/263/225//351/254/274/346/256/272/343/201/227/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +43 -0
  404. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/255/224/347/225/214/345/233/233/351/226/223/351/243/233/350/273/212.kif +5 -6
  405. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/263/245/345/210/272/343/201/227.kif +9 -7
  406. data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/267/272/345/256/256/345/256/232/350/267/241.kif +12 -6
  407. data/lib/bioshogi/analysis//346/211/213/347/255/213/2/346/256/265/343/203/255/343/202/261/343/203/203/343/203/210.kif +25 -0
  408. data/lib/bioshogi/analysis//346/211/213/347/255/213/3/346/256/265/343/203/255/343/202/261/343/203/203/343/203/210.kif +22 -0
  409. data/lib/bioshogi/analysis//346/211/213/347/255/213/4/346/256/265/343/203/255/343/202/261/343/203/203/343/203/210.kif +22 -0
  410. data/lib/bioshogi/analysis//346/211/213/347/255/213/5/346/256/265/343/203/255/343/202/261/343/203/203/343/203/210.kif +22 -0
  411. data/lib/bioshogi/analysis//346/211/213/347/255/213/6/346/256/265/343/203/255/343/202/261/343/203/203/343/203/210.kif +24 -0
  412. data/lib/bioshogi/analysis//346/211/213/347/255/213//343/201/223/343/201/263/343/202/223/346/224/273/343/202/201.kif +28 -0
  413. data/lib/bioshogi/analysis//346/211/213/347/255/213//343/201/237/343/201/231/343/201/215/343/201/256/350/247/222.kif +35 -0
  414. data/lib/bioshogi/analysis//346/211/213/347/255/213//343/201/237/343/201/231/343/201/215/343/201/256/351/212/200.kif +35 -0
  415. data/lib/bioshogi/analysis//346/211/213/347/255/213//343/201/237/343/201/237/343/201/215/343/201/256/346/255/251.kif +26 -0
  416. data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//343/201/265/343/202/223/343/201/251/343/201/227/343/201/256/346/241/202.kif +0 -4
  417. data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//343/203/221/343/203/263/343/203/204/343/202/222/350/204/261/343/201/220.kif +0 -4
  418. data/lib/bioshogi/analysis//346/211/213/347/255/213//344/270/200/351/226/223/347/253/234.kif +21 -0
  419. data/lib/bioshogi/analysis//346/211/213/347/255/213//344/275/215/343/201/256/347/242/272/344/277/235.kif +50 -0
  420. data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//345/211/262/343/202/212/346/211/223/343/201/241/343/201/256/351/212/200.kif +0 -4
  421. data/lib/bioshogi/analysis//346/211/213/347/255/213//345/234/237/344/270/213/345/272/247/343/201/256/346/255/251.kif +22 -0
  422. data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//345/236/202/343/202/214/346/255/251.kif +0 -4
  423. data/lib/bioshogi/analysis//346/211/213/347/255/213//345/260/273/351/212/200.kif +32 -0
  424. data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//345/271/275/351/234/212/350/247/222.kif +7 -5
  425. data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//346/241/202/351/240/255/343/201/256/351/212/200.kif +0 -4
  426. data/lib/bioshogi/analysis//346/211/213/347/255/213//346/255/251/351/240/255/343/201/256/346/241/202.kif +34 -0
  427. data/lib/bioshogi/analysis//346/211/213/347/255/213//347/224/260/346/245/275/345/210/272/343/201/227.kif +34 -0
  428. data/lib/bioshogi/analysis//346/211/213/347/255/213//347/252/201/343/201/215/351/201/225/343/201/204/343/201/256/346/255/251.kif +21 -0
  429. data/lib/bioshogi/analysis//346/211/213/347/255/213//347/253/257/347/216/211/343/201/253/343/201/257/347/253/257/346/255/251.kif +24 -0
  430. data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//347/266/231/343/201/216/346/241/202.kif +2 -6
  431. data/lib/bioshogi/analysis//346/211/213/347/255/213//347/266/231/343/201/216/346/255/251.kif +46 -0
  432. data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//350/205/271/351/212/200.kif +13 -10
  433. data/lib/bioshogi/analysis//346/211/213/347/255/213//351/200/243/346/211/223/343/201/256/346/255/251.kif +28 -0
  434. data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//351/201/240/350/246/213/343/201/256/350/247/222.kif +0 -4
  435. data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//351/207/221/345/272/225/343/201/256/346/255/251.kif +0 -4
  436. data/lib/bioshogi/analysis//346/211/213/347/255/213//351/212/200/343/201/260/343/201/225/343/201/277.kif +29 -0
  437. data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//351/212/200/345/206/240/343/201/256/345/260/217/351/203/250/345/261/213.kif +13 -9
  438. data/lib/bioshogi/application_memory_record.rb +4 -11
  439. data/lib/bioshogi/assertion.rb +6 -2
  440. data/lib/bioshogi/assets/images/background/matrix.png +0 -0
  441. data/lib/bioshogi/assets/images/color_theme_preview/is_color_theme_club24.png +0 -0
  442. data/lib/bioshogi/assets/images/color_theme_preview/is_color_theme_paper.png +0 -0
  443. data/lib/bioshogi/assets/images/color_theme_preview/is_color_theme_piyo.png +0 -0
  444. data/lib/bioshogi/assets/images/color_theme_preview/is_color_theme_real.png +0 -0
  445. data/lib/bioshogi/assets/images/color_theme_preview/is_color_theme_shape.png +0 -0
  446. data/lib/bioshogi/assets/kifu_formats/sample.ki2 +3 -3
  447. data/lib/bioshogi/board/basic.rb +1 -1
  448. data/lib/bioshogi/board_parser/compare_board_parser.rb +27 -4
  449. data/lib/bioshogi/container/core_methods.rb +2 -2
  450. data/lib/bioshogi/container/execute_methods.rb +1 -1
  451. data/lib/bioshogi/container/fast.rb +1 -1
  452. data/lib/bioshogi/container/simple.rb +1 -1
  453. data/lib/bioshogi/converter.rb +6 -2
  454. data/lib/bioshogi/csa_header_info.rb +2 -0
  455. data/lib/bioshogi/errors.rb +2 -2
  456. data/lib/bioshogi/extreme_validator.rb +1 -1
  457. data/lib/bioshogi/formatter/animation/demo_builder.rb +1 -1
  458. data/lib/bioshogi/formatter/core.rb +25 -5
  459. data/lib/bioshogi/formatter/last_action_info.rb +26 -22
  460. data/lib/bioshogi/formatter/skill_embed.rb +147 -34
  461. data/lib/bioshogi/formatter/style_embed.rb +27 -0
  462. data/lib/bioshogi/formatter/sugatayaki_validator.rb +96 -0
  463. data/lib/bioshogi/kanji_number.rb +0 -45
  464. data/lib/bioshogi/kifu_format_info.rb +5 -5
  465. data/lib/bioshogi/parser/base.rb +2 -2
  466. data/lib/bioshogi/parser/pi.rb +11 -0
  467. data/lib/bioshogi/piece/piece_scale.rb +9 -8
  468. data/lib/bioshogi/piece/piece_score.rb +14 -0
  469. data/lib/bioshogi/piece.rb +33 -69
  470. data/lib/bioshogi/player/other_methods.rb +26 -6
  471. data/lib/bioshogi/player.rb +1 -1
  472. data/lib/bioshogi/player_executor/base.rb +2 -2
  473. data/lib/bioshogi/player_executor/human.rb +1 -1
  474. data/lib/bioshogi/player_executor/{without_monitor.rb → without_analyzer.rb} +1 -1
  475. data/lib/bioshogi/preset_info.rb +1 -1
  476. data/lib/bioshogi/screen_image/core_methods.rb +1 -1
  477. data/lib/bioshogi/single_clock.rb +6 -6
  478. data/lib/bioshogi/stat.rb +7 -0
  479. data/lib/bioshogi/tasks/chore.rake +1 -1
  480. data/lib/bioshogi/tasks/clean.rake +1 -1
  481. data/lib/bioshogi/tasks/demo.rake +2 -2
  482. data/lib/bioshogi/tasks/generate.rake +5 -5
  483. data/lib/bioshogi/tasks/normalize.rake +4 -4
  484. data/lib/bioshogi/tasks/{test.rake → spec.rake} +8 -6
  485. data/lib/bioshogi/tasks/tactic.rake +8 -0
  486. data/lib/bioshogi/tasks/tactic_validator.rake +1 -1
  487. data/lib/bioshogi/turn_info.rb +1 -1
  488. data/lib/bioshogi/version.rb +1 -1
  489. data/lib/bioshogi.rb +11 -5
  490. data//347/275/256/343/201/215/346/217/233/343/201/210/346/216/250/345/245/250.txt +57 -0
  491. metadata +442 -350
  492. data/lib/bioshogi/explain/attack_info.rb +0 -198
  493. data/lib/bioshogi/explain/defense_info.rb +0 -130
  494. data/lib/bioshogi/explain/distribution_ratio.rb +0 -1886
  495. data/lib/bioshogi/explain/distribution_ratio_generator.rb +0 -48
  496. data/lib/bioshogi/explain/file_normalizer.rb +0 -20
  497. data/lib/bioshogi/explain/note_info.rb +0 -63
  498. data/lib/bioshogi/explain/tactic_hit_turn_table.rb +0 -318
  499. data/lib/bioshogi/explain/tactic_validator.rb +0 -40
  500. data/lib/bioshogi/explain/technique_info.rb +0 -28
  501. data/lib/bioshogi/explain/technique_matcher_info.rb +0 -298
  502. data/lib/bioshogi/explain//345/202/231/350/200/203//345/244/247/351/247/222/343/202/263/343/203/263/343/203/227/343/203/252/343/203/274/343/203/210.kif +0 -19
  503. data/lib/bioshogi/explain//345/202/231/350/200/203//345/244/247/351/247/222/345/205/250/346/266/210/345/244/261.kif +0 -19
  504. data/lib/bioshogi/explain//345/202/231/350/200/203//345/257/276/346/212/227/345/236/213.kif +0 -12
  505. data/lib/bioshogi/explain//345/202/231/350/200/203//345/257/276/346/214/257/343/202/212.kif +0 -12
  506. data/lib/bioshogi/explain//345/202/231/350/200/203//346/214/257/343/202/212/351/243/233/350/273/212.kif +0 -12
  507. data/lib/bioshogi/explain//345/202/231/350/200/203//347/233/270/345/261/205/351/243/233/350/273/212.kif +0 -8
  508. data/lib/bioshogi/explain//345/202/231/350/200/203//347/233/270/346/214/257/343/202/212.kif +0 -16
  509. data/lib/bioshogi/explain//345/202/231/350/200/203//350/203/214/346/260/264/343/201/256/351/231/243.kif +0 -34
  510. data/lib/bioshogi/explain//345/202/231/350/200/203//350/247/222/344/270/215/346/210/220.kif +0 -16
  511. data/lib/bioshogi/explain//345/202/231/350/200/203//351/247/222/346/237/261.kif +0 -48
  512. data/lib/bioshogi/explain//345/233/262/343/201/204//343/201/241/343/202/207/343/202/223/343/201/276/343/201/222/347/276/216/346/277/203.kif +0 -25
  513. data/lib/bioshogi/explain//345/233/262/343/201/204//343/202/242/343/203/222/343/203/253/345/233/262/343/201/204.kif +0 -148
  514. data/lib/bioshogi/explain//345/233/262/343/201/204//343/202/252/343/203/252/343/202/270/343/203/212/343/203/253/351/233/201/346/234/250.kif +0 -40
  515. data/lib/bioshogi/explain//345/233/262/343/201/204//343/202/253/343/202/256/345/233/262/343/201/204.kif +0 -40
  516. data/lib/bioshogi/explain//345/233/262/343/201/204//343/202/253/343/203/226/343/203/210/345/233/262/343/201/204.kif +0 -29
  517. data/lib/bioshogi/explain//345/233/262/343/201/204//343/203/204/343/203/216/351/212/200/345/236/213/345/217/263/347/216/211.kif +0 -45
  518. data/lib/bioshogi/explain//345/233/262/343/201/204//343/203/204/343/203/216/351/212/200/351/233/201/346/234/250.kif +0 -113
  519. data/lib/bioshogi/explain//345/233/262/343/201/204//343/203/237/343/203/254/343/203/213/343/202/242/343/203/240/345/233/262/343/201/204.kif +0 -96
  520. data/lib/bioshogi/explain//345/233/262/343/201/204//344/270/211/346/211/213/345/233/262/343/201/204.kif +0 -23
  521. data/lib/bioshogi/explain//345/233/262/343/201/204//344/270/211/346/256/265/345/217/263/347/216/211.kif +0 -50
  522. data/lib/bioshogi/explain//345/233/262/343/201/204//344/270/255/344/275/217/343/201/276/343/201/204.kif +0 -71
  523. data/lib/bioshogi/explain//345/233/262/343/201/204//344/270/255/345/216/237/345/233/262/343/201/204.kif +0 -69
  524. data/lib/bioshogi/explain//345/233/262/343/201/204//345/235/212/344/270/273/347/276/216/346/277/203.kif +0 -79
  525. data/lib/bioshogi/explain//345/233/262/343/201/204//345/244/251/351/207/216/347/237/242/345/200/211.kif +0 -76
  526. data/lib/bioshogi/explain//345/233/262/343/201/204//345/257/214/345/243/253/350/246/213/347/237/242/345/200/211.kif +0 -45
  527. data/lib/bioshogi/explain//345/233/262/343/201/204//345/261/205/351/243/233/350/273/212/347/251/264/347/206/212.kif +0 -76
  528. data/lib/bioshogi/explain//345/233/262/343/201/204//346/234/250/346/235/221/347/276/216/346/277/203.kif +0 -88
  529. data/lib/bioshogi/explain//345/233/262/343/201/204//347/204/241/346/225/265/345/233/262/343/201/204.kif +0 -136
  530. data/lib/bioshogi/explain//345/233/262/343/201/204//347/211/207/347/276/216/346/277/203/345/233/262/343/201/204.kif +0 -68
  531. data/lib/bioshogi/explain//345/233/262/343/201/204//347/251/272/344/270/255/346/245/274/351/226/243.kif +0 -126
  532. data/lib/bioshogi/explain//345/233/262/343/201/204//347/253/257/347/216/211/351/212/200/345/206/240.kif +0 -88
  533. data/lib/bioshogi/explain//345/233/262/343/201/204//347/256/261/345/205/245/343/202/212/345/250/230.kif +0 -72
  534. data/lib/bioshogi/explain//345/233/262/343/201/204//347/267/217/347/237/242/345/200/211.kif +0 -78
  535. data/lib/bioshogi/explain//345/233/262/343/201/204//347/276/216/346/277/203/345/233/262/343/201/204.kif +0 -52
  536. data/lib/bioshogi/explain//345/233/262/343/201/204//347/276/216/346/277/203/347/206/212/345/233/262/343/201/204.kif +0 -50
  537. data/lib/bioshogi/explain//345/233/262/343/201/204//350/210/237/345/233/262/343/201/204.kif +0 -67
  538. data/lib/bioshogi/explain//345/233/262/343/201/204//350/217/212/346/260/264/347/237/242/345/200/211.kif +0 -93
  539. data/lib/bioshogi/explain//345/233/262/343/201/204//350/247/222/346/217/233/343/202/217/343/202/212/345/217/263/347/216/211.kif +0 -45
  540. data/lib/bioshogi/explain//345/233/262/343/201/204//351/207/221/347/237/242/345/200/211.kif +0 -78
  541. data/lib/bioshogi/explain//345/233/262/343/201/204//351/212/200/345/206/240/347/251/264/347/206/212.kif +0 -89
  542. data/lib/bioshogi/explain//345/233/262/343/201/204//351/212/200/347/237/242/345/200/211.kif +0 -72
  543. data/lib/bioshogi/explain//345/233/262/343/201/204//351/212/200/347/253/213/343/201/241/347/237/242/345/200/211.kif +0 -90
  544. data/lib/bioshogi/explain//345/233/262/343/201/204//351/212/200/347/276/216/346/277/203.kif +0 -77
  545. data/lib/bioshogi/explain//346/210/246/345/236/213/2/346/211/213/347/233/256/342/226/26374/346/255/251/346/210/246/346/263/225.kif +0 -10
  546. data/lib/bioshogi/explain//346/210/246/345/236/213/5/347/255/213/344/275/215/345/217/226/343/202/212/344/270/255/351/243/233/350/273/212.kif +0 -16
  547. data/lib/bioshogi/explain//346/210/246/345/236/213/xaby/350/247/222/346/210/246/346/263/225.kif +0 -18
  548. data/lib/bioshogi/explain//346/210/246/345/236/213//342/226/262/357/274/223/344/270/203/351/212/200/346/210/246/346/263/225.kif +0 -74
  549. data/lib/bioshogi/explain//346/210/246/345/236/213//342/226/262/357/274/227/344/272/214/351/243/233/344/272/234/346/200/245/346/210/246.kif +0 -100
  550. data/lib/bioshogi/explain//346/210/246/345/236/213//342/226/262/357/274/227/345/205/253/351/243/233/346/210/246/346/263/225.kif +0 -12
  551. data/lib/bioshogi/explain//346/210/246/345/236/213//342/226/262/357/274/230/344/272/224/351/243/233/350/273/212/346/210/246/346/263/225.kif +0 -77
  552. data/lib/bioshogi/explain//346/210/246/345/236/213//343/201/257/343/201/217/345/274/217/345/233/233/351/226/223/351/243/233/350/273/212.kif +0 -34
  553. data/lib/bioshogi/explain//346/210/246/345/236/213//343/202/204/343/201/260/343/203/234/343/203/274/343/202/272/346/265/201.kif +0 -35
  554. data/lib/bioshogi/explain//346/210/246/345/236/213//343/202/242/343/203/222/343/203/253/346/210/246/346/263/225.kif +0 -65
  555. data/lib/bioshogi/explain//346/210/246/345/236/213//343/202/250/343/203/253/343/203/242/346/200/245/346/210/246.kif +0 -44
  556. data/lib/bioshogi/explain//346/210/246/345/236/213//343/202/253/343/203/213/343/202/253/343/203/213/351/212/200.kif +0 -83
  557. data/lib/bioshogi/explain//346/210/246/345/236/213//343/202/264/343/202/255/343/202/262/343/203/263/344/270/255/351/243/233/350/273/212.kif +0 -16
  558. data/lib/bioshogi/explain//346/210/246/345/236/213//343/203/204/343/203/216/351/212/200/344/270/255/351/243/233/350/273/212.kif +0 -103
  559. data/lib/bioshogi/explain//346/210/246/345/236/213//343/203/216/343/203/274/343/202/254/343/203/274/343/203/211/346/210/246/346/263/225.kif +0 -34
  560. data/lib/bioshogi/explain//346/210/246/345/236/213//343/203/235/343/203/263/343/203/235/343/203/263/346/241/202.kif +0 -115
  561. data/lib/bioshogi/explain//346/210/246/345/236/213//343/203/241/343/202/244/343/203/211/343/202/267/343/202/271/343/203/206/343/203/240.kif +0 -14
  562. data/lib/bioshogi/explain//346/210/246/345/236/213//343/203/241/343/203/252/343/202/261/343/203/263/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +0 -29
  563. data/lib/bioshogi/explain//346/210/246/345/236/213//344/270/200/346/211/213/346/220/215/350/247/222/346/217/233/343/202/217/343/202/212.kif +0 -14
  564. data/lib/bioshogi/explain//346/210/246/345/236/213//344/270/200/351/226/223/351/243/233/350/273/212.kif +0 -63
  565. data/lib/bioshogi/explain//346/210/246/345/236/213//344/270/200/351/226/223/351/243/233/350/273/212/347/251/264/347/206/212.kif +0 -30
  566. data/lib/bioshogi/explain//346/210/246/345/236/213//344/270/255/351/243/233/350/273/212/345/267/246/347/251/264/347/206/212.kif +0 -95
  567. data/lib/bioshogi/explain//346/210/246/345/236/213//344/270/270/345/261/261/343/203/257/343/202/257/343/203/201/343/203/263.kif +0 -23
  568. data/lib/bioshogi/explain//346/210/246/345/236/213//345/210/235/346/211/213/357/274/223/345/205/255/346/255/251/346/210/246/346/263/225.kif +0 -11
  569. data/lib/bioshogi/explain//346/210/246/345/236/213//345/217/263/345/233/233/351/226/223/351/243/233/350/273/212/346/200/245/346/210/246.kif +0 -79
  570. data/lib/bioshogi/explain//346/210/246/345/236/213//345/233/233/351/226/223/351/243/233/350/273/212.kif +0 -60
  571. data/lib/bioshogi/explain//346/210/246/345/236/213//345/234/260/344/270/213/351/211/204/351/243/233/350/273/212.kif +0 -102
  572. data/lib/bioshogi/explain//346/210/246/345/236/213//345/241/232/347/224/260/343/202/271/343/203/232/343/202/267/343/203/243/343/203/253.kif +0 -95
  573. data/lib/bioshogi/explain//346/210/246/345/236/213//345/254/211/351/207/216/346/265/201.kif +0 -9
  574. data/lib/bioshogi/explain//346/210/246/345/236/213//345/267/246/347/276/216/346/277/203/346/200/245/346/210/246.kif +0 -76
  575. data/lib/bioshogi/explain//346/210/246/345/236/213//345/271/263/347/233/256.kif +0 -110
  576. data/lib/bioshogi/explain//346/210/246/345/236/213//346/211/213/345/276/227/350/247/222/344/272/244/346/217/233/345/236/213.kif +0 -14
  577. data/lib/bioshogi/explain//346/210/246/345/236/213//346/211/213/346/220/215/350/247/222/344/272/244/346/217/233/345/236/213.kif +0 -12
  578. data/lib/bioshogi/explain//346/210/246/345/236/213//346/226/260/344/270/270/345/261/261/343/203/257/343/202/257/343/203/201/343/203/263.kif +0 -24
  579. data/lib/bioshogi/explain//346/210/246/345/236/213//346/226/260/345/254/211/351/207/216/346/265/201.kif +0 -15
  580. data/lib/bioshogi/explain//346/210/246/345/236/213//346/226/260/347/237/263/347/224/260/346/265/201.kif +0 -90
  581. data/lib/bioshogi/explain//346/210/246/345/236/213//346/226/260/347/261/263/351/225/267/347/216/211.kif +0 -10
  582. data/lib/bioshogi/explain//346/210/246/345/236/213//346/226/260/351/254/274/346/256/272/343/201/227.kif +0 -113
  583. data/lib/bioshogi/explain//346/210/246/345/236/213//346/227/251/347/237/263/347/224/260.kif +0 -68
  584. data/lib/bioshogi/explain//346/210/246/345/236/213//346/243/222/347/216/211.kif +0 -80
  585. data/lib/bioshogi/explain//346/210/246/345/236/213//346/243/222/351/212/200.kif +0 -65
  586. data/lib/bioshogi/explain//346/210/246/345/236/213//346/243/256/344/270/213/343/202/267/343/202/271/343/203/206/343/203/240.kif +0 -118
  587. data/lib/bioshogi/explain//346/210/246/345/236/213//347/216/211/351/240/255/351/212/200.kif +0 -68
  588. data/lib/bioshogi/explain//346/210/246/345/236/213//347/233/270/346/214/257/343/202/212/351/243/233/350/273/212.kif +0 -14
  589. data/lib/bioshogi/explain//346/210/246/345/236/213//347/233/270/346/216/233/343/201/213/343/202/212.kif +0 -45
  590. data/lib/bioshogi/explain//346/210/246/345/236/213//347/237/242/345/200/211/344/270/255/351/243/233/350/273/212.kif +0 -71
  591. data/lib/bioshogi/explain//346/210/246/345/236/213//347/253/213/347/237/263/346/265/201/345/233/233/351/226/223/351/243/233/350/273/212.kif +0 -43
  592. data/lib/bioshogi/explain//346/210/246/345/236/213//350/217/205/344/272/225/346/265/201/344/270/211/351/226/223/351/243/233/350/273/212.kif +0 -23
  593. data/lib/bioshogi/explain//346/210/246/345/236/213//350/217/234/343/200/205/346/262/263/346/265/201/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +0 -24
  594. data/lib/bioshogi/explain//346/210/246/345/236/213//350/242/226/351/243/233/350/273/212.kif +0 -60
  595. data/lib/bioshogi/explain//346/210/246/345/236/213//350/247/222/344/272/244/346/217/233/345/236/213.kif +0 -19
  596. data/lib/bioshogi/explain//346/210/246/345/236/213//350/247/222/344/272/244/346/217/233/346/214/257/343/202/212/351/243/233/350/273/212.kif +0 -64
  597. data/lib/bioshogi/explain//346/210/246/345/236/213//350/247/222/346/217/233/343/202/217/343/202/212/346/227/251/347/271/260/343/202/212/351/212/200.kif +0 -76
  598. data/lib/bioshogi/explain//346/210/246/345/236/213//350/247/222/346/217/233/343/202/217/343/202/212/350/205/260/346/216/233/343/201/221/351/212/200.kif +0 -76
  599. data/lib/bioshogi/explain//346/210/246/345/236/213//350/247/222/351/201/223/343/202/252/343/203/274/343/203/227/343/203/263/345/233/233/351/226/223/351/243/233/350/273/212.kif +0 -12
  600. data/lib/bioshogi/explain//346/210/246/345/236/213//350/266/205/346/200/245/346/210/246.kif +0 -28
  601. data/lib/bioshogi/explain//346/210/246/345/236/213//351/231/275/345/213/225/346/214/257/343/202/212/351/243/233/350/273/212.kif +0 -62
  602. data/lib/bioshogi/explain//346/210/246/345/236/213//351/233/200/345/210/272/343/201/227.kif +0 -140
  603. data/lib/bioshogi/explain//346/210/246/345/236/213//351/254/274/346/256/272/343/201/227.kif +0 -173
  604. data/lib/bioshogi/explain//346/210/246/345/236/213//351/254/274/346/256/272/343/201/227/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +0 -73
  605. data/lib/bioshogi/explain//346/210/246/345/236/213//357/274/224/342/206/222/357/274/223/346/210/246/346/263/225.kif +0 -72
@@ -1,7 +1,7 @@
1
1
  # frozen-string-literal: true
2
2
 
3
3
  module Bioshogi
4
- module Explain
4
+ module Analysis
5
5
  concern :ShapeInfoRelation do
6
6
  included do
7
7
  delegate :board_parser, :location_split, :sorted_soldiers, to: :shape_info
@@ -21,7 +21,7 @@ module Bioshogi
21
21
  # end
22
22
  # end
23
23
  #
24
- # def soldier_hash_table
24
+ # def primary_soldier_hash_table
25
25
  # if shape_info
26
26
  # shape_infos.each_with_object({}) do |e, m|
27
27
  # e.board_parser.primary_soldiers.each_with_object({}) do |s, m|
@@ -1,7 +1,7 @@
1
1
  # frozen-string-literal: true
2
2
 
3
3
  module Bioshogi
4
- module Explain
4
+ module Analysis
5
5
  class SkillSet
6
6
  attr_accessor :attack_infos
7
7
  attr_accessor :defense_infos
@@ -78,6 +78,11 @@ module Bioshogi
78
78
  }.compact.join.presence
79
79
  end
80
80
 
81
+ # 戦法と囲いのスタイル(複数)のなかからもっとも変態に近いものを得る
82
+ def main_style_info
83
+ (attack_infos + defense_infos).collect(&:style_info).max
84
+ end
85
+
81
86
  class List < Array
82
87
  # 重複しているように感じる囲いなどを整理する
83
88
  def normalize
@@ -85,8 +90,8 @@ module Bioshogi
85
90
  # 「ダイヤモンド美濃」から見た「美濃囲い」や「片美濃囲い」を消す
86
91
  list -= list.flat_map { |e| e.ancestors }
87
92
  # さらに「ダイヤモンド美濃」に含まれる「銀美濃」を消す
88
- # 「ダイヤモンド美濃」の直接の親ではないが、派生元と見なしてもよいものが other_parents にある
89
- list -= list.flat_map { |e| e.other_parents.flat_map(&:self_and_ancestors) }
93
+ # 「ダイヤモンド美濃」の直接の親ではないが、派生元と見なしてもよいものが related_ancestors にある
94
+ list -= list.flat_map { |e| e.related_ancestors.flat_map(&:self_and_ancestors) }
90
95
  list
91
96
  end
92
97
 
@@ -0,0 +1,45 @@
1
+ # frozen-string-literal: true
2
+
3
+ module Bioshogi
4
+ module Analysis
5
+ concern :StyleAccessor do
6
+ class_methods do
7
+ def style_reject_keys
8
+ # [:"力戦", :"居玉"].to_set
9
+ [].to_set
10
+ end
11
+
12
+ def styles_hash
13
+ @styles_hash ||= yield_self do
14
+ list = values.reject { |e| style_reject_keys.include?(e.key) }
15
+ # list = list.take(7)
16
+ list = list.sort_by { |e| -e.frequency }
17
+ backets = Array.new(list.size, StyleInfo.count.pred) # 正確に四分割できないため「変態」で埋める
18
+ step = list.size / StyleInfo.count
19
+ StyleInfo.count.pred.times do |i|
20
+ range = (i * step)...(i.next * step)
21
+ backets.fill(i, range) # 最初の3区分を 0, 1, 2, で埋める
22
+ end
23
+ list.each_with_object({}).with_index do |(e, m), i|
24
+ m[e.key] = StyleInfo.fetch(backets[i])
25
+ end
26
+ end
27
+ end
28
+ end
29
+
30
+ # 王道 or 変態
31
+ # 新しい戦法を追加したばかりのときはテーブルにない場合がある? → 必ずある
32
+ # なぜなら最初に新しい戦法を追加するのは bioshogi 側なため。
33
+ # したがってない場合を心配する必要はない。
34
+ def style_info
35
+ self.class.styles_hash.fetch(key)
36
+ end
37
+
38
+ # 使用数
39
+ # これは Frequency にない場合もあるため、ない場合に 0 を返すのは正しい。
40
+ def frequency
41
+ Frequency[key] || 0
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,15 @@
1
+ # frozen-string-literal: true
2
+
3
+ module Bioshogi
4
+ module Analysis
5
+ class StyleInfo
6
+ include ApplicationMemoryRecord
7
+ memory_record [
8
+ { key: "王道", segment: :majority, },
9
+ { key: "準王道", segment: :majority, },
10
+ { key: "準変態", segment: :minority, },
11
+ { key: "変態", segment: :minority, },
12
+ ]
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,408 @@
1
+ # -*- frozen_string_literal: true -*-
2
+ # /Users/ikeda/src/bioshogi/lib/bioshogi/analysis/tactic_hit_turn_table_generator.rb から生成しているので編集するべからず
3
+ module Bioshogi
4
+ module Analysis
5
+ TacticHitTurnTable = {
6
+ :"ロケット" => nil,
7
+ :"力戦" => nil,
8
+ :"名人に定跡なし" => nil,
9
+ :"大駒全ブッチ" => nil,
10
+ :"対居飛車" => nil,
11
+ :"対抗形" => nil,
12
+ :"対振り飛車" => nil,
13
+ :"対穴熊" => nil,
14
+ :"居玉" => nil,
15
+ :"急戦" => nil,
16
+ :"手得角交換型" => nil,
17
+ :"持久戦" => nil,
18
+ :"相入玉" => nil,
19
+ :"相居玉" => nil,
20
+ :"相居飛車" => nil,
21
+ :"相振り飛車" => nil,
22
+ :"相穴熊" => nil,
23
+ :"短手数" => nil,
24
+ :"穴熊" => nil,
25
+ :"背水の陣" => nil,
26
+ :"長手数" => nil,
27
+ :"2段ロケット" => 1,
28
+ :"3段ロケット" => 1,
29
+ :"4段ロケット" => 1,
30
+ :"5段ロケット" => 1,
31
+ :"6段ロケット" => 1,
32
+ :"たすきの角" => 1,
33
+ :"たすきの銀" => 1,
34
+ :"ふんどしの桂" => 1,
35
+ :"パンツを脱ぐ" => 1,
36
+ :"一間竜" => 1,
37
+ :"初手▲3六歩戦法" => 1,
38
+ :"初手▲7八銀戦法" => 1,
39
+ :"初手▲7八飛戦法" => 1,
40
+ :"割り打ちの銀" => 1,
41
+ :"原始中飛車" => 1,
42
+ :"垂れ歩" => 1,
43
+ :"尻銀" => 1,
44
+ :"居飛車" => 1,
45
+ :"振り飛車" => 1,
46
+ :"桂頭の銀" => 1,
47
+ :"歩頭の桂" => 1,
48
+ :"田楽刺し" => 1,
49
+ :"突き違いの歩" => 1,
50
+ :"端玉には端歩" => 1,
51
+ :"継ぎ桂" => 1,
52
+ :"腹銀" => 1,
53
+ :"遠見の角" => 1,
54
+ :"金底の歩" => 1,
55
+ :"銀ばさみ" => 1,
56
+ :"2手目△3ニ飛戦法" => 2,
57
+ :"2手目△3二銀システム" => 2,
58
+ :"2手目△6二銀戦法" => 2,
59
+ :"2手目△7四歩戦法" => 2,
60
+ :"パックマン戦法" => 2,
61
+ :"嬉野流" => 2,
62
+ :"新米長玉" => 2,
63
+ :"阪田流2手目△9四歩" => 2,
64
+ :"こびん攻め" => 3,
65
+ :"メイドシステム" => 3,
66
+ :"天彦流▲6六角" => 3,
67
+ :"手損角交換型" => 3,
68
+ :"継ぎ歩" => 3,
69
+ :"英ちゃん流中飛車" => 3,
70
+ :"角不成" => 3,
71
+ :"角道オープン四間飛車" => 3,
72
+ :"連打の歩" => 3,
73
+ :"金沢流" => 3,
74
+ :"陽動振り飛車" => 3,
75
+ :"鬼殺し" => 3,
76
+ :"4手目△3三角戦法" => 4,
77
+ :"羽生式袖飛車" => 4,
78
+ :"菜々河流△4四角" => 4,
79
+ :"角頭歩戦法" => 4,
80
+ :"5手爆弾" => 5,
81
+ :"5筋位取り中飛車" => 5,
82
+ :"ムリヤリ早石田" => 5,
83
+ :"位の確保" => 5,
84
+ :"四間飛車" => 5,
85
+ :"山崎流パックマン" => 5,
86
+ :"早石田" => 5,
87
+ :"無敵囲い" => 5,
88
+ :"穴角向かい飛車" => 5,
89
+ :"筋違い角" => 5,
90
+ :"xaby角戦法" => 6,
91
+ :"うっかり三間飛車" => 6,
92
+ :"ゴキゲン中飛車" => 6,
93
+ :"右四間飛車超急戦" => 6,
94
+ :"新嬉野流" => 6,
95
+ :"相掛かり" => 6,
96
+ :"▲5五龍中飛車" => 7,
97
+ :"先手中飛車" => 7,
98
+ :"升田式石田流" => 7,
99
+ :"原始棒銀" => 7,
100
+ :"必笑ひっかけ戦法" => 7,
101
+ :"新石田流" => 7,
102
+ :"目くらまし戦法" => 7,
103
+ :"角交換型" => 7,
104
+ :"飛車不成" => 7,
105
+ :"きmきm金" => 8,
106
+ :"ウソ矢倉" => 8,
107
+ :"向かい飛車" => 8,
108
+ :"相筋違い角" => 8,
109
+ :"角換わり" => 8,
110
+ :"都成流△3一金" => 8,
111
+ :"鬼殺し向かい飛車" => 8,
112
+ :"きんとうん戦法" => 9,
113
+ :"カメレオン戦法" => 9,
114
+ :"土下座の歩" => 9,
115
+ :"大隅囲い" => 9,
116
+ :"天彦流向かい飛車" => 9,
117
+ :"新鬼殺し" => 9,
118
+ :"早囲い" => 9,
119
+ :"村田システム" => 9,
120
+ :"耀龍ひねり飛車" => 9,
121
+ :"菅井流三間飛車" => 9,
122
+ :"△3三飛戦法" => 10,
123
+ :"ダイレクト向かい飛車" => 10,
124
+ :"一間飛車" => 10,
125
+ :"戸部流4→3戦法" => 10,
126
+ :"阪田流向かい飛車" => 10,
127
+ :"ずれ美濃" => 11,
128
+ :"エルモ囲い" => 11,
129
+ :"タランチュラ戦法" => 11,
130
+ :"三間飛車" => 11,
131
+ :"中住まい" => 11,
132
+ :"丸山ワクチン" => 11,
133
+ :"久保流早石田" => 11,
134
+ :"九間飛車" => 11,
135
+ :"棒玉" => 11,
136
+ :"3→4→3戦法" => 12,
137
+ :"△2三歩戦法" => 12,
138
+ :"カニ囲い" => 12,
139
+ :"一手損角換わり" => 12,
140
+ :"対矢倉急戦棒銀" => 12,
141
+ :"英春流かまいたち戦法" => 12,
142
+ :"菜々河流向かい飛車" => 12,
143
+ :"カニ缶囲い" => 13,
144
+ :"入玉" => 13,
145
+ :"左山囲い" => 13,
146
+ :"耀龍四間飛車" => 13,
147
+ :"角道不突き左美濃" => 13,
148
+ :"鈴木流早石田" => 13,
149
+ :"魔界四間飛車" => 13,
150
+ :"右四間飛車急戦" => 14,
151
+ :"あずまや囲い" => 15,
152
+ :"ネコ式タテ歩取り" => 15,
153
+ :"メリケン向かい飛車" => 15,
154
+ :"三間飛車ミレニアム" => 15,
155
+ :"右四間飛車" => 15,
156
+ :"天守閣囲い" => 15,
157
+ :"棒銀" => 15,
158
+ :"極限早繰り銀" => 15,
159
+ :"横歩取り" => 15,
160
+ :"裏アヒル囲い" => 15,
161
+ :"裏アヒル戦法" => 15,
162
+ :"角交換振り飛車" => 15,
163
+ :"角換わり棒銀" => 15,
164
+ :"超速▲3七銀戦法" => 15,
165
+ :"△3三桂戦法" => 16,
166
+ :"△3三角型空中戦法" => 16,
167
+ :"ムリヤリ矢倉" => 16,
168
+ :"ちょんまげ美濃" => 17,
169
+ :"はく式四間飛車" => 17,
170
+ :"ひねり飛車" => 17,
171
+ :"カブト囲い" => 17,
172
+ :"ゴリゴリ金" => 17,
173
+ :"ノーマル四間飛車" => 17,
174
+ :"中原囲い" => 17,
175
+ :"勇気流" => 17,
176
+ :"四間飛車ミレニアム" => 17,
177
+ :"幽霊角" => 17,
178
+ :"振り飛車エルモ" => 17,
179
+ :"振り飛車串カツ囲い" => 17,
180
+ :"新ポンポン桂" => 17,
181
+ :"片美濃囲い" => 17,
182
+ :"端棒銀" => 17,
183
+ :"舟囲い" => 17,
184
+ :"超急戦" => 17,
185
+ :"連盟美濃" => 17,
186
+ :"青野流" => 17,
187
+ :"飯島流引き角戦法" => 17,
188
+ :"鳥刺し" => 17,
189
+ :"いかだ囲い" => 18,
190
+ :"やばボーズ流" => 18,
191
+ :"ノーガード戦法" => 18,
192
+ :"室岡システム" => 18,
193
+ :"相横歩取り" => 18,
194
+ :"遠山流" => 18,
195
+ :"つくつくぼうし戦法" => 19,
196
+ :"カニカニ金" => 19,
197
+ :"三間飛車藤井システム" => 19,
198
+ :"中飛車ミレニアム" => 19,
199
+ :"大盾囲い" => 19,
200
+ :"新村田システム" => 19,
201
+ :"玉頭位取り" => 19,
202
+ :"相掛かり棒銀" => 19,
203
+ :"矢倉早囲い" => 19,
204
+ :"稲庭戦法" => 19,
205
+ :"竹部スペシャル" => 19,
206
+ :"美濃囲い" => 19,
207
+ :"舟囲いDX" => 19,
208
+ :"角換わり早繰り銀" => 19,
209
+ :"△3三金型早繰り銀" => 20,
210
+ :"△4五角戦法" => 20,
211
+ :"一間飛車穴熊" => 20,
212
+ :"中座飛車" => 20,
213
+ :"裾固め" => 20,
214
+ :"GAVA角" => 21,
215
+ :"▲5七金戦法" => 21,
216
+ :"ヒラメ戦法" => 21,
217
+ :"ポンポン桂" => 21,
218
+ :"対振り持久戦" => 21,
219
+ :"悪形矢倉" => 21,
220
+ :"桐山流タテ歩棒銀" => 21,
221
+ :"片ツノ銀囲い" => 21,
222
+ :"石田流" => 21,
223
+ :"立石流四間飛車" => 21,
224
+ :"藤井システム" => 21,
225
+ :"鎖鎌銀" => 21,
226
+ :"アヒル囲い" => 22,
227
+ :"アヒル戦法" => 22,
228
+ :"オールド雁木" => 22,
229
+ :"左美濃急戦" => 22,
230
+ :"振り飛車穴熊" => 22,
231
+ :"矢倉中飛車" => 22,
232
+ :"矢倉流中飛車" => 22,
233
+ :"UFO銀" => 23,
234
+ :"へなちょこ急戦" => 23,
235
+ :"カニカニ銀" => 23,
236
+ :"中原流相掛かり" => 23,
237
+ :"坊主美濃" => 23,
238
+ :"塚田スペシャル" => 23,
239
+ :"天野矢倉" => 23,
240
+ :"屋敷流二枚銀棒銀型" => 23,
241
+ :"暴銀" => 23,
242
+ :"桐山流中原囲い" => 23,
243
+ :"矢倉右玉" => 23,
244
+ :"逆棒銀" => 23,
245
+ :"金美濃" => 23,
246
+ :"銀雲雀" => 23,
247
+ :"雲隠れ玉" => 23,
248
+ :"鷺宮定跡" => 23,
249
+ :"エルモ急戦" => 24,
250
+ :"レグスペ" => 24,
251
+ :"右四間飛車左美濃" => 24,
252
+ :"天守閣美濃" => 24,
253
+ :"棒金" => 24,
254
+ :"矢倉新24手組" => 24,
255
+ :"矢倉旧24手組" => 24,
256
+ :"5筋位取り" => 25,
257
+ :"6筋位取り" => 25,
258
+ :"ゴリラの右手" => 25,
259
+ :"ノーマル三間飛車" => 25,
260
+ :"モノレール囲い" => 25,
261
+ :"土居矢倉" => 25,
262
+ :"居飛車金無双" => 25,
263
+ :"居飛車金美濃" => 25,
264
+ :"屋敷流二枚銀" => 25,
265
+ :"山田定跡" => 25,
266
+ :"振り飛車天守閣美濃" => 25,
267
+ :"振り飛車端玉銀冠" => 25,
268
+ :"文鎮囲い" => 25,
269
+ :"森下システム" => 25,
270
+ :"森安流袖飛車穴熊" => 25,
271
+ :"片穴熊" => 25,
272
+ :"矢倉▲3七銀戦法" => 25,
273
+ :"神吉流三間飛車" => 25,
274
+ :"米長流急戦矢倉" => 25,
275
+ :"袖飛車" => 25,
276
+ :"豆腐矢倉" => 25,
277
+ :"金無双急戦" => 25,
278
+ :"金盾囲い" => 25,
279
+ :"銀美濃" => 25,
280
+ :"▲4六銀右急戦" => 26,
281
+ :"△7二飛亜急戦" => 26,
282
+ :"モノレール向かい飛車" => 26,
283
+ :"九間飛車左穴熊" => 26,
284
+ :"加藤流袖飛車" => 26,
285
+ :"箱入り娘" => 26,
286
+ :"腰掛け銀" => 26,
287
+ :"阿久津流急戦矢倉" => 26,
288
+ :"いちご囲い" => 27,
289
+ :"へこみ矢倉" => 27,
290
+ :"ツノ銀囲い" => 27,
291
+ :"トマホーク" => 27,
292
+ :"ミレニアム囲い" => 27,
293
+ :"幻想四間飛車" => 27,
294
+ :"木村美濃" => 27,
295
+ :"筋違い角蟻地獄戦法" => 27,
296
+ :"角矢倉" => 27,
297
+ :"金矢倉" => 27,
298
+ :"離れ金無双" => 27,
299
+ :"▲4六銀左急戦" => 28,
300
+ :"オリジナル雁木" => 28,
301
+ :"ショーダンオリジナル" => 28,
302
+ :"中原流急戦矢倉" => 28,
303
+ :"中飛車左穴熊" => 28,
304
+ :"振り飛車ミレニアム" => 28,
305
+ :"玉頭銀" => 28,
306
+ :"ツノ銀雁木" => 29,
307
+ :"大山美濃" => 29,
308
+ :"左美濃" => 29,
309
+ :"流れ矢倉" => 29,
310
+ :"金無双" => 29,
311
+ :"カギ囲い" => 30,
312
+ :"コーヤン流三間飛車" => 30,
313
+ :"羽生流右玉" => 30,
314
+ :"金多伝" => 30,
315
+ :"▲4五歩早仕掛け" => 31,
316
+ :"オザワシステム" => 31,
317
+ :"セメント囲い" => 31,
318
+ :"下町流三間飛車" => 31,
319
+ :"升田美濃" => 31,
320
+ :"新風車" => 31,
321
+ :"無責任矢倉" => 31,
322
+ :"片銀冠" => 31,
323
+ :"神吉流穴熊" => 31,
324
+ :"空中楼閣" => 31,
325
+ :"紙穴熊" => 31,
326
+ :"脇システム" => 31,
327
+ :"銀矢倉" => 31,
328
+ :"飯島流相掛かり引き角戦法" => 31,
329
+ :"ボナンザ囲い" => 32,
330
+ :"右玉" => 32,
331
+ :"カブト美濃" => 33,
332
+ :"串カツ囲い" => 33,
333
+ :"振り飛車四枚美濃" => 33,
334
+ :"糸谷流右玉" => 33,
335
+ :"美濃熊囲い" => 33,
336
+ :"英春流カメレオン" => 33,
337
+ :"角換わり右玉" => 33,
338
+ :"角換わり腰掛け銀旧型" => 33,
339
+ :"銀立ち矢倉" => 33,
340
+ :"真部流" => 34,
341
+ :"高美濃囲い" => 34,
342
+ :"チョコレート囲い" => 35,
343
+ :"ツノ銀中飛車" => 35,
344
+ :"ツノ銀型右玉" => 35,
345
+ :"一直線穴熊" => 35,
346
+ :"居飛穴音無しの構え" => 35,
347
+ :"新型雁木" => 35,
348
+ :"端玉銀冠" => 35,
349
+ :"花村流名古屋戦法" => 35,
350
+ :"角換わり腰掛け銀" => 35,
351
+ :"金銀橋" => 35,
352
+ :"Uターン飛車" => 36,
353
+ :"かんぴょう囲い" => 36,
354
+ :"居飛車穴熊" => 36,
355
+ :"銀多伝" => 36,
356
+ :"一文字矢倉" => 37,
357
+ :"居飛車銀冠" => 37,
358
+ :"松尾流穴熊" => 37,
359
+ :"総矢倉" => 37,
360
+ :"高矢倉" => 37,
361
+ :"三段右玉" => 38,
362
+ :"四枚美濃" => 38,
363
+ :"矢倉棒銀" => 38,
364
+ :"ダイヤモンド美濃" => 39,
365
+ :"四枚穴熊" => 39,
366
+ :"金門矢倉" => 39,
367
+ :"銀冠" => 39,
368
+ :"間宮久夢流" => 39,
369
+ :"カタ囲い" => 40,
370
+ :"ショーダンシステム" => 40,
371
+ :"中原飛車" => 40,
372
+ :"対ひねり飛車たこ金戦法" => 40,
373
+ :"銀冠穴熊" => 40,
374
+ :"雀刺し" => 40,
375
+ :"雁木右玉" => 40,
376
+ :"振り飛車銀冠穴熊" => 41,
377
+ :"木村定跡" => 41,
378
+ :"楠本式石田流" => 41,
379
+ :"同型矢倉" => 42,
380
+ :"四手角" => 42,
381
+ :"四角矢倉" => 43,
382
+ :"隅矢倉" => 43,
383
+ :"高田流左玉" => 43,
384
+ :"菊水矢倉" => 44,
385
+ :"清野流岐阜戦法" => 45,
386
+ :"飛騨の中飛車合掌造り" => 45,
387
+ :"流線矢倉" => 46,
388
+ :"四枚銀冠" => 47,
389
+ :"矢倉穴熊" => 47,
390
+ :"菱矢倉" => 48,
391
+ :"藤森流急戦矢倉" => 48,
392
+ :"右矢倉" => 49,
393
+ :"居飛車金冠" => 49,
394
+ :"振り飛車ビッグ4" => 49,
395
+ :"地下鉄飛車" => 50,
396
+ :"富士見矢倉" => 50,
397
+ :"ビッグ4" => 52,
398
+ :"風車" => 52,
399
+ :"穴角戦法" => 53,
400
+ :"銀冠の小部屋" => 60,
401
+ :"都詰め" => 61,
402
+ :"四段端玉" => 81,
403
+ :"穴熊の姿焼き" => 84,
404
+ :"大駒コンプリート" => 97,
405
+ :"駒柱" => 121,
406
+ }
407
+ end
408
+ end
@@ -1,33 +1,33 @@
1
- # -*- compile-command: "ruby -I../.. -rbioshogi -e Bioshogi::Explain::TacticHitTurnTableGenerator.new.generate" -*-
2
-
3
1
  module Bioshogi
4
- module Explain
2
+ module Analysis
5
3
  class TacticHitTurnTableGenerator
6
- def generate
7
- body = body_format(turns_hash.inspect)
8
- output_file.write(template % { body: body })
9
- puts "write: #{output_file}"
4
+ def initialize(options = {})
5
+ @options = {
6
+ verbose: true,
7
+ }.merge(options)
10
8
  end
11
9
 
12
- private
10
+ def call
11
+ body = body_format(to_h.inspect)
12
+ output_file.write(template % { body: body })
13
+ if @options[:verbose]
14
+ puts "write: #{output_file}"
15
+ end
16
+ end
13
17
 
14
- def turns_hash
15
- hash = {}
16
- Explain::TacticInfo.all_elements.each do |e|
17
- print "."
18
- info = e.sample_kif_info
19
- found = info.formatter.container.hand_logs.each.with_index do |hand_log, i|
18
+ def to_h
19
+ list = Analysis::TacticInfo.all_elements.collect do |e|
20
+ turn = nil
21
+ e.main_reference_info.formatter.container.hand_logs.each.with_index do |hand_log, i|
20
22
  if hand_log.skill_set.flat_map { |e| e.flat_map(&:key) }.include?(e.key)
21
- hash[e.key.to_s] = i.next
22
- break true
23
+ turn = i.next
24
+ break
23
25
  end
24
26
  end
25
- unless found
26
- raise e.key
27
- end
27
+ [e, turn]
28
28
  end
29
- puts
30
- hash
29
+
30
+ list.sort_by { |e, turn| [turn || 0, e.name] }.collect { |e, turn| [e.name, turn] }.to_h
31
31
  end
32
32
 
33
33
  def output_file
@@ -39,7 +39,7 @@ module Bioshogi
39
39
  o << "# -*- frozen_string_literal: true -*-"
40
40
  o << "# #{__FILE__} から生成しているので編集するべからず"
41
41
  o << "module Bioshogi"
42
- o << " module Explain"
42
+ o << " module Analysis"
43
43
  o << " TacticHitTurnTable = {"
44
44
  o << "%{body}"
45
45
  o << " }"
@@ -54,6 +54,7 @@ module Bioshogi
54
54
  str = str.gsub(/\s*,\s*/, ",\n")
55
55
  str = str.gsub(/^(?=")/, " " * 3)
56
56
  str = str.gsub("=>", " => ")
57
+ str = str.gsub(/ "/, ':"')
57
58
  str = str.rstrip
58
59
  end
59
60
  end