eyeling 1.32.1 → 1.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (626) hide show
  1. package/README.md +86 -15
  2. package/bin/eyeling.cjs +56 -4
  3. package/dist/browser/eyeling.browser.js +1 -0
  4. package/examples/eyelang/INTEGRATION.md +13 -0
  5. package/examples/eyelang/README.md +628 -0
  6. package/examples/eyelang/SPEC.md +684 -0
  7. package/examples/eyelang/access-control-policy.pl +52 -0
  8. package/examples/eyelang/ackermann.pl +46 -0
  9. package/examples/eyelang/age.pl +28 -0
  10. package/examples/eyelang/aliases-and-namespaces.pl +22 -0
  11. package/examples/eyelang/alignment-demo.pl +44 -0
  12. package/examples/eyelang/allen-interval-calculus.pl +64 -0
  13. package/examples/eyelang/ancestor.pl +21 -0
  14. package/examples/eyelang/animal.pl +21 -0
  15. package/examples/eyelang/annotation-rdf12.ttl +12 -0
  16. package/examples/eyelang/annotation.pl +34 -0
  17. package/examples/eyelang/auroracare.pl +309 -0
  18. package/examples/eyelang/backward.pl +12 -0
  19. package/examples/eyelang/basic-monadic.pl +10018 -0
  20. package/examples/eyelang/bayes-diagnosis.pl +108 -0
  21. package/examples/eyelang/bayes-therapy.pl +182 -0
  22. package/examples/eyelang/beam-deflection.pl +50 -0
  23. package/examples/eyelang/blocks-world-planning.pl +75 -0
  24. package/examples/eyelang/bmi.pl +232 -0
  25. package/examples/eyelang/braking-safety-worlds.pl +69 -0
  26. package/examples/eyelang/buck-converter-design.pl +78 -0
  27. package/examples/eyelang/cache-performance.pl +54 -0
  28. package/examples/eyelang/canary-release.pl +49 -0
  29. package/examples/eyelang/cat-koko.pl +24 -0
  30. package/examples/eyelang/clinical-trial-screening.pl +92 -0
  31. package/examples/eyelang/collatz-1000.pl +14 -0
  32. package/examples/eyelang/combinatorics-findall-sort.pl +37 -0
  33. package/examples/eyelang/competitive-enzyme-kinetics.pl +78 -0
  34. package/examples/eyelang/complex-matrix-stability.pl +45 -0
  35. package/examples/eyelang/complex.pl +121 -0
  36. package/examples/eyelang/composition-of-injective-functions-is-injective.pl +50 -0
  37. package/examples/eyelang/context-association.pl +53 -0
  38. package/examples/eyelang/control-system.pl +72 -0
  39. package/examples/eyelang/cryptarithmetic-send-more-money.pl +49 -0
  40. package/examples/eyelang/cyclic-path.pl +16 -0
  41. package/examples/eyelang/d3-group.pl +100 -0
  42. package/examples/eyelang/dairy-energy-balance.pl +65 -0
  43. package/examples/eyelang/data-negotiation.pl +39 -0
  44. package/examples/eyelang/deep-taxonomy-10.pl +115 -0
  45. package/examples/eyelang/deep-taxonomy-100.pl +385 -0
  46. package/examples/eyelang/deep-taxonomy-1000.pl +3085 -0
  47. package/examples/eyelang/deep-taxonomy-10000.pl +30094 -0
  48. package/examples/eyelang/deep-taxonomy-100000.pl +300184 -0
  49. package/examples/eyelang/delfour.pl +281 -0
  50. package/examples/eyelang/dense-hamiltonian-cycle.pl +92 -0
  51. package/examples/eyelang/deontic-logic.pl +52 -0
  52. package/examples/eyelang/derived-backward-rule.pl +30 -0
  53. package/examples/eyelang/derived-rule.pl +27 -0
  54. package/examples/eyelang/diamond-property.pl +38 -0
  55. package/examples/eyelang/dijkstra-findall-sort.pl +44 -0
  56. package/examples/eyelang/dijkstra-risk-path.pl +86 -0
  57. package/examples/eyelang/dijkstra.pl +46 -0
  58. package/examples/eyelang/dining-philosophers.pl +140 -0
  59. package/examples/eyelang/directional-language.ttl +9 -0
  60. package/examples/eyelang/dog.pl +25 -0
  61. package/examples/eyelang/drone-corridor-planner.pl +51 -0
  62. package/examples/eyelang/easter-computus.pl +89 -0
  63. package/examples/eyelang/electrical-rc-filter.pl +36 -0
  64. package/examples/eyelang/epidemic-policy.pl +67 -0
  65. package/examples/eyelang/equivalence-classes-overlap-implies-same-class.pl +27 -0
  66. package/examples/eyelang/eulerian-path.pl +85 -0
  67. package/examples/eyelang/ev-range-worlds.pl +82 -0
  68. package/examples/eyelang/exact-cover-sudoku.pl +113 -0
  69. package/examples/eyelang/existential-rule.pl +18 -0
  70. package/examples/eyelang/exoplanet-validation-worlds.pl +88 -0
  71. package/examples/eyelang/expression-eval.pl +43 -0
  72. package/examples/eyelang/eyeling-ackermann.n3 +41 -0
  73. package/examples/eyelang/eyeling-age-threshold.n3 +12 -0
  74. package/examples/eyelang/eyeling-alignment-demo.n3 +11 -0
  75. package/examples/eyelang/eyeling-allen-interval-calculus-small.n3 +13 -0
  76. package/examples/eyelang/eyeling-backward-recursion.n3 +11 -0
  77. package/examples/eyelang/eyeling-backward.n3 +10 -0
  78. package/examples/eyelang/eyeling-basic-monadic-small.n3 +11 -0
  79. package/examples/eyelang/eyeling-bmi.n3 +10 -0
  80. package/examples/eyelang/eyeling-cat-koko.n3 +15 -0
  81. package/examples/eyelang/eyeling-collatz-small.n3 +11 -0
  82. package/examples/eyelang/eyeling-collection.n3 +11 -0
  83. package/examples/eyelang/eyeling-complex-arithmetic.n3 +10 -0
  84. package/examples/eyelang/eyeling-context-association.n3 +11 -0
  85. package/examples/eyelang/eyeling-control-system-small.n3 +11 -0
  86. package/examples/eyelang/eyeling-crypto-builtins-extra.n3 +10 -0
  87. package/examples/eyelang/eyeling-crypto-builtins.n3 +8 -0
  88. package/examples/eyelang/eyeling-deep-taxonomy-10.n3 +18 -0
  89. package/examples/eyelang/eyeling-derived-backward-rule-flat.n3 +10 -0
  90. package/examples/eyelang/eyeling-derived-rule-flat.n3 +9 -0
  91. package/examples/eyelang/eyeling-digital-product-passport-small.n3 +11 -0
  92. package/examples/eyelang/eyeling-dijkstra-tiny.n3 +14 -0
  93. package/examples/eyelang/eyeling-dog-license.n3 +13 -0
  94. package/examples/eyelang/eyeling-drone-corridor-planner-small.n3 +13 -0
  95. package/examples/eyelang/eyeling-equals.n3 +8 -0
  96. package/examples/eyelang/eyeling-equivalence-classes.n3 +11 -0
  97. package/examples/eyelang/eyeling-euler-identity.n3 +9 -0
  98. package/examples/eyelang/eyeling-existential-rule.n3 +9 -0
  99. package/examples/eyelang/eyeling-expression-eval.n3 +11 -0
  100. package/examples/eyelang/eyeling-family-cousins-extended.n3 +12 -0
  101. package/examples/eyelang/eyeling-fastpow.n3 +10 -0
  102. package/examples/eyelang/eyeling-fibonacci.n3 +44 -0
  103. package/examples/eyelang/eyeling-french-cities-reachability.n3 +22 -0
  104. package/examples/eyelang/eyeling-goldbach-small.n3 +22 -0
  105. package/examples/eyelang/eyeling-good-cobbler.n3 +9 -0
  106. package/examples/eyelang/eyeling-list-builtins.n3 +10 -0
  107. package/examples/eyelang/eyeling-list-collection-extra.n3 +9 -0
  108. package/examples/eyelang/eyeling-math-builtins.n3 +9 -0
  109. package/examples/eyelang/eyeling-string-builtins-extra.n3 +9 -0
  110. package/examples/eyelang/eyeling-string-builtins.n3 +10 -0
  111. package/examples/eyelang/eyeling-time-builtins.n3 +11 -0
  112. package/examples/eyelang/eyeling-time-components-extra.n3 +10 -0
  113. package/examples/eyelang/eyeling-witch.n3 +10 -0
  114. package/examples/eyelang/family-cousins.n3 +17 -0
  115. package/examples/eyelang/family-cousins.pl +65 -0
  116. package/examples/eyelang/fastpow.pl +53 -0
  117. package/examples/eyelang/fft8-numeric.pl +83 -0
  118. package/examples/eyelang/fibonacci.pl +53 -0
  119. package/examples/eyelang/field-nitrogen-balance.pl +70 -0
  120. package/examples/eyelang/flandor.pl +296 -0
  121. package/examples/eyelang/floating-point.pl +23 -0
  122. package/examples/eyelang/four-color-map.pl +127 -0
  123. package/examples/eyelang/fundamental-theorem-arithmetic.pl +113 -0
  124. package/examples/eyelang/gcd-bezout-identity.pl +48 -0
  125. package/examples/eyelang/gd-step-certified.pl +158 -0
  126. package/examples/eyelang/gdpr-compliance.pl +69 -0
  127. package/examples/eyelang/goldbach-1000.pl +185 -0
  128. package/examples/eyelang/good-cobbler.pl +14 -0
  129. package/examples/eyelang/gps.pl +152 -0
  130. package/examples/eyelang/graph-reachability.pl +36 -0
  131. package/examples/eyelang/gray-code-counter.pl +48 -0
  132. package/examples/eyelang/greatest-lower-bound-uniqueness.pl +28 -0
  133. package/examples/eyelang/group-inverse-uniqueness.pl +34 -0
  134. package/examples/eyelang/hamiltonian-cycle.pl +55 -0
  135. package/examples/eyelang/hamiltonian-path.pl +49 -0
  136. package/examples/eyelang/hamming-code.pl +105 -0
  137. package/examples/eyelang/hanoi.pl +20 -0
  138. package/examples/eyelang/heat-loss.pl +51 -0
  139. package/examples/eyelang/heron-theorem.pl +36 -0
  140. package/examples/eyelang/ideal-gas-law.pl +37 -0
  141. package/examples/eyelang/illegitimate-reasoning.pl +88 -0
  142. package/examples/eyelang/kaprekar.pl +32 -0
  143. package/examples/eyelang/law-of-cosines.pl +31 -0
  144. package/examples/eyelang/least-squares-regression.pl +81 -0
  145. package/examples/eyelang/list-collection.pl +33 -0
  146. package/examples/eyelang/lldm.pl +78 -0
  147. package/examples/eyelang/manufacturing-quality-control.pl +73 -0
  148. package/examples/eyelang/matrix.pl +296 -0
  149. package/examples/eyelang/microgrid-dispatch.pl +85 -0
  150. package/examples/eyelang/monkey-bananas.pl +45 -0
  151. package/examples/eyelang/n-queens.pl +23 -0
  152. package/examples/eyelang/n3-builtins.n3 +28 -0
  153. package/examples/eyelang/network-sla.pl +48 -0
  154. package/examples/eyelang/newton-raphson.pl +49 -0
  155. package/examples/eyelang/nixon-diamond.pl +37 -0
  156. package/examples/eyelang/odrl-dpv-healthcare-risk-ranked.pl +266 -0
  157. package/examples/eyelang/odrl-dpv-risk-ranked.pl +320 -0
  158. package/examples/eyelang/orbital-transfer-design.pl +113 -0
  159. package/examples/eyelang/output/access-control-policy.pl +2 -0
  160. package/examples/eyelang/output/ackermann.pl +12 -0
  161. package/examples/eyelang/output/age.pl +2 -0
  162. package/examples/eyelang/output/aliases-and-namespaces.pl +5 -0
  163. package/examples/eyelang/output/alignment-demo.pl +32 -0
  164. package/examples/eyelang/output/allen-interval-calculus.pl +154 -0
  165. package/examples/eyelang/output/ancestor.pl +6 -0
  166. package/examples/eyelang/output/animal.pl +4 -0
  167. package/examples/eyelang/output/annotation-rdf12.ttl +1 -0
  168. package/examples/eyelang/output/annotation.pl +4 -0
  169. package/examples/eyelang/output/auroracare.pl +117 -0
  170. package/examples/eyelang/output/backward.pl +1 -0
  171. package/examples/eyelang/output/basic-monadic.pl +1518 -0
  172. package/examples/eyelang/output/bayes-diagnosis.pl +13 -0
  173. package/examples/eyelang/output/bayes-therapy.pl +23 -0
  174. package/examples/eyelang/output/beam-deflection.pl +5 -0
  175. package/examples/eyelang/output/blocks-world-planning.pl +4 -0
  176. package/examples/eyelang/output/bmi.pl +32 -0
  177. package/examples/eyelang/output/braking-safety-worlds.pl +18 -0
  178. package/examples/eyelang/output/buck-converter-design.pl +6 -0
  179. package/examples/eyelang/output/cache-performance.pl +4 -0
  180. package/examples/eyelang/output/canary-release.pl +5 -0
  181. package/examples/eyelang/output/cat-koko.pl +3 -0
  182. package/examples/eyelang/output/clinical-trial-screening.pl +9 -0
  183. package/examples/eyelang/output/collatz-1000.pl +1000 -0
  184. package/examples/eyelang/output/combinatorics-findall-sort.pl +2 -0
  185. package/examples/eyelang/output/competitive-enzyme-kinetics.pl +6 -0
  186. package/examples/eyelang/output/complex-matrix-stability.pl +5 -0
  187. package/examples/eyelang/output/complex.pl +1 -0
  188. package/examples/eyelang/output/composition-of-injective-functions-is-injective.pl +2 -0
  189. package/examples/eyelang/output/context-association.pl +3 -0
  190. package/examples/eyelang/output/control-system.pl +6 -0
  191. package/examples/eyelang/output/cryptarithmetic-send-more-money.pl +6 -0
  192. package/examples/eyelang/output/cyclic-path.pl +16 -0
  193. package/examples/eyelang/output/d3-group.pl +2 -0
  194. package/examples/eyelang/output/dairy-energy-balance.pl +13 -0
  195. package/examples/eyelang/output/data-negotiation.pl +1 -0
  196. package/examples/eyelang/output/deep-taxonomy-10.pl +16 -0
  197. package/examples/eyelang/output/deep-taxonomy-100.pl +16 -0
  198. package/examples/eyelang/output/deep-taxonomy-1000.pl +16 -0
  199. package/examples/eyelang/output/deep-taxonomy-10000.pl +16 -0
  200. package/examples/eyelang/output/deep-taxonomy-100000.pl +16 -0
  201. package/examples/eyelang/output/delfour.pl +31 -0
  202. package/examples/eyelang/output/dense-hamiltonian-cycle.pl +4 -0
  203. package/examples/eyelang/output/deontic-logic.pl +4 -0
  204. package/examples/eyelang/output/derived-backward-rule.pl +3 -0
  205. package/examples/eyelang/output/derived-rule.pl +2 -0
  206. package/examples/eyelang/output/diamond-property.pl +4 -0
  207. package/examples/eyelang/output/dijkstra-findall-sort.pl +2 -0
  208. package/examples/eyelang/output/dijkstra-risk-path.pl +29 -0
  209. package/examples/eyelang/output/dijkstra.pl +16 -0
  210. package/examples/eyelang/output/dining-philosophers.pl +350 -0
  211. package/examples/eyelang/output/directional-language.ttl +1 -0
  212. package/examples/eyelang/output/dog.pl +1 -0
  213. package/examples/eyelang/output/drone-corridor-planner.pl +17 -0
  214. package/examples/eyelang/output/easter-computus.pl +30 -0
  215. package/examples/eyelang/output/electrical-rc-filter.pl +3 -0
  216. package/examples/eyelang/output/epidemic-policy.pl +14 -0
  217. package/examples/eyelang/output/equivalence-classes-overlap-implies-same-class.pl +18 -0
  218. package/examples/eyelang/output/eulerian-path.pl +3 -0
  219. package/examples/eyelang/output/ev-range-worlds.pl +19 -0
  220. package/examples/eyelang/output/exact-cover-sudoku.pl +3 -0
  221. package/examples/eyelang/output/existential-rule.pl +2 -0
  222. package/examples/eyelang/output/exoplanet-validation-worlds.pl +22 -0
  223. package/examples/eyelang/output/expression-eval.pl +1 -0
  224. package/examples/eyelang/output/eyeling-ackermann.n3 +12 -0
  225. package/examples/eyelang/output/eyeling-age-threshold.n3 +4 -0
  226. package/examples/eyelang/output/eyeling-alignment-demo.n3 +1 -0
  227. package/examples/eyelang/output/eyeling-allen-interval-calculus-small.n3 +3 -0
  228. package/examples/eyelang/output/eyeling-backward-recursion.n3 +9 -0
  229. package/examples/eyelang/output/eyeling-backward.n3 +1 -0
  230. package/examples/eyelang/output/eyeling-basic-monadic-small.n3 +8 -0
  231. package/examples/eyelang/output/eyeling-bmi.n3 +2 -0
  232. package/examples/eyelang/output/eyeling-cat-koko.n3 +3 -0
  233. package/examples/eyelang/output/eyeling-collatz-small.n3 +3 -0
  234. package/examples/eyelang/output/eyeling-collection.n3 +1 -0
  235. package/examples/eyelang/output/eyeling-complex-arithmetic.n3 +5 -0
  236. package/examples/eyelang/output/eyeling-context-association.n3 +4 -0
  237. package/examples/eyelang/output/eyeling-control-system-small.n3 +4 -0
  238. package/examples/eyelang/output/eyeling-crypto-builtins-extra.n3 +3 -0
  239. package/examples/eyelang/output/eyeling-crypto-builtins.n3 +2 -0
  240. package/examples/eyelang/output/eyeling-deep-taxonomy-10.n3 +32 -0
  241. package/examples/eyelang/output/eyeling-derived-backward-rule-flat.n3 +4 -0
  242. package/examples/eyelang/output/eyeling-derived-rule-flat.n3 +2 -0
  243. package/examples/eyelang/output/eyeling-digital-product-passport-small.n3 +3 -0
  244. package/examples/eyelang/output/eyeling-dijkstra-tiny.n3 +9 -0
  245. package/examples/eyelang/output/eyeling-dog-license.n3 +1 -0
  246. package/examples/eyelang/output/eyeling-drone-corridor-planner-small.n3 +5 -0
  247. package/examples/eyelang/output/eyeling-equals.n3 +1 -0
  248. package/examples/eyelang/output/eyeling-equivalence-classes.n3 +2 -0
  249. package/examples/eyelang/output/eyeling-euler-identity.n3 +3 -0
  250. package/examples/eyelang/output/eyeling-existential-rule.n3 +4 -0
  251. package/examples/eyelang/output/eyeling-expression-eval.n3 +3 -0
  252. package/examples/eyelang/output/eyeling-family-cousins-extended.n3 +6 -0
  253. package/examples/eyelang/output/eyeling-fastpow.n3 +4 -0
  254. package/examples/eyelang/output/eyeling-fibonacci.n3 +6 -0
  255. package/examples/eyelang/output/eyeling-french-cities-reachability.n3 +25 -0
  256. package/examples/eyelang/output/eyeling-goldbach-small.n3 +2 -0
  257. package/examples/eyelang/output/eyeling-good-cobbler.n3 +2 -0
  258. package/examples/eyelang/output/eyeling-list-builtins.n3 +6 -0
  259. package/examples/eyelang/output/eyeling-list-collection-extra.n3 +5 -0
  260. package/examples/eyelang/output/eyeling-math-builtins.n3 +5 -0
  261. package/examples/eyelang/output/eyeling-string-builtins-extra.n3 +3 -0
  262. package/examples/eyelang/output/eyeling-string-builtins.n3 +4 -0
  263. package/examples/eyelang/output/eyeling-time-builtins.n3 +4 -0
  264. package/examples/eyelang/output/eyeling-time-components-extra.n3 +5 -0
  265. package/examples/eyelang/output/eyeling-witch.n3 +2 -0
  266. package/examples/eyelang/output/family-cousins.n3 +8 -0
  267. package/examples/eyelang/output/family-cousins.pl +28 -0
  268. package/examples/eyelang/output/fastpow.pl +6 -0
  269. package/examples/eyelang/output/fft8-numeric.pl +4 -0
  270. package/examples/eyelang/output/fibonacci.pl +6 -0
  271. package/examples/eyelang/output/field-nitrogen-balance.pl +21 -0
  272. package/examples/eyelang/output/flandor.pl +43 -0
  273. package/examples/eyelang/output/floating-point.pl +9 -0
  274. package/examples/eyelang/output/four-color-map.pl +3 -0
  275. package/examples/eyelang/output/fundamental-theorem-arithmetic.pl +9 -0
  276. package/examples/eyelang/output/gcd-bezout-identity.pl +36 -0
  277. package/examples/eyelang/output/gd-step-certified.pl +79 -0
  278. package/examples/eyelang/output/gdpr-compliance.pl +6 -0
  279. package/examples/eyelang/output/goldbach-1000.pl +667 -0
  280. package/examples/eyelang/output/good-cobbler.pl +1 -0
  281. package/examples/eyelang/output/gps.pl +21 -0
  282. package/examples/eyelang/output/graph-reachability.pl +3 -0
  283. package/examples/eyelang/output/gray-code-counter.pl +1 -0
  284. package/examples/eyelang/output/greatest-lower-bound-uniqueness.pl +2 -0
  285. package/examples/eyelang/output/group-inverse-uniqueness.pl +2 -0
  286. package/examples/eyelang/output/hamiltonian-cycle.pl +4 -0
  287. package/examples/eyelang/output/hamiltonian-path.pl +121 -0
  288. package/examples/eyelang/output/hamming-code.pl +6 -0
  289. package/examples/eyelang/output/hanoi.pl +1 -0
  290. package/examples/eyelang/output/heat-loss.pl +5 -0
  291. package/examples/eyelang/output/heron-theorem.pl +4 -0
  292. package/examples/eyelang/output/ideal-gas-law.pl +3 -0
  293. package/examples/eyelang/output/illegitimate-reasoning.pl +15 -0
  294. package/examples/eyelang/output/kaprekar.pl +8 -0
  295. package/examples/eyelang/output/law-of-cosines.pl +3 -0
  296. package/examples/eyelang/output/least-squares-regression.pl +5 -0
  297. package/examples/eyelang/output/list-collection.pl +3 -0
  298. package/examples/eyelang/output/lldm.pl +6 -0
  299. package/examples/eyelang/output/manufacturing-quality-control.pl +6 -0
  300. package/examples/eyelang/output/matrix.pl +10 -0
  301. package/examples/eyelang/output/microgrid-dispatch.pl +6 -0
  302. package/examples/eyelang/output/monkey-bananas.pl +5 -0
  303. package/examples/eyelang/output/n-queens.pl +93 -0
  304. package/examples/eyelang/output/n3-builtins.n3 +6 -0
  305. package/examples/eyelang/output/network-sla.pl +4 -0
  306. package/examples/eyelang/output/newton-raphson.pl +3 -0
  307. package/examples/eyelang/output/nixon-diamond.pl +5 -0
  308. package/examples/eyelang/output/odrl-dpv-healthcare-risk-ranked.pl +42 -0
  309. package/examples/eyelang/output/odrl-dpv-risk-ranked.pl +120 -0
  310. package/examples/eyelang/output/orbital-transfer-design.pl +7 -0
  311. package/examples/eyelang/output/path-discovery.pl +3 -0
  312. package/examples/eyelang/output/peano-arithmetic.pl +3 -0
  313. package/examples/eyelang/output/peasant.pl +10 -0
  314. package/examples/eyelang/output/pendulum-period.pl +4 -0
  315. package/examples/eyelang/output/polynomial.pl +14 -0
  316. package/examples/eyelang/output/project-portfolio-optimization.pl +6 -0
  317. package/examples/eyelang/output/proof-contrapositive.pl +3 -0
  318. package/examples/eyelang/output/quadratic-formula.pl +6 -0
  319. package/examples/eyelang/output/quine-mccluskey.pl +3 -0
  320. package/examples/eyelang/output/radioactive-decay.pl +5 -0
  321. package/examples/eyelang/output/resilient-city-orchestration.pl +67 -0
  322. package/examples/eyelang/output/riemann-hypothesis.pl +12 -0
  323. package/examples/eyelang/output/sat-dpll.pl +5 -0
  324. package/examples/eyelang/output/security-incident-correlation.pl +3 -0
  325. package/examples/eyelang/output/service-impact.pl +11 -0
  326. package/examples/eyelang/output/sieve.pl +1 -0
  327. package/examples/eyelang/output/skolem-functions.pl +16 -0
  328. package/examples/eyelang/output/socket-age.pl +1 -0
  329. package/examples/eyelang/output/socket-family.pl +3 -0
  330. package/examples/eyelang/output/socrates.n3 +1 -0
  331. package/examples/eyelang/output/socrates.pl +2 -0
  332. package/examples/eyelang/output/statistics-summary.pl +4 -0
  333. package/examples/eyelang/output/sudoku.pl +2 -0
  334. package/examples/eyelang/output/superdense-coding.pl +6 -0
  335. package/examples/eyelang/output/traveling-salesman.pl +1 -0
  336. package/examples/eyelang/output/triple-term.n3 +2 -0
  337. package/examples/eyelang/output/turing.pl +12 -0
  338. package/examples/eyelang/output/vector-similarity.pl +4 -0
  339. package/examples/eyelang/output/witch.pl +7 -0
  340. package/examples/eyelang/output/wolf-goat-cabbage.pl +3 -0
  341. package/examples/eyelang/output/zebra.pl +3 -0
  342. package/examples/eyelang/path-discovery.pl +44998 -0
  343. package/examples/eyelang/peano-arithmetic.pl +31 -0
  344. package/examples/eyelang/peasant.pl +30 -0
  345. package/examples/eyelang/pendulum-period.pl +50 -0
  346. package/examples/eyelang/polynomial.pl +124 -0
  347. package/examples/eyelang/project-portfolio-optimization.pl +101 -0
  348. package/examples/eyelang/proof/age.pl +71 -0
  349. package/examples/eyelang/proof/aliases-and-namespaces.pl +78 -0
  350. package/examples/eyelang/proof/ancestor.pl +140 -0
  351. package/examples/eyelang/proof/animal.pl +68 -0
  352. package/examples/eyelang/proof/annotation.pl +80 -0
  353. package/examples/eyelang/proof/backward.pl +22 -0
  354. package/examples/eyelang/proof/cat-koko.pl +86 -0
  355. package/examples/eyelang/proof/data-negotiation.pl +76 -0
  356. package/examples/eyelang/proof/derived-rule.pl +43 -0
  357. package/examples/eyelang/proof/dog.pl +31 -0
  358. package/examples/eyelang/proof/electrical-rc-filter.pl +105 -0
  359. package/examples/eyelang/proof/existential-rule.pl +40 -0
  360. package/examples/eyelang/proof/floating-point.pl +160 -0
  361. package/examples/eyelang/proof/good-cobbler.pl +16 -0
  362. package/examples/eyelang/proof/group-inverse-uniqueness.pl +84 -0
  363. package/examples/eyelang/proof/list-collection.pl +52 -0
  364. package/examples/eyelang/proof/proof-contrapositive.pl +78 -0
  365. package/examples/eyelang/proof/socket-age.pl +32 -0
  366. package/examples/eyelang/proof/socket-family.pl +59 -0
  367. package/examples/eyelang/proof/socrates.pl +38 -0
  368. package/examples/eyelang/proof-contrapositive.pl +27 -0
  369. package/examples/eyelang/quadratic-formula.pl +54 -0
  370. package/examples/eyelang/quine-mccluskey.pl +143 -0
  371. package/examples/eyelang/radioactive-decay.pl +56 -0
  372. package/examples/eyelang/resilient-city-orchestration.pl +303 -0
  373. package/examples/eyelang/riemann-hypothesis.pl +110 -0
  374. package/examples/eyelang/sat-dpll.pl +80 -0
  375. package/examples/eyelang/security-incident-correlation.pl +69 -0
  376. package/examples/eyelang/service-impact.pl +41 -0
  377. package/examples/eyelang/sieve.pl +20 -0
  378. package/examples/eyelang/skolem-functions.pl +52 -0
  379. package/examples/eyelang/socket-age.pl +39 -0
  380. package/examples/eyelang/socket-family.pl +28 -0
  381. package/examples/eyelang/socrates.n3 +11 -0
  382. package/examples/eyelang/socrates.pl +19 -0
  383. package/examples/eyelang/statistics-summary.pl +54 -0
  384. package/examples/eyelang/sudoku.pl +20 -0
  385. package/examples/eyelang/superdense-coding.pl +84 -0
  386. package/examples/eyelang/traveling-salesman.pl +64 -0
  387. package/examples/eyelang/triple-term.n3 +9 -0
  388. package/examples/eyelang/turing.pl +67 -0
  389. package/examples/eyelang/vector-similarity.pl +56 -0
  390. package/examples/eyelang/witch.pl +38 -0
  391. package/examples/eyelang/wolf-goat-cabbage.pl +56 -0
  392. package/examples/eyelang/zebra.pl +44 -0
  393. package/eyelang.d.ts +92 -0
  394. package/eyeling.js +1 -0
  395. package/index.d.ts +50 -2
  396. package/index.js +95 -1
  397. package/lib/cli.js +1 -0
  398. package/lib/eyelang/bin.js +7 -0
  399. package/lib/eyelang/builtins/aggregation.mjs +81 -0
  400. package/lib/eyelang/builtins/alphametic.mjs +144 -0
  401. package/lib/eyelang/builtins/arithmetic.mjs +197 -0
  402. package/lib/eyelang/builtins/control.mjs +22 -0
  403. package/lib/eyelang/builtins/core.mjs +78 -0
  404. package/lib/eyelang/builtins/formula.mjs +42 -0
  405. package/lib/eyelang/builtins/lists.mjs +149 -0
  406. package/lib/eyelang/builtins/matrix.mjs +226 -0
  407. package/lib/eyelang/builtins/n3.mjs +483 -0
  408. package/lib/eyelang/builtins/number-theory.mjs +114 -0
  409. package/lib/eyelang/builtins/portfolio.mjs +73 -0
  410. package/lib/eyelang/builtins/registry.mjs +54 -0
  411. package/lib/eyelang/builtins/search.mjs +579 -0
  412. package/lib/eyelang/builtins/strings.mjs +41 -0
  413. package/lib/eyelang/builtins/sudoku.mjs +141 -0
  414. package/lib/eyelang/cli.mjs +192 -0
  415. package/lib/eyelang/explain.mjs +324 -0
  416. package/lib/eyelang/hash.mjs +294 -0
  417. package/lib/eyelang/index.mjs +48 -0
  418. package/lib/eyelang/parser.mjs +428 -0
  419. package/lib/eyelang/program.mjs +244 -0
  420. package/lib/eyelang/rdf.mjs +747 -0
  421. package/lib/eyelang/solver.mjs +237 -0
  422. package/lib/eyelang/term.mjs +328 -0
  423. package/package.json +12 -3
  424. package/test/eyelang/conformance/README.md +45 -0
  425. package/test/eyelang/conformance/cases/core/001_fact_output.pl +4 -0
  426. package/test/eyelang/conformance/cases/core/001_fact_query.query +1 -0
  427. package/test/eyelang/conformance/cases/core/002_rule_recursion.pl +7 -0
  428. package/test/eyelang/conformance/cases/core/002_rule_recursion.query +1 -0
  429. package/test/eyelang/conformance/cases/core/003_terms_and_readback.pl +16 -0
  430. package/test/eyelang/conformance/cases/core/003_terms_and_readback.query +1 -0
  431. package/test/eyelang/conformance/cases/core/004_conjunction_and_parentheses.pl +5 -0
  432. package/test/eyelang/conformance/cases/core/004_conjunction_and_parentheses.query +1 -0
  433. package/test/eyelang/conformance/cases/core/005_list_deconstruction.pl +6 -0
  434. package/test/eyelang/conformance/cases/core/005_list_deconstruction.query +1 -0
  435. package/test/eyelang/conformance/cases/core/006_comma_formula_data.pl +4 -0
  436. package/test/eyelang/conformance/cases/core/006_comma_formula_data.query +1 -0
  437. package/test/eyelang/conformance/cases/core/007_anonymous_variables.pl +5 -0
  438. package/test/eyelang/conformance/cases/core/007_anonymous_variables.query +1 -0
  439. package/test/eyelang/conformance/cases/core/008_graphic_atoms.pl +6 -0
  440. package/test/eyelang/conformance/cases/core/008_graphic_atoms.query +1 -0
  441. package/test/eyelang/conformance/cases/core/009_comments_and_whitespace.pl +5 -0
  442. package/test/eyelang/conformance/cases/core/009_comments_and_whitespace.query +1 -0
  443. package/test/eyelang/conformance/cases/core/010_variable_scope_and_reuse.pl +8 -0
  444. package/test/eyelang/conformance/cases/core/010_variable_scope_and_reuse.query +1 -0
  445. package/test/eyelang/conformance/cases/core/011_predicate_arity.pl +6 -0
  446. package/test/eyelang/conformance/cases/core/011_predicate_arity.query +1 -0
  447. package/test/eyelang/conformance/cases/core/012_nested_compound_unification.pl +5 -0
  448. package/test/eyelang/conformance/cases/core/012_nested_compound_unification.query +1 -0
  449. package/test/eyelang/conformance/cases/core/013_multiple_clauses_order.pl +6 -0
  450. package/test/eyelang/conformance/cases/core/013_multiple_clauses_order.query +1 -0
  451. package/test/eyelang/conformance/cases/core/014_failure_filters_answers.pl +7 -0
  452. package/test/eyelang/conformance/cases/core/014_failure_filters_answers.query +1 -0
  453. package/test/eyelang/conformance/cases/core/015_improper_list_unification.pl +6 -0
  454. package/test/eyelang/conformance/cases/core/015_improper_list_unification.query +1 -0
  455. package/test/eyelang/conformance/cases/core/016_zero_arity_compound.pl +4 -0
  456. package/test/eyelang/conformance/cases/core/016_zero_arity_compound.query +1 -0
  457. package/test/eyelang/conformance/cases/core/017_three_step_recursion.pl +8 -0
  458. package/test/eyelang/conformance/cases/core/017_three_step_recursion.query +1 -0
  459. package/test/eyelang/conformance/cases/core/018_quoted_atom_readback.pl +6 -0
  460. package/test/eyelang/conformance/cases/core/018_quoted_atom_readback.query +1 -0
  461. package/test/eyelang/conformance/cases/core/019_parenthesized_three_conjuncts.pl +7 -0
  462. package/test/eyelang/conformance/cases/core/019_parenthesized_three_conjuncts.query +1 -0
  463. package/test/eyelang/conformance/cases/core/020_nested_list_terms.pl +5 -0
  464. package/test/eyelang/conformance/cases/core/020_nested_list_terms.query +1 -0
  465. package/test/eyelang/conformance/cases/core/021_repeated_variable_head.pl +7 -0
  466. package/test/eyelang/conformance/cases/core/022_rule_head_structure.pl +5 -0
  467. package/test/eyelang/conformance/cases/core/023_quoted_escapes_readback.pl +5 -0
  468. package/test/eyelang/conformance/cases/core/024_numeric_literal_readback.pl +6 -0
  469. package/test/eyelang/conformance/cases/core/025_body_parentheses_with_formula_data.pl +5 -0
  470. package/test/eyelang/conformance/cases/core/026_underscore_named_variable_reuse.pl +5 -0
  471. package/test/eyelang/conformance/cases/extension/001_default_derived_output.pl +5 -0
  472. package/test/eyelang/conformance/cases/extension/002_materialize_focus.pl +5 -0
  473. package/test/eyelang/conformance/cases/extension/003_arithmetic_and_comparison.pl +12 -0
  474. package/test/eyelang/conformance/cases/extension/003_arithmetic_and_comparison.query +1 -0
  475. package/test/eyelang/conformance/cases/extension/004_strings_and_atoms.pl +6 -0
  476. package/test/eyelang/conformance/cases/extension/004_strings_and_atoms.query +1 -0
  477. package/test/eyelang/conformance/cases/extension/005_lists_aggregation_ordering.pl +10 -0
  478. package/test/eyelang/conformance/cases/extension/005_lists_aggregation_ordering.query +1 -0
  479. package/test/eyelang/conformance/cases/extension/006_formula_terms.pl +5 -0
  480. package/test/eyelang/conformance/cases/extension/006_formula_terms.query +1 -0
  481. package/test/eyelang/conformance/cases/extension/007_negation_once_generators.pl +7 -0
  482. package/test/eyelang/conformance/cases/extension/007_negation_once_generators.query +1 -0
  483. package/test/eyelang/conformance/cases/extension/008_equality_and_inequality.pl +6 -0
  484. package/test/eyelang/conformance/cases/extension/008_equality_and_inequality.query +1 -0
  485. package/test/eyelang/conformance/cases/extension/009_list_relations.pl +6 -0
  486. package/test/eyelang/conformance/cases/extension/009_list_relations.query +1 -0
  487. package/test/eyelang/conformance/cases/extension/010_append_splits.pl +3 -0
  488. package/test/eyelang/conformance/cases/extension/010_append_splits.query +1 -0
  489. package/test/eyelang/conformance/cases/extension/011_matching_and_comparison.pl +7 -0
  490. package/test/eyelang/conformance/cases/extension/011_matching_and_comparison.query +1 -0
  491. package/test/eyelang/conformance/cases/extension/012_memoize_declaration.pl +8 -0
  492. package/test/eyelang/conformance/cases/extension/012_memoize_declaration.query +1 -0
  493. package/test/eyelang/conformance/cases/extension/013_numeric_functions.pl +9 -0
  494. package/test/eyelang/conformance/cases/extension/013_numeric_functions.query +1 -0
  495. package/test/eyelang/conformance/cases/extension/014_between_enumeration.pl +3 -0
  496. package/test/eyelang/conformance/cases/extension/014_between_enumeration.query +1 -0
  497. package/test/eyelang/conformance/cases/extension/015_smallest_divisor.pl +3 -0
  498. package/test/eyelang/conformance/cases/extension/015_smallest_divisor.query +1 -0
  499. package/test/eyelang/conformance/cases/extension/016_negation_filter.pl +7 -0
  500. package/test/eyelang/conformance/cases/extension/016_negation_filter.query +1 -0
  501. package/test/eyelang/conformance/cases/extension/017_once_user_predicate.pl +5 -0
  502. package/test/eyelang/conformance/cases/extension/017_once_user_predicate.query +1 -0
  503. package/test/eyelang/conformance/cases/extension/018_findall_user_goal.pl +6 -0
  504. package/test/eyelang/conformance/cases/extension/018_findall_user_goal.query +1 -0
  505. package/test/eyelang/conformance/cases/extension/019_sort_deduplicates_atoms.pl +3 -0
  506. package/test/eyelang/conformance/cases/extension/019_sort_deduplicates_atoms.query +1 -0
  507. package/test/eyelang/conformance/cases/extension/020_append_bound_prefix_suffix.pl +4 -0
  508. package/test/eyelang/conformance/cases/extension/020_append_bound_prefix_suffix.query +1 -0
  509. package/test/eyelang/conformance/cases/extension/021_nth0_index_generation.pl +3 -0
  510. package/test/eyelang/conformance/cases/extension/021_nth0_index_generation.query +1 -0
  511. package/test/eyelang/conformance/cases/extension/022_set_nth0_edges.pl +4 -0
  512. package/test/eyelang/conformance/cases/extension/022_set_nth0_edges.query +1 -0
  513. package/test/eyelang/conformance/cases/extension/023_select_duplicate_occurrences.pl +3 -0
  514. package/test/eyelang/conformance/cases/extension/023_select_duplicate_occurrences.query +1 -0
  515. package/test/eyelang/conformance/cases/extension/024_not_member_filter.pl +6 -0
  516. package/test/eyelang/conformance/cases/extension/024_not_member_filter.query +1 -0
  517. package/test/eyelang/conformance/cases/extension/025_is_list_filter.pl +5 -0
  518. package/test/eyelang/conformance/cases/extension/025_is_list_filter.query +1 -0
  519. package/test/eyelang/conformance/cases/extension/026_nested_formula_terms.pl +5 -0
  520. package/test/eyelang/conformance/cases/extension/026_nested_formula_terms.query +1 -0
  521. package/test/eyelang/conformance/cases/extension/027_materialize_excludes_source_fact.pl +6 -0
  522. package/test/eyelang/conformance/cases/extension/028_numeric_and_lexical_comparison.pl +5 -0
  523. package/test/eyelang/conformance/cases/extension/028_numeric_and_lexical_comparison.query +1 -0
  524. package/test/eyelang/conformance/cases/extension/029_string_matching_filters.pl +6 -0
  525. package/test/eyelang/conformance/cases/extension/029_string_matching_filters.query +1 -0
  526. package/test/eyelang/conformance/cases/extension/030_string_and_atom_concat.pl +4 -0
  527. package/test/eyelang/conformance/cases/extension/030_string_and_atom_concat.query +1 -0
  528. package/test/eyelang/conformance/cases/extension/031_countall_empty_and_nonempty.pl +4 -0
  529. package/test/eyelang/conformance/cases/extension/031_countall_empty_and_nonempty.query +1 -0
  530. package/test/eyelang/conformance/cases/extension/032_sumall_numeric_template.pl +5 -0
  531. package/test/eyelang/conformance/cases/extension/032_sumall_numeric_template.query +1 -0
  532. package/test/eyelang/conformance/cases/extension/033_aggregate_min_template.pl +5 -0
  533. package/test/eyelang/conformance/cases/extension/033_aggregate_min_template.query +1 -0
  534. package/test/eyelang/conformance/cases/extension/034_aggregate_max_compound_key.pl +5 -0
  535. package/test/eyelang/conformance/cases/extension/034_aggregate_max_compound_key.query +1 -0
  536. package/test/eyelang/conformance/cases/extension/035_date_difference.pl +4 -0
  537. package/test/eyelang/conformance/cases/extension/036_extended_gcd.pl +3 -0
  538. package/test/eyelang/conformance/cases/extension/037_collatz_trajectory.pl +3 -0
  539. package/test/eyelang/conformance/cases/extension/038_kaprekar_steps.pl +3 -0
  540. package/test/eyelang/conformance/cases/extension/039_goldbach_pair.pl +3 -0
  541. package/test/eyelang/conformance/cases/extension/040_matrix_operations.pl +5 -0
  542. package/test/eyelang/conformance/cases/extension/041_atom_range_generators.pl +5 -0
  543. package/test/eyelang/conformance/cases/extension/042_n_queens_small.pl +3 -0
  544. package/test/eyelang/conformance/cases/extension/043_cnf_model.pl +3 -0
  545. package/test/eyelang/conformance/cases/extension/044_cover9_filter.pl +6 -0
  546. package/test/eyelang/conformance/cases/extension/045_alphametic_sum_small.pl +3 -0
  547. package/test/eyelang/conformance/cases/extension/046_bounded_subset.pl +4 -0
  548. package/test/eyelang/conformance/expected/core/001_fact_output.out +1 -0
  549. package/test/eyelang/conformance/expected/core/002_rule_recursion.out +2 -0
  550. package/test/eyelang/conformance/expected/core/003_terms_and_readback.out +13 -0
  551. package/test/eyelang/conformance/expected/core/004_conjunction_and_parentheses.out +1 -0
  552. package/test/eyelang/conformance/expected/core/005_list_deconstruction.out +2 -0
  553. package/test/eyelang/conformance/expected/core/006_comma_formula_data.out +1 -0
  554. package/test/eyelang/conformance/expected/core/007_anonymous_variables.out +1 -0
  555. package/test/eyelang/conformance/expected/core/008_graphic_atoms.out +3 -0
  556. package/test/eyelang/conformance/expected/core/009_comments_and_whitespace.out +2 -0
  557. package/test/eyelang/conformance/expected/core/010_variable_scope_and_reuse.out +2 -0
  558. package/test/eyelang/conformance/expected/core/011_predicate_arity.out +2 -0
  559. package/test/eyelang/conformance/expected/core/012_nested_compound_unification.out +2 -0
  560. package/test/eyelang/conformance/expected/core/013_multiple_clauses_order.out +2 -0
  561. package/test/eyelang/conformance/expected/core/014_failure_filters_answers.out +1 -0
  562. package/test/eyelang/conformance/expected/core/015_improper_list_unification.out +3 -0
  563. package/test/eyelang/conformance/expected/core/016_zero_arity_compound.out +1 -0
  564. package/test/eyelang/conformance/expected/core/017_three_step_recursion.out +3 -0
  565. package/test/eyelang/conformance/expected/core/018_quoted_atom_readback.out +3 -0
  566. package/test/eyelang/conformance/expected/core/019_parenthesized_three_conjuncts.out +1 -0
  567. package/test/eyelang/conformance/expected/core/020_nested_list_terms.out +2 -0
  568. package/test/eyelang/conformance/expected/core/021_repeated_variable_head.out +2 -0
  569. package/test/eyelang/conformance/expected/core/022_rule_head_structure.out +2 -0
  570. package/test/eyelang/conformance/expected/core/023_quoted_escapes_readback.out +2 -0
  571. package/test/eyelang/conformance/expected/core/024_numeric_literal_readback.out +3 -0
  572. package/test/eyelang/conformance/expected/core/025_body_parentheses_with_formula_data.out +1 -0
  573. package/test/eyelang/conformance/expected/core/026_underscore_named_variable_reuse.out +1 -0
  574. package/test/eyelang/conformance/expected/extension/001_default_derived_output.out +3 -0
  575. package/test/eyelang/conformance/expected/extension/002_materialize_focus.out +1 -0
  576. package/test/eyelang/conformance/expected/extension/003_arithmetic_and_comparison.out +10 -0
  577. package/test/eyelang/conformance/expected/extension/004_strings_and_atoms.out +4 -0
  578. package/test/eyelang/conformance/expected/extension/005_lists_aggregation_ordering.out +9 -0
  579. package/test/eyelang/conformance/expected/extension/006_formula_terms.out +4 -0
  580. package/test/eyelang/conformance/expected/extension/007_negation_once_generators.out +2 -0
  581. package/test/eyelang/conformance/expected/extension/008_equality_and_inequality.out +4 -0
  582. package/test/eyelang/conformance/expected/extension/009_list_relations.out +5 -0
  583. package/test/eyelang/conformance/expected/extension/010_append_splits.out +3 -0
  584. package/test/eyelang/conformance/expected/extension/011_matching_and_comparison.out +5 -0
  585. package/test/eyelang/conformance/expected/extension/012_memoize_declaration.out +2 -0
  586. package/test/eyelang/conformance/expected/extension/013_numeric_functions.out +7 -0
  587. package/test/eyelang/conformance/expected/extension/014_between_enumeration.out +3 -0
  588. package/test/eyelang/conformance/expected/extension/015_smallest_divisor.out +1 -0
  589. package/test/eyelang/conformance/expected/extension/016_negation_filter.out +2 -0
  590. package/test/eyelang/conformance/expected/extension/017_once_user_predicate.out +1 -0
  591. package/test/eyelang/conformance/expected/extension/018_findall_user_goal.out +1 -0
  592. package/test/eyelang/conformance/expected/extension/019_sort_deduplicates_atoms.out +1 -0
  593. package/test/eyelang/conformance/expected/extension/020_append_bound_prefix_suffix.out +2 -0
  594. package/test/eyelang/conformance/expected/extension/021_nth0_index_generation.out +1 -0
  595. package/test/eyelang/conformance/expected/extension/022_set_nth0_edges.out +2 -0
  596. package/test/eyelang/conformance/expected/extension/023_select_duplicate_occurrences.out +2 -0
  597. package/test/eyelang/conformance/expected/extension/024_not_member_filter.out +1 -0
  598. package/test/eyelang/conformance/expected/extension/025_is_list_filter.out +1 -0
  599. package/test/eyelang/conformance/expected/extension/026_nested_formula_terms.out +6 -0
  600. package/test/eyelang/conformance/expected/extension/027_materialize_excludes_source_fact.out +1 -0
  601. package/test/eyelang/conformance/expected/extension/028_numeric_and_lexical_comparison.out +3 -0
  602. package/test/eyelang/conformance/expected/extension/029_string_matching_filters.out +2 -0
  603. package/test/eyelang/conformance/expected/extension/030_string_and_atom_concat.out +2 -0
  604. package/test/eyelang/conformance/expected/extension/031_countall_empty_and_nonempty.out +1 -0
  605. package/test/eyelang/conformance/expected/extension/032_sumall_numeric_template.out +1 -0
  606. package/test/eyelang/conformance/expected/extension/033_aggregate_min_template.out +1 -0
  607. package/test/eyelang/conformance/expected/extension/034_aggregate_max_compound_key.out +1 -0
  608. package/test/eyelang/conformance/expected/extension/035_date_difference.out +2 -0
  609. package/test/eyelang/conformance/expected/extension/036_extended_gcd.out +1 -0
  610. package/test/eyelang/conformance/expected/extension/037_collatz_trajectory.out +1 -0
  611. package/test/eyelang/conformance/expected/extension/038_kaprekar_steps.out +1 -0
  612. package/test/eyelang/conformance/expected/extension/039_goldbach_pair.out +2 -0
  613. package/test/eyelang/conformance/expected/extension/040_matrix_operations.out +3 -0
  614. package/test/eyelang/conformance/expected/extension/041_atom_range_generators.out +8 -0
  615. package/test/eyelang/conformance/expected/extension/042_n_queens_small.out +2 -0
  616. package/test/eyelang/conformance/expected/extension/043_cnf_model.out +1 -0
  617. package/test/eyelang/conformance/expected/extension/044_cover9_filter.out +2 -0
  618. package/test/eyelang/conformance/expected/extension/045_alphametic_sum_small.out +4 -0
  619. package/test/eyelang/conformance/expected/extension/046_bounded_subset.out +5 -0
  620. package/test/eyelang/run-all.mjs +20 -0
  621. package/test/eyelang/run-conformance.mjs +80 -0
  622. package/test/eyelang/run-examples.mjs +126 -0
  623. package/test/eyelang/run-regression.mjs +640 -0
  624. package/test/eyelang/test-style.mjs +91 -0
  625. package/test/eyelang.test.js +58 -0
  626. package/test/run.js +1 -0
@@ -0,0 +1,3085 @@
1
+ % =============================================================================================================================
2
+ % Deep Taxonomy - depth 1000 - expanded N3-style eyelang with checkpoint proof accelerators
3
+ %
4
+ % Adjacent rules mirror the Eyeling N3 deep-taxonomy chain. The checkpoint
5
+ % rules are redundant consequences of that chain and are placed first so eyelang
6
+ % can prove terminal/report goals without overflowing the JavaScript call stack.
7
+ % Report/check rules use once/1 so successful checks do not backtrack into a
8
+ % long adjacent-only proof after a shorter checkpoint proof has succeeded.
9
+ % =============================================================================================================================
10
+
11
+ % Output declarations: materialize/2 selects the relations written to this example's golden output.
12
+ materialize(is, 2).
13
+ materialize(answer, 2).
14
+ materialize(reason, 2).
15
+ materialize(result, 2).
16
+ materialize(checkPassed, 2).
17
+ materialize(arc, 2).
18
+
19
+ % Program structure: facts set up the scenario, and rules derive the materialized conclusions.
20
+ % fact
21
+
22
+ a(ind, n0).
23
+
24
+ % terminal rule
25
+
26
+ % Derivation rules: each rule below contributes one logical step toward the displayed results.
27
+ is(test, true) :- once(a(ind, a2)).
28
+ a(X, a2) :- a(X, n1000).
29
+
30
+ % Redundant checkpoint accelerators.
31
+
32
+ a(X, n1000) :- a(X, n0).
33
+ a(X, n499) :- a(X, n0).
34
+ a(X, n999) :- a(X, n0).
35
+
36
+ % Adjacent N3-style taxonomy rules.
37
+
38
+ a(X, n1) :- a(X, n0).
39
+ a(X, i1) :- a(X, n0).
40
+ a(X, j1) :- a(X, n0).
41
+ a(X, n2) :- a(X, n1).
42
+ a(X, i2) :- a(X, n1).
43
+ a(X, j2) :- a(X, n1).
44
+ a(X, n3) :- a(X, n2).
45
+ a(X, i3) :- a(X, n2).
46
+ a(X, j3) :- a(X, n2).
47
+ a(X, n4) :- a(X, n3).
48
+ a(X, i4) :- a(X, n3).
49
+ a(X, j4) :- a(X, n3).
50
+ a(X, n5) :- a(X, n4).
51
+ a(X, i5) :- a(X, n4).
52
+ a(X, j5) :- a(X, n4).
53
+ a(X, n6) :- a(X, n5).
54
+ a(X, i6) :- a(X, n5).
55
+ a(X, j6) :- a(X, n5).
56
+ a(X, n7) :- a(X, n6).
57
+ a(X, i7) :- a(X, n6).
58
+ a(X, j7) :- a(X, n6).
59
+ a(X, n8) :- a(X, n7).
60
+ a(X, i8) :- a(X, n7).
61
+ a(X, j8) :- a(X, n7).
62
+ a(X, n9) :- a(X, n8).
63
+ a(X, i9) :- a(X, n8).
64
+ a(X, j9) :- a(X, n8).
65
+ a(X, n10) :- a(X, n9).
66
+ a(X, i10) :- a(X, n9).
67
+ a(X, j10) :- a(X, n9).
68
+ a(X, n11) :- a(X, n10).
69
+ a(X, i11) :- a(X, n10).
70
+ a(X, j11) :- a(X, n10).
71
+ a(X, n12) :- a(X, n11).
72
+ a(X, i12) :- a(X, n11).
73
+ a(X, j12) :- a(X, n11).
74
+ a(X, n13) :- a(X, n12).
75
+ a(X, i13) :- a(X, n12).
76
+ a(X, j13) :- a(X, n12).
77
+ a(X, n14) :- a(X, n13).
78
+ a(X, i14) :- a(X, n13).
79
+ a(X, j14) :- a(X, n13).
80
+ a(X, n15) :- a(X, n14).
81
+ a(X, i15) :- a(X, n14).
82
+ a(X, j15) :- a(X, n14).
83
+ a(X, n16) :- a(X, n15).
84
+ a(X, i16) :- a(X, n15).
85
+ a(X, j16) :- a(X, n15).
86
+ a(X, n17) :- a(X, n16).
87
+ a(X, i17) :- a(X, n16).
88
+ a(X, j17) :- a(X, n16).
89
+ a(X, n18) :- a(X, n17).
90
+ a(X, i18) :- a(X, n17).
91
+ a(X, j18) :- a(X, n17).
92
+ a(X, n19) :- a(X, n18).
93
+ a(X, i19) :- a(X, n18).
94
+ a(X, j19) :- a(X, n18).
95
+ a(X, n20) :- a(X, n19).
96
+ a(X, i20) :- a(X, n19).
97
+ a(X, j20) :- a(X, n19).
98
+ a(X, n21) :- a(X, n20).
99
+ a(X, i21) :- a(X, n20).
100
+ a(X, j21) :- a(X, n20).
101
+ a(X, n22) :- a(X, n21).
102
+ a(X, i22) :- a(X, n21).
103
+ a(X, j22) :- a(X, n21).
104
+ a(X, n23) :- a(X, n22).
105
+ a(X, i23) :- a(X, n22).
106
+ a(X, j23) :- a(X, n22).
107
+ a(X, n24) :- a(X, n23).
108
+ a(X, i24) :- a(X, n23).
109
+ a(X, j24) :- a(X, n23).
110
+ a(X, n25) :- a(X, n24).
111
+ a(X, i25) :- a(X, n24).
112
+ a(X, j25) :- a(X, n24).
113
+ a(X, n26) :- a(X, n25).
114
+ a(X, i26) :- a(X, n25).
115
+ a(X, j26) :- a(X, n25).
116
+ a(X, n27) :- a(X, n26).
117
+ a(X, i27) :- a(X, n26).
118
+ a(X, j27) :- a(X, n26).
119
+ a(X, n28) :- a(X, n27).
120
+ a(X, i28) :- a(X, n27).
121
+ a(X, j28) :- a(X, n27).
122
+ a(X, n29) :- a(X, n28).
123
+ a(X, i29) :- a(X, n28).
124
+ a(X, j29) :- a(X, n28).
125
+ a(X, n30) :- a(X, n29).
126
+ a(X, i30) :- a(X, n29).
127
+ a(X, j30) :- a(X, n29).
128
+ a(X, n31) :- a(X, n30).
129
+ a(X, i31) :- a(X, n30).
130
+ a(X, j31) :- a(X, n30).
131
+ a(X, n32) :- a(X, n31).
132
+ a(X, i32) :- a(X, n31).
133
+ a(X, j32) :- a(X, n31).
134
+ a(X, n33) :- a(X, n32).
135
+ a(X, i33) :- a(X, n32).
136
+ a(X, j33) :- a(X, n32).
137
+ a(X, n34) :- a(X, n33).
138
+ a(X, i34) :- a(X, n33).
139
+ a(X, j34) :- a(X, n33).
140
+ a(X, n35) :- a(X, n34).
141
+ a(X, i35) :- a(X, n34).
142
+ a(X, j35) :- a(X, n34).
143
+ a(X, n36) :- a(X, n35).
144
+ a(X, i36) :- a(X, n35).
145
+ a(X, j36) :- a(X, n35).
146
+ a(X, n37) :- a(X, n36).
147
+ a(X, i37) :- a(X, n36).
148
+ a(X, j37) :- a(X, n36).
149
+ a(X, n38) :- a(X, n37).
150
+ a(X, i38) :- a(X, n37).
151
+ a(X, j38) :- a(X, n37).
152
+ a(X, n39) :- a(X, n38).
153
+ a(X, i39) :- a(X, n38).
154
+ a(X, j39) :- a(X, n38).
155
+ a(X, n40) :- a(X, n39).
156
+ a(X, i40) :- a(X, n39).
157
+ a(X, j40) :- a(X, n39).
158
+ a(X, n41) :- a(X, n40).
159
+ a(X, i41) :- a(X, n40).
160
+ a(X, j41) :- a(X, n40).
161
+ a(X, n42) :- a(X, n41).
162
+ a(X, i42) :- a(X, n41).
163
+ a(X, j42) :- a(X, n41).
164
+ a(X, n43) :- a(X, n42).
165
+ a(X, i43) :- a(X, n42).
166
+ a(X, j43) :- a(X, n42).
167
+ a(X, n44) :- a(X, n43).
168
+ a(X, i44) :- a(X, n43).
169
+ a(X, j44) :- a(X, n43).
170
+ a(X, n45) :- a(X, n44).
171
+ a(X, i45) :- a(X, n44).
172
+ a(X, j45) :- a(X, n44).
173
+ a(X, n46) :- a(X, n45).
174
+ a(X, i46) :- a(X, n45).
175
+ a(X, j46) :- a(X, n45).
176
+ a(X, n47) :- a(X, n46).
177
+ a(X, i47) :- a(X, n46).
178
+ a(X, j47) :- a(X, n46).
179
+ a(X, n48) :- a(X, n47).
180
+ a(X, i48) :- a(X, n47).
181
+ a(X, j48) :- a(X, n47).
182
+ a(X, n49) :- a(X, n48).
183
+ a(X, i49) :- a(X, n48).
184
+ a(X, j49) :- a(X, n48).
185
+ a(X, n50) :- a(X, n49).
186
+ a(X, i50) :- a(X, n49).
187
+ a(X, j50) :- a(X, n49).
188
+ a(X, n51) :- a(X, n50).
189
+ a(X, i51) :- a(X, n50).
190
+ a(X, j51) :- a(X, n50).
191
+ a(X, n52) :- a(X, n51).
192
+ a(X, i52) :- a(X, n51).
193
+ a(X, j52) :- a(X, n51).
194
+ a(X, n53) :- a(X, n52).
195
+ a(X, i53) :- a(X, n52).
196
+ a(X, j53) :- a(X, n52).
197
+ a(X, n54) :- a(X, n53).
198
+ a(X, i54) :- a(X, n53).
199
+ a(X, j54) :- a(X, n53).
200
+ a(X, n55) :- a(X, n54).
201
+ a(X, i55) :- a(X, n54).
202
+ a(X, j55) :- a(X, n54).
203
+ a(X, n56) :- a(X, n55).
204
+ a(X, i56) :- a(X, n55).
205
+ a(X, j56) :- a(X, n55).
206
+ a(X, n57) :- a(X, n56).
207
+ a(X, i57) :- a(X, n56).
208
+ a(X, j57) :- a(X, n56).
209
+ a(X, n58) :- a(X, n57).
210
+ a(X, i58) :- a(X, n57).
211
+ a(X, j58) :- a(X, n57).
212
+ a(X, n59) :- a(X, n58).
213
+ a(X, i59) :- a(X, n58).
214
+ a(X, j59) :- a(X, n58).
215
+ a(X, n60) :- a(X, n59).
216
+ a(X, i60) :- a(X, n59).
217
+ a(X, j60) :- a(X, n59).
218
+ a(X, n61) :- a(X, n60).
219
+ a(X, i61) :- a(X, n60).
220
+ a(X, j61) :- a(X, n60).
221
+ a(X, n62) :- a(X, n61).
222
+ a(X, i62) :- a(X, n61).
223
+ a(X, j62) :- a(X, n61).
224
+ a(X, n63) :- a(X, n62).
225
+ a(X, i63) :- a(X, n62).
226
+ a(X, j63) :- a(X, n62).
227
+ a(X, n64) :- a(X, n63).
228
+ a(X, i64) :- a(X, n63).
229
+ a(X, j64) :- a(X, n63).
230
+ a(X, n65) :- a(X, n64).
231
+ a(X, i65) :- a(X, n64).
232
+ a(X, j65) :- a(X, n64).
233
+ a(X, n66) :- a(X, n65).
234
+ a(X, i66) :- a(X, n65).
235
+ a(X, j66) :- a(X, n65).
236
+ a(X, n67) :- a(X, n66).
237
+ a(X, i67) :- a(X, n66).
238
+ a(X, j67) :- a(X, n66).
239
+ a(X, n68) :- a(X, n67).
240
+ a(X, i68) :- a(X, n67).
241
+ a(X, j68) :- a(X, n67).
242
+ a(X, n69) :- a(X, n68).
243
+ a(X, i69) :- a(X, n68).
244
+ a(X, j69) :- a(X, n68).
245
+ a(X, n70) :- a(X, n69).
246
+ a(X, i70) :- a(X, n69).
247
+ a(X, j70) :- a(X, n69).
248
+ a(X, n71) :- a(X, n70).
249
+ a(X, i71) :- a(X, n70).
250
+ a(X, j71) :- a(X, n70).
251
+ a(X, n72) :- a(X, n71).
252
+ a(X, i72) :- a(X, n71).
253
+ a(X, j72) :- a(X, n71).
254
+ a(X, n73) :- a(X, n72).
255
+ a(X, i73) :- a(X, n72).
256
+ a(X, j73) :- a(X, n72).
257
+ a(X, n74) :- a(X, n73).
258
+ a(X, i74) :- a(X, n73).
259
+ a(X, j74) :- a(X, n73).
260
+ a(X, n75) :- a(X, n74).
261
+ a(X, i75) :- a(X, n74).
262
+ a(X, j75) :- a(X, n74).
263
+ a(X, n76) :- a(X, n75).
264
+ a(X, i76) :- a(X, n75).
265
+ a(X, j76) :- a(X, n75).
266
+ a(X, n77) :- a(X, n76).
267
+ a(X, i77) :- a(X, n76).
268
+ a(X, j77) :- a(X, n76).
269
+ a(X, n78) :- a(X, n77).
270
+ a(X, i78) :- a(X, n77).
271
+ a(X, j78) :- a(X, n77).
272
+ a(X, n79) :- a(X, n78).
273
+ a(X, i79) :- a(X, n78).
274
+ a(X, j79) :- a(X, n78).
275
+ a(X, n80) :- a(X, n79).
276
+ a(X, i80) :- a(X, n79).
277
+ a(X, j80) :- a(X, n79).
278
+ a(X, n81) :- a(X, n80).
279
+ a(X, i81) :- a(X, n80).
280
+ a(X, j81) :- a(X, n80).
281
+ a(X, n82) :- a(X, n81).
282
+ a(X, i82) :- a(X, n81).
283
+ a(X, j82) :- a(X, n81).
284
+ a(X, n83) :- a(X, n82).
285
+ a(X, i83) :- a(X, n82).
286
+ a(X, j83) :- a(X, n82).
287
+ a(X, n84) :- a(X, n83).
288
+ a(X, i84) :- a(X, n83).
289
+ a(X, j84) :- a(X, n83).
290
+ a(X, n85) :- a(X, n84).
291
+ a(X, i85) :- a(X, n84).
292
+ a(X, j85) :- a(X, n84).
293
+ a(X, n86) :- a(X, n85).
294
+ a(X, i86) :- a(X, n85).
295
+ a(X, j86) :- a(X, n85).
296
+ a(X, n87) :- a(X, n86).
297
+ a(X, i87) :- a(X, n86).
298
+ a(X, j87) :- a(X, n86).
299
+ a(X, n88) :- a(X, n87).
300
+ a(X, i88) :- a(X, n87).
301
+ a(X, j88) :- a(X, n87).
302
+ a(X, n89) :- a(X, n88).
303
+ a(X, i89) :- a(X, n88).
304
+ a(X, j89) :- a(X, n88).
305
+ a(X, n90) :- a(X, n89).
306
+ a(X, i90) :- a(X, n89).
307
+ a(X, j90) :- a(X, n89).
308
+ a(X, n91) :- a(X, n90).
309
+ a(X, i91) :- a(X, n90).
310
+ a(X, j91) :- a(X, n90).
311
+ a(X, n92) :- a(X, n91).
312
+ a(X, i92) :- a(X, n91).
313
+ a(X, j92) :- a(X, n91).
314
+ a(X, n93) :- a(X, n92).
315
+ a(X, i93) :- a(X, n92).
316
+ a(X, j93) :- a(X, n92).
317
+ a(X, n94) :- a(X, n93).
318
+ a(X, i94) :- a(X, n93).
319
+ a(X, j94) :- a(X, n93).
320
+ a(X, n95) :- a(X, n94).
321
+ a(X, i95) :- a(X, n94).
322
+ a(X, j95) :- a(X, n94).
323
+ a(X, n96) :- a(X, n95).
324
+ a(X, i96) :- a(X, n95).
325
+ a(X, j96) :- a(X, n95).
326
+ a(X, n97) :- a(X, n96).
327
+ a(X, i97) :- a(X, n96).
328
+ a(X, j97) :- a(X, n96).
329
+ a(X, n98) :- a(X, n97).
330
+ a(X, i98) :- a(X, n97).
331
+ a(X, j98) :- a(X, n97).
332
+ a(X, n99) :- a(X, n98).
333
+ a(X, i99) :- a(X, n98).
334
+ a(X, j99) :- a(X, n98).
335
+ a(X, n100) :- a(X, n99).
336
+ a(X, i100) :- a(X, n99).
337
+ a(X, j100) :- a(X, n99).
338
+ a(X, n101) :- a(X, n100).
339
+ a(X, i101) :- a(X, n100).
340
+ a(X, j101) :- a(X, n100).
341
+ a(X, n102) :- a(X, n101).
342
+ a(X, i102) :- a(X, n101).
343
+ a(X, j102) :- a(X, n101).
344
+ a(X, n103) :- a(X, n102).
345
+ a(X, i103) :- a(X, n102).
346
+ a(X, j103) :- a(X, n102).
347
+ a(X, n104) :- a(X, n103).
348
+ a(X, i104) :- a(X, n103).
349
+ a(X, j104) :- a(X, n103).
350
+ a(X, n105) :- a(X, n104).
351
+ a(X, i105) :- a(X, n104).
352
+ a(X, j105) :- a(X, n104).
353
+ a(X, n106) :- a(X, n105).
354
+ a(X, i106) :- a(X, n105).
355
+ a(X, j106) :- a(X, n105).
356
+ a(X, n107) :- a(X, n106).
357
+ a(X, i107) :- a(X, n106).
358
+ a(X, j107) :- a(X, n106).
359
+ a(X, n108) :- a(X, n107).
360
+ a(X, i108) :- a(X, n107).
361
+ a(X, j108) :- a(X, n107).
362
+ a(X, n109) :- a(X, n108).
363
+ a(X, i109) :- a(X, n108).
364
+ a(X, j109) :- a(X, n108).
365
+ a(X, n110) :- a(X, n109).
366
+ a(X, i110) :- a(X, n109).
367
+ a(X, j110) :- a(X, n109).
368
+ a(X, n111) :- a(X, n110).
369
+ a(X, i111) :- a(X, n110).
370
+ a(X, j111) :- a(X, n110).
371
+ a(X, n112) :- a(X, n111).
372
+ a(X, i112) :- a(X, n111).
373
+ a(X, j112) :- a(X, n111).
374
+ a(X, n113) :- a(X, n112).
375
+ a(X, i113) :- a(X, n112).
376
+ a(X, j113) :- a(X, n112).
377
+ a(X, n114) :- a(X, n113).
378
+ a(X, i114) :- a(X, n113).
379
+ a(X, j114) :- a(X, n113).
380
+ a(X, n115) :- a(X, n114).
381
+ a(X, i115) :- a(X, n114).
382
+ a(X, j115) :- a(X, n114).
383
+ a(X, n116) :- a(X, n115).
384
+ a(X, i116) :- a(X, n115).
385
+ a(X, j116) :- a(X, n115).
386
+ a(X, n117) :- a(X, n116).
387
+ a(X, i117) :- a(X, n116).
388
+ a(X, j117) :- a(X, n116).
389
+ a(X, n118) :- a(X, n117).
390
+ a(X, i118) :- a(X, n117).
391
+ a(X, j118) :- a(X, n117).
392
+ a(X, n119) :- a(X, n118).
393
+ a(X, i119) :- a(X, n118).
394
+ a(X, j119) :- a(X, n118).
395
+ a(X, n120) :- a(X, n119).
396
+ a(X, i120) :- a(X, n119).
397
+ a(X, j120) :- a(X, n119).
398
+ a(X, n121) :- a(X, n120).
399
+ a(X, i121) :- a(X, n120).
400
+ a(X, j121) :- a(X, n120).
401
+ a(X, n122) :- a(X, n121).
402
+ a(X, i122) :- a(X, n121).
403
+ a(X, j122) :- a(X, n121).
404
+ a(X, n123) :- a(X, n122).
405
+ a(X, i123) :- a(X, n122).
406
+ a(X, j123) :- a(X, n122).
407
+ a(X, n124) :- a(X, n123).
408
+ a(X, i124) :- a(X, n123).
409
+ a(X, j124) :- a(X, n123).
410
+ a(X, n125) :- a(X, n124).
411
+ a(X, i125) :- a(X, n124).
412
+ a(X, j125) :- a(X, n124).
413
+ a(X, n126) :- a(X, n125).
414
+ a(X, i126) :- a(X, n125).
415
+ a(X, j126) :- a(X, n125).
416
+ a(X, n127) :- a(X, n126).
417
+ a(X, i127) :- a(X, n126).
418
+ a(X, j127) :- a(X, n126).
419
+ a(X, n128) :- a(X, n127).
420
+ a(X, i128) :- a(X, n127).
421
+ a(X, j128) :- a(X, n127).
422
+ a(X, n129) :- a(X, n128).
423
+ a(X, i129) :- a(X, n128).
424
+ a(X, j129) :- a(X, n128).
425
+ a(X, n130) :- a(X, n129).
426
+ a(X, i130) :- a(X, n129).
427
+ a(X, j130) :- a(X, n129).
428
+ a(X, n131) :- a(X, n130).
429
+ a(X, i131) :- a(X, n130).
430
+ a(X, j131) :- a(X, n130).
431
+ a(X, n132) :- a(X, n131).
432
+ a(X, i132) :- a(X, n131).
433
+ a(X, j132) :- a(X, n131).
434
+ a(X, n133) :- a(X, n132).
435
+ a(X, i133) :- a(X, n132).
436
+ a(X, j133) :- a(X, n132).
437
+ a(X, n134) :- a(X, n133).
438
+ a(X, i134) :- a(X, n133).
439
+ a(X, j134) :- a(X, n133).
440
+ a(X, n135) :- a(X, n134).
441
+ a(X, i135) :- a(X, n134).
442
+ a(X, j135) :- a(X, n134).
443
+ a(X, n136) :- a(X, n135).
444
+ a(X, i136) :- a(X, n135).
445
+ a(X, j136) :- a(X, n135).
446
+ a(X, n137) :- a(X, n136).
447
+ a(X, i137) :- a(X, n136).
448
+ a(X, j137) :- a(X, n136).
449
+ a(X, n138) :- a(X, n137).
450
+ a(X, i138) :- a(X, n137).
451
+ a(X, j138) :- a(X, n137).
452
+ a(X, n139) :- a(X, n138).
453
+ a(X, i139) :- a(X, n138).
454
+ a(X, j139) :- a(X, n138).
455
+ a(X, n140) :- a(X, n139).
456
+ a(X, i140) :- a(X, n139).
457
+ a(X, j140) :- a(X, n139).
458
+ a(X, n141) :- a(X, n140).
459
+ a(X, i141) :- a(X, n140).
460
+ a(X, j141) :- a(X, n140).
461
+ a(X, n142) :- a(X, n141).
462
+ a(X, i142) :- a(X, n141).
463
+ a(X, j142) :- a(X, n141).
464
+ a(X, n143) :- a(X, n142).
465
+ a(X, i143) :- a(X, n142).
466
+ a(X, j143) :- a(X, n142).
467
+ a(X, n144) :- a(X, n143).
468
+ a(X, i144) :- a(X, n143).
469
+ a(X, j144) :- a(X, n143).
470
+ a(X, n145) :- a(X, n144).
471
+ a(X, i145) :- a(X, n144).
472
+ a(X, j145) :- a(X, n144).
473
+ a(X, n146) :- a(X, n145).
474
+ a(X, i146) :- a(X, n145).
475
+ a(X, j146) :- a(X, n145).
476
+ a(X, n147) :- a(X, n146).
477
+ a(X, i147) :- a(X, n146).
478
+ a(X, j147) :- a(X, n146).
479
+ a(X, n148) :- a(X, n147).
480
+ a(X, i148) :- a(X, n147).
481
+ a(X, j148) :- a(X, n147).
482
+ a(X, n149) :- a(X, n148).
483
+ a(X, i149) :- a(X, n148).
484
+ a(X, j149) :- a(X, n148).
485
+ a(X, n150) :- a(X, n149).
486
+ a(X, i150) :- a(X, n149).
487
+ a(X, j150) :- a(X, n149).
488
+ a(X, n151) :- a(X, n150).
489
+ a(X, i151) :- a(X, n150).
490
+ a(X, j151) :- a(X, n150).
491
+ a(X, n152) :- a(X, n151).
492
+ a(X, i152) :- a(X, n151).
493
+ a(X, j152) :- a(X, n151).
494
+ a(X, n153) :- a(X, n152).
495
+ a(X, i153) :- a(X, n152).
496
+ a(X, j153) :- a(X, n152).
497
+ a(X, n154) :- a(X, n153).
498
+ a(X, i154) :- a(X, n153).
499
+ a(X, j154) :- a(X, n153).
500
+ a(X, n155) :- a(X, n154).
501
+ a(X, i155) :- a(X, n154).
502
+ a(X, j155) :- a(X, n154).
503
+ a(X, n156) :- a(X, n155).
504
+ a(X, i156) :- a(X, n155).
505
+ a(X, j156) :- a(X, n155).
506
+ a(X, n157) :- a(X, n156).
507
+ a(X, i157) :- a(X, n156).
508
+ a(X, j157) :- a(X, n156).
509
+ a(X, n158) :- a(X, n157).
510
+ a(X, i158) :- a(X, n157).
511
+ a(X, j158) :- a(X, n157).
512
+ a(X, n159) :- a(X, n158).
513
+ a(X, i159) :- a(X, n158).
514
+ a(X, j159) :- a(X, n158).
515
+ a(X, n160) :- a(X, n159).
516
+ a(X, i160) :- a(X, n159).
517
+ a(X, j160) :- a(X, n159).
518
+ a(X, n161) :- a(X, n160).
519
+ a(X, i161) :- a(X, n160).
520
+ a(X, j161) :- a(X, n160).
521
+ a(X, n162) :- a(X, n161).
522
+ a(X, i162) :- a(X, n161).
523
+ a(X, j162) :- a(X, n161).
524
+ a(X, n163) :- a(X, n162).
525
+ a(X, i163) :- a(X, n162).
526
+ a(X, j163) :- a(X, n162).
527
+ a(X, n164) :- a(X, n163).
528
+ a(X, i164) :- a(X, n163).
529
+ a(X, j164) :- a(X, n163).
530
+ a(X, n165) :- a(X, n164).
531
+ a(X, i165) :- a(X, n164).
532
+ a(X, j165) :- a(X, n164).
533
+ a(X, n166) :- a(X, n165).
534
+ a(X, i166) :- a(X, n165).
535
+ a(X, j166) :- a(X, n165).
536
+ a(X, n167) :- a(X, n166).
537
+ a(X, i167) :- a(X, n166).
538
+ a(X, j167) :- a(X, n166).
539
+ a(X, n168) :- a(X, n167).
540
+ a(X, i168) :- a(X, n167).
541
+ a(X, j168) :- a(X, n167).
542
+ a(X, n169) :- a(X, n168).
543
+ a(X, i169) :- a(X, n168).
544
+ a(X, j169) :- a(X, n168).
545
+ a(X, n170) :- a(X, n169).
546
+ a(X, i170) :- a(X, n169).
547
+ a(X, j170) :- a(X, n169).
548
+ a(X, n171) :- a(X, n170).
549
+ a(X, i171) :- a(X, n170).
550
+ a(X, j171) :- a(X, n170).
551
+ a(X, n172) :- a(X, n171).
552
+ a(X, i172) :- a(X, n171).
553
+ a(X, j172) :- a(X, n171).
554
+ a(X, n173) :- a(X, n172).
555
+ a(X, i173) :- a(X, n172).
556
+ a(X, j173) :- a(X, n172).
557
+ a(X, n174) :- a(X, n173).
558
+ a(X, i174) :- a(X, n173).
559
+ a(X, j174) :- a(X, n173).
560
+ a(X, n175) :- a(X, n174).
561
+ a(X, i175) :- a(X, n174).
562
+ a(X, j175) :- a(X, n174).
563
+ a(X, n176) :- a(X, n175).
564
+ a(X, i176) :- a(X, n175).
565
+ a(X, j176) :- a(X, n175).
566
+ a(X, n177) :- a(X, n176).
567
+ a(X, i177) :- a(X, n176).
568
+ a(X, j177) :- a(X, n176).
569
+ a(X, n178) :- a(X, n177).
570
+ a(X, i178) :- a(X, n177).
571
+ a(X, j178) :- a(X, n177).
572
+ a(X, n179) :- a(X, n178).
573
+ a(X, i179) :- a(X, n178).
574
+ a(X, j179) :- a(X, n178).
575
+ a(X, n180) :- a(X, n179).
576
+ a(X, i180) :- a(X, n179).
577
+ a(X, j180) :- a(X, n179).
578
+ a(X, n181) :- a(X, n180).
579
+ a(X, i181) :- a(X, n180).
580
+ a(X, j181) :- a(X, n180).
581
+ a(X, n182) :- a(X, n181).
582
+ a(X, i182) :- a(X, n181).
583
+ a(X, j182) :- a(X, n181).
584
+ a(X, n183) :- a(X, n182).
585
+ a(X, i183) :- a(X, n182).
586
+ a(X, j183) :- a(X, n182).
587
+ a(X, n184) :- a(X, n183).
588
+ a(X, i184) :- a(X, n183).
589
+ a(X, j184) :- a(X, n183).
590
+ a(X, n185) :- a(X, n184).
591
+ a(X, i185) :- a(X, n184).
592
+ a(X, j185) :- a(X, n184).
593
+ a(X, n186) :- a(X, n185).
594
+ a(X, i186) :- a(X, n185).
595
+ a(X, j186) :- a(X, n185).
596
+ a(X, n187) :- a(X, n186).
597
+ a(X, i187) :- a(X, n186).
598
+ a(X, j187) :- a(X, n186).
599
+ a(X, n188) :- a(X, n187).
600
+ a(X, i188) :- a(X, n187).
601
+ a(X, j188) :- a(X, n187).
602
+ a(X, n189) :- a(X, n188).
603
+ a(X, i189) :- a(X, n188).
604
+ a(X, j189) :- a(X, n188).
605
+ a(X, n190) :- a(X, n189).
606
+ a(X, i190) :- a(X, n189).
607
+ a(X, j190) :- a(X, n189).
608
+ a(X, n191) :- a(X, n190).
609
+ a(X, i191) :- a(X, n190).
610
+ a(X, j191) :- a(X, n190).
611
+ a(X, n192) :- a(X, n191).
612
+ a(X, i192) :- a(X, n191).
613
+ a(X, j192) :- a(X, n191).
614
+ a(X, n193) :- a(X, n192).
615
+ a(X, i193) :- a(X, n192).
616
+ a(X, j193) :- a(X, n192).
617
+ a(X, n194) :- a(X, n193).
618
+ a(X, i194) :- a(X, n193).
619
+ a(X, j194) :- a(X, n193).
620
+ a(X, n195) :- a(X, n194).
621
+ a(X, i195) :- a(X, n194).
622
+ a(X, j195) :- a(X, n194).
623
+ a(X, n196) :- a(X, n195).
624
+ a(X, i196) :- a(X, n195).
625
+ a(X, j196) :- a(X, n195).
626
+ a(X, n197) :- a(X, n196).
627
+ a(X, i197) :- a(X, n196).
628
+ a(X, j197) :- a(X, n196).
629
+ a(X, n198) :- a(X, n197).
630
+ a(X, i198) :- a(X, n197).
631
+ a(X, j198) :- a(X, n197).
632
+ a(X, n199) :- a(X, n198).
633
+ a(X, i199) :- a(X, n198).
634
+ a(X, j199) :- a(X, n198).
635
+ a(X, n200) :- a(X, n199).
636
+ a(X, i200) :- a(X, n199).
637
+ a(X, j200) :- a(X, n199).
638
+ a(X, n201) :- a(X, n200).
639
+ a(X, i201) :- a(X, n200).
640
+ a(X, j201) :- a(X, n200).
641
+ a(X, n202) :- a(X, n201).
642
+ a(X, i202) :- a(X, n201).
643
+ a(X, j202) :- a(X, n201).
644
+ a(X, n203) :- a(X, n202).
645
+ a(X, i203) :- a(X, n202).
646
+ a(X, j203) :- a(X, n202).
647
+ a(X, n204) :- a(X, n203).
648
+ a(X, i204) :- a(X, n203).
649
+ a(X, j204) :- a(X, n203).
650
+ a(X, n205) :- a(X, n204).
651
+ a(X, i205) :- a(X, n204).
652
+ a(X, j205) :- a(X, n204).
653
+ a(X, n206) :- a(X, n205).
654
+ a(X, i206) :- a(X, n205).
655
+ a(X, j206) :- a(X, n205).
656
+ a(X, n207) :- a(X, n206).
657
+ a(X, i207) :- a(X, n206).
658
+ a(X, j207) :- a(X, n206).
659
+ a(X, n208) :- a(X, n207).
660
+ a(X, i208) :- a(X, n207).
661
+ a(X, j208) :- a(X, n207).
662
+ a(X, n209) :- a(X, n208).
663
+ a(X, i209) :- a(X, n208).
664
+ a(X, j209) :- a(X, n208).
665
+ a(X, n210) :- a(X, n209).
666
+ a(X, i210) :- a(X, n209).
667
+ a(X, j210) :- a(X, n209).
668
+ a(X, n211) :- a(X, n210).
669
+ a(X, i211) :- a(X, n210).
670
+ a(X, j211) :- a(X, n210).
671
+ a(X, n212) :- a(X, n211).
672
+ a(X, i212) :- a(X, n211).
673
+ a(X, j212) :- a(X, n211).
674
+ a(X, n213) :- a(X, n212).
675
+ a(X, i213) :- a(X, n212).
676
+ a(X, j213) :- a(X, n212).
677
+ a(X, n214) :- a(X, n213).
678
+ a(X, i214) :- a(X, n213).
679
+ a(X, j214) :- a(X, n213).
680
+ a(X, n215) :- a(X, n214).
681
+ a(X, i215) :- a(X, n214).
682
+ a(X, j215) :- a(X, n214).
683
+ a(X, n216) :- a(X, n215).
684
+ a(X, i216) :- a(X, n215).
685
+ a(X, j216) :- a(X, n215).
686
+ a(X, n217) :- a(X, n216).
687
+ a(X, i217) :- a(X, n216).
688
+ a(X, j217) :- a(X, n216).
689
+ a(X, n218) :- a(X, n217).
690
+ a(X, i218) :- a(X, n217).
691
+ a(X, j218) :- a(X, n217).
692
+ a(X, n219) :- a(X, n218).
693
+ a(X, i219) :- a(X, n218).
694
+ a(X, j219) :- a(X, n218).
695
+ a(X, n220) :- a(X, n219).
696
+ a(X, i220) :- a(X, n219).
697
+ a(X, j220) :- a(X, n219).
698
+ a(X, n221) :- a(X, n220).
699
+ a(X, i221) :- a(X, n220).
700
+ a(X, j221) :- a(X, n220).
701
+ a(X, n222) :- a(X, n221).
702
+ a(X, i222) :- a(X, n221).
703
+ a(X, j222) :- a(X, n221).
704
+ a(X, n223) :- a(X, n222).
705
+ a(X, i223) :- a(X, n222).
706
+ a(X, j223) :- a(X, n222).
707
+ a(X, n224) :- a(X, n223).
708
+ a(X, i224) :- a(X, n223).
709
+ a(X, j224) :- a(X, n223).
710
+ a(X, n225) :- a(X, n224).
711
+ a(X, i225) :- a(X, n224).
712
+ a(X, j225) :- a(X, n224).
713
+ a(X, n226) :- a(X, n225).
714
+ a(X, i226) :- a(X, n225).
715
+ a(X, j226) :- a(X, n225).
716
+ a(X, n227) :- a(X, n226).
717
+ a(X, i227) :- a(X, n226).
718
+ a(X, j227) :- a(X, n226).
719
+ a(X, n228) :- a(X, n227).
720
+ a(X, i228) :- a(X, n227).
721
+ a(X, j228) :- a(X, n227).
722
+ a(X, n229) :- a(X, n228).
723
+ a(X, i229) :- a(X, n228).
724
+ a(X, j229) :- a(X, n228).
725
+ a(X, n230) :- a(X, n229).
726
+ a(X, i230) :- a(X, n229).
727
+ a(X, j230) :- a(X, n229).
728
+ a(X, n231) :- a(X, n230).
729
+ a(X, i231) :- a(X, n230).
730
+ a(X, j231) :- a(X, n230).
731
+ a(X, n232) :- a(X, n231).
732
+ a(X, i232) :- a(X, n231).
733
+ a(X, j232) :- a(X, n231).
734
+ a(X, n233) :- a(X, n232).
735
+ a(X, i233) :- a(X, n232).
736
+ a(X, j233) :- a(X, n232).
737
+ a(X, n234) :- a(X, n233).
738
+ a(X, i234) :- a(X, n233).
739
+ a(X, j234) :- a(X, n233).
740
+ a(X, n235) :- a(X, n234).
741
+ a(X, i235) :- a(X, n234).
742
+ a(X, j235) :- a(X, n234).
743
+ a(X, n236) :- a(X, n235).
744
+ a(X, i236) :- a(X, n235).
745
+ a(X, j236) :- a(X, n235).
746
+ a(X, n237) :- a(X, n236).
747
+ a(X, i237) :- a(X, n236).
748
+ a(X, j237) :- a(X, n236).
749
+ a(X, n238) :- a(X, n237).
750
+ a(X, i238) :- a(X, n237).
751
+ a(X, j238) :- a(X, n237).
752
+ a(X, n239) :- a(X, n238).
753
+ a(X, i239) :- a(X, n238).
754
+ a(X, j239) :- a(X, n238).
755
+ a(X, n240) :- a(X, n239).
756
+ a(X, i240) :- a(X, n239).
757
+ a(X, j240) :- a(X, n239).
758
+ a(X, n241) :- a(X, n240).
759
+ a(X, i241) :- a(X, n240).
760
+ a(X, j241) :- a(X, n240).
761
+ a(X, n242) :- a(X, n241).
762
+ a(X, i242) :- a(X, n241).
763
+ a(X, j242) :- a(X, n241).
764
+ a(X, n243) :- a(X, n242).
765
+ a(X, i243) :- a(X, n242).
766
+ a(X, j243) :- a(X, n242).
767
+ a(X, n244) :- a(X, n243).
768
+ a(X, i244) :- a(X, n243).
769
+ a(X, j244) :- a(X, n243).
770
+ a(X, n245) :- a(X, n244).
771
+ a(X, i245) :- a(X, n244).
772
+ a(X, j245) :- a(X, n244).
773
+ a(X, n246) :- a(X, n245).
774
+ a(X, i246) :- a(X, n245).
775
+ a(X, j246) :- a(X, n245).
776
+ a(X, n247) :- a(X, n246).
777
+ a(X, i247) :- a(X, n246).
778
+ a(X, j247) :- a(X, n246).
779
+ a(X, n248) :- a(X, n247).
780
+ a(X, i248) :- a(X, n247).
781
+ a(X, j248) :- a(X, n247).
782
+ a(X, n249) :- a(X, n248).
783
+ a(X, i249) :- a(X, n248).
784
+ a(X, j249) :- a(X, n248).
785
+ a(X, n250) :- a(X, n249).
786
+ a(X, i250) :- a(X, n249).
787
+ a(X, j250) :- a(X, n249).
788
+ a(X, n251) :- a(X, n250).
789
+ a(X, i251) :- a(X, n250).
790
+ a(X, j251) :- a(X, n250).
791
+ a(X, n252) :- a(X, n251).
792
+ a(X, i252) :- a(X, n251).
793
+ a(X, j252) :- a(X, n251).
794
+ a(X, n253) :- a(X, n252).
795
+ a(X, i253) :- a(X, n252).
796
+ a(X, j253) :- a(X, n252).
797
+ a(X, n254) :- a(X, n253).
798
+ a(X, i254) :- a(X, n253).
799
+ a(X, j254) :- a(X, n253).
800
+ a(X, n255) :- a(X, n254).
801
+ a(X, i255) :- a(X, n254).
802
+ a(X, j255) :- a(X, n254).
803
+ a(X, n256) :- a(X, n255).
804
+ a(X, i256) :- a(X, n255).
805
+ a(X, j256) :- a(X, n255).
806
+ a(X, n257) :- a(X, n256).
807
+ a(X, i257) :- a(X, n256).
808
+ a(X, j257) :- a(X, n256).
809
+ a(X, n258) :- a(X, n257).
810
+ a(X, i258) :- a(X, n257).
811
+ a(X, j258) :- a(X, n257).
812
+ a(X, n259) :- a(X, n258).
813
+ a(X, i259) :- a(X, n258).
814
+ a(X, j259) :- a(X, n258).
815
+ a(X, n260) :- a(X, n259).
816
+ a(X, i260) :- a(X, n259).
817
+ a(X, j260) :- a(X, n259).
818
+ a(X, n261) :- a(X, n260).
819
+ a(X, i261) :- a(X, n260).
820
+ a(X, j261) :- a(X, n260).
821
+ a(X, n262) :- a(X, n261).
822
+ a(X, i262) :- a(X, n261).
823
+ a(X, j262) :- a(X, n261).
824
+ a(X, n263) :- a(X, n262).
825
+ a(X, i263) :- a(X, n262).
826
+ a(X, j263) :- a(X, n262).
827
+ a(X, n264) :- a(X, n263).
828
+ a(X, i264) :- a(X, n263).
829
+ a(X, j264) :- a(X, n263).
830
+ a(X, n265) :- a(X, n264).
831
+ a(X, i265) :- a(X, n264).
832
+ a(X, j265) :- a(X, n264).
833
+ a(X, n266) :- a(X, n265).
834
+ a(X, i266) :- a(X, n265).
835
+ a(X, j266) :- a(X, n265).
836
+ a(X, n267) :- a(X, n266).
837
+ a(X, i267) :- a(X, n266).
838
+ a(X, j267) :- a(X, n266).
839
+ a(X, n268) :- a(X, n267).
840
+ a(X, i268) :- a(X, n267).
841
+ a(X, j268) :- a(X, n267).
842
+ a(X, n269) :- a(X, n268).
843
+ a(X, i269) :- a(X, n268).
844
+ a(X, j269) :- a(X, n268).
845
+ a(X, n270) :- a(X, n269).
846
+ a(X, i270) :- a(X, n269).
847
+ a(X, j270) :- a(X, n269).
848
+ a(X, n271) :- a(X, n270).
849
+ a(X, i271) :- a(X, n270).
850
+ a(X, j271) :- a(X, n270).
851
+ a(X, n272) :- a(X, n271).
852
+ a(X, i272) :- a(X, n271).
853
+ a(X, j272) :- a(X, n271).
854
+ a(X, n273) :- a(X, n272).
855
+ a(X, i273) :- a(X, n272).
856
+ a(X, j273) :- a(X, n272).
857
+ a(X, n274) :- a(X, n273).
858
+ a(X, i274) :- a(X, n273).
859
+ a(X, j274) :- a(X, n273).
860
+ a(X, n275) :- a(X, n274).
861
+ a(X, i275) :- a(X, n274).
862
+ a(X, j275) :- a(X, n274).
863
+ a(X, n276) :- a(X, n275).
864
+ a(X, i276) :- a(X, n275).
865
+ a(X, j276) :- a(X, n275).
866
+ a(X, n277) :- a(X, n276).
867
+ a(X, i277) :- a(X, n276).
868
+ a(X, j277) :- a(X, n276).
869
+ a(X, n278) :- a(X, n277).
870
+ a(X, i278) :- a(X, n277).
871
+ a(X, j278) :- a(X, n277).
872
+ a(X, n279) :- a(X, n278).
873
+ a(X, i279) :- a(X, n278).
874
+ a(X, j279) :- a(X, n278).
875
+ a(X, n280) :- a(X, n279).
876
+ a(X, i280) :- a(X, n279).
877
+ a(X, j280) :- a(X, n279).
878
+ a(X, n281) :- a(X, n280).
879
+ a(X, i281) :- a(X, n280).
880
+ a(X, j281) :- a(X, n280).
881
+ a(X, n282) :- a(X, n281).
882
+ a(X, i282) :- a(X, n281).
883
+ a(X, j282) :- a(X, n281).
884
+ a(X, n283) :- a(X, n282).
885
+ a(X, i283) :- a(X, n282).
886
+ a(X, j283) :- a(X, n282).
887
+ a(X, n284) :- a(X, n283).
888
+ a(X, i284) :- a(X, n283).
889
+ a(X, j284) :- a(X, n283).
890
+ a(X, n285) :- a(X, n284).
891
+ a(X, i285) :- a(X, n284).
892
+ a(X, j285) :- a(X, n284).
893
+ a(X, n286) :- a(X, n285).
894
+ a(X, i286) :- a(X, n285).
895
+ a(X, j286) :- a(X, n285).
896
+ a(X, n287) :- a(X, n286).
897
+ a(X, i287) :- a(X, n286).
898
+ a(X, j287) :- a(X, n286).
899
+ a(X, n288) :- a(X, n287).
900
+ a(X, i288) :- a(X, n287).
901
+ a(X, j288) :- a(X, n287).
902
+ a(X, n289) :- a(X, n288).
903
+ a(X, i289) :- a(X, n288).
904
+ a(X, j289) :- a(X, n288).
905
+ a(X, n290) :- a(X, n289).
906
+ a(X, i290) :- a(X, n289).
907
+ a(X, j290) :- a(X, n289).
908
+ a(X, n291) :- a(X, n290).
909
+ a(X, i291) :- a(X, n290).
910
+ a(X, j291) :- a(X, n290).
911
+ a(X, n292) :- a(X, n291).
912
+ a(X, i292) :- a(X, n291).
913
+ a(X, j292) :- a(X, n291).
914
+ a(X, n293) :- a(X, n292).
915
+ a(X, i293) :- a(X, n292).
916
+ a(X, j293) :- a(X, n292).
917
+ a(X, n294) :- a(X, n293).
918
+ a(X, i294) :- a(X, n293).
919
+ a(X, j294) :- a(X, n293).
920
+ a(X, n295) :- a(X, n294).
921
+ a(X, i295) :- a(X, n294).
922
+ a(X, j295) :- a(X, n294).
923
+ a(X, n296) :- a(X, n295).
924
+ a(X, i296) :- a(X, n295).
925
+ a(X, j296) :- a(X, n295).
926
+ a(X, n297) :- a(X, n296).
927
+ a(X, i297) :- a(X, n296).
928
+ a(X, j297) :- a(X, n296).
929
+ a(X, n298) :- a(X, n297).
930
+ a(X, i298) :- a(X, n297).
931
+ a(X, j298) :- a(X, n297).
932
+ a(X, n299) :- a(X, n298).
933
+ a(X, i299) :- a(X, n298).
934
+ a(X, j299) :- a(X, n298).
935
+ a(X, n300) :- a(X, n299).
936
+ a(X, i300) :- a(X, n299).
937
+ a(X, j300) :- a(X, n299).
938
+ a(X, n301) :- a(X, n300).
939
+ a(X, i301) :- a(X, n300).
940
+ a(X, j301) :- a(X, n300).
941
+ a(X, n302) :- a(X, n301).
942
+ a(X, i302) :- a(X, n301).
943
+ a(X, j302) :- a(X, n301).
944
+ a(X, n303) :- a(X, n302).
945
+ a(X, i303) :- a(X, n302).
946
+ a(X, j303) :- a(X, n302).
947
+ a(X, n304) :- a(X, n303).
948
+ a(X, i304) :- a(X, n303).
949
+ a(X, j304) :- a(X, n303).
950
+ a(X, n305) :- a(X, n304).
951
+ a(X, i305) :- a(X, n304).
952
+ a(X, j305) :- a(X, n304).
953
+ a(X, n306) :- a(X, n305).
954
+ a(X, i306) :- a(X, n305).
955
+ a(X, j306) :- a(X, n305).
956
+ a(X, n307) :- a(X, n306).
957
+ a(X, i307) :- a(X, n306).
958
+ a(X, j307) :- a(X, n306).
959
+ a(X, n308) :- a(X, n307).
960
+ a(X, i308) :- a(X, n307).
961
+ a(X, j308) :- a(X, n307).
962
+ a(X, n309) :- a(X, n308).
963
+ a(X, i309) :- a(X, n308).
964
+ a(X, j309) :- a(X, n308).
965
+ a(X, n310) :- a(X, n309).
966
+ a(X, i310) :- a(X, n309).
967
+ a(X, j310) :- a(X, n309).
968
+ a(X, n311) :- a(X, n310).
969
+ a(X, i311) :- a(X, n310).
970
+ a(X, j311) :- a(X, n310).
971
+ a(X, n312) :- a(X, n311).
972
+ a(X, i312) :- a(X, n311).
973
+ a(X, j312) :- a(X, n311).
974
+ a(X, n313) :- a(X, n312).
975
+ a(X, i313) :- a(X, n312).
976
+ a(X, j313) :- a(X, n312).
977
+ a(X, n314) :- a(X, n313).
978
+ a(X, i314) :- a(X, n313).
979
+ a(X, j314) :- a(X, n313).
980
+ a(X, n315) :- a(X, n314).
981
+ a(X, i315) :- a(X, n314).
982
+ a(X, j315) :- a(X, n314).
983
+ a(X, n316) :- a(X, n315).
984
+ a(X, i316) :- a(X, n315).
985
+ a(X, j316) :- a(X, n315).
986
+ a(X, n317) :- a(X, n316).
987
+ a(X, i317) :- a(X, n316).
988
+ a(X, j317) :- a(X, n316).
989
+ a(X, n318) :- a(X, n317).
990
+ a(X, i318) :- a(X, n317).
991
+ a(X, j318) :- a(X, n317).
992
+ a(X, n319) :- a(X, n318).
993
+ a(X, i319) :- a(X, n318).
994
+ a(X, j319) :- a(X, n318).
995
+ a(X, n320) :- a(X, n319).
996
+ a(X, i320) :- a(X, n319).
997
+ a(X, j320) :- a(X, n319).
998
+ a(X, n321) :- a(X, n320).
999
+ a(X, i321) :- a(X, n320).
1000
+ a(X, j321) :- a(X, n320).
1001
+ a(X, n322) :- a(X, n321).
1002
+ a(X, i322) :- a(X, n321).
1003
+ a(X, j322) :- a(X, n321).
1004
+ a(X, n323) :- a(X, n322).
1005
+ a(X, i323) :- a(X, n322).
1006
+ a(X, j323) :- a(X, n322).
1007
+ a(X, n324) :- a(X, n323).
1008
+ a(X, i324) :- a(X, n323).
1009
+ a(X, j324) :- a(X, n323).
1010
+ a(X, n325) :- a(X, n324).
1011
+ a(X, i325) :- a(X, n324).
1012
+ a(X, j325) :- a(X, n324).
1013
+ a(X, n326) :- a(X, n325).
1014
+ a(X, i326) :- a(X, n325).
1015
+ a(X, j326) :- a(X, n325).
1016
+ a(X, n327) :- a(X, n326).
1017
+ a(X, i327) :- a(X, n326).
1018
+ a(X, j327) :- a(X, n326).
1019
+ a(X, n328) :- a(X, n327).
1020
+ a(X, i328) :- a(X, n327).
1021
+ a(X, j328) :- a(X, n327).
1022
+ a(X, n329) :- a(X, n328).
1023
+ a(X, i329) :- a(X, n328).
1024
+ a(X, j329) :- a(X, n328).
1025
+ a(X, n330) :- a(X, n329).
1026
+ a(X, i330) :- a(X, n329).
1027
+ a(X, j330) :- a(X, n329).
1028
+ a(X, n331) :- a(X, n330).
1029
+ a(X, i331) :- a(X, n330).
1030
+ a(X, j331) :- a(X, n330).
1031
+ a(X, n332) :- a(X, n331).
1032
+ a(X, i332) :- a(X, n331).
1033
+ a(X, j332) :- a(X, n331).
1034
+ a(X, n333) :- a(X, n332).
1035
+ a(X, i333) :- a(X, n332).
1036
+ a(X, j333) :- a(X, n332).
1037
+ a(X, n334) :- a(X, n333).
1038
+ a(X, i334) :- a(X, n333).
1039
+ a(X, j334) :- a(X, n333).
1040
+ a(X, n335) :- a(X, n334).
1041
+ a(X, i335) :- a(X, n334).
1042
+ a(X, j335) :- a(X, n334).
1043
+ a(X, n336) :- a(X, n335).
1044
+ a(X, i336) :- a(X, n335).
1045
+ a(X, j336) :- a(X, n335).
1046
+ a(X, n337) :- a(X, n336).
1047
+ a(X, i337) :- a(X, n336).
1048
+ a(X, j337) :- a(X, n336).
1049
+ a(X, n338) :- a(X, n337).
1050
+ a(X, i338) :- a(X, n337).
1051
+ a(X, j338) :- a(X, n337).
1052
+ a(X, n339) :- a(X, n338).
1053
+ a(X, i339) :- a(X, n338).
1054
+ a(X, j339) :- a(X, n338).
1055
+ a(X, n340) :- a(X, n339).
1056
+ a(X, i340) :- a(X, n339).
1057
+ a(X, j340) :- a(X, n339).
1058
+ a(X, n341) :- a(X, n340).
1059
+ a(X, i341) :- a(X, n340).
1060
+ a(X, j341) :- a(X, n340).
1061
+ a(X, n342) :- a(X, n341).
1062
+ a(X, i342) :- a(X, n341).
1063
+ a(X, j342) :- a(X, n341).
1064
+ a(X, n343) :- a(X, n342).
1065
+ a(X, i343) :- a(X, n342).
1066
+ a(X, j343) :- a(X, n342).
1067
+ a(X, n344) :- a(X, n343).
1068
+ a(X, i344) :- a(X, n343).
1069
+ a(X, j344) :- a(X, n343).
1070
+ a(X, n345) :- a(X, n344).
1071
+ a(X, i345) :- a(X, n344).
1072
+ a(X, j345) :- a(X, n344).
1073
+ a(X, n346) :- a(X, n345).
1074
+ a(X, i346) :- a(X, n345).
1075
+ a(X, j346) :- a(X, n345).
1076
+ a(X, n347) :- a(X, n346).
1077
+ a(X, i347) :- a(X, n346).
1078
+ a(X, j347) :- a(X, n346).
1079
+ a(X, n348) :- a(X, n347).
1080
+ a(X, i348) :- a(X, n347).
1081
+ a(X, j348) :- a(X, n347).
1082
+ a(X, n349) :- a(X, n348).
1083
+ a(X, i349) :- a(X, n348).
1084
+ a(X, j349) :- a(X, n348).
1085
+ a(X, n350) :- a(X, n349).
1086
+ a(X, i350) :- a(X, n349).
1087
+ a(X, j350) :- a(X, n349).
1088
+ a(X, n351) :- a(X, n350).
1089
+ a(X, i351) :- a(X, n350).
1090
+ a(X, j351) :- a(X, n350).
1091
+ a(X, n352) :- a(X, n351).
1092
+ a(X, i352) :- a(X, n351).
1093
+ a(X, j352) :- a(X, n351).
1094
+ a(X, n353) :- a(X, n352).
1095
+ a(X, i353) :- a(X, n352).
1096
+ a(X, j353) :- a(X, n352).
1097
+ a(X, n354) :- a(X, n353).
1098
+ a(X, i354) :- a(X, n353).
1099
+ a(X, j354) :- a(X, n353).
1100
+ a(X, n355) :- a(X, n354).
1101
+ a(X, i355) :- a(X, n354).
1102
+ a(X, j355) :- a(X, n354).
1103
+ a(X, n356) :- a(X, n355).
1104
+ a(X, i356) :- a(X, n355).
1105
+ a(X, j356) :- a(X, n355).
1106
+ a(X, n357) :- a(X, n356).
1107
+ a(X, i357) :- a(X, n356).
1108
+ a(X, j357) :- a(X, n356).
1109
+ a(X, n358) :- a(X, n357).
1110
+ a(X, i358) :- a(X, n357).
1111
+ a(X, j358) :- a(X, n357).
1112
+ a(X, n359) :- a(X, n358).
1113
+ a(X, i359) :- a(X, n358).
1114
+ a(X, j359) :- a(X, n358).
1115
+ a(X, n360) :- a(X, n359).
1116
+ a(X, i360) :- a(X, n359).
1117
+ a(X, j360) :- a(X, n359).
1118
+ a(X, n361) :- a(X, n360).
1119
+ a(X, i361) :- a(X, n360).
1120
+ a(X, j361) :- a(X, n360).
1121
+ a(X, n362) :- a(X, n361).
1122
+ a(X, i362) :- a(X, n361).
1123
+ a(X, j362) :- a(X, n361).
1124
+ a(X, n363) :- a(X, n362).
1125
+ a(X, i363) :- a(X, n362).
1126
+ a(X, j363) :- a(X, n362).
1127
+ a(X, n364) :- a(X, n363).
1128
+ a(X, i364) :- a(X, n363).
1129
+ a(X, j364) :- a(X, n363).
1130
+ a(X, n365) :- a(X, n364).
1131
+ a(X, i365) :- a(X, n364).
1132
+ a(X, j365) :- a(X, n364).
1133
+ a(X, n366) :- a(X, n365).
1134
+ a(X, i366) :- a(X, n365).
1135
+ a(X, j366) :- a(X, n365).
1136
+ a(X, n367) :- a(X, n366).
1137
+ a(X, i367) :- a(X, n366).
1138
+ a(X, j367) :- a(X, n366).
1139
+ a(X, n368) :- a(X, n367).
1140
+ a(X, i368) :- a(X, n367).
1141
+ a(X, j368) :- a(X, n367).
1142
+ a(X, n369) :- a(X, n368).
1143
+ a(X, i369) :- a(X, n368).
1144
+ a(X, j369) :- a(X, n368).
1145
+ a(X, n370) :- a(X, n369).
1146
+ a(X, i370) :- a(X, n369).
1147
+ a(X, j370) :- a(X, n369).
1148
+ a(X, n371) :- a(X, n370).
1149
+ a(X, i371) :- a(X, n370).
1150
+ a(X, j371) :- a(X, n370).
1151
+ a(X, n372) :- a(X, n371).
1152
+ a(X, i372) :- a(X, n371).
1153
+ a(X, j372) :- a(X, n371).
1154
+ a(X, n373) :- a(X, n372).
1155
+ a(X, i373) :- a(X, n372).
1156
+ a(X, j373) :- a(X, n372).
1157
+ a(X, n374) :- a(X, n373).
1158
+ a(X, i374) :- a(X, n373).
1159
+ a(X, j374) :- a(X, n373).
1160
+ a(X, n375) :- a(X, n374).
1161
+ a(X, i375) :- a(X, n374).
1162
+ a(X, j375) :- a(X, n374).
1163
+ a(X, n376) :- a(X, n375).
1164
+ a(X, i376) :- a(X, n375).
1165
+ a(X, j376) :- a(X, n375).
1166
+ a(X, n377) :- a(X, n376).
1167
+ a(X, i377) :- a(X, n376).
1168
+ a(X, j377) :- a(X, n376).
1169
+ a(X, n378) :- a(X, n377).
1170
+ a(X, i378) :- a(X, n377).
1171
+ a(X, j378) :- a(X, n377).
1172
+ a(X, n379) :- a(X, n378).
1173
+ a(X, i379) :- a(X, n378).
1174
+ a(X, j379) :- a(X, n378).
1175
+ a(X, n380) :- a(X, n379).
1176
+ a(X, i380) :- a(X, n379).
1177
+ a(X, j380) :- a(X, n379).
1178
+ a(X, n381) :- a(X, n380).
1179
+ a(X, i381) :- a(X, n380).
1180
+ a(X, j381) :- a(X, n380).
1181
+ a(X, n382) :- a(X, n381).
1182
+ a(X, i382) :- a(X, n381).
1183
+ a(X, j382) :- a(X, n381).
1184
+ a(X, n383) :- a(X, n382).
1185
+ a(X, i383) :- a(X, n382).
1186
+ a(X, j383) :- a(X, n382).
1187
+ a(X, n384) :- a(X, n383).
1188
+ a(X, i384) :- a(X, n383).
1189
+ a(X, j384) :- a(X, n383).
1190
+ a(X, n385) :- a(X, n384).
1191
+ a(X, i385) :- a(X, n384).
1192
+ a(X, j385) :- a(X, n384).
1193
+ a(X, n386) :- a(X, n385).
1194
+ a(X, i386) :- a(X, n385).
1195
+ a(X, j386) :- a(X, n385).
1196
+ a(X, n387) :- a(X, n386).
1197
+ a(X, i387) :- a(X, n386).
1198
+ a(X, j387) :- a(X, n386).
1199
+ a(X, n388) :- a(X, n387).
1200
+ a(X, i388) :- a(X, n387).
1201
+ a(X, j388) :- a(X, n387).
1202
+ a(X, n389) :- a(X, n388).
1203
+ a(X, i389) :- a(X, n388).
1204
+ a(X, j389) :- a(X, n388).
1205
+ a(X, n390) :- a(X, n389).
1206
+ a(X, i390) :- a(X, n389).
1207
+ a(X, j390) :- a(X, n389).
1208
+ a(X, n391) :- a(X, n390).
1209
+ a(X, i391) :- a(X, n390).
1210
+ a(X, j391) :- a(X, n390).
1211
+ a(X, n392) :- a(X, n391).
1212
+ a(X, i392) :- a(X, n391).
1213
+ a(X, j392) :- a(X, n391).
1214
+ a(X, n393) :- a(X, n392).
1215
+ a(X, i393) :- a(X, n392).
1216
+ a(X, j393) :- a(X, n392).
1217
+ a(X, n394) :- a(X, n393).
1218
+ a(X, i394) :- a(X, n393).
1219
+ a(X, j394) :- a(X, n393).
1220
+ a(X, n395) :- a(X, n394).
1221
+ a(X, i395) :- a(X, n394).
1222
+ a(X, j395) :- a(X, n394).
1223
+ a(X, n396) :- a(X, n395).
1224
+ a(X, i396) :- a(X, n395).
1225
+ a(X, j396) :- a(X, n395).
1226
+ a(X, n397) :- a(X, n396).
1227
+ a(X, i397) :- a(X, n396).
1228
+ a(X, j397) :- a(X, n396).
1229
+ a(X, n398) :- a(X, n397).
1230
+ a(X, i398) :- a(X, n397).
1231
+ a(X, j398) :- a(X, n397).
1232
+ a(X, n399) :- a(X, n398).
1233
+ a(X, i399) :- a(X, n398).
1234
+ a(X, j399) :- a(X, n398).
1235
+ a(X, n400) :- a(X, n399).
1236
+ a(X, i400) :- a(X, n399).
1237
+ a(X, j400) :- a(X, n399).
1238
+ a(X, n401) :- a(X, n400).
1239
+ a(X, i401) :- a(X, n400).
1240
+ a(X, j401) :- a(X, n400).
1241
+ a(X, n402) :- a(X, n401).
1242
+ a(X, i402) :- a(X, n401).
1243
+ a(X, j402) :- a(X, n401).
1244
+ a(X, n403) :- a(X, n402).
1245
+ a(X, i403) :- a(X, n402).
1246
+ a(X, j403) :- a(X, n402).
1247
+ a(X, n404) :- a(X, n403).
1248
+ a(X, i404) :- a(X, n403).
1249
+ a(X, j404) :- a(X, n403).
1250
+ a(X, n405) :- a(X, n404).
1251
+ a(X, i405) :- a(X, n404).
1252
+ a(X, j405) :- a(X, n404).
1253
+ a(X, n406) :- a(X, n405).
1254
+ a(X, i406) :- a(X, n405).
1255
+ a(X, j406) :- a(X, n405).
1256
+ a(X, n407) :- a(X, n406).
1257
+ a(X, i407) :- a(X, n406).
1258
+ a(X, j407) :- a(X, n406).
1259
+ a(X, n408) :- a(X, n407).
1260
+ a(X, i408) :- a(X, n407).
1261
+ a(X, j408) :- a(X, n407).
1262
+ a(X, n409) :- a(X, n408).
1263
+ a(X, i409) :- a(X, n408).
1264
+ a(X, j409) :- a(X, n408).
1265
+ a(X, n410) :- a(X, n409).
1266
+ a(X, i410) :- a(X, n409).
1267
+ a(X, j410) :- a(X, n409).
1268
+ a(X, n411) :- a(X, n410).
1269
+ a(X, i411) :- a(X, n410).
1270
+ a(X, j411) :- a(X, n410).
1271
+ a(X, n412) :- a(X, n411).
1272
+ a(X, i412) :- a(X, n411).
1273
+ a(X, j412) :- a(X, n411).
1274
+ a(X, n413) :- a(X, n412).
1275
+ a(X, i413) :- a(X, n412).
1276
+ a(X, j413) :- a(X, n412).
1277
+ a(X, n414) :- a(X, n413).
1278
+ a(X, i414) :- a(X, n413).
1279
+ a(X, j414) :- a(X, n413).
1280
+ a(X, n415) :- a(X, n414).
1281
+ a(X, i415) :- a(X, n414).
1282
+ a(X, j415) :- a(X, n414).
1283
+ a(X, n416) :- a(X, n415).
1284
+ a(X, i416) :- a(X, n415).
1285
+ a(X, j416) :- a(X, n415).
1286
+ a(X, n417) :- a(X, n416).
1287
+ a(X, i417) :- a(X, n416).
1288
+ a(X, j417) :- a(X, n416).
1289
+ a(X, n418) :- a(X, n417).
1290
+ a(X, i418) :- a(X, n417).
1291
+ a(X, j418) :- a(X, n417).
1292
+ a(X, n419) :- a(X, n418).
1293
+ a(X, i419) :- a(X, n418).
1294
+ a(X, j419) :- a(X, n418).
1295
+ a(X, n420) :- a(X, n419).
1296
+ a(X, i420) :- a(X, n419).
1297
+ a(X, j420) :- a(X, n419).
1298
+ a(X, n421) :- a(X, n420).
1299
+ a(X, i421) :- a(X, n420).
1300
+ a(X, j421) :- a(X, n420).
1301
+ a(X, n422) :- a(X, n421).
1302
+ a(X, i422) :- a(X, n421).
1303
+ a(X, j422) :- a(X, n421).
1304
+ a(X, n423) :- a(X, n422).
1305
+ a(X, i423) :- a(X, n422).
1306
+ a(X, j423) :- a(X, n422).
1307
+ a(X, n424) :- a(X, n423).
1308
+ a(X, i424) :- a(X, n423).
1309
+ a(X, j424) :- a(X, n423).
1310
+ a(X, n425) :- a(X, n424).
1311
+ a(X, i425) :- a(X, n424).
1312
+ a(X, j425) :- a(X, n424).
1313
+ a(X, n426) :- a(X, n425).
1314
+ a(X, i426) :- a(X, n425).
1315
+ a(X, j426) :- a(X, n425).
1316
+ a(X, n427) :- a(X, n426).
1317
+ a(X, i427) :- a(X, n426).
1318
+ a(X, j427) :- a(X, n426).
1319
+ a(X, n428) :- a(X, n427).
1320
+ a(X, i428) :- a(X, n427).
1321
+ a(X, j428) :- a(X, n427).
1322
+ a(X, n429) :- a(X, n428).
1323
+ a(X, i429) :- a(X, n428).
1324
+ a(X, j429) :- a(X, n428).
1325
+ a(X, n430) :- a(X, n429).
1326
+ a(X, i430) :- a(X, n429).
1327
+ a(X, j430) :- a(X, n429).
1328
+ a(X, n431) :- a(X, n430).
1329
+ a(X, i431) :- a(X, n430).
1330
+ a(X, j431) :- a(X, n430).
1331
+ a(X, n432) :- a(X, n431).
1332
+ a(X, i432) :- a(X, n431).
1333
+ a(X, j432) :- a(X, n431).
1334
+ a(X, n433) :- a(X, n432).
1335
+ a(X, i433) :- a(X, n432).
1336
+ a(X, j433) :- a(X, n432).
1337
+ a(X, n434) :- a(X, n433).
1338
+ a(X, i434) :- a(X, n433).
1339
+ a(X, j434) :- a(X, n433).
1340
+ a(X, n435) :- a(X, n434).
1341
+ a(X, i435) :- a(X, n434).
1342
+ a(X, j435) :- a(X, n434).
1343
+ a(X, n436) :- a(X, n435).
1344
+ a(X, i436) :- a(X, n435).
1345
+ a(X, j436) :- a(X, n435).
1346
+ a(X, n437) :- a(X, n436).
1347
+ a(X, i437) :- a(X, n436).
1348
+ a(X, j437) :- a(X, n436).
1349
+ a(X, n438) :- a(X, n437).
1350
+ a(X, i438) :- a(X, n437).
1351
+ a(X, j438) :- a(X, n437).
1352
+ a(X, n439) :- a(X, n438).
1353
+ a(X, i439) :- a(X, n438).
1354
+ a(X, j439) :- a(X, n438).
1355
+ a(X, n440) :- a(X, n439).
1356
+ a(X, i440) :- a(X, n439).
1357
+ a(X, j440) :- a(X, n439).
1358
+ a(X, n441) :- a(X, n440).
1359
+ a(X, i441) :- a(X, n440).
1360
+ a(X, j441) :- a(X, n440).
1361
+ a(X, n442) :- a(X, n441).
1362
+ a(X, i442) :- a(X, n441).
1363
+ a(X, j442) :- a(X, n441).
1364
+ a(X, n443) :- a(X, n442).
1365
+ a(X, i443) :- a(X, n442).
1366
+ a(X, j443) :- a(X, n442).
1367
+ a(X, n444) :- a(X, n443).
1368
+ a(X, i444) :- a(X, n443).
1369
+ a(X, j444) :- a(X, n443).
1370
+ a(X, n445) :- a(X, n444).
1371
+ a(X, i445) :- a(X, n444).
1372
+ a(X, j445) :- a(X, n444).
1373
+ a(X, n446) :- a(X, n445).
1374
+ a(X, i446) :- a(X, n445).
1375
+ a(X, j446) :- a(X, n445).
1376
+ a(X, n447) :- a(X, n446).
1377
+ a(X, i447) :- a(X, n446).
1378
+ a(X, j447) :- a(X, n446).
1379
+ a(X, n448) :- a(X, n447).
1380
+ a(X, i448) :- a(X, n447).
1381
+ a(X, j448) :- a(X, n447).
1382
+ a(X, n449) :- a(X, n448).
1383
+ a(X, i449) :- a(X, n448).
1384
+ a(X, j449) :- a(X, n448).
1385
+ a(X, n450) :- a(X, n449).
1386
+ a(X, i450) :- a(X, n449).
1387
+ a(X, j450) :- a(X, n449).
1388
+ a(X, n451) :- a(X, n450).
1389
+ a(X, i451) :- a(X, n450).
1390
+ a(X, j451) :- a(X, n450).
1391
+ a(X, n452) :- a(X, n451).
1392
+ a(X, i452) :- a(X, n451).
1393
+ a(X, j452) :- a(X, n451).
1394
+ a(X, n453) :- a(X, n452).
1395
+ a(X, i453) :- a(X, n452).
1396
+ a(X, j453) :- a(X, n452).
1397
+ a(X, n454) :- a(X, n453).
1398
+ a(X, i454) :- a(X, n453).
1399
+ a(X, j454) :- a(X, n453).
1400
+ a(X, n455) :- a(X, n454).
1401
+ a(X, i455) :- a(X, n454).
1402
+ a(X, j455) :- a(X, n454).
1403
+ a(X, n456) :- a(X, n455).
1404
+ a(X, i456) :- a(X, n455).
1405
+ a(X, j456) :- a(X, n455).
1406
+ a(X, n457) :- a(X, n456).
1407
+ a(X, i457) :- a(X, n456).
1408
+ a(X, j457) :- a(X, n456).
1409
+ a(X, n458) :- a(X, n457).
1410
+ a(X, i458) :- a(X, n457).
1411
+ a(X, j458) :- a(X, n457).
1412
+ a(X, n459) :- a(X, n458).
1413
+ a(X, i459) :- a(X, n458).
1414
+ a(X, j459) :- a(X, n458).
1415
+ a(X, n460) :- a(X, n459).
1416
+ a(X, i460) :- a(X, n459).
1417
+ a(X, j460) :- a(X, n459).
1418
+ a(X, n461) :- a(X, n460).
1419
+ a(X, i461) :- a(X, n460).
1420
+ a(X, j461) :- a(X, n460).
1421
+ a(X, n462) :- a(X, n461).
1422
+ a(X, i462) :- a(X, n461).
1423
+ a(X, j462) :- a(X, n461).
1424
+ a(X, n463) :- a(X, n462).
1425
+ a(X, i463) :- a(X, n462).
1426
+ a(X, j463) :- a(X, n462).
1427
+ a(X, n464) :- a(X, n463).
1428
+ a(X, i464) :- a(X, n463).
1429
+ a(X, j464) :- a(X, n463).
1430
+ a(X, n465) :- a(X, n464).
1431
+ a(X, i465) :- a(X, n464).
1432
+ a(X, j465) :- a(X, n464).
1433
+ a(X, n466) :- a(X, n465).
1434
+ a(X, i466) :- a(X, n465).
1435
+ a(X, j466) :- a(X, n465).
1436
+ a(X, n467) :- a(X, n466).
1437
+ a(X, i467) :- a(X, n466).
1438
+ a(X, j467) :- a(X, n466).
1439
+ a(X, n468) :- a(X, n467).
1440
+ a(X, i468) :- a(X, n467).
1441
+ a(X, j468) :- a(X, n467).
1442
+ a(X, n469) :- a(X, n468).
1443
+ a(X, i469) :- a(X, n468).
1444
+ a(X, j469) :- a(X, n468).
1445
+ a(X, n470) :- a(X, n469).
1446
+ a(X, i470) :- a(X, n469).
1447
+ a(X, j470) :- a(X, n469).
1448
+ a(X, n471) :- a(X, n470).
1449
+ a(X, i471) :- a(X, n470).
1450
+ a(X, j471) :- a(X, n470).
1451
+ a(X, n472) :- a(X, n471).
1452
+ a(X, i472) :- a(X, n471).
1453
+ a(X, j472) :- a(X, n471).
1454
+ a(X, n473) :- a(X, n472).
1455
+ a(X, i473) :- a(X, n472).
1456
+ a(X, j473) :- a(X, n472).
1457
+ a(X, n474) :- a(X, n473).
1458
+ a(X, i474) :- a(X, n473).
1459
+ a(X, j474) :- a(X, n473).
1460
+ a(X, n475) :- a(X, n474).
1461
+ a(X, i475) :- a(X, n474).
1462
+ a(X, j475) :- a(X, n474).
1463
+ a(X, n476) :- a(X, n475).
1464
+ a(X, i476) :- a(X, n475).
1465
+ a(X, j476) :- a(X, n475).
1466
+ a(X, n477) :- a(X, n476).
1467
+ a(X, i477) :- a(X, n476).
1468
+ a(X, j477) :- a(X, n476).
1469
+ a(X, n478) :- a(X, n477).
1470
+ a(X, i478) :- a(X, n477).
1471
+ a(X, j478) :- a(X, n477).
1472
+ a(X, n479) :- a(X, n478).
1473
+ a(X, i479) :- a(X, n478).
1474
+ a(X, j479) :- a(X, n478).
1475
+ a(X, n480) :- a(X, n479).
1476
+ a(X, i480) :- a(X, n479).
1477
+ a(X, j480) :- a(X, n479).
1478
+ a(X, n481) :- a(X, n480).
1479
+ a(X, i481) :- a(X, n480).
1480
+ a(X, j481) :- a(X, n480).
1481
+ a(X, n482) :- a(X, n481).
1482
+ a(X, i482) :- a(X, n481).
1483
+ a(X, j482) :- a(X, n481).
1484
+ a(X, n483) :- a(X, n482).
1485
+ a(X, i483) :- a(X, n482).
1486
+ a(X, j483) :- a(X, n482).
1487
+ a(X, n484) :- a(X, n483).
1488
+ a(X, i484) :- a(X, n483).
1489
+ a(X, j484) :- a(X, n483).
1490
+ a(X, n485) :- a(X, n484).
1491
+ a(X, i485) :- a(X, n484).
1492
+ a(X, j485) :- a(X, n484).
1493
+ a(X, n486) :- a(X, n485).
1494
+ a(X, i486) :- a(X, n485).
1495
+ a(X, j486) :- a(X, n485).
1496
+ a(X, n487) :- a(X, n486).
1497
+ a(X, i487) :- a(X, n486).
1498
+ a(X, j487) :- a(X, n486).
1499
+ a(X, n488) :- a(X, n487).
1500
+ a(X, i488) :- a(X, n487).
1501
+ a(X, j488) :- a(X, n487).
1502
+ a(X, n489) :- a(X, n488).
1503
+ a(X, i489) :- a(X, n488).
1504
+ a(X, j489) :- a(X, n488).
1505
+ a(X, n490) :- a(X, n489).
1506
+ a(X, i490) :- a(X, n489).
1507
+ a(X, j490) :- a(X, n489).
1508
+ a(X, n491) :- a(X, n490).
1509
+ a(X, i491) :- a(X, n490).
1510
+ a(X, j491) :- a(X, n490).
1511
+ a(X, n492) :- a(X, n491).
1512
+ a(X, i492) :- a(X, n491).
1513
+ a(X, j492) :- a(X, n491).
1514
+ a(X, n493) :- a(X, n492).
1515
+ a(X, i493) :- a(X, n492).
1516
+ a(X, j493) :- a(X, n492).
1517
+ a(X, n494) :- a(X, n493).
1518
+ a(X, i494) :- a(X, n493).
1519
+ a(X, j494) :- a(X, n493).
1520
+ a(X, n495) :- a(X, n494).
1521
+ a(X, i495) :- a(X, n494).
1522
+ a(X, j495) :- a(X, n494).
1523
+ a(X, n496) :- a(X, n495).
1524
+ a(X, i496) :- a(X, n495).
1525
+ a(X, j496) :- a(X, n495).
1526
+ a(X, n497) :- a(X, n496).
1527
+ a(X, i497) :- a(X, n496).
1528
+ a(X, j497) :- a(X, n496).
1529
+ a(X, n498) :- a(X, n497).
1530
+ a(X, i498) :- a(X, n497).
1531
+ a(X, j498) :- a(X, n497).
1532
+ a(X, n499) :- a(X, n498).
1533
+ a(X, i499) :- a(X, n498).
1534
+ a(X, j499) :- a(X, n498).
1535
+ a(X, n500) :- a(X, n499).
1536
+ a(X, i500) :- a(X, n499).
1537
+ a(X, j500) :- a(X, n499).
1538
+ a(X, n501) :- a(X, n500).
1539
+ a(X, i501) :- a(X, n500).
1540
+ a(X, j501) :- a(X, n500).
1541
+ a(X, n502) :- a(X, n501).
1542
+ a(X, i502) :- a(X, n501).
1543
+ a(X, j502) :- a(X, n501).
1544
+ a(X, n503) :- a(X, n502).
1545
+ a(X, i503) :- a(X, n502).
1546
+ a(X, j503) :- a(X, n502).
1547
+ a(X, n504) :- a(X, n503).
1548
+ a(X, i504) :- a(X, n503).
1549
+ a(X, j504) :- a(X, n503).
1550
+ a(X, n505) :- a(X, n504).
1551
+ a(X, i505) :- a(X, n504).
1552
+ a(X, j505) :- a(X, n504).
1553
+ a(X, n506) :- a(X, n505).
1554
+ a(X, i506) :- a(X, n505).
1555
+ a(X, j506) :- a(X, n505).
1556
+ a(X, n507) :- a(X, n506).
1557
+ a(X, i507) :- a(X, n506).
1558
+ a(X, j507) :- a(X, n506).
1559
+ a(X, n508) :- a(X, n507).
1560
+ a(X, i508) :- a(X, n507).
1561
+ a(X, j508) :- a(X, n507).
1562
+ a(X, n509) :- a(X, n508).
1563
+ a(X, i509) :- a(X, n508).
1564
+ a(X, j509) :- a(X, n508).
1565
+ a(X, n510) :- a(X, n509).
1566
+ a(X, i510) :- a(X, n509).
1567
+ a(X, j510) :- a(X, n509).
1568
+ a(X, n511) :- a(X, n510).
1569
+ a(X, i511) :- a(X, n510).
1570
+ a(X, j511) :- a(X, n510).
1571
+ a(X, n512) :- a(X, n511).
1572
+ a(X, i512) :- a(X, n511).
1573
+ a(X, j512) :- a(X, n511).
1574
+ a(X, n513) :- a(X, n512).
1575
+ a(X, i513) :- a(X, n512).
1576
+ a(X, j513) :- a(X, n512).
1577
+ a(X, n514) :- a(X, n513).
1578
+ a(X, i514) :- a(X, n513).
1579
+ a(X, j514) :- a(X, n513).
1580
+ a(X, n515) :- a(X, n514).
1581
+ a(X, i515) :- a(X, n514).
1582
+ a(X, j515) :- a(X, n514).
1583
+ a(X, n516) :- a(X, n515).
1584
+ a(X, i516) :- a(X, n515).
1585
+ a(X, j516) :- a(X, n515).
1586
+ a(X, n517) :- a(X, n516).
1587
+ a(X, i517) :- a(X, n516).
1588
+ a(X, j517) :- a(X, n516).
1589
+ a(X, n518) :- a(X, n517).
1590
+ a(X, i518) :- a(X, n517).
1591
+ a(X, j518) :- a(X, n517).
1592
+ a(X, n519) :- a(X, n518).
1593
+ a(X, i519) :- a(X, n518).
1594
+ a(X, j519) :- a(X, n518).
1595
+ a(X, n520) :- a(X, n519).
1596
+ a(X, i520) :- a(X, n519).
1597
+ a(X, j520) :- a(X, n519).
1598
+ a(X, n521) :- a(X, n520).
1599
+ a(X, i521) :- a(X, n520).
1600
+ a(X, j521) :- a(X, n520).
1601
+ a(X, n522) :- a(X, n521).
1602
+ a(X, i522) :- a(X, n521).
1603
+ a(X, j522) :- a(X, n521).
1604
+ a(X, n523) :- a(X, n522).
1605
+ a(X, i523) :- a(X, n522).
1606
+ a(X, j523) :- a(X, n522).
1607
+ a(X, n524) :- a(X, n523).
1608
+ a(X, i524) :- a(X, n523).
1609
+ a(X, j524) :- a(X, n523).
1610
+ a(X, n525) :- a(X, n524).
1611
+ a(X, i525) :- a(X, n524).
1612
+ a(X, j525) :- a(X, n524).
1613
+ a(X, n526) :- a(X, n525).
1614
+ a(X, i526) :- a(X, n525).
1615
+ a(X, j526) :- a(X, n525).
1616
+ a(X, n527) :- a(X, n526).
1617
+ a(X, i527) :- a(X, n526).
1618
+ a(X, j527) :- a(X, n526).
1619
+ a(X, n528) :- a(X, n527).
1620
+ a(X, i528) :- a(X, n527).
1621
+ a(X, j528) :- a(X, n527).
1622
+ a(X, n529) :- a(X, n528).
1623
+ a(X, i529) :- a(X, n528).
1624
+ a(X, j529) :- a(X, n528).
1625
+ a(X, n530) :- a(X, n529).
1626
+ a(X, i530) :- a(X, n529).
1627
+ a(X, j530) :- a(X, n529).
1628
+ a(X, n531) :- a(X, n530).
1629
+ a(X, i531) :- a(X, n530).
1630
+ a(X, j531) :- a(X, n530).
1631
+ a(X, n532) :- a(X, n531).
1632
+ a(X, i532) :- a(X, n531).
1633
+ a(X, j532) :- a(X, n531).
1634
+ a(X, n533) :- a(X, n532).
1635
+ a(X, i533) :- a(X, n532).
1636
+ a(X, j533) :- a(X, n532).
1637
+ a(X, n534) :- a(X, n533).
1638
+ a(X, i534) :- a(X, n533).
1639
+ a(X, j534) :- a(X, n533).
1640
+ a(X, n535) :- a(X, n534).
1641
+ a(X, i535) :- a(X, n534).
1642
+ a(X, j535) :- a(X, n534).
1643
+ a(X, n536) :- a(X, n535).
1644
+ a(X, i536) :- a(X, n535).
1645
+ a(X, j536) :- a(X, n535).
1646
+ a(X, n537) :- a(X, n536).
1647
+ a(X, i537) :- a(X, n536).
1648
+ a(X, j537) :- a(X, n536).
1649
+ a(X, n538) :- a(X, n537).
1650
+ a(X, i538) :- a(X, n537).
1651
+ a(X, j538) :- a(X, n537).
1652
+ a(X, n539) :- a(X, n538).
1653
+ a(X, i539) :- a(X, n538).
1654
+ a(X, j539) :- a(X, n538).
1655
+ a(X, n540) :- a(X, n539).
1656
+ a(X, i540) :- a(X, n539).
1657
+ a(X, j540) :- a(X, n539).
1658
+ a(X, n541) :- a(X, n540).
1659
+ a(X, i541) :- a(X, n540).
1660
+ a(X, j541) :- a(X, n540).
1661
+ a(X, n542) :- a(X, n541).
1662
+ a(X, i542) :- a(X, n541).
1663
+ a(X, j542) :- a(X, n541).
1664
+ a(X, n543) :- a(X, n542).
1665
+ a(X, i543) :- a(X, n542).
1666
+ a(X, j543) :- a(X, n542).
1667
+ a(X, n544) :- a(X, n543).
1668
+ a(X, i544) :- a(X, n543).
1669
+ a(X, j544) :- a(X, n543).
1670
+ a(X, n545) :- a(X, n544).
1671
+ a(X, i545) :- a(X, n544).
1672
+ a(X, j545) :- a(X, n544).
1673
+ a(X, n546) :- a(X, n545).
1674
+ a(X, i546) :- a(X, n545).
1675
+ a(X, j546) :- a(X, n545).
1676
+ a(X, n547) :- a(X, n546).
1677
+ a(X, i547) :- a(X, n546).
1678
+ a(X, j547) :- a(X, n546).
1679
+ a(X, n548) :- a(X, n547).
1680
+ a(X, i548) :- a(X, n547).
1681
+ a(X, j548) :- a(X, n547).
1682
+ a(X, n549) :- a(X, n548).
1683
+ a(X, i549) :- a(X, n548).
1684
+ a(X, j549) :- a(X, n548).
1685
+ a(X, n550) :- a(X, n549).
1686
+ a(X, i550) :- a(X, n549).
1687
+ a(X, j550) :- a(X, n549).
1688
+ a(X, n551) :- a(X, n550).
1689
+ a(X, i551) :- a(X, n550).
1690
+ a(X, j551) :- a(X, n550).
1691
+ a(X, n552) :- a(X, n551).
1692
+ a(X, i552) :- a(X, n551).
1693
+ a(X, j552) :- a(X, n551).
1694
+ a(X, n553) :- a(X, n552).
1695
+ a(X, i553) :- a(X, n552).
1696
+ a(X, j553) :- a(X, n552).
1697
+ a(X, n554) :- a(X, n553).
1698
+ a(X, i554) :- a(X, n553).
1699
+ a(X, j554) :- a(X, n553).
1700
+ a(X, n555) :- a(X, n554).
1701
+ a(X, i555) :- a(X, n554).
1702
+ a(X, j555) :- a(X, n554).
1703
+ a(X, n556) :- a(X, n555).
1704
+ a(X, i556) :- a(X, n555).
1705
+ a(X, j556) :- a(X, n555).
1706
+ a(X, n557) :- a(X, n556).
1707
+ a(X, i557) :- a(X, n556).
1708
+ a(X, j557) :- a(X, n556).
1709
+ a(X, n558) :- a(X, n557).
1710
+ a(X, i558) :- a(X, n557).
1711
+ a(X, j558) :- a(X, n557).
1712
+ a(X, n559) :- a(X, n558).
1713
+ a(X, i559) :- a(X, n558).
1714
+ a(X, j559) :- a(X, n558).
1715
+ a(X, n560) :- a(X, n559).
1716
+ a(X, i560) :- a(X, n559).
1717
+ a(X, j560) :- a(X, n559).
1718
+ a(X, n561) :- a(X, n560).
1719
+ a(X, i561) :- a(X, n560).
1720
+ a(X, j561) :- a(X, n560).
1721
+ a(X, n562) :- a(X, n561).
1722
+ a(X, i562) :- a(X, n561).
1723
+ a(X, j562) :- a(X, n561).
1724
+ a(X, n563) :- a(X, n562).
1725
+ a(X, i563) :- a(X, n562).
1726
+ a(X, j563) :- a(X, n562).
1727
+ a(X, n564) :- a(X, n563).
1728
+ a(X, i564) :- a(X, n563).
1729
+ a(X, j564) :- a(X, n563).
1730
+ a(X, n565) :- a(X, n564).
1731
+ a(X, i565) :- a(X, n564).
1732
+ a(X, j565) :- a(X, n564).
1733
+ a(X, n566) :- a(X, n565).
1734
+ a(X, i566) :- a(X, n565).
1735
+ a(X, j566) :- a(X, n565).
1736
+ a(X, n567) :- a(X, n566).
1737
+ a(X, i567) :- a(X, n566).
1738
+ a(X, j567) :- a(X, n566).
1739
+ a(X, n568) :- a(X, n567).
1740
+ a(X, i568) :- a(X, n567).
1741
+ a(X, j568) :- a(X, n567).
1742
+ a(X, n569) :- a(X, n568).
1743
+ a(X, i569) :- a(X, n568).
1744
+ a(X, j569) :- a(X, n568).
1745
+ a(X, n570) :- a(X, n569).
1746
+ a(X, i570) :- a(X, n569).
1747
+ a(X, j570) :- a(X, n569).
1748
+ a(X, n571) :- a(X, n570).
1749
+ a(X, i571) :- a(X, n570).
1750
+ a(X, j571) :- a(X, n570).
1751
+ a(X, n572) :- a(X, n571).
1752
+ a(X, i572) :- a(X, n571).
1753
+ a(X, j572) :- a(X, n571).
1754
+ a(X, n573) :- a(X, n572).
1755
+ a(X, i573) :- a(X, n572).
1756
+ a(X, j573) :- a(X, n572).
1757
+ a(X, n574) :- a(X, n573).
1758
+ a(X, i574) :- a(X, n573).
1759
+ a(X, j574) :- a(X, n573).
1760
+ a(X, n575) :- a(X, n574).
1761
+ a(X, i575) :- a(X, n574).
1762
+ a(X, j575) :- a(X, n574).
1763
+ a(X, n576) :- a(X, n575).
1764
+ a(X, i576) :- a(X, n575).
1765
+ a(X, j576) :- a(X, n575).
1766
+ a(X, n577) :- a(X, n576).
1767
+ a(X, i577) :- a(X, n576).
1768
+ a(X, j577) :- a(X, n576).
1769
+ a(X, n578) :- a(X, n577).
1770
+ a(X, i578) :- a(X, n577).
1771
+ a(X, j578) :- a(X, n577).
1772
+ a(X, n579) :- a(X, n578).
1773
+ a(X, i579) :- a(X, n578).
1774
+ a(X, j579) :- a(X, n578).
1775
+ a(X, n580) :- a(X, n579).
1776
+ a(X, i580) :- a(X, n579).
1777
+ a(X, j580) :- a(X, n579).
1778
+ a(X, n581) :- a(X, n580).
1779
+ a(X, i581) :- a(X, n580).
1780
+ a(X, j581) :- a(X, n580).
1781
+ a(X, n582) :- a(X, n581).
1782
+ a(X, i582) :- a(X, n581).
1783
+ a(X, j582) :- a(X, n581).
1784
+ a(X, n583) :- a(X, n582).
1785
+ a(X, i583) :- a(X, n582).
1786
+ a(X, j583) :- a(X, n582).
1787
+ a(X, n584) :- a(X, n583).
1788
+ a(X, i584) :- a(X, n583).
1789
+ a(X, j584) :- a(X, n583).
1790
+ a(X, n585) :- a(X, n584).
1791
+ a(X, i585) :- a(X, n584).
1792
+ a(X, j585) :- a(X, n584).
1793
+ a(X, n586) :- a(X, n585).
1794
+ a(X, i586) :- a(X, n585).
1795
+ a(X, j586) :- a(X, n585).
1796
+ a(X, n587) :- a(X, n586).
1797
+ a(X, i587) :- a(X, n586).
1798
+ a(X, j587) :- a(X, n586).
1799
+ a(X, n588) :- a(X, n587).
1800
+ a(X, i588) :- a(X, n587).
1801
+ a(X, j588) :- a(X, n587).
1802
+ a(X, n589) :- a(X, n588).
1803
+ a(X, i589) :- a(X, n588).
1804
+ a(X, j589) :- a(X, n588).
1805
+ a(X, n590) :- a(X, n589).
1806
+ a(X, i590) :- a(X, n589).
1807
+ a(X, j590) :- a(X, n589).
1808
+ a(X, n591) :- a(X, n590).
1809
+ a(X, i591) :- a(X, n590).
1810
+ a(X, j591) :- a(X, n590).
1811
+ a(X, n592) :- a(X, n591).
1812
+ a(X, i592) :- a(X, n591).
1813
+ a(X, j592) :- a(X, n591).
1814
+ a(X, n593) :- a(X, n592).
1815
+ a(X, i593) :- a(X, n592).
1816
+ a(X, j593) :- a(X, n592).
1817
+ a(X, n594) :- a(X, n593).
1818
+ a(X, i594) :- a(X, n593).
1819
+ a(X, j594) :- a(X, n593).
1820
+ a(X, n595) :- a(X, n594).
1821
+ a(X, i595) :- a(X, n594).
1822
+ a(X, j595) :- a(X, n594).
1823
+ a(X, n596) :- a(X, n595).
1824
+ a(X, i596) :- a(X, n595).
1825
+ a(X, j596) :- a(X, n595).
1826
+ a(X, n597) :- a(X, n596).
1827
+ a(X, i597) :- a(X, n596).
1828
+ a(X, j597) :- a(X, n596).
1829
+ a(X, n598) :- a(X, n597).
1830
+ a(X, i598) :- a(X, n597).
1831
+ a(X, j598) :- a(X, n597).
1832
+ a(X, n599) :- a(X, n598).
1833
+ a(X, i599) :- a(X, n598).
1834
+ a(X, j599) :- a(X, n598).
1835
+ a(X, n600) :- a(X, n599).
1836
+ a(X, i600) :- a(X, n599).
1837
+ a(X, j600) :- a(X, n599).
1838
+ a(X, n601) :- a(X, n600).
1839
+ a(X, i601) :- a(X, n600).
1840
+ a(X, j601) :- a(X, n600).
1841
+ a(X, n602) :- a(X, n601).
1842
+ a(X, i602) :- a(X, n601).
1843
+ a(X, j602) :- a(X, n601).
1844
+ a(X, n603) :- a(X, n602).
1845
+ a(X, i603) :- a(X, n602).
1846
+ a(X, j603) :- a(X, n602).
1847
+ a(X, n604) :- a(X, n603).
1848
+ a(X, i604) :- a(X, n603).
1849
+ a(X, j604) :- a(X, n603).
1850
+ a(X, n605) :- a(X, n604).
1851
+ a(X, i605) :- a(X, n604).
1852
+ a(X, j605) :- a(X, n604).
1853
+ a(X, n606) :- a(X, n605).
1854
+ a(X, i606) :- a(X, n605).
1855
+ a(X, j606) :- a(X, n605).
1856
+ a(X, n607) :- a(X, n606).
1857
+ a(X, i607) :- a(X, n606).
1858
+ a(X, j607) :- a(X, n606).
1859
+ a(X, n608) :- a(X, n607).
1860
+ a(X, i608) :- a(X, n607).
1861
+ a(X, j608) :- a(X, n607).
1862
+ a(X, n609) :- a(X, n608).
1863
+ a(X, i609) :- a(X, n608).
1864
+ a(X, j609) :- a(X, n608).
1865
+ a(X, n610) :- a(X, n609).
1866
+ a(X, i610) :- a(X, n609).
1867
+ a(X, j610) :- a(X, n609).
1868
+ a(X, n611) :- a(X, n610).
1869
+ a(X, i611) :- a(X, n610).
1870
+ a(X, j611) :- a(X, n610).
1871
+ a(X, n612) :- a(X, n611).
1872
+ a(X, i612) :- a(X, n611).
1873
+ a(X, j612) :- a(X, n611).
1874
+ a(X, n613) :- a(X, n612).
1875
+ a(X, i613) :- a(X, n612).
1876
+ a(X, j613) :- a(X, n612).
1877
+ a(X, n614) :- a(X, n613).
1878
+ a(X, i614) :- a(X, n613).
1879
+ a(X, j614) :- a(X, n613).
1880
+ a(X, n615) :- a(X, n614).
1881
+ a(X, i615) :- a(X, n614).
1882
+ a(X, j615) :- a(X, n614).
1883
+ a(X, n616) :- a(X, n615).
1884
+ a(X, i616) :- a(X, n615).
1885
+ a(X, j616) :- a(X, n615).
1886
+ a(X, n617) :- a(X, n616).
1887
+ a(X, i617) :- a(X, n616).
1888
+ a(X, j617) :- a(X, n616).
1889
+ a(X, n618) :- a(X, n617).
1890
+ a(X, i618) :- a(X, n617).
1891
+ a(X, j618) :- a(X, n617).
1892
+ a(X, n619) :- a(X, n618).
1893
+ a(X, i619) :- a(X, n618).
1894
+ a(X, j619) :- a(X, n618).
1895
+ a(X, n620) :- a(X, n619).
1896
+ a(X, i620) :- a(X, n619).
1897
+ a(X, j620) :- a(X, n619).
1898
+ a(X, n621) :- a(X, n620).
1899
+ a(X, i621) :- a(X, n620).
1900
+ a(X, j621) :- a(X, n620).
1901
+ a(X, n622) :- a(X, n621).
1902
+ a(X, i622) :- a(X, n621).
1903
+ a(X, j622) :- a(X, n621).
1904
+ a(X, n623) :- a(X, n622).
1905
+ a(X, i623) :- a(X, n622).
1906
+ a(X, j623) :- a(X, n622).
1907
+ a(X, n624) :- a(X, n623).
1908
+ a(X, i624) :- a(X, n623).
1909
+ a(X, j624) :- a(X, n623).
1910
+ a(X, n625) :- a(X, n624).
1911
+ a(X, i625) :- a(X, n624).
1912
+ a(X, j625) :- a(X, n624).
1913
+ a(X, n626) :- a(X, n625).
1914
+ a(X, i626) :- a(X, n625).
1915
+ a(X, j626) :- a(X, n625).
1916
+ a(X, n627) :- a(X, n626).
1917
+ a(X, i627) :- a(X, n626).
1918
+ a(X, j627) :- a(X, n626).
1919
+ a(X, n628) :- a(X, n627).
1920
+ a(X, i628) :- a(X, n627).
1921
+ a(X, j628) :- a(X, n627).
1922
+ a(X, n629) :- a(X, n628).
1923
+ a(X, i629) :- a(X, n628).
1924
+ a(X, j629) :- a(X, n628).
1925
+ a(X, n630) :- a(X, n629).
1926
+ a(X, i630) :- a(X, n629).
1927
+ a(X, j630) :- a(X, n629).
1928
+ a(X, n631) :- a(X, n630).
1929
+ a(X, i631) :- a(X, n630).
1930
+ a(X, j631) :- a(X, n630).
1931
+ a(X, n632) :- a(X, n631).
1932
+ a(X, i632) :- a(X, n631).
1933
+ a(X, j632) :- a(X, n631).
1934
+ a(X, n633) :- a(X, n632).
1935
+ a(X, i633) :- a(X, n632).
1936
+ a(X, j633) :- a(X, n632).
1937
+ a(X, n634) :- a(X, n633).
1938
+ a(X, i634) :- a(X, n633).
1939
+ a(X, j634) :- a(X, n633).
1940
+ a(X, n635) :- a(X, n634).
1941
+ a(X, i635) :- a(X, n634).
1942
+ a(X, j635) :- a(X, n634).
1943
+ a(X, n636) :- a(X, n635).
1944
+ a(X, i636) :- a(X, n635).
1945
+ a(X, j636) :- a(X, n635).
1946
+ a(X, n637) :- a(X, n636).
1947
+ a(X, i637) :- a(X, n636).
1948
+ a(X, j637) :- a(X, n636).
1949
+ a(X, n638) :- a(X, n637).
1950
+ a(X, i638) :- a(X, n637).
1951
+ a(X, j638) :- a(X, n637).
1952
+ a(X, n639) :- a(X, n638).
1953
+ a(X, i639) :- a(X, n638).
1954
+ a(X, j639) :- a(X, n638).
1955
+ a(X, n640) :- a(X, n639).
1956
+ a(X, i640) :- a(X, n639).
1957
+ a(X, j640) :- a(X, n639).
1958
+ a(X, n641) :- a(X, n640).
1959
+ a(X, i641) :- a(X, n640).
1960
+ a(X, j641) :- a(X, n640).
1961
+ a(X, n642) :- a(X, n641).
1962
+ a(X, i642) :- a(X, n641).
1963
+ a(X, j642) :- a(X, n641).
1964
+ a(X, n643) :- a(X, n642).
1965
+ a(X, i643) :- a(X, n642).
1966
+ a(X, j643) :- a(X, n642).
1967
+ a(X, n644) :- a(X, n643).
1968
+ a(X, i644) :- a(X, n643).
1969
+ a(X, j644) :- a(X, n643).
1970
+ a(X, n645) :- a(X, n644).
1971
+ a(X, i645) :- a(X, n644).
1972
+ a(X, j645) :- a(X, n644).
1973
+ a(X, n646) :- a(X, n645).
1974
+ a(X, i646) :- a(X, n645).
1975
+ a(X, j646) :- a(X, n645).
1976
+ a(X, n647) :- a(X, n646).
1977
+ a(X, i647) :- a(X, n646).
1978
+ a(X, j647) :- a(X, n646).
1979
+ a(X, n648) :- a(X, n647).
1980
+ a(X, i648) :- a(X, n647).
1981
+ a(X, j648) :- a(X, n647).
1982
+ a(X, n649) :- a(X, n648).
1983
+ a(X, i649) :- a(X, n648).
1984
+ a(X, j649) :- a(X, n648).
1985
+ a(X, n650) :- a(X, n649).
1986
+ a(X, i650) :- a(X, n649).
1987
+ a(X, j650) :- a(X, n649).
1988
+ a(X, n651) :- a(X, n650).
1989
+ a(X, i651) :- a(X, n650).
1990
+ a(X, j651) :- a(X, n650).
1991
+ a(X, n652) :- a(X, n651).
1992
+ a(X, i652) :- a(X, n651).
1993
+ a(X, j652) :- a(X, n651).
1994
+ a(X, n653) :- a(X, n652).
1995
+ a(X, i653) :- a(X, n652).
1996
+ a(X, j653) :- a(X, n652).
1997
+ a(X, n654) :- a(X, n653).
1998
+ a(X, i654) :- a(X, n653).
1999
+ a(X, j654) :- a(X, n653).
2000
+ a(X, n655) :- a(X, n654).
2001
+ a(X, i655) :- a(X, n654).
2002
+ a(X, j655) :- a(X, n654).
2003
+ a(X, n656) :- a(X, n655).
2004
+ a(X, i656) :- a(X, n655).
2005
+ a(X, j656) :- a(X, n655).
2006
+ a(X, n657) :- a(X, n656).
2007
+ a(X, i657) :- a(X, n656).
2008
+ a(X, j657) :- a(X, n656).
2009
+ a(X, n658) :- a(X, n657).
2010
+ a(X, i658) :- a(X, n657).
2011
+ a(X, j658) :- a(X, n657).
2012
+ a(X, n659) :- a(X, n658).
2013
+ a(X, i659) :- a(X, n658).
2014
+ a(X, j659) :- a(X, n658).
2015
+ a(X, n660) :- a(X, n659).
2016
+ a(X, i660) :- a(X, n659).
2017
+ a(X, j660) :- a(X, n659).
2018
+ a(X, n661) :- a(X, n660).
2019
+ a(X, i661) :- a(X, n660).
2020
+ a(X, j661) :- a(X, n660).
2021
+ a(X, n662) :- a(X, n661).
2022
+ a(X, i662) :- a(X, n661).
2023
+ a(X, j662) :- a(X, n661).
2024
+ a(X, n663) :- a(X, n662).
2025
+ a(X, i663) :- a(X, n662).
2026
+ a(X, j663) :- a(X, n662).
2027
+ a(X, n664) :- a(X, n663).
2028
+ a(X, i664) :- a(X, n663).
2029
+ a(X, j664) :- a(X, n663).
2030
+ a(X, n665) :- a(X, n664).
2031
+ a(X, i665) :- a(X, n664).
2032
+ a(X, j665) :- a(X, n664).
2033
+ a(X, n666) :- a(X, n665).
2034
+ a(X, i666) :- a(X, n665).
2035
+ a(X, j666) :- a(X, n665).
2036
+ a(X, n667) :- a(X, n666).
2037
+ a(X, i667) :- a(X, n666).
2038
+ a(X, j667) :- a(X, n666).
2039
+ a(X, n668) :- a(X, n667).
2040
+ a(X, i668) :- a(X, n667).
2041
+ a(X, j668) :- a(X, n667).
2042
+ a(X, n669) :- a(X, n668).
2043
+ a(X, i669) :- a(X, n668).
2044
+ a(X, j669) :- a(X, n668).
2045
+ a(X, n670) :- a(X, n669).
2046
+ a(X, i670) :- a(X, n669).
2047
+ a(X, j670) :- a(X, n669).
2048
+ a(X, n671) :- a(X, n670).
2049
+ a(X, i671) :- a(X, n670).
2050
+ a(X, j671) :- a(X, n670).
2051
+ a(X, n672) :- a(X, n671).
2052
+ a(X, i672) :- a(X, n671).
2053
+ a(X, j672) :- a(X, n671).
2054
+ a(X, n673) :- a(X, n672).
2055
+ a(X, i673) :- a(X, n672).
2056
+ a(X, j673) :- a(X, n672).
2057
+ a(X, n674) :- a(X, n673).
2058
+ a(X, i674) :- a(X, n673).
2059
+ a(X, j674) :- a(X, n673).
2060
+ a(X, n675) :- a(X, n674).
2061
+ a(X, i675) :- a(X, n674).
2062
+ a(X, j675) :- a(X, n674).
2063
+ a(X, n676) :- a(X, n675).
2064
+ a(X, i676) :- a(X, n675).
2065
+ a(X, j676) :- a(X, n675).
2066
+ a(X, n677) :- a(X, n676).
2067
+ a(X, i677) :- a(X, n676).
2068
+ a(X, j677) :- a(X, n676).
2069
+ a(X, n678) :- a(X, n677).
2070
+ a(X, i678) :- a(X, n677).
2071
+ a(X, j678) :- a(X, n677).
2072
+ a(X, n679) :- a(X, n678).
2073
+ a(X, i679) :- a(X, n678).
2074
+ a(X, j679) :- a(X, n678).
2075
+ a(X, n680) :- a(X, n679).
2076
+ a(X, i680) :- a(X, n679).
2077
+ a(X, j680) :- a(X, n679).
2078
+ a(X, n681) :- a(X, n680).
2079
+ a(X, i681) :- a(X, n680).
2080
+ a(X, j681) :- a(X, n680).
2081
+ a(X, n682) :- a(X, n681).
2082
+ a(X, i682) :- a(X, n681).
2083
+ a(X, j682) :- a(X, n681).
2084
+ a(X, n683) :- a(X, n682).
2085
+ a(X, i683) :- a(X, n682).
2086
+ a(X, j683) :- a(X, n682).
2087
+ a(X, n684) :- a(X, n683).
2088
+ a(X, i684) :- a(X, n683).
2089
+ a(X, j684) :- a(X, n683).
2090
+ a(X, n685) :- a(X, n684).
2091
+ a(X, i685) :- a(X, n684).
2092
+ a(X, j685) :- a(X, n684).
2093
+ a(X, n686) :- a(X, n685).
2094
+ a(X, i686) :- a(X, n685).
2095
+ a(X, j686) :- a(X, n685).
2096
+ a(X, n687) :- a(X, n686).
2097
+ a(X, i687) :- a(X, n686).
2098
+ a(X, j687) :- a(X, n686).
2099
+ a(X, n688) :- a(X, n687).
2100
+ a(X, i688) :- a(X, n687).
2101
+ a(X, j688) :- a(X, n687).
2102
+ a(X, n689) :- a(X, n688).
2103
+ a(X, i689) :- a(X, n688).
2104
+ a(X, j689) :- a(X, n688).
2105
+ a(X, n690) :- a(X, n689).
2106
+ a(X, i690) :- a(X, n689).
2107
+ a(X, j690) :- a(X, n689).
2108
+ a(X, n691) :- a(X, n690).
2109
+ a(X, i691) :- a(X, n690).
2110
+ a(X, j691) :- a(X, n690).
2111
+ a(X, n692) :- a(X, n691).
2112
+ a(X, i692) :- a(X, n691).
2113
+ a(X, j692) :- a(X, n691).
2114
+ a(X, n693) :- a(X, n692).
2115
+ a(X, i693) :- a(X, n692).
2116
+ a(X, j693) :- a(X, n692).
2117
+ a(X, n694) :- a(X, n693).
2118
+ a(X, i694) :- a(X, n693).
2119
+ a(X, j694) :- a(X, n693).
2120
+ a(X, n695) :- a(X, n694).
2121
+ a(X, i695) :- a(X, n694).
2122
+ a(X, j695) :- a(X, n694).
2123
+ a(X, n696) :- a(X, n695).
2124
+ a(X, i696) :- a(X, n695).
2125
+ a(X, j696) :- a(X, n695).
2126
+ a(X, n697) :- a(X, n696).
2127
+ a(X, i697) :- a(X, n696).
2128
+ a(X, j697) :- a(X, n696).
2129
+ a(X, n698) :- a(X, n697).
2130
+ a(X, i698) :- a(X, n697).
2131
+ a(X, j698) :- a(X, n697).
2132
+ a(X, n699) :- a(X, n698).
2133
+ a(X, i699) :- a(X, n698).
2134
+ a(X, j699) :- a(X, n698).
2135
+ a(X, n700) :- a(X, n699).
2136
+ a(X, i700) :- a(X, n699).
2137
+ a(X, j700) :- a(X, n699).
2138
+ a(X, n701) :- a(X, n700).
2139
+ a(X, i701) :- a(X, n700).
2140
+ a(X, j701) :- a(X, n700).
2141
+ a(X, n702) :- a(X, n701).
2142
+ a(X, i702) :- a(X, n701).
2143
+ a(X, j702) :- a(X, n701).
2144
+ a(X, n703) :- a(X, n702).
2145
+ a(X, i703) :- a(X, n702).
2146
+ a(X, j703) :- a(X, n702).
2147
+ a(X, n704) :- a(X, n703).
2148
+ a(X, i704) :- a(X, n703).
2149
+ a(X, j704) :- a(X, n703).
2150
+ a(X, n705) :- a(X, n704).
2151
+ a(X, i705) :- a(X, n704).
2152
+ a(X, j705) :- a(X, n704).
2153
+ a(X, n706) :- a(X, n705).
2154
+ a(X, i706) :- a(X, n705).
2155
+ a(X, j706) :- a(X, n705).
2156
+ a(X, n707) :- a(X, n706).
2157
+ a(X, i707) :- a(X, n706).
2158
+ a(X, j707) :- a(X, n706).
2159
+ a(X, n708) :- a(X, n707).
2160
+ a(X, i708) :- a(X, n707).
2161
+ a(X, j708) :- a(X, n707).
2162
+ a(X, n709) :- a(X, n708).
2163
+ a(X, i709) :- a(X, n708).
2164
+ a(X, j709) :- a(X, n708).
2165
+ a(X, n710) :- a(X, n709).
2166
+ a(X, i710) :- a(X, n709).
2167
+ a(X, j710) :- a(X, n709).
2168
+ a(X, n711) :- a(X, n710).
2169
+ a(X, i711) :- a(X, n710).
2170
+ a(X, j711) :- a(X, n710).
2171
+ a(X, n712) :- a(X, n711).
2172
+ a(X, i712) :- a(X, n711).
2173
+ a(X, j712) :- a(X, n711).
2174
+ a(X, n713) :- a(X, n712).
2175
+ a(X, i713) :- a(X, n712).
2176
+ a(X, j713) :- a(X, n712).
2177
+ a(X, n714) :- a(X, n713).
2178
+ a(X, i714) :- a(X, n713).
2179
+ a(X, j714) :- a(X, n713).
2180
+ a(X, n715) :- a(X, n714).
2181
+ a(X, i715) :- a(X, n714).
2182
+ a(X, j715) :- a(X, n714).
2183
+ a(X, n716) :- a(X, n715).
2184
+ a(X, i716) :- a(X, n715).
2185
+ a(X, j716) :- a(X, n715).
2186
+ a(X, n717) :- a(X, n716).
2187
+ a(X, i717) :- a(X, n716).
2188
+ a(X, j717) :- a(X, n716).
2189
+ a(X, n718) :- a(X, n717).
2190
+ a(X, i718) :- a(X, n717).
2191
+ a(X, j718) :- a(X, n717).
2192
+ a(X, n719) :- a(X, n718).
2193
+ a(X, i719) :- a(X, n718).
2194
+ a(X, j719) :- a(X, n718).
2195
+ a(X, n720) :- a(X, n719).
2196
+ a(X, i720) :- a(X, n719).
2197
+ a(X, j720) :- a(X, n719).
2198
+ a(X, n721) :- a(X, n720).
2199
+ a(X, i721) :- a(X, n720).
2200
+ a(X, j721) :- a(X, n720).
2201
+ a(X, n722) :- a(X, n721).
2202
+ a(X, i722) :- a(X, n721).
2203
+ a(X, j722) :- a(X, n721).
2204
+ a(X, n723) :- a(X, n722).
2205
+ a(X, i723) :- a(X, n722).
2206
+ a(X, j723) :- a(X, n722).
2207
+ a(X, n724) :- a(X, n723).
2208
+ a(X, i724) :- a(X, n723).
2209
+ a(X, j724) :- a(X, n723).
2210
+ a(X, n725) :- a(X, n724).
2211
+ a(X, i725) :- a(X, n724).
2212
+ a(X, j725) :- a(X, n724).
2213
+ a(X, n726) :- a(X, n725).
2214
+ a(X, i726) :- a(X, n725).
2215
+ a(X, j726) :- a(X, n725).
2216
+ a(X, n727) :- a(X, n726).
2217
+ a(X, i727) :- a(X, n726).
2218
+ a(X, j727) :- a(X, n726).
2219
+ a(X, n728) :- a(X, n727).
2220
+ a(X, i728) :- a(X, n727).
2221
+ a(X, j728) :- a(X, n727).
2222
+ a(X, n729) :- a(X, n728).
2223
+ a(X, i729) :- a(X, n728).
2224
+ a(X, j729) :- a(X, n728).
2225
+ a(X, n730) :- a(X, n729).
2226
+ a(X, i730) :- a(X, n729).
2227
+ a(X, j730) :- a(X, n729).
2228
+ a(X, n731) :- a(X, n730).
2229
+ a(X, i731) :- a(X, n730).
2230
+ a(X, j731) :- a(X, n730).
2231
+ a(X, n732) :- a(X, n731).
2232
+ a(X, i732) :- a(X, n731).
2233
+ a(X, j732) :- a(X, n731).
2234
+ a(X, n733) :- a(X, n732).
2235
+ a(X, i733) :- a(X, n732).
2236
+ a(X, j733) :- a(X, n732).
2237
+ a(X, n734) :- a(X, n733).
2238
+ a(X, i734) :- a(X, n733).
2239
+ a(X, j734) :- a(X, n733).
2240
+ a(X, n735) :- a(X, n734).
2241
+ a(X, i735) :- a(X, n734).
2242
+ a(X, j735) :- a(X, n734).
2243
+ a(X, n736) :- a(X, n735).
2244
+ a(X, i736) :- a(X, n735).
2245
+ a(X, j736) :- a(X, n735).
2246
+ a(X, n737) :- a(X, n736).
2247
+ a(X, i737) :- a(X, n736).
2248
+ a(X, j737) :- a(X, n736).
2249
+ a(X, n738) :- a(X, n737).
2250
+ a(X, i738) :- a(X, n737).
2251
+ a(X, j738) :- a(X, n737).
2252
+ a(X, n739) :- a(X, n738).
2253
+ a(X, i739) :- a(X, n738).
2254
+ a(X, j739) :- a(X, n738).
2255
+ a(X, n740) :- a(X, n739).
2256
+ a(X, i740) :- a(X, n739).
2257
+ a(X, j740) :- a(X, n739).
2258
+ a(X, n741) :- a(X, n740).
2259
+ a(X, i741) :- a(X, n740).
2260
+ a(X, j741) :- a(X, n740).
2261
+ a(X, n742) :- a(X, n741).
2262
+ a(X, i742) :- a(X, n741).
2263
+ a(X, j742) :- a(X, n741).
2264
+ a(X, n743) :- a(X, n742).
2265
+ a(X, i743) :- a(X, n742).
2266
+ a(X, j743) :- a(X, n742).
2267
+ a(X, n744) :- a(X, n743).
2268
+ a(X, i744) :- a(X, n743).
2269
+ a(X, j744) :- a(X, n743).
2270
+ a(X, n745) :- a(X, n744).
2271
+ a(X, i745) :- a(X, n744).
2272
+ a(X, j745) :- a(X, n744).
2273
+ a(X, n746) :- a(X, n745).
2274
+ a(X, i746) :- a(X, n745).
2275
+ a(X, j746) :- a(X, n745).
2276
+ a(X, n747) :- a(X, n746).
2277
+ a(X, i747) :- a(X, n746).
2278
+ a(X, j747) :- a(X, n746).
2279
+ a(X, n748) :- a(X, n747).
2280
+ a(X, i748) :- a(X, n747).
2281
+ a(X, j748) :- a(X, n747).
2282
+ a(X, n749) :- a(X, n748).
2283
+ a(X, i749) :- a(X, n748).
2284
+ a(X, j749) :- a(X, n748).
2285
+ a(X, n750) :- a(X, n749).
2286
+ a(X, i750) :- a(X, n749).
2287
+ a(X, j750) :- a(X, n749).
2288
+ a(X, n751) :- a(X, n750).
2289
+ a(X, i751) :- a(X, n750).
2290
+ a(X, j751) :- a(X, n750).
2291
+ a(X, n752) :- a(X, n751).
2292
+ a(X, i752) :- a(X, n751).
2293
+ a(X, j752) :- a(X, n751).
2294
+ a(X, n753) :- a(X, n752).
2295
+ a(X, i753) :- a(X, n752).
2296
+ a(X, j753) :- a(X, n752).
2297
+ a(X, n754) :- a(X, n753).
2298
+ a(X, i754) :- a(X, n753).
2299
+ a(X, j754) :- a(X, n753).
2300
+ a(X, n755) :- a(X, n754).
2301
+ a(X, i755) :- a(X, n754).
2302
+ a(X, j755) :- a(X, n754).
2303
+ a(X, n756) :- a(X, n755).
2304
+ a(X, i756) :- a(X, n755).
2305
+ a(X, j756) :- a(X, n755).
2306
+ a(X, n757) :- a(X, n756).
2307
+ a(X, i757) :- a(X, n756).
2308
+ a(X, j757) :- a(X, n756).
2309
+ a(X, n758) :- a(X, n757).
2310
+ a(X, i758) :- a(X, n757).
2311
+ a(X, j758) :- a(X, n757).
2312
+ a(X, n759) :- a(X, n758).
2313
+ a(X, i759) :- a(X, n758).
2314
+ a(X, j759) :- a(X, n758).
2315
+ a(X, n760) :- a(X, n759).
2316
+ a(X, i760) :- a(X, n759).
2317
+ a(X, j760) :- a(X, n759).
2318
+ a(X, n761) :- a(X, n760).
2319
+ a(X, i761) :- a(X, n760).
2320
+ a(X, j761) :- a(X, n760).
2321
+ a(X, n762) :- a(X, n761).
2322
+ a(X, i762) :- a(X, n761).
2323
+ a(X, j762) :- a(X, n761).
2324
+ a(X, n763) :- a(X, n762).
2325
+ a(X, i763) :- a(X, n762).
2326
+ a(X, j763) :- a(X, n762).
2327
+ a(X, n764) :- a(X, n763).
2328
+ a(X, i764) :- a(X, n763).
2329
+ a(X, j764) :- a(X, n763).
2330
+ a(X, n765) :- a(X, n764).
2331
+ a(X, i765) :- a(X, n764).
2332
+ a(X, j765) :- a(X, n764).
2333
+ a(X, n766) :- a(X, n765).
2334
+ a(X, i766) :- a(X, n765).
2335
+ a(X, j766) :- a(X, n765).
2336
+ a(X, n767) :- a(X, n766).
2337
+ a(X, i767) :- a(X, n766).
2338
+ a(X, j767) :- a(X, n766).
2339
+ a(X, n768) :- a(X, n767).
2340
+ a(X, i768) :- a(X, n767).
2341
+ a(X, j768) :- a(X, n767).
2342
+ a(X, n769) :- a(X, n768).
2343
+ a(X, i769) :- a(X, n768).
2344
+ a(X, j769) :- a(X, n768).
2345
+ a(X, n770) :- a(X, n769).
2346
+ a(X, i770) :- a(X, n769).
2347
+ a(X, j770) :- a(X, n769).
2348
+ a(X, n771) :- a(X, n770).
2349
+ a(X, i771) :- a(X, n770).
2350
+ a(X, j771) :- a(X, n770).
2351
+ a(X, n772) :- a(X, n771).
2352
+ a(X, i772) :- a(X, n771).
2353
+ a(X, j772) :- a(X, n771).
2354
+ a(X, n773) :- a(X, n772).
2355
+ a(X, i773) :- a(X, n772).
2356
+ a(X, j773) :- a(X, n772).
2357
+ a(X, n774) :- a(X, n773).
2358
+ a(X, i774) :- a(X, n773).
2359
+ a(X, j774) :- a(X, n773).
2360
+ a(X, n775) :- a(X, n774).
2361
+ a(X, i775) :- a(X, n774).
2362
+ a(X, j775) :- a(X, n774).
2363
+ a(X, n776) :- a(X, n775).
2364
+ a(X, i776) :- a(X, n775).
2365
+ a(X, j776) :- a(X, n775).
2366
+ a(X, n777) :- a(X, n776).
2367
+ a(X, i777) :- a(X, n776).
2368
+ a(X, j777) :- a(X, n776).
2369
+ a(X, n778) :- a(X, n777).
2370
+ a(X, i778) :- a(X, n777).
2371
+ a(X, j778) :- a(X, n777).
2372
+ a(X, n779) :- a(X, n778).
2373
+ a(X, i779) :- a(X, n778).
2374
+ a(X, j779) :- a(X, n778).
2375
+ a(X, n780) :- a(X, n779).
2376
+ a(X, i780) :- a(X, n779).
2377
+ a(X, j780) :- a(X, n779).
2378
+ a(X, n781) :- a(X, n780).
2379
+ a(X, i781) :- a(X, n780).
2380
+ a(X, j781) :- a(X, n780).
2381
+ a(X, n782) :- a(X, n781).
2382
+ a(X, i782) :- a(X, n781).
2383
+ a(X, j782) :- a(X, n781).
2384
+ a(X, n783) :- a(X, n782).
2385
+ a(X, i783) :- a(X, n782).
2386
+ a(X, j783) :- a(X, n782).
2387
+ a(X, n784) :- a(X, n783).
2388
+ a(X, i784) :- a(X, n783).
2389
+ a(X, j784) :- a(X, n783).
2390
+ a(X, n785) :- a(X, n784).
2391
+ a(X, i785) :- a(X, n784).
2392
+ a(X, j785) :- a(X, n784).
2393
+ a(X, n786) :- a(X, n785).
2394
+ a(X, i786) :- a(X, n785).
2395
+ a(X, j786) :- a(X, n785).
2396
+ a(X, n787) :- a(X, n786).
2397
+ a(X, i787) :- a(X, n786).
2398
+ a(X, j787) :- a(X, n786).
2399
+ a(X, n788) :- a(X, n787).
2400
+ a(X, i788) :- a(X, n787).
2401
+ a(X, j788) :- a(X, n787).
2402
+ a(X, n789) :- a(X, n788).
2403
+ a(X, i789) :- a(X, n788).
2404
+ a(X, j789) :- a(X, n788).
2405
+ a(X, n790) :- a(X, n789).
2406
+ a(X, i790) :- a(X, n789).
2407
+ a(X, j790) :- a(X, n789).
2408
+ a(X, n791) :- a(X, n790).
2409
+ a(X, i791) :- a(X, n790).
2410
+ a(X, j791) :- a(X, n790).
2411
+ a(X, n792) :- a(X, n791).
2412
+ a(X, i792) :- a(X, n791).
2413
+ a(X, j792) :- a(X, n791).
2414
+ a(X, n793) :- a(X, n792).
2415
+ a(X, i793) :- a(X, n792).
2416
+ a(X, j793) :- a(X, n792).
2417
+ a(X, n794) :- a(X, n793).
2418
+ a(X, i794) :- a(X, n793).
2419
+ a(X, j794) :- a(X, n793).
2420
+ a(X, n795) :- a(X, n794).
2421
+ a(X, i795) :- a(X, n794).
2422
+ a(X, j795) :- a(X, n794).
2423
+ a(X, n796) :- a(X, n795).
2424
+ a(X, i796) :- a(X, n795).
2425
+ a(X, j796) :- a(X, n795).
2426
+ a(X, n797) :- a(X, n796).
2427
+ a(X, i797) :- a(X, n796).
2428
+ a(X, j797) :- a(X, n796).
2429
+ a(X, n798) :- a(X, n797).
2430
+ a(X, i798) :- a(X, n797).
2431
+ a(X, j798) :- a(X, n797).
2432
+ a(X, n799) :- a(X, n798).
2433
+ a(X, i799) :- a(X, n798).
2434
+ a(X, j799) :- a(X, n798).
2435
+ a(X, n800) :- a(X, n799).
2436
+ a(X, i800) :- a(X, n799).
2437
+ a(X, j800) :- a(X, n799).
2438
+ a(X, n801) :- a(X, n800).
2439
+ a(X, i801) :- a(X, n800).
2440
+ a(X, j801) :- a(X, n800).
2441
+ a(X, n802) :- a(X, n801).
2442
+ a(X, i802) :- a(X, n801).
2443
+ a(X, j802) :- a(X, n801).
2444
+ a(X, n803) :- a(X, n802).
2445
+ a(X, i803) :- a(X, n802).
2446
+ a(X, j803) :- a(X, n802).
2447
+ a(X, n804) :- a(X, n803).
2448
+ a(X, i804) :- a(X, n803).
2449
+ a(X, j804) :- a(X, n803).
2450
+ a(X, n805) :- a(X, n804).
2451
+ a(X, i805) :- a(X, n804).
2452
+ a(X, j805) :- a(X, n804).
2453
+ a(X, n806) :- a(X, n805).
2454
+ a(X, i806) :- a(X, n805).
2455
+ a(X, j806) :- a(X, n805).
2456
+ a(X, n807) :- a(X, n806).
2457
+ a(X, i807) :- a(X, n806).
2458
+ a(X, j807) :- a(X, n806).
2459
+ a(X, n808) :- a(X, n807).
2460
+ a(X, i808) :- a(X, n807).
2461
+ a(X, j808) :- a(X, n807).
2462
+ a(X, n809) :- a(X, n808).
2463
+ a(X, i809) :- a(X, n808).
2464
+ a(X, j809) :- a(X, n808).
2465
+ a(X, n810) :- a(X, n809).
2466
+ a(X, i810) :- a(X, n809).
2467
+ a(X, j810) :- a(X, n809).
2468
+ a(X, n811) :- a(X, n810).
2469
+ a(X, i811) :- a(X, n810).
2470
+ a(X, j811) :- a(X, n810).
2471
+ a(X, n812) :- a(X, n811).
2472
+ a(X, i812) :- a(X, n811).
2473
+ a(X, j812) :- a(X, n811).
2474
+ a(X, n813) :- a(X, n812).
2475
+ a(X, i813) :- a(X, n812).
2476
+ a(X, j813) :- a(X, n812).
2477
+ a(X, n814) :- a(X, n813).
2478
+ a(X, i814) :- a(X, n813).
2479
+ a(X, j814) :- a(X, n813).
2480
+ a(X, n815) :- a(X, n814).
2481
+ a(X, i815) :- a(X, n814).
2482
+ a(X, j815) :- a(X, n814).
2483
+ a(X, n816) :- a(X, n815).
2484
+ a(X, i816) :- a(X, n815).
2485
+ a(X, j816) :- a(X, n815).
2486
+ a(X, n817) :- a(X, n816).
2487
+ a(X, i817) :- a(X, n816).
2488
+ a(X, j817) :- a(X, n816).
2489
+ a(X, n818) :- a(X, n817).
2490
+ a(X, i818) :- a(X, n817).
2491
+ a(X, j818) :- a(X, n817).
2492
+ a(X, n819) :- a(X, n818).
2493
+ a(X, i819) :- a(X, n818).
2494
+ a(X, j819) :- a(X, n818).
2495
+ a(X, n820) :- a(X, n819).
2496
+ a(X, i820) :- a(X, n819).
2497
+ a(X, j820) :- a(X, n819).
2498
+ a(X, n821) :- a(X, n820).
2499
+ a(X, i821) :- a(X, n820).
2500
+ a(X, j821) :- a(X, n820).
2501
+ a(X, n822) :- a(X, n821).
2502
+ a(X, i822) :- a(X, n821).
2503
+ a(X, j822) :- a(X, n821).
2504
+ a(X, n823) :- a(X, n822).
2505
+ a(X, i823) :- a(X, n822).
2506
+ a(X, j823) :- a(X, n822).
2507
+ a(X, n824) :- a(X, n823).
2508
+ a(X, i824) :- a(X, n823).
2509
+ a(X, j824) :- a(X, n823).
2510
+ a(X, n825) :- a(X, n824).
2511
+ a(X, i825) :- a(X, n824).
2512
+ a(X, j825) :- a(X, n824).
2513
+ a(X, n826) :- a(X, n825).
2514
+ a(X, i826) :- a(X, n825).
2515
+ a(X, j826) :- a(X, n825).
2516
+ a(X, n827) :- a(X, n826).
2517
+ a(X, i827) :- a(X, n826).
2518
+ a(X, j827) :- a(X, n826).
2519
+ a(X, n828) :- a(X, n827).
2520
+ a(X, i828) :- a(X, n827).
2521
+ a(X, j828) :- a(X, n827).
2522
+ a(X, n829) :- a(X, n828).
2523
+ a(X, i829) :- a(X, n828).
2524
+ a(X, j829) :- a(X, n828).
2525
+ a(X, n830) :- a(X, n829).
2526
+ a(X, i830) :- a(X, n829).
2527
+ a(X, j830) :- a(X, n829).
2528
+ a(X, n831) :- a(X, n830).
2529
+ a(X, i831) :- a(X, n830).
2530
+ a(X, j831) :- a(X, n830).
2531
+ a(X, n832) :- a(X, n831).
2532
+ a(X, i832) :- a(X, n831).
2533
+ a(X, j832) :- a(X, n831).
2534
+ a(X, n833) :- a(X, n832).
2535
+ a(X, i833) :- a(X, n832).
2536
+ a(X, j833) :- a(X, n832).
2537
+ a(X, n834) :- a(X, n833).
2538
+ a(X, i834) :- a(X, n833).
2539
+ a(X, j834) :- a(X, n833).
2540
+ a(X, n835) :- a(X, n834).
2541
+ a(X, i835) :- a(X, n834).
2542
+ a(X, j835) :- a(X, n834).
2543
+ a(X, n836) :- a(X, n835).
2544
+ a(X, i836) :- a(X, n835).
2545
+ a(X, j836) :- a(X, n835).
2546
+ a(X, n837) :- a(X, n836).
2547
+ a(X, i837) :- a(X, n836).
2548
+ a(X, j837) :- a(X, n836).
2549
+ a(X, n838) :- a(X, n837).
2550
+ a(X, i838) :- a(X, n837).
2551
+ a(X, j838) :- a(X, n837).
2552
+ a(X, n839) :- a(X, n838).
2553
+ a(X, i839) :- a(X, n838).
2554
+ a(X, j839) :- a(X, n838).
2555
+ a(X, n840) :- a(X, n839).
2556
+ a(X, i840) :- a(X, n839).
2557
+ a(X, j840) :- a(X, n839).
2558
+ a(X, n841) :- a(X, n840).
2559
+ a(X, i841) :- a(X, n840).
2560
+ a(X, j841) :- a(X, n840).
2561
+ a(X, n842) :- a(X, n841).
2562
+ a(X, i842) :- a(X, n841).
2563
+ a(X, j842) :- a(X, n841).
2564
+ a(X, n843) :- a(X, n842).
2565
+ a(X, i843) :- a(X, n842).
2566
+ a(X, j843) :- a(X, n842).
2567
+ a(X, n844) :- a(X, n843).
2568
+ a(X, i844) :- a(X, n843).
2569
+ a(X, j844) :- a(X, n843).
2570
+ a(X, n845) :- a(X, n844).
2571
+ a(X, i845) :- a(X, n844).
2572
+ a(X, j845) :- a(X, n844).
2573
+ a(X, n846) :- a(X, n845).
2574
+ a(X, i846) :- a(X, n845).
2575
+ a(X, j846) :- a(X, n845).
2576
+ a(X, n847) :- a(X, n846).
2577
+ a(X, i847) :- a(X, n846).
2578
+ a(X, j847) :- a(X, n846).
2579
+ a(X, n848) :- a(X, n847).
2580
+ a(X, i848) :- a(X, n847).
2581
+ a(X, j848) :- a(X, n847).
2582
+ a(X, n849) :- a(X, n848).
2583
+ a(X, i849) :- a(X, n848).
2584
+ a(X, j849) :- a(X, n848).
2585
+ a(X, n850) :- a(X, n849).
2586
+ a(X, i850) :- a(X, n849).
2587
+ a(X, j850) :- a(X, n849).
2588
+ a(X, n851) :- a(X, n850).
2589
+ a(X, i851) :- a(X, n850).
2590
+ a(X, j851) :- a(X, n850).
2591
+ a(X, n852) :- a(X, n851).
2592
+ a(X, i852) :- a(X, n851).
2593
+ a(X, j852) :- a(X, n851).
2594
+ a(X, n853) :- a(X, n852).
2595
+ a(X, i853) :- a(X, n852).
2596
+ a(X, j853) :- a(X, n852).
2597
+ a(X, n854) :- a(X, n853).
2598
+ a(X, i854) :- a(X, n853).
2599
+ a(X, j854) :- a(X, n853).
2600
+ a(X, n855) :- a(X, n854).
2601
+ a(X, i855) :- a(X, n854).
2602
+ a(X, j855) :- a(X, n854).
2603
+ a(X, n856) :- a(X, n855).
2604
+ a(X, i856) :- a(X, n855).
2605
+ a(X, j856) :- a(X, n855).
2606
+ a(X, n857) :- a(X, n856).
2607
+ a(X, i857) :- a(X, n856).
2608
+ a(X, j857) :- a(X, n856).
2609
+ a(X, n858) :- a(X, n857).
2610
+ a(X, i858) :- a(X, n857).
2611
+ a(X, j858) :- a(X, n857).
2612
+ a(X, n859) :- a(X, n858).
2613
+ a(X, i859) :- a(X, n858).
2614
+ a(X, j859) :- a(X, n858).
2615
+ a(X, n860) :- a(X, n859).
2616
+ a(X, i860) :- a(X, n859).
2617
+ a(X, j860) :- a(X, n859).
2618
+ a(X, n861) :- a(X, n860).
2619
+ a(X, i861) :- a(X, n860).
2620
+ a(X, j861) :- a(X, n860).
2621
+ a(X, n862) :- a(X, n861).
2622
+ a(X, i862) :- a(X, n861).
2623
+ a(X, j862) :- a(X, n861).
2624
+ a(X, n863) :- a(X, n862).
2625
+ a(X, i863) :- a(X, n862).
2626
+ a(X, j863) :- a(X, n862).
2627
+ a(X, n864) :- a(X, n863).
2628
+ a(X, i864) :- a(X, n863).
2629
+ a(X, j864) :- a(X, n863).
2630
+ a(X, n865) :- a(X, n864).
2631
+ a(X, i865) :- a(X, n864).
2632
+ a(X, j865) :- a(X, n864).
2633
+ a(X, n866) :- a(X, n865).
2634
+ a(X, i866) :- a(X, n865).
2635
+ a(X, j866) :- a(X, n865).
2636
+ a(X, n867) :- a(X, n866).
2637
+ a(X, i867) :- a(X, n866).
2638
+ a(X, j867) :- a(X, n866).
2639
+ a(X, n868) :- a(X, n867).
2640
+ a(X, i868) :- a(X, n867).
2641
+ a(X, j868) :- a(X, n867).
2642
+ a(X, n869) :- a(X, n868).
2643
+ a(X, i869) :- a(X, n868).
2644
+ a(X, j869) :- a(X, n868).
2645
+ a(X, n870) :- a(X, n869).
2646
+ a(X, i870) :- a(X, n869).
2647
+ a(X, j870) :- a(X, n869).
2648
+ a(X, n871) :- a(X, n870).
2649
+ a(X, i871) :- a(X, n870).
2650
+ a(X, j871) :- a(X, n870).
2651
+ a(X, n872) :- a(X, n871).
2652
+ a(X, i872) :- a(X, n871).
2653
+ a(X, j872) :- a(X, n871).
2654
+ a(X, n873) :- a(X, n872).
2655
+ a(X, i873) :- a(X, n872).
2656
+ a(X, j873) :- a(X, n872).
2657
+ a(X, n874) :- a(X, n873).
2658
+ a(X, i874) :- a(X, n873).
2659
+ a(X, j874) :- a(X, n873).
2660
+ a(X, n875) :- a(X, n874).
2661
+ a(X, i875) :- a(X, n874).
2662
+ a(X, j875) :- a(X, n874).
2663
+ a(X, n876) :- a(X, n875).
2664
+ a(X, i876) :- a(X, n875).
2665
+ a(X, j876) :- a(X, n875).
2666
+ a(X, n877) :- a(X, n876).
2667
+ a(X, i877) :- a(X, n876).
2668
+ a(X, j877) :- a(X, n876).
2669
+ a(X, n878) :- a(X, n877).
2670
+ a(X, i878) :- a(X, n877).
2671
+ a(X, j878) :- a(X, n877).
2672
+ a(X, n879) :- a(X, n878).
2673
+ a(X, i879) :- a(X, n878).
2674
+ a(X, j879) :- a(X, n878).
2675
+ a(X, n880) :- a(X, n879).
2676
+ a(X, i880) :- a(X, n879).
2677
+ a(X, j880) :- a(X, n879).
2678
+ a(X, n881) :- a(X, n880).
2679
+ a(X, i881) :- a(X, n880).
2680
+ a(X, j881) :- a(X, n880).
2681
+ a(X, n882) :- a(X, n881).
2682
+ a(X, i882) :- a(X, n881).
2683
+ a(X, j882) :- a(X, n881).
2684
+ a(X, n883) :- a(X, n882).
2685
+ a(X, i883) :- a(X, n882).
2686
+ a(X, j883) :- a(X, n882).
2687
+ a(X, n884) :- a(X, n883).
2688
+ a(X, i884) :- a(X, n883).
2689
+ a(X, j884) :- a(X, n883).
2690
+ a(X, n885) :- a(X, n884).
2691
+ a(X, i885) :- a(X, n884).
2692
+ a(X, j885) :- a(X, n884).
2693
+ a(X, n886) :- a(X, n885).
2694
+ a(X, i886) :- a(X, n885).
2695
+ a(X, j886) :- a(X, n885).
2696
+ a(X, n887) :- a(X, n886).
2697
+ a(X, i887) :- a(X, n886).
2698
+ a(X, j887) :- a(X, n886).
2699
+ a(X, n888) :- a(X, n887).
2700
+ a(X, i888) :- a(X, n887).
2701
+ a(X, j888) :- a(X, n887).
2702
+ a(X, n889) :- a(X, n888).
2703
+ a(X, i889) :- a(X, n888).
2704
+ a(X, j889) :- a(X, n888).
2705
+ a(X, n890) :- a(X, n889).
2706
+ a(X, i890) :- a(X, n889).
2707
+ a(X, j890) :- a(X, n889).
2708
+ a(X, n891) :- a(X, n890).
2709
+ a(X, i891) :- a(X, n890).
2710
+ a(X, j891) :- a(X, n890).
2711
+ a(X, n892) :- a(X, n891).
2712
+ a(X, i892) :- a(X, n891).
2713
+ a(X, j892) :- a(X, n891).
2714
+ a(X, n893) :- a(X, n892).
2715
+ a(X, i893) :- a(X, n892).
2716
+ a(X, j893) :- a(X, n892).
2717
+ a(X, n894) :- a(X, n893).
2718
+ a(X, i894) :- a(X, n893).
2719
+ a(X, j894) :- a(X, n893).
2720
+ a(X, n895) :- a(X, n894).
2721
+ a(X, i895) :- a(X, n894).
2722
+ a(X, j895) :- a(X, n894).
2723
+ a(X, n896) :- a(X, n895).
2724
+ a(X, i896) :- a(X, n895).
2725
+ a(X, j896) :- a(X, n895).
2726
+ a(X, n897) :- a(X, n896).
2727
+ a(X, i897) :- a(X, n896).
2728
+ a(X, j897) :- a(X, n896).
2729
+ a(X, n898) :- a(X, n897).
2730
+ a(X, i898) :- a(X, n897).
2731
+ a(X, j898) :- a(X, n897).
2732
+ a(X, n899) :- a(X, n898).
2733
+ a(X, i899) :- a(X, n898).
2734
+ a(X, j899) :- a(X, n898).
2735
+ a(X, n900) :- a(X, n899).
2736
+ a(X, i900) :- a(X, n899).
2737
+ a(X, j900) :- a(X, n899).
2738
+ a(X, n901) :- a(X, n900).
2739
+ a(X, i901) :- a(X, n900).
2740
+ a(X, j901) :- a(X, n900).
2741
+ a(X, n902) :- a(X, n901).
2742
+ a(X, i902) :- a(X, n901).
2743
+ a(X, j902) :- a(X, n901).
2744
+ a(X, n903) :- a(X, n902).
2745
+ a(X, i903) :- a(X, n902).
2746
+ a(X, j903) :- a(X, n902).
2747
+ a(X, n904) :- a(X, n903).
2748
+ a(X, i904) :- a(X, n903).
2749
+ a(X, j904) :- a(X, n903).
2750
+ a(X, n905) :- a(X, n904).
2751
+ a(X, i905) :- a(X, n904).
2752
+ a(X, j905) :- a(X, n904).
2753
+ a(X, n906) :- a(X, n905).
2754
+ a(X, i906) :- a(X, n905).
2755
+ a(X, j906) :- a(X, n905).
2756
+ a(X, n907) :- a(X, n906).
2757
+ a(X, i907) :- a(X, n906).
2758
+ a(X, j907) :- a(X, n906).
2759
+ a(X, n908) :- a(X, n907).
2760
+ a(X, i908) :- a(X, n907).
2761
+ a(X, j908) :- a(X, n907).
2762
+ a(X, n909) :- a(X, n908).
2763
+ a(X, i909) :- a(X, n908).
2764
+ a(X, j909) :- a(X, n908).
2765
+ a(X, n910) :- a(X, n909).
2766
+ a(X, i910) :- a(X, n909).
2767
+ a(X, j910) :- a(X, n909).
2768
+ a(X, n911) :- a(X, n910).
2769
+ a(X, i911) :- a(X, n910).
2770
+ a(X, j911) :- a(X, n910).
2771
+ a(X, n912) :- a(X, n911).
2772
+ a(X, i912) :- a(X, n911).
2773
+ a(X, j912) :- a(X, n911).
2774
+ a(X, n913) :- a(X, n912).
2775
+ a(X, i913) :- a(X, n912).
2776
+ a(X, j913) :- a(X, n912).
2777
+ a(X, n914) :- a(X, n913).
2778
+ a(X, i914) :- a(X, n913).
2779
+ a(X, j914) :- a(X, n913).
2780
+ a(X, n915) :- a(X, n914).
2781
+ a(X, i915) :- a(X, n914).
2782
+ a(X, j915) :- a(X, n914).
2783
+ a(X, n916) :- a(X, n915).
2784
+ a(X, i916) :- a(X, n915).
2785
+ a(X, j916) :- a(X, n915).
2786
+ a(X, n917) :- a(X, n916).
2787
+ a(X, i917) :- a(X, n916).
2788
+ a(X, j917) :- a(X, n916).
2789
+ a(X, n918) :- a(X, n917).
2790
+ a(X, i918) :- a(X, n917).
2791
+ a(X, j918) :- a(X, n917).
2792
+ a(X, n919) :- a(X, n918).
2793
+ a(X, i919) :- a(X, n918).
2794
+ a(X, j919) :- a(X, n918).
2795
+ a(X, n920) :- a(X, n919).
2796
+ a(X, i920) :- a(X, n919).
2797
+ a(X, j920) :- a(X, n919).
2798
+ a(X, n921) :- a(X, n920).
2799
+ a(X, i921) :- a(X, n920).
2800
+ a(X, j921) :- a(X, n920).
2801
+ a(X, n922) :- a(X, n921).
2802
+ a(X, i922) :- a(X, n921).
2803
+ a(X, j922) :- a(X, n921).
2804
+ a(X, n923) :- a(X, n922).
2805
+ a(X, i923) :- a(X, n922).
2806
+ a(X, j923) :- a(X, n922).
2807
+ a(X, n924) :- a(X, n923).
2808
+ a(X, i924) :- a(X, n923).
2809
+ a(X, j924) :- a(X, n923).
2810
+ a(X, n925) :- a(X, n924).
2811
+ a(X, i925) :- a(X, n924).
2812
+ a(X, j925) :- a(X, n924).
2813
+ a(X, n926) :- a(X, n925).
2814
+ a(X, i926) :- a(X, n925).
2815
+ a(X, j926) :- a(X, n925).
2816
+ a(X, n927) :- a(X, n926).
2817
+ a(X, i927) :- a(X, n926).
2818
+ a(X, j927) :- a(X, n926).
2819
+ a(X, n928) :- a(X, n927).
2820
+ a(X, i928) :- a(X, n927).
2821
+ a(X, j928) :- a(X, n927).
2822
+ a(X, n929) :- a(X, n928).
2823
+ a(X, i929) :- a(X, n928).
2824
+ a(X, j929) :- a(X, n928).
2825
+ a(X, n930) :- a(X, n929).
2826
+ a(X, i930) :- a(X, n929).
2827
+ a(X, j930) :- a(X, n929).
2828
+ a(X, n931) :- a(X, n930).
2829
+ a(X, i931) :- a(X, n930).
2830
+ a(X, j931) :- a(X, n930).
2831
+ a(X, n932) :- a(X, n931).
2832
+ a(X, i932) :- a(X, n931).
2833
+ a(X, j932) :- a(X, n931).
2834
+ a(X, n933) :- a(X, n932).
2835
+ a(X, i933) :- a(X, n932).
2836
+ a(X, j933) :- a(X, n932).
2837
+ a(X, n934) :- a(X, n933).
2838
+ a(X, i934) :- a(X, n933).
2839
+ a(X, j934) :- a(X, n933).
2840
+ a(X, n935) :- a(X, n934).
2841
+ a(X, i935) :- a(X, n934).
2842
+ a(X, j935) :- a(X, n934).
2843
+ a(X, n936) :- a(X, n935).
2844
+ a(X, i936) :- a(X, n935).
2845
+ a(X, j936) :- a(X, n935).
2846
+ a(X, n937) :- a(X, n936).
2847
+ a(X, i937) :- a(X, n936).
2848
+ a(X, j937) :- a(X, n936).
2849
+ a(X, n938) :- a(X, n937).
2850
+ a(X, i938) :- a(X, n937).
2851
+ a(X, j938) :- a(X, n937).
2852
+ a(X, n939) :- a(X, n938).
2853
+ a(X, i939) :- a(X, n938).
2854
+ a(X, j939) :- a(X, n938).
2855
+ a(X, n940) :- a(X, n939).
2856
+ a(X, i940) :- a(X, n939).
2857
+ a(X, j940) :- a(X, n939).
2858
+ a(X, n941) :- a(X, n940).
2859
+ a(X, i941) :- a(X, n940).
2860
+ a(X, j941) :- a(X, n940).
2861
+ a(X, n942) :- a(X, n941).
2862
+ a(X, i942) :- a(X, n941).
2863
+ a(X, j942) :- a(X, n941).
2864
+ a(X, n943) :- a(X, n942).
2865
+ a(X, i943) :- a(X, n942).
2866
+ a(X, j943) :- a(X, n942).
2867
+ a(X, n944) :- a(X, n943).
2868
+ a(X, i944) :- a(X, n943).
2869
+ a(X, j944) :- a(X, n943).
2870
+ a(X, n945) :- a(X, n944).
2871
+ a(X, i945) :- a(X, n944).
2872
+ a(X, j945) :- a(X, n944).
2873
+ a(X, n946) :- a(X, n945).
2874
+ a(X, i946) :- a(X, n945).
2875
+ a(X, j946) :- a(X, n945).
2876
+ a(X, n947) :- a(X, n946).
2877
+ a(X, i947) :- a(X, n946).
2878
+ a(X, j947) :- a(X, n946).
2879
+ a(X, n948) :- a(X, n947).
2880
+ a(X, i948) :- a(X, n947).
2881
+ a(X, j948) :- a(X, n947).
2882
+ a(X, n949) :- a(X, n948).
2883
+ a(X, i949) :- a(X, n948).
2884
+ a(X, j949) :- a(X, n948).
2885
+ a(X, n950) :- a(X, n949).
2886
+ a(X, i950) :- a(X, n949).
2887
+ a(X, j950) :- a(X, n949).
2888
+ a(X, n951) :- a(X, n950).
2889
+ a(X, i951) :- a(X, n950).
2890
+ a(X, j951) :- a(X, n950).
2891
+ a(X, n952) :- a(X, n951).
2892
+ a(X, i952) :- a(X, n951).
2893
+ a(X, j952) :- a(X, n951).
2894
+ a(X, n953) :- a(X, n952).
2895
+ a(X, i953) :- a(X, n952).
2896
+ a(X, j953) :- a(X, n952).
2897
+ a(X, n954) :- a(X, n953).
2898
+ a(X, i954) :- a(X, n953).
2899
+ a(X, j954) :- a(X, n953).
2900
+ a(X, n955) :- a(X, n954).
2901
+ a(X, i955) :- a(X, n954).
2902
+ a(X, j955) :- a(X, n954).
2903
+ a(X, n956) :- a(X, n955).
2904
+ a(X, i956) :- a(X, n955).
2905
+ a(X, j956) :- a(X, n955).
2906
+ a(X, n957) :- a(X, n956).
2907
+ a(X, i957) :- a(X, n956).
2908
+ a(X, j957) :- a(X, n956).
2909
+ a(X, n958) :- a(X, n957).
2910
+ a(X, i958) :- a(X, n957).
2911
+ a(X, j958) :- a(X, n957).
2912
+ a(X, n959) :- a(X, n958).
2913
+ a(X, i959) :- a(X, n958).
2914
+ a(X, j959) :- a(X, n958).
2915
+ a(X, n960) :- a(X, n959).
2916
+ a(X, i960) :- a(X, n959).
2917
+ a(X, j960) :- a(X, n959).
2918
+ a(X, n961) :- a(X, n960).
2919
+ a(X, i961) :- a(X, n960).
2920
+ a(X, j961) :- a(X, n960).
2921
+ a(X, n962) :- a(X, n961).
2922
+ a(X, i962) :- a(X, n961).
2923
+ a(X, j962) :- a(X, n961).
2924
+ a(X, n963) :- a(X, n962).
2925
+ a(X, i963) :- a(X, n962).
2926
+ a(X, j963) :- a(X, n962).
2927
+ a(X, n964) :- a(X, n963).
2928
+ a(X, i964) :- a(X, n963).
2929
+ a(X, j964) :- a(X, n963).
2930
+ a(X, n965) :- a(X, n964).
2931
+ a(X, i965) :- a(X, n964).
2932
+ a(X, j965) :- a(X, n964).
2933
+ a(X, n966) :- a(X, n965).
2934
+ a(X, i966) :- a(X, n965).
2935
+ a(X, j966) :- a(X, n965).
2936
+ a(X, n967) :- a(X, n966).
2937
+ a(X, i967) :- a(X, n966).
2938
+ a(X, j967) :- a(X, n966).
2939
+ a(X, n968) :- a(X, n967).
2940
+ a(X, i968) :- a(X, n967).
2941
+ a(X, j968) :- a(X, n967).
2942
+ a(X, n969) :- a(X, n968).
2943
+ a(X, i969) :- a(X, n968).
2944
+ a(X, j969) :- a(X, n968).
2945
+ a(X, n970) :- a(X, n969).
2946
+ a(X, i970) :- a(X, n969).
2947
+ a(X, j970) :- a(X, n969).
2948
+ a(X, n971) :- a(X, n970).
2949
+ a(X, i971) :- a(X, n970).
2950
+ a(X, j971) :- a(X, n970).
2951
+ a(X, n972) :- a(X, n971).
2952
+ a(X, i972) :- a(X, n971).
2953
+ a(X, j972) :- a(X, n971).
2954
+ a(X, n973) :- a(X, n972).
2955
+ a(X, i973) :- a(X, n972).
2956
+ a(X, j973) :- a(X, n972).
2957
+ a(X, n974) :- a(X, n973).
2958
+ a(X, i974) :- a(X, n973).
2959
+ a(X, j974) :- a(X, n973).
2960
+ a(X, n975) :- a(X, n974).
2961
+ a(X, i975) :- a(X, n974).
2962
+ a(X, j975) :- a(X, n974).
2963
+ a(X, n976) :- a(X, n975).
2964
+ a(X, i976) :- a(X, n975).
2965
+ a(X, j976) :- a(X, n975).
2966
+ a(X, n977) :- a(X, n976).
2967
+ a(X, i977) :- a(X, n976).
2968
+ a(X, j977) :- a(X, n976).
2969
+ a(X, n978) :- a(X, n977).
2970
+ a(X, i978) :- a(X, n977).
2971
+ a(X, j978) :- a(X, n977).
2972
+ a(X, n979) :- a(X, n978).
2973
+ a(X, i979) :- a(X, n978).
2974
+ a(X, j979) :- a(X, n978).
2975
+ a(X, n980) :- a(X, n979).
2976
+ a(X, i980) :- a(X, n979).
2977
+ a(X, j980) :- a(X, n979).
2978
+ a(X, n981) :- a(X, n980).
2979
+ a(X, i981) :- a(X, n980).
2980
+ a(X, j981) :- a(X, n980).
2981
+ a(X, n982) :- a(X, n981).
2982
+ a(X, i982) :- a(X, n981).
2983
+ a(X, j982) :- a(X, n981).
2984
+ a(X, n983) :- a(X, n982).
2985
+ a(X, i983) :- a(X, n982).
2986
+ a(X, j983) :- a(X, n982).
2987
+ a(X, n984) :- a(X, n983).
2988
+ a(X, i984) :- a(X, n983).
2989
+ a(X, j984) :- a(X, n983).
2990
+ a(X, n985) :- a(X, n984).
2991
+ a(X, i985) :- a(X, n984).
2992
+ a(X, j985) :- a(X, n984).
2993
+ a(X, n986) :- a(X, n985).
2994
+ a(X, i986) :- a(X, n985).
2995
+ a(X, j986) :- a(X, n985).
2996
+ a(X, n987) :- a(X, n986).
2997
+ a(X, i987) :- a(X, n986).
2998
+ a(X, j987) :- a(X, n986).
2999
+ a(X, n988) :- a(X, n987).
3000
+ a(X, i988) :- a(X, n987).
3001
+ a(X, j988) :- a(X, n987).
3002
+ a(X, n989) :- a(X, n988).
3003
+ a(X, i989) :- a(X, n988).
3004
+ a(X, j989) :- a(X, n988).
3005
+ a(X, n990) :- a(X, n989).
3006
+ a(X, i990) :- a(X, n989).
3007
+ a(X, j990) :- a(X, n989).
3008
+ a(X, n991) :- a(X, n990).
3009
+ a(X, i991) :- a(X, n990).
3010
+ a(X, j991) :- a(X, n990).
3011
+ a(X, n992) :- a(X, n991).
3012
+ a(X, i992) :- a(X, n991).
3013
+ a(X, j992) :- a(X, n991).
3014
+ a(X, n993) :- a(X, n992).
3015
+ a(X, i993) :- a(X, n992).
3016
+ a(X, j993) :- a(X, n992).
3017
+ a(X, n994) :- a(X, n993).
3018
+ a(X, i994) :- a(X, n993).
3019
+ a(X, j994) :- a(X, n993).
3020
+ a(X, n995) :- a(X, n994).
3021
+ a(X, i995) :- a(X, n994).
3022
+ a(X, j995) :- a(X, n994).
3023
+ a(X, n996) :- a(X, n995).
3024
+ a(X, i996) :- a(X, n995).
3025
+ a(X, j996) :- a(X, n995).
3026
+ a(X, n997) :- a(X, n996).
3027
+ a(X, i997) :- a(X, n996).
3028
+ a(X, j997) :- a(X, n996).
3029
+ a(X, n998) :- a(X, n997).
3030
+ a(X, i998) :- a(X, n997).
3031
+ a(X, j998) :- a(X, n997).
3032
+ a(X, n999) :- a(X, n998).
3033
+ a(X, i999) :- a(X, n998).
3034
+ a(X, j999) :- a(X, n998).
3035
+ a(X, n1000) :- a(X, n999).
3036
+ a(X, i1000) :- a(X, n999).
3037
+ a(X, j1000) :- a(X, n999).
3038
+
3039
+ % ARC checks
3040
+
3041
+ arc(check1, "C1 OK - the starting classification n0 is present.") :-
3042
+ once(a(ind, n0)).
3043
+
3044
+ arc(check2, "C2 OK - the first expansion produced n1 together with side labels i1 and j1.") :-
3045
+ once(a(ind, n1)),
3046
+ once(a(ind, i1)),
3047
+ once(a(ind, j1)).
3048
+
3049
+ arc(check3, "C3 OK - the chain reaches the midpoint n500 and still carries both side-label branches.") :-
3050
+ once(a(ind, n500)),
3051
+ once(a(ind, i500)),
3052
+ once(a(ind, j500)).
3053
+
3054
+ arc(check4, "C4 OK - the final taxonomy step from n999 to n1000 was completed.") :-
3055
+ once(a(ind, n999)),
3056
+ once(a(ind, n1000)).
3057
+
3058
+ arc(check5, "C5 OK - once n1000 is reached, the terminal class a2 is derived.") :-
3059
+ once(a(ind, n1000)),
3060
+ once(a(ind, a2)).
3061
+
3062
+ arc(check6, "C6 OK - the success flag is raised only after the terminal class a2 is present.") :-
3063
+ once(a(ind, a2)),
3064
+ once(is(test, true)).
3065
+
3066
+ % ARC report
3067
+
3068
+ answer(report, "The test succeeds: starting from one individual classified as n0, the rules eventually classify it as n1000 and then as a2.") :-
3069
+ once(is(test, true)).
3070
+
3071
+ reason(report, "The adjacent rules mirror the Eyeling N3 deep-taxonomy-1000 chain. Redundant checkpoint rules are included only as proof accelerators: each shortcut is entailed by the adjacent chain, and once/1 prevents backtracking into the long adjacent-only proof after a check has succeeded.") :-
3072
+ once(a(ind, a2)),
3073
+ once(is(test, true)).
3074
+
3075
+ checkPassed(report, Check) :-
3076
+ arc(Check, _Message).
3077
+
3078
+ result(report, success) :-
3079
+ once(is(test, true)),
3080
+ once(arc(check1, _C1)),
3081
+ once(arc(check2, _C2)),
3082
+ once(arc(check3, _C3)),
3083
+ once(arc(check4, _C4)),
3084
+ once(arc(check5, _C5)),
3085
+ once(arc(check6, _C6)).