planscript 1.2.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -327,12 +327,12 @@ const peggyParser = // Generated by Peggy 3.0.2.
327
327
  var peg$c49 = "between";
328
328
  var peg$c50 = "and";
329
329
  var peg$c51 = "on";
330
- var peg$c52 = "shared_edge";
331
- var peg$c53 = "%";
332
- var peg$c54 = "width";
333
- var peg$c55 = "swing";
334
- var peg$c56 = "window";
335
- var peg$c57 = "edge";
330
+ var peg$c52 = "edge";
331
+ var peg$c53 = "shared_edge";
332
+ var peg$c54 = "%";
333
+ var peg$c55 = "width";
334
+ var peg$c56 = "swing";
335
+ var peg$c57 = "window";
336
336
  var peg$c58 = "sill";
337
337
  var peg$c59 = "north";
338
338
  var peg$c60 = "south";
@@ -348,13 +348,15 @@ const peggyParser = // Generated by Peggy 3.0.2.
348
348
  var peg$c70 = "min_room_area";
349
349
  var peg$c71 = ">=";
350
350
  var peg$c72 = "rooms_connected";
351
- var peg$c73 = "-";
352
- var peg$c74 = "\"";
353
- var peg$c75 = "#";
354
- var peg$c76 = "\n";
355
- var peg$c77 = "//";
356
- var peg$c78 = "/*";
357
- var peg$c79 = "*/";
351
+ var peg$c73 = "[";
352
+ var peg$c74 = "]";
353
+ var peg$c75 = "-";
354
+ var peg$c76 = "\"";
355
+ var peg$c77 = "#";
356
+ var peg$c78 = "\n";
357
+ var peg$c79 = "//";
358
+ var peg$c80 = "/*";
359
+ var peg$c81 = "*/";
358
360
  var peg$r0 = /^[0-9]/;
359
361
  var peg$r1 = /^[^"]/;
360
362
  var peg$r2 = /^[a-zA-Z_]/;
@@ -413,12 +415,12 @@ const peggyParser = // Generated by Peggy 3.0.2.
413
415
  var peg$e49 = peg$literalExpectation("between", true);
414
416
  var peg$e50 = peg$literalExpectation("and", true);
415
417
  var peg$e51 = peg$literalExpectation("on", true);
416
- var peg$e52 = peg$literalExpectation("shared_edge", true);
417
- var peg$e53 = peg$literalExpectation("%", false);
418
- var peg$e54 = peg$literalExpectation("width", true);
419
- var peg$e55 = peg$literalExpectation("swing", true);
420
- var peg$e56 = peg$literalExpectation("window", true);
421
- var peg$e57 = peg$literalExpectation("edge", true);
418
+ var peg$e52 = peg$literalExpectation("edge", true);
419
+ var peg$e53 = peg$literalExpectation("shared_edge", true);
420
+ var peg$e54 = peg$literalExpectation("%", false);
421
+ var peg$e55 = peg$literalExpectation("width", true);
422
+ var peg$e56 = peg$literalExpectation("swing", true);
423
+ var peg$e57 = peg$literalExpectation("window", true);
422
424
  var peg$e58 = peg$literalExpectation("sill", true);
423
425
  var peg$e59 = peg$literalExpectation("north", true);
424
426
  var peg$e60 = peg$literalExpectation("south", true);
@@ -434,20 +436,22 @@ const peggyParser = // Generated by Peggy 3.0.2.
434
436
  var peg$e70 = peg$literalExpectation("min_room_area", true);
435
437
  var peg$e71 = peg$literalExpectation(">=", false);
436
438
  var peg$e72 = peg$literalExpectation("rooms_connected", true);
437
- var peg$e73 = peg$literalExpectation("-", false);
438
- var peg$e74 = peg$classExpectation([["0", "9"]], false, false);
439
- var peg$e75 = peg$literalExpectation("\"", false);
440
- var peg$e76 = peg$classExpectation(["\""], true, false);
441
- var peg$e77 = peg$classExpectation([["a", "z"], ["A", "Z"], "_"], false, false);
442
- var peg$e78 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_"], false, false);
443
- var peg$e79 = peg$classExpectation([" ", "\t", "\n", "\r"], false, false);
444
- var peg$e80 = peg$literalExpectation("#", false);
445
- var peg$e81 = peg$classExpectation(["\n"], true, false);
446
- var peg$e82 = peg$literalExpectation("\n", false);
447
- var peg$e83 = peg$literalExpectation("//", false);
448
- var peg$e84 = peg$literalExpectation("/*", false);
449
- var peg$e85 = peg$literalExpectation("*/", false);
450
- var peg$e86 = peg$anyExpectation();
439
+ var peg$e73 = peg$literalExpectation("[", false);
440
+ var peg$e74 = peg$literalExpectation("]", false);
441
+ var peg$e75 = peg$literalExpectation("-", false);
442
+ var peg$e76 = peg$classExpectation([["0", "9"]], false, false);
443
+ var peg$e77 = peg$literalExpectation("\"", false);
444
+ var peg$e78 = peg$classExpectation(["\""], true, false);
445
+ var peg$e79 = peg$classExpectation([["a", "z"], ["A", "Z"], "_"], false, false);
446
+ var peg$e80 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_"], false, false);
447
+ var peg$e81 = peg$classExpectation([" ", "\t", "\n", "\r"], false, false);
448
+ var peg$e82 = peg$literalExpectation("#", false);
449
+ var peg$e83 = peg$classExpectation(["\n"], true, false);
450
+ var peg$e84 = peg$literalExpectation("\n", false);
451
+ var peg$e85 = peg$literalExpectation("//", false);
452
+ var peg$e86 = peg$literalExpectation("/*", false);
453
+ var peg$e87 = peg$literalExpectation("*/", false);
454
+ var peg$e88 = peg$anyExpectation();
451
455
  // @ts-ignore
452
456
  var peg$f0 = function (units, origin, axis, grid, defaults, plan) {
453
457
  // @ts-ignore
@@ -791,82 +795,137 @@ const peggyParser = // Generated by Peggy 3.0.2.
791
795
  // @ts-ignore
792
796
  const loc = location();
793
797
  // @ts-ignore
794
- const result = {
795
- // @ts-ignore
796
- type: 'DoorOpening',
797
- // @ts-ignore
798
- name,
799
- // @ts-ignore
800
- between: ['', ''],
801
- // @ts-ignore
802
- on: 'shared_edge',
803
- // @ts-ignore
804
- at: { type: 'absolute', value: 0 },
805
- // @ts-ignore
806
- width: 0,
807
- // @ts-ignore
808
- span: { start: { line: loc.start.line, column: loc.start.column, offset: loc.start.offset }, end: { line: loc.end.line, column: loc.end.column, offset: loc.end.offset } }
809
- };
798
+ const span = { start: { line: loc.start.line, column: loc.start.column, offset: loc.start.offset }, end: { line: loc.end.line, column: loc.end.column, offset: loc.end.offset } };
799
+ // Collect all content items
800
+ // @ts-ignore
801
+ let between;
802
+ // @ts-ignore
803
+ let roomEdge;
804
+ // @ts-ignore
805
+ let at = { type: 'absolute', value: 0 };
806
+ // @ts-ignore
807
+ let width = 0;
808
+ // @ts-ignore
809
+ let swing;
810
810
  // @ts-ignore
811
811
  for (const [, item] of content) {
812
812
  // @ts-ignore
813
813
  if (item.type === 'between') {
814
814
  // @ts-ignore
815
- result.between = item.rooms;
815
+ between = item.rooms;
816
+ // @ts-ignore
817
+ }
818
+ else if (item.type === 'onSharedEdge') {
819
+ // shared_edge marker (used with between)
816
820
  // @ts-ignore
817
821
  }
818
- else if (item.type === 'on') {
822
+ else if (item.type === 'onRoomEdge') {
819
823
  // @ts-ignore
820
- result.on = 'shared_edge';
824
+ roomEdge = { room: item.room, edge: item.edge };
821
825
  // @ts-ignore
822
826
  }
823
827
  else if (item.type === 'at') {
824
828
  // @ts-ignore
825
- result.at = item.position;
829
+ at = item.position;
826
830
  // @ts-ignore
827
831
  }
828
832
  else if (item.type === 'width') {
829
833
  // @ts-ignore
830
- result.width = item.value;
834
+ width = item.value;
831
835
  // @ts-ignore
832
836
  }
833
837
  else if (item.type === 'swing') {
834
838
  // @ts-ignore
835
- result.swing = item.room;
839
+ swing = item.room;
836
840
  }
837
841
  }
842
+ // Return appropriate door type based on content
838
843
  // @ts-ignore
839
- return result;
844
+ if (roomEdge) {
845
+ // Door on single room edge (exterior door)
846
+ // @ts-ignore
847
+ const result = {
848
+ // @ts-ignore
849
+ type: 'DoorOpening',
850
+ // @ts-ignore
851
+ name,
852
+ // @ts-ignore
853
+ room: roomEdge.room,
854
+ // @ts-ignore
855
+ edge: roomEdge.edge,
856
+ // @ts-ignore
857
+ at,
858
+ // @ts-ignore
859
+ width,
860
+ // @ts-ignore
861
+ span
862
+ };
863
+ // @ts-ignore
864
+ if (swing)
865
+ result.swing = swing;
866
+ // @ts-ignore
867
+ return result;
868
+ // @ts-ignore
869
+ }
870
+ else {
871
+ // Door between two rooms
872
+ // @ts-ignore
873
+ const result = {
874
+ // @ts-ignore
875
+ type: 'DoorOpening',
876
+ // @ts-ignore
877
+ name,
878
+ // @ts-ignore
879
+ between: between || ['', ''],
880
+ // @ts-ignore
881
+ on: 'shared_edge',
882
+ // @ts-ignore
883
+ at,
884
+ // @ts-ignore
885
+ width,
886
+ // @ts-ignore
887
+ span
888
+ };
889
+ // @ts-ignore
890
+ if (swing)
891
+ result.swing = swing;
892
+ // @ts-ignore
893
+ return result;
894
+ }
840
895
  }; // @ts-ignore
841
896
  var peg$f47 = function (room1, room2) {
842
897
  // @ts-ignore
843
898
  return { type: 'between', rooms: [room1, room2] };
844
899
  }; // @ts-ignore
845
- var peg$f48 = function () {
900
+ var peg$f48 = function (room, edge) {
846
901
  // @ts-ignore
847
- return { type: 'on' };
902
+ return { type: 'onRoomEdge', room, edge };
848
903
  }; // @ts-ignore
849
- var peg$f49 = function (position) {
904
+ var peg$f49 = function () {
905
+ // @ts-ignore
906
+ return { type: 'onSharedEdge' };
907
+ }; // @ts-ignore
908
+ var peg$f50 = function (position) {
850
909
  // @ts-ignore
851
910
  return { type: 'at', position };
852
911
  }; // @ts-ignore
853
- var peg$f50 = function (value) {
912
+ var peg$f51 = function (value) {
854
913
  // @ts-ignore
855
914
  return { type: 'percentage', value };
856
915
  }; // @ts-ignore
857
- var peg$f51 = function (value) {
916
+ var peg$f52 = function (value) {
858
917
  // @ts-ignore
859
918
  return { type: 'absolute', value };
860
919
  }; // @ts-ignore
861
- var peg$f52 = function (value) {
920
+ var peg$f53 = function (value) {
862
921
  // @ts-ignore
863
922
  return { type: 'width', value };
864
923
  }; // @ts-ignore
865
- var peg$f53 = function (room) {
924
+ var peg$f54 = function (room) {
866
925
  // @ts-ignore
867
926
  return { type: 'swing', room };
868
927
  }; // @ts-ignore
869
- var peg$f54 = function (name, content) {
928
+ var peg$f55 = function (name, content) {
870
929
  // @ts-ignore
871
930
  const loc = location();
872
931
  // @ts-ignore
@@ -914,41 +973,41 @@ const peggyParser = // Generated by Peggy 3.0.2.
914
973
  // @ts-ignore
915
974
  return result;
916
975
  }; // @ts-ignore
917
- var peg$f55 = function (room, edge) {
976
+ var peg$f56 = function (room, edge) {
918
977
  // @ts-ignore
919
978
  return { type: 'windowOn', room, edge };
920
979
  }; // @ts-ignore
921
- var peg$f56 = function (position) {
980
+ var peg$f57 = function (position) {
922
981
  // @ts-ignore
923
982
  return { type: 'at', position };
924
983
  }; // @ts-ignore
925
- var peg$f57 = function (value) {
984
+ var peg$f58 = function (value) {
926
985
  // @ts-ignore
927
986
  return { type: 'width', value };
928
987
  }; // @ts-ignore
929
- var peg$f58 = function (value) {
988
+ var peg$f59 = function (value) {
930
989
  // @ts-ignore
931
990
  return { type: 'sill', value };
932
991
  }; // @ts-ignore
933
- var peg$f59 = function () {
992
+ var peg$f60 = function () {
934
993
  return 'north';
935
994
  }; // @ts-ignore
936
- var peg$f60 = function () {
995
+ var peg$f61 = function () {
937
996
  return 'south';
938
997
  }; // @ts-ignore
939
- var peg$f61 = function () {
998
+ var peg$f62 = function () {
940
999
  return 'east';
941
1000
  }; // @ts-ignore
942
- var peg$f62 = function () {
1001
+ var peg$f63 = function () {
943
1002
  return 'west';
944
1003
  }; // @ts-ignore
945
- var peg$f63 = function (room, edge, thickness) {
1004
+ var peg$f64 = function (room, edge, thickness) {
946
1005
  // @ts-ignore
947
1006
  const loc = location();
948
1007
  // @ts-ignore
949
1008
  return { type: 'WallThicknessOverride', room, edge, thickness, span: { start: { line: loc.start.line, column: loc.start.column, offset: loc.start.offset }, end: { line: loc.end.line, column: loc.end.column, offset: loc.end.offset } } };
950
1009
  }; // @ts-ignore
951
- var peg$f64 = function (target) {
1010
+ var peg$f65 = function (target) {
952
1011
  // @ts-ignore
953
1012
  const loc = location();
954
1013
  // @ts-ignore
@@ -956,43 +1015,47 @@ const peggyParser = // Generated by Peggy 3.0.2.
956
1015
  // @ts-ignore
957
1016
  return { type: 'AssertionInsideFootprint', target: t, span: { start: { line: loc.start.line, column: loc.start.column, offset: loc.start.offset }, end: { line: loc.end.line, column: loc.end.column, offset: loc.end.offset } } };
958
1017
  }; // @ts-ignore
959
- var peg$f65 = function () {
1018
+ var peg$f66 = function () {
960
1019
  // @ts-ignore
961
1020
  const loc = location();
962
1021
  // @ts-ignore
963
1022
  return { type: 'AssertionNoOverlap', target: 'rooms', span: { start: { line: loc.start.line, column: loc.start.column, offset: loc.start.offset }, end: { line: loc.end.line, column: loc.end.column, offset: loc.end.offset } } };
964
1023
  }; // @ts-ignore
965
- var peg$f66 = function () {
1024
+ var peg$f67 = function () {
966
1025
  // @ts-ignore
967
1026
  const loc = location();
968
1027
  // @ts-ignore
969
1028
  return { type: 'AssertionOpeningsOnWalls', span: { start: { line: loc.start.line, column: loc.start.column, offset: loc.start.offset }, end: { line: loc.end.line, column: loc.end.column, offset: loc.end.offset } } };
970
1029
  }; // @ts-ignore
971
- var peg$f67 = function (room, minArea) {
1030
+ var peg$f68 = function (room, minArea) {
972
1031
  // @ts-ignore
973
1032
  const loc = location();
974
1033
  // @ts-ignore
975
1034
  return { type: 'AssertionMinRoomArea', room, minArea, span: { start: { line: loc.start.line, column: loc.start.column, offset: loc.start.offset }, end: { line: loc.end.line, column: loc.end.column, offset: loc.end.offset } } };
976
1035
  }; // @ts-ignore
977
- var peg$f68 = function () {
1036
+ var peg$f69 = function () {
978
1037
  // @ts-ignore
979
1038
  const loc = location();
980
1039
  // @ts-ignore
981
1040
  return { type: 'AssertionRoomsConnected', span: { start: { line: loc.start.line, column: loc.start.column, offset: loc.start.offset }, end: { line: loc.end.line, column: loc.end.column, offset: loc.end.offset } } };
982
1041
  }; // @ts-ignore
983
- var peg$f69 = function (x, y) {
1042
+ var peg$f70 = function (x, y) {
984
1043
  // @ts-ignore
985
1044
  return { x, y };
986
1045
  }; // @ts-ignore
987
- var peg$f70 = function (head, tail) {
1046
+ var peg$f71 = function (head, tail) {
1047
+ // @ts-ignore
1048
+ return [head, ...tail.map((t) => t[3])];
1049
+ }; // @ts-ignore
1050
+ var peg$f72 = function (head, tail) {
988
1051
  // @ts-ignore
989
1052
  return [head, ...tail.map((t) => t[1])];
990
1053
  }; // @ts-ignore
991
- var peg$f71 = function (value, unit) {
1054
+ var peg$f73 = function (value, unit) {
992
1055
  // @ts-ignore
993
1056
  return parseFloat(value);
994
1057
  }; // @ts-ignore
995
- var peg$f72 = function (chars) {
1058
+ var peg$f74 = function (chars) {
996
1059
  // @ts-ignore
997
1060
  return chars;
998
1061
  };
@@ -4468,19 +4531,24 @@ const peggyParser = // Generated by Peggy 3.0.2.
4468
4531
  // @ts-ignore
4469
4532
  if (s0 === peg$FAILED) {
4470
4533
  // @ts-ignore
4471
- s0 = peg$parseDoorOn();
4534
+ s0 = peg$parseDoorOnRoomEdge();
4472
4535
  // @ts-ignore
4473
4536
  if (s0 === peg$FAILED) {
4474
4537
  // @ts-ignore
4475
- s0 = peg$parseDoorAt();
4538
+ s0 = peg$parseDoorOnSharedEdge();
4476
4539
  // @ts-ignore
4477
4540
  if (s0 === peg$FAILED) {
4478
4541
  // @ts-ignore
4479
- s0 = peg$parseDoorWidth();
4542
+ s0 = peg$parseDoorAt();
4480
4543
  // @ts-ignore
4481
4544
  if (s0 === peg$FAILED) {
4482
4545
  // @ts-ignore
4483
- s0 = peg$parseDoorSwing();
4546
+ s0 = peg$parseDoorWidth();
4547
+ // @ts-ignore
4548
+ if (s0 === peg$FAILED) {
4549
+ // @ts-ignore
4550
+ s0 = peg$parseDoorSwing();
4551
+ }
4484
4552
  }
4485
4553
  }
4486
4554
  }
@@ -4584,7 +4652,126 @@ const peggyParser = // Generated by Peggy 3.0.2.
4584
4652
  return s0;
4585
4653
  }
4586
4654
  // @ts-ignore
4587
- function peg$parseDoorOn() {
4655
+ function peg$parseDoorOnRoomEdge() {
4656
+ // @ts-ignore
4657
+ var s0, s1, s2, s3, s4, s5, s6, s7;
4658
+ // @ts-ignore
4659
+ s0 = peg$currPos;
4660
+ // @ts-ignore
4661
+ if (input.substr(peg$currPos, 2).toLowerCase() === peg$c51) {
4662
+ // @ts-ignore
4663
+ s1 = input.substr(peg$currPos, 2);
4664
+ // @ts-ignore
4665
+ peg$currPos += 2;
4666
+ // @ts-ignore
4667
+ }
4668
+ else {
4669
+ // @ts-ignore
4670
+ s1 = peg$FAILED;
4671
+ // @ts-ignore
4672
+ if (peg$silentFails === 0) {
4673
+ peg$fail(peg$e51);
4674
+ }
4675
+ }
4676
+ // @ts-ignore
4677
+ if (s1 !== peg$FAILED) {
4678
+ // @ts-ignore
4679
+ s2 = peg$parse_();
4680
+ // @ts-ignore
4681
+ s3 = peg$parseIdentifier();
4682
+ // @ts-ignore
4683
+ if (s3 !== peg$FAILED) {
4684
+ // @ts-ignore
4685
+ if (input.charCodeAt(peg$currPos) === 46) {
4686
+ // @ts-ignore
4687
+ s4 = peg$c37;
4688
+ // @ts-ignore
4689
+ peg$currPos++;
4690
+ // @ts-ignore
4691
+ }
4692
+ else {
4693
+ // @ts-ignore
4694
+ s4 = peg$FAILED;
4695
+ // @ts-ignore
4696
+ if (peg$silentFails === 0) {
4697
+ peg$fail(peg$e37);
4698
+ }
4699
+ }
4700
+ // @ts-ignore
4701
+ if (s4 !== peg$FAILED) {
4702
+ // @ts-ignore
4703
+ if (input.substr(peg$currPos, 4).toLowerCase() === peg$c52) {
4704
+ // @ts-ignore
4705
+ s5 = input.substr(peg$currPos, 4);
4706
+ // @ts-ignore
4707
+ peg$currPos += 4;
4708
+ // @ts-ignore
4709
+ }
4710
+ else {
4711
+ // @ts-ignore
4712
+ s5 = peg$FAILED;
4713
+ // @ts-ignore
4714
+ if (peg$silentFails === 0) {
4715
+ peg$fail(peg$e52);
4716
+ }
4717
+ }
4718
+ // @ts-ignore
4719
+ if (s5 !== peg$FAILED) {
4720
+ // @ts-ignore
4721
+ s6 = peg$parse_();
4722
+ // @ts-ignore
4723
+ s7 = peg$parseEdgeSide();
4724
+ // @ts-ignore
4725
+ if (s7 !== peg$FAILED) {
4726
+ // @ts-ignore
4727
+ peg$savedPos = s0;
4728
+ // @ts-ignore
4729
+ s0 = peg$f48(s3, s7);
4730
+ // @ts-ignore
4731
+ }
4732
+ else {
4733
+ // @ts-ignore
4734
+ peg$currPos = s0;
4735
+ // @ts-ignore
4736
+ s0 = peg$FAILED;
4737
+ }
4738
+ // @ts-ignore
4739
+ }
4740
+ else {
4741
+ // @ts-ignore
4742
+ peg$currPos = s0;
4743
+ // @ts-ignore
4744
+ s0 = peg$FAILED;
4745
+ }
4746
+ // @ts-ignore
4747
+ }
4748
+ else {
4749
+ // @ts-ignore
4750
+ peg$currPos = s0;
4751
+ // @ts-ignore
4752
+ s0 = peg$FAILED;
4753
+ }
4754
+ // @ts-ignore
4755
+ }
4756
+ else {
4757
+ // @ts-ignore
4758
+ peg$currPos = s0;
4759
+ // @ts-ignore
4760
+ s0 = peg$FAILED;
4761
+ }
4762
+ // @ts-ignore
4763
+ }
4764
+ else {
4765
+ // @ts-ignore
4766
+ peg$currPos = s0;
4767
+ // @ts-ignore
4768
+ s0 = peg$FAILED;
4769
+ }
4770
+ // @ts-ignore
4771
+ return s0;
4772
+ }
4773
+ // @ts-ignore
4774
+ function peg$parseDoorOnSharedEdge() {
4588
4775
  // @ts-ignore
4589
4776
  var s0, s1, s2, s3;
4590
4777
  // @ts-ignore
@@ -4610,7 +4797,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4610
4797
  // @ts-ignore
4611
4798
  s2 = peg$parse_();
4612
4799
  // @ts-ignore
4613
- if (input.substr(peg$currPos, 11).toLowerCase() === peg$c52) {
4800
+ if (input.substr(peg$currPos, 11).toLowerCase() === peg$c53) {
4614
4801
  // @ts-ignore
4615
4802
  s3 = input.substr(peg$currPos, 11);
4616
4803
  // @ts-ignore
@@ -4622,7 +4809,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4622
4809
  s3 = peg$FAILED;
4623
4810
  // @ts-ignore
4624
4811
  if (peg$silentFails === 0) {
4625
- peg$fail(peg$e52);
4812
+ peg$fail(peg$e53);
4626
4813
  }
4627
4814
  }
4628
4815
  // @ts-ignore
@@ -4630,7 +4817,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4630
4817
  // @ts-ignore
4631
4818
  peg$savedPos = s0;
4632
4819
  // @ts-ignore
4633
- s0 = peg$f48();
4820
+ s0 = peg$f49();
4634
4821
  // @ts-ignore
4635
4822
  }
4636
4823
  else {
@@ -4683,7 +4870,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4683
4870
  // @ts-ignore
4684
4871
  peg$savedPos = s0;
4685
4872
  // @ts-ignore
4686
- s0 = peg$f49(s3);
4873
+ s0 = peg$f50(s3);
4687
4874
  // @ts-ignore
4688
4875
  }
4689
4876
  else {
@@ -4716,7 +4903,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4716
4903
  // @ts-ignore
4717
4904
  if (input.charCodeAt(peg$currPos) === 37) {
4718
4905
  // @ts-ignore
4719
- s2 = peg$c53;
4906
+ s2 = peg$c54;
4720
4907
  // @ts-ignore
4721
4908
  peg$currPos++;
4722
4909
  // @ts-ignore
@@ -4726,7 +4913,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4726
4913
  s2 = peg$FAILED;
4727
4914
  // @ts-ignore
4728
4915
  if (peg$silentFails === 0) {
4729
- peg$fail(peg$e53);
4916
+ peg$fail(peg$e54);
4730
4917
  }
4731
4918
  }
4732
4919
  // @ts-ignore
@@ -4734,7 +4921,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4734
4921
  // @ts-ignore
4735
4922
  peg$savedPos = s0;
4736
4923
  // @ts-ignore
4737
- s0 = peg$f50(s1);
4924
+ s0 = peg$f51(s1);
4738
4925
  // @ts-ignore
4739
4926
  }
4740
4927
  else {
@@ -4762,7 +4949,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4762
4949
  // @ts-ignore
4763
4950
  peg$savedPos = s0;
4764
4951
  // @ts-ignore
4765
- s1 = peg$f51(s1);
4952
+ s1 = peg$f52(s1);
4766
4953
  }
4767
4954
  // @ts-ignore
4768
4955
  s0 = s1;
@@ -4777,7 +4964,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4777
4964
  // @ts-ignore
4778
4965
  s0 = peg$currPos;
4779
4966
  // @ts-ignore
4780
- if (input.substr(peg$currPos, 5).toLowerCase() === peg$c54) {
4967
+ if (input.substr(peg$currPos, 5).toLowerCase() === peg$c55) {
4781
4968
  // @ts-ignore
4782
4969
  s1 = input.substr(peg$currPos, 5);
4783
4970
  // @ts-ignore
@@ -4789,7 +4976,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4789
4976
  s1 = peg$FAILED;
4790
4977
  // @ts-ignore
4791
4978
  if (peg$silentFails === 0) {
4792
- peg$fail(peg$e54);
4979
+ peg$fail(peg$e55);
4793
4980
  }
4794
4981
  }
4795
4982
  // @ts-ignore
@@ -4803,7 +4990,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4803
4990
  // @ts-ignore
4804
4991
  peg$savedPos = s0;
4805
4992
  // @ts-ignore
4806
- s0 = peg$f52(s3);
4993
+ s0 = peg$f53(s3);
4807
4994
  // @ts-ignore
4808
4995
  }
4809
4996
  else {
@@ -4830,7 +5017,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4830
5017
  // @ts-ignore
4831
5018
  s0 = peg$currPos;
4832
5019
  // @ts-ignore
4833
- if (input.substr(peg$currPos, 5).toLowerCase() === peg$c55) {
5020
+ if (input.substr(peg$currPos, 5).toLowerCase() === peg$c56) {
4834
5021
  // @ts-ignore
4835
5022
  s1 = input.substr(peg$currPos, 5);
4836
5023
  // @ts-ignore
@@ -4842,7 +5029,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4842
5029
  s1 = peg$FAILED;
4843
5030
  // @ts-ignore
4844
5031
  if (peg$silentFails === 0) {
4845
- peg$fail(peg$e55);
5032
+ peg$fail(peg$e56);
4846
5033
  }
4847
5034
  }
4848
5035
  // @ts-ignore
@@ -4856,7 +5043,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4856
5043
  // @ts-ignore
4857
5044
  peg$savedPos = s0;
4858
5045
  // @ts-ignore
4859
- s0 = peg$f53(s3);
5046
+ s0 = peg$f54(s3);
4860
5047
  // @ts-ignore
4861
5048
  }
4862
5049
  else {
@@ -4903,7 +5090,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4903
5090
  // @ts-ignore
4904
5091
  s2 = peg$parse_();
4905
5092
  // @ts-ignore
4906
- if (input.substr(peg$currPos, 6).toLowerCase() === peg$c56) {
5093
+ if (input.substr(peg$currPos, 6).toLowerCase() === peg$c57) {
4907
5094
  // @ts-ignore
4908
5095
  s3 = input.substr(peg$currPos, 6);
4909
5096
  // @ts-ignore
@@ -4915,7 +5102,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
4915
5102
  s3 = peg$FAILED;
4916
5103
  // @ts-ignore
4917
5104
  if (peg$silentFails === 0) {
4918
- peg$fail(peg$e56);
5105
+ peg$fail(peg$e57);
4919
5106
  }
4920
5107
  }
4921
5108
  // @ts-ignore
@@ -5018,7 +5205,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5018
5205
  // @ts-ignore
5019
5206
  peg$savedPos = s0;
5020
5207
  // @ts-ignore
5021
- s0 = peg$f54(s5, s9);
5208
+ s0 = peg$f55(s5, s9);
5022
5209
  // @ts-ignore
5023
5210
  }
5024
5211
  else {
@@ -5135,7 +5322,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5135
5322
  // @ts-ignore
5136
5323
  if (s4 !== peg$FAILED) {
5137
5324
  // @ts-ignore
5138
- if (input.substr(peg$currPos, 4).toLowerCase() === peg$c57) {
5325
+ if (input.substr(peg$currPos, 4).toLowerCase() === peg$c52) {
5139
5326
  // @ts-ignore
5140
5327
  s5 = input.substr(peg$currPos, 4);
5141
5328
  // @ts-ignore
@@ -5147,7 +5334,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5147
5334
  s5 = peg$FAILED;
5148
5335
  // @ts-ignore
5149
5336
  if (peg$silentFails === 0) {
5150
- peg$fail(peg$e57);
5337
+ peg$fail(peg$e52);
5151
5338
  }
5152
5339
  }
5153
5340
  // @ts-ignore
@@ -5161,7 +5348,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5161
5348
  // @ts-ignore
5162
5349
  peg$savedPos = s0;
5163
5350
  // @ts-ignore
5164
- s0 = peg$f55(s3, s7);
5351
+ s0 = peg$f56(s3, s7);
5165
5352
  // @ts-ignore
5166
5353
  }
5167
5354
  else {
@@ -5238,7 +5425,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5238
5425
  // @ts-ignore
5239
5426
  peg$savedPos = s0;
5240
5427
  // @ts-ignore
5241
- s0 = peg$f56(s3);
5428
+ s0 = peg$f57(s3);
5242
5429
  // @ts-ignore
5243
5430
  }
5244
5431
  else {
@@ -5265,7 +5452,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5265
5452
  // @ts-ignore
5266
5453
  s0 = peg$currPos;
5267
5454
  // @ts-ignore
5268
- if (input.substr(peg$currPos, 5).toLowerCase() === peg$c54) {
5455
+ if (input.substr(peg$currPos, 5).toLowerCase() === peg$c55) {
5269
5456
  // @ts-ignore
5270
5457
  s1 = input.substr(peg$currPos, 5);
5271
5458
  // @ts-ignore
@@ -5277,7 +5464,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5277
5464
  s1 = peg$FAILED;
5278
5465
  // @ts-ignore
5279
5466
  if (peg$silentFails === 0) {
5280
- peg$fail(peg$e54);
5467
+ peg$fail(peg$e55);
5281
5468
  }
5282
5469
  }
5283
5470
  // @ts-ignore
@@ -5291,7 +5478,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5291
5478
  // @ts-ignore
5292
5479
  peg$savedPos = s0;
5293
5480
  // @ts-ignore
5294
- s0 = peg$f57(s3);
5481
+ s0 = peg$f58(s3);
5295
5482
  // @ts-ignore
5296
5483
  }
5297
5484
  else {
@@ -5344,7 +5531,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5344
5531
  // @ts-ignore
5345
5532
  peg$savedPos = s0;
5346
5533
  // @ts-ignore
5347
- s0 = peg$f58(s3);
5534
+ s0 = peg$f59(s3);
5348
5535
  // @ts-ignore
5349
5536
  }
5350
5537
  else {
@@ -5391,7 +5578,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5391
5578
  // @ts-ignore
5392
5579
  peg$savedPos = s0;
5393
5580
  // @ts-ignore
5394
- s1 = peg$f59();
5581
+ s1 = peg$f60();
5395
5582
  }
5396
5583
  // @ts-ignore
5397
5584
  s0 = s1;
@@ -5420,7 +5607,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5420
5607
  // @ts-ignore
5421
5608
  peg$savedPos = s0;
5422
5609
  // @ts-ignore
5423
- s1 = peg$f60();
5610
+ s1 = peg$f61();
5424
5611
  }
5425
5612
  // @ts-ignore
5426
5613
  s0 = s1;
@@ -5449,7 +5636,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5449
5636
  // @ts-ignore
5450
5637
  peg$savedPos = s0;
5451
5638
  // @ts-ignore
5452
- s1 = peg$f61();
5639
+ s1 = peg$f62();
5453
5640
  }
5454
5641
  // @ts-ignore
5455
5642
  s0 = s1;
@@ -5478,7 +5665,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5478
5665
  // @ts-ignore
5479
5666
  peg$savedPos = s0;
5480
5667
  // @ts-ignore
5481
- s1 = peg$f62();
5668
+ s1 = peg$f63();
5482
5669
  }
5483
5670
  // @ts-ignore
5484
5671
  s0 = s1;
@@ -5549,7 +5736,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5549
5736
  // @ts-ignore
5550
5737
  peg$savedPos = s0;
5551
5738
  // @ts-ignore
5552
- s0 = peg$f63(s3, s5, s7);
5739
+ s0 = peg$f64(s3, s5, s7);
5553
5740
  // @ts-ignore
5554
5741
  }
5555
5742
  else {
@@ -5714,7 +5901,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5714
5901
  // @ts-ignore
5715
5902
  peg$savedPos = s0;
5716
5903
  // @ts-ignore
5717
- s0 = peg$f64(s7);
5904
+ s0 = peg$f65(s7);
5718
5905
  // @ts-ignore
5719
5906
  }
5720
5907
  else {
@@ -5817,7 +6004,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5817
6004
  // @ts-ignore
5818
6005
  peg$savedPos = s0;
5819
6006
  // @ts-ignore
5820
- s0 = peg$f65();
6007
+ s0 = peg$f66();
5821
6008
  // @ts-ignore
5822
6009
  }
5823
6010
  else {
@@ -5892,7 +6079,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5892
6079
  // @ts-ignore
5893
6080
  peg$savedPos = s0;
5894
6081
  // @ts-ignore
5895
- s0 = peg$f66();
6082
+ s0 = peg$f67();
5896
6083
  // @ts-ignore
5897
6084
  }
5898
6085
  else {
@@ -5991,7 +6178,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
5991
6178
  // @ts-ignore
5992
6179
  peg$savedPos = s0;
5993
6180
  // @ts-ignore
5994
- s0 = peg$f67(s5, s9);
6181
+ s0 = peg$f68(s5, s9);
5995
6182
  // @ts-ignore
5996
6183
  }
5997
6184
  else {
@@ -6082,7 +6269,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6082
6269
  // @ts-ignore
6083
6270
  peg$savedPos = s0;
6084
6271
  // @ts-ignore
6085
- s0 = peg$f68();
6272
+ s0 = peg$f69();
6086
6273
  // @ts-ignore
6087
6274
  }
6088
6275
  else {
@@ -6181,7 +6368,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6181
6368
  // @ts-ignore
6182
6369
  peg$savedPos = s0;
6183
6370
  // @ts-ignore
6184
- s0 = peg$f69(s3, s7);
6371
+ s0 = peg$f70(s3, s7);
6185
6372
  // @ts-ignore
6186
6373
  }
6187
6374
  else {
@@ -6227,6 +6414,227 @@ const peggyParser = // Generated by Peggy 3.0.2.
6227
6414
  }
6228
6415
  // @ts-ignore
6229
6416
  function peg$parsePointList() {
6417
+ // @ts-ignore
6418
+ var s0;
6419
+ // @ts-ignore
6420
+ s0 = peg$parsePointListBracketed();
6421
+ // @ts-ignore
6422
+ if (s0 === peg$FAILED) {
6423
+ // @ts-ignore
6424
+ s0 = peg$parsePointListSpaced();
6425
+ }
6426
+ // @ts-ignore
6427
+ return s0;
6428
+ }
6429
+ // @ts-ignore
6430
+ function peg$parsePointListBracketed() {
6431
+ // @ts-ignore
6432
+ var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9;
6433
+ // @ts-ignore
6434
+ s0 = peg$currPos;
6435
+ // @ts-ignore
6436
+ if (input.charCodeAt(peg$currPos) === 91) {
6437
+ // @ts-ignore
6438
+ s1 = peg$c73;
6439
+ // @ts-ignore
6440
+ peg$currPos++;
6441
+ // @ts-ignore
6442
+ }
6443
+ else {
6444
+ // @ts-ignore
6445
+ s1 = peg$FAILED;
6446
+ // @ts-ignore
6447
+ if (peg$silentFails === 0) {
6448
+ peg$fail(peg$e73);
6449
+ }
6450
+ }
6451
+ // @ts-ignore
6452
+ if (s1 !== peg$FAILED) {
6453
+ // @ts-ignore
6454
+ s2 = peg$parse_();
6455
+ // @ts-ignore
6456
+ s3 = peg$parsePoint();
6457
+ // @ts-ignore
6458
+ if (s3 !== peg$FAILED) {
6459
+ // @ts-ignore
6460
+ s4 = [];
6461
+ // @ts-ignore
6462
+ s5 = peg$currPos;
6463
+ // @ts-ignore
6464
+ s6 = peg$parse_();
6465
+ // @ts-ignore
6466
+ if (input.charCodeAt(peg$currPos) === 44) {
6467
+ // @ts-ignore
6468
+ s7 = peg$c35;
6469
+ // @ts-ignore
6470
+ peg$currPos++;
6471
+ // @ts-ignore
6472
+ }
6473
+ else {
6474
+ // @ts-ignore
6475
+ s7 = peg$FAILED;
6476
+ // @ts-ignore
6477
+ if (peg$silentFails === 0) {
6478
+ peg$fail(peg$e35);
6479
+ }
6480
+ }
6481
+ // @ts-ignore
6482
+ if (s7 !== peg$FAILED) {
6483
+ // @ts-ignore
6484
+ s8 = peg$parse_();
6485
+ // @ts-ignore
6486
+ s9 = peg$parsePoint();
6487
+ // @ts-ignore
6488
+ if (s9 !== peg$FAILED) {
6489
+ // @ts-ignore
6490
+ s6 = [s6, s7, s8, s9];
6491
+ // @ts-ignore
6492
+ s5 = s6;
6493
+ // @ts-ignore
6494
+ }
6495
+ else {
6496
+ // @ts-ignore
6497
+ peg$currPos = s5;
6498
+ // @ts-ignore
6499
+ s5 = peg$FAILED;
6500
+ }
6501
+ // @ts-ignore
6502
+ }
6503
+ else {
6504
+ // @ts-ignore
6505
+ peg$currPos = s5;
6506
+ // @ts-ignore
6507
+ s5 = peg$FAILED;
6508
+ }
6509
+ // @ts-ignore
6510
+ while (s5 !== peg$FAILED) {
6511
+ // @ts-ignore
6512
+ s4.push(s5);
6513
+ // @ts-ignore
6514
+ s5 = peg$currPos;
6515
+ // @ts-ignore
6516
+ s6 = peg$parse_();
6517
+ // @ts-ignore
6518
+ if (input.charCodeAt(peg$currPos) === 44) {
6519
+ // @ts-ignore
6520
+ s7 = peg$c35;
6521
+ // @ts-ignore
6522
+ peg$currPos++;
6523
+ // @ts-ignore
6524
+ }
6525
+ else {
6526
+ // @ts-ignore
6527
+ s7 = peg$FAILED;
6528
+ // @ts-ignore
6529
+ if (peg$silentFails === 0) {
6530
+ peg$fail(peg$e35);
6531
+ }
6532
+ }
6533
+ // @ts-ignore
6534
+ if (s7 !== peg$FAILED) {
6535
+ // @ts-ignore
6536
+ s8 = peg$parse_();
6537
+ // @ts-ignore
6538
+ s9 = peg$parsePoint();
6539
+ // @ts-ignore
6540
+ if (s9 !== peg$FAILED) {
6541
+ // @ts-ignore
6542
+ s6 = [s6, s7, s8, s9];
6543
+ // @ts-ignore
6544
+ s5 = s6;
6545
+ // @ts-ignore
6546
+ }
6547
+ else {
6548
+ // @ts-ignore
6549
+ peg$currPos = s5;
6550
+ // @ts-ignore
6551
+ s5 = peg$FAILED;
6552
+ }
6553
+ // @ts-ignore
6554
+ }
6555
+ else {
6556
+ // @ts-ignore
6557
+ peg$currPos = s5;
6558
+ // @ts-ignore
6559
+ s5 = peg$FAILED;
6560
+ }
6561
+ }
6562
+ // @ts-ignore
6563
+ s5 = peg$parse_();
6564
+ // @ts-ignore
6565
+ if (input.charCodeAt(peg$currPos) === 44) {
6566
+ // @ts-ignore
6567
+ s6 = peg$c35;
6568
+ // @ts-ignore
6569
+ peg$currPos++;
6570
+ // @ts-ignore
6571
+ }
6572
+ else {
6573
+ // @ts-ignore
6574
+ s6 = peg$FAILED;
6575
+ // @ts-ignore
6576
+ if (peg$silentFails === 0) {
6577
+ peg$fail(peg$e35);
6578
+ }
6579
+ }
6580
+ // @ts-ignore
6581
+ if (s6 === peg$FAILED) {
6582
+ // @ts-ignore
6583
+ s6 = null;
6584
+ }
6585
+ // @ts-ignore
6586
+ s7 = peg$parse_();
6587
+ // @ts-ignore
6588
+ if (input.charCodeAt(peg$currPos) === 93) {
6589
+ // @ts-ignore
6590
+ s8 = peg$c74;
6591
+ // @ts-ignore
6592
+ peg$currPos++;
6593
+ // @ts-ignore
6594
+ }
6595
+ else {
6596
+ // @ts-ignore
6597
+ s8 = peg$FAILED;
6598
+ // @ts-ignore
6599
+ if (peg$silentFails === 0) {
6600
+ peg$fail(peg$e74);
6601
+ }
6602
+ }
6603
+ // @ts-ignore
6604
+ if (s8 !== peg$FAILED) {
6605
+ // @ts-ignore
6606
+ peg$savedPos = s0;
6607
+ // @ts-ignore
6608
+ s0 = peg$f71(s3, s4);
6609
+ // @ts-ignore
6610
+ }
6611
+ else {
6612
+ // @ts-ignore
6613
+ peg$currPos = s0;
6614
+ // @ts-ignore
6615
+ s0 = peg$FAILED;
6616
+ }
6617
+ // @ts-ignore
6618
+ }
6619
+ else {
6620
+ // @ts-ignore
6621
+ peg$currPos = s0;
6622
+ // @ts-ignore
6623
+ s0 = peg$FAILED;
6624
+ }
6625
+ // @ts-ignore
6626
+ }
6627
+ else {
6628
+ // @ts-ignore
6629
+ peg$currPos = s0;
6630
+ // @ts-ignore
6631
+ s0 = peg$FAILED;
6632
+ }
6633
+ // @ts-ignore
6634
+ return s0;
6635
+ }
6636
+ // @ts-ignore
6637
+ function peg$parsePointListSpaced() {
6230
6638
  // @ts-ignore
6231
6639
  var s0, s1, s2, s3, s4, s5;
6232
6640
  // @ts-ignore
@@ -6285,7 +6693,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6285
6693
  // @ts-ignore
6286
6694
  peg$savedPos = s0;
6287
6695
  // @ts-ignore
6288
- s0 = peg$f70(s1, s2);
6696
+ s0 = peg$f72(s1, s2);
6289
6697
  // @ts-ignore
6290
6698
  }
6291
6699
  else {
@@ -6310,7 +6718,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6310
6718
  // @ts-ignore
6311
6719
  if (input.charCodeAt(peg$currPos) === 45) {
6312
6720
  // @ts-ignore
6313
- s3 = peg$c73;
6721
+ s3 = peg$c75;
6314
6722
  // @ts-ignore
6315
6723
  peg$currPos++;
6316
6724
  // @ts-ignore
@@ -6320,7 +6728,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6320
6728
  s3 = peg$FAILED;
6321
6729
  // @ts-ignore
6322
6730
  if (peg$silentFails === 0) {
6323
- peg$fail(peg$e73);
6731
+ peg$fail(peg$e75);
6324
6732
  }
6325
6733
  }
6326
6734
  // @ts-ignore
@@ -6343,7 +6751,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6343
6751
  s5 = peg$FAILED;
6344
6752
  // @ts-ignore
6345
6753
  if (peg$silentFails === 0) {
6346
- peg$fail(peg$e74);
6754
+ peg$fail(peg$e76);
6347
6755
  }
6348
6756
  }
6349
6757
  // @ts-ignore
@@ -6365,7 +6773,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6365
6773
  s5 = peg$FAILED;
6366
6774
  // @ts-ignore
6367
6775
  if (peg$silentFails === 0) {
6368
- peg$fail(peg$e74);
6776
+ peg$fail(peg$e76);
6369
6777
  }
6370
6778
  }
6371
6779
  }
@@ -6412,7 +6820,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6412
6820
  s8 = peg$FAILED;
6413
6821
  // @ts-ignore
6414
6822
  if (peg$silentFails === 0) {
6415
- peg$fail(peg$e74);
6823
+ peg$fail(peg$e76);
6416
6824
  }
6417
6825
  }
6418
6826
  // @ts-ignore
@@ -6434,7 +6842,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6434
6842
  s8 = peg$FAILED;
6435
6843
  // @ts-ignore
6436
6844
  if (peg$silentFails === 0) {
6437
- peg$fail(peg$e74);
6845
+ peg$fail(peg$e76);
6438
6846
  }
6439
6847
  }
6440
6848
  }
@@ -6595,7 +7003,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6595
7003
  // @ts-ignore
6596
7004
  peg$savedPos = s0;
6597
7005
  // @ts-ignore
6598
- s0 = peg$f71(s1, s2);
7006
+ s0 = peg$f73(s1, s2);
6599
7007
  // @ts-ignore
6600
7008
  }
6601
7009
  else {
@@ -6616,7 +7024,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6616
7024
  // @ts-ignore
6617
7025
  if (input.charCodeAt(peg$currPos) === 34) {
6618
7026
  // @ts-ignore
6619
- s1 = peg$c74;
7027
+ s1 = peg$c76;
6620
7028
  // @ts-ignore
6621
7029
  peg$currPos++;
6622
7030
  // @ts-ignore
@@ -6626,7 +7034,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6626
7034
  s1 = peg$FAILED;
6627
7035
  // @ts-ignore
6628
7036
  if (peg$silentFails === 0) {
6629
- peg$fail(peg$e75);
7037
+ peg$fail(peg$e77);
6630
7038
  }
6631
7039
  }
6632
7040
  // @ts-ignore
@@ -6648,7 +7056,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6648
7056
  s4 = peg$FAILED;
6649
7057
  // @ts-ignore
6650
7058
  if (peg$silentFails === 0) {
6651
- peg$fail(peg$e76);
7059
+ peg$fail(peg$e78);
6652
7060
  }
6653
7061
  }
6654
7062
  // @ts-ignore
@@ -6668,7 +7076,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6668
7076
  s4 = peg$FAILED;
6669
7077
  // @ts-ignore
6670
7078
  if (peg$silentFails === 0) {
6671
- peg$fail(peg$e76);
7079
+ peg$fail(peg$e78);
6672
7080
  }
6673
7081
  }
6674
7082
  }
@@ -6677,7 +7085,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6677
7085
  // @ts-ignore
6678
7086
  if (input.charCodeAt(peg$currPos) === 34) {
6679
7087
  // @ts-ignore
6680
- s3 = peg$c74;
7088
+ s3 = peg$c76;
6681
7089
  // @ts-ignore
6682
7090
  peg$currPos++;
6683
7091
  // @ts-ignore
@@ -6687,7 +7095,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6687
7095
  s3 = peg$FAILED;
6688
7096
  // @ts-ignore
6689
7097
  if (peg$silentFails === 0) {
6690
- peg$fail(peg$e75);
7098
+ peg$fail(peg$e77);
6691
7099
  }
6692
7100
  }
6693
7101
  // @ts-ignore
@@ -6695,7 +7103,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6695
7103
  // @ts-ignore
6696
7104
  peg$savedPos = s0;
6697
7105
  // @ts-ignore
6698
- s0 = peg$f72(s2);
7106
+ s0 = peg$f74(s2);
6699
7107
  // @ts-ignore
6700
7108
  }
6701
7109
  else {
@@ -6736,7 +7144,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6736
7144
  s2 = peg$FAILED;
6737
7145
  // @ts-ignore
6738
7146
  if (peg$silentFails === 0) {
6739
- peg$fail(peg$e77);
7147
+ peg$fail(peg$e79);
6740
7148
  }
6741
7149
  }
6742
7150
  // @ts-ignore
@@ -6756,7 +7164,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6756
7164
  s4 = peg$FAILED;
6757
7165
  // @ts-ignore
6758
7166
  if (peg$silentFails === 0) {
6759
- peg$fail(peg$e78);
7167
+ peg$fail(peg$e80);
6760
7168
  }
6761
7169
  }
6762
7170
  // @ts-ignore
@@ -6776,7 +7184,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6776
7184
  s4 = peg$FAILED;
6777
7185
  // @ts-ignore
6778
7186
  if (peg$silentFails === 0) {
6779
- peg$fail(peg$e78);
7187
+ peg$fail(peg$e80);
6780
7188
  }
6781
7189
  }
6782
7190
  }
@@ -6852,7 +7260,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6852
7260
  s1 = peg$FAILED;
6853
7261
  // @ts-ignore
6854
7262
  if (peg$silentFails === 0) {
6855
- peg$fail(peg$e79);
7263
+ peg$fail(peg$e81);
6856
7264
  }
6857
7265
  }
6858
7266
  // @ts-ignore
@@ -6874,7 +7282,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6874
7282
  s1 = peg$FAILED;
6875
7283
  // @ts-ignore
6876
7284
  if (peg$silentFails === 0) {
6877
- peg$fail(peg$e79);
7285
+ peg$fail(peg$e81);
6878
7286
  }
6879
7287
  }
6880
7288
  }
@@ -6896,7 +7304,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6896
7304
  // @ts-ignore
6897
7305
  if (input.charCodeAt(peg$currPos) === 35) {
6898
7306
  // @ts-ignore
6899
- s1 = peg$c75;
7307
+ s1 = peg$c77;
6900
7308
  // @ts-ignore
6901
7309
  peg$currPos++;
6902
7310
  // @ts-ignore
@@ -6906,7 +7314,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6906
7314
  s1 = peg$FAILED;
6907
7315
  // @ts-ignore
6908
7316
  if (peg$silentFails === 0) {
6909
- peg$fail(peg$e80);
7317
+ peg$fail(peg$e82);
6910
7318
  }
6911
7319
  }
6912
7320
  // @ts-ignore
@@ -6926,7 +7334,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6926
7334
  s3 = peg$FAILED;
6927
7335
  // @ts-ignore
6928
7336
  if (peg$silentFails === 0) {
6929
- peg$fail(peg$e81);
7337
+ peg$fail(peg$e83);
6930
7338
  }
6931
7339
  }
6932
7340
  // @ts-ignore
@@ -6946,14 +7354,14 @@ const peggyParser = // Generated by Peggy 3.0.2.
6946
7354
  s3 = peg$FAILED;
6947
7355
  // @ts-ignore
6948
7356
  if (peg$silentFails === 0) {
6949
- peg$fail(peg$e81);
7357
+ peg$fail(peg$e83);
6950
7358
  }
6951
7359
  }
6952
7360
  }
6953
7361
  // @ts-ignore
6954
7362
  if (input.charCodeAt(peg$currPos) === 10) {
6955
7363
  // @ts-ignore
6956
- s3 = peg$c76;
7364
+ s3 = peg$c78;
6957
7365
  // @ts-ignore
6958
7366
  peg$currPos++;
6959
7367
  // @ts-ignore
@@ -6963,7 +7371,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
6963
7371
  s3 = peg$FAILED;
6964
7372
  // @ts-ignore
6965
7373
  if (peg$silentFails === 0) {
6966
- peg$fail(peg$e82);
7374
+ peg$fail(peg$e84);
6967
7375
  }
6968
7376
  }
6969
7377
  // @ts-ignore
@@ -6988,9 +7396,9 @@ const peggyParser = // Generated by Peggy 3.0.2.
6988
7396
  // @ts-ignore
6989
7397
  s0 = peg$currPos;
6990
7398
  // @ts-ignore
6991
- if (input.substr(peg$currPos, 2) === peg$c77) {
7399
+ if (input.substr(peg$currPos, 2) === peg$c79) {
6992
7400
  // @ts-ignore
6993
- s1 = peg$c77;
7401
+ s1 = peg$c79;
6994
7402
  // @ts-ignore
6995
7403
  peg$currPos += 2;
6996
7404
  // @ts-ignore
@@ -7000,7 +7408,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
7000
7408
  s1 = peg$FAILED;
7001
7409
  // @ts-ignore
7002
7410
  if (peg$silentFails === 0) {
7003
- peg$fail(peg$e83);
7411
+ peg$fail(peg$e85);
7004
7412
  }
7005
7413
  }
7006
7414
  // @ts-ignore
@@ -7020,7 +7428,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
7020
7428
  s3 = peg$FAILED;
7021
7429
  // @ts-ignore
7022
7430
  if (peg$silentFails === 0) {
7023
- peg$fail(peg$e81);
7431
+ peg$fail(peg$e83);
7024
7432
  }
7025
7433
  }
7026
7434
  // @ts-ignore
@@ -7040,14 +7448,14 @@ const peggyParser = // Generated by Peggy 3.0.2.
7040
7448
  s3 = peg$FAILED;
7041
7449
  // @ts-ignore
7042
7450
  if (peg$silentFails === 0) {
7043
- peg$fail(peg$e81);
7451
+ peg$fail(peg$e83);
7044
7452
  }
7045
7453
  }
7046
7454
  }
7047
7455
  // @ts-ignore
7048
7456
  if (input.charCodeAt(peg$currPos) === 10) {
7049
7457
  // @ts-ignore
7050
- s3 = peg$c76;
7458
+ s3 = peg$c78;
7051
7459
  // @ts-ignore
7052
7460
  peg$currPos++;
7053
7461
  // @ts-ignore
@@ -7057,7 +7465,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
7057
7465
  s3 = peg$FAILED;
7058
7466
  // @ts-ignore
7059
7467
  if (peg$silentFails === 0) {
7060
- peg$fail(peg$e82);
7468
+ peg$fail(peg$e84);
7061
7469
  }
7062
7470
  }
7063
7471
  // @ts-ignore
@@ -7082,9 +7490,9 @@ const peggyParser = // Generated by Peggy 3.0.2.
7082
7490
  // @ts-ignore
7083
7491
  s0 = peg$currPos;
7084
7492
  // @ts-ignore
7085
- if (input.substr(peg$currPos, 2) === peg$c78) {
7493
+ if (input.substr(peg$currPos, 2) === peg$c80) {
7086
7494
  // @ts-ignore
7087
- s1 = peg$c78;
7495
+ s1 = peg$c80;
7088
7496
  // @ts-ignore
7089
7497
  peg$currPos += 2;
7090
7498
  // @ts-ignore
@@ -7094,7 +7502,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
7094
7502
  s1 = peg$FAILED;
7095
7503
  // @ts-ignore
7096
7504
  if (peg$silentFails === 0) {
7097
- peg$fail(peg$e84);
7505
+ peg$fail(peg$e86);
7098
7506
  }
7099
7507
  }
7100
7508
  // @ts-ignore
@@ -7108,9 +7516,9 @@ const peggyParser = // Generated by Peggy 3.0.2.
7108
7516
  // @ts-ignore
7109
7517
  peg$silentFails++;
7110
7518
  // @ts-ignore
7111
- if (input.substr(peg$currPos, 2) === peg$c79) {
7519
+ if (input.substr(peg$currPos, 2) === peg$c81) {
7112
7520
  // @ts-ignore
7113
- s5 = peg$c79;
7521
+ s5 = peg$c81;
7114
7522
  // @ts-ignore
7115
7523
  peg$currPos += 2;
7116
7524
  // @ts-ignore
@@ -7120,7 +7528,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
7120
7528
  s5 = peg$FAILED;
7121
7529
  // @ts-ignore
7122
7530
  if (peg$silentFails === 0) {
7123
- peg$fail(peg$e85);
7531
+ peg$fail(peg$e87);
7124
7532
  }
7125
7533
  }
7126
7534
  // @ts-ignore
@@ -7152,7 +7560,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
7152
7560
  s5 = peg$FAILED;
7153
7561
  // @ts-ignore
7154
7562
  if (peg$silentFails === 0) {
7155
- peg$fail(peg$e86);
7563
+ peg$fail(peg$e88);
7156
7564
  }
7157
7565
  }
7158
7566
  // @ts-ignore
@@ -7188,9 +7596,9 @@ const peggyParser = // Generated by Peggy 3.0.2.
7188
7596
  // @ts-ignore
7189
7597
  peg$silentFails++;
7190
7598
  // @ts-ignore
7191
- if (input.substr(peg$currPos, 2) === peg$c79) {
7599
+ if (input.substr(peg$currPos, 2) === peg$c81) {
7192
7600
  // @ts-ignore
7193
- s5 = peg$c79;
7601
+ s5 = peg$c81;
7194
7602
  // @ts-ignore
7195
7603
  peg$currPos += 2;
7196
7604
  // @ts-ignore
@@ -7200,7 +7608,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
7200
7608
  s5 = peg$FAILED;
7201
7609
  // @ts-ignore
7202
7610
  if (peg$silentFails === 0) {
7203
- peg$fail(peg$e85);
7611
+ peg$fail(peg$e87);
7204
7612
  }
7205
7613
  }
7206
7614
  // @ts-ignore
@@ -7232,7 +7640,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
7232
7640
  s5 = peg$FAILED;
7233
7641
  // @ts-ignore
7234
7642
  if (peg$silentFails === 0) {
7235
- peg$fail(peg$e86);
7643
+ peg$fail(peg$e88);
7236
7644
  }
7237
7645
  }
7238
7646
  // @ts-ignore
@@ -7259,9 +7667,9 @@ const peggyParser = // Generated by Peggy 3.0.2.
7259
7667
  }
7260
7668
  }
7261
7669
  // @ts-ignore
7262
- if (input.substr(peg$currPos, 2) === peg$c79) {
7670
+ if (input.substr(peg$currPos, 2) === peg$c81) {
7263
7671
  // @ts-ignore
7264
- s3 = peg$c79;
7672
+ s3 = peg$c81;
7265
7673
  // @ts-ignore
7266
7674
  peg$currPos += 2;
7267
7675
  // @ts-ignore
@@ -7271,7 +7679,7 @@ const peggyParser = // Generated by Peggy 3.0.2.
7271
7679
  s3 = peg$FAILED;
7272
7680
  // @ts-ignore
7273
7681
  if (peg$silentFails === 0) {
7274
- peg$fail(peg$e85);
7682
+ peg$fail(peg$e87);
7275
7683
  }
7276
7684
  }
7277
7685
  // @ts-ignore