tpmkms_4wp 9.1.1-beta.24 → 9.1.1-beta.26

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.
@@ -3599,20 +3599,6 @@
3599
3599
  0
3600
3600
  ]
3601
3601
  ],
3602
- [
3603
- [
3604
- "is",
3605
- 0
3606
- ],
3607
- [
3608
- "list",
3609
- 1
3610
- ],
3611
- [
3612
- "unknown",
3613
- 0
3614
- ]
3615
- ],
3616
3602
  [
3617
3603
  [
3618
3604
  "is",
@@ -36105,20 +36091,6 @@
36105
36091
  0
36106
36092
  ]
36107
36093
  ],
36108
- [
36109
- [
36110
- "is",
36111
- 0
36112
- ],
36113
- [
36114
- "list",
36115
- 1
36116
- ],
36117
- [
36118
- "unknown",
36119
- 0
36120
- ]
36121
- ],
36122
36094
  [
36123
36095
  [
36124
36096
  "is",
@@ -6495,20 +6495,6 @@
6495
6495
  0
6496
6496
  ]
6497
6497
  ],
6498
- [
6499
- [
6500
- "is",
6501
- 0
6502
- ],
6503
- [
6504
- "list",
6505
- 1
6506
- ],
6507
- [
6508
- "unknown",
6509
- 0
6510
- ]
6511
- ],
6512
6498
  [
6513
6499
  [
6514
6500
  "is",
@@ -24547,20 +24533,6 @@
24547
24533
  0
24548
24534
  ]
24549
24535
  ],
24550
- [
24551
- [
24552
- "is",
24553
- 0
24554
- ],
24555
- [
24556
- "list",
24557
- 1
24558
- ],
24559
- [
24560
- "unknown",
24561
- 0
24562
- ]
24563
- ],
24564
24536
  [
24565
24537
  [
24566
24538
  "is",
@@ -69128,34 +69100,6 @@
69128
69100
  0
69129
69101
  ]
69130
69102
  ],
69131
- [
69132
- [
69133
- "is",
69134
- 0
69135
- ],
69136
- [
69137
- "list",
69138
- 1
69139
- ],
69140
- [
69141
- "unknown",
69142
- 0
69143
- ]
69144
- ],
69145
- [
69146
- [
69147
- "is",
69148
- 0
69149
- ],
69150
- [
69151
- "list",
69152
- 1
69153
- ],
69154
- [
69155
- "unknown",
69156
- 0
69157
- ]
69158
- ],
69159
69103
  [
69160
69104
  [
69161
69105
  "is",
@@ -96545,6 +96545,40 @@
96545
96545
  0
96546
96546
  ]
96547
96547
  ],
96548
+ [
96549
+ [
96550
+ "banana",
96551
+ 0
96552
+ ],
96553
+ [
96554
+ "berry",
96555
+ 0
96556
+ ],
96557
+ [
96558
+ "comma",
96559
+ 0
96560
+ ],
96561
+ [
96562
+ "countable",
96563
+ 0
96564
+ ],
96565
+ [
96566
+ "is",
96567
+ 0
96568
+ ],
96569
+ [
96570
+ "list",
96571
+ 0
96572
+ ],
96573
+ [
96574
+ "strawberry",
96575
+ 0
96576
+ ],
96577
+ [
96578
+ "wild",
96579
+ 0
96580
+ ]
96581
+ ],
96548
96582
  [
96549
96583
  [
96550
96584
  "banana",
@@ -96637,6 +96671,10 @@
96637
96671
  [
96638
96672
  "list",
96639
96673
  1
96674
+ ],
96675
+ [
96676
+ "strawberry",
96677
+ 0
96640
96678
  ]
96641
96679
  ],
96642
96680
  [
@@ -109524,6 +109562,44 @@
109524
109562
  0
109525
109563
  ]
109526
109564
  ],
109565
+ [
109566
+ [
109567
+ "banana",
109568
+ 0
109569
+ ],
109570
+ [
109571
+ "berry",
109572
+ 0
109573
+ ],
109574
+ [
109575
+ "comma",
109576
+ 0
109577
+ ],
109578
+ [
109579
+ "ingredient",
109580
+ 0
109581
+ ],
109582
+ [
109583
+ "is",
109584
+ 0
109585
+ ],
109586
+ [
109587
+ "list",
109588
+ 0
109589
+ ],
109590
+ [
109591
+ "smoothie",
109592
+ 0
109593
+ ],
109594
+ [
109595
+ "strawberry",
109596
+ 0
109597
+ ],
109598
+ [
109599
+ "wild",
109600
+ 0
109601
+ ]
109602
+ ],
109527
109603
  [
109528
109604
  [
109529
109605
  "banana",
@@ -345718,60 +345794,6 @@
345718
345794
  0
345719
345795
  ]
345720
345796
  ],
345721
- [
345722
- [
345723
- "breakfast",
345724
- 0
345725
- ],
345726
- [
345727
- "comma",
345728
- 0
345729
- ],
345730
- [
345731
- "double",
345732
- 0
345733
- ],
345734
- [
345735
- "french",
345736
- 0
345737
- ],
345738
- [
345739
- "is",
345740
- 0
345741
- ],
345742
- [
345743
- "list",
345744
- 0
345745
- ],
345746
- [
345747
- "meal",
345748
- 0
345749
- ],
345750
- [
345751
- "muffin",
345752
- 0
345753
- ],
345754
- [
345755
- "oatmeal",
345756
- 0
345757
- ],
345758
- [
345759
- "pancake",
345760
- 0
345761
- ],
345762
- [
345763
- "platter",
345764
- 0
345765
- ],
345766
- [
345767
- "sausage",
345768
- 0
345769
- ],
345770
- [
345771
- "toast",
345772
- 0
345773
- ]
345774
- ],
345775
345797
  [
345776
345798
  [
345777
345799
  "breakfast",
@@ -593203,6 +593225,14 @@
593203
593225
  ]
593204
593226
  ],
593205
593227
  [
593228
+ [
593229
+ "bacon",
593230
+ 0
593231
+ ],
593232
+ [
593233
+ "cheeseburger",
593234
+ 0
593235
+ ],
593206
593236
  [
593207
593237
  "chicken",
593208
593238
  0
@@ -593257,6 +593287,10 @@
593257
593287
  "club",
593258
593288
  0
593259
593289
  ],
593290
+ [
593291
+ "comma",
593292
+ 0
593293
+ ],
593260
593294
  [
593261
593295
  "crispy",
593262
593296
  0
@@ -593303,6 +593337,10 @@
593303
593337
  "crispy",
593304
593338
  0
593305
593339
  ],
593340
+ [
593341
+ "go",
593342
+ 0
593343
+ ],
593306
593344
  [
593307
593345
  "is",
593308
593346
  0
@@ -593322,6 +593360,10 @@
593322
593360
  [
593323
593361
  "value",
593324
593362
  0
593363
+ ],
593364
+ [
593365
+ "wrap",
593366
+ 0
593325
593367
  ]
593326
593368
  ],
593327
593369
  [
@@ -593341,6 +593383,10 @@
593341
593383
  "is",
593342
593384
  0
593343
593385
  ],
593386
+ [
593387
+ "junior",
593388
+ 0
593389
+ ],
593344
593390
  [
593345
593391
  "list",
593346
593392
  0
@@ -593355,10 +593401,18 @@
593355
593401
  ]
593356
593402
  ],
593357
593403
  [
593404
+ [
593405
+ "chicken",
593406
+ 0
593407
+ ],
593358
593408
  [
593359
593409
  "club",
593360
593410
  0
593361
593411
  ],
593412
+ [
593413
+ "crispy",
593414
+ 0
593415
+ ],
593362
593416
  [
593363
593417
  "is",
593364
593418
  0
@@ -593377,6 +593431,10 @@
593377
593431
  ]
593378
593432
  ],
593379
593433
  [
593434
+ [
593435
+ "club",
593436
+ 0
593437
+ ],
593380
593438
  [
593381
593439
  "is",
593382
593440
  0
@@ -593401,7 +593459,15 @@
593401
593459
  ],
593402
593460
  [
593403
593461
  "list",
593404
- 1
593462
+ 0
593463
+ ],
593464
+ [
593465
+ "meal",
593466
+ 0
593467
+ ],
593468
+ [
593469
+ "value",
593470
+ 0
593405
593471
  ]
593406
593472
  ],
593407
593473
  [
@@ -593412,14 +593478,6 @@
593412
593478
  [
593413
593479
  "list",
593414
593480
  1
593415
- ],
593416
- [
593417
- "meal",
593418
- 0
593419
- ],
593420
- [
593421
- "value",
593422
- 0
593423
593481
  ]
593424
593482
  ],
593425
593483
  [
@@ -607387,6 +607445,60 @@
607387
607445
  0
607388
607446
  ]
607389
607447
  ],
607448
+ [
607449
+ [
607450
+ "bacon",
607451
+ 0
607452
+ ],
607453
+ [
607454
+ "cheeseburger",
607455
+ 0
607456
+ ],
607457
+ [
607458
+ "chicken",
607459
+ 0
607460
+ ],
607461
+ [
607462
+ "club",
607463
+ 0
607464
+ ],
607465
+ [
607466
+ "comma",
607467
+ 0
607468
+ ],
607469
+ [
607470
+ "crispy",
607471
+ 0
607472
+ ],
607473
+ [
607474
+ "go",
607475
+ 0
607476
+ ],
607477
+ [
607478
+ "is",
607479
+ 0
607480
+ ],
607481
+ [
607482
+ "junior",
607483
+ 0
607484
+ ],
607485
+ [
607486
+ "list",
607487
+ 0
607488
+ ],
607489
+ [
607490
+ "meal",
607491
+ 0
607492
+ ],
607493
+ [
607494
+ "value",
607495
+ 0
607496
+ ],
607497
+ [
607498
+ "wrap",
607499
+ 0
607500
+ ]
607501
+ ],
607390
607502
  [
607391
607503
  [
607392
607504
  "bacon",
@@ -607727,6 +607839,40 @@
607727
607839
  0
607728
607840
  ]
607729
607841
  ],
607842
+ [
607843
+ [
607844
+ "banana",
607845
+ 0
607846
+ ],
607847
+ [
607848
+ "berry",
607849
+ 0
607850
+ ],
607851
+ [
607852
+ "comma",
607853
+ 0
607854
+ ],
607855
+ [
607856
+ "countable",
607857
+ 0
607858
+ ],
607859
+ [
607860
+ "is",
607861
+ 0
607862
+ ],
607863
+ [
607864
+ "list",
607865
+ 0
607866
+ ],
607867
+ [
607868
+ "strawberry",
607869
+ 0
607870
+ ],
607871
+ [
607872
+ "wild",
607873
+ 0
607874
+ ]
607875
+ ],
607730
607876
  [
607731
607877
  [
607732
607878
  "banana",
@@ -607861,6 +608007,44 @@
607861
608007
  0
607862
608008
  ]
607863
608009
  ],
608010
+ [
608011
+ [
608012
+ "banana",
608013
+ 0
608014
+ ],
608015
+ [
608016
+ "berry",
608017
+ 0
608018
+ ],
608019
+ [
608020
+ "comma",
608021
+ 0
608022
+ ],
608023
+ [
608024
+ "ingredient",
608025
+ 0
608026
+ ],
608027
+ [
608028
+ "is",
608029
+ 0
608030
+ ],
608031
+ [
608032
+ "list",
608033
+ 0
608034
+ ],
608035
+ [
608036
+ "smoothie",
608037
+ 0
608038
+ ],
608039
+ [
608040
+ "strawberry",
608041
+ 0
608042
+ ],
608043
+ [
608044
+ "wild",
608045
+ 0
608046
+ ]
608047
+ ],
607864
608048
  [
607865
608049
  [
607866
608050
  "banana",
@@ -608591,60 +608775,6 @@
608591
608775
  0
608592
608776
  ]
608593
608777
  ],
608594
- [
608595
- [
608596
- "breakfast",
608597
- 0
608598
- ],
608599
- [
608600
- "comma",
608601
- 0
608602
- ],
608603
- [
608604
- "double",
608605
- 0
608606
- ],
608607
- [
608608
- "french",
608609
- 0
608610
- ],
608611
- [
608612
- "is",
608613
- 0
608614
- ],
608615
- [
608616
- "list",
608617
- 0
608618
- ],
608619
- [
608620
- "meal",
608621
- 0
608622
- ],
608623
- [
608624
- "muffin",
608625
- 0
608626
- ],
608627
- [
608628
- "oatmeal",
608629
- 0
608630
- ],
608631
- [
608632
- "pancake",
608633
- 0
608634
- ],
608635
- [
608636
- "platter",
608637
- 0
608638
- ],
608639
- [
608640
- "sausage",
608641
- 0
608642
- ],
608643
- [
608644
- "toast",
608645
- 0
608646
- ]
608647
- ],
608648
608778
  [
608649
608779
  [
608650
608780
  "breakfast",
@@ -610335,6 +610465,10 @@
610335
610465
  [
610336
610466
  "list",
610337
610467
  1
610468
+ ],
610469
+ [
610470
+ "strawberry",
610471
+ 0
610338
610472
  ]
610339
610473
  ],
610340
610474
  [
@@ -611077,24 +611211,6 @@
611077
611211
  0
611078
611212
  ]
611079
611213
  ],
611080
- [
611081
- [
611082
- "is",
611083
- 0
611084
- ],
611085
- [
611086
- "list",
611087
- 1
611088
- ],
611089
- [
611090
- "meal",
611091
- 0
611092
- ],
611093
- [
611094
- "value",
611095
- 0
611096
- ]
611097
- ],
611098
611214
  [
611099
611215
  [
611100
611216
  "is",
package/common/helpers.js CHANGED
@@ -1,5 +1,19 @@
1
1
  const pluralize = require('pluralize')
2
2
 
3
+ const unshiftL = (list, element, max) => {
4
+ if (list.length >= max) {
5
+ list.pop()
6
+ }
7
+ list.unshift(element)
8
+ }
9
+
10
+ const pushL = (list, element, max) => {
11
+ if (list.length >= max) {
12
+ list.shift()
13
+ }
14
+ list.push(element)
15
+ }
16
+
3
17
  // X pm today or tomorrow
4
18
  const millisecondsUntilHourOfDay = (newDate, hour) => {
5
19
  const now = newDate()
@@ -207,6 +221,8 @@ const getValue = (propertyPath, object) => {
207
221
  }
208
222
 
209
223
  module.exports = {
224
+ unshiftL,
225
+ pushL,
210
226
  getValue,
211
227
  defaultContextCheck,
212
228
  defaultContextCheckProperties,
@@ -1718,20 +1718,6 @@
1718
1718
  0
1719
1719
  ]
1720
1720
  ],
1721
- [
1722
- [
1723
- "is",
1724
- 0
1725
- ],
1726
- [
1727
- "list",
1728
- 1
1729
- ],
1730
- [
1731
- "unknown",
1732
- 0
1733
- ]
1734
- ],
1735
1721
  [
1736
1722
  [
1737
1723
  "is",
@@ -10221,20 +10207,6 @@
10221
10207
  0
10222
10208
  ]
10223
10209
  ],
10224
- [
10225
- [
10226
- "is",
10227
- 0
10228
- ],
10229
- [
10230
- "list",
10231
- 1
10232
- ],
10233
- [
10234
- "unknown",
10235
- 0
10236
- ]
10237
- ],
10238
10210
  [
10239
10211
  [
10240
10212
  "is",
@@ -35709,34 +35681,6 @@
35709
35681
  0
35710
35682
  ]
35711
35683
  ],
35712
- [
35713
- [
35714
- "is",
35715
- 0
35716
- ],
35717
- [
35718
- "list",
35719
- 1
35720
- ],
35721
- [
35722
- "unknown",
35723
- 0
35724
- ]
35725
- ],
35726
- [
35727
- [
35728
- "is",
35729
- 0
35730
- ],
35731
- [
35732
- "list",
35733
- 1
35734
- ],
35735
- [
35736
- "unknown",
35737
- 0
35738
- ]
35739
- ],
35740
35684
  [
35741
35685
  [
35742
35686
  "is",
@@ -1061,7 +1061,7 @@
1061
1061
  }
1062
1062
  ]
1063
1063
  },
1064
- "trace": "\n\n>>>>>>>>>>>>> Counter 1\n summary\n\n 0. price/0 (1, 0) - \"price\"\n 1. list/0 (1, 6) - \"and\"\n 2. quantity/0 (1, 10) - \"quantity\"\n 3. is/0 (1, 15) - \"are\"\n 4. km/0 (1, 20) - \"properties\"\n\n details\n\n 0. price/0 (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. list/0 (1, 6) - \"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(Property(('context', 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", \"Listable(Unify(Property(('context', 'instance')), Property(('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. quantity/0 (1, 10) - \"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. is/0 (1, 15) - \"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. km/0 (1, 20) - \"properties\"\n {\n marker: \n Operator(km/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': 23, 'end': 32}\n text: \"properties\"\n value: \"properties\"\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) (2, 0) - \"price\"\n 1. list/0 (1, 6) - \"and\"\n 2. quantity/0 (1, 10) - \"quantity\"\n 3. is/0 (1, 15) - \"are\"\n 4. km/0 (1, 20) - \"properties\"\n\n details\n\n *0. price/1 (dead) (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. list/0 (1, 6) - \"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(Property(('context', 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", \"Listable(Unify(Property(('context', 'instance')), Property(('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 types: [\n ]\n word: \"and\"\n }\n 2. quantity/0 (1, 10) - \"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. is/0 (1, 15) - \"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. km/0 (1, 20) - \"properties\"\n {\n marker: \n Operator(km/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': 23, 'end': 32}\n text: \"properties\"\n value: \"properties\"\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(Property(('context',\n 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", \"Listable(Unify(Property(('context',\n 'instance')), Property(('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 types: [\n ]\n word: \"and\"\n }\n\n\n>>>>>>>>>>>>> Counter 3\n summary\n\n *0. list/1 (3, 0) - \"price and quantity\"\n *1. is/0 (1, 15) - \"are\"\n *2. property/0 (dead) (1, 21) - \"properties\"\n\n details\n\n *0. list/1 (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(Property(('context', 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: []\n ]\n Evaluator:\n Bridge('{ ...operator, value: append(before, operator.value) }')\n Variables:\n {'found_types': ['quantity', 'price'], 'type': ['theAble', 'quantity', 'queryable', 'quantifier', 'comparable', 'number', 'listable', 'property']}\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. is/0 (1, 15) - \"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. property/0 (dead) (1, 21) - \"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 (4, 0) - \"price and quantity are properties\"\n\n details\n\n *0. is/1 (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(Property(('context', 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: []\n ]\n Evaluator:\n Bridge('{ ...operator, value: append(before, operator.value) }')\n Variables:\n {'found_types': ['quantity', 'price'], 'type': ['theAble', 'quantity', 'queryable', 'quantifier', 'comparable', 'number', 'listable', 'property']}\n\n number: \"many\"\n range: {'start': 0, 'end': 32}\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 {'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(Property(('cont\n 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: []\n ]\n Evaluator:\n Bridge('{ ...operator, value: append(before, operator.value) }')\n Variables:\n {'found_types': ['quantity', 'price'], 'type': ['theAble', 'quantity', 'queryable', 'quantifier', 'compara\n\n number: \"many\"\n range: {'start': 0, 'end': 32}\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) (5, 0) - \"price and quantity are properties\"\n\n details\n\n *0. is/2 (dead) (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(Property(('context', 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: []\n ]\n Evaluator:\n Bridge('{ ...operator, value: append(before, operator.value) }')\n Variables:\n {'found_types': ['quantity', 'price'], 'type': ['theAble', 'quantity', 'queryable', 'quantifier', 'comparable', 'number', 'listable', 'property']}\n\n number: \"many\"\n range: {'start': 0, 'end': 32}\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",
1064
+ "trace": "\n\n>>>>>>>>>>>>> Counter 1\n summary\n\n 0. price/0 (1, 0) - \"price\"\n 1. list/0 (1, 6) - \"and\"\n 2. quantity/0 (1, 10) - \"quantity\"\n 3. is/0 (1, 15) - \"are\"\n 4. km/0 (1, 20) - \"properties\"\n\n details\n\n 0. price/0 (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. list/0 (1, 6) - \"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(Property(('context', 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", \"Listable(Unify(Property(('context', 'instance')), Property(('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. quantity/0 (1, 10) - \"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. is/0 (1, 15) - \"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. km/0 (1, 20) - \"properties\"\n {\n marker: \n Operator(km/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': 23, 'end': 32}\n text: \"properties\"\n value: \"properties\"\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) (2, 0) - \"price\"\n 1. list/0 (1, 6) - \"and\"\n 2. quantity/0 (1, 10) - \"quantity\"\n 3. is/0 (1, 15) - \"are\"\n 4. km/0 (1, 20) - \"properties\"\n\n details\n\n *0. price/1 (dead) (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. list/0 (1, 6) - \"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(Property(('context', 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", \"Listable(Unify(Property(('context', 'instance')), Property(('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 types: [\n ]\n word: \"and\"\n }\n 2. quantity/0 (1, 10) - \"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. is/0 (1, 15) - \"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. km/0 (1, 20) - \"properties\"\n {\n marker: \n Operator(km/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': 23, 'end': 32}\n text: \"properties\"\n value: \"properties\"\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(Property(('context',\n 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: [And([\"ListableType(Listable(Type(variable: 'type')))\", \"Listable(Unify(Property(('context',\n 'instance')), Property(('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 types: [\n ]\n word: \"and\"\n }\n\n\n>>>>>>>>>>>>> Counter 3\n summary\n\n *0. list/1 (3, 0) - \"price and quantity\"\n *1. is/0 (1, 15) - \"are\"\n *2. property/0 (dead) (1, 21) - \"properties\"\n\n details\n\n *0. list/1 (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(Property(('context', 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: []\n ]\n Evaluator:\n Bridge('{ ...operator, value: append(before, operator.value) }')\n Variables:\n {'found_types': ['quantity', 'price'], 'type': ['theAble', 'quantity', 'quantifier', 'queryable', 'comparable', 'property', 'number', 'listable']}\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. is/0 (1, 15) - \"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. property/0 (dead) (1, 21) - \"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 (4, 0) - \"price and quantity are properties\"\n\n details\n\n *0. is/1 (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(Property(('context', 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: []\n ]\n Evaluator:\n Bridge('{ ...operator, value: append(before, operator.value) }')\n Variables:\n {'found_types': ['quantity', 'price'], 'type': ['theAble', 'quantity', 'quantifier', 'queryable', 'comparable', 'property', 'number', 'listable']}\n\n number: \"many\"\n range: {'start': 0, 'end': 32}\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 {'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(Property(('cont\n 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: []\n ]\n Evaluator:\n Bridge('{ ...operator, value: append(before, operator.value) }')\n Variables:\n {'found_types': ['quantity', 'price'], 'type': ['theAble', 'quantity', 'quantifier', 'queryable', 'compara\n\n number: \"many\"\n range: {'start': 0, 'end': 32}\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) (5, 0) - \"price and quantity are properties\"\n\n details\n\n *0. is/2 (dead) (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(Property(('context', 'instance')), Property(('variables', 'instance'))))\"])]\n Right Selector: []\n ]\n Evaluator:\n Bridge('{ ...operator, value: append(before, operator.value) }')\n Variables:\n {'found_types': ['quantity', 'price'], 'type': ['theAble', 'quantity', 'quantifier', 'queryable', 'comparable', 'property', 'number', 'listable']}\n\n number: \"many\"\n range: {'start': 0, 'end': 32}\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",
1065
1065
  "contexts": [
1066
1066
  {
1067
1067
  "number": "many",
package/common/stm.js CHANGED
@@ -14,6 +14,7 @@ class API {
14
14
  this._objects.mentioned = []
15
15
  this._objects.variables = {}
16
16
  this.idCounter = 0
17
+ this.maximumMentioned = 50
17
18
  }
18
19
 
19
20
  getId() {
@@ -65,7 +66,7 @@ class API {
65
66
  concept.stm.id = this.getId()
66
67
  }
67
68
  frameOfReference.mentioned = (frameOfReference.mentioned || []).filter( (context) => context.stm && context.stm.id != concept.stm.id )
68
- frameOfReference.mentioned.unshift(concept)
69
+ helpers.unshiftL(frameOfReference.mentioned, concept, this.maximumMentioned)
69
70
  }
70
71
 
71
72
  mentions({ context, frameOfReference, useHierarchy=true, all, condition = (() => true) } = {}) {
package/package.json CHANGED
@@ -325,8 +325,8 @@
325
325
  "scriptjs": "^2.5.9",
326
326
  "table": "^6.7.1",
327
327
  "uuid": "^9.0.0",
328
- "theprogrammablemind_4wp": "9.1.1-beta.24"
328
+ "theprogrammablemind_4wp": "9.1.1-beta.26"
329
329
  },
330
- "version": "9.1.1-beta.24",
330
+ "version": "9.1.1-beta.26",
331
331
  "license": "UNLICENSED"
332
332
  }