JavaScript "bootload"

Admin User, erstellt 29. Apr. 2024
         
/**
* Modern Albufeira Prolog Interpreter
*
* Warranty & Liability
* To the extent permitted by applicable law and unless explicitly
* otherwise agreed upon, XLOG Technologies AG makes no warranties
* regarding the provided information. XLOG Technologies AG assumes
* no liability that any problems might be solved with the information
* provided by XLOG Technologies AG.
*
* Rights & License
* All industrial property rights regarding the information - copyright
* and patent rights in particular - are the sole property of XLOG
* Technologies AG. If the company was not the originator of some
* excerpts, XLOG Technologies AG has at least obtained the right to
* reproduce, change and translate the information.
*
* Reproduction is restricted to the whole unaltered document. Reproduction
* of the information is only allowed for non-commercial uses. Selling,
* giving away or letting of the execution of the library is prohibited.
* The library can be distributed as part of your applications and libraries
* for execution provided this comment remains unchanged.
*
* Restrictions
* Only to be distributed with programs that add significant and primary
* functionality to the library. Not to be distributed with additional
* software intended to replace any components of the library.
*
* Trademarks
* Jekejeke is a registered trademark of XLOG Technologies AG.
*/
import {Clause, add, Compound, Cache,
make_defined, Place, Skeleton} from "./nova/store.mjs";
import {Goal, run} from "./nova/machine.mjs";
import "./nova/special.mjs";
import "./nova/runtime.mjs";
import "./nova/eval.mjs";
add("sys_trans_horn", 2, new Clause(1, [new Place(-2), new Place(-1)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("sys_trans_horn", 2, new Clause(3, [new Skeleton(":-", [new Place(-3)]), new Skeleton("tr_goal", [new Place(-4)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_trans_body"), [new Place(1), "nothing", new Place(-3), new Place(-2), "[]"]), new Skeleton(new Cache("sys_trans_mark"), [new Place(1), new Place(2), new Place(0)])], 0, ":-"));
add("sys_trans_horn", 2, new Clause(5, [new Skeleton(":-", [new Place(-3), new Place(-4)]), new Skeleton("tr_clause", [new Place(-5), new Place(1), new Place(-6)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_check_callable"), [new Place(1)]), new Skeleton(new Cache("sys_trans_body"), [new Place(2), "nothing", new Place(3), new Place(4), "[]"])], 0, ":-"));
add("sys_trans_horn", 2, new Clause(1, [new Place(-2), new Skeleton("tr_clause", ["nothing", new Place(0), "[]"])], [new Skeleton(new Cache("sys_check_callable"), [new Place(0)])], -1, undefined));
add("sys_trans_body", 5, new Clause(4, [new Place(-3), new Place(-4), new Place(2), new Place(-4), new Place(-5)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("="), [new Place(2), new Place(-4)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(2), new Place(-4)]), new Skeleton(new Cache("="), [new Place(2), new Skeleton(".", [new Skeleton("call", [new Place(1)]), new Place(3)])])], 0, undefined));
add("sys_trans_body", 5, new Clause(3, ["true", new Place(-3), new Place(1), new Place(-3), new Place(-4)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(1), new Place(2)])], 0, "true"));
add("sys_trans_body", 5, new Clause(7, [new Skeleton(",", [new Place(-3), new Place(-4)]), new Place(-5), new Place(-6), new Place(-7), new Place(-8)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(5), new Place(-7)]), new Skeleton(new Cache("sys_trans_body"), [new Place(1), new Place(3), new Place(-5), new Place(5), new Place(-7)]), new Skeleton(new Cache("sys_trans_body"), [new Place(2), new Place(3), new Place(4), new Place(5), new Place(6)])], 0, ","));
add("sys_trans_body", 5, new Clause(7, [new Skeleton(";", [new Place(-3), new Place(-4)]), new Place(-5), new Place(-6), new Place(-7), new Place(-8)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(5), new Place(-7)]), new Skeleton(new Cache("sys_trans_disj"), [new Skeleton(";", [new Place(1), new Place(2)]), 0, new Place(3), new Place(4), new Place(-6)]), new Skeleton(new Cache("="), [new Place(5), new Place(-7)]), new Skeleton(new Cache("="), [new Place(5), new Skeleton(".", [new Skeleton("$ALT", [new Place(4)]), new Place(6)])])], 0, ";"));
add("sys_trans_body", 5, new Clause(7, [new Skeleton("->", [new Place(-3), new Place(-4)]), new Place(-5), new Place(-6), new Place(-7), new Place(-8)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(5), new Place(-7)]), new Skeleton(new Cache("sys_trans_disj"), [new Skeleton("->", [new Place(1), new Place(2)]), 0, new Place(3), new Place(4), new Place(-6)]), new Skeleton(new Cache("="), [new Place(5), new Place(-7)]), new Skeleton(new Cache("="), [new Place(5), new Skeleton(".", [new Skeleton("$ALT", [new Place(4)]), new Place(6)])])], 0, "->"));
add("sys_trans_body", 5, new Clause(5, ["!", new Place(-3), new Skeleton("just", [new Place(-4)]), new Place(-5), new Place(-6)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_trans_cut"), [new Place(1), new Place(2)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("="), [new Place(3), new Skeleton(".", [new Skeleton("$CUT", [new Place(2)]), new Place(4)])])], 0, "!"));
add("sys_trans_body", 5, new Clause(3, [new Place(-2), new Place(-3), new Place(1), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_check_callable"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(1), new Place(-3)]), new Skeleton(new Cache("="), [new Place(1), new Skeleton(".", [new Place(0), new Place(2)])])], -1, undefined));
add("sys_trans_cut", 2, new Clause(1, ["nothing", new Place(-1)], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, "nothing"));
add("sys_trans_cut", 2, new Clause(1, [new Skeleton("just", [new Place(-2)]), new Place(0)], [], -1, "just"));
add("sys_trans_disj", 5, new Clause(5, [new Place(-3), new Place(-1), new Place(-4), new Place(-5), new Skeleton(".", [new Place(-6), "[]"])], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_trans_alternative"), [new Place(1), new Place(2), new Place(3), new Place(4), new Place(-1)])], 0, undefined));
add("sys_trans_disj", 5, new Clause(7, [new Skeleton(";", [new Place(-3), new Place(-4)]), new Place(-1), new Place(-5), new Place(-6), new Skeleton(".", [new Place(-7), new Place(-8)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_trans_alternative"), [new Place(1), new Place(3), new Place(-5), new Place(5), new Place(-7)]), new Skeleton(new Cache("sys_trans_disj"), [new Place(2), new Place(5), new Place(3), new Place(4), new Place(6)])], 0, ";"));
add("sys_trans_disj", 5, new Clause(2, ["fail", 1, new Place(-3), new Place(1), "[]"], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, "fail"));
add("sys_trans_disj", 5, new Clause(4, [new Place(-2), new Place(-1), new Place(-3), new Place(-4), new Skeleton(".", [new Place(-5), "[]"])], [new Skeleton(new Cache("sys_trans_alternative"), [new Place(0), new Place(1), new Place(2), new Place(3), new Place(-1)])], -1, undefined));
add("sys_trans_alternative", 5, new Clause(5, [new Place(-3), new Place(-4), new Place(-5), new Skeleton("$SEQ", ["nothing", new Place(-6)]), 0], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_trans_body"), [new Place(1), new Place(2), new Place(3), new Place(4), "[]"])], 0, undefined));
add("sys_trans_alternative", 5, new Clause(7, [new Skeleton("->", [new Place(-3), new Place(-4)]), new Place(-5), new Place(-6), new Skeleton("$SEQ", [new Skeleton("just", [new Place(-7)]), new Place(-8)]), 1], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_trans_body"), [new Place(1), "nothing", new Place(-3), new Place(-2), new Skeleton(".", [new Skeleton("$CUT", [new Place(5)]), new Place(-7)])]), new Skeleton(new Cache("sys_trans_body"), [new Place(2), new Place(3), new Place(4), new Place(5), "[]"]), new Skeleton(new Cache("sys_trans_mark"), [new Place(1), new Place(6), new Place(0)])], 0, "->"));
add("sys_trans_alternative", 5, new Clause(4, [new Place(-2), new Place(-3), new Place(-4), new Skeleton("$SEQ", ["nothing", new Place(-5)]), 0], [new Skeleton(new Cache("sys_trans_body"), [new Place(0), new Place(1), new Place(2), new Place(3), "[]"])], -1, undefined));
add("sys_trans_mark", 3, new Clause(2, [new Skeleton("just", [new Place(-3)]), new Skeleton(".", [new Skeleton("$MARK", [new Place(1)]), new Place(-3)]), new Place(1)], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, "just"));
add("sys_trans_mark", 3, new Clause(1, ["nothing", new Place(-2), new Place(0)], [], -1, "nothing"));
add("sys_encode_horn", 3, new Clause(4, [new Skeleton("tr_goal", [new Place(-3)]), new Skeleton("ir_goal", [new Place(-4)]), new Place(-5)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_ast_body"), [new Place(1), new Place(2), "[]", new Place(3), "[]", new Place(-1)])], 0, "tr_goal"));
add("sys_encode_horn", 3, new Clause(8, [new Skeleton("tr_clause", [new Skeleton("just", [new Place(-3)]), new Place(-4), new Place(-5)]), new Skeleton("ir_clause", [new Place(-6), new Place(-7), 0, new Place(-8)]), new Place(-9)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("=.."), [new Place(2), new Skeleton(".", [new Place(-1), new Place(-2)])]), new Skeleton(new Cache("sys_ast_list"), [new Place(0), new Place(4), new Skeleton(".", [new Skeleton("v", [new Place(1), 0, new Place(-1)]), "[]"]), new Place(-6)]), new Skeleton(new Cache("sys_ast_body"), [new Place(3), new Place(5), new Skeleton(".", [new Skeleton("-", [new Place(2), new Place(1)]), "[]"]), new Place(7), new Place(4), new Place(-1)]), new Skeleton(new Cache("sys_idx_value"), [new Place(3), new Place(2), new Place(7), new Place(6)])], 0, "tr_clause"));
add("sys_encode_horn", 3, new Clause(7, [new Skeleton("tr_clause", ["nothing", new Place(-2), new Place(-3)]), new Skeleton("ir_clause", [new Place(-4), new Place(-5), -1, new Place(-6)]), new Place(-7)], [new Skeleton(new Cache("=.."), [new Place(0), new Skeleton(".", [new Place(-1), new Place(-8)])]), new Skeleton(new Cache("sys_ast_list"), [new Place(6), new Place(2), "[]", new Place(-4)]), new Skeleton(new Cache("sys_ast_body"), [new Place(1), new Place(3), new Skeleton(".", [new Place(0), "[]"]), new Place(5), new Place(2), new Place(-1)]), new Skeleton(new Cache("sys_idx_value"), [new Place(1), new Place(0), new Place(5), new Place(4)])], -1, "tr_clause"));
add("sys_encode_alternatives", 4, new Clause(8, [new Skeleton(".", [new Skeleton("$SEQ", [new Place(-3), new Place(-4)]), new Place(-5)]), new Place(-6), new Skeleton(".", [new Place(-7), new Place(-8)]), new Place(-9)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_encode_horn"), [new Skeleton("tr_clause", [new Place(1), new Place(4), new Place(2)]), new Place(5), new Place(7)]), new Skeleton(new Cache("sys_encode_alternatives"), [new Place(3), new Place(4), new Place(6), new Place(7)])], 0, "."));
add("sys_encode_alternatives", 4, new Clause(0, ["[]", new Place(-1), "[]", new Place(-1)], [], -1, "[]"));
add("sys_ast_body", 6, new Clause(8, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Skeleton(".", [new Place(-4), new Place(-5)]), new Place(-6), new Place(-7), new Place(-8), new Place(-9)], [new Skeleton(new Cache("sys_ast_goal"), [new Place(0), new Place(5), new Place(2), new Place(1), new Place(4), new Place(6), new Place(-8)]), new Skeleton(new Cache("sys_ast_body"), [new Place(1), new Place(3), new Skeleton(".", [new Place(0), new Place(4)]), new Place(5), new Place(6), new Place(7)])], -1, "."));
add("sys_ast_body", 6, new Clause(2, ["[]", "[]", new Place(-1), new Place(-1), new Place(-2), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, "[]"));
add("sys_ast_goal", 7, new Clause(5, [new Skeleton("call", [new Place(-3)]), 1, new Place(-4), new Place(-1), new Place(-1), new Place(-5), new Place(-6)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_ast_term"), [new Place(1), new Place(2), new Place(3), new Place(4)])], 0, "call"));
add("sys_ast_goal", 7, new Clause(7, [new Skeleton("$ALT", [new Place(-3)]), 1, new Place(-4), new Place(-5), new Place(-6), new Place(-7), new Place(-8)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(5), new Place(-7)]), new Skeleton(new Cache("term_variables"), [new Skeleton("-", [new Place(3), new Place(4)]), new Place(-6)]), new Skeleton(new Cache("term_variables"), [new Place(1), new Place(-5)]), new Skeleton(new Cache("eq_intersection"), [new Place(3), new Place(4), new Place(-6)]), new Skeleton(new Cache("=.."), [new Place(-5), new Skeleton(".", ["", new Place(4)])]), new Skeleton(new Cache("sys_encode_alternatives"), [new Place(1), new Place(3), new Place(-3), 1]), new Skeleton(new Cache("="), [new Place(5), new Place(-7)]), new Skeleton(new Cache("sys_ast_invoke"), [new Place(3), new Place(2), new Skeleton("link", [new Place(1)]), new Place(5), new Place(6)])], 0, "$ALT"));
add("sys_ast_goal", 7, new Clause(6, [new Skeleton("is", [new Place(-3), new Place(-4)]), 1, new Place(-5), new Place(-1), new Place(-1), new Place(-6), new Place(-7)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(2), new Place(-4), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_term"), [new Place(1), new Place(-3), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_const_functor"), [new Compound("site", ["$EVAL"]), new Skeleton(".", [new Place(2), new Skeleton(".", [new Place(1), "[]"])]), new Place(3)]), new Skeleton(new Cache("="), [new Place(4), new Place(5)])], 0, "is"));
add("sys_ast_goal", 7, new Clause(6, [new Skeleton("=:=", [new Place(-3), new Place(-4)]), 1, new Place(-5), new Place(-1), new Place(-1), new Place(-6), new Place(-7)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(1), new Place(-3), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(2), new Place(-4), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_const_functor"), [new Compound("site", ["=:="]), new Skeleton(".", [new Place(1), new Skeleton(".", [new Place(2), "[]"])]), new Place(3)]), new Skeleton(new Cache("="), [new Place(4), new Place(5)])], 0, "=:="));
add("sys_ast_goal", 7, new Clause(6, [new Skeleton("=\\=", [new Place(-3), new Place(-4)]), 1, new Place(-5), new Place(-1), new Place(-1), new Place(-6), new Place(-7)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(1), new Place(-3), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(2), new Place(-4), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_const_functor"), [new Compound("site", ["=\\="]), new Skeleton(".", [new Place(1), new Skeleton(".", [new Place(2), "[]"])]), new Place(3)]), new Skeleton(new Cache("="), [new Place(4), new Place(5)])], 0, "=\\="));
add("sys_ast_goal", 7, new Clause(6, [new Skeleton("<", [new Place(-3), new Place(-4)]), 1, new Place(-5), new Place(-1), new Place(-1), new Place(-6), new Place(-7)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(1), new Place(-3), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(2), new Place(-4), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_const_functor"), [new Compound("site", ["<"]), new Skeleton(".", [new Place(1), new Skeleton(".", [new Place(2), "[]"])]), new Place(3)]), new Skeleton(new Cache("="), [new Place(4), new Place(5)])], 0, "<"));
add("sys_ast_goal", 7, new Clause(6, [new Skeleton(">", [new Place(-3), new Place(-4)]), 1, new Place(-5), new Place(-1), new Place(-1), new Place(-6), new Place(-7)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(1), new Place(-3), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(2), new Place(-4), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_const_functor"), [new Compound("site", [">"]), new Skeleton(".", [new Place(1), new Skeleton(".", [new Place(2), "[]"])]), new Place(3)]), new Skeleton(new Cache("="), [new Place(4), new Place(5)])], 0, ">"));
add("sys_ast_goal", 7, new Clause(6, [new Skeleton("=<", [new Place(-3), new Place(-4)]), 1, new Place(-5), new Place(-1), new Place(-1), new Place(-6), new Place(-7)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(1), new Place(-3), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(2), new Place(-4), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_const_functor"), [new Compound("site", ["=<"]), new Skeleton(".", [new Place(1), new Skeleton(".", [new Place(2), "[]"])]), new Place(3)]), new Skeleton(new Cache("="), [new Place(4), new Place(5)])], 0, "=<"));
add("sys_ast_goal", 7, new Clause(6, [new Skeleton(">=", [new Place(-3), new Place(-4)]), 1, new Place(-5), new Place(-1), new Place(-1), new Place(-6), new Place(-7)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(1), new Place(-3), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_expr"), [new Place(2), new Place(-4), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_const_functor"), [new Compound("site", [">="]), new Skeleton(".", [new Place(1), new Skeleton(".", [new Place(2), "[]"])]), new Place(3)]), new Skeleton(new Cache("="), [new Place(4), new Place(5)])], 0, ">="));
add("sys_ast_goal", 7, new Clause(6, [new Place(-3), 1, new Place(-4), new Place(-1), new Place(-1), new Place(-5), new Place(-6)], [new Skeleton(new Cache("functor"), [new Place(1), new Place(-7), new Place(-1)]), new Skeleton(new Cache("atom"), [new Place(5)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_ast_invoke"), [new Place(1), new Place(2), new Skeleton("site", [new Place(5)]), new Place(3), new Place(4)])], 0, undefined));
add("sys_ast_goal", 7, new Clause(4, [new Place(-2), new Place(-1), new Place(-3), new Place(-1), new Place(-1), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_ast_term"), [new Place(0), new Place(1), new Place(2), new Place(3)])], -1, undefined));
add("sys_ast_invoke", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("compound"), [new Place(1)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("functor"), [new Place(1), new Place(-1), new Place(-1)]), new Skeleton(new Cache("=.."), [new Place(1), new Skeleton(".", [new Place(-1), new Place(-3)])]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_list"), [new Place(1), new Place(-3), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_const_functor"), [new Place(3), new Place(1), new Place(2)]), new Skeleton(new Cache("="), [new Place(4), new Place(5)])], 0, undefined));
add("sys_ast_invoke", 5, new Clause(2, [new Place(-1), new Skeleton("const", [new Place(-2)]), new Place(0), new Place(-2), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, undefined));
add("sys_ast_args", 4, new Clause(6, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Skeleton(".", [new Place(-4), new Place(-5)]), new Place(-6), new Place(-7)], [new Skeleton(new Cache("sys_ast_expr"), [new Place(0), new Place(2), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_args"), [new Place(1), new Place(3), new Place(4), new Place(5)])], -1, "."));
add("sys_ast_args", 4, new Clause(2, ["[]", "[]", new Place(-2), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, "[]"));
add("sys_ast_expr", 4, new Clause(5, [new Place(-3), new Place(-4), new Place(-5), new Place(-6)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_ast_var"), [new Place(1), new Place(2), new Place(3), new Place(4)])], 0, undefined));
add("sys_ast_expr", 4, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6)], [new Skeleton(new Cache("functor"), [new Place(1), new Place(-7), new Place(-1)]), new Skeleton(new Cache("atom"), [new Place(5)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_ast_compute"), [new Place(1), new Place(2), new Skeleton("site", [new Place(5)]), new Place(3), new Place(4)])], 0, undefined));
add("sys_ast_expr", 4, new Clause(5, [new Place(-3), new Place(-4), new Place(-5), new Place(-6)], [new Skeleton(new Cache("compound"), [new Place(1)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("functor"), [new Place(1), new Place(-2), new Place(-1)]), new Skeleton(new Cache("=.."), [new Place(1), new Skeleton(".", [new Place(-1), new Place(-3)])]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_ast_args"), [new Place(1), new Place(-3), new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_const_functor"), [new Place(0), new Place(1), new Place(2)]), new Skeleton(new Cache("="), [new Place(3), new Place(4)])], 0, undefined));
add("sys_ast_expr", 4, new Clause(2, [new Place(-2), new Skeleton("const", [new Place(0)]), new Place(-2), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, undefined));
add("sys_ast_compute", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("compound"), [new Place(1)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("functor"), [new Place(1), new Place(-1), new Place(-1)]), new Skeleton(new Cache("=.."), [new Place(1), new Skeleton(".", [new Place(-1), new Place(-3)])]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_args"), [new Place(1), new Place(-3), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_const_functor"), [new Place(3), new Place(1), new Place(2)]), new Skeleton(new Cache("="), [new Place(4), new Place(5)])], 0, undefined));
add("sys_ast_compute", 5, new Clause(2, [new Place(-1), new Skeleton("const", [new Place(-2)]), new Place(0), new Place(-2), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, undefined));
add("sys_ast_list", 4, new Clause(6, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Skeleton(".", [new Place(-4), new Place(-5)]), new Place(-6), new Place(-7)], [new Skeleton(new Cache("sys_ast_term"), [new Place(0), new Place(2), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_ast_list"), [new Place(1), new Place(3), new Place(4), new Place(5)])], -1, "."));
add("sys_ast_list", 4, new Clause(2, ["[]", "[]", new Place(-2), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, "[]"));
add("sys_ast_term", 4, new Clause(5, [new Place(-3), new Place(-4), new Place(-5), new Place(-6)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_ast_var"), [new Place(1), new Place(2), new Place(3), new Place(4)])], 0, undefined));
add("sys_ast_term", 4, new Clause(5, [new Place(-3), new Place(-4), new Place(-5), new Place(-6)], [new Skeleton(new Cache("compound"), [new Place(1)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("functor"), [new Place(1), new Place(-2), new Place(-1)]), new Skeleton(new Cache("=.."), [new Place(1), new Skeleton(".", [new Place(-1), new Place(-3)])]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_ast_list"), [new Place(1), new Place(-3), new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_const_functor"), [new Place(0), new Place(1), new Place(2)]), new Skeleton(new Cache("="), [new Place(3), new Place(4)])], 0, undefined));
add("sys_ast_term", 4, new Clause(2, [new Place(-2), new Skeleton("const", [new Place(0)]), new Place(-2), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, undefined));
add("sys_const_functor", 3, new Clause(3, [new Place(-3), new Place(-4), new Skeleton("const", [new Skeleton("functor", [new Place(1), new Place(-3)])])], [new Skeleton(new Cache("sys_const_only"), [new Place(2), new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_const_functor", 3, new Clause(2, [new Place(-2), new Place(-3), new Skeleton("functor", [new Place(0), new Place(1)])], [], -1, undefined));
add("sys_const_only", 2, new Clause(2, [new Skeleton(".", [new Skeleton("const", [new Place(-2)]), new Place(-3)]), new Skeleton(".", [new Place(0), new Place(-2)])], [new Skeleton(new Cache("sys_const_only"), [new Place(1), new Place(0)])], -1, "."));
add("sys_const_only", 2, new Clause(0, ["[]", "[]"], [], -1, "[]"));
add("sys_ast_var", 4, new Clause(9, [new Place(-3), new Skeleton("var", [new Place(-4), new Place(-5)]), new Place(-6), new Place(-7)], [new Skeleton(new Cache("sys_current_dcg"), [new Place(-8), new Place(4), new Place(-6)]), new Skeleton(new Cache("select"), [new Skeleton("v", [new Place(-9), new Place(2), new Place(-10)]), new Place(6), new Place(-8)]), new Skeleton(new Cache("=="), [new Place(7), new Place(1)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("="), [new Place(8), 0]), new Skeleton(new Cache("="), [new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_set_dcg"), [new Skeleton(".", [new Skeleton("v", [new Place(7), new Place(2), new Place(3)]), new Place(6)]), new Place(4), new Place(5)])], 0, undefined));
add("sys_ast_var", 4, new Clause(6, [new Place(-2), new Skeleton("first_var", [new Place(-3), new Place(-4)]), new Place(-5), new Place(-6)], [new Skeleton(new Cache("sys_current_dcg"), [new Place(-7), new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_set_dcg"), [new Skeleton(".", [new Skeleton("v", [new Place(0), new Place(1), new Place(2)]), new Place(5)]), new Place(3), new Place(4)])], -1, undefined));
add("sys_current_dcg", 3, new Clause(1, [new Place(-2), new Place(0), new Place(0)], [], -1, undefined));
add("sys_set_dcg", 3, new Clause(1, [new Place(-2), new Place(-1), new Place(0)], [], -1, undefined));
add("sys_idx_value", 4, new Clause(4, [new Place(-1), new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("arg"), [1, new Place(1), new Place(-3)]), new Skeleton(new Cache("=:="), [new Skeleton(new Cache("\/\\"), [new Place(2), 1]), 0]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_idx_value_term"), [new Place(1), new Place(3)])], 0, undefined));
add("sys_idx_value", 4, new Clause(4, [new Place(-3), new Place(-4), new Place(-1), new Place(-5)], [new Skeleton(new Cache("arg"), [1, new Place(2), new Place(-4)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_idx_value_arg"), [new Place(1), new Place(2), new Place(3)])], 0, undefined));
add("sys_idx_value", 4, new Clause(0, [new Place(-1), new Place(-1), new Place(-1), "nothing"], [], -1, undefined));
add("sys_idx_value_arg", 3, new Clause(3, [new Place(-1), new Place(-3), new Skeleton("just", [new Place(-4)])], [new Skeleton(new Cache("nonvar"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("functor"), [new Place(1), new Place(2), new Place(-1)])], 0, undefined));
add("sys_idx_value_arg", 3, new Clause(6, [new Skeleton(".", [new Skeleton("=", [new Place(-3), new Place(-4)]), new Place(-5)]), new Place(-6), new Place(-7)], [new Skeleton(new Cache("=="), [new Place(4), new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_idx_value_arg"), [new Place(3), new Place(2), new Place(5)])], 0, "."));
add("sys_idx_value_arg", 3, new Clause(6, [new Skeleton(".", [new Skeleton("=", [new Place(-3), new Place(-4)]), new Place(-5)]), new Place(-6), new Place(-7)], [new Skeleton(new Cache("=="), [new Place(4), new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_idx_value_arg"), [new Place(3), new Place(1), new Place(5)])], 0, "."));
add("sys_idx_value_arg", 3, new Clause(4, [new Skeleton(".", [new Skeleton("=", [new Place(-1), new Place(-1)]), new Place(-3)]), new Place(-4), new Place(-5)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_idx_value_arg"), [new Place(1), new Place(2), new Place(3)])], 0, "."));
add("sys_idx_value_arg", 3, new Clause(0, [new Place(-1), new Place(-1), "nothing"], [], -1, undefined));
add("sys_idx_value_term", 2, new Clause(3, [new Place(-3), new Skeleton("just", [new Place(-4)])], [new Skeleton(new Cache("nonvar"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("functor"), [new Place(1), new Place(2), new Place(-1)])], 0, undefined));
add("sys_idx_value_term", 2, new Clause(0, [new Place(-1), "nothing"], [], -1, undefined));
add("eq_contains", 2, new Clause(3, [new Skeleton(".", [new Place(-3), new Place(-1)]), new Place(-4)], [new Skeleton(new Cache("=="), [new Place(1), new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, "."));
add("eq_contains", 2, new Clause(2, [new Skeleton(".", [new Place(-1), new Place(-2)]), new Place(-3)], [new Skeleton(new Cache("eq_contains"), [new Place(0), new Place(1)])], -1, "."));
add("eq_intersection", 3, new Clause(5, [new Skeleton(".", [new Place(-3), new Place(-4)]), new Place(-5), new Skeleton(".", [new Place(1), new Place(-6)])], [new Skeleton(new Cache("eq_contains"), [new Place(3), new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("eq_intersection"), [new Place(2), new Place(3), new Place(4)])], 0, "."));
add("eq_intersection", 3, new Clause(4, [new Skeleton(".", [new Place(-1), new Place(-3)]), new Place(-4), new Place(-5)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("eq_intersection"), [new Place(1), new Place(2), new Place(3)])], 0, "."));
add("eq_intersection", 3, new Clause(0, ["[]", new Place(-1), "[]"], [], -1, "[]"));
add("sys_check_callable", 1, new Clause(2, [new Place(-3)], [new Skeleton(new Cache("callable"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_check_callable", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("sys_check_callable", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["callable", new Place(0)]), new Place(-1)])])], -1, undefined));
add("open", 3, new Clause(3, [new Place(-3), "read", new Place(-4)], [new Compound(new Cache("current_prolog_flag"), ["read_async", "on"]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("os_open_promise"), [new Place(1), new Place(2), new Place(-4)]), new Skeleton(new Cache("$YIELD"), [new Place(2)])], 0, undefined));
add("open", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("os_open_sync"), [new Place(0), new Place(1), new Place(2)])], -1, undefined));
add("close", 1, new Clause(3, [new Place(-3)], [new Skeleton(new Cache("os_stream_flags"), [new Place(1), new Place(-4)]), new Skeleton(new Cache("=\\="), [new Skeleton(new Cache("\/\\"), [new Place(2), 2]), 0]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("os_close_promise"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("$YIELD"), [new Place(1)])], 0, undefined));
add("close", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("os_close_sync"), [new Place(0)])], -1, undefined));
add("stream_property", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("os_stream_list"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("member"), [new Place(1), new Place(0)])], -1, undefined));
add("term_variables", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("term_variables"), [new Place(0), new Place(1), "[]"])], -1, undefined));
add("is", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("$EVAL"), [new Place(1), new Place(0)])], -1, undefined));
add("call", 1, new Clause(1, [new Place(-2)], [new Place(0)], -1, undefined));
add("true", 0, new Clause(0, [], [], -1, undefined));
add("!", 0, new Clause(1, [], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add(",", 2, new Clause(4, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_trans_body"), [new Place(0), "nothing", new Place(-2), new Place(-4), new Place(-5)]), new Skeleton(new Cache("sys_trans_body"), [new Place(1), new Place(0), new Place(-2), new Place(3), "[]"]), new Skeleton(new Cache("$SEQ"), [new Place(0), new Place(2)])], -1, undefined));
add(";", 2, new Clause(4, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_trans_alternative"), [new Place(0), "nothing", new Place(-2), new Place(-4), new Place(-5)]), new Skeleton(new Cache("sys_trans_disj"), [new Place(1), new Place(3), new Place(0), new Place(-2), new Place(-5)]), new Skeleton(new Cache("$SEQ"), [new Place(0), new Skeleton(".", [new Skeleton("$ALT", [new Skeleton(".", [new Place(2), new Place(3)])]), "[]"])])], -1, undefined));
add("->", 2, new Clause(5, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_trans_body"), [new Place(0), "nothing", new Place(-2), new Place(-4), new Skeleton(".", [new Skeleton("$CUT", [new Place(-5)]), new Place(-6)])]), new Skeleton(new Cache("sys_trans_body"), [new Place(1), "nothing", new Place(-3), new Place(4), "[]"]), new Skeleton(new Cache("sys_trans_mark"), [new Place(0), new Place(-2), new Place(2)]), new Skeleton(new Cache("$SEQ"), [new Place(1), new Skeleton(".", [new Skeleton("$ALT", [new Skeleton(".", [new Skeleton("$SEQ", [new Skeleton("just", [new Place(3)]), new Place(0)]), "[]"])]), "[]"])])], -1, undefined));
add("\\=", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("="), [new Place(1), new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Cache("fail")], 0, undefined));
add("\\=", 2, new Clause(0, [new Place(-1), new Place(-1)], [], -1, undefined));
add("\\+", 1, new Clause(2, [new Place(-3)], [new Place(1), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Cache("fail")], 0, undefined));
add("\\+", 1, new Clause(0, [new Place(-1)], [], -1, undefined));
add("once", 1, new Clause(2, [new Place(-3)], [new Place(1), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("repeat", 0, new Clause(0, [], [], -1, undefined));
add("repeat", 0, new Clause(0, [], [new Cache("repeat")], -1, undefined));
add("catch", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_trap"), [new Place(0), new Place(-2), new Skeleton("sys_error_handler", [new Place(0), new Place(1), new Place(2)])])], -1, undefined));
add("sys_error_handler", 3, new Clause(1, [new Place(-2), new Place(-1), new Place(-1)], [new Skeleton(new Cache("sys_chain_head"), [new Place(0), new Skeleton("error", [new Skeleton("system_error", [new Place(-1)]), new Place(-1)])]), new Skeleton(new Cache("sys_raise"), [new Place(0)])], -1, undefined));
add("sys_error_handler", 3, new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_chain_head"), [new Place(1), new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Place(3)], 0, undefined));
add("sys_error_handler", 3, new Clause(1, [new Place(-2), new Place(-1), new Place(-1)], [new Skeleton(new Cache("sys_raise"), [new Place(0)])], -1, undefined));
add("sys_chain_head", 2, new Clause(3, [new Skeleton("cause", [new Place(-3), new Place(-1)]), new Place(-4)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(1), new Place(2)])], 0, "cause"));
add("sys_chain_head", 2, new Clause(1, [new Place(-2), new Place(0)], [], -1, undefined));
add("throw", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("sys_fill_stack"), [new Place(0)]), new Skeleton(new Cache("sys_raise"), [new Place(0)])], -1, undefined));
add("sys_fill_stack", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("sys_fill_stack", 1, new Clause(2, [new Skeleton("error", [new Place(-1), new Place(-3)])], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_fetch_stack"), [new Place(1)])], 0, "error"));
add("sys_fill_stack", 1, new Clause(2, [new Skeleton("warning", [new Place(-1), new Place(-3)])], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_fetch_stack"), [new Place(1)])], 0, "warning"));
add("sys_fill_stack", 1, new Clause(0, [new Place(-1)], [], -1, undefined));
add("sys_fetch_stack", 1, new Clause(4, [new Place(-2)], [new Skeleton(new Cache("os_task_current"), [new Place(-3)]), new Skeleton(new Cache("findall"), [new Skeleton("sys_including", [new Place(-4), new Place(-5)]), new Skeleton("sys_including", [new Place(2), new Place(1), new Place(3)]), new Place(0)])], -1, undefined));
add("ignore", 1, new Clause(2, [new Place(-3)], [new Place(1), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("ignore", 1, new Clause(0, [new Place(-1)], [], -1, undefined));
add("chain", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_trap"), [new Place(0), new Place(-2), new Skeleton("sys_chain_error", [new Place(0), new Place(1)])]), new Place(1)], -1, undefined));
add("sys_chain_error", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_trap"), [new Place(1), new Place(-3), new Skeleton("sys_chain_raise", [new Place(0), new Place(1)])]), new Skeleton(new Cache("sys_raise"), [new Place(0)])], -1, undefined));
add("sys_chain_error", 2, new Clause(1, [new Place(-2), new Place(-1)], [new Skeleton(new Cache("sys_raise"), [new Place(0)])], -1, undefined));
add("sys_chain_raise", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_chain_concat"), [new Place(0), new Place(1), new Place(-3)]), new Skeleton(new Cache("sys_raise"), [new Place(1)])], -1, undefined));
add("sys_chain_concat", 3, new Clause(4, [new Skeleton("cause", [new Place(-3), new Place(-4)]), new Place(-5), new Skeleton("cause", [new Place(1), new Place(-3)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_chain_concat"), [new Place(2), new Place(3), new Place(1)])], 0, "cause"));
add("sys_chain_concat", 3, new Clause(2, [new Place(-2), new Place(-3), new Skeleton("cause", [new Place(0), new Place(1)])], [], -1, undefined));
add("abort", 0, new Clause(0, [], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Compound("system_error", ["user_abort"]), new Place(-1)])])], -1, undefined));
add("once_cleanup", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Compound(new Cache("current_prolog_flag"), ["async_mode", "on"]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("shield"), [new Skeleton("sys_once_cleanup", [new Skeleton("unshield", [new Place(1)]), new Place(2)])])], 0, undefined));
add("once_cleanup", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_once_cleanup"), [new Place(0), new Place(1)])], -1, undefined));
add("setup_once_cleanup", 3, new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Compound(new Cache("current_prolog_flag"), ["async_mode", "on"]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("shield"), [new Skeleton("sys_setup_once_cleanup", [new Place(1), new Skeleton("unshield", [new Place(2)]), new Place(3)])])], 0, undefined));
add("setup_once_cleanup", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_setup_once_cleanup"), [new Place(0), new Place(1), new Place(2)])], -1, undefined));
add("sys_setup_once_cleanup", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Place(0), new Skeleton(new Cache("sys_once_cleanup"), [new Place(1), new Place(2)])], -1, undefined));
add("sys_once_cleanup", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("chain"), [new Place(1), new Skeleton("ignore", [new Place(2)])]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_once_cleanup", 2, new Clause(1, [new Place(-1), new Place(-2)], [new Skeleton(new Cache("ignore"), [new Place(0)]), new Cache("fail")], -1, undefined));
add("sys_print_error", 1, new Clause(2, [new Place(-2)], [new Skeleton(new Cache("current_error"), [new Place(-3)]), new Skeleton(new Cache("sys_print_error"), [new Place(0), new Place(1)])], -1, undefined));
add("sys_print_error", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_print_message"), ["exception_unknown", new Place(2)]), new Skeleton(new Cache("writeq"), [new Place(2), new Place(1)]), new Skeleton(new Cache("nl"), [new Place(2)])], 0, undefined));
add("sys_print_error", 2, new Clause(4, [new Skeleton("cause", [new Place(-3), new Place(-4)]), new Place(-5)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_print_error"), [new Place(1), new Place(3)]), new Skeleton(new Cache("sys_print_error"), [new Place(2), new Place(3)])], 0, "cause"));
add("sys_print_error", 2, new Clause(4, [new Skeleton("error", [new Place(-3), new Place(-4)]), new Place(-5)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_print_message"), ["exception_error", new Place(3)]), new Skeleton(new Cache("sys_print_message"), [new Place(1), new Place(3)]), new Skeleton(new Cache("nl"), [new Place(3)]), new Skeleton(new Cache("sys_print_trace"), [new Place(2), new Place(3)])], 0, "error"));
add("sys_print_error", 2, new Clause(4, [new Skeleton("warning", [new Place(-3), new Place(-4)]), new Place(-5)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_print_message"), ["exception_warning", new Place(3)]), new Skeleton(new Cache("sys_print_message"), [new Place(1), new Place(3)]), new Skeleton(new Cache("nl"), [new Place(3)]), new Skeleton(new Cache("sys_print_trace"), [new Place(2), new Place(3)])], 0, "warning"));
add("sys_print_error", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_print_message"), ["exception_unknown", new Place(1)]), new Skeleton(new Cache("writeq"), [new Place(1), new Place(0)]), new Skeleton(new Cache("nl"), [new Place(1)])], -1, undefined));
add("sys_print_trace", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_print_message"), ["exception_context", new Place(2)]), new Skeleton(new Cache("writeq"), [new Place(2), new Place(1)]), new Skeleton(new Cache("nl"), [new Place(2)])], 0, undefined));
add("sys_print_trace", 2, new Clause(4, [new Skeleton(".", [new Place(-3), new Place(-4)]), new Place(-5)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_print_frame"), [new Place(1), new Place(3)]), new Skeleton(new Cache("sys_print_trace"), [new Place(2), new Place(3)])], 0, "."));
add("sys_print_trace", 2, new Clause(1, ["[]", new Place(-1)], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, "[]"));
add("sys_print_trace", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_print_message"), ["exception_context", new Place(1)]), new Skeleton(new Cache("writeq"), [new Place(1), new Place(0)]), new Skeleton(new Cache("nl"), [new Place(1)])], -1, undefined));
add("sys_print_frame", 2, new Clause(4, [new Skeleton("sys_including", [new Place(-3), new Place(-4)]), new Place(-5)], [new Skeleton(new Cache("atom"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("file_base_name"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("stream_property"), [new Place(2), new Skeleton("line_no", [new Place(-4)])]), new Skeleton(new Cache("sys_print_message"), [new Skeleton("file_line", [new Place(1), new Place(2)]), new Place(3)]), new Skeleton(new Cache("nl"), [new Place(3)])], 0, "sys_including"));
add("sys_print_frame", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_print_message"), [new Place(0), new Place(1)]), new Skeleton(new Cache("nl"), [new Place(1)])], -1, undefined));
add("sys_print_message", 1, new Clause(2, [new Place(-2)], [new Skeleton(new Cache("current_error"), [new Place(-3)]), new Skeleton(new Cache("sys_print_message"), [new Place(0), new Place(1)])], -1, undefined));
add("sys_print_message", 2, new Clause(3, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("current_prolog_flag"), ["sys_locale", new Place(-4)]), new Skeleton(new Cache("sys_print_message"), [new Place(0), new Place(1), new Place(2)])], -1, undefined));
add("sys_print_message", 3, new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_print_message"), ["exception_template", new Place(2), new Place(3)]), new Skeleton(new Cache("writeq"), [new Place(2), new Place(1)])], 0, undefined));
add("sys_print_message", 3, new Clause(5, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("=.."), [new Place(1), new Skeleton(".", [new Place(-3), new Place(-6)])]), new Skeleton(new Cache("atom"), [new Place(1)]), new Skeleton(new Cache("get_string"), [new Place(1), new Place(3), new Place(-5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_inter_polate"), [new Place(2), new Place(3), new Place(4)])], 0, undefined));
add("sys_print_message", 3, new Clause(7, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("=.."), [new Place(1), new Skeleton(".", [new Place(-3), new Skeleton(".", [new Place(-6), new Place(-7)])])]), new Skeleton(new Cache("atom"), [new Place(1)]), new Skeleton(new Cache("atom"), [new Place(4)]), new Skeleton(new Cache("atom_split"), [new Place(-8), ".", new Skeleton(".", [new Place(1), new Skeleton(".", [new Place(4), "[]"])])]), new Skeleton(new Cache("get_string"), [new Place(6), new Place(3), new Place(-5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_inter_polate"), [new Place(2), new Place(3), new Place(5)])], 0, undefined));
add("sys_print_message", 3, new Clause(8, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("=.."), [new Place(1), new Skeleton(".", [new Place(-3), new Skeleton(".", [new Place(-6), new Skeleton(".", [new Place(-7), new Place(-8)])])])]), new Skeleton(new Cache("atom"), [new Place(1)]), new Skeleton(new Cache("atom"), [new Place(4)]), new Skeleton(new Cache("atom"), [new Place(5)]), new Skeleton(new Cache("atom_split"), [new Place(-9), ".", new Skeleton(".", [new Place(1), new Skeleton(".", [new Place(4), new Skeleton(".", [new Place(5), "[]"])])])]), new Skeleton(new Cache("get_string"), [new Place(7), new Place(3), new Place(-5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_inter_polate"), [new Place(2), new Place(3), new Place(6)])], 0, undefined));
add("sys_print_message", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_print_message"), ["exception_template", new Place(1), new Place(2)]), new Skeleton(new Cache("writeq"), [new Place(1), new Place(0)])], -1, undefined));
add("sys_inter_polate", 3, new Clause(4, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("atom_split"), [new Place(1), "~", new Skeleton(".", [new Place(-3), new Place(-5)])]), new Skeleton(new Cache("put_atom"), [new Place(0), new Place(1)]), new Skeleton(new Cache("sys_zipper_output"), [new Place(2), new Place(3), new Place(0)])], -1, undefined));
add("sys_zipper_output", 3, new Clause(6, [new Skeleton(".", [new Place(-3), new Place(-4)]), new Skeleton(".", ["", new Skeleton(".", [new Place(-5), new Place(-6)])]), new Place(-7)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("write"), [new Place(5), new Place(1)]), new Skeleton(new Cache("put_atom"), [new Place(5), new Place(3)]), new Skeleton(new Cache("sys_zipper_output"), [new Place(2), new Place(4), new Place(5)])], 0, "."));
add("sys_zipper_output", 3, new Clause(5, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Skeleton(".", [new Place(-4), new Place(-5)]), new Place(-6)], [new Skeleton(new Cache("writeq"), [new Place(4), new Place(0)]), new Skeleton(new Cache("put_atom"), [new Place(4), new Place(2)]), new Skeleton(new Cache("sys_zipper_output"), [new Place(1), new Place(3), new Place(4)])], -1, "."));
add("sys_zipper_output", 3, new Clause(0, ["[]", "[]", new Place(-1)], [], -1, "[]"));
add("get_string", 2, new Clause(3, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("current_prolog_flag"), ["sys_locale", new Place(-4)]), new Skeleton(new Cache("get_string"), [new Place(0), new Place(2), new Place(1)])], -1, undefined));
add("get_string", 3, new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_locale_ancestor"), [new Place(2), new Place(-4)]), new Skeleton(new Cache("strings"), [new Place(1), new Place(2), new Place(-4)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(3), new Place(2)])], 0, undefined));
add("sys_locale_ancestor", 2, new Clause(1, [new Place(-2), new Place(0)], [], -1, undefined));
add("sys_locale_ancestor", 2, new Clause(3, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("last_sub_atom"), [new Place(0), new Place(-4), new Place(-1), new Place(-1), "_"]), new Skeleton(new Cache("sub_atom"), [new Place(0), 0, new Place(2), new Place(-1), new Place(1)])], -1, undefined));
add("sys_locale_ancestor", 2, new Clause(1, [new Place(-2), ""], [new Skeleton(new Cache("\\=="), [new Place(0), ""])], -1, undefined));
add("sys_check_atom", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("sys_check_atom", 1, new Clause(2, [new Place(-3)], [new Skeleton(new Cache("atom"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_check_atom", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["atom", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_check_integer", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("sys_check_integer", 1, new Clause(2, [new Place(-3)], [new Skeleton(new Cache("integer"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_check_integer", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["integer", new Place(0)]), new Place(-1)])])], -1, undefined));
add("call_later", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_frost_horn"), [new Skeleton(":-", [new Skeleton("sys_call_print", [new Place(0)])]), new Place(-2)]), new Skeleton(new Cache("os_call_later"), [new Place(0), new Place(1), new Place(-1)])], -1, undefined));
add("sys_frost_horn", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_trans_horn"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("sys_encode_horn"), [new Place(0), new Place(-2), 0]), new Skeleton(new Cache("sys_host_make"), [new Place(0), new Place(1)])], -1, undefined));
add("sys_call_print", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("sys_trap"), [new Place(0), new Place(-2), new Skeleton("sys_print_error", [new Place(0)])])], -1, undefined));
add("create_task", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("sys_frost_horn"), [new Skeleton(":-", [new Skeleton("sys_call_print", [new Place(0)])]), new Place(-2)]), new Skeleton(new Cache("os_task_create"), [new Place(0), new Place(-1)])], -1, undefined));
add("sleep", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("os_sleep_promise"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("$YIELD"), [new Place(0)])], -1, undefined));
add("time_out", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Compound(new Cache("current_prolog_flag"), ["allow_yield", "on"]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("os_task_current"), [new Place(-2)]), new Skeleton(new Cache("sys_frost_horn"), [new Skeleton(":-", [new Skeleton("sys_timeout", [new Place(0)])]), new Place(-2)]), new Skeleton(new Cache("setup_once_cleanup"), [new Skeleton("os_call_later", [new Place(0), new Place(2), new Place(-4)]), new Place(1), new Skeleton("os_call_cancel", [new Place(2)])])], 0, undefined));
add("time_out", 2, new Clause(0, [new Place(-1), new Place(-1)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Compound("system_error", ["illegal_yield"]), new Place(-1)])])], -1, undefined));
add("sys_timeout", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("os_task_abort"), [new Place(0), new Compound("system_error", ["timelimit_exceeded"])])], -1, undefined));
add("member", 2, new Clause(3, [new Place(-2), new Skeleton(".", [new Place(-3), new Place(-4)])], [new Skeleton(new Cache("sys_member"), [new Place(2), new Place(0), new Place(1)])], -1, undefined));
add("sys_member", 3, new Clause(1, [new Place(-1), new Place(-2), new Place(0)], [], -1, undefined));
add("sys_member", 3, new Clause(3, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Place(-4), new Place(-1)], [new Skeleton(new Cache("sys_member"), [new Place(1), new Place(2), new Place(0)])], -1, "."));
add("select", 3, new Clause(4, [new Place(-2), new Skeleton(".", [new Place(-3), new Place(-4)]), new Place(-5)], [new Skeleton(new Cache("sys_select"), [new Place(2), new Place(0), new Place(1), new Place(3)])], -1, undefined));
add("sys_select", 4, new Clause(2, [new Place(-2), new Place(-3), new Place(1), new Place(0)], [], -1, undefined));
add("sys_select", 4, new Clause(4, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Place(-4), new Place(-5), new Skeleton(".", [new Place(3), new Place(-5)])], [new Skeleton(new Cache("sys_select"), [new Place(1), new Place(2), new Place(0), new Place(3)])], -1, "."));
add("findall", 3, new Clause(5, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("="), [new Place(-5), new Skeleton(".", ["-", new Place(-1)])]), new Skeleton(new Cache("="), [new Place(-6), new Skeleton("v", [new Place(-1)])]), new Skeleton(new Cache("change_arg"), [1, new Place(4), new Place(3)]), new Skeleton(new Cache("sys_findall"), [new Place(4), new Place(0), new Place(1)]), new Skeleton(new Cache("arg"), [2, new Place(3), new Place(2)])], -1, undefined));
add("sys_findall", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Place(2), new Skeleton(new Cache("copy_term"), [new Skeleton(".", [new Place(1), new Place(-1)]), new Place(-3)]), new Skeleton(new Cache("arg"), [1, new Place(0), new Place(-4)]), new Skeleton(new Cache("change_arg"), [2, new Place(2), new Place(1)]), new Skeleton(new Cache("change_arg"), [1, new Place(0), new Place(1)]), new Cache("fail")], -1, undefined));
add("sys_findall", 3, new Clause(1, [new Place(-2), new Place(-1), new Place(-1)], [new Skeleton(new Cache("arg"), [1, new Place(0), new Place(-2)]), new Skeleton(new Cache("change_arg"), [2, new Place(0), "[]"])], -1, undefined));
add("list_to_set", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_list_to_set"), [new Place(0), "[]", new Place(1)])], -1, undefined));
add("sys_list_to_set", 3, new Clause(0, ["[]", new Place(-1), "[]"], [], -1, "[]"));
add("sys_list_to_set", 3, new Clause(5, [new Skeleton(".", [new Place(-3), new Place(-4)]), new Place(-5), new Place(-6)], [new Skeleton(new Cache("member"), [new Place(1), new Place(3)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_list_to_set"), [new Place(2), new Place(3), new Place(4)])], 0, "."));
add("sys_list_to_set", 3, new Clause(4, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Place(-4), new Skeleton(".", [new Place(0), new Place(-5)])], [new Skeleton(new Cache("sys_list_to_set"), [new Place(1), new Skeleton(".", [new Place(0), new Place(2)]), new Place(3)])], -1, "."));
add("reverse", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_reverse"), [new Place(0), "[]", new Place(1)])], -1, undefined));
add("sys_reverse", 3, new Clause(1, ["[]", new Place(-2), new Place(0)], [], -1, "[]"));
add("sys_reverse", 3, new Clause(4, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_reverse"), [new Place(1), new Skeleton(".", [new Place(0), new Place(2)]), new Place(3)])], -1, "."));
add("append", 3, new Clause(1, ["[]", new Place(-2), new Place(0)], [], -1, "[]"));
add("append", 3, new Clause(3, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Place(-4), new Skeleton(".", [new Place(0), new Place(-2)])], [new Skeleton(new Cache("append"), [new Place(1), new Place(2), new Place(0)])], -1, "."));
add("length", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("var"), [new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_length"), [new Place(1), 0, new Place(2)])], 0, undefined));
add("length", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_check_integer"), [new Place(1)]), new Skeleton(new Cache(">="), [new Place(1), 0]), new Skeleton(new Cache("sys_length"), [new Place(1), new Place(0)])], -1, undefined));
add("sys_length", 3, new Clause(1, ["[]", new Place(-2), new Place(0)], [], -1, "[]"));
add("sys_length", 3, new Clause(3, [new Skeleton(".", [new Place(-1), new Place(-2)]), new Place(-3), new Place(-4)], [new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("+"), [new Place(1), 1]), new Place(-3)]), new Skeleton(new Cache("sys_length"), [new Place(0), new Place(1), new Place(2)])], -1, "."));
add("sys_length", 2, new Clause(2, [0, new Place(-3)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(1), "[]"])], 0, 0));
add("sys_length", 2, new Clause(2, [new Place(-2), new Skeleton(".", [new Place(-1), new Place(-3)])], [new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), 1]), new Place(-2)]), new Skeleton(new Cache("sys_length"), [new Place(0), new Place(1)])], -1, undefined));
add("number_codes", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("ground"), [new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_codes"), [new Place(-2), new Place(2)]), new Skeleton(new Cache("atom_number"), [new Place(0), new Place(1)])], 0, undefined));
add("number_codes", 2, new Clause(3, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("atom_number"), [new Place(-4), new Place(0)]), new Skeleton(new Cache("atom_codes"), [new Place(2), new Place(1)])], -1, undefined));
add("between", 3, new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("var"), [new Place(3)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_check_integer"), [new Place(1)]), new Skeleton(new Cache("sys_check_integer"), [new Place(2)]), new Skeleton(new Cache("=<"), [new Place(1), new Place(2)]), new Skeleton(new Cache("sys_between"), [new Place(1), new Place(2), new Place(3)])], 0, undefined));
add("between", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_check_integer"), [new Place(0)]), new Skeleton(new Cache("sys_check_integer"), [new Place(1)]), new Skeleton(new Cache("sys_check_integer"), [new Place(2)]), new Skeleton(new Cache("=<"), [new Place(0), new Place(2)]), new Skeleton(new Cache("=<"), [new Place(2), new Place(1)])], -1, undefined));
add("sys_between", 3, new Clause(2, [new Place(-3), new Place(1), new Place(1)], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_between", 3, new Clause(1, [new Place(-2), new Place(-1), new Place(0)], [], -1, undefined));
add("sys_between", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("+"), [new Place(0), 1]), new Place(-2)]), new Skeleton(new Cache("sys_between"), [new Place(0), new Place(1), new Place(2)])], -1, undefined));
run(new Goal(0, [new Compound(new Cache("kb_pred_touch"), ["sys_lastpred", 3, 1])]));
add("sys_update_last", 2, new Clause(3, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("os_task_current"), [new Place(-4)]), new Skeleton(new Cache("retractall"), [new Skeleton("sys_lastpred", [new Place(2), new Place(-1), new Place(-1)])]), new Skeleton(new Cache("assertz"), [new Skeleton("sys_lastpred", [new Place(2), new Place(0), new Place(1)])])], -1, undefined));
add("sys_style_static", 1, new Clause(2, [new Place(-3)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_style_static", 1, new Clause(1, [new Skeleton(":-", [new Place(-1)])], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, ":-"));
add("sys_style_static", 1, new Clause(2, [new Skeleton(":-", [new Place(-3), new Place(-1)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_style_head"), [new Place(1)])], 0, ":-"));
add("sys_style_static", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("sys_style_head"), [new Place(0)])], -1, undefined));
add("sys_style_head", 1, new Clause(2, [new Place(-3)], [new Skeleton(new Cache("callable"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("functor"), [new Place(1), new Place(-3), new Place(-2)]), new Skeleton(new Cache("sys_style_indicator"), [new Place(1), new Place(0)])], 0, undefined));
add("sys_style_head", 1, new Clause(0, [new Place(-1)], [], -1, undefined));
add("sys_style_indicator", 2, new Clause(4, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("os_task_current"), [new Place(-5)]), new Skeleton(new Cache("sys_lastpred"), [new Place(3), new Place(1), new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_style_indicator", 2, new Clause(4, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("dg_get_partition"), [new Place(-5)]), new Skeleton(new Cache("sys_predprop"), [new Place(1), new Place(2), new Skeleton("sys_usage", [new Place(3)])]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(make_defined([new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_predprop"), [new Place(1), new Place(2), new Skeleton("sys_discontiguous", [new Place(3)])]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined), new Clause(3, [new Place(-2), new Place(-3), new Place(-1)], [new Skeleton(new Cache("="), [new Place(-4), new Skeleton("warning", [new Skeleton("syntax_error", ["discontiguous_pred", new Skeleton("\/", [new Place(0), new Place(1)])]), new Place(-1)])]), new Skeleton(new Cache("sys_fill_stack"), [new Place(2)]), new Skeleton(new Cache("sys_print_error"), [new Place(2)])], -1, undefined)]), [new Place(1), new Place(2), new Place(3)]), new Skeleton(new Cache("sys_update_last"), [new Place(1), new Place(2)])], 0, undefined));
add("sys_style_indicator", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_usage_predicate"), [new Place(0), new Place(1)]), new Skeleton(new Cache("sys_update_last"), [new Place(0), new Place(1)])], -1, undefined));
add("sys_usage_predicate", 2, new Clause(3, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("dg_get_partition"), [new Place(-4)]), new Skeleton(make_defined([new Clause(5, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("\\+"), [new Skeleton("sys_predprop", [new Place(1), new Place(2), new Skeleton("sys_multifile", [new Place(3)])])]), new Skeleton(new Cache("sys_predprop"), [new Place(1), new Place(2), new Skeleton("sys_usage", [new Place(-6)])]), new Skeleton(new Cache("\\=="), [new Place(3), new Place(4)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("permission_error", ["redefine", "procedure", new Skeleton("\/", [new Place(1), new Place(2)])]), new Place(-1)])])], 0, undefined), new Clause(0, [new Place(-1), new Place(-1), new Place(-1)], [], -1, undefined)]), [new Place(0), new Place(1), new Place(2)]), new Skeleton(new Cache("assertz"), [new Skeleton("sys_predprop", [new Place(0), new Place(1), new Skeleton("sys_usage", [new Place(2)])])])], -1, undefined));
add("discontiguous", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("discontiguous", 1, new Clause(3, [new Skeleton("\/", [new Place(-3), new Place(-4)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_check_atom"), [new Place(1)]), new Skeleton(new Cache("sys_check_integer"), [new Place(2)]), new Skeleton(new Cache("dg_get_partition"), [new Place(-2)]), new Skeleton(new Cache("assertz"), [new Skeleton("sys_predprop", [new Place(1), new Place(2), new Skeleton("sys_discontiguous", [new Place(0)])])])], 0, "\/"));
add("discontiguous", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["predicate_indicator", new Place(0)]), new Place(-1)])])], -1, undefined));
add("multifile", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("multifile", 1, new Clause(3, [new Skeleton("\/", [new Place(-3), new Place(-4)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_check_atom"), [new Place(1)]), new Skeleton(new Cache("sys_check_integer"), [new Place(2)]), new Skeleton(new Cache("sys_multifile_safe"), [new Place(1), new Place(2)])], 0, "\/"));
add("multifile", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["predicate_indicator", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_multifile_safe", 2, new Clause(3, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("dg_get_partition"), [new Place(-4)]), new Skeleton(make_defined([new Clause(5, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_predprop"), [new Place(1), new Place(2), new Skeleton("sys_usage", [new Place(-6)])]), new Skeleton(new Cache("\\=="), [new Place(3), new Place(4)]), new Skeleton(new Cache("\\+"), [new Skeleton("sys_predprop", [new Place(1), new Place(2), new Skeleton("sys_multifile", [new Place(4)])])]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("permission_error", ["promote", "multifile", new Skeleton("\/", [new Place(1), new Place(2)])]), new Place(-1)])])], 0, undefined), new Clause(0, [new Place(-1), new Place(-1), new Place(-1)], [], -1, undefined)]), [new Place(0), new Place(1), new Place(2)]), new Skeleton(new Cache("assertz"), [new Skeleton("sys_predprop", [new Place(0), new Place(1), new Skeleton("sys_multifile", [new Place(2)])])])], -1, undefined));
run(new Goal(0, [new Compound(new Cache("kb_pred_touch"), ["sys_source", 3, 1])]));
run(new Goal(0, [new Compound(new Cache("kb_pred_touch"), ["sys_srcprop", 2, 1])]));
add("current_source", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("sys_source"), [new Place(0), new Place(-1), new Place(-1)])], -1, undefined));
add("source_property", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_srcprop"), [new Place(0), new Place(1)])], -1, undefined));
run(new Goal(0, [new Compound(new Cache("kb_pred_touch"), ["sys_emulated", 2, 1])]));
add("sys_emulated", 2, new Clause(0, ["dialect", "dogelog"], [], -1, "dialect"));
add("sys_emulated", 2, new Clause(0, ["emulator_url", ""], [], -1, "emulator_url"));
add("sys_emulated", 2, new Clause(0, ["argv", "[]"], [], -1, "argv"));
add("sys_emulated", 2, new Clause(0, ["sys_locale", "en_GB"], [], -1, "sys_locale"));
add("set_prolog_flag", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_check_atom"), [new Place(1)]), new Skeleton(new Cache("sys_prolog_flag_set"), [new Place(1), new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("set_prolog_flag", 2, new Clause(1, [new Place(-2), new Place(-1)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("domain_error", ["prolog_flag", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_prolog_flag_set", 2, new Clause(1, ["double_quotes", new Place(-2)], [new Skeleton(new Cache("sys_check_atom"), [new Place(0)]), new Skeleton(new Cache("sys_check_codes"), [new Place(0)])], -1, "double_quotes"));
add("sys_prolog_flag_set", 2, new Clause(1, ["base_url", new Place(-2)], [new Skeleton(new Cache("os_set_workdir"), [new Place(0)])], -1, "base_url"));
add("sys_prolog_flag_set", 2, new Clause(1, ["stage", new Place(-2)], [new Skeleton(new Cache("dg_set_stage"), [new Place(0)])], -1, "stage"));
add("sys_prolog_flag_set", 2, new Clause(1, ["partition", new Place(-2)], [new Skeleton(new Cache("dg_set_partition"), [new Place(0)])], -1, "partition"));
add("sys_prolog_flag_set", 2, new Clause(1, ["dialect", new Place(-2)], [new Skeleton(new Cache("sys_check_atom"), [new Place(0)]), new Skeleton(new Cache("retractall"), [new Skeleton("sys_emulated", ["dialect", new Place(-1)])]), new Skeleton(new Cache("assertz"), [new Skeleton("sys_emulated", ["dialect", new Place(0)])])], -1, "dialect"));
add("sys_prolog_flag_set", 2, new Clause(1, ["emulator_url", new Place(-2)], [new Skeleton(new Cache("sys_check_atom"), [new Place(0)]), new Skeleton(new Cache("retractall"), [new Skeleton("sys_emulated", ["emulator_url", new Place(-1)])]), new Skeleton(new Cache("assertz"), [new Skeleton("sys_emulated", ["emulator_url", new Place(0)])])], -1, "emulator_url"));
add("sys_prolog_flag_set", 2, new Clause(1, ["argv", new Place(-2)], [new Skeleton(new Cache("retractall"), [new Skeleton("sys_emulated", ["argv", new Place(-1)])]), new Skeleton(new Cache("assertz"), [new Skeleton("sys_emulated", ["argv", new Place(0)])])], -1, "argv"));
add("sys_prolog_flag_set", 2, new Clause(1, ["sys_locale", new Place(-2)], [new Skeleton(new Cache("sys_check_atom"), [new Place(0)]), new Skeleton(new Cache("retractall"), [new Skeleton("sys_emulated", ["sys_locale", new Place(-1)])]), new Skeleton(new Cache("assertz"), [new Skeleton("sys_emulated", ["sys_locale", new Place(0)])])], -1, "sys_locale"));
add("sys_check_codes", 1, new Clause(1, ["codes"], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, "codes"));
add("sys_check_codes", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("domain_error", ["flag_value", new Place(0)]), new Place(-1)])])], -1, undefined));
add("current_prolog_flag", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_prolog_flag_get"), [new Place(1), new Place(2)])], 0, undefined));
add("current_prolog_flag", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_check_atom"), [new Place(1)]), new Skeleton(new Cache("sys_prolog_flag_get"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(2), new Place(1)])], 0, undefined));
add("current_prolog_flag", 2, new Clause(1, [new Place(-2), new Place(-1)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("domain_error", ["prolog_flag", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_prolog_flag_get", 2, new Clause(0, ["max_code", 1114111], [], -1, "max_code"));
add("sys_prolog_flag_get", 2, new Clause(1, ["dialect", new Place(-2)], [new Skeleton(new Cache("sys_emulated"), ["dialect", new Place(0)])], -1, "dialect"));
add("sys_prolog_flag_get", 2, new Clause(1, ["emulator_url", new Place(-2)], [new Skeleton(new Cache("sys_emulated"), ["emulator_url", new Place(0)])], -1, "emulator_url"));
add("sys_prolog_flag_get", 2, new Clause(1, ["argv", new Place(-2)], [new Skeleton(new Cache("sys_emulated"), ["argv", new Place(0)])], -1, "argv"));
add("sys_prolog_flag_get", 2, new Clause(1, ["sys_locale", new Place(-2)], [new Skeleton(new Cache("sys_emulated"), ["sys_locale", new Place(0)])], -1, "sys_locale"));
add("sys_prolog_flag_get", 2, new Clause(0, ["single_quotes", "atom"], [], -1, "single_quotes"));
add("sys_prolog_flag_get", 2, new Clause(0, ["double_quotes", "codes"], [], -1, "double_quotes"));
add("sys_prolog_flag_get", 2, new Clause(0, ["back_quotes", "variable"], [], -1, "back_quotes"));
add("sys_prolog_flag_get", 2, new Clause(0, ["version", 10200], [], -1, "version"));
add("sys_prolog_flag_get", 2, new Clause(0, ["version_data", new Compound("dogelog", [1, 2, 0, new Compound(".", [new Compound("date", [1713912157538n]), "[]"])])], [], -1, "version_data"));
add("sys_prolog_flag_get", 2, new Clause(0, ["iso", "false"], [], -1, "iso"));
add("sys_prolog_flag_get", 2, new Clause(0, ["max_arity", 2147483647n], [], -1, "max_arity"));
add("sys_prolog_flag_get", 2, new Clause(1, ["stage", new Place(-2)], [new Skeleton(new Cache("dg_get_stage"), [new Place(0)])], -1, "stage"));
add("sys_prolog_flag_get", 2, new Clause(1, ["partition", new Place(-2)], [new Skeleton(new Cache("dg_get_partition"), [new Place(0)])], -1, "partition"));
add("sys_prolog_flag_get", 2, new Clause(2, ["async_mode", new Place(-2)], [new Skeleton(new Cache("dg_gc_flags"), [new Place(-3)]), new Skeleton(new Cache("sys_prolog_flag_decode"), [new Place(1), 1, new Place(0)])], -1, "async_mode"));
add("sys_prolog_flag_get", 2, new Clause(2, ["allow_yield", new Place(-2)], [new Skeleton(new Cache("dg_gc_flags"), [new Place(-3)]), new Skeleton(new Cache("sys_prolog_flag_decode"), [new Place(1), 8, new Place(0)])], -1, "allow_yield"));
add("sys_prolog_flag_get", 2, new Clause(1, ["base_url", new Place(-2)], [new Skeleton(new Cache("os_get_workdir"), [new Place(0)])], -1, "base_url"));
add("sys_prolog_flag_get", 2, new Clause(1, ["system_url", new Place(-2)], [new Skeleton(new Cache("os_get_libpath"), [new Place(0)])], -1, "system_url"));
add("sys_prolog_flag_get", 2, new Clause(1, ["foreign_ext", new Place(-2)], [new Skeleton(new Cache("os_get_natext"), [new Place(0)])], -1, "foreign_ext"));
add("sys_prolog_flag_get", 2, new Clause(1, ["host_info", new Place(-2)], [new Skeleton(new Cache("os_host_info"), [new Place(0)])], -1, "host_info"));
add("sys_prolog_flag_get", 2, new Clause(2, ["import_async", new Place(-2)], [new Skeleton(new Cache("dg_gc_flags"), [new Place(-3)]), new Skeleton(new Cache("sys_prolog_flag_decode"), [new Place(1), 16, new Place(0)])], -1, "import_async"));
add("sys_prolog_flag_get", 2, new Clause(2, ["prop_async", new Place(-2)], [new Skeleton(new Cache("dg_gc_flags"), [new Place(-3)]), new Skeleton(new Cache("sys_prolog_flag_decode"), [new Place(1), 32, new Place(0)])], -1, "prop_async"));
add("sys_prolog_flag_get", 2, new Clause(2, ["read_async", new Place(-2)], [new Skeleton(new Cache("dg_gc_flags"), [new Place(-3)]), new Skeleton(new Cache("sys_prolog_flag_decode"), [new Place(1), 64, new Place(0)])], -1, "read_async"));
add("sys_prolog_flag_decode", 3, new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("=\\="), [new Skeleton(new Cache("\/\\"), [new Place(1), new Place(2)]), 0]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(3), "on"])], 0, undefined));
add("sys_prolog_flag_decode", 3, new Clause(0, [new Place(-1), new Place(-1), "off"], [], -1, undefined));
add("statistics", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_stat_get"), [new Place(1), new Place(2)])], 0, undefined));
add("statistics", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_check_atom"), [new Place(1)]), new Skeleton(new Cache("sys_stat_get"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(2), new Place(1)])], 0, undefined));
add("statistics", 2, new Clause(1, [new Place(-2), new Place(-1)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("domain_error", ["prolog_flag", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_stat_get", 2, new Clause(1, ["gctime", new Place(-2)], [new Skeleton(new Cache("dg_gc_time"), [new Place(0)])], -1, "gctime"));
add("sys_stat_get", 2, new Clause(1, ["calls", new Place(-2)], [new Skeleton(new Cache("dg_call_count"), [new Place(0)])], -1, "calls"));
add("sys_stat_get", 2, new Clause(1, ["time", new Place(-2)], [new Skeleton(new Cache("dg_real_time"), [new Place(0)])], -1, "time"));
add("sys_stat_get", 2, new Clause(1, ["wall", new Place(-2)], [new Skeleton(new Cache("dg_date_now"), [new Place(0)])], -1, "wall"));
add("statistics", 0, new Clause(3, [], [new Skeleton(new Cache("statistics"), [new Place(-2), new Place(-3)]), new Skeleton(new Cache("current_output"), [new Place(-4)]), new Skeleton(new Cache("sys_convert_stat"), [new Place(0), new Place(1), new Place(-3)]), new Skeleton(new Cache("sys_print_message"), [new Skeleton("statistics", [new Place(0), new Place(1)]), new Place(2)]), new Cache("nl"), new Cache("fail")], -1, undefined));
add("statistics", 0, new Clause(0, [], [], -1, undefined));
add("sys_convert_stat", 3, new Clause(3, ["wall", new Place(-3), new Place(-4)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("get_string"), ["format.datetime", new Place(-2)]), new Skeleton(new Cache("sys_time_atom"), [new Place(0), new Place(1), new Place(2)])], 0, "wall"));
add("sys_convert_stat", 3, new Clause(1, [new Place(-1), new Place(-2), new Place(0)], [], -1, undefined));
add("time", 1, new Clause(2, [new Place(-2)], [new Skeleton(new Cache("="), [new Place(-3), new Skeleton("v", [new Place(-1), new Place(-1), new Place(-1)])]), new Skeleton(new Cache("try_call_finally"), [new Skeleton("sys_time_set", [new Place(1)]), new Place(0), new Skeleton("sys_time_show", [new Place(1)])])], -1, undefined));
add("sys_time_set", 1, new Clause(4, [new Place(-2)], [new Skeleton(new Cache("statistics"), ["time", new Place(-3)]), new Skeleton(new Cache("statistics"), ["gctime", new Place(-4)]), new Skeleton(new Cache("statistics"), ["calls", new Place(-5)]), new Skeleton(new Cache("change_arg"), [1, new Place(0), new Place(1)]), new Skeleton(new Cache("change_arg"), [2, new Place(0), new Place(2)]), new Skeleton(new Cache("change_arg"), [3, new Place(0), new Place(3)])], -1, undefined));
add("sys_time_show", 1, new Clause(7, [new Place(-2)], [new Skeleton(new Cache("arg"), [1, new Place(0), new Place(-3)]), new Skeleton(new Cache("arg"), [2, new Place(0), new Place(-4)]), new Skeleton(new Cache("arg"), [3, new Place(0), new Place(-2)]), new Skeleton(new Cache("statistics"), ["time", new Place(-5)]), new Skeleton(new Cache("statistics"), ["gctime", new Place(-6)]), new Skeleton(new Cache("statistics"), ["calls", new Place(-7)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(3), new Place(1)]), new Place(-3)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(4), new Place(2)]), new Place(-4)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(5), new Place(0)]), new Place(-2)]), new Skeleton(make_defined([new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("=\\="), [new Place(1), 0]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("truncate"), [new Skeleton(new Cache("\/"), [new Skeleton(new Cache("*"), [new Place(3), 1000]), new Place(1)])]), new Place(2)])], 0, undefined), new Clause(1, [new Place(-1), new Place(-2), new Place(-1)], [new Skeleton(new Cache("="), [new Place(0), 0])], -1, undefined)]), [new Place(1), new Place(-7), new Place(0)]), new Skeleton(new Cache("statistics"), ["wall", new Place(-2)]), new Skeleton(new Cache("current_output"), [new Place(-6)]), new Skeleton(new Cache("member"), [new Skeleton("-", [new Place(-5), new Place(-8)]), new Skeleton(".", [new Skeleton("-", ["time", new Place(1)]), new Skeleton(".", [new Skeleton("-", ["gctime", new Place(2)]), new Skeleton(".", [new Skeleton("-", ["lips", new Place(5)]), new Skeleton(".", [new Skeleton("-", ["wall", new Place(0)]), "[]"])])])])]), new Skeleton(new Cache("sys_convert_stat"), [new Place(3), new Place(6), new Place(-8)]), new Skeleton(new Cache("sys_print_message"), [new Skeleton("time", [new Place(3), new Place(6)]), new Place(4)]), new Cache("fail")], -1, undefined));
add("sys_time_show", 1, new Clause(0, [new Place(-1)], [new Cache("nl")], -1, undefined));
add("try_call_finally", 3, new Clause(5, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(make_defined([new Clause(1, [new Place(-2), new Place(-1)], [new Place(0)], -1, undefined), new Clause(1, [new Place(-1), new Place(-2)], [new Place(0), new Cache("fail")], -1, undefined)]), [new Place(1), new Place(3)]), new Skeleton(new Cache("$MARK"), [new Place(-6)]), new Skeleton(new Cache("sys_trap"), [new Place(2), new Place(-4), new Skeleton(",", [new Place(3), new Skeleton("sys_raise", [new Place(2)])])]), new Skeleton(new Cache("$MARK"), [new Place(-4)]), new Skeleton(make_defined([new Clause(5, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-1)], [new Skeleton(new Cache("=="), [new Place(1), new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("$CUT"), [new Place(3)]), new Place(4)], 0, undefined), new Clause(1, [new Place(-1), new Place(-1), new Place(-1), new Place(-2), new Place(-1)], [new Place(0)], -1, undefined), new Clause(1, [new Place(-1), new Place(-1), new Place(-1), new Place(-1), new Place(-2)], [new Place(0), new Cache("fail")], -1, undefined)]), [new Place(4), new Place(2), new Place(0), new Place(3), new Place(1)])], 0, undefined));
add("sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(2)]), new Skeleton(new Cache("var"), [new Place(3)]), new Skeleton(new Cache("var"), [new Place(4)]), new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("between"), [0, new Place(0), new Place(2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(2)]), new Place(-2)]), new Skeleton(new Cache("between"), [0, new Place(0), new Place(3)]), new Skeleton(new Cache("sys_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(3)]), new Place(4)])], 0, undefined));
add("sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(2)]), new Skeleton(new Cache("var"), [new Place(4)]), new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("sys_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0), new Place(2)]), new Place(3)]), new Place(4)])], 0, undefined));
add("sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(2)]), new Skeleton(new Cache("var"), [new Place(4)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(5), new Place(3)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("sys_atom_match"), [new Place(1), new Place(5), new Place(2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0), new Place(2)]), new Place(3)]), new Place(4)])], 0, undefined));
add("sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(2)]), new Skeleton(new Cache("var"), [new Place(3)]), new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("=<"), [0, new Place(4)]), new Skeleton(new Cache("=<"), [new Place(4), new Place(0)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(4)]), new Place(-6)]), new Skeleton(new Cache("between"), [0, new Place(4), new Place(2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(4), new Place(2)]), new Place(3)]), new Skeleton(new Cache("sys_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)])], 0, undefined));
add("sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(2)]), new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0), new Place(4)]), new Place(3)]), new Place(2)]), new Skeleton(new Cache("sys_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)])], 0, undefined));
add("sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(3)]), new Skeleton(new Cache("var"), [new Place(4)]), new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("=<"), [0, new Place(2)]), new Skeleton(new Cache("=<"), [new Place(2), new Place(0)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(2)]), new Place(-2)]), new Skeleton(new Cache("between"), [0, new Place(0), new Place(3)]), new Skeleton(new Cache("sys_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(3)]), new Place(4)])], 0, undefined));
add("sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(4)]), new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0), new Place(2)]), new Place(3)]), new Place(4)]), new Skeleton(new Cache("sys_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)])], 0, undefined));
add("sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0), new Place(4)]), new Place(2)]), new Place(3)]), new Skeleton(new Cache("sys_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)])], 0, undefined));
add("sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(4)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(5), new Place(3)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0), new Place(2)]), new Place(3)]), new Place(4)]), new Skeleton(new Cache("sys_atom_match"), [new Place(1), new Place(5), new Place(2)])], 0, undefined));
add("sub_atom", 5, new Clause(6, [new Place(-2), new Place(-3), new Place(-4), new Place(-5), new Place(-6)], [new Skeleton(new Cache("atom_length"), [new Place(4), new Place(2)]), new Skeleton(new Cache("atom_length"), [new Place(0), new Place(-7)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(5), new Place(3)]), new Place(2)]), new Place(1)]), new Skeleton(new Cache("sys_atom_match"), [new Place(0), new Place(4), new Place(1)])], -1, undefined));
add("last_sub_atom", 5, new Clause(7, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(2)]), new Skeleton(new Cache("var"), [new Place(3)]), new Skeleton(new Cache("var"), [new Place(4)]), new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("between"), [0, new Place(0), new Place(-8)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(6)]), new Place(2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(2)]), new Place(-2)]), new Skeleton(new Cache("between"), [0, new Place(0), new Place(-8)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(6)]), new Place(3)]), new Skeleton(new Cache("sys_last_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(3)]), new Place(4)])], 0, undefined));
add("last_sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(2)]), new Skeleton(new Cache("var"), [new Place(4)]), new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("sys_last_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0), new Place(2)]), new Place(3)]), new Place(4)])], 0, undefined));
add("last_sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(2)]), new Skeleton(new Cache("var"), [new Place(4)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(5), new Place(3)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("sys_last_atom_match"), [new Place(1), new Place(5), new Place(2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0), new Place(2)]), new Place(3)]), new Place(4)])], 0, undefined));
add("last_sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(2)]), new Skeleton(new Cache("var"), [new Place(3)]), new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("=<"), [0, new Place(4)]), new Skeleton(new Cache("=<"), [new Place(4), new Place(0)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(4)]), new Place(-6)]), new Skeleton(new Cache("between"), [0, new Place(4), new Place(-2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(4), new Place(0)]), new Place(2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(4), new Place(2)]), new Place(3)]), new Skeleton(new Cache("sys_last_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)])], 0, undefined));
add("last_sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(2)]), new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0), new Place(4)]), new Place(3)]), new Place(2)]), new Skeleton(new Cache("sys_last_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)])], 0, undefined));
add("last_sub_atom", 5, new Clause(7, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(3)]), new Skeleton(new Cache("var"), [new Place(4)]), new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("=<"), [0, new Place(2)]), new Skeleton(new Cache("=<"), [new Place(2), new Place(0)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(2)]), new Place(-2)]), new Skeleton(new Cache("between"), [0, new Place(0), new Place(-8)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(6)]), new Place(3)]), new Skeleton(new Cache("sys_last_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Place(0), new Place(3)]), new Place(4)])], 0, undefined));
add("last_sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(4)]), new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0), new Place(2)]), new Place(3)]), new Place(4)]), new Skeleton(new Cache("sys_last_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)])], 0, undefined));
add("last_sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0), new Place(4)]), new Place(2)]), new Place(3)]), new Skeleton(new Cache("sys_last_atom_part"), [new Place(1), new Place(2), new Place(3), new Place(5)])], 0, undefined));
add("last_sub_atom", 5, new Clause(6, [new Place(-3), new Place(-4), new Place(-5), new Place(-6), new Place(-7)], [new Skeleton(new Cache("var"), [new Place(4)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("atom_length"), [new Place(5), new Place(3)]), new Skeleton(new Cache("atom_length"), [new Place(1), new Place(-2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0), new Place(2)]), new Place(3)]), new Place(4)]), new Skeleton(new Cache("sys_last_atom_match"), [new Place(1), new Place(5), new Place(2)])], 0, undefined));
add("last_sub_atom", 5, new Clause(6, [new Place(-2), new Place(-3), new Place(-4), new Place(-5), new Place(-6)], [new Skeleton(new Cache("atom_length"), [new Place(4), new Place(2)]), new Skeleton(new Cache("atom_length"), [new Place(0), new Place(-7)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(5), new Place(3)]), new Place(2)]), new Place(1)]), new Skeleton(new Cache("sys_last_atom_match"), [new Place(0), new Place(4), new Place(1)])], -1, undefined));
run(new Goal(0, [new Compound(new Cache("kb_pred_touch"), ["sys_op", 5, 1])]));
add("sys_op", 5, new Clause(0, [":-", "fx", 1200, 12, "system"], [], -1, ":-"));
add("sys_op", 5, new Clause(0, [":-", "xfx", 1200, 12, "system"], [], -1, ":-"));
add("sys_op", 5, new Clause(0, ["?-", "fx", 1200, 12, "system"], [], -1, "?-"));
add("sys_op", 5, new Clause(0, ["-->", "xfx", 1200, 12, "system"], [], -1, "-->"));
add("sys_op", 5, new Clause(0, ["dynamic", "fx", 1150, 12, "system"], [], -1, "dynamic"));
add("sys_op", 5, new Clause(0, ["discontiguous", "fx", 1150, 12, "system"], [], -1, "discontiguous"));
add("sys_op", 5, new Clause(0, ["multifile", "fx", 1150, 12, "system"], [], -1, "multifile"));
add("sys_op", 5, new Clause(0, ["initialization", "fx", 1150, 12, "system"], [], -1, "initialization"));
add("sys_op", 5, new Clause(0, [";", "xfy", 1100, 10, "system"], [], -1, ";"));
add("sys_op", 5, new Clause(0, ["->", "xfy", 1050, 8, "system"], [], -1, "->"));
add("sys_op", 5, new Clause(0, [",", "xfy", 1000, 6, "system"], [], -1, ","));
add("sys_op", 5, new Clause(0, ["\\+", "fy", 900, 0, "system"], [], -1, "\\+"));
add("sys_op", 5, new Clause(0, ["is", "xfx", 700, 0, "system"], [], -1, "is"));
add("sys_op", 5, new Clause(0, ["=", "xfx", 700, 0, "system"], [], -1, "="));
add("sys_op", 5, new Clause(0, ["\\=", "xfx", 700, 0, "system"], [], -1, "\\="));
add("sys_op", 5, new Clause(0, ["=..", "xfx", 700, 0, "system"], [], -1, "=.."));
add("sys_op", 5, new Clause(0, ["<", "xfx", 700, 0, "system"], [], -1, "<"));
add("sys_op", 5, new Clause(0, ["=<", "xfx", 700, 0, "system"], [], -1, "=<"));
add("sys_op", 5, new Clause(0, ["=\\=", "xfx", 700, 0, "system"], [], -1, "=\\="));
add("sys_op", 5, new Clause(0, [">=", "xfx", 700, 0, "system"], [], -1, ">="));
add("sys_op", 5, new Clause(0, [">", "xfx", 700, 0, "system"], [], -1, ">"));
add("sys_op", 5, new Clause(0, ["=:=", "xfx", 700, 0, "system"], [], -1, "=:="));
add("sys_op", 5, new Clause(0, ["@<", "xfx", 700, 0, "system"], [], -1, "@<"));
add("sys_op", 5, new Clause(0, ["@=<", "xfx", 700, 0, "system"], [], -1, "@=<"));
add("sys_op", 5, new Clause(0, ["\\==", "xfx", 700, 0, "system"], [], -1, "\\=="));
add("sys_op", 5, new Clause(0, ["@>=", "xfx", 700, 0, "system"], [], -1, "@>="));
add("sys_op", 5, new Clause(0, ["@>", "xfx", 700, 0, "system"], [], -1, "@>"));
add("sys_op", 5, new Clause(0, ["==", "xfx", 700, 0, "system"], [], -1, "=="));
add("sys_op", 5, new Clause(0, [":", "xfy", 600, 3, "system"], [], -1, ":"));
add("sys_op", 5, new Clause(0, ["+", "yfx", 500, 3, "system"], [], -1, "+"));
add("sys_op", 5, new Clause(0, ["-", "yfx", 500, 3, "system"], [], -1, "-"));
add("sys_op", 5, new Clause(0, ["\/\\", "yfx", 500, 3, "system"], [], -1, "\/\\"));
add("sys_op", 5, new Clause(0, ["\\\/", "yfx", 500, 3, "system"], [], -1, "\\\/"));
add("sys_op", 5, new Clause(0, ["*", "yfx", 400, 3, "system"], [], -1, "*"));
add("sys_op", 5, new Clause(0, ["\/", "yfx", 400, 3, "system"], [], -1, "\/"));
add("sys_op", 5, new Clause(0, ["\/\/", "yfx", 400, 3, "system"], [], -1, "\/\/"));
add("sys_op", 5, new Clause(0, ["rem", "yfx", 400, 3, "system"], [], -1, "rem"));
add("sys_op", 5, new Clause(0, ["div", "yfx", 400, 3, "system"], [], -1, "div"));
add("sys_op", 5, new Clause(0, ["mod", "yfx", 400, 3, "system"], [], -1, "mod"));
add("sys_op", 5, new Clause(0, ["xor", "yfx", 400, 3, "system"], [], -1, "xor"));
add("sys_op", 5, new Clause(0, [">>", "yfx", 400, 3, "system"], [], -1, ">>"));
add("sys_op", 5, new Clause(0, ["<<", "yfx", 400, 3, "system"], [], -1, "<<"));
add("sys_op", 5, new Clause(0, ["-", "fy", 200, 1, "system"], [], -1, "-"));
add("sys_op", 5, new Clause(0, ["\\", "fy", 200, 1, "system"], [], -1, "\\"));
add("sys_op", 5, new Clause(0, ["**", "xfx", 200, 3, "system"], [], -1, "**"));
add("sys_op", 5, new Clause(0, ["^", "xfy", 200, 3, "system"], [], -1, "^"));
add("current_op", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_op"), [new Place(2), new Place(1), new Place(0), new Place(-1), new Place(-1)])], -1, undefined));
add("op", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_check_integer"), [new Place(0)]), new Skeleton(new Cache("sys_check_priority"), [new Place(0)]), new Skeleton(new Cache("sys_check_atom"), [new Place(1)]), new Skeleton(new Cache("sys_check_atom"), [new Place(2)]), new Skeleton(new Cache("sys_op_retract"), [new Place(2), new Place(1)]), new Skeleton(new Cache("sys_op_assert"), [new Place(2), new Place(1), new Place(0)])], -1, undefined));
add("sys_check_priority", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("<"), [new Place(0), 0]), new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("domain_error", ["not_less_than_zero", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_check_priority", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache(">"), [new Place(0), 1200]), new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("domain_error", ["operator_priority", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_check_priority", 1, new Clause(0, [new Place(-1)], [], -1, undefined));
add("sys_op_retract", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_is_prefix"), [new Place(2), new Place(-1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(make_defined([new Clause(3, [new Place(-2)], [new Skeleton(new Cache("sys_op"), [new Place(0), new Place(-3), new Place(-4), new Place(-1), new Place(-1)]), new Skeleton(new Cache("sys_is_prefix"), [new Place(1), new Place(-1)]), new Skeleton(new Cache("retract"), [new Skeleton("sys_op", [new Place(0), new Place(1), new Place(2), new Place(-1), new Place(-1)])]), new Cache("fail")], -1, undefined), new Clause(0, [new Place(-1)], [], -1, undefined)]), [new Place(1)])], 0, undefined));
add("sys_op_retract", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_is_postfix"), [new Place(2), new Place(-1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(make_defined([new Clause(3, [new Place(-2)], [new Skeleton(new Cache("sys_op"), [new Place(0), new Place(-3), new Place(-4), new Place(-1), new Place(-1)]), new Skeleton(new Cache("sys_is_postfix"), [new Place(1), new Place(-1)]), new Skeleton(new Cache("retract"), [new Skeleton("sys_op", [new Place(0), new Place(1), new Place(2), new Place(-1), new Place(-1)])]), new Cache("fail")], -1, undefined), new Clause(0, [new Place(-1)], [], -1, undefined)]), [new Place(1)])], 0, undefined));
add("sys_op_retract", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_is_infix"), [new Place(2), new Place(-1), new Place(-1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(make_defined([new Clause(3, [new Place(-2)], [new Skeleton(new Cache("sys_op"), [new Place(0), new Place(-3), new Place(-4), new Place(-1), new Place(-1)]), new Skeleton(new Cache("sys_is_infix"), [new Place(1), new Place(-1), new Place(-1)]), new Skeleton(new Cache("retract"), [new Skeleton("sys_op", [new Place(0), new Place(1), new Place(2), new Place(-1), new Place(-1)])]), new Cache("fail")], -1, undefined), new Clause(0, [new Place(-1)], [], -1, undefined)]), [new Place(1)])], 0, undefined));
add("sys_op_retract", 2, new Clause(1, [new Place(-1), new Place(-2)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("domain_error", ["operator_specifier", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_op_assert", 3, new Clause(1, [new Place(-1), new Place(-1), 0], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_op_assert", 3, new Clause(2, [new Place(-2), new Place(-3), new Place(-1)], [new Skeleton(new Cache("sys_is_infix"), [new Place(1), new Place(-1), new Place(-1)]), new Skeleton(new Cache("sys_op"), [new Place(0), new Place(-3), new Place(-1), new Place(-1), new Place(-1)]), new Skeleton(new Cache("sys_is_postfix"), [new Place(1), new Place(-1)]), new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("permission_error", ["create", "operator", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_op_assert", 3, new Clause(2, [new Place(-2), new Place(-3), new Place(-1)], [new Skeleton(new Cache("sys_is_postfix"), [new Place(1), new Place(-1)]), new Skeleton(new Cache("sys_op"), [new Place(0), new Place(-3), new Place(-1), new Place(-1), new Place(-1)]), new Skeleton(new Cache("sys_is_infix"), [new Place(1), new Place(-1), new Place(-1)]), new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("permission_error", ["create", "operator", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_op_assert", 3, new Clause(5, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_op_space"), [new Place(1), new Place(2), new Place(-5)]), new Skeleton(new Cache("sys_op_format"), [new Place(1), new Place(2), new Place(-6)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("\\\/"), [new Place(3), new Place(4)]), new Place(-6)]), new Skeleton(new Cache("dg_get_partition"), [new Place(-5)]), new Skeleton(new Cache("assertz"), [new Skeleton("sys_op", [new Place(0), new Place(1), new Place(2), new Place(4), new Place(3)])])], -1, undefined));
add("sys_op_space", 3, new Clause(2, [new Place(-1), new Place(-3), 0], [new Skeleton(new Cache(">"), [new Place(1), 699]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_op_space", 3, new Clause(2, [new Place(-3), new Place(-1), 1], [new Skeleton(new Cache("sys_is_prefix"), [new Place(1), new Place(-1)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_op_space", 3, new Clause(2, [new Place(-3), new Place(-1), 2], [new Skeleton(new Cache("sys_is_postfix"), [new Place(1), new Place(-1)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_op_space", 3, new Clause(0, [new Place(-1), new Place(-1), 3], [], -1, undefined));
add("sys_op_format", 3, new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_is_infix"), [new Place(1), new Place(-1), new Place(-1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_op_format2"), [new Place(2), new Place(3)])], 0, undefined));
add("sys_op_format", 3, new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_is_prefix"), [new Place(1), new Place(-1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_op_format3"), [new Place(2), new Place(3)])], 0, undefined));
add("sys_op_format", 3, new Clause(0, [new Place(-1), new Place(-1), 0], [], -1, undefined));
add("sys_op_format2", 2, new Clause(2, [new Place(-3), 12], [new Skeleton(new Cache(">"), [new Place(1), 1149]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_op_format2", 2, new Clause(2, [new Place(-3), 8], [new Skeleton(new Cache(">"), [new Place(1), 1049]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_op_format2", 2, new Clause(2, [new Place(-3), 4], [new Skeleton(new Cache(">"), [new Place(1), 949]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_op_format2", 2, new Clause(0, [new Place(-1), 0], [], -1, undefined));
add("sys_op_format3", 2, new Clause(2, [new Place(-3), 12], [new Skeleton(new Cache(">"), [new Place(1), 1149]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_op_format3", 2, new Clause(0, [new Place(-1), 0], [], -1, undefined));
add("term_conversion", 2, new Clause(2, [new Place(-3), new Place(-1)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Cache("fail")], 0, undefined));
add("term_conversion", 2, new Clause(2, [new Skeleton("-->", [new Place(-3), new Place(-1)]), new Place(-1)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Cache("fail")], 0, "-->"));
add("term_conversion", 2, new Clause(7, [new Skeleton("-->", [new Skeleton(",", [new Place(-3), new Place(-4)]), new Place(-5)]), new Skeleton(":-", [new Place(-6), new Skeleton(",", [new Place(-7), new Place(-8)])])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_phrase_expansion"), [new Place(1), new Place(-3), new Place(-2), new Place(4)]), new Skeleton(new Cache("sys_phrase_expansion"), [new Place(3), new Place(1), new Place(-3), new Place(5)]), new Skeleton(new Cache("sys_phrase_expansion"), [new Place(2), new Place(0), new Place(1), new Place(6)])], 0, "-->"));
add("term_conversion", 2, new Clause(5, [new Skeleton("-->", [new Place(-3), new Place(-4)]), new Skeleton(":-", [new Place(-5), new Place(-6)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_phrase_expansion"), [new Place(1), new Place(-3), new Place(-2), new Place(3)]), new Skeleton(new Cache("sys_phrase_expansion"), [new Place(2), new Place(1), new Place(0), new Place(4)])], 0, "-->"));
add("sys_phrase_expansion", 4, new Clause(2, [new Place(-3), new Place(-1), new Place(-1), new Place(-1)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Cache("fail")], 0, undefined));
add("sys_phrase_expansion", 4, new Clause(7, [new Skeleton(",", [new Place(-3), new Place(-4)]), new Place(-5), new Place(-6), new Skeleton(",", [new Place(-7), new Place(-8)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_phrase_expansion"), [new Place(1), new Place(3), new Place(-5), new Place(5)]), new Skeleton(new Cache("sys_phrase_expansion"), [new Place(2), new Place(3), new Place(4), new Place(6)])], 0, ","));
add("sys_phrase_expansion", 4, new Clause(7, [new Skeleton(";", [new Place(-3), new Place(-4)]), new Place(-5), new Place(-6), new Skeleton(";", [new Place(-7), new Place(-8)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_phrase_expansion"), [new Place(1), new Place(3), new Place(4), new Place(5)]), new Skeleton(new Cache("sys_phrase_expansion"), [new Place(2), new Place(3), new Place(4), new Place(6)])], 0, ";"));
add("sys_phrase_expansion", 4, new Clause(7, [new Skeleton("->", [new Place(-3), new Place(-4)]), new Place(-5), new Place(-6), new Skeleton("->", [new Place(-7), new Place(-8)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_phrase_expansion"), [new Place(1), new Place(3), new Place(-5), new Place(5)]), new Skeleton(new Cache("sys_phrase_expansion"), [new Place(2), new Place(3), new Place(4), new Place(6)])], 0, "->"));
add("sys_phrase_expansion", 4, new Clause(3, ["[]", new Place(-3), new Place(-4), new Skeleton("=", [new Place(1), new Place(2)])], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, "[]"));
add("sys_phrase_expansion", 4, new Clause(5, [new Skeleton(".", [new Place(-3), new Place(-4)]), new Place(-5), new Place(-6), new Skeleton("=", [new Place(3), new Skeleton(".", [new Place(1), new Place(-3)])])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_list_expansion"), [new Place(2), new Place(4), new Place(1)])], 0, "."));
add("sys_phrase_expansion", 4, new Clause(3, ["!", new Place(-3), new Place(-4), new Skeleton(",", ["!", new Skeleton("=", [new Place(1), new Place(2)])])], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, "!"));
add("sys_phrase_expansion", 4, new Clause(4, [new Skeleton("{}", [new Place(-3)]), new Place(-4), new Place(-5), new Skeleton(",", [new Place(1), new Skeleton("=", [new Place(2), new Place(3)])])], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, "{}"));
add("sys_phrase_expansion", 4, new Clause(5, [new Skeleton("\\+", [new Place(-3)]), new Place(-4), new Place(-5), new Skeleton(",", [new Skeleton("\\+", [new Place(-6)]), new Skeleton("=", [new Place(2), new Place(3)])])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_phrase_expansion"), [new Place(1), new Place(2), new Place(-1), new Place(4)])], 0, "\\+"));
add("sys_phrase_expansion", 4, new Clause(5, [new Place(-2), new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("callable"), [new Place(0)]), new Skeleton(new Cache("=.."), [new Place(0), new Skeleton(".", [new Place(-2), new Place(-6)])]), new Skeleton(new Cache("append"), [new Place(4), new Skeleton(".", [new Place(1), new Skeleton(".", [new Place(2), "[]"])]), new Place(-4)]), new Skeleton(new Cache("=.."), [new Place(3), new Skeleton(".", [new Place(0), new Place(2)])])], -1, undefined));
add("sys_list_expansion", 3, new Clause(2, [new Place(-3), new Place(-1), new Place(-1)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Cache("fail")], 0, undefined));
add("sys_list_expansion", 3, new Clause(1, ["[]", new Place(-2), new Place(0)], [], -1, "[]"));
add("sys_list_expansion", 3, new Clause(3, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Place(-4), new Skeleton(".", [new Place(0), new Place(-2)])], [new Skeleton(new Cache("sys_list_expansion"), [new Place(1), new Place(2), new Place(0)])], -1, "."));
add("absolute_file_name", 2, new Clause(3, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("current_prolog_flag"), ["base_url", new Place(-4)]), new Skeleton(new Cache("sys_file_combine"), [new Place(2), new Place(0), new Place(1)])], -1, undefined));
add("sys_file_combine", 3, new Clause(3, [new Place(-1), new Place(-3), new Place(-4)], [new Skeleton(new Cache("is_absolute_file_name"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(1), new Place(2)])], 0, undefined));
add("sys_file_combine", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("file_directory_name"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("atom_concat"), [new Place(0), new Place(1), new Place(2)])], -1, undefined));
add("is_absolute_file_name", 1, new Clause(4, [new Place(-2)], [new Skeleton(new Cache("atom_length"), [new Place(0), new Place(-3)]), new Skeleton(make_defined([new Clause(3, [new Place(-3), new Place(-4), new Place(-1)], [new Skeleton(new Cache("sub_atom"), [new Place(1), new Place(2), new Place(-1), new Place(-1), "\/"]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined), new Clause(2, [new Place(-1), new Place(-2), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, undefined)]), [new Place(0), new Place(-4), new Place(1)]), new Skeleton(make_defined([new Clause(3, [new Place(-3), new Place(-4), new Place(-1)], [new Skeleton(new Cache("sub_atom"), [new Place(1), new Place(2), new Place(-1), new Place(-1), "\\"]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined), new Clause(2, [new Place(-1), new Place(-2), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, undefined)]), [new Place(0), new Place(-5), new Place(1)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("min"), [new Place(2), new Place(3)]), new Place(-5)]), new Skeleton(make_defined([new Clause(3, [new Place(-3), new Place(-4), new Place(-1)], [new Skeleton(new Cache("=="), [new Place(1), 0]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("<"), [new Place(1), new Place(2)])], 0, undefined), new Clause(3, [new Place(-3), new Place(-1), new Place(-4)], [new Skeleton(new Cache("sub_atom"), [new Place(2), new Place(-4), new Place(-1), new Place(-1), ":"]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("<"), [new Place(2), new Place(1)])], 0, undefined)]), [new Place(3), new Place(1), new Place(0)])], -1, undefined));
add("file_directory_name", 2, new Clause(4, [new Place(-2), new Place(-3)], [new Skeleton(make_defined([new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("last_sub_atom"), [new Place(1), new Place(2), new Place(-1), new Place(-1), "\/"]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined), new Clause(1, [new Place(-1), new Place(-2)], [new Skeleton(new Cache("="), [new Place(0), -1])], -1, undefined)]), [new Place(0), new Place(-4)]), new Skeleton(make_defined([new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("last_sub_atom"), [new Place(1), new Place(2), new Place(-1), new Place(-1), "\\"]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined), new Clause(1, [new Place(-1), new Place(-2)], [new Skeleton(new Cache("="), [new Place(0), -1])], -1, undefined)]), [new Place(0), new Place(-5)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("max"), [new Place(2), new Place(3)]), new Place(-5)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("+"), [new Place(3), 1]), new Place(-5)]), new Skeleton(new Cache("sub_atom"), [new Place(0), 0, new Place(3), new Place(-1), new Place(1)])], -1, undefined));
add("file_base_name", 2, new Clause(5, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("atom_length"), [new Place(0), new Place(-4)]), new Skeleton(make_defined([new Clause(3, [new Place(-3), new Place(-4), new Place(-1)], [new Skeleton(new Cache("last_sub_atom"), [new Place(1), new Place(-1), new Place(-1), new Place(2), "\/"]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined), new Clause(2, [new Place(-1), new Place(-2), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, undefined)]), [new Place(0), new Place(-5), new Place(2)]), new Skeleton(make_defined([new Clause(3, [new Place(-3), new Place(-4), new Place(-1)], [new Skeleton(new Cache("last_sub_atom"), [new Place(1), new Place(-1), new Place(-1), new Place(2), "\\"]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined), new Clause(2, [new Place(-1), new Place(-2), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, undefined)]), [new Place(0), new Place(-6), new Place(2)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("min"), [new Place(3), new Place(4)]), new Place(-6)]), new Skeleton(new Cache("sub_atom"), [new Place(0), new Place(-1), new Place(4), 0, new Place(1)])], -1, undefined));
add("strings", 3, new Clause(0, ["exception_unknown", "de", "Unbekannte Ausnahme: "], [], -1, "exception_unknown"));
add("strings", 3, new Clause(0, ["exception_error", "de", "Fehler: "], [], -1, "exception_error"));
add("strings", 3, new Clause(0, ["exception_warning", "de", "Warnung: "], [], -1, "exception_warning"));
add("strings", 3, new Clause(0, ["exception_context", "de", "\tUnbekannter Kontext: "], [], -1, "exception_context"));
add("strings", 3, new Clause(0, ["exception_template", "de", "Unbekannte Vorlage: "], [], -1, "exception_template"));
add("strings", 3, new Clause(0, ["file_line", "de", "\t~ auf ~"], [], -1, "file_line"));
add("strings", 3, new Clause(0, ["format.date", "de", "%d.%m.%Y"], [], -1, "format.date"));
add("strings", 3, new Clause(0, ["format.datetime", "de", "%d.%m.%Y %H:%M"], [], -1, "format.datetime"));
add("strings", 3, new Clause(0, ["time.time", "de", "% Zeit ~ ms"], [], -1, "time.time"));
add("strings", 3, new Clause(0, ["time.gctime", "de", ", GC ~ ms"], [], -1, "time.gctime"));
add("strings", 3, new Clause(0, ["time.lips", "de", ", Lips ~"], [], -1, "time.lips"));
add("strings", 3, new Clause(0, ["time.wall", "de", ", Uhr ~~"], [], -1, "time.wall"));
add("strings", 3, new Clause(0, ["statistics.gctime", "de", "GC Zeit\t\t~ ms"], [], -1, "statistics.gctime"));
add("strings", 3, new Clause(0, ["statistics.calls", "de", "Aufrufe\t\t~"], [], -1, "statistics.calls"));
add("strings", 3, new Clause(0, ["statistics.time", "de", "Betriebszeit\t~ ms"], [], -1, "statistics.time"));
add("strings", 3, new Clause(0, ["statistics.wall", "de", "Uhrzeit\t\t~~"], [], -1, "statistics.wall"));
add("strings", 3, new Clause(0, ["exception_unknown", "", "Unknown exception: "], [], -1, "exception_unknown"));
add("strings", 3, new Clause(0, ["exception_error", "", "Error: "], [], -1, "exception_error"));
add("strings", 3, new Clause(0, ["exception_warning", "", "Warning: "], [], -1, "exception_warning"));
add("strings", 3, new Clause(0, ["exception_context", "", "\tUnknown context: "], [], -1, "exception_context"));
add("strings", 3, new Clause(0, ["exception_template", "", "Unknown template: "], [], -1, "exception_template"));
add("strings", 3, new Clause(0, ["file_line", "", "\t~ at ~"], [], -1, "file_line"));
add("strings", 3, new Clause(0, ["format.date", "", "%d\/%m\/%Y"], [], -1, "format.date"));
add("strings", 3, new Clause(0, ["format.datetime", "", "%d\/%m\/%Y %H:%M"], [], -1, "format.datetime"));
add("strings", 3, new Clause(0, ["time.time", "", "% Time ~ ms"], [], -1, "time.time"));
add("strings", 3, new Clause(0, ["time.gctime", "", ", GC ~ ms"], [], -1, "time.gctime"));
add("strings", 3, new Clause(0, ["time.lips", "", ", Lips ~"], [], -1, "time.lips"));
add("strings", 3, new Clause(0, ["time.wall", "", ", Wall ~~"], [], -1, "time.wall"));
add("strings", 3, new Clause(0, ["statistics.gctime", "", "GC time\t\t~ ms"], [], -1, "statistics.gctime"));
add("strings", 3, new Clause(0, ["statistics.calls", "", "Calls\t\t~"], [], -1, "statistics.calls"));
add("strings", 3, new Clause(0, ["statistics.time", "", "Realtime\t~ ms"], [], -1, "statistics.time"));
add("strings", 3, new Clause(0, ["statistics.wall", "", "Walltime\t~~"], [], -1, "statistics.wall"));
add("strings", 3, new Clause(0, ["instantiation_error", "de", "Argument sollte keine Variable sein."], [], -1, "instantiation_error"));
add("strings", 3, new Clause(0, ["syntax_error.directive_failed", "de", "Direktive fehlgeschlagen."], [], -1, "syntax_error.directive_failed"));
add("strings", 3, new Clause(0, ["existence_error.body", "de", "Prädikat ~ fehlt Implementation."], [], -1, "existence_error.body"));
add("strings", 3, new Clause(0, ["existence_error.procedure", "de", "Prädikat ~ undefiniert oder unerreichbar."], [], -1, "existence_error.procedure"));
add("strings", 3, new Clause(0, ["permission_error.modify.static_procedure", "de", "Kann Prädikat ~ nicht aktualisieren."], [], -1, "permission_error.modify.static_procedure"));
add("strings", 3, new Clause(0, ["permission_error.coerce.procedure", "de", "Kann Prädikat ~ nicht zu anderen Delegiertentyp zwingen."], [], -1, "permission_error.coerce.procedure"));
add("strings", 3, new Clause(0, ["permission_error.access.private_procedure", "de", "Kann auf Prädikat ~ nicht zugreifen."], [], -1, "permission_error.access.private_procedure"));
add("strings", 3, new Clause(0, ["permission_error.redefine.procedure", "de", "Kann Prädikat ~ nicht umdefinieren, nicht als Mehrdateien markiert."], [], -1, "permission_error.redefine.procedure"));
add("strings", 3, new Clause(0, ["permission_error.promote.multifile", "de", "Kann Funktion ~ nicht zu Mehrdateien heben."], [], -1, "permission_error.promote.multifile"));
add("strings", 3, new Clause(0, ["permission_error.create.operator", "de", "Kann Operator ~ nicht erstellen."], [], -1, "permission_error.create.operator"));
add("strings", 3, new Clause(0, ["resource_error.illegal_method", "de", "Methode nicht zugelassen."], [], -1, "resource_error.illegal_method"));
add("strings", 3, new Clause(0, ["system_error.timelimit_exceeded", "de", "Ausführung abgebrochen da Zeitfrist abgelaufen."], [], -1, "system_error.timelimit_exceeded"));
add("strings", 3, new Clause(0, ["system_error.user_abort", "de", "Ausführung auf Benutzerwunsch abgebrochen."], [], -1, "system_error.user_abort"));
add("strings", 3, new Clause(0, ["system_error.stack_overflow", "de", "Ausführung wegen Stapelüberlauf abgebrochen."], [], -1, "system_error.stack_overflow"));
add("strings", 3, new Clause(0, ["instantiation_error", "", "Argument should not be a variable."], [], -1, "instantiation_error"));
add("strings", 3, new Clause(0, ["syntax_error.directive_failed", "", "Directive failed."], [], -1, "syntax_error.directive_failed"));
add("strings", 3, new Clause(0, ["existence_error.body", "", "Predicate ~ implementation missing."], [], -1, "existence_error.body"));
add("strings", 3, new Clause(0, ["existence_error.procedure", "", "Undefined or inaccesible predicate ~."], [], -1, "existence_error.procedure"));
add("strings", 3, new Clause(0, ["permission_error.modify.static_procedure", "", "Can\'t modify predicate ~."], [], -1, "permission_error.modify.static_procedure"));
add("strings", 3, new Clause(0, ["permission_error.coerce.procedure", "", "Can\'t coerce predicate ~ into other delegate type."], [], -1, "permission_error.coerce.procedure"));
add("strings", 3, new Clause(0, ["permission_error.access.private_procedure", "", "Can\'t access predicate ~."], [], -1, "permission_error.access.private_procedure"));
add("strings", 3, new Clause(0, ["permission_error.redefine.procedure", "", "Can\'t redefine predicate ~, not marked multfile."], [], -1, "permission_error.redefine.procedure"));
add("strings", 3, new Clause(0, ["permission_error.promote.multifile", "", "Can\'t promote predicate ~ to multi-file."], [], -1, "permission_error.promote.multifile"));
add("strings", 3, new Clause(0, ["permission_error.create.operator", "", "Can\'t create the operator ~."], [], -1, "permission_error.create.operator"));
add("strings", 3, new Clause(0, ["resource_error.illegal_method", "", "Method not allowed."], [], -1, "resource_error.illegal_method"));
add("strings", 3, new Clause(0, ["system_error.timelimit_exceeded", "", "Execution aborted since time limit exceeded."], [], -1, "system_error.timelimit_exceeded"));
add("strings", 3, new Clause(0, ["system_error.user_abort", "", "Execution aborted on user request."], [], -1, "system_error.user_abort"));
add("strings", 3, new Clause(0, ["system_error.stack_overflow", "", "Execution aborted because of stack overflow."], [], -1, "system_error.stack_overflow"));
add("dynamic", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("dynamic", 1, new Clause(3, [new Skeleton("\/", [new Place(-3), new Place(-4)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_check_atom"), [new Place(1)]), new Skeleton(new Cache("sys_check_integer"), [new Place(2)]), new Skeleton(new Cache("sys_style_indicator"), [new Place(1), new Place(2)]), new Skeleton(new Cache("kb_pred_touch"), [new Place(1), new Place(2), 1])], 0, "\/"));
add("dynamic", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["predicate_indicator", new Place(0)]), new Place(-1)])])], -1, undefined));
add("asserta", 1, new Clause(2, [new Place(-2)], [new Skeleton(new Cache("sys_trans_horn"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("sys_encode_horn"), [new Place(0), new Place(-3), 0]), new Skeleton(new Cache("sys_host_make"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("sys_host_asserta"), [new Place(0), new Place(1)])], -1, undefined));
add("sys_host_asserta", 2, new Clause(3, [new Skeleton("tr_clause", [new Place(-1), new Place(-3), new Place(-1)]), new Place(-4)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("functor"), [new Place(1), new Place(-3), new Place(-2)]), new Skeleton(new Cache("ir_clause_add"), [new Place(1), new Place(0), new Place(2), 2])], 0, "tr_clause"));
add("sys_host_asserta", 2, new Clause(1, [new Place(-2), new Place(-1)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["tr_clause", new Place(0)]), new Place(-1)])])], -1, undefined));
add("assertz", 1, new Clause(2, [new Place(-2)], [new Skeleton(new Cache("sys_trans_horn"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("sys_encode_horn"), [new Place(0), new Place(-3), 0]), new Skeleton(new Cache("sys_host_make"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("sys_host_assertz"), [new Place(0), new Place(1)])], -1, undefined));
add("sys_host_assertz", 2, new Clause(3, [new Skeleton("tr_clause", [new Place(-1), new Place(-3), new Place(-1)]), new Place(-4)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("functor"), [new Place(1), new Place(-3), new Place(-2)]), new Skeleton(new Cache("ir_clause_add"), [new Place(1), new Place(0), new Place(2), 3])], 0, "tr_clause"));
add("sys_host_assertz", 2, new Clause(1, [new Place(-2), new Place(-1)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["tr_clause", new Place(0)]), new Place(-1)])])], -1, undefined));
add("clause", 2, new Clause(3, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("sys_check_callable"), [new Place(0)]), new Skeleton(new Cache("kb_clause_ref"), [new Place(0), 2, new Place(-4)]), new Skeleton(new Cache("kb_clause_data"), [new Place(2), new Place(0), new Place(-2), new Place(-4)]), new Skeleton(new Cache("sys_decode_body"), [new Place(2), new Place(-4)]), new Skeleton(new Cache("sys_untrans_body"), [new Place(2), new Place(0), new Place(-2)]), new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, undefined));
add("retract", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("retract", 1, new Clause(6, [new Skeleton(":-", [new Place(-3), new Place(-4)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_check_callable"), [new Place(1)]), new Skeleton(new Cache("functor"), [new Place(1), new Place(-2), new Place(-5)]), new Skeleton(new Cache("kb_clause_ref"), [new Place(1), 3, new Place(-6)]), new Skeleton(new Cache("kb_clause_data"), [new Place(4), new Place(1), new Place(-3), new Place(-7)]), new Skeleton(new Cache("sys_decode_body"), [new Place(5), new Place(-7)]), new Skeleton(new Cache("sys_untrans_body"), [new Place(5), new Place(1), new Place(-3)]), new Skeleton(new Cache("="), [new Place(1), new Place(2)]), new Skeleton(new Cache("kb_clause_remove"), [new Place(0), new Place(3), 0, new Place(4)])], 0, ":-"));
add("retract", 1, new Clause(4, [new Place(-2)], [new Skeleton(new Cache("sys_check_callable"), [new Place(0)]), new Skeleton(new Cache("functor"), [new Place(0), new Place(-3), new Place(-4)]), new Skeleton(new Cache("kb_clause_ref"), [new Place(0), 3, new Place(-5)]), new Skeleton(new Cache("kb_clause_data"), [new Place(3), new Place(0), new Place(-1), new Place(-2)]), new Skeleton(new Cache("="), [new Place(0), "[]"]), new Skeleton(new Cache("kb_clause_remove"), [new Place(1), new Place(2), 0, new Place(3)])], -1, undefined));
add("retractall", 1, new Clause(4, [new Place(-2)], [new Skeleton(new Cache("sys_check_callable"), [new Place(0)]), new Skeleton(new Cache("functor"), [new Place(0), new Place(-3), new Place(-4)]), new Skeleton(new Cache("kb_clause_ref"), [new Place(0), 7, new Place(-5)]), new Skeleton(new Cache("kb_clause_head"), [new Place(3), new Place(0)]), new Skeleton(new Cache("kb_clause_remove"), [new Place(1), new Place(2), 1, new Place(3)]), new Cache("fail")], -1, undefined));
add("retractall", 1, new Clause(0, [new Place(-1)], [], -1, undefined));
add("abolish", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("abolish", 1, new Clause(3, [new Skeleton("\/", [new Place(-3), new Place(-4)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_check_atom"), [new Place(1)]), new Skeleton(new Cache("sys_check_integer"), [new Place(2)]), new Skeleton(new Cache("sys_abolish"), [new Place(1), new Place(2)])], 0, "\/"));
add("abolish", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["predicate_indicator", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_abolish", 2, new Clause(3, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("kb_pred_link"), [new Place(0), new Place(1), new Place(-4)]), new Skeleton(new Cache("kb_link_flags"), [new Place(2), new Place(-4)]), new Skeleton(new Cache("=:="), [new Skeleton(new Cache("\/\\"), [new Place(2), 1]), 0]), new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("permission_error", ["modify", "static_procedure", new Skeleton("\/", [new Place(0), new Place(1)])]), new Place(-1)])])], -1, undefined));
add("sys_abolish", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("retractall"), [new Skeleton("sys_predprop", [new Place(0), new Place(1), new Place(-1)])]), new Skeleton(new Cache("kb_pred_destroy"), [new Place(0), new Place(1)])], -1, undefined));
run(new Goal(0, [new Compound(new Cache("kb_pred_touch"), ["sys_predprop", 3, 1])]));
add("current_predicate", 1, new Clause(2, [new Place(-3)], [new Skeleton(new Cache("\\+"), [new Skeleton("ground", [new Place(1)])]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("kb_pred_list"), [new Place(-2)]), new Skeleton(new Cache("member"), [new Place(1), new Place(0)])], 0, undefined));
add("current_predicate", 1, new Clause(3, [new Skeleton("\/", [new Place(-3), new Place(-4)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_check_atom"), [new Place(1)]), new Skeleton(new Cache("sys_check_integer"), [new Place(2)]), new Skeleton(new Cache("kb_pred_link"), [new Place(1), new Place(2), new Place(-1)])], 0, "\/"));
add("current_predicate", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["predicate_indicator", new Place(0)]), new Place(-1)])])], -1, undefined));
add("predicate_property", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("\\+"), [new Skeleton("ground", [new Place(1)])]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_predprop_pattern"), [new Place(1), new Place(2)])], 0, undefined));
add("predicate_property", 2, new Clause(4, [new Skeleton("\/", [new Place(-3), new Place(-4)]), new Place(-5)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_check_atom"), [new Place(1)]), new Skeleton(new Cache("sys_check_integer"), [new Place(2)]), new Skeleton(new Cache("sys_predprop_get"), [new Place(1), new Place(2), new Place(3)])], 0, "\/"));
add("predicate_property", 2, new Clause(1, [new Place(-2), new Place(-1)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["predicate_indicator", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_predprop_pattern", 2, new Clause(3, [new Skeleton("\/", [new Place(-2), new Place(-3)]), new Place(-4)], [new Skeleton(new Cache("current_predicate"), [new Skeleton("\/", [new Place(0), new Place(1)])]), new Skeleton(new Cache("sys_predprop_get"), [new Place(0), new Place(1), new Place(2)])], -1, "\/"));
add("sys_predprop_get", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("kb_pred_link"), [new Place(0), new Place(1), new Place(-3)]), new Skeleton(new Cache("kb_link_flags"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("sys_predprop_flag"), [new Place(1), new Place(2)])], -1, undefined));
add("sys_predprop_get", 3, new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_predprop"), [new Place(0), new Place(1), new Place(2)])], -1, undefined));
add("sys_predprop_flag", 2, new Clause(1, [new Place(-2), "dynamic"], [new Skeleton(new Cache("=\\="), [new Skeleton(new Cache("\/\\"), [new Place(0), 1]), 0])], -1, undefined));
add("sys_predprop_flag", 2, new Clause(1, [new Place(-2), "static"], [new Skeleton(new Cache("=:="), [new Skeleton(new Cache("\/\\"), [new Place(0), 1]), 0])], -1, undefined));
add("sys_host_make", 2, new Clause(7, [new Skeleton("ir_clause", [new Place(-2), new Place(-3), new Place(-4), new Place(-5)]), new Place(-6)], [new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("+"), [new Place(2), 1]), new Place(-7)]), new Skeleton(new Cache("sys_host_list"), [new Place(0), new Place(-2), new Skeleton("v", [new Place(5), "[]"]), new Skeleton("v", [new Place(-7), new Place(-8)])]), new Skeleton(new Cache("sys_host_list"), [new Place(1), new Place(-3), new Skeleton("v", [new Place(5), new Place(6)]), new Skeleton("v", [new Place(-8), new Place(-1)])]), new Skeleton(new Cache("ir_clause_new"), [new Place(6), new Place(0), new Place(1), new Place(2), new Place(3), new Place(4)])], -1, "ir_clause"));
add("sys_host_make", 2, new Clause(3, [new Skeleton("ir_goal", [new Place(-2)]), new Place(-3)], [new Skeleton(new Cache("sys_host_list"), [new Place(0), new Place(-2), new Compound("v", [0, "[]"]), new Skeleton("v", [new Place(-4), new Place(-1)])]), new Skeleton(new Cache("ir_goal_new"), [new Place(2), new Place(0), new Place(1)])], -1, "ir_goal"));
add("sys_host_list", 4, new Clause(6, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Skeleton(".", [new Place(-4), new Place(-5)]), new Place(-6), new Place(-7)], [new Skeleton(new Cache("sys_host_instr"), [new Place(0), new Place(2), new Place(4), new Place(-6)]), new Skeleton(new Cache("sys_host_list"), [new Place(1), new Place(3), new Place(4), new Place(5)])], -1, "."));
add("sys_host_list", 4, new Clause(2, ["[]", "[]", new Place(-2), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, "[]"));
add("sys_host_instr", 4, new Clause(5, [new Skeleton("first_var", [new Place(-1), new Place(-3)]), new Place(-4), new Place(-5), new Place(-6)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("ir_place_new"), [-1, new Place(2)]), new Skeleton(new Cache("="), [new Place(3), new Place(4)])], 0, "first_var"));
add("sys_host_instr", 4, new Clause(4, [new Skeleton("first_var", [new Place(-2), new Place(-1)]), new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(make_defined([new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_host_current_recycle"), [new Skeleton(".", [new Place(1), new Place(-3)]), new Place(2), new Place(-4)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_host_set_recycle"), [new Place(1), new Place(2), new Place(3)])], 0, undefined), new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_host_current_max"), [new Place(0), new Place(1), new Place(-3)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("+"), [new Place(0), 1]), new Place(-2)]), new Skeleton(new Cache("="), [new Place(1), new Place(-3)]), new Skeleton(new Cache("sys_host_set_max"), [new Place(0), new Place(1), new Place(2)])], -1, undefined)]), [new Place(0), new Place(2), new Place(-4)]), new Skeleton(new Cache("$EVAL"), [new Skeleton(new Cache("-"), [new Skeleton(new Cache("-"), [new Place(0)]), 2]), new Place(-2)]), new Skeleton(new Cache("ir_place_new"), [new Place(0), new Place(1)]), new Skeleton(new Cache("="), [new Place(2), new Place(3)])], -1, "first_var"));
add("sys_host_instr", 4, new Clause(5, [new Skeleton("var", [new Place(-2), new Place(-3)]), new Place(-4), new Place(-5), new Place(-6)], [new Skeleton(make_defined([new Clause(5, [new Place(-3), new Place(-4), new Place(-5), new Place(-6)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("="), [new Place(2), new Place(-4)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_host_current_recycle"), [new Place(-2), new Place(2), new Place(-4)]), new Skeleton(new Cache("sys_host_set_recycle"), [new Skeleton(".", [new Place(3), new Place(0)]), new Place(2), new Place(4)])], 0, undefined), new Clause(2, [new Place(-1), new Place(-2), new Place(-1), new Place(-3)], [new Skeleton(new Cache("="), [new Place(0), new Place(1)])], -1, undefined)]), [new Place(1), new Place(3), new Place(0), new Place(-5)]), new Skeleton(new Cache("ir_place_new"), [new Place(0), new Place(2)]), new Skeleton(new Cache("="), [new Place(3), new Place(4)])], -1, "var"));
add("sys_host_instr", 4, new Clause(5, [new Skeleton("functor", [new Place(-2), new Place(-3)]), new Place(-4), new Place(-5), new Place(-6)], [new Skeleton(new Cache("sys_host_const"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("="), [new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_host_list"), [new Place(1), new Place(-3), new Place(3), new Place(-5)]), new Skeleton(new Cache("ir_skeleton_new"), [new Place(0), new Place(1), new Place(2)]), new Skeleton(new Cache("="), [new Place(3), new Place(4)])], -1, "functor"));
add("sys_host_instr", 4, new Clause(4, [new Skeleton("const", [new Place(-2)]), new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_host_const"), [new Place(0), new Place(1)]), new Skeleton(new Cache("="), [new Place(2), new Place(3)])], -1, "const"));
add("sys_host_current_max", 3, new Clause(2, [new Place(-2), new Skeleton("v", [new Place(0), new Place(-3)]), new Skeleton("v", [new Place(0), new Place(1)])], [], -1, undefined));
add("sys_host_set_max", 3, new Clause(2, [new Place(-2), new Skeleton("v", [new Place(-1), new Place(-3)]), new Skeleton("v", [new Place(0), new Place(1)])], [], -1, undefined));
add("sys_host_current_recycle", 3, new Clause(2, [new Place(-2), new Skeleton("v", [new Place(-3), new Place(0)]), new Skeleton("v", [new Place(1), new Place(0)])], [], -1, undefined));
add("sys_host_set_recycle", 3, new Clause(2, [new Place(-2), new Skeleton("v", [new Place(-3), new Place(-1)]), new Skeleton("v", [new Place(1), new Place(0)])], [], -1, undefined));
add("sys_host_alternatives", 2, new Clause(4, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Skeleton(".", [new Place(-4), new Place(-5)])], [new Skeleton(new Cache("sys_host_make"), [new Place(0), new Place(2)]), new Skeleton(new Cache("sys_host_alternatives"), [new Place(1), new Place(3)])], -1, "."));
add("sys_host_alternatives", 2, new Clause(0, ["[]", "[]"], [], -1, "[]"));
add("sys_host_const", 2, new Clause(4, [new Skeleton("functor", [new Place(-3), new Place(-4)]), new Place(-5)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_host_const"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("sys_host_args"), [new Place(2), new Place(-4)]), new Skeleton(new Cache("=.."), [new Place(3), new Skeleton(".", [new Place(1), new Place(2)])])], 0, "functor"));
add("sys_host_const", 2, new Clause(3, [new Skeleton("link", [new Place(-3)]), new Place(-4)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_host_alternatives"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("kb_make_defined"), [new Place(1), new Place(2)])], 0, "link"));
add("sys_host_const", 2, new Clause(3, [new Skeleton("site", [new Place(-3)]), new Place(-4)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("ir_pred_site"), [new Place(1), new Place(2)])], 0, "site"));
add("sys_host_const", 2, new Clause(1, [new Place(-2), new Place(0)], [], -1, undefined));
add("sys_host_args", 2, new Clause(4, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Skeleton(".", [new Place(-4), new Place(-5)])], [new Skeleton(new Cache("sys_host_const"), [new Place(0), new Place(2)]), new Skeleton(new Cache("sys_host_args"), [new Place(1), new Place(3)])], -1, "."));
add("sys_host_args", 2, new Clause(0, ["[]", "[]"], [], -1, "[]"));
add("sys_decode_body", 2, new Clause(4, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Skeleton(".", [new Place(-4), new Place(-5)])], [new Skeleton(new Cache("sys_decode_callable"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("sys_decode_goal"), [new Place(0), new Place(2)]), new Skeleton(new Cache("sys_decode_body"), [new Place(1), new Place(3)])], -1, "."));
add("sys_decode_body", 2, new Clause(0, ["[]", "[]"], [], -1, "[]"));
add("sys_decode_callable", 2, new Clause(2, [new Place(-3), new Place(1)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_decode_callable", 2, new Clause(4, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("functor"), [new Place(1), new Place(-5), new Place(-1)]), new Skeleton(new Cache("ir_is_site"), [new Place(3)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("ir_site_name"), [new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_decode_site"), [new Place(1), new Place(2), new Place(3)])], 0, undefined));
add("sys_decode_callable", 2, new Clause(1, [new Place(-2), new Place(0)], [], -1, undefined));
add("sys_decode_site", 3, new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("compound"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("=.."), [new Place(1), new Skeleton(".", [new Place(-1), new Place(-3)])]), new Skeleton(new Cache("=.."), [new Place(2), new Skeleton(".", [new Place(3), new Place(1)])])], 0, undefined));
add("sys_decode_site", 3, new Clause(1, [new Place(-1), new Place(-2), new Place(0)], [], -1, undefined));
add("sys_decode_goal", 2, new Clause(2, [new Place(-3), new Skeleton("call", [new Place(1)])], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_decode_goal", 2, new Clause(4, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("functor"), [new Place(1), new Place(-5), new Place(-1)]), new Skeleton(new Cache("kb_is_link"), [new Place(3)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_decode_link"), [new Place(1), new Place(2)])], 0, undefined));
add("sys_decode_goal", 2, new Clause(3, [new Skeleton("$EVAL", [new Place(-3), new Place(-4)]), new Skeleton("is", [new Place(2), new Place(-4)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(1), new Place(2)])], 0, "$EVAL"));
add("sys_decode_goal", 2, new Clause(5, [new Skeleton("=:=", [new Place(-3), new Place(-4)]), new Skeleton("=:=", [new Place(-5), new Place(-6)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(1), new Place(3)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(2), new Place(4)])], 0, "=:="));
add("sys_decode_goal", 2, new Clause(5, [new Skeleton("=\\=", [new Place(-3), new Place(-4)]), new Skeleton("=\\=", [new Place(-5), new Place(-6)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(1), new Place(3)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(2), new Place(4)])], 0, "=\\="));
add("sys_decode_goal", 2, new Clause(5, [new Skeleton("<", [new Place(-3), new Place(-4)]), new Skeleton("<", [new Place(-5), new Place(-6)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(1), new Place(3)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(2), new Place(4)])], 0, "<"));
add("sys_decode_goal", 2, new Clause(5, [new Skeleton(">", [new Place(-3), new Place(-4)]), new Skeleton(">", [new Place(-5), new Place(-6)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(1), new Place(3)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(2), new Place(4)])], 0, ">"));
add("sys_decode_goal", 2, new Clause(5, [new Skeleton("=<", [new Place(-3), new Place(-4)]), new Skeleton("=<", [new Place(-5), new Place(-6)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(1), new Place(3)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(2), new Place(4)])], 0, "=<"));
add("sys_decode_goal", 2, new Clause(5, [new Skeleton(">=", [new Place(-3), new Place(-4)]), new Skeleton(">=", [new Place(-5), new Place(-6)])], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(1), new Place(3)]), new Skeleton(new Cache("sys_decode_expr"), [new Place(2), new Place(4)])], 0, ">="));
add("sys_decode_goal", 2, new Clause(1, [new Place(-2), new Place(0)], [], -1, undefined));
add("sys_decode_link", 2, new Clause(3, [new Place(-2), new Skeleton("$ALT", [new Place(-3)])], [new Skeleton(new Cache("findall"), [new Place(-4), new Skeleton("kb_clause_ref", [new Place(0), 0, new Place(2)]), new Place(-4)]), new Skeleton(new Cache("sys_decode_alternatives"), [new Place(2), new Place(0), new Place(1)])], -1, undefined));
add("sys_decode_alternatives", 3, new Clause(6, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Place(-4), new Skeleton(".", [new Skeleton("$SEQ", [new Place(-5), new Place(-6)]), new Place(-7)])], [new Skeleton(new Cache("kb_clause_data"), [new Place(0), new Place(2), new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_decode_body"), [new Place(3), new Place(4)]), new Skeleton(new Cache("sys_decode_alternatives"), [new Place(1), new Place(2), new Place(5)])], -1, "."));
add("sys_decode_alternatives", 3, new Clause(0, ["[]", new Place(-1), "[]"], [], -1, "[]"));
add("sys_decode_expr", 2, new Clause(2, [new Place(-3), new Place(1)], [new Skeleton(new Cache("var"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_decode_expr", 2, new Clause(4, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("functor"), [new Place(1), new Place(-5), new Place(-1)]), new Skeleton(new Cache("ir_is_site"), [new Place(3)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("ir_site_name"), [new Place(3), new Place(-5)]), new Skeleton(new Cache("sys_decode_compute"), [new Place(1), new Place(2), new Place(3)])], 0, undefined));
add("sys_decode_expr", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("compound"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("=.."), [new Place(1), new Skeleton(".", [new Place(-3), new Place(-2)])]), new Skeleton(new Cache("sys_decode_args"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("=.."), [new Place(2), new Skeleton(".", [new Place(1), new Place(0)])])], 0, undefined));
add("sys_decode_expr", 2, new Clause(1, [new Place(-2), new Place(0)], [], -1, undefined));
add("sys_decode_compute", 3, new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("compound"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("=.."), [new Place(1), new Skeleton(".", [new Place(-1), new Place(-3)])]), new Skeleton(new Cache("sys_decode_args"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("=.."), [new Place(2), new Skeleton(".", [new Place(3), new Place(1)])])], 0, undefined));
add("sys_decode_compute", 3, new Clause(1, [new Place(-1), new Place(-2), new Place(0)], [], -1, undefined));
add("sys_decode_args", 2, new Clause(4, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Skeleton(".", [new Place(-4), new Place(-5)])], [new Skeleton(new Cache("sys_decode_expr"), [new Place(0), new Place(2)]), new Skeleton(new Cache("sys_decode_args"), [new Place(1), new Place(3)])], -1, "."));
add("sys_decode_args", 2, new Clause(0, ["[]", "[]"], [], -1, "[]"));
add("sys_untrans_body", 3, new Clause(4, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_untrans_rest"), [new Place(1), new Place(0), new Place(2), new Place(3)])], -1, "."));
add("sys_untrans_body", 3, new Clause(0, ["[]", new Place(-1), "true"], [], -1, "[]"));
add("sys_untrans_rest", 4, new Clause(6, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Place(-4), new Place(-5), new Skeleton(",", [new Place(-6), new Place(-7)])], [new Skeleton(new Cache("sys_untrans_goal"), [new Place(2), new Place(3), new Place(4)]), new Skeleton(new Cache("sys_untrans_rest"), [new Place(1), new Place(0), new Place(3), new Place(5)])], -1, "."));
add("sys_untrans_rest", 4, new Clause(3, ["[]", new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_untrans_goal"), [new Place(0), new Place(1), new Place(2)])], -1, "[]"));
add("sys_untrans_goal", 3, new Clause(4, [new Skeleton("$ALT", [new Place(-3)]), new Place(-4), new Place(-5)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_untrans_alternatives"), [new Place(1), new Place(2), new Place(3)])], 0, "$ALT"));
add("sys_untrans_goal", 3, new Clause(3, [new Skeleton("$CUT", [new Place(-3)]), new Skeleton("just", [new Place(-4)]), "!"], [new Skeleton(new Cache("=="), [new Place(1), new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, "$CUT"));
add("sys_untrans_goal", 3, new Clause(1, [new Place(-2), new Place(-1), new Place(0)], [], -1, undefined));
add("sys_untrans_alternatives", 3, new Clause(4, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_untrans_more"), [new Place(1), new Place(0), new Place(2), new Place(3)])], -1, "."));
add("sys_untrans_alternatives", 3, new Clause(0, ["[]", new Place(-1), "fail"], [], -1, "[]"));
add("sys_untrans_more", 4, new Clause(7, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Skeleton("$SEQ", [new Place(-4), new Place(-5)]), new Place(-6), new Skeleton(";", [new Place(-7), new Place(-8)])], [new Skeleton(new Cache("sys_untrans_alternative"), [new Place(2), new Place(3), new Place(4), new Place(5)]), new Skeleton(new Cache("sys_untrans_more"), [new Place(1), new Place(0), new Place(4), new Place(6)])], -1, "."));
add("sys_untrans_more", 4, new Clause(4, ["[]", new Skeleton("$SEQ", [new Place(-2), new Place(-3)]), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_untrans_alternative"), [new Place(0), new Place(1), new Place(2), new Place(3)])], -1, "[]"));
add("sys_untrans_alternative", 4, new Clause(6, [new Skeleton("just", [new Place(-2)]), new Place(-3), new Place(-4), new Skeleton("->", [new Place(-5), new Place(-6)])], [new Skeleton(new Cache("sys_untrans_split"), [new Place(1), new Place(0), new Place(-2), new Place(-3)]), new Skeleton(new Cache("sys_trans_mark"), [new Place(-7), new Place(0), new Place(-2)]), new Skeleton(new Cache("sys_untrans_body"), [new Place(0), new Place(5), new Place(3)]), new Skeleton(new Cache("sys_untrans_body"), [new Place(1), new Place(2), new Place(4)])], -1, "just"));
add("sys_untrans_alternative", 4, new Clause(3, ["nothing", new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_untrans_body"), [new Place(0), new Place(1), new Place(-3)]), new Skeleton(new Cache("sys_untrans_ambiguity"), [new Place(1), new Place(2)])], -1, "nothing"));
add("sys_untrans_split", 4, new Clause(4, [new Skeleton(".", [new Skeleton("$CUT", [new Place(-3)]), new Place(-4)]), new Place(-5), "[]", new Place(2)], [new Skeleton(new Cache("=="), [new Place(1), new Place(3)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, "."));
add("sys_untrans_split", 4, new Clause(4, [new Skeleton(".", [new Place(-2), new Place(-3)]), new Place(-4), new Skeleton(".", [new Place(0), new Place(-2)]), new Place(-5)], [new Skeleton(new Cache("sys_untrans_split"), [new Place(1), new Place(2), new Place(0), new Place(3)])], -1, "."));
add("sys_untrans_ambiguity", 2, new Clause(3, [new Skeleton("->", [new Place(-3), new Place(-4)]), new Skeleton(";", [new Skeleton("->", [new Place(1), new Place(2)]), "fail"])], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, "->"));
add("sys_untrans_ambiguity", 2, new Clause(1, [new Place(-2), new Place(0)], [], -1, undefined));
run(new Goal(1, [new Skeleton(new Cache("sys_get_locale"), [new Place(-2)]), new Skeleton(new Cache("set_prolog_flag"), ["sys_locale", new Place(0)])]));
run(new Goal(1, [new Skeleton(new Cache("sys_get_args"), [new Place(-2)]), new Skeleton(new Cache("set_prolog_flag"), ["argv", new Place(0)])]));
add("include", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("sys_file_relative"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("file_property"), [new Place(0), new Skeleton("real_path", [new Place(-2)])]), new Skeleton(new Cache("sys_include_file"), [new Place(0)])], -1, undefined));
add("sys_include_file", 1, new Clause(1, ["user"], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("current_input"), [new Place(-2)]), new Skeleton(new Cache("sys_include_stream"), ["user", new Place(0)])], 0, "user"));
add("sys_include_file", 1, new Clause(3, [new Place(-3)], [new Skeleton(new Cache("current_prolog_flag"), ["foreign_ext", new Place(-4)]), new Skeleton(new Cache("sub_atom"), [new Place(1), new Place(-1), new Place(-1), 0, new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_include_native"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("ir_object_current"), [new Place(1), "module", new Place(-3)]), new Skeleton(new Cache("os_invoke_main"), [new Place(1)])], 0, undefined));
add("sys_include_file", 1, new Clause(2, [new Place(-2)], [new Skeleton(new Cache("setup_once_cleanup"), [new Skeleton("open", [new Place(0), "read", new Place(-3)]), new Skeleton("sys_include_stream", [new Place(0), new Place(1)]), new Skeleton("close", [new Place(1)])])], -1, undefined));
add("sys_include_native", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Compound(new Cache("current_prolog_flag"), ["import_async", "on"]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("os_import_promise"), [new Place(1), new Place(2), new Place(-4)]), new Skeleton(new Cache("$YIELD"), [new Place(2)])], 0, undefined));
add("sys_include_native", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("os_import_sync"), [new Place(0), new Place(1)])], -1, undefined));
add(".", 2, new Clause(3, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("member"), [new Place(-4), new Skeleton(".", [new Place(0), new Place(1)])]), new Skeleton(new Cache("ensure_loaded"), [new Place(2)]), new Cache("fail")], -1, undefined));
add(".", 2, new Clause(0, [new Place(-1), new Place(-1)], [], -1, undefined));
add("ensure_loaded", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("ensure_loaded", 1, new Clause(1, ["user"], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Compound(new Cache("sys_include_file"), ["user"])], 0, "user"));
add("ensure_loaded", 1, new Clause(2, [new Place(-2)], [new Skeleton(new Cache("sys_file_relative"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("dg_get_partition"), [new Place(-3)]), new Skeleton(make_defined([new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_srcprop"), [new Place(1), new Skeleton("sys_link", [new Place(2)])]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined), new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("assertz"), [new Skeleton("sys_srcprop", [new Place(0), new Skeleton("sys_link", [new Place(1)])])])], -1, undefined)]), [new Place(1), new Place(0)]), new Skeleton(new Cache("sys_ensure_file"), [new Place(0)])], -1, undefined));
add("sys_ensure_file", 1, new Clause(2, [new Place(-2)], [new Skeleton(new Cache("sys_prop_map"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("ir_object_current"), [new Place(0), "real_path", new Place(-3)]), new Skeleton(new Cache("ir_object_current"), [new Place(0), "last_modified", new Place(-2)]), new Skeleton(new Cache("sys_check_file"), [new Place(1), new Place(0)])], -1, undefined));
add("make", 0, new Clause(0, [], [new Cache("sys_make_unmark"), new Compound(new Cache("sys_replay_file"), ["user"]), new Cache("sys_make_reclaim")], -1, undefined));
add("sys_make_unmark", 0, new Clause(2, [], [new Skeleton(new Cache("retract"), [new Skeleton("sys_source", [new Place(-2), new Place(-3), 1])]), new Skeleton(new Cache("assertz"), [new Skeleton("sys_source", [new Place(0), new Place(1), 0])]), new Cache("fail")], -1, undefined));
add("sys_make_unmark", 0, new Clause(0, [], [], -1, undefined));
add("sys_make_reclaim", 0, new Clause(1, [], [new Skeleton(new Cache("retract"), [new Skeleton("sys_source", [new Place(-2), new Place(-1), 0])]), new Skeleton(new Cache("sys_clear_file"), [new Place(0)]), new Cache("fail")], -1, undefined));
add("sys_make_reclaim", 0, new Clause(0, [], [], -1, undefined));
add("sys_check_file", 2, new Clause(5, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("shield"), [new Skeleton("sys_check_file2", [new Place(1), new Place(2), new Place(-5), new Place(-6)])]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_check_file3"), [new Place(1), new Place(2), new Place(3), new Place(4)])], 0, undefined));
add("sys_check_file", 2, new Clause(1, [new Place(-2), new Place(-1)], [new Skeleton(new Cache("sys_load_file"), [new Place(0)])], -1, undefined));
add("sys_check_file2", 4, new Clause(4, [new Place(-3), new Place(-1), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_source"), [new Place(1), new Place(2), new Place(3)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_check_file2", 4, new Clause(2, [new Place(-2), new Place(-3), new Place(-1), new Place(-1)], [new Skeleton(new Cache("assertz"), [new Skeleton("sys_source", [new Place(0), new Place(1), 1])]), new Cache("fail")], -1, undefined));
add("sys_check_file3", 4, new Clause(1, [new Place(-1), new Place(-1), new Place(-1), 1], [new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_check_file3", 4, new Clause(3, [new Place(-3), new Place(-4), new Place(2), new Place(-1)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("shield"), [new Skeleton(",", [new Skeleton("retractall", [new Skeleton("sys_source", [new Place(1), new Place(-1), new Place(-1)])]), new Skeleton("assertz", [new Skeleton("sys_source", [new Place(1), new Place(2), 1])])])]), new Skeleton(new Cache("sys_replay_file"), [new Place(1)])], 0, undefined));
add("sys_check_file3", 4, new Clause(2, [new Place(-2), new Place(-3), new Place(-1), new Place(-1)], [new Skeleton(new Cache("shield"), [new Skeleton(",", [new Skeleton("retractall", [new Skeleton("sys_source", [new Place(0), new Place(-1), new Place(-1)])]), new Skeleton("assertz", [new Skeleton("sys_source", [new Place(0), new Place(1), 1])])])]), new Skeleton(new Cache("sys_clear_file"), [new Place(0)]), new Skeleton(new Cache("sys_load_file"), [new Place(0)])], -1, undefined));
add("sys_load_file", 1, new Clause(2, [new Place(-2)], [new Skeleton(new Cache("setup_once_cleanup"), [new Skeleton("sys_loading_begin", [new Place(0), new Place(-3)]), new Skeleton("sys_include_file", [new Place(0)]), new Skeleton("sys_loading_end", [new Place(1)])])], -1, undefined));
add("sys_loading_begin", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("dg_get_partition"), [new Place(1)]), new Skeleton(new Cache("dg_set_partition"), [new Place(0)])], -1, undefined));
add("sys_loading_end", 1, new Clause(2, [new Place(-2)], [new Skeleton(new Cache("dg_get_partition"), [new Place(-3)]), new Skeleton(new Cache("dg_set_partition"), [new Place(0)]), new Skeleton(new Cache("os_task_current"), [new Place(-2)]), new Skeleton(new Cache("retractall"), [new Skeleton("sys_lastpred", [new Place(0), new Place(-1), new Place(-1)])]), new Skeleton(new Cache("retractall"), [new Skeleton("sys_predprop", [new Place(-1), new Place(-1), new Skeleton("sys_discontiguous", [new Place(1)])])])], -1, undefined));
add("sys_clear_file", 1, new Clause(3, [new Place(-2)], [new Skeleton(new Cache("retractall"), [new Skeleton("sys_op", [new Place(-1), new Place(-1), new Place(-1), new Place(-1), new Place(0)])]), new Skeleton(new Cache("retractall"), [new Skeleton("sys_srcprop", [new Place(0), new Place(-1)])]), new Skeleton(new Cache("sys_predprop"), [new Place(-3), new Place(-4), new Skeleton("sys_usage", [new Place(0)])]), new Skeleton(make_defined([new Clause(5, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("sys_predprop"), [new Place(1), new Place(2), new Skeleton("sys_usage", [new Place(-6)])]), new Skeleton(new Cache("\\=="), [new Place(3), new Place(4)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_clear_file3"), [new Place(1), new Place(2), new Place(3)])], 0, undefined), new Clause(2, [new Place(-2), new Place(-3), new Place(-1)], [new Skeleton(new Cache("sys_clear_file2"), [new Place(0), new Place(1)])], -1, undefined)]), [new Place(1), new Place(2), new Place(0)]), new Cache("fail")], -1, undefined));
add("sys_clear_file", 1, new Clause(0, [new Place(-1)], [], -1, undefined));
add("sys_clear_file2", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("retractall"), [new Skeleton("sys_predprop", [new Place(0), new Place(1), new Place(-1)])]), new Skeleton(new Cache("kb_pred_destroy"), [new Place(0), new Place(1)])], -1, undefined));
add("sys_clear_file3", 3, new Clause(4, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("retractall"), [new Skeleton("sys_predprop", [new Place(0), new Place(1), new Skeleton("sys_usage", [new Place(2)])])]), new Skeleton(new Cache("retractall"), [new Skeleton("sys_predprop", [new Place(0), new Place(1), new Skeleton("sys_multifile", [new Place(2)])])]), new Skeleton(new Cache("functor"), [new Place(-5), new Place(0), new Place(1)]), new Skeleton(new Cache("kb_clause_ref"), [new Place(3), 4, new Place(-5)]), new Skeleton(new Cache("kb_clause_shard"), [new Place(3), new Place(2)]), new Skeleton(new Cache("kb_clause_remove"), [new Place(0), new Place(1), 1, new Place(3)]), new Cache("fail")], -1, undefined));
add("sys_clear_file3", 3, new Clause(0, [new Place(-1), new Place(-1), new Place(-1)], [], -1, undefined));
add("sys_replay_file", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("sys_srcprop"), [new Place(0), new Skeleton("sys_link", [new Place(-2)])]), new Skeleton(new Cache("sys_replay_file2"), [new Place(0)]), new Cache("fail")], -1, undefined));
add("sys_replay_file", 1, new Clause(0, [new Place(-1)], [], -1, undefined));
add("sys_replay_file2", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("sys_trap"), [new Skeleton("sys_ensure_file", [new Place(0)]), new Place(-2), new Skeleton(";", [new Skeleton(",", [new Skeleton("sys_chain_head", [new Place(0), new Skeleton("error", [new Skeleton("system_error", [new Place(-1)]), new Place(-1)])]), new Skeleton("sys_raise", [new Place(0)])]), new Skeleton("sys_print_error", [new Place(0)])])])], -1, undefined));
run(new Goal(0, [new Compound(new Cache("kb_pred_touch"), ["sys_including", 3, 1])]));
add("sys_include_stream", 2, new Clause(3, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("os_task_current"), [new Place(-4)]), new Skeleton(new Cache("setup_once_cleanup"), [new Skeleton("asserta", [new Skeleton("sys_including", [new Place(0), new Place(2), new Place(1)])]), new Skeleton("sys_include_lines", [new Place(1)]), new Skeleton("once", [new Skeleton("retract", [new Skeleton("sys_including", [new Place(0), new Place(2), new Place(1)])])])])], -1, undefined));
add("sys_include_lines", 1, new Clause(2, [new Place(-3)], [new Cache("repeat"), new Skeleton(new Cache("sys_trap"), [new Skeleton("sys_next_term", [new Place(1)]), new Place(-3), new Skeleton(";", [new Skeleton(",", [new Skeleton("sys_chain_head", [new Place(1), new Skeleton("error", [new Skeleton("system_error", [new Place(-1)]), new Place(-1)])]), new Skeleton("sys_raise", [new Place(1)])]), new Skeleton(",", [new Skeleton("sys_print_error", [new Place(1)]), "fail"])])]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_next_term", 1, new Clause(3, [new Place(-2)], [new Skeleton(new Cache("read_term"), [new Place(0), new Place(-2), new Skeleton(".", [new Skeleton("variable_names", [new Place(-3)]), new Skeleton(".", [new Skeleton("singletons", [new Place(-4)]), "[]"])])]), new Skeleton(make_defined([new Clause(2, [new Place(-3), new Place(-1), new Place(-1)], [new Skeleton(new Cache("=="), [new Place(1), "end_of_file"]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined), new Clause(3, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_expand_include"), [new Place(0), new Place(1), new Place(2), new Place(-4)]), new Skeleton(new Cache("sys_style_static"), [new Place(2)]), new Skeleton(new Cache("sys_handle_static"), [new Place(2)]), new Cache("fail")], -1, undefined)]), [new Place(0), new Place(1), new Place(2)])], -1, undefined));
add("sys_handle_static", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("sys_trans_horn"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("sys_assertz_static"), [new Place(0)])], -1, undefined));
add("sys_assertz_static", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("sys_assertz_static", 1, new Clause(4, [new Place(-3)], [new Skeleton(new Cache("="), [new Place(1), new Skeleton("tr_clause", [new Place(-1), new Place(-4), new Place(-1)])]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("functor"), [new Place(2), new Place(-4), new Place(-2)]), new Skeleton(new Cache("sys_pred_type"), [new Place(2), new Place(0), new Place(-5)]), new Skeleton(new Cache("sys_encode_horn"), [new Place(1), new Place(-3), new Place(3)]), new Skeleton(new Cache("sys_host_make"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("ir_clause_add"), [new Place(2), new Place(0), new Place(1), 1])], 0, "tr_clause"));
add("sys_assertz_static", 1, new Clause(2, [new Place(-3)], [new Skeleton(new Cache("="), [new Place(1), new Skeleton("tr_goal", [new Place(-1)])]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_encode_horn"), [new Place(1), new Place(-3), 1]), new Skeleton(new Cache("sys_host_make"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("ir_goal_run"), [new Place(1)])], 0, "tr_goal"));
add("sys_assertz_static", 1, new Clause(1, [new Place(-2)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["tr_clause_or_goal", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_pred_type", 3, new Clause(3, [new Place(-3), new Place(-4), 0], [new Skeleton(new Cache("kb_pred_link"), [new Place(1), new Place(2), new Place(-4)]), new Skeleton(new Cache("kb_link_flags"), [new Place(2), new Place(-4)]), new Skeleton(new Cache("=\\="), [new Skeleton(new Cache("\/\\"), [new Place(2), 1]), 0]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("sys_pred_type", 3, new Clause(0, [new Place(-1), new Place(-1), 1], [], -1, undefined));
add("sys_file_relative", 2, new Clause(1, [new Place(-2), new Place(-1)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("sys_file_relative", 2, new Clause(3, [new Skeleton("library", [new Place(-3)]), new Place(-4)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_file_liblet"), [new Place(1), ".p", new Place(2)])], 0, "library"));
add("sys_file_relative", 2, new Clause(3, [new Skeleton("foreign", [new Place(-3)]), new Place(-4)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("current_prolog_flag"), ["foreign_ext", new Place(-2)]), new Skeleton(new Cache("sys_file_liblet"), [new Place(1), new Place(0), new Place(2)])], 0, "foreign"));
add("sys_file_relative", 2, new Clause(4, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_file_including"), [new Place(-5)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_file_combine"), [new Place(3), new Place(1), new Place(2)])], 0, undefined));
add("sys_file_relative", 2, new Clause(2, [new Place(-2), new Place(-3)], [new Skeleton(new Cache("absolute_file_name"), [new Place(0), new Place(1)])], -1, undefined));
add("sys_file_liblet", 3, new Clause(4, [new Place(-2), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_file_struct"), [new Place(0), new Place(-2)]), new Skeleton(new Cache("atom_split"), [new Place(-5), "", new Skeleton(".", ["liblet\/", new Skeleton(".", [new Place(0), new Skeleton(".", [new Place(1), "[]"])])])]), new Skeleton(new Cache("current_prolog_flag"), ["system_url", new Place(-3)]), new Skeleton(new Cache("sys_file_combine"), [new Place(1), new Place(3), new Place(2)])], -1, undefined));
add("sys_file_including", 1, new Clause(3, [new Place(-3)], [new Skeleton(new Cache("os_task_current"), [new Place(-4)]), new Skeleton(new Cache("sys_including"), [new Place(1), new Place(2), new Place(-1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("\\=="), [new Place(1), "user"])], 0, undefined));
add("sys_file_struct", 2, new Clause(1, [new Place(-2), new Place(-1)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("sys_file_struct", 2, new Clause(4, [new Skeleton("\/", [new Place(-3), new Place(-4)]), new Place(-5)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("sys_file_struct"), [new Place(1), new Place(-3)]), new Skeleton(new Cache("atom_split"), [new Place(3), "", new Skeleton(".", [new Place(1), new Skeleton(".", ["\/", new Skeleton(".", [new Place(2), "[]"])])])])], 0, "\/"));
add("sys_file_struct", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("atom"), [new Place(1)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(1), new Place(2)])], 0, undefined));
add("sys_file_struct", 2, new Clause(1, [new Place(-2), new Place(-1)], [new Skeleton(new Cache("throw"), [new Skeleton("error", [new Skeleton("type_error", ["atom", new Place(0)]), new Place(-1)])])], -1, undefined));
add("sys_expand_include", 4, new Clause(1, [new Place(-2), new Place(-1), new Place(-1), new Place(-1)], [new Skeleton(new Cache("var"), [new Place(0)]), new Skeleton(new Cache("throw"), [new Skeleton("error", ["instantiation_error", new Place(-1)])])], -1, undefined));
add("sys_expand_include", 4, new Clause(4, [new Skeleton("?-", [new Place(-3)]), new Place(-4), new Place(-1), new Place(-5)], [new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("="), [new Place(3), new Skeleton(":-", [new Skeleton("sys_query_unattended", [new Place(1), new Place(2)])])])], 0, "?-"));
add("sys_expand_include", 4, new Clause(3, [new Place(-2), new Place(-1), new Place(-3), new Place(-4)], [new Skeleton(new Cache("sys_singleton_check"), [new Place(1)]), new Skeleton(new Cache("expand_term"), [new Place(0), new Place(2)])], -1, undefined));
add("expand_term", 2, new Clause(3, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("term_conversion"), [new Place(1), new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)])], 0, undefined));
add("expand_term", 2, new Clause(1, [new Place(-2), new Place(0)], [], -1, undefined));
add("sys_query_unattended", 2, new Clause(4, [new Place(-3), new Place(-4)], [new Skeleton(new Cache("$MARK"), [new Place(-5)]), new Place(1), new Skeleton(new Cache("$MARK"), [new Place(-3)]), new Skeleton(new Cache("sys_answer_show"), [new Place(2)]), new Skeleton(make_defined([new Clause(4, [new Place(-3), new Place(-4), new Place(-5)], [new Skeleton(new Cache("=="), [new Place(1), new Place(2)]), new Skeleton(new Cache("$CUT"), [new Place(0)]), new Skeleton(new Cache("$CUT"), [new Place(3)]), new Cache("sys_listing_period")], 0, undefined), new Clause(0, [new Place(-1), new Place(-1), new Place(-1)], [new Compound(new Cache("put_atom"), [";"]), new Cache("nl"), new Cache("fail")], -1, undefined)]), [new Place(3), new Place(1), new Place(0)])], 0, undefined));
add("sys_query_unattended", 2, new Clause(0, [new Place(-1), new Place(-1)], [new Compound(new Cache("put_atom"), ["fail"]), new Cache("sys_listing_period")], -1, undefined));
add("sys_singleton_check", 1, new Clause(2, [new Skeleton(".", [new Place(-2), new Place(-3)])], [new Skeleton(new Cache("sys_assoc_keys"), [new Skeleton(".", [new Place(0), new Place(1)]), new Place(-3)]), new Skeleton(new Cache("="), [new Place(-2), new Skeleton("warning", [new Skeleton("syntax_error", ["singleton_var", new Place(1)]), new Place(-1)])]), new Skeleton(new Cache("sys_fill_stack"), [new Place(0)]), new Skeleton(new Cache("sys_print_error"), [new Place(0)])], -1, "."));
add("sys_singleton_check", 1, new Clause(0, ["[]"], [], -1, "[]"));
add("sys_assoc_keys", 2, new Clause(2, [new Skeleton(".", [new Skeleton("=", [new Place(-2), new Place(-1)]), new Place(-3)]), new Skeleton(".", [new Place(0), new Place(-2)])], [new Skeleton(new Cache("sys_assoc_keys"), [new Place(1), new Place(0)])], -1, "."));
add("sys_assoc_keys", 2, new Clause(0, ["[]", "[]"], [], -1, "[]"));
add("strings", 3, new Clause(0, ["syntax_error.discontiguous_pred", "de", "Unterbrochenes Prädikat ~, entsprechend deklarieren."], [], -1, "syntax_error.discontiguous_pred"));
add("strings", 3, new Clause(0, ["syntax_error.discontiguous_pred", "", "Discontiguous predicate ~, declare accordingly."], [], -1, "syntax_error.discontiguous_pred"));
run(new Goal(0, [new Compound(new Cache("sys_multifile_safe"), ["strings", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_multifile_safe"), ["term_conversion", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_multifile_safe"), ["strings", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_multifile_safe"), ["strings", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_trans_horn", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_trans_body", 5])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_trans_cut", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_trans_disj", 5])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_trans_alternative", 5])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_trans_mark", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_encode_horn", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_encode_alternatives", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_ast_body", 6])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_ast_goal", 7])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_ast_invoke", 5])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_ast_args", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_ast_expr", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_ast_compute", 5])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_ast_list", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_ast_term", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_const_functor", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_const_only", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_ast_var", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_current_dcg", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_set_dcg", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_idx_value", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_idx_value_arg", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_idx_value_term", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["eq_contains", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["eq_intersection", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_check_callable", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["open", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["close", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["stream_property", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["term_variables", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["is", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["call", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["true", 0])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["!", 0])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), [",", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), [";", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["->", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["\\=", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["\\+", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["once", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["repeat", 0])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["catch", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_error_handler", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_chain_head", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["throw", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_fill_stack", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_fetch_stack", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["ignore", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["chain", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_chain_error", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_chain_raise", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_chain_concat", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["abort", 0])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["once_cleanup", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["setup_once_cleanup", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_setup_once_cleanup", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_once_cleanup", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_print_error", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_print_error", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_print_trace", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_print_frame", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_print_message", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_print_message", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_print_message", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_inter_polate", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_zipper_output", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["get_string", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["get_string", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_locale_ancestor", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_check_atom", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_check_integer", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["call_later", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_frost_horn", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_call_print", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["create_task", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sleep", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["time_out", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_timeout", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["member", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_member", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["select", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_select", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["findall", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_findall", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["list_to_set", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_list_to_set", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["reverse", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_reverse", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["append", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["length", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_length", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_length", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["number_codes", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["between", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_between", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_lastpred", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_update_last", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_style_static", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_style_head", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_style_indicator", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_usage_predicate", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["discontiguous", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["multifile", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_multifile_safe", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_source", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_srcprop", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["current_source", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["source_property", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_emulated", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["set_prolog_flag", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_prolog_flag_set", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_check_codes", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["current_prolog_flag", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_prolog_flag_get", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_prolog_flag_decode", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["statistics", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_stat_get", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["statistics", 0])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_convert_stat", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["time", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_time_set", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_time_show", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["try_call_finally", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sub_atom", 5])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["last_sub_atom", 5])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_op", 5])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["current_op", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["op", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_check_priority", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_op_retract", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_op_assert", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_op_space", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_op_format", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_op_format2", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_op_format3", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["term_conversion", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_phrase_expansion", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_list_expansion", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["absolute_file_name", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_file_combine", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["is_absolute_file_name", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["file_directory_name", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["file_base_name", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["strings", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["dynamic", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["asserta", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_host_asserta", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["assertz", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_host_assertz", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["clause", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["retract", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["retractall", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["abolish", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_abolish", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_predprop", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["current_predicate", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["predicate_property", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_predprop_pattern", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_predprop_get", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_predprop_flag", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_host_make", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_host_list", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_host_instr", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_host_current_max", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_host_set_max", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_host_current_recycle", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_host_set_recycle", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_host_alternatives", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_host_const", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_host_args", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_decode_body", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_decode_callable", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_decode_site", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_decode_goal", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_decode_link", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_decode_alternatives", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_decode_expr", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_decode_compute", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_decode_args", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_untrans_body", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_untrans_rest", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_untrans_goal", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_untrans_alternatives", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_untrans_more", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_untrans_alternative", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_untrans_split", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_untrans_ambiguity", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["include", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_include_file", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_include_native", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), [".", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["ensure_loaded", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_ensure_file", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["make", 0])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_make_unmark", 0])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_make_reclaim", 0])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_check_file", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_check_file2", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_check_file3", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_load_file", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_loading_begin", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_loading_end", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_clear_file", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_clear_file2", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_clear_file3", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_replay_file", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_replay_file2", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_including", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_include_stream", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_include_lines", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_next_term", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_handle_static", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_assertz_static", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_pred_type", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_file_relative", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_file_liblet", 3])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_file_including", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_file_struct", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_expand_include", 4])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["expand_term", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_query_unattended", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_singleton_check", 1])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["sys_assoc_keys", 2])]));
run(new Goal(0, [new Compound(new Cache("sys_usage_predicate"), ["strings", 3])]));