ekms 9.6.3-beta.2 → 9.6.3-beta.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/common/actions.instance.json +130 -5
  2. package/common/actions.js +54 -4
  3. package/common/actions.test.json +31359 -322
  4. package/common/angle.instance.json +58 -834
  5. package/common/articles.js +1 -2
  6. package/common/compass.instance.json +3 -18
  7. package/common/concept.js +2 -1
  8. package/common/conjunction.js +11 -17
  9. package/common/dialogues.js +3 -3
  10. package/common/dimension.instance.json +4 -69
  11. package/common/dimension.js +5 -5
  12. package/common/drone.instance.json +14985 -2538
  13. package/common/drone.js +276 -61
  14. package/common/drone.test.json +412474 -28440
  15. package/common/drone_v1.instance.json +324 -44
  16. package/common/drone_v1.js +9 -9
  17. package/common/edible.instance.json +72 -0
  18. package/common/fastfood.instance.json +5 -72
  19. package/common/fastfood.js +1 -1
  20. package/common/formulas.instance.json +0 -5
  21. package/common/formulas.js +1 -1
  22. package/common/gdefaults.js +16 -5
  23. package/common/helpers/conjunction.js +2 -0
  24. package/common/helpers/formulas.js +6 -0
  25. package/common/helpers/properties.js +9 -7
  26. package/common/helpers.js +9 -5
  27. package/common/hierarchy.js +2 -0
  28. package/common/length.instance.json +555 -5686
  29. package/common/math.instance.json +10 -12
  30. package/common/math.js +6 -5
  31. package/common/menus.instance.json +0 -35
  32. package/common/meta.js +1 -1
  33. package/common/nameable.js +7 -9
  34. package/common/ordinals.js +51 -5
  35. package/common/pipboy.instance.json +0 -85
  36. package/common/pipboy.js +1 -1
  37. package/common/pressure.instance.json +28 -370
  38. package/common/properties.js +4 -3
  39. package/common/rates.instance.json +1 -1
  40. package/common/rates.js +3 -3
  41. package/common/reminders.js +1 -1
  42. package/common/reports.instance.json +9 -176
  43. package/common/reports.js +2 -2
  44. package/common/scorekeeper.js +1 -1
  45. package/common/sdefaults.js +40 -5
  46. package/common/stm.js +50 -42
  47. package/common/temperature.instance.json +648 -2303
  48. package/common/time.instance.json +7376 -1965
  49. package/common/time.js +22 -1
  50. package/common/time.test.json +13239 -0
  51. package/common/ui.instance.json +0 -5
  52. package/common/ui.js +1 -1
  53. package/common/weight.instance.json +329 -1834
  54. package/common/wp.instance.json +88 -70
  55. package/package.json +3 -3
@@ -511,11 +511,6 @@
511
511
  "concept",
512
512
  false
513
513
  ],
514
- [
515
- "mathematicalExpression",
516
- "number",
517
- false
518
- ],
519
514
  [
520
515
  "mathematicalExpression",
521
516
  "property",
@@ -1343,7 +1338,7 @@
1343
1338
  }
1344
1339
  ]
1345
1340
  },
1346
- "trace": "\n\n>>>>>>>>>>>>> Counter 1\n summary\n\n 0. price/0 - \"price\"\n 1. list/0 - \"and\"\n 2. quantity/0 - \"quantity\"\n 3. is/0 - \"are\"\n 4. property/0 (dead) - \"properties\"\n\n details\n\n 0. Operator(price/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 0) - \"price\"\n {\n default: true\n marker: \n Operator(price/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 1. Operator(list/0, PASS, ['Selector(Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\"), , same/(), [And([\"ListableType(Listable(Type(variable: \\'type\\')))\", \\'Listable(Unify(context.instance, variables.instance))\\'])]<==>[And([\"ListableType(Listable(Type(variable: \\'type\\')))\", \\'Listable(Unify(context.instance, variables.instance))\\'])], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")), variables({}) bridge(bridge)) (1, 5) - \"and\"\n {\n default: true\n marker: \n Operator(list/0), passthrough\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'Listable(Unify(context.instance, variables.instance))'])]\n Right Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'Listable(Unify(context.instance, variables.instance))'])]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")\n\n range: {'start': 6, 'end': 8}\n text: \"and\"\n word: \"and\"\n }\n 2. Operator(quantity/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 8) - \"quantity\"\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n 3. Operator(is/0, ['Selector(Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\"), , [ListableType(Listable(Type(\\'queryable\\')))]<==>[ListableType(Listable(Type(\\'queryable\\')))], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")), variables({}) bridge(bridge)) (1, 12) - \"are\"\n {\n marker: \n Operator(is/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n Left Selector: [ListableType(Listable(Type('queryable')))]\n Right Selector: [ListableType(Listable(Type('queryable')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n 4. Operator(property/0, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (1, 18) - \"properties\"\n {\n dead: true\n marker: \n Operator(property/0)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=0) is ('price', 0)\n Context:\n {\n default: true\n marker: \n Operator(price/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n\n>>>>>>>>>>>>> Counter 2\n summary\n\n *0. price/1 (dead) - \"price\"\n 1. list/0 - \"and\"\n 2. quantity/0 - \"quantity\"\n 3. is/0 - \"are\"\n 4. property/0 (dead) - \"properties\"\n\n details\n\n 0. Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (2, 0) - \"price\"\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 1. Operator(list/0, PASS, ['Selector(Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\"), , same/(), [And([\"ListableType(Listable(Type(variable: \\'type\\')))\", \\'Listable(Unify(context.instance, variables.instance))\\'])]<==>[And([\"ListableType(Listable(Type(variable: \\'type\\')))\", \\'Listable(Unify(context.instance, variables.instance))\\'])], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")), variables({}) bridge(bridge)) (1, 5) - \"and\"\n {\n default: true\n marker: \n Operator(list/0), passthrough\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'Listable(Unify(context.instance, variables.instance))'])]\n Right Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'Listable(Unify(context.instance, variables.instance))'])]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")\n\n range: {'start': 6, 'end': 8}\n text: \"and\"\n word: \"and\"\n }\n 2. Operator(quantity/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 8) - \"quantity\"\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n 3. Operator(is/0, ['Selector(Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\"), , [ListableType(Listable(Type(\\'queryable\\')))]<==>[ListableType(Listable(Type(\\'queryable\\')))], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")), variables({}) bridge(bridge)) (1, 12) - \"are\"\n {\n marker: \n Operator(is/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n Left Selector: [ListableType(Listable(Type('queryable')))]\n Right Selector: [ListableType(Listable(Type('queryable')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n 4. Operator(property/0, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (1, 18) - \"properties\"\n {\n dead: true\n marker: \n Operator(property/0)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=1) is ('list', 0)\n Context:\n {\n default: true\n marker: \n Operator(list/0), passthrough\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'Listable(Unify(context.instance, variables.instance))'])]\n Right Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'Listable(Unify(context.instance, variables.instance))'])]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")\n\n range: {'start': 6, 'end': 8}\n text: \"and\"\n word: \"and\"\n }\n\n\n>>>>>>>>>>>>> Counter 3\n summary\n\n *0. list/1 - \"price and quantity\"\n 1. is/0 - \"are\"\n 2. property/0 (dead) - \"properties\"\n\n details\n\n 0. Operator(list/1, PASS, ['Selector(Bridge(\"{ ...operator, value: append(before, operator.value) }\"), , same/(), [And([\"ListableType(Listable(Type(variable: \\'type\\')))\", \\'Listable(Unify(context.instance, variables.instance))\\'])]<==>[], bridge(bridge), passthrough)'], evaluator(Bridge(\"{ ...operator, value: append(before, operator.value) }\")), variables({'found_types': ['quantity', 'price'], 'type': ['queryable', 'quantifier', 'property', 'number', 'listable', 'quantity', 'theAble', 'comparable']}) bridge(bridge)) (3, 0) - \"price and quantity\"\n {\n prioritized_by: [('list', 0)]\n default: true\n isList: true\n listable: true\n marker: \n Operator(list/1), passthrough\n Selectors:\n [\n Selector, passthrough\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'Listable(Unify(context.instance, variables.instance))'])]\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n Variables:\n found_types: ['quantity', 'price']\n type: ['queryable', 'quantifier', 'property', 'number', 'listable', 'quantity', 'theAble', 'comparable']\n\n range: {'start': 0, 'end': 17}\n text: \"price and quantity\"\n types: [\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n 1. Operator(is/0, ['Selector(Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\"), , [ListableType(Listable(Type(\\'queryable\\')))]<==>[ListableType(Listable(Type(\\'queryable\\')))], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")), variables({}) bridge(bridge)) (1, 12) - \"are\"\n {\n marker: \n Operator(is/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n Left Selector: [ListableType(Listable(Type('queryable')))]\n Right Selector: [ListableType(Listable(Type('queryable')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n 2. Operator(property/0, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (1, 18) - \"properties\"\n {\n dead: true\n marker: \n Operator(property/0)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=1) is ('is', 0)\n Context:\n {\n marker: \n Operator(is/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n Left Selector: [ListableType(Listable(Type('queryable')))]\n Right Selector: [ListableType(Listable(Type('queryable')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n\n\n>>>>>>>>>>>>> Counter 4\n summary\n\n *0. is/1 - \"price and quantity are properties\"\n\n details\n\n 0. Operator(is/1, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({'found_types': []}) bridge(bridge)) (4, 0) - \"price and quantity are properties\"\n {\n prioritized_by: [('is', 0)]\n marker: \n Operator(is/1)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n Variables:\n found_types: []\n\n number: \"many\"\n one: \n {\n default: true\n isList: true\n listable: true\n marker: \n Operator(list/1), passthrough\n Selectors:\n [\n Selector, passthrough\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'Listable(Unify(context.instance, variables.instance))'])]\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n Variables:\n found_types: ['quantity', 'price']\n type: ['queryable', 'quantifier', 'property', 'number', 'listable', 'quantity', 'theAble', 'comparable']\n\n number: \"many\"\n range: {'start': 0, 'end': 17}\n text: \"price and quantity\"\n types: [\n 'quantity'\n, 'price'\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n\n range: {'start': 0, 'end': 32}\n text: \"price and quantity are properties\"\n two: \n {\n dead: true\n marker: \n Operator(property/0)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n types: [\n 'property'\n ]\n value: \"property\"\n word: \"properties\"\n }\n\n word: \"are\"\n }\n<<<<<<<<<<<<<\nNext Op (index=0) is ('is', 1)\n Context:\n {\n prioritized_by: [('is', 0)]\n marker: \n Operator(is/1)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n Variables:\n found_types: []\n\n number: \"many\"\n one: \n {\n default: true\n isList: true\n listable: true\n marker: \n Operator(list/1), passthrough\n Selectors:\n [\n Selector, passthrough\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'Listable(Unify(context.instance, variables.instance))'])]\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n Variables:\n found_types: ['quantity', 'price']\n type: ['queryable', 'quantifier', 'property', 'number', 'listable', 'quantity', 'theAble', 'comparable']\n\n number: \"many\"\n range: {'start': 0, 'end': 17}\n text: \"price and quantity\"\n types: [\n 'quantity'\n, 'price'\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n\n range: {'start': 0, 'end': 32}\n text: \"price and quantity are properties\"\n two: \n {\n dead: true\n marker: \n Operator(property/0)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n types: [\n 'property'\n ]\n value: \"property\"\n word: \"properties\"\n }\n\n word: \"are\"\n }\n\n\n>>>>>>>>>>>>> Counter 5\n summary\n\n *0. is/2 (dead) - \"price and quantity are properties\"\n\n details\n\n 0. Operator(is/2, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (5, 0) - \"price and quantity are properties\"\n {\n prioritized_by: [('is', 1)]\n dead: true\n marker: \n Operator(is/2)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n number: \"many\"\n one: \n {\n default: true\n isList: true\n listable: true\n marker: \n Operator(list/1), passthrough\n Selectors:\n [\n Selector, passthrough\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'Listable(Unify(context.instance, variables.instance))'])]\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n Variables:\n found_types: ['quantity', 'price']\n type: ['queryable', 'quantifier', 'property', 'number', 'listable', 'quantity', 'theAble', 'comparable']\n\n number: \"many\"\n range: {'start': 0, 'end': 17}\n text: \"price and quantity\"\n types: [\n 'quantity'\n, 'price'\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n\n range: {'start': 0, 'end': 32}\n text: \"price and quantity are properties\"\n two: \n {\n dead: true\n marker: \n Operator(property/0)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n types: [\n 'property'\n ]\n value: \"property\"\n word: \"properties\"\n }\n\n word: \"are\"\n }\n<<<<<<<<<<<<<\n",
1341
+ "trace": "\n\n>>>>>>>>>>>>> Counter 1\n summary\n\n 0. price/0 - \"price\"\n 1. list/0 - \"and\"\n 2. quantity/0 - \"quantity\"\n 3. is/0 - \"are\"\n 4. property/0 (dead) - \"properties\"\n\n details\n\n 0. Operator(price/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 0) - \"price\"\n {\n default: true\n marker: \n Operator(price/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 1. Operator(list/0, PASS, ['Selector(Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\"), , same/(), [And([\"ListableType(Listable(Type(variable: \\'type\\')))\", \\'And([\\\\\\'Listable(Unify(context.instance, variables.instance))\\\\\\', \\\\\\'And([\\\\\\\\\\\\\\'Listable(Unify(context.dead, variables.dead))\\\\\\\\\\\\\\', \\\\\\\\\\\\\\'Not([\"ListableType(Listable(Type(variable: \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'contexts\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', 1, \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'notConjunctableWith\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\')\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\')))\"])\\\\\\\\\\\\\\'])\\\\\\'])\\'])]<==>[And([\"ListableType(Listable(Type(variable: \\'type\\')))\", \\'And([\\\\\\'Listable(Unify(context.instance, variables.instance))\\\\\\', \\\\\\'And([\\\\\\\\\\\\\\'Listable(Unify(context.dead, variables.dead))\\\\\\\\\\\\\\', \\\\\\\\\\\\\\'Not([\"ListableType(Listable(Type(variable: \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'contexts\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', -1, \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'notConjunctableWith\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\')\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\')))\"])\\\\\\\\\\\\\\'])\\\\\\'])\\'])], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")), variables({}) bridge(bridge)) (1, 5) - \"and\"\n {\n default: true\n marker: \n Operator(list/0), passthrough\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'And([\\'Listable(Unify(context.instance, variables.instance))\\', \\'And([\\\\\\'Listable(Unify(context.dead, variables.dead))\\\\\\', \\\\\\'Not([\"ListableType(Listable(Type(variable: \\\\\\\\\\\\\\'(\\\\\\\\\\\\\\'contexts\\\\\\\\\\\\\\', 1, \\\\\\\\\\\\\\'notConjunctableWith\\\\\\\\\\\\\\')\\\\\\\\\\\\\\')))\"])\\\\\\'])\\'])'])]\n Right Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'And([\\'Listable(Unify(context.instance, variables.instance))\\', \\'And([\\\\\\'Listable(Unify(context.dead, variables.dead))\\\\\\', \\\\\\'Not([\"ListableType(Listable(Type(variable: \\\\\\\\\\\\\\'(\\\\\\\\\\\\\\'contexts\\\\\\\\\\\\\\', -1, \\\\\\\\\\\\\\'notConjunctableWith\\\\\\\\\\\\\\')\\\\\\\\\\\\\\')))\"])\\\\\\'])\\'])'])]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")\n\n range: {'start': 6, 'end': 8}\n text: \"and\"\n word: \"and\"\n }\n 2. Operator(quantity/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 8) - \"quantity\"\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n 3. Operator(is/0, ['Selector(Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\"), , [ListableType(Listable(Type(\\'queryable\\')))]<==>[ListableType(Listable(Type(\\'queryable\\')))], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")), variables({}) bridge(bridge)) (1, 12) - \"are\"\n {\n marker: \n Operator(is/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n Left Selector: [ListableType(Listable(Type('queryable')))]\n Right Selector: [ListableType(Listable(Type('queryable')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n 4. Operator(property/0, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (1, 18) - \"properties\"\n {\n dead: true\n marker: \n Operator(property/0)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=0) is ('price', 0)\n Context:\n {\n default: true\n marker: \n Operator(price/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n\n>>>>>>>>>>>>> Counter 2\n summary\n\n *0. price/1 (dead) - \"price\"\n 1. list/0 - \"and\"\n 2. quantity/0 - \"quantity\"\n 3. is/0 - \"are\"\n 4. property/0 (dead) - \"properties\"\n\n details\n\n 0. Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (2, 0) - \"price\"\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 1. Operator(list/0, PASS, ['Selector(Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\"), , same/(), [And([\"ListableType(Listable(Type(variable: \\'type\\')))\", \\'And([\\\\\\'Listable(Unify(context.instance, variables.instance))\\\\\\', \\\\\\'And([\\\\\\\\\\\\\\'Listable(Unify(context.dead, variables.dead))\\\\\\\\\\\\\\', \\\\\\\\\\\\\\'Not([\"ListableType(Listable(Type(variable: \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'contexts\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', 1, \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'notConjunctableWith\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\')\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\')))\"])\\\\\\\\\\\\\\'])\\\\\\'])\\'])]<==>[And([\"ListableType(Listable(Type(variable: \\'type\\')))\", \\'And([\\\\\\'Listable(Unify(context.instance, variables.instance))\\\\\\', \\\\\\'And([\\\\\\\\\\\\\\'Listable(Unify(context.dead, variables.dead))\\\\\\\\\\\\\\', \\\\\\\\\\\\\\'Not([\"ListableType(Listable(Type(variable: \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'contexts\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', -1, \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'notConjunctableWith\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\')\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\')))\"])\\\\\\\\\\\\\\'])\\\\\\'])\\'])], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")), variables({}) bridge(bridge)) (1, 5) - \"and\"\n {\n default: true\n marker: \n Operator(list/0), passthrough\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'And([\\'Listable(Unify(context.instance, variables.instance))\\', \\'And([\\\\\\'Listable(Unify(context.dead, variables.dead))\\\\\\', \\\\\\'Not([\"ListableType(Listable(Type(variable: \\\\\\\\\\\\\\'(\\\\\\\\\\\\\\'contexts\\\\\\\\\\\\\\', 1, \\\\\\\\\\\\\\'notConjunctableWith\\\\\\\\\\\\\\')\\\\\\\\\\\\\\')))\"])\\\\\\'])\\'])'])]\n Right Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'And([\\'Listable(Unify(context.instance, variables.instance))\\', \\'And([\\\\\\'Listable(Unify(context.dead, variables.dead))\\\\\\', \\\\\\'Not([\"ListableType(Listable(Type(variable: \\\\\\\\\\\\\\'(\\\\\\\\\\\\\\'contexts\\\\\\\\\\\\\\', -1, \\\\\\\\\\\\\\'notConjunctableWith\\\\\\\\\\\\\\')\\\\\\\\\\\\\\')))\"])\\\\\\'])\\'])'])]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")\n\n range: {'start': 6, 'end': 8}\n text: \"and\"\n word: \"and\"\n }\n 2. Operator(quantity/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 8) - \"quantity\"\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n 3. Operator(is/0, ['Selector(Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\"), , [ListableType(Listable(Type(\\'queryable\\')))]<==>[ListableType(Listable(Type(\\'queryable\\')))], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")), variables({}) bridge(bridge)) (1, 12) - \"are\"\n {\n marker: \n Operator(is/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n Left Selector: [ListableType(Listable(Type('queryable')))]\n Right Selector: [ListableType(Listable(Type('queryable')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n 4. Operator(property/0, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (1, 18) - \"properties\"\n {\n dead: true\n marker: \n Operator(property/0)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=1) is ('list', 0)\n Context:\n {\n default: true\n marker: \n Operator(list/0), passthrough\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'And([\\'Listable(Unify(context.instance, variables.instance))\\', \\'And([\\\\\\'Listable(Unify(context.de\n variables.dead))\\\\\\', \\\\\\'Not([\"ListableType(Listable(Type(variable: \\\\\\\\\\\\\\'(\\\\\\\\\\\\\\'contexts\\\\\\\\\\\\\\', 1, \\\\\\\\\\\\\\'notConjunctableWith\\\\\\\\\\\\\\')\\\\\\\\\\\\\\')))\"])\\\\\\'])\\'])'])]\n Right Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", 'And([\\'Listable(Unify(context.instance, variables.instance))\\', \\'And([\\\\\\'Listable(Unify(context.d\n variables.dead))\\\\\\', \\\\\\'Not([\"ListableType(Listable(Type(variable: \\\\\\\\\\\\\\'(\\\\\\\\\\\\\\'contexts\\\\\\\\\\\\\\', -1, \\\\\\\\\\\\\\'notConjunctableWith\\\\\\\\\\\\\\')\\\\\\\\\\\\\\')))\"])\\\\\\'])\\'])'])]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), listable: true, isList: true, value: append(before, after) }\")\n\n range: {'start': 6, 'end': 8}\n text: \"and\"\n word: \"and\"\n }\n\n\n>>>>>>>>>>>>> Counter 3\n summary\n\n *0. list/1 - \"price and quantity\"\n 1. is/0 - \"are\"\n 2. property/0 (dead) - \"properties\"\n\n details\n\n 0. Operator(list/1, PASS, ['Selector(Bridge(\"{ ...operator, value: append(before, operator.value) }\"), , same/(), [And([\"ListableType(Listable(Type(variable: \\'type\\')))\", \"And([\\'Listable(Unify(context.instance, variables.instance))\\', \\'Listable(Unify(context.dead, variables.dead))\\'])\"])]<==>[], bridge(bridge), passthrough)'], evaluator(Bridge(\"{ ...operator, value: append(before, operator.value) }\")), variables({'contexts': ShiftedArray(zero at 1), 'found_types': ['quantity', 'price'], 'type': ['number', 'quantity', 'queryable', 'property', 'listable', 'comparable', 'theAble', 'quantifier'], 'dead': True}) bridge(bridge)) (3, 0) - \"price and quantity\"\n {\n prioritized_by: [('list', 0)]\n default: true\n isList: true\n listable: true\n marker: \n Operator(list/1), passthrough\n Selectors:\n [\n Selector, passthrough\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", \"And(['Listable(Unify(context.instance, variables.instance))', 'Listable(Unify(context.dead, variables.dead))'])\"])]\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n Variables:\n contexts: ShiftedArray(zero at 1)\n found_types: ['quantity', 'price']\n type: ['number', 'quantity', 'queryable', 'property', 'listable', 'comparable', 'theAble', 'quantifier']\n dead: True\n\n range: {'start': 0, 'end': 17}\n text: \"price and quantity\"\n types: [\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n 1. Operator(is/0, ['Selector(Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\"), , [ListableType(Listable(Type(\\'queryable\\')))]<==>[ListableType(Listable(Type(\\'queryable\\')))], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")), variables({}) bridge(bridge)) (1, 12) - \"are\"\n {\n marker: \n Operator(is/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n Left Selector: [ListableType(Listable(Type('queryable')))]\n Right Selector: [ListableType(Listable(Type('queryable')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n 2. Operator(property/0, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (1, 18) - \"properties\"\n {\n dead: true\n marker: \n Operator(property/0)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=1) is ('is', 0)\n Context:\n {\n marker: \n Operator(is/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n Left Selector: [ListableType(Listable(Type('queryable')))]\n Right Selector: [ListableType(Listable(Type('queryable')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }\")\n\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n\n\n>>>>>>>>>>>>> Counter 4\n summary\n\n *0. is/1 - \"price and quantity are properties\"\n\n details\n\n 0. Operator(is/1, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({'contexts': ShiftedArray(zero at 1), 'found_types': []}) bridge(bridge)) (4, 0) - \"price and quantity are properties\"\n {\n prioritized_by: [('is', 0)]\n marker: \n Operator(is/1)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n Variables:\n contexts: ShiftedArray(zero at 1)\n found_types: []\n\n number: \"many\"\n one: \n {\n default: true\n isList: true\n listable: true\n marker: \n Operator(list/1), passthrough\n Selectors:\n [\n Selector, passthrough\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", \"And(['Listable(Unify(context.instance, variables.instance))', 'Listable(Unify(context.dead, variables.dead))'])\"])]\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n Variables:\n contexts: ShiftedArray(zero at 1)\n found_types: ['quantity', 'price']\n type: ['number', 'quantity', 'queryable', 'property', 'listable', 'comparable', 'theAble', 'quantifier']\n dead: True\n\n number: \"many\"\n range: {'start': 0, 'end': 17}\n text: \"price and quantity\"\n types: [\n 'price'\n, 'quantity'\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n\n range: {'start': 0, 'end': 32}\n text: \"price and quantity are properties\"\n two: \n {\n dead: true\n marker: \n Operator(property/0)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n types: [\n 'property'\n ]\n value: \"property\"\n word: \"properties\"\n }\n\n word: \"are\"\n }\n<<<<<<<<<<<<<\nNext Op (index=0) is ('is', 1)\n Context:\n {\n prioritized_by: [('is', 0)]\n marker: \n Operator(is/1)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n Variables:\n contexts: ShiftedArray(zero at 1)\n found_types: []\n\n number: \"many\"\n one: \n {\n default: true\n isList: true\n listable: true\n marker: \n Operator(list/1), passthrough\n Selectors:\n [\n Selector, passthrough\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", \"And(['Listable(Unify(context.instance, variables.instance))', 'Listable(Unify(context.dead,\n variables.dead))'])\"])]\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n Variables:\n contexts: ShiftedArray(zero at 1)\n found_types: ['quantity', 'price']\n type: ['number', 'quantity', 'queryable', 'property', 'listable', 'comparable', 'theAble', 'quantifier']\n dead: True\n\n number: \"many\"\n range: {'start': 0, 'end': 17}\n text: \"price and quantity\"\n types: [\n 'price'\n, 'quantity'\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n\n range: {'start': 0, 'end': 32}\n text: \"price and quantity are properties\"\n two: \n {\n dead: true\n marker: \n Operator(property/0)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n types: [\n 'property'\n ]\n value: \"property\"\n word: \"properties\"\n }\n\n word: \"are\"\n }\n\n\n>>>>>>>>>>>>> Counter 5\n summary\n\n *0. is/2 (dead) - \"price and quantity are properties\"\n\n details\n\n 0. Operator(is/2, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (5, 0) - \"price and quantity are properties\"\n {\n prioritized_by: [('is', 1)]\n dead: true\n marker: \n Operator(is/2)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n number: \"many\"\n one: \n {\n default: true\n isList: true\n listable: true\n marker: \n Operator(list/1), passthrough\n Selectors:\n [\n Selector, passthrough\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n , same/()\n Left Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", \"And(['Listable(Unify(context.instance, variables.instance))', 'Listable(Unify(context.dead, variables.dead))'])\"])]\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, value: append(before, operator.value) }\")\n Variables:\n contexts: ShiftedArray(zero at 1)\n found_types: ['quantity', 'price']\n type: ['number', 'quantity', 'queryable', 'property', 'listable', 'comparable', 'theAble', 'quantifier']\n dead: True\n\n number: \"many\"\n range: {'start': 0, 'end': 17}\n text: \"price and quantity\"\n types: [\n 'price'\n, 'quantity'\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n\n range: {'start': 0, 'end': 32}\n text: \"price and quantity are properties\"\n two: \n {\n dead: true\n marker: \n Operator(property/0)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n types: [\n 'property'\n ]\n value: \"property\"\n word: \"properties\"\n }\n\n word: \"are\"\n }\n<<<<<<<<<<<<<\n",
1347
1342
  "contexts": [
1348
1343
  {
1349
1344
  "number": "many",
@@ -2189,11 +2184,6 @@
2189
2184
  "concept",
2190
2185
  false
2191
2186
  ],
2192
- [
2193
- "mathematicalExpression",
2194
- "number",
2195
- false
2196
- ],
2197
2187
  [
2198
2188
  "mathematicalExpression",
2199
2189
  "property",
@@ -3003,7 +2993,7 @@
3003
2993
  },
3004
2994
  {
3005
2995
  "op": [
3006
- "quantity",
2996
+ "timesOperator",
3007
2997
  0
3008
2998
  ],
3009
2999
  "ops": [
@@ -3022,23 +3012,6 @@
3022
3012
  ],
3023
3013
  "counter": 3
3024
3014
  },
3025
- {
3026
- "op": [
3027
- "timesOperator",
3028
- 0
3029
- ],
3030
- "ops": [
3031
- [
3032
- "means",
3033
- 0
3034
- ],
3035
- [
3036
- "timesOperator",
3037
- 0
3038
- ]
3039
- ],
3040
- "counter": 4
3041
- },
3042
3015
  {
3043
3016
  "op": [
3044
3017
  "means",
@@ -3050,11 +3023,11 @@
3050
3023
  0
3051
3024
  ]
3052
3025
  ],
3053
- "counter": 5
3026
+ "counter": 4
3054
3027
  }
3055
3028
  ]
3056
3029
  },
3057
- "trace": "\n\n>>>>>>>>>>>>> Counter 1\n summary\n\n 0. unknown/0 - \"worth\"\n 1. means/0 - \"means\"\n 2. price/0 - \"price\"\n 3. timesOperator/0 - \"times\"\n 4. quantity/0 - \"quantity\"\n\n details\n\n 0. Operator(unknown/0, ['Selector(Bridge(\"{ ...operator, unknown: true, dead: true }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...operator, unknown: true, dead: true }\")), variables({}) bridge(bridge)) (1, 0) - \"worth\"\n {\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n 1. Operator(means/0, ['Selector(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\"), , [Any]<==>[Any], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")), variables({}) bridge(bridge)) (1, 3) - \"means\"\n {\n default: true\n marker: \n Operator(means/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n\n range: {'start': 6, 'end': 10}\n text: \"means\"\n value: \"means\"\n word: \"means\"\n }\n 2. Operator(price/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 5) - \"price\"\n {\n default: true\n marker: \n Operator(price/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 3. Operator(timesOperator/0, ['Selector(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator(\\'timesExpression\\')), types: lub(append([\\'mathematicalExpression\\'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: \\'one\\', isResponse: true, evaluate: true, interpolate: [{ property: \\'x\\' }, { property: \\'operator\\' }, { property: \\'y\\' }] }\"), , [ListableType(Listable(Type(\\'number\\')))]<==>[ListableType(Listable(Type(\\'number\\')))], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")), variables({}) bridge(bridge)) (1, 8) - \"times\"\n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Left Selector: [ListableType(Listable(Type('number')))]\n Right Selector: [ListableType(Listable(Type('number')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n 4. Operator(quantity/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 11) - \"quantity\"\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 24, 'end': 31}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n<<<<<<<<<<<<<\nNext Op (index=0) is ('unknown', 0)\n Context:\n {\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n\n\n>>>>>>>>>>>>> Counter 2\n summary\n\n *0. unknown/0 (dead) - \"worth\"\n 1. means/0 - \"means\"\n 2. price/0 - \"price\"\n 3. timesOperator/0 - \"times\"\n 4. quantity/0 - \"quantity\"\n\n details\n\n 0. Operator(unknown/0, ['Selector(Bridge(\"{ ...operator, unknown: true, dead: true }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...operator, unknown: true, dead: true }\")), variables({}) bridge(bridge)) (2, 0) - \"worth\"\n {\n prioritized_by: [('unknown', 0)]\n dead: true\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n 1. Operator(means/0, ['Selector(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\"), , [Any]<==>[Any], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")), variables({}) bridge(bridge)) (1, 3) - \"means\"\n {\n default: true\n marker: \n Operator(means/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n\n range: {'start': 6, 'end': 10}\n text: \"means\"\n value: \"means\"\n word: \"means\"\n }\n 2. Operator(price/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 5) - \"price\"\n {\n default: true\n marker: \n Operator(price/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 3. Operator(timesOperator/0, ['Selector(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator(\\'timesExpression\\')), types: lub(append([\\'mathematicalExpression\\'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: \\'one\\', isResponse: true, evaluate: true, interpolate: [{ property: \\'x\\' }, { property: \\'operator\\' }, { property: \\'y\\' }] }\"), , [ListableType(Listable(Type(\\'number\\')))]<==>[ListableType(Listable(Type(\\'number\\')))], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")), variables({}) bridge(bridge)) (1, 8) - \"times\"\n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Left Selector: [ListableType(Listable(Type('number')))]\n Right Selector: [ListableType(Listable(Type('number')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n 4. Operator(quantity/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 11) - \"quantity\"\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 24, 'end': 31}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n<<<<<<<<<<<<<\nNext Op (index=2) is ('price', 0)\n Context:\n {\n default: true\n marker: \n Operator(price/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n\n>>>>>>>>>>>>> Counter 3\n summary\n\n 0. unknown/0 (dead) - \"worth\"\n 1. means/0 - \"means\"\n *2. price/1 (dead) - \"price\"\n 3. timesOperator/0 - \"times\"\n 4. quantity/0 - \"quantity\"\n\n details\n\n 0. Operator(unknown/0, ['Selector(Bridge(\"{ ...operator, unknown: true, dead: true }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...operator, unknown: true, dead: true }\")), variables({}) bridge(bridge)) (2, 0) - \"worth\"\n {\n prioritized_by: [('unknown', 0)]\n dead: true\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n 1. Operator(means/0, ['Selector(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\"), , [Any]<==>[Any], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")), variables({}) bridge(bridge)) (1, 3) - \"means\"\n {\n default: true\n marker: \n Operator(means/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n\n range: {'start': 6, 'end': 10}\n text: \"means\"\n value: \"means\"\n word: \"means\"\n }\n 2. Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (2, 1) - \"price\"\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 3. Operator(timesOperator/0, ['Selector(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator(\\'timesExpression\\')), types: lub(append([\\'mathematicalExpression\\'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: \\'one\\', isResponse: true, evaluate: true, interpolate: [{ property: \\'x\\' }, { property: \\'operator\\' }, { property: \\'y\\' }] }\"), , [ListableType(Listable(Type(\\'number\\')))]<==>[ListableType(Listable(Type(\\'number\\')))], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")), variables({}) bridge(bridge)) (1, 8) - \"times\"\n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Left Selector: [ListableType(Listable(Type('number')))]\n Right Selector: [ListableType(Listable(Type('number')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n 4. Operator(quantity/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 11) - \"quantity\"\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 24, 'end': 31}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n<<<<<<<<<<<<<\nNext Op (index=4) is ('quantity', 0)\n Context:\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 24, 'end': 31}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n\n\n>>>>>>>>>>>>> Counter 4\n summary\n\n 0. unknown/0 (dead) - \"worth\"\n 1. means/0 - \"means\"\n 2. price/1 (dead) - \"price\"\n 3. timesOperator/0 - \"times\"\n *4. quantity/1 (dead) - \"quantity\"\n\n details\n\n 0. Operator(unknown/0, ['Selector(Bridge(\"{ ...operator, unknown: true, dead: true }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...operator, unknown: true, dead: true }\")), variables({}) bridge(bridge)) (2, 0) - \"worth\"\n {\n prioritized_by: [('unknown', 0)]\n dead: true\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n 1. Operator(means/0, ['Selector(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\"), , [Any]<==>[Any], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")), variables({}) bridge(bridge)) (1, 3) - \"means\"\n {\n default: true\n marker: \n Operator(means/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n\n range: {'start': 6, 'end': 10}\n text: \"means\"\n value: \"means\"\n word: \"means\"\n }\n 2. Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (2, 1) - \"price\"\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 3. Operator(timesOperator/0, ['Selector(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator(\\'timesExpression\\')), types: lub(append([\\'mathematicalExpression\\'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: \\'one\\', isResponse: true, evaluate: true, interpolate: [{ property: \\'x\\' }, { property: \\'operator\\' }, { property: \\'y\\' }] }\"), , [ListableType(Listable(Type(\\'number\\')))]<==>[ListableType(Listable(Type(\\'number\\')))], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")), variables({}) bridge(bridge)) (1, 8) - \"times\"\n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Left Selector: [ListableType(Listable(Type('number')))]\n Right Selector: [ListableType(Listable(Type('number')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n 4. Operator(quantity/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (2, 2) - \"quantity\"\n {\n prioritized_by: [('quantity', 0)]\n dead: true\n default: true\n marker: \n Operator(quantity/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 24, 'end': 31}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n<<<<<<<<<<<<<\nNext Op (index=3) is ('timesOperator', 0)\n Context:\n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types,\n after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, {\n property:\n 'y' }] }\")\n Left Selector: [ListableType(Listable(Type('number')))]\n Right Selector: [ListableType(Listable(Type('number')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types,\n after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator'\n }, { property: 'y' }] }\")\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n\n\n>>>>>>>>>>>>> Counter 5\n summary\n\n 0. unknown/0 (dead) - \"worth\"\n 1. means/0 - \"means\"\n *2. timesExpression/1 (dead) - \"price times quantity\"\n\n details\n\n 0. Operator(unknown/0, ['Selector(Bridge(\"{ ...operator, unknown: true, dead: true }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...operator, unknown: true, dead: true }\")), variables({}) bridge(bridge)) (2, 0) - \"worth\"\n {\n prioritized_by: [('unknown', 0)]\n dead: true\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n 1. Operator(means/0, ['Selector(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\"), , [Any]<==>[Any], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")), variables({}) bridge(bridge)) (1, 3) - \"means\"\n {\n default: true\n marker: \n Operator(means/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n\n range: {'start': 6, 'end': 10}\n text: \"means\"\n value: \"means\"\n word: \"means\"\n }\n 2. Operator(timesExpression/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (3, 0) - \"price times quantity\"\n {\n prioritized_by: [('timesOperator', 0)]\n dead: true\n evaluate: true\n interpolate: [\n {'property': 'x'}\n, {'property': 'operator'}\n, {'property': 'y'}\n ]\n isResponse: true\n marker: \n Operator(timesExpression/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n number: \"one\"\n operator: \n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Left Selector: [ListableType(Listable(Type('number')))]\n Right Selector: [ListableType(Listable(Type('number')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Variables:\n found_types: []\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n\n range: {'start': 12, 'end': 31}\n text: \"price times quantity\"\n types: [\n 'number'\n, 'property'\n ]\n value: None\n word: \"times\"\n x: \n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n types: [\n 'price'\n ]\n value: \"price\"\n word: \"price\"\n }\n\n y: \n {\n prioritized_by: [('quantity', 0)]\n dead: true\n default: true\n marker: \n Operator(quantity/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 24, 'end': 31}\n text: \"quantity\"\n types: [\n 'quantity'\n ]\n value: \"quantity\"\n word: \"quantity\"\n }\n\n }\n<<<<<<<<<<<<<\nNext Op (index=1) is ('means', 0)\n Context:\n {\n default: true\n marker: \n Operator(means/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n\n range: {'start': 6, 'end': 10}\n text: \"means\"\n value: \"means\"\n word: \"means\"\n }\n\n\n>>>>>>>>>>>>> Counter 6\n summary\n\n *0. means/1 (dead) - \"worth means price times quantity\"\n\n details\n\n 0. Operator(means/1, ['Selector(None, , [Any]<==>[Any], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (4, 0) - \"worth means price times quantity\"\n {\n prioritized_by: [('means', 0)]\n dead: true\n default: true\n from: \n {\n prioritized_by: [('unknown', 0)]\n dead: true\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n\n marker: \n Operator(means/1)\n Selectors:\n [\n Selector\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n\n range: {'start': 0, 'end': 31}\n text: \"worth means price times quantity\"\n to: \n {\n prioritized_by: [('timesOperator', 0)]\n dead: true\n evaluate: true\n interpolate: [\n {'property': 'x'}\n, {'property': 'operator'}\n, {'property': 'y'}\n ]\n isResponse: true\n marker: \n Operator(timesExpression/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n number: \"one\"\n operator: \n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Left Selector: [ListableType(Listable(Type('number')))]\n Right Selector: [ListableType(Listable(Type('number')))]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Variables:\n found_types: []\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n\n range: {'start': 12, 'end': 31}\n text: \"price times quantity\"\n types: [\n 'number'\n, 'property'\n ]\n value: None\n word: \"times\"\n x: \n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n types: [\n 'price'\n ]\n value: \"price\"\n word: \"price\"\n }\n\n y: \n {\n prioritized_by: [('quantity', 0)]\n dead: true\n default: true\n marker: \n Operator(quantity/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 24, 'end': 31}\n text: \"quantity\"\n types: [\n 'quantity'\n ]\n value: \"quantity\"\n word: \"quantity\"\n }\n\n }\n\n value: \"means\"\n word: \"means\"\n }\n<<<<<<<<<<<<<\n",
3030
+ "trace": "\n\n>>>>>>>>>>>>> Counter 1\n summary\n\n 0. unknown/0 - \"worth\"\n 1. means/0 - \"means\"\n 2. price/0 - \"price\"\n 3. timesOperator/0 - \"times\"\n 4. quantity/0 - \"quantity\"\n\n details\n\n 0. Operator(unknown/0, ['Selector(Bridge(\"{ ...operator, unknown: true, dead: true }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...operator, unknown: true, dead: true }\")), variables({}) bridge(bridge)) (1, 0) - \"worth\"\n {\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n 1. Operator(means/0, ['Selector(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\"), , [Any]<==>[Any], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")), variables({}) bridge(bridge)) (1, 2) - \"means\"\n {\n default: true\n marker: \n Operator(means/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n\n range: {'start': 6, 'end': 10}\n text: \"means\"\n value: \"means\"\n word: \"means\"\n }\n 2. Operator(price/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 5) - \"price\"\n {\n default: true\n marker: \n Operator(price/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 3. Operator(timesOperator/0, ['Selector(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator(\\'timesExpression\\')), types: lub(append([\\'mathematicalExpression\\'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: \\'one\\', isResponse: true, evaluate: true, interpolate: [{ property: \\'x\\' }, { property: \\'operator\\' }, { property: \\'y\\' }] }\"), , [Or([\"Listable(Ref(\\'number\\', *))\", \"Listable(Ref(\\'mathematicalExpression\\', *))\"])]<==>[Or([\"Listable(Ref(\\'number\\', *))\", \"Listable(Ref(\\'mathematicalExpression\\', *))\"])], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")), variables({}) bridge(bridge)) (1, 8) - \"times\"\n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Left Selector: [Or([\"Listable(Ref('number', *))\", \"Listable(Ref('mathematicalExpression', *))\"])]\n Right Selector: [Or([\"Listable(Ref('number', *))\", \"Listable(Ref('mathematicalExpression', *))\"])]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n 4. Operator(quantity/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 11) - \"quantity\"\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 24, 'end': 31}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n<<<<<<<<<<<<<\nNext Op (index=0) is ('unknown', 0)\n Context:\n {\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n\n\n>>>>>>>>>>>>> Counter 2\n summary\n\n *0. unknown/0 (dead) - \"worth\"\n 1. means/0 - \"means\"\n 2. price/0 - \"price\"\n 3. timesOperator/0 - \"times\"\n 4. quantity/0 - \"quantity\"\n\n details\n\n 0. Operator(unknown/0, ['Selector(Bridge(\"{ ...operator, unknown: true, dead: true }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...operator, unknown: true, dead: true }\")), variables({'contexts': ShiftedArray(zero at 0)}) bridge(bridge)) (2, 0) - \"worth\"\n {\n prioritized_by: [('unknown', 0)]\n dead: true\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Variables:\n contexts: ShiftedArray(zero at 0)\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n 1. Operator(means/0, ['Selector(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\"), , [Any]<==>[Any], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")), variables({}) bridge(bridge)) (1, 2) - \"means\"\n {\n default: true\n marker: \n Operator(means/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n\n range: {'start': 6, 'end': 10}\n text: \"means\"\n value: \"means\"\n word: \"means\"\n }\n 2. Operator(price/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 5) - \"price\"\n {\n default: true\n marker: \n Operator(price/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 3. Operator(timesOperator/0, ['Selector(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator(\\'timesExpression\\')), types: lub(append([\\'mathematicalExpression\\'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: \\'one\\', isResponse: true, evaluate: true, interpolate: [{ property: \\'x\\' }, { property: \\'operator\\' }, { property: \\'y\\' }] }\"), , [Or([\"Listable(Ref(\\'number\\', *))\", \"Listable(Ref(\\'mathematicalExpression\\', *))\"])]<==>[Or([\"Listable(Ref(\\'number\\', *))\", \"Listable(Ref(\\'mathematicalExpression\\', *))\"])], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")), variables({}) bridge(bridge)) (1, 8) - \"times\"\n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Left Selector: [Or([\"Listable(Ref('number', *))\", \"Listable(Ref('mathematicalExpression', *))\"])]\n Right Selector: [Or([\"Listable(Ref('number', *))\", \"Listable(Ref('mathematicalExpression', *))\"])]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n 4. Operator(quantity/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 11) - \"quantity\"\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 24, 'end': 31}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n<<<<<<<<<<<<<\nNext Op (index=2) is ('price', 0)\n Context:\n {\n default: true\n marker: \n Operator(price/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n\n>>>>>>>>>>>>> Counter 3\n summary\n\n 0. unknown/0 (dead) - \"worth\"\n 1. means/0 - \"means\"\n *2. price/1 (dead) - \"price\"\n 3. timesOperator/0 - \"times\"\n 4. quantity/0 - \"quantity\"\n\n details\n\n 0. Operator(unknown/0, ['Selector(Bridge(\"{ ...operator, unknown: true, dead: true }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...operator, unknown: true, dead: true }\")), variables({'contexts': ShiftedArray(zero at 0)}) bridge(bridge)) (2, 0) - \"worth\"\n {\n prioritized_by: [('unknown', 0)]\n dead: true\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Variables:\n contexts: ShiftedArray(zero at 0)\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n 1. Operator(means/0, ['Selector(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\"), , [Any]<==>[Any], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")), variables({}) bridge(bridge)) (1, 2) - \"means\"\n {\n default: true\n marker: \n Operator(means/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n\n range: {'start': 6, 'end': 10}\n text: \"means\"\n value: \"means\"\n word: \"means\"\n }\n 2. Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (2, 1) - \"price\"\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 3. Operator(timesOperator/0, ['Selector(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator(\\'timesExpression\\')), types: lub(append([\\'mathematicalExpression\\'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: \\'one\\', isResponse: true, evaluate: true, interpolate: [{ property: \\'x\\' }, { property: \\'operator\\' }, { property: \\'y\\' }] }\"), , [Or([\"Listable(Ref(\\'number\\', *))\", \"Listable(Ref(\\'mathematicalExpression\\', *))\"])]<==>[Or([\"Listable(Ref(\\'number\\', *))\", \"Listable(Ref(\\'mathematicalExpression\\', *))\"])], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")), variables({}) bridge(bridge)) (1, 8) - \"times\"\n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Left Selector: [Or([\"Listable(Ref('number', *))\", \"Listable(Ref('mathematicalExpression', *))\"])]\n Right Selector: [Or([\"Listable(Ref('number', *))\", \"Listable(Ref('mathematicalExpression', *))\"])]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n 4. Operator(quantity/0, ['Selector(Bridge(\"{ ...next(operator) }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator) }\")), variables({}) bridge(bridge)) (1, 11) - \"quantity\"\n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 24, 'end': 31}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n<<<<<<<<<<<<<\nNext Op (index=3) is ('timesOperator', 0)\n Context:\n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types,\n after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, {\n property:\n 'y' }] }\")\n Left Selector: [Or([\"Listable(Ref('number', *))\", \"Listable(Ref('mathematicalExpression', *))\"])]\n Right Selector: [Or([\"Listable(Ref('number', *))\", \"Listable(Ref('mathematicalExpression', *))\"])]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types,\n after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator'\n }, { property: 'y' }] }\")\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n\n\n>>>>>>>>>>>>> Counter 4\n summary\n\n 0. unknown/0 (dead) - \"worth\"\n 1. means/0 - \"means\"\n *2. timesExpression/1 (dead) - \"price times quantity\"\n\n details\n\n 0. Operator(unknown/0, ['Selector(Bridge(\"{ ...operator, unknown: true, dead: true }\"), , []<==>[], bridge(bridge))'], evaluator(Bridge(\"{ ...operator, unknown: true, dead: true }\")), variables({'contexts': ShiftedArray(zero at 0)}) bridge(bridge)) (2, 0) - \"worth\"\n {\n prioritized_by: [('unknown', 0)]\n dead: true\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Variables:\n contexts: ShiftedArray(zero at 0)\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n 1. Operator(means/0, ['Selector(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\"), , [Any]<==>[Any], bridge(bridge))'], evaluator(Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")), variables({}) bridge(bridge)) (1, 2) - \"means\"\n {\n default: true\n marker: \n Operator(means/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n\n range: {'start': 6, 'end': 10}\n text: \"means\"\n value: \"means\"\n word: \"means\"\n }\n 2. Operator(timesExpression/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (3, 0) - \"price times quantity\"\n {\n prioritized_by: [('timesOperator', 0)]\n dead: true\n evaluate: true\n interpolate: [\n {'property': 'x'}\n, {'property': 'operator'}\n, {'property': 'y'}\n ]\n isResponse: true\n marker: \n Operator(timesExpression/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n number: \"one\"\n operator: \n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Left Selector: [Or([\"Listable(Ref('number', *))\", \"Listable(Ref('mathematicalExpression', *))\"])]\n Right Selector: [Or([\"Listable(Ref('number', *))\", \"Listable(Ref('mathematicalExpression', *))\"])]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Variables:\n contexts: ShiftedArray(zero at 3)\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n\n range: {'start': 12, 'end': 31}\n text: \"price times quantity\"\n types: [\n 'property'\n ]\n value: None\n word: \"times\"\n x: \n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n types: [\n 'price'\n ]\n value: \"price\"\n word: \"price\"\n }\n\n y: \n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 24, 'end': 31}\n text: \"quantity\"\n types: [\n 'quantity'\n ]\n value: \"quantity\"\n word: \"quantity\"\n }\n\n }\n<<<<<<<<<<<<<\nNext Op (index=1) is ('means', 0)\n Context:\n {\n default: true\n marker: \n Operator(means/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), from: before[0], to: after[0] }\")\n\n range: {'start': 6, 'end': 10}\n text: \"means\"\n value: \"means\"\n word: \"means\"\n }\n\n\n>>>>>>>>>>>>> Counter 5\n summary\n\n *0. means/1 (dead) - \"worth means price times quantity\"\n\n details\n\n 0. Operator(means/1, ['Selector(None, , [Any]<==>[Any], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)) (4, 0) - \"worth means price times quantity\"\n {\n prioritized_by: [('means', 0)]\n dead: true\n default: true\n from: \n {\n prioritized_by: [('unknown', 0)]\n dead: true\n marker: \n Operator(unknown/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...operator, unknown: true, dead: true }\")\n Variables:\n contexts: ShiftedArray(zero at 0)\n\n range: {'start': 0, 'end': 4}\n text: \"worth\"\n unknown: true\n value: \"worth\"\n word: \"worth\"\n }\n\n marker: \n Operator(means/1)\n Selectors:\n [\n Selector\n Left Selector: [Any]\n Right Selector: [Any]\n ]\n\n range: {'start': 0, 'end': 31}\n text: \"worth means price times quantity\"\n to: \n {\n prioritized_by: [('timesOperator', 0)]\n dead: true\n evaluate: true\n interpolate: [\n {'property': 'x'}\n, {'property': 'operator'}\n, {'property': 'y'}\n ]\n isResponse: true\n marker: \n Operator(timesExpression/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n number: \"one\"\n operator: \n {\n marker: \n Operator(timesOperator/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Left Selector: [Or([\"Listable(Ref('number', *))\", \"Listable(Ref('mathematicalExpression', *))\"])]\n Right Selector: [Or([\"Listable(Ref('number', *))\", \"Listable(Ref('mathematicalExpression', *))\"])]\n ]\n Evaluator:\n Bridge(\"{ ...next(operator), operator: operator, marker: next(operator('timesExpression')), types: lub(append(['mathematicalExpression'], operator.types, before[0].types, after[0].types)), value: null, x: before[0], y: after[0], number: 'one', isResponse: true, evaluate: true, interpolate: [{ property: 'x' }, { property: 'operator' }, { property: 'y' }] }\")\n Variables:\n contexts: ShiftedArray(zero at 3)\n\n range: {'start': 18, 'end': 22}\n text: \"times\"\n value: \"timesOperator\"\n word: \"times\"\n }\n\n range: {'start': 12, 'end': 31}\n text: \"price times quantity\"\n types: [\n 'property'\n ]\n value: None\n word: \"times\"\n x: \n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: \n Operator(price/1)\n Selectors:\n [\n Selector\n Left Selector: []\n Right Selector: []\n ]\n\n range: {'start': 12, 'end': 16}\n text: \"price\"\n types: [\n 'price'\n ]\n value: \"price\"\n word: \"price\"\n }\n\n y: \n {\n default: true\n marker: \n Operator(quantity/0)\n Selectors:\n [\n Selector\n Bridge(\"{ ...next(operator) }\")\n Left Selector: []\n Right Selector: []\n ]\n Evaluator:\n Bridge(\"{ ...next(operator) }\")\n\n range: {'start': 24, 'end': 31}\n text: \"quantity\"\n types: [\n 'quantity'\n ]\n value: \"quantity\"\n word: \"quantity\"\n }\n\n }\n\n value: \"means\"\n word: \"means\"\n }\n<<<<<<<<<<<<<\n",
3058
3031
  "contexts": [
3059
3032
  {
3060
3033
  "marker": "means",
@@ -3102,7 +3075,6 @@
3102
3075
  "level": 0
3103
3076
  },
3104
3077
  "types": [
3105
- "number",
3106
3078
  "property",
3107
3079
  "timesExpression"
3108
3080
  ],
@@ -3132,11 +3104,10 @@
3132
3104
  "start": 24,
3133
3105
  "end": 31
3134
3106
  },
3135
- "dead": true,
3136
3107
  "types": [
3137
3108
  "quantity"
3138
3109
  ],
3139
- "level": 1
3110
+ "level": 0
3140
3111
  },
3141
3112
  "number": "one",
3142
3113
  "isResponse": true,
@@ -3215,20 +3186,6 @@
3215
3186
  0
3216
3187
  ]
3217
3188
  ],
3218
- [
3219
- [
3220
- "means",
3221
- 0
3222
- ],
3223
- [
3224
- "timesOperator",
3225
- 0
3226
- ],
3227
- [
3228
- "unknown",
3229
- 0
3230
- ]
3231
- ],
3232
3189
  [
3233
3190
  [
3234
3191
  "means",
@@ -3408,61 +3365,6 @@
3408
3365
  ],
3409
3366
  "counter": 3
3410
3367
  },
3411
- {
3412
- "operators": [
3413
- {
3414
- "marker": [
3415
- "unknown",
3416
- 0
3417
- ],
3418
- "range": {
3419
- "start": 0,
3420
- "end": 4
3421
- }
3422
- },
3423
- {
3424
- "marker": [
3425
- "means",
3426
- 0
3427
- ],
3428
- "range": {
3429
- "start": 6,
3430
- "end": 10
3431
- }
3432
- },
3433
- {
3434
- "marker": [
3435
- "price",
3436
- 1
3437
- ],
3438
- "range": {
3439
- "start": 12,
3440
- "end": 16
3441
- }
3442
- },
3443
- {
3444
- "marker": [
3445
- "timesOperator",
3446
- 0
3447
- ],
3448
- "range": {
3449
- "start": 18,
3450
- "end": 22
3451
- }
3452
- },
3453
- {
3454
- "marker": [
3455
- "quantity",
3456
- 1
3457
- ],
3458
- "range": {
3459
- "start": 24,
3460
- "end": 31
3461
- }
3462
- }
3463
- ],
3464
- "counter": 4
3465
- },
3466
3368
  {
3467
3369
  "operators": [
3468
3370
  {
@@ -3496,7 +3398,7 @@
3496
3398
  }
3497
3399
  }
3498
3400
  ],
3499
- "counter": 5
3401
+ "counter": 4
3500
3402
  },
3501
3403
  {
3502
3404
  "operators": [
@@ -3511,7 +3413,7 @@
3511
3413
  }
3512
3414
  }
3513
3415
  ],
3514
- "counter": 6
3416
+ "counter": 5
3515
3417
  }
3516
3418
  ],
3517
3419
  "length": 1
@@ -3622,20 +3524,6 @@
3622
3524
  0
3623
3525
  ]
3624
3526
  ],
3625
- [
3626
- [
3627
- "means",
3628
- 0
3629
- ],
3630
- [
3631
- "timesOperator",
3632
- 0
3633
- ],
3634
- [
3635
- "unknown",
3636
- 0
3637
- ]
3638
- ],
3639
3527
  [
3640
3528
  [
3641
3529
  "means",
@@ -3995,61 +3883,6 @@
3995
3883
  ],
3996
3884
  "counter": 3
3997
3885
  },
3998
- {
3999
- "operators": [
4000
- {
4001
- "marker": [
4002
- "unknown",
4003
- 0
4004
- ],
4005
- "range": {
4006
- "start": 0,
4007
- "end": 4
4008
- }
4009
- },
4010
- {
4011
- "marker": [
4012
- "means",
4013
- 0
4014
- ],
4015
- "range": {
4016
- "start": 6,
4017
- "end": 10
4018
- }
4019
- },
4020
- {
4021
- "marker": [
4022
- "price",
4023
- 1
4024
- ],
4025
- "range": {
4026
- "start": 12,
4027
- "end": 16
4028
- }
4029
- },
4030
- {
4031
- "marker": [
4032
- "timesOperator",
4033
- 0
4034
- ],
4035
- "range": {
4036
- "start": 18,
4037
- "end": 22
4038
- }
4039
- },
4040
- {
4041
- "marker": [
4042
- "quantity",
4043
- 1
4044
- ],
4045
- "range": {
4046
- "start": 24,
4047
- "end": 31
4048
- }
4049
- }
4050
- ],
4051
- "counter": 4
4052
- },
4053
3886
  {
4054
3887
  "operators": [
4055
3888
  {
@@ -4083,7 +3916,7 @@
4083
3916
  }
4084
3917
  }
4085
3918
  ],
4086
- "counter": 5
3919
+ "counter": 4
4087
3920
  },
4088
3921
  {
4089
3922
  "operators": [
@@ -4098,7 +3931,7 @@
4098
3931
  }
4099
3932
  }
4100
3933
  ],
4101
- "counter": 6
3934
+ "counter": 5
4102
3935
  }
4103
3936
  ],
4104
3937
  "length": 1