astn-core 0.5.103 → 0.5.105

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 (48) hide show
  1. package/dist/implementation/manual/{refiners → productions}/parse_tree/token.d.ts +9 -9
  2. package/dist/implementation/manual/productions/parse_tree/token.js +256 -0
  3. package/dist/implementation/manual/productions/token/annotated_character.d.ts +13 -0
  4. package/dist/implementation/manual/{refiners → productions}/token/annotated_character.js +26 -14
  5. package/dist/implementation/manual/refiners/annotated_characters/text.d.ts +2 -2
  6. package/dist/implementation/manual/refiners/parse_tree/list_of_characters.d.ts +2 -2
  7. package/dist/implementation/manual/refiners/parse_tree/list_of_characters.js +5 -5
  8. package/dist/implementation/manual/refiners/parse_tree/text.d.ts +2 -2
  9. package/dist/implementation/manual/refiners/parse_tree/text.js +1 -1
  10. package/dist/implementation/manual/refiners/parse_tree/tokenizer_result.d.ts +2 -2
  11. package/dist/implementation/manual/refiners/parse_tree/tokenizer_result.js +2 -2
  12. package/dist/implementation/manual/refiners/unmarshalled/parse_tree.d.ts +11 -10
  13. package/dist/implementation/manual/refiners/unmarshalled/parse_tree.js +4 -4
  14. package/dist/implementation/manual/transformers/deserialize/fountain_pen.d.ts +2 -2
  15. package/dist/implementation/manual/transformers/deserialize/fountain_pen.js +2 -2
  16. package/dist/implementation/manual/transformers/deserialize/location.d.ts +2 -2
  17. package/dist/implementation/manual/transformers/deserialize/location.js +2 -2
  18. package/dist/implementation/manual/transformers/deserialize_parse_tree/fountain_pen.d.ts +2 -2
  19. package/dist/implementation/manual/transformers/deserialize_parse_tree/fountain_pen.js +3 -3
  20. package/dist/implementation/manual/transformers/deserialize_parse_tree/location.d.ts +2 -2
  21. package/dist/implementation/manual/transformers/deserialize_parse_tree/location.js +2 -2
  22. package/dist/implementation/manual/transformers/location/fountain_pen.d.ts +4 -4
  23. package/dist/implementation/manual/transformers/location/fountain_pen.js +2 -2
  24. package/dist/implementation/manual/transformers/parse_tree/full_value_range.d.ts +9 -9
  25. package/dist/implementation/manual/transformers/parse_tree/full_value_range.js +2 -2
  26. package/dist/implementation/manual/transformers/parse_tree/start_token_range.d.ts +3 -3
  27. package/dist/implementation/manual/transformers/parse_tree/start_token_range.js +2 -2
  28. package/dist/implementation/manual/transformers/primitives/text.d.ts +6 -6
  29. package/dist/implementation/manual/transformers/primitives/text.js +15 -15
  30. package/dist/implementation/manual/transformers/sealed_target/fountain_pen.js +2 -2
  31. package/dist/implementation/manual/transformers/sealed_target/list_of_characters.d.ts +3 -3
  32. package/dist/implementation/manual/transformers/sealed_target/list_of_characters.js +1 -1
  33. package/dist/implementation/manual/transformers/sealed_target/text.d.ts +3 -3
  34. package/dist/implementation/manual/transformers/sealed_target/text.js +1 -1
  35. package/dist/implementation/manual/transformers/unmarshall/fountain_pen.d.ts +2 -2
  36. package/dist/implementation/manual/transformers/unmarshall/fountain_pen.js +2 -2
  37. package/dist/implementation/manual/transformers/unmarshall/location.d.ts +2 -2
  38. package/dist/implementation/manual/transformers/unmarshall/location.js +1 -1
  39. package/dist/interface/generated/liana/schemas/deserialize_parse_tree/data.d.ts +4 -4
  40. package/dist/interface/generated/liana/schemas/parse_tree/data.d.ts +6 -6
  41. package/dist/interface/generated/liana/schemas/sealed_target/data.d.ts +4 -4
  42. package/dist/interface/generated/liana/schemas/token/data.d.ts +4 -4
  43. package/dist/interface/to_be_generated/annotated_characters.d.ts +2 -2
  44. package/dist/interface/to_be_generated/unmarshall.d.ts +3 -3
  45. package/dist/interface/to_be_generated/unmarshalled.d.ts +5 -5
  46. package/package.json +1 -1
  47. package/dist/implementation/manual/refiners/parse_tree/token.js +0 -256
  48. package/dist/implementation/manual/refiners/token/annotated_character.d.ts +0 -11
@@ -1,25 +1,25 @@
1
- import * as pi from 'pareto-core/dist/interface';
1
+ import * as p_pi from 'pareto-core/dist/production/interface';
2
2
  import * as d_out from "../../../../interface/generated/liana/schemas/parse_tree/data";
3
3
  import * as d_choice from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data";
4
4
  import * as d_in from "../../../../interface/generated/liana/schemas/token/data";
5
5
  import * as d_location from "../../../../interface/generated/liana/schemas/location/data";
6
6
  export declare namespace signatures {
7
- type Document = pi.Production<d_out.Document, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location>;
8
- type Value = pi.Production<d_out.Value, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location>;
9
- type Guaranteed_Structural_Token = pi.Production<d_out.Structural_Token, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location>;
10
- type Possible_Structural_Token = pi.Production_With_Parameter<d_out.Structural_Token, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
7
+ type Document = p_pi.Production<d_out.Document, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location>;
8
+ type Value = p_pi.Production<d_out.Value, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location>;
9
+ type Guaranteed_Structural_Token = p_pi.Production<d_out.Structural_Token, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location>;
10
+ type Possible_Structural_Token = p_pi.Production_With_Parameter<d_out.Structural_Token, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
11
11
  'expected token': d_choice.Expected;
12
12
  }>;
13
- type Text = pi.Production_With_Parameter<d_out.Text, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
13
+ type Text = p_pi.Production_With_Parameter<d_out.Text, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
14
14
  'text': d_in.Annotated_Token.type_.text;
15
15
  }>;
16
- type Items = pi.Production_With_Parameter<d_out.Items, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
16
+ type Items = p_pi.Production_With_Parameter<d_out.Items, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
17
17
  'end token': d_choice.Expected;
18
18
  }>;
19
- type Element = pi.Production_With_Parameter<d_out.Items, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
19
+ type Element = p_pi.Production_With_Parameter<d_out.Items, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
20
20
  'end token': d_choice.Expected;
21
21
  }>;
22
- type ID_Value_Pairs = pi.Production_With_Parameter<d_out.ID_Value_Pairs, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
22
+ type ID_Value_Pairs = p_pi.Production_With_Parameter<d_out.ID_Value_Pairs, d_choice.Parser_Error, d_in.Annotated_Token, d_location.Location, {
23
23
  'end token': d_choice.Expected;
24
24
  }>;
25
25
  }
@@ -0,0 +1,256 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.ID_Value_Pairs = exports.Items = exports.Text = exports.Possible_Structural_Token = exports.Guaranteed_Structural_Token = exports.Value = exports.Document = void 0;
40
+ const pt = __importStar(require("pareto-core/dist/assign"));
41
+ const unreachable_code_path_1 = __importDefault(require("pareto-core/dist/specials/unreachable_code_path"));
42
+ const temp_create_error = (element, expected, end_info) => ({
43
+ 'expected': expected,
44
+ 'cause': element.__decide(($) => ['unexpected token', {
45
+ 'found': $,
46
+ }], () => ['missing token', {
47
+ 'end': end_info,
48
+ }]),
49
+ });
50
+ const Document = (iterator, abort) => ({
51
+ 'header': iterator.optional({
52
+ item: (token) => token.type[0] === '!' //header token
53
+ ? pt.literal.set({
54
+ '!': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
55
+ 'value': (0, exports.Value)(iterator, abort)
56
+ })
57
+ : pt.literal.not_set(),
58
+ }),
59
+ 'content': (0, exports.Value)(iterator, abort)
60
+ });
61
+ exports.Document = Document;
62
+ const Value = (iterator, abort) => iterator.expect({
63
+ abort: abort,
64
+ get_error: ($) => temp_create_error($, pt.literal.list([
65
+ ['any value', null]
66
+ ]), iterator.get_end_info()),
67
+ item: (token, abort2) => ({
68
+ 'type': pt.decide.state(token.type, ($) => {
69
+ switch ($[0]) {
70
+ case 'text': return pt.ss($, ($) => ['concrete',
71
+ ['text', iterator.expect({
72
+ abort: abort,
73
+ get_error: ($) => temp_create_error($, pt.literal.list([
74
+ ['a text value', null]
75
+ ]), iterator.get_end_info()),
76
+ item: (token, abort2) => token.type[0] === 'text'
77
+ ? (0, exports.Text)(iterator, abort, { 'text': token.type[1] })
78
+ : abort2(null),
79
+ })]
80
+ ]);
81
+ case '{': return pt.ss($, ($) => ['concrete', ['dictionary', {
82
+ '{': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
83
+ 'entries': (0, exports.ID_Value_Pairs)(iterator, abort, { 'end token': ['}', null] }),
84
+ '}': (0, exports.Possible_Structural_Token)(iterator, abort, { 'expected token': ['}', null] }),
85
+ }]]);
86
+ case '(': return pt.ss($, ($) => ['concrete', ['group', ['verbose', {
87
+ '(': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
88
+ 'properties': (0, exports.ID_Value_Pairs)(iterator, abort, { 'end token': [')', null] }),
89
+ ')': (0, exports.Possible_Structural_Token)(iterator, abort, { 'expected token': [')', null] })
90
+ }]]]);
91
+ case '[': return pt.ss($, ($) => ['concrete', ['list', {
92
+ '[': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
93
+ 'items': (0, exports.Items)(iterator, abort, { 'end token': [']', null] }),
94
+ ']': (0, exports.Possible_Structural_Token)(iterator, abort, { 'expected token': [']', null] })
95
+ }]]);
96
+ case '<': return pt.ss($, ($) => ['concrete', ['group', ['concise', {
97
+ '<': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
98
+ 'properties': (0, exports.Items)(iterator, abort, { 'end token': ['>', null] }),
99
+ '>': (0, exports.Possible_Structural_Token)(iterator, abort, { 'expected token': ['>', null] })
100
+ }]]]);
101
+ case '@': return pt.ss($, ($) => ['include', {
102
+ '@': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
103
+ 'path': iterator.expect({
104
+ abort: abort,
105
+ get_error: ($) => temp_create_error($, pt.literal.list([
106
+ ['a text value', null]
107
+ ]), iterator.get_end_info()),
108
+ item: (token, abort2) => token.type[0] === 'text'
109
+ ? (0, exports.Text)(iterator, abort, { 'text': token.type[1] })
110
+ : abort2(null),
111
+ })
112
+ }]);
113
+ case '~': return pt.ss($, ($) => ['concrete', ['nothing', {
114
+ '~': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
115
+ }]]);
116
+ case '|': return pt.ss($, ($) => ['concrete', ['state', {
117
+ '|': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
118
+ 'status': iterator.expect({
119
+ abort: abort,
120
+ get_error: ($) => temp_create_error($, pt.literal.list([
121
+ ['any value', null],
122
+ ['#', null]
123
+ ]), iterator.get_end_info()),
124
+ item: (token, abort2) => pt.decide.state(token.type, ($) => {
125
+ switch ($[0]) {
126
+ case 'text': return pt.ss($, ($) => ['set', {
127
+ 'option': (0, exports.Text)(iterator, abort, { 'text': $ }),
128
+ 'value': (0, exports.Value)(iterator, abort)
129
+ }]);
130
+ case '#': return pt.ss($, ($) => ['missing', {
131
+ '#': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
132
+ }]);
133
+ default: return abort2(null);
134
+ }
135
+ }),
136
+ })
137
+ }]]);
138
+ case '_': return pt.ss($, ($) => ['concrete', ['optional', ['not set', {
139
+ '_': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
140
+ }]]]);
141
+ case '*': return pt.ss($, ($) => ['concrete', ['optional', ['set', {
142
+ '*': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
143
+ 'value': (0, exports.Value)(iterator, abort)
144
+ }]]]);
145
+ case '#': return pt.ss($, ($) => ['missing', {
146
+ '#': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
147
+ }]);
148
+ //unexpected tokens
149
+ // case '!': return pt.ss($, ($) => iterator.unexpected_token(token, pt.literal.list([
150
+ // ['any value', null]
151
+ // ])))
152
+ // case ':': return pt.ss($, ($) => iterator.unexpected_token(token, pt.literal.list([
153
+ // ['any value', null]
154
+ // ])))
155
+ // case ')': return pt.ss($, ($) => iterator.unexpected_token(token, pt.literal.list([
156
+ // ['any value', null]
157
+ // ])))
158
+ // case '>': return pt.ss($, ($) => iterator.unexpected_token(token, pt.literal.list([
159
+ // ['any value', null]
160
+ // ])))
161
+ // case ']': return pt.ss($, ($) => iterator.unexpected_token(token, pt.literal.list([
162
+ // ['any value', null]
163
+ // ])))
164
+ // case '}': return pt.ss($, ($) => iterator.unexpected_token(token, pt.literal.list([
165
+ // ['any value', null]
166
+ // ])))
167
+ default: return abort2(null);
168
+ }
169
+ })
170
+ }),
171
+ });
172
+ exports.Value = Value;
173
+ const Guaranteed_Structural_Token = (iterator) => iterator.consume((token) => ({
174
+ 'trailing trivia': token['trailing trivia'],
175
+ 'range': {
176
+ 'start': token['start'],
177
+ 'end': token['end']
178
+ }
179
+ }), () => (0, unreachable_code_path_1.default)("this function should only be called when we are sure there is a structural token to consume"));
180
+ exports.Guaranteed_Structural_Token = Guaranteed_Structural_Token;
181
+ const Possible_Structural_Token = (iterator, abort, $p) => iterator.expect({
182
+ abort: abort,
183
+ get_error: ($) => temp_create_error($, pt.literal.list([
184
+ $p['expected token']
185
+ ]), iterator.get_end_info()),
186
+ item: (token, abort2) => {
187
+ iterator.discard(() => null);
188
+ return ({
189
+ 'trailing trivia': token['trailing trivia'],
190
+ 'range': {
191
+ 'start': token['start'],
192
+ 'end': token['end']
193
+ }
194
+ });
195
+ },
196
+ });
197
+ exports.Possible_Structural_Token = Possible_Structural_Token;
198
+ const Text = (iterator, abort, $p) => iterator.consume((token) => ({
199
+ 'range': {
200
+ 'start': token['start'],
201
+ 'end': token['end']
202
+ },
203
+ 'token': $p.text,
204
+ 'trailing trivia': token['trailing trivia'],
205
+ }), () => (0, unreachable_code_path_1.default)("this function should only be called when we are sure there is a text token to consume"));
206
+ exports.Text = Text;
207
+ const Items = (iterator, abort, $p) => iterator.list({
208
+ has_more_items: (current_token) => current_token.type[0] !== $p['end token'][0],
209
+ handle: () => iterator.expect({
210
+ abort: abort,
211
+ get_error: ($) => temp_create_error($, pt.literal.list([
212
+ ['any value', null],
213
+ $p['end token']
214
+ ]), iterator.get_end_info()),
215
+ item: (token, abort2) => ({
216
+ 'value': (0, exports.Value)(iterator, abort)
217
+ }),
218
+ }),
219
+ });
220
+ exports.Items = Items;
221
+ const ID_Value_Pairs = (iterator, abort, $p) => iterator.list({
222
+ has_more_items: (current_token) => current_token.type[0] !== $p['end token'][0],
223
+ handle: () => ({
224
+ 'id': iterator.expect({
225
+ abort: abort,
226
+ get_error: ($) => temp_create_error($, pt.literal.list([
227
+ ['a text value', null],
228
+ $p['end token'],
229
+ ]), iterator.get_end_info()),
230
+ item: (token, abort2) => token.type[0] === 'text'
231
+ ? (0, exports.Text)(iterator, abort, { 'text': token.type[1] })
232
+ : abort2(null),
233
+ }),
234
+ 'assignment': iterator.expect({
235
+ abort: abort,
236
+ get_error: ($) => temp_create_error($, pt.literal.list([
237
+ ['a text value', null],
238
+ [':', null],
239
+ $p['end token']
240
+ ]), iterator.get_end_info()),
241
+ item: (token, abort2) => pt.decide.state(token.type, ($) => {
242
+ switch ($[0]) {
243
+ case 'text': return pt.ss($, ($) => pt.literal.not_set());
244
+ case ':': return pt.ss($, ($) => pt.literal.set({
245
+ ':': (0, exports.Guaranteed_Structural_Token)(iterator, abort),
246
+ 'value': pt.literal.set((0, exports.Value)(iterator, abort)) //FIXME determine if it is set... if the next token is a text, we will need to do an extra lookahead if there is a colon
247
+ }));
248
+ default: return $[0] === $p['end token'][0] ? pt.literal.not_set() : abort2(null);
249
+ }
250
+ }),
251
+ }),
252
+ // ',': pt.literal.not_set() //FIXME implement optional comma (or keep it as 'whitespace' but then remove this property)
253
+ }),
254
+ });
255
+ exports.ID_Value_Pairs = ID_Value_Pairs;
256
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW1wbGVtZW50YXRpb24vbWFudWFsL3Byb2R1Y3Rpb25zL3BhcnNlX3RyZWUvdG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNERBQTZDO0FBRzdDLDRHQUFxRjtBQW9GckYsTUFBTSxpQkFBaUIsR0FBRyxDQUN0QixPQUFrRCxFQUNsRCxRQUFzQyxFQUN0QyxRQUE2QixFQUNSLEVBQUUsQ0FBQyxDQUFDO0lBQ3pCLFVBQVUsRUFBRSxRQUFRO0lBQ3BCLE9BQU8sRUFBRSxPQUFPLENBQUMsUUFBUSxDQUNyQixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxrQkFBa0IsRUFBRTtZQUN4QixPQUFPLEVBQUUsQ0FBQztTQUNiLENBQUMsRUFDRixHQUFHLEVBQUUsQ0FBQyxDQUFDLGVBQWUsRUFBRTtZQUNwQixLQUFLLEVBQUUsUUFBUTtTQUNsQixDQUFDLENBQ0w7Q0FDSixDQUFDLENBQUE7QUFHSyxNQUFNLFFBQVEsR0FBd0IsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELFFBQVEsRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDO1FBQ3hCLElBQUksRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsY0FBYztZQUNqRCxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7Z0JBQ2IsR0FBRyxFQUFFLElBQUEsbUNBQTJCLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQztnQkFDakQsT0FBTyxFQUFFLElBQUEsYUFBSyxFQUFDLFFBQVEsRUFBRSxLQUFLLENBQUM7YUFDbEMsQ0FBQztZQUNGLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxD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
@@ -0,0 +1,13 @@
1
+ import * as p_pi from 'pareto-core/dist/production/interface';
2
+ import * as d_in from "../../../../interface/to_be_generated/annotated_characters";
3
+ import * as d_out from "../../../../interface/generated/liana/schemas/token/data";
4
+ import * as d_function from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data";
5
+ import * as d_location from "../../../../interface/generated/liana/schemas/location/data";
6
+ export declare const Whitespace: p_pi.Production<d_out.Whitespace, d_function.Lexer_Error, d_in.Annotated_Character, d_location.Location>;
7
+ export declare const Trivia: p_pi.Production<d_out.Trivia, d_function.Lexer_Error, d_in.Annotated_Character, d_location.Location>;
8
+ export declare const Delimited_Text: p_pi.Production_With_Parameter<string, d_function.Lexer_Error, d_in.Annotated_Character, d_location.Location, {
9
+ 'allow newlines': boolean;
10
+ 'end character': number;
11
+ 'start character': d_in.Annotated_Character;
12
+ }>;
13
+ export declare const Tokenizer_Result: p_pi.Production<d_out.Tokenizer_Result, d_function.Lexer_Error, d_in.Annotated_Character, d_location.Location>;
@@ -78,15 +78,15 @@ const Whitespace = (iterator, abort) => {
78
78
  };
79
79
  const next = iterator.look_raw();
80
80
  if (next === null) {
81
- return pt.optional.literal.not_set();
81
+ return pt.literal.not_set();
82
82
  }
83
83
  else {
84
84
  if (!is_whitespace_character(next[0])) {
85
- return pt.optional.literal.not_set();
85
+ return pt.literal.not_set();
86
86
  }
87
87
  else {
88
88
  const start_character = next[0];
89
- return pt.optional.literal.set({
89
+ return pt.literal.set({
90
90
  'value': (0, text_from_list_1.default)(iterator.list({
91
91
  has_more_items: ($) => is_whitespace_character($),
92
92
  handle: ($) => {
@@ -168,7 +168,7 @@ const Trivia = (iterator, abort) => ({
168
168
  }),
169
169
  });
170
170
  exports.Trivia = Trivia;
171
- const Delimited_Text = (is_end_character, allow_newlines, iterator, abort, $p) => {
171
+ const Delimited_Text = (iterator, abort, $p) => {
172
172
  const Character = {
173
173
  backspace: 0x08, // \b
174
174
  form_feed: 0x0C, // \f
@@ -199,14 +199,14 @@ const Delimited_Text = (is_end_character, allow_newlines, iterator, abort, $p) =
199
199
  'expected': ['text termination', null]
200
200
  });
201
201
  }
202
- if (is_end_character($[0].code)) {
202
+ if ($[0].code === $p['end character']) {
203
203
  iterator.discard(() => null); // discard the end character
204
204
  return;
205
205
  }
206
206
  switch ($[0].code) {
207
207
  case Character.line_feed:
208
208
  case Character.carriage_return:
209
- if (!allow_newlines) {
209
+ if (!$p['allow newlines']) {
210
210
  return abort({
211
211
  'expected': ['no end of line in text', null],
212
212
  'range': create_range(iterator, { 'start character': $p['start character'] }),
@@ -222,7 +222,7 @@ const Delimited_Text = (is_end_character, allow_newlines, iterator, abort, $p) =
222
222
  if ($ === null) {
223
223
  return abort({
224
224
  'range': create_range(iterator, { 'start character': $p['start character'] }),
225
- 'expected': ['escape character', { 'found': pt.optional.literal.not_set() }]
225
+ 'expected': ['escape character', { 'found': pt.literal.not_set() }]
226
226
  });
227
227
  }
228
228
  switch ($[0].code) {
@@ -326,13 +326,13 @@ const Delimited_Text = (is_end_character, allow_newlines, iterator, abort, $p) =
326
326
  if (char === null) {
327
327
  return abort({
328
328
  'range': create_range(iterator, { 'start character': $p['start character'] }),
329
- 'expected': ['unicode character', { 'found': pt.optional.literal.not_set() }]
329
+ 'expected': ['unicode character', { 'found': pt.literal.not_set() }]
330
330
  });
331
331
  }
332
332
  if (char[0].code < Character.a || (char[0].code > Character.f && char[0].code < Character.A) || char[0].code > Character.F || char[0].code < 0x30 || char[0].code > 0x39) {
333
333
  return abort({
334
334
  'range': create_range(iterator, { 'start character': $p['start character'] }),
335
- 'expected': ['unicode character', { 'found': pt.optional.literal.set(char[0].code) }]
335
+ 'expected': ['unicode character', { 'found': pt.literal.set(char[0].code) }]
336
336
  });
337
337
  }
338
338
  iterator.discard(() => null);
@@ -348,7 +348,7 @@ const Delimited_Text = (is_end_character, allow_newlines, iterator, abort, $p) =
348
348
  return abort({
349
349
  'range': create_range(iterator, { 'start character': $p['start character'] }),
350
350
  'expected': ['escape character', {
351
- 'found': pt.optional.literal.set($[0].code)
351
+ 'found': pt.literal.set($[0].code)
352
352
  }]
353
353
  });
354
354
  }
@@ -446,19 +446,31 @@ const Tokenizer_Result = (iterator, abort) => ({
446
446
  case Character.quotation_mark:
447
447
  iterator.discard(() => null);
448
448
  return ['text', {
449
- 'value': (0, exports.Delimited_Text)(($) => $ === Character.quotation_mark, true, iterator, abort, { 'start character': $ }),
449
+ 'value': (0, exports.Delimited_Text)(iterator, abort, {
450
+ 'start character': $,
451
+ 'end character': Character.quotation_mark,
452
+ 'allow newlines': true,
453
+ }),
450
454
  'type': ['quoted', null],
451
455
  }];
452
456
  case Character.backtick:
453
457
  iterator.discard(() => null);
454
458
  return ['text', {
455
- 'value': (0, exports.Delimited_Text)(($) => $ === Character.backtick, false, iterator, abort, { 'start character': $ }),
459
+ 'value': (0, exports.Delimited_Text)(iterator, abort, {
460
+ 'start character': $,
461
+ 'end character': Character.backtick,
462
+ 'allow newlines': false,
463
+ }),
456
464
  'type': ['backticked', null],
457
465
  }];
458
466
  case Character.apostrophe:
459
467
  iterator.discard(() => null);
460
468
  return ['text', {
461
- 'value': (0, exports.Delimited_Text)(($) => $ === Character.apostrophe, false, iterator, abort, { 'start character': $ }),
469
+ 'value': (0, exports.Delimited_Text)(iterator, abort, {
470
+ 'start character': $,
471
+ 'end character': Character.apostrophe,
472
+ 'allow newlines': false,
473
+ }),
462
474
  'type': ['apostrophed', null],
463
475
  }];
464
476
  default:
@@ -513,4 +525,4 @@ const Tokenizer_Result = (iterator, abort) => ({
513
525
  'end': iterator.get_end_info()
514
526
  });
515
527
  exports.Tokenizer_Result = Tokenizer_Result;
516
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGVkX2NoYXJhY3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcmVmaW5lcnMvdG9rZW4vYW5ub3RhdGVkX2NoYXJhY3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw0REFBNkM7QUFFN0MsNEdBQXFGO0FBQ3JGLDRHQUFxRjtBQUNyRiw4RkFBdUU7QUFVdkUsY0FBYztBQUdkLE1BQU0sWUFBWSxHQUFHLENBQ2pCLE9BQW9ELEVBQ3BELFFBQXlDLEVBQ25CLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUN6QyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNKLE9BQU8sRUFBRTtRQUNMLE9BQU8sRUFBRSxDQUFDLENBQUMsUUFBUTtRQUNuQixLQUFLLEVBQUU7WUFDSCxVQUFVLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsQ0FBQztZQUNuQyxVQUFVLEVBQUU7Z0JBQ1IsTUFBTSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUk7Z0JBQ2hDLFFBQVEsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQzthQUMzQztTQUNKO0tBQ0o7SUFDRCxVQUFVLEVBQUUsUUFBUTtDQUN2QixDQUFDLEVBQ0YsR0FBRyxFQUFFLENBQUMsSUFBQSwrQkFBdUIsRUFBQyxjQUFjLENBQUMsQ0FDaEQsQ0FBQTtBQUVELE1BQU0sWUFBWSxHQUFHLENBQ2pCLFFBQW9FLEVBQ3BFLEVBRUMsRUFDb0IsRUFBRSxDQUFDLENBQUM7SUFDekIsT0FBTyxFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLFFBQVE7SUFDdkMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUN2QixDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUN6QjtDQUNKLENBQUMsQ0FBQTtBQUdLLE1BQU0sVUFBVSxHQUFHLENBQ3RCLFFBQW9FLEVBQ3BFLEtBQXVDLEVBQ3ZCLEVBQUU7SUFFbEIsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLENBQTJCLEVBQUUsRUFBRTtRQUM1RCxRQUFRLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNiLEtBQUssSUFBSSxFQUFFLEtBQUs7Z0JBQ1osT0FBTyxJQUFJLENBQUE7WUFDZixLQUFLLElBQUksRUFBRSxLQUFLO2dCQUNaLE9BQU8sSUFBSSxDQUFBO1lBQ2YsS0FBSyxJQUFJLEVBQUUsS0FBSztnQkFDWixPQUFPLElBQUksQ0FBQTtZQUNmLEtBQUssSUFBSSxFQUFFLFFBQVE7Z0JBQ2YsT0FBTyxJQUFJLENBQUE7WUFDZixLQUFLLElBQUksRUFBRSxJQUFJO2dCQUNYLE9BQU8sSUFBSSxDQUFBO1lBQ2Y7Z0JBQ0ksT0FBTyxLQUFLLENBQUE7UUFDcEIsQ0FBQztJQUNMLENBQUMsQ0FBQTtJQUVELE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtJQUNoQyxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUNoQixPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFBO0lBQ3hDLENBQUM7U0FBTSxDQUFDO1FBQ0osSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDcEMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUN4QyxDQUFDO2FBQU0sQ0FBQztZQUNKLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUMvQixPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztnQkFDM0IsT0FBTyxFQUFFLElBQUEsd0JBQWdCLEVBQ3JCLFFBQVEsQ0FBQyxJQUFJLENBQUM7b0JBQ1YsY0FBYyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUM7b0JBQ2pELE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO3dCQUNWLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUEsQ0FBQyx3QkFBd0I7d0JBQ3JELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQTtvQkFDakIsQ0FBQztpQkFDSixDQUFDLEVBQ0YsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FDWDtnQkFDRCxPQUFPLEVBQUUsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxDQUFDO2FBQzFFLENBQUMsQ0FBQTtRQUNOLENBQUM7SUFDTCxDQUFDO0FBQ0wsQ0FBQyxDQUFBO0FBN0NZLFFBQUEsVUFBVSxjQTZDdEI7QUFFTSxNQUFNLE1BQU0sR0FBRyxDQUNsQixRQUFvRSxFQUNwRSxLQUF1QyxFQUMzQixFQUFFLENBQUMsQ0FBQztJQUNoQixvQkFBb0IsRUFBRSxJQUFBLGtCQUFVLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQztJQUNqRCxVQUFVLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQztRQUN0QixjQUFjLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUN4QixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ3ZDLE9BQU8sT0FBTyxDQUFDLElBQUksS0FBSyxJQUFJO21CQUNyQixJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQSxDQUFDLDZDQUE2QztRQUMxSCxDQUFDO1FBQ0QsTUFBTSxFQUFFLENBQUMsZUFBZSxFQUEyQixFQUFFO1lBQ2pELFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUEsQ0FBQywwQkFBMEI7WUFDdkQsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFBO1lBQ3JDLElBQUksU0FBUyxLQUFLLElBQUksRUFBRSxDQUFDO2dCQUNyQixPQUFPLElBQUEsK0JBQXVCLEVBQUMsa0dBQWtHLENBQUMsQ0FBQTtZQUN0SSxDQUFDO1lBQ0QsUUFBUSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3hCLEtBQUssSUFBSSxFQUFFLElBQUk7b0JBQ1gsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQSxDQUFDLHVCQUF1QjtvQkFDcEQsT0FBTyxDQUFDO3dCQUNKLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUM7d0JBQ3RCLFNBQVMsRUFBRSxJQUFBLHdCQUFnQixFQUN2QixRQUFRLENBQUMsSUFBSSxDQUFDOzRCQUNWLGNBQWMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUUscUNBQXFDOzRCQUNoRyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQ0FDVixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMsd0JBQXdCO2dDQUNyRCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUE7NEJBQ2pCLENBQUM7eUJBQ0osQ0FBQyxFQUNGLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1g7d0JBQ0QsT0FBTyxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsQ0FBQzt3QkFDdkUscUJBQXFCLEVBQUUsSUFBQSxrQkFBVSxFQUFDLFFBQVEsRUFBRSxLQUFLLENBQUM7cUJBQ3JELENBQUMsQ0FBQTtnQkFDTixLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQSxJQUFJO29CQUNaLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUEsQ0FBQyx1QkFBdUI7b0JBQ3BELE9BQU8sQ0FBQzt3QkFDSixNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDO3dCQUN2QixTQUFTLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FDdkIsR0FBRyxFQUFFLENBQUMsSUFBQSx3QkFBZ0IsRUFDbEIsUUFBUSxDQUFDLElBQUksQ0FBQzs0QkFDVixjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQ0FDbEIsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtnQ0FDNUMsT0FBTyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQSxDQUFDLCtEQUErRDs0QkFDaEosQ0FBQzs0QkFDRCxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQ0FDVixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMsd0JBQXdCO2dDQUNyRCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUE7NEJBQ2pCLENBQUM7eUJBQ0osQ0FBQyxFQUNGLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1gsRUFDRCxHQUFHLEVBQUUsQ0FBQyxDQUFDOzRCQUNILFVBQVUsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDO2dDQUN4QixLQUFLLEVBQUUsS0FBSztnQ0FDWixTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FDMUIsQ0FBQyxFQUNELENBQUMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLENBQ3RDO2dDQUNELElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSTtvQ0FDaEMsQ0FBQyxDQUFDLENBQUM7b0NBQ0gsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7NkJBQ3JCLENBQUM7NEJBQ0YsU0FBUyxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUM7Z0NBQ3ZCLEtBQUssRUFBRSxLQUFLO2dDQUNaLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUMxQixDQUFDLEVBQ0QsQ0FBQywyQkFBMkIsRUFBRSxJQUFJLENBQUMsQ0FDdEM7Z0NBQ0QsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJO29DQUNoQyxDQUFDLENBQUMsQ0FBQztvQ0FDSCxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQzs2QkFDckIsQ0FBQzt5QkFDTCxDQUFDLENBQ0w7d0JBQ0QsT0FBTyxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsQ0FBQzt3QkFDdkUscUJBQXFCLEVBQUUsSUFBQSxrQkFBVSxFQUFDLFFBQVEsRUFBRSxLQUFLLENBQUM7cUJBQ3JELENBQUMsQ0FBQTtnQkFDTixDQUFDO2dCQUNELE9BQU8sQ0FBQyxDQUFDLE9BQU8sSUFBQSwrQkFBdUIsRUFBQyx3R0FBd0csQ0FBQyxDQUFBO1lBQ3JKLENBQUM7UUFDTCxDQUFDO0tBRUosQ0FBQztDQUNMLENBQUMsQ0FBQTtBQXJGVyxRQUFBLE1BQU0sVUFxRmpCO0FBRUssTUFBTSxjQUFjLEdBQUcsQ0FDMUIsZ0JBQWdELEVBQ2hELGNBQXVCLEVBQ3ZCLFFBQW9FLEVBQ3BFLEtBQXVDLEVBQ3ZDLEVBRUMsRUFDSyxFQUFFO0lBRVIsTUFBTSxTQUFTLEdBQUc7UUFDZCxTQUFTLEVBQUUsSUFBSSxFQUFhLEtBQUs7UUFDakMsU0FBUyxFQUFFLElBQUksRUFBYSxLQUFLO1FBQ2pDLEdBQUcsRUFBRSxJQUFJLEVBQW1CLEtBQUs7UUFDakMsU0FBUyxFQUFFLElBQUksRUFBYSxLQUFLO1FBQ2pDLGVBQWUsRUFBRSxJQUFJLEVBQU8sS0FBSztRQUNqQyxjQUFjLEVBQUUsSUFBSSxFQUFRLElBQUk7UUFDaEMsUUFBUSxFQUFFLElBQUksRUFBYyxJQUFJO1FBQ2hDLFVBQVUsRUFBRSxJQUFJLEVBQVksSUFBSTtRQUNoQyxlQUFlLEVBQUUsSUFBSSxFQUFPLElBQUk7UUFDaEMsT0FBTyxFQUFFLElBQUksRUFBZSxJQUFJO1FBQ2hDLENBQUMsRUFBRSxJQUFJLEVBQXFCLElBQUk7UUFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtRQUNoQyxDQUFDLEVBQUUsSUFBSSxFQUFxQixJQUFJO1FBQ2hDLENBQUMsRUFBRSxJQUFJLEVBQXFCLElBQUk7UUFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtRQUNoQyxDQUFDLEVBQUUsSUFBSSxFQUFxQixJQUFJO1FBQ2hDLENBQUMsRUFBRSxJQUFJLEVBQXFCLElBQUk7UUFDaEMsQ0FBQyxFQUFFLElBQUksRUFBcUIsSUFBSTtRQUNoQyxDQUFDLEVBQUUsSUFBSSxFQUFxQixJQUFJO0tBRW5DLENBQUE7SUFDRCxNQUFNLEdBQUcsR0FBRyxJQUFBLHdCQUFnQixFQUN4QixJQUFBLCtCQUF1QixFQUNuQixDQUFDLEVBQUUsRUFBRSxFQUFFO1FBQ0gsT0FBTyxJQUFJLEVBQUUsQ0FBQztZQUNWLE1BQU0sQ0FBQyxHQUFHLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtZQUM3QixJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFFYixPQUFPLEtBQUssQ0FBQztvQkFDVCxPQUFPLEVBQUUsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7b0JBQzdFLFVBQVUsRUFBRSxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQztpQkFDekMsQ0FBQyxDQUFBO1lBQ04sQ0FBQztZQUNELElBQUksZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQzlCLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUEsQ0FBQyw0QkFBNEI7Z0JBQ3pELE9BQU07WUFDVixDQUFDO1lBQ0QsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2hCLEtBQUssU0FBUyxDQUFDLFNBQVMsQ0FBQztnQkFDekIsS0FBSyxTQUFTLENBQUMsZUFBZTtvQkFDMUIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO3dCQUNsQixPQUFPLEtBQUssQ0FBQzs0QkFDVCxVQUFVLEVBQUUsQ0FBQyx3QkFBd0IsRUFBRSxJQUFJLENBQUM7NEJBQzVDLE9BQU8sRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQzt5QkFDaEYsQ0FBQyxDQUFBO29CQUNOLENBQUM7b0JBQ0QsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtvQkFDNUIsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtvQkFDekIsTUFBSztnQkFDVCxLQUFLLFNBQVMsQ0FBQyxlQUFlLEVBQUUsYUFBYTtvQkFDekMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtvQkFDNUIsQ0FBQzt3QkFDRyxNQUFNLENBQUMsR0FBRyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUE7d0JBQzdCLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDOzRCQUNiLE9BQU8sS0FBSyxDQUFDO2dDQUNULE9BQU8sRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztnQ0FDN0UsVUFBVSxFQUFFLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQzs2QkFDL0UsQ0FBQyxDQUFBO3dCQUNOLENBQUM7d0JBQ0QsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7NEJBQ2hCLEtBQUssU0FBUyxDQUFDLGNBQWM7Z0NBQ3pCLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7Z0NBQzVCLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUE7Z0NBQ3hDLE1BQUs7NEJBQ1QsS0FBSyxTQUFTLENBQUMsVUFBVTtnQ0FDckIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtnQ0FDNUIsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQTtnQ0FDcEMsTUFBSzs0QkFDVCxLQUFLLFNBQVMsQ0FBQyxRQUFRO2dDQUNuQixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO2dDQUM1QixFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFBO2dDQUNsQyxNQUFLOzRCQUNULEtBQUssU0FBUyxDQUFDLGVBQWU7Z0NBQzFCLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7Z0NBQzVCLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUE7Z0NBQ3pDLE1BQUs7NEJBQ1QsS0FBSyxTQUFTLENBQUMsT0FBTztnQ0FDbEIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtnQ0FDNUIsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtnQ0FDakMsTUFBSzs0QkFDVCxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dDQUNaLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7Z0NBQzVCLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUE7Z0NBQ25DLE1BQUs7NEJBQ1QsS0FBSyxTQUFTLENBQUMsQ0FBQztnQ0FDWixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO2dDQUM1QixFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFBO2dDQUNuQyxNQUFLOzRCQUNULEtBQUssU0FBUyxDQUFDLENBQUM7Z0NBQ1osUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtnQ0FDNUIsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQ0FDbkMsTUFBSzs0QkFDVCxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dDQUNaLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7Z0NBQzVCLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUE7Z0NBQ3pDLE1BQUs7NEJBQ1QsS0FBSyxTQUFTLENBQUMsQ0FBQztnQ0FDWixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO2dDQUM1QixFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFBO2dDQUM3QixNQUFLOzRCQUNULEtBQUssU0FBUyxDQUFDLENBQUM7Z0NBQ1osUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtnQ0FDNUIsTUFBTSxjQUFjLEdBQXlELENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFO29DQUN0RixNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUE7b0NBQ3BCLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQTtvQ0FDZCxJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUE7b0NBQ3RCLElBQUksVUFBVSxHQUFHLENBQUMsQ0FBQTtvQ0FFbEIseUJBQXlCO29DQUN6QixJQUFJLFVBQVUsQ0FBQyxxQkFBcUIsRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDO3dDQUMzQyxLQUFLLENBQUMsZ0RBQWdELENBQUMsQ0FBQTtvQ0FDM0QsQ0FBQztvQ0FFRCxNQUFNLGdCQUFnQixHQUFHLENBQUMsS0FBYSxFQUFVLEVBQUU7d0NBQy9DLE9BQU8sVUFBVSxDQUFDLHdCQUF3QixDQUN0QyxLQUFLLEVBQ0w7NENBQ0ksYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQzt5Q0FDcEQsQ0FDSixDQUFBO29DQUNMLENBQUMsQ0FBQTtvQ0FFRCwwQkFBMEI7b0NBQzFCLElBQUksVUFBVSxDQUFDLHFCQUFxQixFQUFFLEdBQUcsQ0FBQyxJQUFJLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTTt3Q0FDOUUsVUFBVSxHQUFHLElBQUksQ0FBQTt3Q0FDakIsVUFBVSxHQUFHLENBQUMsQ0FBQTtvQ0FDbEIsQ0FBQztvQ0FFRCw2Q0FBNkM7b0NBQzdDLElBQUksVUFBVSxDQUFDLHFCQUFxQixFQUFFLElBQUksVUFBVSxHQUFHLENBQUM7d0NBQ3BELGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxNQUFNO3dDQUM3QyxnQkFBZ0IsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsQ0FBQyxNQUFNO3dDQUNsRCxLQUFLLENBQUMsMENBQTBDLENBQUMsQ0FBQTtvQ0FDckQsQ0FBQztvQ0FDRCxVQUFVLElBQUksQ0FBQyxDQUFBO29DQUVmLDZDQUE2QztvQ0FDN0MsSUFBSSxVQUFVLElBQUksVUFBVSxDQUFDLHFCQUFxQixFQUFFLEVBQUUsQ0FBQzt3Q0FDbkQsS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUE7b0NBQ2xFLENBQUM7b0NBRUQsc0NBQXNDO29DQUN0QyxLQUFLLElBQUksQ0FBQyxHQUFHLFVBQVUsRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDLHFCQUFxQixFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQzt3Q0FDbkUsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUE7d0NBQ3BDLElBQUksS0FBYSxDQUFBO3dDQUVqQixvQ0FBb0M7d0NBQ3BDLElBQUksUUFBUSxJQUFJLEVBQUUsSUFBSSxRQUFRLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxVQUFVOzRDQUM5QyxLQUFLLEdBQUcsUUFBUSxHQUFHLEVBQUUsQ0FBQTt3Q0FDekIsQ0FBQzs2Q0FBTSxJQUFJLFFBQVEsSUFBSSxFQUFFLElBQUksUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsVUFBVTs0Q0FDckQsS0FBSyxHQUFHLFFBQVEsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFBO3dDQUM5QixDQUFDOzZDQUFNLElBQUksUUFBUSxJQUFJLEVBQUUsSUFBSSxRQUFRLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQyxVQUFVOzRDQUN0RCxLQUFLLEdBQUcsUUFBUSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUE7d0NBQzlCLENBQUM7NkNBQU0sQ0FBQzs0Q0FDSixvQkFBb0I7NENBQ3BCLE9BQU8sS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUE7d0NBQzNELENBQUM7d0NBRUQsTUFBTSxHQUFHLE1BQU0sR0FBRyxFQUFFLEdBQUcsS0FBSyxDQUFBO29DQUNoQyxDQUFDO29DQUVELE9BQU8sVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFBO2dDQUN4QyxDQUFDLENBQUE7Z0NBQ0QsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGNBQWMsQ0FDekIsSUFBQSwrQkFBdUIsRUFDbkIsQ0FBQyxFQUFFLEVBQUUsRUFBRTtvQ0FDSCxNQUFNLFFBQVEsR0FBRyxHQUFHLEVBQUU7d0NBQ2xCLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQTt3Q0FDaEMsSUFBSSxJQUFJLEtBQUssSUFBSSxFQUFFLENBQUM7NENBQ2hCLE9BQU8sS0FBSyxDQUFDO2dEQUNULE9BQU8sRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztnREFDN0UsVUFBVSxFQUFFLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQzs2Q0FDaEYsQ0FBQyxDQUFBO3dDQUNOLENBQUM7d0NBQ0QsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLFNBQVMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxTQUFTLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxFQUFFLENBQUM7NENBQ3ZLLE9BQU8sS0FBSyxDQUFDO2dEQUNULE9BQU8sRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztnREFDN0UsVUFBVSxFQUFFLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDOzZDQUN4RixDQUFDLENBQUE7d0NBQ04sQ0FBQzt3Q0FDRCxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO3dDQUM1QixPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7b0NBQ3ZCLENBQUMsQ0FBQTtvQ0FDRCxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQTtvQ0FDMUIsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7b0NBQzFCLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFBO29DQUMxQixFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQTtnQ0FDOUIsQ0FBQyxDQUNKLEVBQ0QsR0FBRyxFQUFFLENBQUMsSUFBQSwrQkFBdUIsRUFBQywwQ0FBMEMsQ0FBQyxDQUM1RSxDQUFDLENBQUE7Z0NBQ0YsTUFBSzs0QkFDVDtnQ0FDSSxPQUFPLEtBQUssQ0FBQztvQ0FDVCxPQUFPLEVBQUUsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7b0NBQzdFLFVBQVUsRUFBRSxDQUFDLGtCQUFrQixFQUFFOzRDQUM3QixPQUFPLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7eUNBQzlDLENBQUM7aUNBQ0wsQ0FBQyxDQUFBO3dCQUNWLENBQUM7b0JBQ0wsQ0FBQztvQkFDRCxNQUFLO2dCQUNUO29CQUNJLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7b0JBQzVCLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDakMsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDLENBQ0osRUFDRCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUNYLENBQUE7SUFDRCxPQUFPLEdBQUcsQ0FBQTtBQUNkLENBQUMsQ0FBQTtBQS9OWSxRQUFBLGNBQWMsa0JBK04xQjtBQUVNLE1BQU0sZ0JBQWdCLEdBQUcsQ0FDNUIsUUFBb0UsRUFDcEUsS0FBdUMsRUFDakIsRUFBRSxDQUFDLENBQUM7SUFDMUIsZ0JBQWdCLEVBQUUsSUFBQSxjQUFNLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQztJQUN6QyxRQUFRLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQztRQUNwQixjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUk7UUFDM0IsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ1osTUFBTSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQWdDLEVBQUU7Z0JBRXJELE1BQU0sU0FBUyxHQUFHO29CQUVkLGtCQUFrQixFQUFFLElBQUksRUFBRSxJQUFJO29CQUM5QixVQUFVLEVBQUUsSUFBSSxFQUFZLElBQUk7b0JBQ2hDLFlBQVksRUFBRSxJQUFJLEVBQVUsSUFBSTtvQkFDaEMsVUFBVSxFQUFFLElBQUksRUFBVyxJQUFJO29CQUUvQixtQkFBbUIsRUFBRSxJQUFJLEVBQUUsSUFBSTtvQkFDL0IsV0FBVyxFQUFFLElBQUksRUFBVyxJQUFJO29CQUNoQyxhQUFhLEVBQUUsSUFBSSxFQUFTLElBQUk7b0JBQ2hDLFdBQVcsRUFBRSxJQUFJLEVBQVUsSUFBSTtvQkFFL0IsVUFBVSxFQUFFLElBQUksRUFBVyxJQUFJO29CQUMvQixRQUFRLEVBQUUsSUFBSSxFQUFhLElBQUk7b0JBQy9CLEVBQUUsRUFBRSxJQUFJLEVBQW1CLElBQUk7b0JBQy9CLFFBQVEsRUFBRSxJQUFJLEVBQWEsSUFBSTtvQkFDL0IsSUFBSSxFQUFFLElBQUk7b0JBQ1YsS0FBSyxFQUFFLElBQUksRUFBaUIsSUFBSTtvQkFDaEMsSUFBSSxFQUFFLElBQUksRUFBaUIsSUFBSTtvQkFDL0IsY0FBYyxFQUFFLElBQUksRUFBUSxJQUFJO29CQUNoQyxLQUFLLEVBQUUsSUFBSSxFQUFnQixJQUFJO29CQUMvQixVQUFVLEVBQUUsSUFBSSxFQUFZLElBQUk7b0JBQ2hDLEtBQUssRUFBRSxJQUFJLEVBQWdCLElBQUk7b0JBQy9CLElBQUksRUFBRSxJQUFJLEVBQWlCLElBQUk7b0JBRS9CLEtBQUssRUFBRSxJQUFJLEVBQWdCLFFBQVE7b0JBQ25DLEdBQUcsRUFBRSxJQUFJLEVBQWtCLEtBQUs7aUJBRW5DLENBQUE7Z0JBQ0QsUUFBUSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ2IsS0FBSyxTQUFTLENBQUMsVUFBVTt3QkFDckIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTt3QkFDNUIsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQTtvQkFDdEIsS0FBSyxTQUFTLENBQUMsWUFBWTt3QkFDdkIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTt3QkFDNUIsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQTtvQkFDdEIsS0FBSyxTQUFTLENBQUMsa0JBQWtCO3dCQUM3QixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO3dCQUM1QixPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFBO29CQUN0QixLQUFLLFNBQVMsQ0FBQyxVQUFVO3dCQUNyQixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO3dCQUM1QixPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFBO29CQUN0QixLQUFLLFNBQVMsQ0FBQyxXQUFXO3dCQUN0QixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO3dCQUM1QixPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFBO29CQUN0QixLQUFLLFNBQVMsQ0FBQyxhQUFhO3dCQUN4QixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO3dCQUM1QixPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFBO29CQUN0QixLQUFLLFNBQVMsQ0FBQyxtQkFBbUI7d0JBQzlCLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7d0JBQzVCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUE7b0JBQ3RCLEtBQUssU0FBUyxDQUFDLFdBQVc7d0JBQ3RCLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7d0JBQzVCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUE7b0JBRXRCLGFBQWE7b0JBQ2IsS0FBSyxTQUFTLENBQUMsSUFBSTt3QkFDZixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO3dCQUM1QixPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFBLENBQUMscUJBQXFCO29CQUM1QyxLQUFLLFNBQVMsQ0FBQyxJQUFJO3dCQUNmLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7d0JBQzVCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUEsQ0FBQyxvQkFBb0I7b0JBQzNDLEtBQUssU0FBUyxDQUFDLFVBQVU7d0JBQ3JCLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7d0JBQzVCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUEsQ0FBQyxvQkFBb0I7b0JBQzNDLEtBQUssU0FBUyxDQUFDLEtBQUs7d0JBQ2hCLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7d0JBQzVCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUEsQ0FBQyxvQkFBb0I7b0JBQzNDLEtBQUssU0FBUyxDQUFDLFFBQVE7d0JBQ25CLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7d0JBQzVCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUEsQ0FBQyxrQkFBa0I7b0JBQ3pDLEtBQUssU0FBUyxDQUFDLEVBQUU7d0JBQ2IsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTt3QkFDNUIsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQSxDQUFDLGdCQUFnQjtvQkFDdkMsS0FBSyxTQUFTLENBQUMsSUFBSTt3QkFDZixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO3dCQUM1QixPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFBLENBQUMsZUFBZTtvQkFDdEMsS0FBSyxTQUFTLENBQUMsS0FBSzt3QkFDaEIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTt3QkFDNUIsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQSxDQUFDLG1CQUFtQjtvQkFDMUMsS0FBSyxTQUFTLENBQUMsY0FBYzt3QkFDekIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTt3QkFDNUIsT0FBTyxDQUFDLE1BQU0sRUFBRTtnQ0FDWixPQUFPLEVBQUUsSUFBQSxzQkFBYyxFQUNuQixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxjQUFjLEVBQ3JDLElBQUksRUFDSCxRQUFRLEVBQ1AsS0FBSyxFQUNKLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxFQUFFLENBQzlCO2dDQUNELE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUM7NkJBQzNCLENBQUMsQ0FBQTtvQkFDTixLQUFLLFNBQVMsQ0FBQyxRQUFRO3dCQUNuQixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO3dCQUM1QixPQUFPLENBQUMsTUFBTSxFQUFFO2dDQUNaLE9BQU8sRUFBRSxJQUFBLHNCQUFjLEVBQ25CLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLFFBQVEsRUFDL0IsS0FBSyxFQUNMLFFBQVEsRUFDUixLQUFLLEVBQ0wsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLEVBQUUsQ0FDM0I7Z0NBQ0QsTUFBTSxFQUFFLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQzs2QkFDL0IsQ0FBQyxDQUFBO29CQUNOLEtBQUssU0FBUyxDQUFDLFVBQVU7d0JBQ3JCLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7d0JBQzVCLE9BQU8sQ0FBQyxNQUFNLEVBQUU7Z0NBQ1osT0FBTyxFQUFFLElBQUEsc0JBQWMsRUFDbkIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsVUFBVSxFQUNqQyxLQUFLLEVBQ0wsUUFBUSxFQUNSLEtBQUssRUFDTCxFQUFFLGlCQUFpQixFQUFFLENBQUMsRUFBRSxDQUMzQjtnQ0FDRCxNQUFNLEVBQUUsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDOzZCQUNoQyxDQUFDLENBQUE7b0JBRU47d0JBQ0ksT0FBTyxDQUFDLE1BQU0sRUFBRTtnQ0FDWixNQUFNLEVBQUUsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDO2dDQUM3QixPQUFPLEVBQUUsSUFBQSx3QkFBZ0IsRUFFckIsUUFBUSxDQUFDLElBQUksQ0FBQztvQ0FDVixjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTt3Q0FDbEIsTUFBTSxlQUFlLEdBQUc7NENBQ3BCLEdBQUcsRUFBRSxJQUFJLEVBQW1CLEtBQUs7NENBQ2pDLFNBQVMsRUFBRSxJQUFJLEVBQWEsS0FBSzs0Q0FDakMsZUFBZSxFQUFFLElBQUksRUFBTyxLQUFLOzRDQUNqQyxLQUFLLEVBQUUsSUFBSSxFQUFpQixFQUFFOzRDQUM5QixLQUFLLEVBQUUsSUFBSSxFQUFpQixJQUFJO3lDQUNuQyxDQUFBO3dDQUNELE9BQU8sQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsVUFBVTs0Q0FDbEMsQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsV0FBVzs0Q0FDaEMsQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsWUFBWTs0Q0FDakMsQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsYUFBYTs0Q0FDbEMsQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsa0JBQWtCOzRDQUN2QyxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxtQkFBbUI7NENBQ3hDLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLFVBQVU7NENBQy9CLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLFdBQVc7NENBQ2hDLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLFVBQVU7NENBQy9CLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLFFBQVE7NENBQzdCLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLEVBQUU7NENBQ3ZCLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLFFBQVE7NENBQzdCLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLElBQUk7NENBQ3pCLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLEtBQUs7NENBQzFCLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLElBQUk7NENBQ3pCLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLGNBQWM7NENBQ25DLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLEtBQUs7NENBQzFCLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLEtBQUs7NENBQzFCLENBQUMsQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLEtBQUs7NENBQ2hDLENBQUMsQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLEtBQUs7NENBQ2hDLENBQUMsQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLEdBQUc7NENBQzlCLENBQUMsQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLFNBQVM7NENBQ3BDLENBQUMsQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLGVBQWUsQ0FBQTtvQ0FDbEQsQ0FBQztvQ0FDRCxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTt3Q0FDVixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMsd0JBQXdCO3dDQUNyRCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUE7b0NBQ2pCLENBQUM7aUNBQ0osQ0FBQyxFQUNGLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1g7NkJBQ0osQ0FBQyxDQUFBO2dCQUNWLENBQUM7WUFDTCxDQUFDLENBQUM7WUFDRixPQUFPLEVBQUUsQ0FBQyxDQUFDLFFBQVE7WUFDbkIsS0FBSyxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUc7WUFDM0QsaUJBQWlCLEVBQUUsSUFBQSxjQUFNLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQztTQUM3QyxDQUFDO0tBQ0wsQ0FBQztJQUNGLEtBQUssRUFBRSxRQUFRLENBQUMsWUFBWSxFQUFFO0NBQ2pDLENBQUMsQ0FBQTtBQXJMVyxRQUFBLGdCQUFnQixvQkFxTDNCIn0=
528
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGVkX2NoYXJhY3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvcHJvZHVjdGlvbnMvdG9rZW4vYW5ub3RhdGVkX2NoYXJhY3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw0REFBNkM7QUFJN0MsNEdBQXFGO0FBQ3JGLDRHQUFxRjtBQUNyRiw4RkFBdUU7QUFVdkUsY0FBYztBQUdkLE1BQU0sWUFBWSxHQUFHLENBQ2pCLE9BQXNELEVBQ3RELFFBQXlDLEVBQ25CLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUN6QyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNKLE9BQU8sRUFBRTtRQUNMLE9BQU8sRUFBRSxDQUFDLENBQUMsUUFBUTtRQUNuQixLQUFLLEVBQUU7WUFDSCxVQUFVLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsQ0FBQztZQUNuQyxVQUFVLEVBQUU7Z0JBQ1IsTUFBTSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUk7Z0JBQ2hDLFFBQVEsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQzthQUMzQztTQUNKO0tBQ0o7SUFDRCxVQUFVLEVBQUUsUUFBUTtDQUN2QixDQUFDLEVBQ0YsR0FBRyxFQUFFLENBQUMsSUFBQSwrQkFBdUIsRUFBQyxjQUFjLENBQUMsQ0FDaEQsQ0FBQTtBQUVELE1BQU0sWUFBWSxHQU9kLENBQ0EsUUFBUSxFQUNSLEVBQUUsRUFDbUIsRUFBRSxDQUFDLENBQUM7SUFDekIsT0FBTyxFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLFFBQVE7SUFDdkMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLENBQUMsSUFBSSxFQUFFLEVB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
@@ -1,9 +1,9 @@
1
- import * as pi from 'pareto-core/dist/interface';
1
+ import * as p_ri from 'pareto-core/dist/refiner/interface';
2
2
  import * as d_out from "../../../../interface/to_be_generated/annotated_characters";
3
3
  import * as d_in from "pareto-fountain-pen/dist/interface/generated/liana/schemas/list_of_characters/data";
4
4
  import * as d_function from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data";
5
5
  export declare namespace signatures {
6
- type Annotated_Characters = pi.Refiner_Without_Error_With_Parameter<d_out.Annotated_Characters, d_in.List_of_Characters, d_function.Parameters>;
6
+ type Annotated_Characters = p_ri.Refiner_Without_Error_With_Parameter<d_out.Annotated_Characters, d_in.List_of_Characters, d_function.Parameters>;
7
7
  }
8
8
  /**
9
9
  * Creates a string iterator that allows iterating over characters in a string,
@@ -1,8 +1,8 @@
1
- import * as pi from 'pareto-core/dist/interface';
1
+ import * as p_ri from 'pareto-core/dist/refiner/interface';
2
2
  import * as d_function from "../../../../interface/generated/liana/schemas/deserialize_parse_tree/data";
3
3
  import * as d_out from "../../../../interface/generated/liana/schemas/parse_tree/data";
4
4
  import * as d_in from "pareto-fountain-pen/dist/interface/generated/liana/schemas/list_of_characters/data";
5
5
  export declare namespace signatures {
6
- type Document = pi.Refiner_With_Parameter<d_out.Document, d_function.Error, d_in.List_of_Characters, d_function.Parameters>;
6
+ type Document = p_ri.Refiner_With_Parameter<d_out.Document, d_function.Error, d_in.List_of_Characters, d_function.Parameters>;
7
7
  }
8
8
  export declare const Document: signatures.Document;
@@ -39,18 +39,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.Document = void 0;
40
40
  const iterate_1 = __importDefault(require("pareto-core/dist/specials/iterate"));
41
41
  //dependencies
42
- const ds_annotated_characters = __importStar(require("../annotated_characters/text"));
43
- const tokenize = __importStar(require("../token/annotated_character"));
42
+ const r_annotated_characters = __importStar(require("../annotated_characters/text"));
43
+ const pr_tokenize = __importStar(require("../../productions/token/annotated_character"));
44
44
  const r_from_token = __importStar(require("./tokenizer_result"));
45
45
  const Document = ($, abort, $p) => {
46
- const ann_chars = ds_annotated_characters.Annotated_Characters($, $p);
46
+ const ann_chars = r_annotated_characters.Annotated_Characters($, $p);
47
47
  return (0, iterate_1.default)(//fixme: make this iterate_fully
48
48
  ann_chars.characters, ann_chars.end, (iter) => r_from_token.Document(//fixme: make this iterate_fully
49
- tokenize.Tokenizer_Result(iter, ($) => abort({
49
+ pr_tokenize.Tokenizer_Result(iter, ($) => abort({
50
50
  'type': ['lexer', $],
51
51
  })), ($) => abort({
52
52
  'type': ['parser', $],
53
53
  })));
54
54
  };
55
55
  exports.Document = Document;
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdF9vZl9jaGFyYWN0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL21hbnVhbC9yZWZpbmVycy9wYXJzZV90cmVlL2xpc3Rfb2ZfY2hhcmFjdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxnRkFBeUQ7QUFRekQsY0FBYztBQUNkLHNGQUF1RTtBQUN2RSx1RUFBd0Q7QUFDeEQsaUVBQWtEO0FBYTNDLE1BQU0sUUFBUSxHQUF3QixDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFHLEVBQUU7SUFDM0QsTUFBTSxTQUFTLEdBQUcsdUJBQXVCLENBQUMsb0JBQW9CLENBQzFELENBQUMsRUFDRCxFQUFFLENBQ0wsQ0FBQTtJQUNELE9BQU8sSUFBQSxpQkFBUyxFQUFFLGdDQUFnQztJQUM5QyxTQUFTLENBQUMsVUFBVSxFQUNwQixTQUFTLENBQUMsR0FBRyxFQUNiLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGdDQUFnQztJQUM1RCxRQUFRLENBQUMsZ0JBQWdCLENBQ3JCLElBQUksRUFDSixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ1QsTUFBTSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztLQUN2QixDQUFDLENBQ0wsRUFDRCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ1QsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztLQUN4QixDQUFDLENBQ0wsQ0FDSixDQUFBO0FBQ0wsQ0FBQyxDQUFBO0FBcEJZLFFBQUEsUUFBUSxZQW9CcEIifQ==
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdF9vZl9jaGFyYWN0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL21hbnVhbC9yZWZpbmVycy9wYXJzZV90cmVlL2xpc3Rfb2ZfY2hhcmFjdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxnRkFBeUQ7QUFRekQsY0FBYztBQUNkLHFGQUFzRTtBQUN0RSx5RkFBMEU7QUFDMUUsaUVBQWtEO0FBYTNDLE1BQU0sUUFBUSxHQUF3QixDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFHLEVBQUU7SUFDM0QsTUFBTSxTQUFTLEdBQUcsc0JBQXNCLENBQUMsb0JBQW9CLENBQ3pELENBQUMsRUFDRCxFQUFFLENBQ0wsQ0FBQTtJQUNELE9BQU8sSUFBQSxpQkFBUyxFQUFFLGdDQUFnQztJQUM5QyxTQUFTLENBQUMsVUFBVSxFQUNwQixTQUFTLENBQUMsR0FBRyxFQUNiLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGdDQUFnQztJQUM1RCxXQUFXLENBQUMsZ0JBQWdCLENBQ3hCLElBQUksRUFDSixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ1QsTUFBTSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztLQUN2QixDQUFDLENBQ0wsRUFDRCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ1QsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztLQUN4QixDQUFDLENBQ0wsQ0FDSixDQUFBO0FBQ0wsQ0FBQyxDQUFBO0FBcEJZLFFBQUEsUUFBUSxZQW9CcEIifQ==