@kontur.candy/generator 4.277.0-fs-7292-normalization-fixes.3 → 4.277.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.
Files changed (2) hide show
  1. package/dist/index.js +494 -806
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -112412,8 +112412,7 @@ KCLangRuntimeUtils.kcLangUtilsName = "kcLangUtils";
112412
112412
  "use strict";
112413
112413
  __webpack_require__.r(__webpack_exports__);
112414
112414
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
112415
- /* harmony export */ "buildIterationSequence": () => (/* binding */ buildIterationSequence),
112416
- /* harmony export */ "removeLastPartAfterMultiplicity": () => (/* binding */ removeLastPartAfterMultiplicity)
112415
+ /* harmony export */ "buildIterationSequence": () => (/* binding */ buildIterationSequence)
112417
112416
  /* harmony export */ });
112418
112417
  /* harmony import */ var _ModelPath__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ModelPath */ "./Common/ModelPath/ModelPath.ts");
112419
112418
 
@@ -112432,11 +112431,6 @@ function buildIterationSequence(modelPath) {
112432
112431
 
112433
112432
  return result;
112434
112433
  }
112435
- function removeLastPartAfterMultiplicity(modelPath) {
112436
- const tokens = modelPath.getPathPartsAsArray();
112437
- const lastIndex = Math.max(tokens.lastIndexOf(_ModelPath__WEBPACK_IMPORTED_MODULE_0__.PathTokens.each), tokens.lastIndexOf(_ModelPath__WEBPACK_IMPORTED_MODULE_0__.PathTokens.current));
112438
- return lastIndex > 0 ? (0,_ModelPath__WEBPACK_IMPORTED_MODULE_0__.createAbsoluteFromTokens)(tokens.slice(0, lastIndex)) : modelPath;
112439
- }
112440
112434
 
112441
112435
  /***/ }),
112442
112436
 
@@ -116212,7 +116206,7 @@ KCLangLexer.ruleNames = ["GOUP", "PROPERTIES", "DECIMAL", "FRACTION", "STRINGTYP
116212
116206
  KCLangLexer._LITERAL_NAMES = [undefined, undefined, "'getProperty'", "'decimal'", "'fraction'", "'string'", "'date'", "'%'", "'*'", "' / '", "'+'", "'-'", "'==='", "'>'", "'>='", "'<'", "'<='", "'=='", "'!='", "'='", "'as'", "'#'", "'var'", "'in'", "' : '", "':'", "','", "'.'", "'@'", "'$'", undefined, undefined, undefined, "'('", "')'", "'['", "']'", "'{'", "'}'", "'/'", "'if'", "'else'", "'Error'", "'Warning'", "'check'", "'with'", "';'", "'?'"];
116213
116207
  KCLangLexer._SYMBOLIC_NAMES = [undefined, "GOUP", "PROPERTIES", "DECIMAL", "FRACTION", "STRINGTYPE", "DATE", "PERCENT", "MUL", "DIV", "PLUS", "MIN", "TEQ", "GT", "GE", "LT", "LE", "EQ", "NEQ", "EQUAL", "AS", "HASH", "VAR", "IN", "COLON1", "COLON", "COMMA", "DOT", "AT", "DOLLAR", "AND", "OR", "NOT", "LPAREN", "RPAREN", "LBRACKET", "RBRACKET", "LBRACE", "RBRACE", "SLASH", "IF", "ELSE", "ERROR", "WARNING", "CHECK", "WITH", "SEMICOLON", "QUESTIONMARK", "CONSTSTRINGWITHQUOTES", "CONSTSTRINGWITHSINGLEQUOTES", "CONSTSTRINGWITHDOUBLEQUOTES", "NAME", "PATHTOKEN", "NUMBER", "STRING", "SPACE", "BlockComment", "LineComment"];
116214
116208
  KCLangLexer.VOCABULARY = new antlr4ts_VocabularyImpl__WEBPACK_IMPORTED_MODULE_3__.VocabularyImpl(KCLangLexer._LITERAL_NAMES, KCLangLexer._SYMBOLIC_NAMES, []);
116215
- KCLangLexer._serializedATN = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x02;\u01B2\b\x01" + "\x04\x02\t\x02\x04\x03\t\x03\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06" + "\x04\x07\t\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f\x04\r" + "\t\r\x04\x0E\t\x0E\x04\x0F\t\x0F\x04\x10\t\x10\x04\x11\t\x11\x04\x12\t" + "\x12\x04\x13\t\x13\x04\x14\t\x14\x04\x15\t\x15\x04\x16\t\x16\x04\x17\t" + "\x17\x04\x18\t\x18\x04\x19\t\x19\x04\x1A\t\x1A\x04\x1B\t\x1B\x04\x1C\t" + "\x1C\x04\x1D\t\x1D\x04\x1E\t\x1E\x04\x1F\t\x1F\x04 \t \x04!\t!\x04\"\t" + "\"\x04#\t#\x04$\t$\x04%\t%\x04&\t&\x04\'\t\'\x04(\t(\x04)\t)\x04*\t*\x04" + "+\t+\x04,\t,\x04-\t-\x04.\t.\x04/\t/\x040\t0\x041\t1\x042\t2\x043\t3\x04" + "4\t4\x045\t5\x046\t6\x047\t7\x048\t8\x049\t9\x04:\t:\x04;\t;\x04<\t<\x04" + "=\t=\x04>\t>\x04?\t?\x04@\t@\x04A\tA\x04B\tB\x03\x02\x03\x02\x03\x02\x03" + "\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03" + "\x03\x03\x03\x03\x03\x03\x04\x03\x04\x03\x04\x03\x04\x03\x04\x03\x04\x03" + "\x04\x03\x04\x03\x05\x03\x05\x03\x05\x03\x05\x03\x05\x03\x05\x03\x05\x03" + "\x05\x03\x05\x03\x06\x03\x06\x03\x06\x03\x06\x03\x06\x03\x06\x03\x06\x03" + "\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\b\x03\b\x03\t\x03\t\x03\n\x03" + "\n\x03\n\x03\n\x03\v\x03\v\x03\f\x03\f\x03\r\x03\r\x03\r\x03\r\x03\x0E" + "\x03\x0E\x03\x0F\x03\x0F\x03\x0F\x03\x10\x03\x10\x03\x11\x03\x11\x03\x11" + "\x03\x12\x03\x12\x03\x12\x03\x13\x03\x13\x03\x13\x03\x14\x03\x14\x03\x15" + "\x03\x15\x03\x15\x03\x16\x03\x16\x03\x17\x03\x17\x03\x17\x03\x17\x03\x18" + "\x03\x18\x03\x18\x03\x19\x03\x19\x03\x19\x03\x19\x03\x1A\x03\x1A\x03\x1B" + "\x03\x1B\x03\x1C\x03\x1C\x03\x1D\x03\x1D\x03\x1E\x03\x1E\x03\x1F\x03\x1F" + "\x03\x1F\x03\x1F\x03\x1F\x05\x1F\xF3\n\x1F\x03 \x03 \x03 \x03 \x05 \xF9" + "\n \x03!\x03!\x03!\x03!\x05!\xFF\n!\x03\"\x03\"\x03#\x03#\x03$\x03$\x03" + "%\x03%\x03&\x03&\x03\'\x03\'\x03(\x03(\x03)\x03)\x03)\x03*\x03*\x03*\x03" + "*\x03*\x03+\x03+\x03+\x03+\x03+\x03+\x03,\x03,\x03,\x03,\x03,\x03,\x03" + ",\x03,\x03-\x03-\x03-\x03-\x03-\x03-\x03.\x03.\x03.\x03.\x03.\x03/\x03" + "/\x030\x030\x031\x031\x051\u0136\n1\x032\x032\x032\x032\x033\x033\x03" + "3\x033\x034\x034\x035\x035\x036\x076\u0145\n6\f6\x0E6\u0148\v6\x037\x07" + "7\u014B\n7\f7\x0E7\u014E\v7\x038\x038\x039\x039\x039\x039\x03:\x03:\x07" + ":\u0158\n:\f:\x0E:\u015B\v:\x03:\x03:\x03;\x03;\x07;\u0161\n;\f;\x0E;" + "\u0164\v;\x03;\x03;\x03<\x05<\u0169\n<\x03<\x03<\x07<\u016D\n<\f<\x0E" + "<\u0170\v<\x03=\x03=\x05=\u0174\n=\x03=\x05=\u0177\n=\x03>\x07>\u017A" + "\n>\f>\x0E>\u017D\v>\x03>\x06>\u0180\n>\r>\x0E>\u0181\x03>\x05>\u0185" + "\n>\x03>\x07>\u0188\n>\f>\x0E>\u018B\v>\x03?\x03?\x07?\u018F\n?\f?\x0E" + "?\u0192\v?\x03?\x03?\x03@\x03@\x03@\x03@\x03A\x03A\x03A\x03A\x07A\u019E" + "\nA\fA\x0EA\u01A1\vA\x03A\x03A\x03A\x03A\x03A\x03B\x03B\x03B\x03B\x07" + "B\u01AC\nB\fB\x0EB\u01AF\vB\x03B\x03B\x04\u0190\u019F\x02\x02C\x03\x02" + "\x03\x05\x02\x04\x07\x02\x05\t\x02\x06\v\x02\x07\r\x02\b\x0F\x02\t\x11" + "\x02\n\x13\x02\v\x15\x02\f\x17\x02\r\x19\x02\x0E\x1B\x02\x0F\x1D\x02\x10" + "\x1F\x02\x11!\x02\x12#\x02\x13%\x02\x14\'\x02\x15)\x02\x16+\x02\x17-\x02" + "\x18/\x02\x191\x02\x1A3\x02\x1B5\x02\x1C7\x02\x1D9\x02\x1E;\x02\x1F=\x02" + " ?\x02!A\x02\"C\x02#E\x02$G\x02%I\x02&K\x02\'M\x02(O\x02)Q\x02*S\x02+" + "U\x02,W\x02-Y\x02.[\x02/]\x020_\x021a\x022c\x023e\x024g\x02\x02i\x02\x02" + "k\x02\x02m\x02\x02o\x02\x02q\x02\x02s\x02\x02u\x02\x02w\x025y\x026{\x02" + "7}\x028\x7F\x029\x81\x02:\x83\x02;\x03\x02\x0F\x03\x02))\x03\x02$$\x03" + "\x02]]\x03\x02__\x03\x02}}\x03\x02\x7F\x7F\x04\x02&&BB\x07\x02C\\c|\u0403" + "\u0403\u0412\u0451\u0453\u0453\n\x02/02;C\\aac|\u0403\u0403\u0412\u0451" + "\u0453\u0453\x03\x022;\x03\x0200\x05\x02\v\f\x0F\x0F\"\"\x04\x02\f\f\x0F" + "\x0F\x02\u01BC\x02\x03\x03\x02\x02\x02\x02\x05\x03\x02\x02\x02\x02\x07" + "\x03\x02\x02\x02\x02\t\x03\x02\x02\x02\x02\v\x03\x02\x02\x02\x02\r\x03" + "\x02\x02\x02\x02\x0F\x03\x02\x02\x02\x02\x11\x03\x02\x02\x02\x02\x13\x03" + "\x02\x02\x02\x02\x15\x03\x02\x02\x02\x02\x17\x03\x02\x02\x02\x02\x19\x03" + "\x02\x02\x02\x02\x1B\x03\x02\x02\x02\x02\x1D\x03\x02\x02\x02\x02\x1F\x03" + "\x02\x02\x02\x02!\x03\x02\x02\x02\x02#\x03\x02\x02\x02\x02%\x03\x02\x02" + "\x02\x02\'\x03\x02\x02\x02\x02)\x03\x02\x02\x02\x02+\x03\x02\x02\x02\x02" + "-\x03\x02\x02\x02\x02/\x03\x02\x02\x02\x021\x03\x02\x02\x02\x023\x03\x02" + "\x02\x02\x025\x03\x02\x02\x02\x027\x03\x02\x02\x02\x029\x03\x02\x02\x02" + "\x02;\x03\x02\x02\x02\x02=\x03\x02\x02\x02\x02?\x03\x02\x02\x02\x02A\x03" + "\x02\x02\x02\x02C\x03\x02\x02\x02\x02E\x03\x02\x02\x02\x02G\x03\x02\x02" + "\x02\x02I\x03\x02\x02\x02\x02K\x03\x02\x02\x02\x02M\x03\x02\x02\x02\x02" + "O\x03\x02\x02\x02\x02Q\x03\x02\x02\x02\x02S\x03\x02\x02\x02\x02U\x03\x02" + "\x02\x02\x02W\x03\x02\x02\x02\x02Y\x03\x02\x02\x02\x02[\x03\x02\x02\x02" + "\x02]\x03\x02\x02\x02\x02_\x03\x02\x02\x02\x02a\x03\x02\x02\x02\x02c\x03" + "\x02\x02\x02\x02e\x03\x02\x02\x02\x02w\x03\x02\x02\x02\x02y\x03\x02\x02" + "\x02\x02{\x03\x02\x02\x02\x02}\x03\x02\x02\x02\x02\x7F\x03\x02\x02\x02" + "\x02\x81\x03\x02\x02\x02\x02\x83\x03\x02\x02\x02\x03\x85\x03\x02\x02\x02" + "\x05\x88\x03\x02\x02\x02\x07\x94\x03\x02\x02\x02\t\x9C\x03\x02\x02\x02" + "\v\xA5\x03\x02\x02\x02\r\xAC\x03\x02\x02\x02\x0F\xB1\x03\x02\x02\x02\x11" + "\xB3\x03\x02\x02\x02\x13\xB5\x03\x02\x02\x02\x15\xB9\x03\x02\x02\x02\x17" + "\xBB\x03\x02\x02\x02\x19\xBD\x03\x02\x02\x02\x1B\xC1\x03\x02\x02\x02\x1D" + "\xC3\x03\x02\x02\x02\x1F\xC6\x03\x02\x02\x02!\xC8\x03\x02\x02\x02#\xCB" + "\x03\x02\x02\x02%\xCE\x03\x02\x02\x02\'\xD1\x03\x02\x02\x02)\xD3\x03\x02" + "\x02\x02+\xD6\x03\x02\x02\x02-\xD8\x03\x02\x02\x02/\xDC\x03\x02\x02\x02" + "1\xDF\x03\x02\x02\x023\xE3\x03\x02\x02\x025\xE5\x03\x02\x02\x027\xE7\x03" + "\x02\x02\x029\xE9\x03\x02\x02\x02;\xEB\x03\x02\x02\x02=\xF2\x03\x02\x02" + "\x02?\xF8\x03\x02\x02\x02A\xFE\x03\x02\x02\x02C\u0100\x03\x02\x02\x02" + "E\u0102\x03\x02\x02\x02G\u0104\x03\x02\x02\x02I\u0106\x03\x02\x02\x02" + "K\u0108\x03\x02\x02\x02M\u010A\x03\x02\x02\x02O\u010C\x03\x02\x02\x02" + "Q\u010E\x03\x02\x02\x02S\u0111\x03\x02\x02\x02U\u0116\x03\x02\x02\x02" + "W\u011C\x03\x02\x02\x02Y\u0124\x03\x02\x02\x02[\u012A\x03\x02\x02\x02" + "]\u012F\x03\x02\x02\x02_\u0131\x03\x02\x02\x02a\u0135\x03\x02\x02\x02" + "c\u0137\x03\x02\x02\x02e\u013B\x03\x02\x02\x02g\u013F\x03\x02\x02\x02" + "i\u0141\x03\x02\x02\x02k\u0146\x03\x02\x02\x02m\u014C\x03\x02\x02\x02" + "o\u014F\x03\x02\x02\x02q\u0151\x03\x02\x02\x02s\u0155\x03\x02\x02\x02" + "u\u015E\x03\x02\x02\x02w\u0168\x03\x02\x02\x02y\u0171\x03\x02\x02\x02" + "{\u017B\x03\x02\x02\x02}\u018C\x03\x02\x02\x02\x7F\u0195\x03\x02\x02\x02" + "\x81\u0199\x03\x02\x02\x02\x83\u01A7\x03\x02\x02\x02\x85\x86\x057\x1C" + "\x02\x86\x87\x057\x1C\x02\x87\x04\x03\x02\x02\x02\x88\x89\x07i\x02\x02" + "\x89\x8A\x07g\x02\x02\x8A\x8B\x07v\x02\x02\x8B\x8C\x07R\x02\x02\x8C\x8D" + "\x07t\x02\x02\x8D\x8E\x07q\x02\x02\x8E\x8F\x07r\x02\x02\x8F\x90\x07g\x02" + "\x02\x90\x91\x07t\x02\x02\x91\x92\x07v\x02\x02\x92\x93\x07{\x02\x02\x93" + "\x06\x03\x02\x02\x02\x94\x95\x07f\x02\x02\x95\x96\x07g\x02\x02\x96\x97" + "\x07e\x02\x02\x97\x98\x07k\x02\x02\x98\x99\x07o\x02\x02\x99\x9A\x07c\x02" + "\x02\x9A\x9B\x07n\x02\x02\x9B\b\x03\x02\x02\x02\x9C\x9D\x07h\x02\x02\x9D" + "\x9E\x07t\x02\x02\x9E\x9F\x07c\x02\x02\x9F\xA0\x07e\x02\x02\xA0\xA1\x07" + "v\x02\x02\xA1\xA2\x07k\x02\x02\xA2\xA3\x07q\x02\x02\xA3\xA4\x07p\x02\x02" + "\xA4\n\x03\x02\x02\x02\xA5\xA6\x07u\x02\x02\xA6\xA7\x07v\x02\x02\xA7\xA8" + "\x07t\x02\x02\xA8\xA9\x07k\x02\x02\xA9\xAA\x07p\x02\x02\xAA\xAB\x07i\x02" + "\x02\xAB\f\x03\x02\x02\x02\xAC\xAD\x07f\x02\x02\xAD\xAE\x07c\x02\x02\xAE" + "\xAF\x07v\x02\x02\xAF\xB0\x07g\x02\x02\xB0\x0E\x03\x02\x02\x02\xB1\xB2" + "\x07\'\x02\x02\xB2\x10\x03\x02\x02\x02\xB3\xB4\x07,\x02\x02\xB4\x12\x03" + "\x02\x02\x02\xB5\xB6\x07\"\x02\x02\xB6\xB7\x071\x02\x02\xB7\xB8\x07\"" + "\x02\x02\xB8\x14\x03\x02\x02\x02\xB9\xBA\x07-\x02\x02\xBA\x16\x03\x02" + "\x02\x02\xBB\xBC\x07/\x02\x02\xBC\x18\x03\x02\x02\x02\xBD\xBE\x07?\x02" + "\x02\xBE\xBF\x07?\x02\x02\xBF\xC0\x07?\x02\x02\xC0\x1A\x03\x02\x02\x02" + "\xC1\xC2\x07@\x02\x02\xC2\x1C\x03\x02\x02\x02\xC3\xC4\x07@\x02\x02\xC4" + "\xC5\x07?\x02\x02\xC5\x1E\x03\x02\x02\x02\xC6\xC7\x07>\x02\x02\xC7 \x03" + "\x02\x02\x02\xC8\xC9\x07>\x02\x02\xC9\xCA\x07?\x02\x02\xCA\"\x03\x02\x02" + "\x02\xCB\xCC\x07?\x02\x02\xCC\xCD\x07?\x02\x02\xCD$\x03\x02\x02\x02\xCE" + "\xCF\x07#\x02\x02\xCF\xD0\x07?\x02\x02\xD0&\x03\x02\x02\x02\xD1\xD2\x07" + "?\x02\x02\xD2(\x03\x02\x02\x02\xD3\xD4\x07c\x02\x02\xD4\xD5\x07u\x02\x02" + "\xD5*\x03\x02\x02\x02\xD6\xD7\x07%\x02\x02\xD7,\x03\x02\x02\x02\xD8\xD9" + "\x07x\x02\x02\xD9\xDA\x07c\x02\x02\xDA\xDB\x07t\x02\x02\xDB.\x03\x02\x02" + "\x02\xDC\xDD\x07k\x02\x02\xDD\xDE\x07p\x02\x02\xDE0\x03\x02\x02\x02\xDF" + "\xE0\x07\"\x02\x02\xE0\xE1\x07<\x02\x02\xE1\xE2\x07\"\x02\x02\xE22\x03" + "\x02\x02\x02\xE3\xE4\x07<\x02\x02\xE44\x03\x02\x02\x02\xE5\xE6\x07.\x02" + "\x02\xE66\x03\x02\x02\x02\xE7\xE8\x070\x02\x02\xE88\x03\x02\x02\x02\xE9" + "\xEA\x07B\x02\x02\xEA:\x03\x02\x02\x02\xEB\xEC\x07&\x02\x02\xEC<\x03\x02" + "\x02\x02\xED\xEE\x07c\x02\x02\xEE\xEF\x07p\x02\x02\xEF\xF3\x07f\x02\x02" + "\xF0\xF1\x07(\x02\x02\xF1\xF3\x07(\x02\x02\xF2\xED\x03\x02\x02\x02\xF2" + "\xF0\x03\x02\x02\x02\xF3>\x03\x02\x02\x02\xF4\xF5\x07q\x02\x02\xF5\xF9" + "\x07t\x02\x02\xF6\xF7\x07~\x02\x02\xF7\xF9\x07~\x02\x02\xF8\xF4\x03\x02" + "\x02\x02\xF8\xF6\x03\x02\x02\x02\xF9@\x03\x02\x02\x02\xFA\xFB\x07p\x02" + "\x02\xFB\xFC\x07q\x02\x02\xFC\xFF\x07v\x02\x02\xFD\xFF\x07#\x02\x02\xFE" + "\xFA\x03\x02\x02\x02\xFE\xFD\x03\x02\x02\x02\xFFB\x03\x02\x02\x02\u0100" + "\u0101\x07*\x02\x02\u0101D\x03\x02\x02\x02\u0102\u0103\x07+\x02\x02\u0103" + "F\x03\x02\x02\x02\u0104\u0105\x07]\x02\x02\u0105H\x03\x02\x02\x02\u0106" + "\u0107\x07_\x02\x02\u0107J\x03\x02\x02\x02\u0108\u0109\x07}\x02\x02\u0109" + "L\x03\x02\x02\x02\u010A\u010B\x07\x7F\x02\x02\u010BN\x03\x02\x02\x02\u010C" + "\u010D\x071\x02\x02\u010DP\x03\x02\x02\x02\u010E\u010F\x07k\x02\x02\u010F" + "\u0110\x07h\x02\x02\u0110R\x03\x02\x02\x02\u0111\u0112\x07g\x02\x02\u0112" + "\u0113\x07n\x02\x02\u0113\u0114\x07u\x02\x02\u0114\u0115\x07g\x02\x02" + "\u0115T\x03\x02\x02\x02\u0116\u0117\x07G\x02\x02\u0117\u0118\x07t\x02" + "\x02\u0118\u0119\x07t\x02\x02\u0119\u011A\x07q\x02\x02\u011A\u011B\x07" + "t\x02\x02\u011BV\x03\x02\x02\x02\u011C\u011D\x07Y\x02\x02\u011D\u011E" + "\x07c\x02\x02\u011E\u011F\x07t\x02\x02\u011F\u0120\x07p\x02\x02\u0120" + "\u0121\x07k\x02\x02\u0121\u0122\x07p\x02\x02\u0122\u0123\x07i\x02\x02" + "\u0123X\x03\x02\x02\x02\u0124\u0125\x07e\x02\x02\u0125\u0126\x07j\x02" + "\x02\u0126\u0127\x07g\x02\x02\u0127\u0128\x07e\x02\x02\u0128\u0129\x07" + "m\x02\x02\u0129Z\x03\x02\x02\x02\u012A\u012B\x07y\x02\x02\u012B\u012C" + "\x07k\x02\x02\u012C\u012D\x07v\x02\x02\u012D\u012E\x07j\x02\x02\u012E" + "\\\x03\x02\x02\x02\u012F\u0130\x07=\x02\x02\u0130^\x03\x02\x02\x02\u0131" + "\u0132\x07A\x02\x02\u0132`\x03\x02\x02\x02\u0133\u0136\x05c2\x02\u0134" + "\u0136\x05e3\x02\u0135\u0133\x03\x02\x02\x02\u0135\u0134\x03\x02\x02\x02" + "\u0136b\x03\x02\x02\x02\u0137\u0138\x05g4\x02\u0138\u0139\x05k6\x02\u0139" + "\u013A\x05g4\x02\u013Ad\x03\x02\x02\x02\u013B\u013C\x05i5\x02\u013C\u013D" + "\x05m7\x02\u013D\u013E\x05i5\x02\u013Ef\x03\x02\x02\x02\u013F\u0140\x07" + ")\x02\x02\u0140h\x03\x02\x02\x02\u0141\u0142\x07$\x02\x02\u0142j\x03\x02" + "\x02\x02\u0143\u0145\n\x02\x02\x02\u0144\u0143\x03\x02\x02\x02\u0145\u0148" + "\x03\x02\x02\x02\u0146\u0144\x03\x02\x02\x02\u0146\u0147\x03\x02\x02\x02" + "\u0147l\x03\x02\x02\x02\u0148\u0146\x03\x02\x02\x02\u0149\u014B\n\x03" + "\x02\x02\u014A\u0149\x03\x02\x02\x02\u014B\u014E\x03\x02\x02\x02\u014C" + "\u014A\x03\x02\x02\x02\u014C\u014D\x03\x02\x02\x02\u014Dn\x03\x02\x02" + "\x02\u014E\u014C\x03\x02\x02\x02\u014F\u0150\x07b\x02\x02\u0150p\x03\x02" + "\x02\x02\u0151\u0152\x05o8\x02\u0152\u0153\x05o8\x02\u0153\u0154\x05o" + "8\x02\u0154r\x03\x02\x02\x02\u0155\u0159\t\x04\x02\x02\u0156\u0158\n\x05" + "\x02\x02\u0157\u0156\x03\x02\x02\x02\u0158\u015B\x03\x02\x02\x02\u0159" + "\u0157\x03\x02\x02\x02\u0159\u015A\x03\x02\x02\x02\u015A\u015C\x03\x02" + "\x02\x02\u015B\u0159\x03\x02\x02\x02\u015C\u015D\t\x05\x02\x02\u015Dt" + "\x03\x02\x02\x02\u015E\u0162\t\x06\x02\x02\u015F\u0161\n\x07\x02\x02\u0160" + "\u015F\x03\x02\x02\x02\u0161\u0164\x03\x02\x02\x02\u0162\u0160\x03\x02" + "\x02\x02\u0162\u0163\x03\x02\x02\x02\u0163\u0165\x03\x02\x02\x02\u0164" + "\u0162\x03\x02\x02\x02\u0165\u0166\t\x07\x02\x02\u0166v\x03\x02\x02\x02" + "\u0167\u0169\t\b\x02\x02\u0168\u0167\x03\x02\x02\x02\u0168\u0169\x03\x02" + "\x02\x02\u0169\u016A\x03\x02\x02\x02\u016A\u016E\t\t\x02\x02\u016B\u016D" + "\t\n\x02\x02\u016C\u016B\x03\x02\x02\x02\u016D\u0170\x03\x02\x02\x02\u016E" + "\u016C\x03\x02\x02\x02\u016E\u016F\x03\x02\x02\x02\u016Fx\x03\x02\x02" + "\x02\u0170\u016E\x03\x02\x02\x02\u0171\u0173\x05w<\x02\u0172\u0174\x05" + "s:\x02\u0173\u0172\x03\x02\x02\x02\u0173\u0174\x03\x02\x02\x02\u0174\u0176" + "\x03\x02\x02\x02\u0175\u0177\x05u;\x02\u0176\u0175\x03\x02\x02\x02\u0176" + "\u0177\x03\x02\x02\x02\u0177z\x03\x02\x02\x02\u0178\u017A\x05\x17\f\x02" + "\u0179\u0178\x03\x02\x02\x02\u017A\u017D\x03\x02\x02\x02\u017B\u0179\x03" + "\x02\x02\x02\u017B\u017C\x03\x02\x02\x02\u017C\u017F\x03\x02\x02\x02\u017D" + "\u017B\x03\x02\x02\x02\u017E\u0180\t\v\x02\x02\u017F\u017E\x03\x02\x02" + "\x02\u0180\u0181\x03\x02\x02\x02\u0181\u017F\x03\x02\x02\x02\u0181\u0182" + "\x03\x02\x02\x02\u0182\u0184\x03\x02\x02\x02\u0183\u0185\t\f\x02\x02\u0184" + "\u0183\x03\x02\x02\x02\u0184\u0185\x03\x02\x02\x02\u0185\u0189\x03\x02" + "\x02\x02\u0186\u0188\t\v\x02\x02\u0187\u0186\x03\x02\x02\x02\u0188\u018B" + "\x03\x02\x02\x02\u0189\u0187\x03\x02\x02\x02\u0189\u018A\x03\x02\x02\x02" + "\u018A|\x03\x02\x02\x02\u018B\u0189\x03\x02\x02\x02\u018C\u0190\x05q9" + "\x02\u018D\u018F\v\x02\x02\x02\u018E\u018D\x03\x02\x02\x02\u018F\u0192" + "\x03\x02\x02\x02\u0190\u0191\x03\x02\x02\x02\u0190\u018E\x03\x02\x02\x02" + "\u0191\u0193\x03\x02\x02\x02\u0192\u0190\x03\x02\x02\x02\u0193\u0194\x05" + "q9\x02\u0194~\x03\x02\x02\x02\u0195\u0196\t\r\x02\x02\u0196\u0197\x03" + "\x02\x02\x02\u0197\u0198\b@\x02\x02\u0198\x80\x03\x02\x02\x02\u0199\u019A" + "\x071\x02\x02\u019A\u019B\x07,\x02\x02\u019B\u019F\x03\x02\x02\x02\u019C" + "\u019E\v\x02\x02\x02\u019D\u019C\x03\x02\x02\x02\u019E\u01A1\x03\x02\x02" + "\x02\u019F\u01A0\x03\x02\x02\x02\u019F\u019D\x03\x02\x02\x02\u01A0\u01A2" + "\x03\x02\x02\x02\u01A1\u019F\x03\x02\x02\x02\u01A2\u01A3\x07,\x02\x02" + "\u01A3\u01A4\x071\x02\x02\u01A4\u01A5\x03\x02\x02\x02\u01A5\u01A6\bA\x02" + "\x02\u01A6\x82\x03\x02\x02\x02\u01A7\u01A8\x071\x02\x02\u01A8\u01A9\x07" + "1\x02\x02\u01A9\u01AD\x03\x02\x02\x02\u01AA\u01AC\n\x0E\x02\x02\u01AB" + "\u01AA\x03\x02\x02\x02\u01AC\u01AF\x03\x02\x02\x02\u01AD\u01AB\x03\x02" + "\x02\x02\u01AD\u01AE\x03\x02\x02\x02\u01AE\u01B0\x03\x02\x02\x02\u01AF" + "\u01AD\x03\x02\x02\x02\u01B0\u01B1\bB\x02\x02\u01B1\x84\x03\x02\x02\x02" + "\x16\x02\xF2\xF8\xFE\u0135\u0146\u014C\u0159\u0162\u0168\u016E\u0173\u0176" + "\u017B\u0181\u0184\u0189\u0190\u019F\u01AD\x03\b\x02\x02";
116209
+ KCLangLexer._serializedATN = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x02;\u01B2\b\x01" + "\x04\x02\t\x02\x04\x03\t\x03\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06" + "\x04\x07\t\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f\x04\r" + "\t\r\x04\x0E\t\x0E\x04\x0F\t\x0F\x04\x10\t\x10\x04\x11\t\x11\x04\x12\t" + "\x12\x04\x13\t\x13\x04\x14\t\x14\x04\x15\t\x15\x04\x16\t\x16\x04\x17\t" + "\x17\x04\x18\t\x18\x04\x19\t\x19\x04\x1A\t\x1A\x04\x1B\t\x1B\x04\x1C\t" + '\x1C\x04\x1D\t\x1D\x04\x1E\t\x1E\x04\x1F\t\x1F\x04 \t \x04!\t!\x04"\t' + "\"\x04#\t#\x04$\t$\x04%\t%\x04&\t&\x04'\t'\x04(\t(\x04)\t)\x04*\t*\x04" + "+\t+\x04,\t,\x04-\t-\x04.\t.\x04/\t/\x040\t0\x041\t1\x042\t2\x043\t3\x04" + "4\t4\x045\t5\x046\t6\x047\t7\x048\t8\x049\t9\x04:\t:\x04;\t;\x04<\t<\x04" + "=\t=\x04>\t>\x04?\t?\x04@\t@\x04A\tA\x04B\tB\x03\x02\x03\x02\x03\x02\x03" + "\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03" + "\x03\x03\x03\x03\x03\x03\x04\x03\x04\x03\x04\x03\x04\x03\x04\x03\x04\x03" + "\x04\x03\x04\x03\x05\x03\x05\x03\x05\x03\x05\x03\x05\x03\x05\x03\x05\x03" + "\x05\x03\x05\x03\x06\x03\x06\x03\x06\x03\x06\x03\x06\x03\x06\x03\x06\x03" + "\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\b\x03\b\x03\t\x03\t\x03\n\x03" + "\n\x03\n\x03\n\x03\v\x03\v\x03\f\x03\f\x03\r\x03\r\x03\r\x03\r\x03\x0E" + "\x03\x0E\x03\x0F\x03\x0F\x03\x0F\x03\x10\x03\x10\x03\x11\x03\x11\x03\x11" + "\x03\x12\x03\x12\x03\x12\x03\x13\x03\x13\x03\x13\x03\x14\x03\x14\x03\x15" + "\x03\x15\x03\x15\x03\x16\x03\x16\x03\x17\x03\x17\x03\x17\x03\x17\x03\x18" + "\x03\x18\x03\x18\x03\x19\x03\x19\x03\x19\x03\x19\x03\x1A\x03\x1A\x03\x1B" + "\x03\x1B\x03\x1C\x03\x1C\x03\x1D\x03\x1D\x03\x1E\x03\x1E\x03\x1F\x03\x1F" + "\x03\x1F\x03\x1F\x03\x1F\x05\x1F\xF3\n\x1F\x03 \x03 \x03 \x03 \x05 \xF9" + '\n \x03!\x03!\x03!\x03!\x05!\xFF\n!\x03"\x03"\x03#\x03#\x03$\x03$\x03' + "%\x03%\x03&\x03&\x03'\x03'\x03(\x03(\x03)\x03)\x03)\x03*\x03*\x03*\x03" + "*\x03*\x03+\x03+\x03+\x03+\x03+\x03+\x03,\x03,\x03,\x03,\x03,\x03,\x03" + ",\x03,\x03-\x03-\x03-\x03-\x03-\x03-\x03.\x03.\x03.\x03.\x03.\x03/\x03" + "/\x030\x030\x031\x031\x051\u0136\n1\x032\x032\x032\x032\x033\x033\x03" + "3\x033\x034\x034\x035\x035\x036\x076\u0145\n6\f6\x0E6\u0148\v6\x037\x07" + "7\u014B\n7\f7\x0E7\u014E\v7\x038\x038\x039\x039\x039\x039\x03:\x03:\x07" + ":\u0158\n:\f:\x0E:\u015B\v:\x03:\x03:\x03;\x03;\x07;\u0161\n;\f;\x0E;" + "\u0164\v;\x03;\x03;\x03<\x05<\u0169\n<\x03<\x03<\x07<\u016D\n<\f<\x0E" + "<\u0170\v<\x03=\x03=\x05=\u0174\n=\x03=\x05=\u0177\n=\x03>\x07>\u017A" + "\n>\f>\x0E>\u017D\v>\x03>\x06>\u0180\n>\r>\x0E>\u0181\x03>\x05>\u0185" + "\n>\x03>\x07>\u0188\n>\f>\x0E>\u018B\v>\x03?\x03?\x07?\u018F\n?\f?\x0E" + "?\u0192\v?\x03?\x03?\x03@\x03@\x03@\x03@\x03A\x03A\x03A\x03A\x07A\u019E" + "\nA\fA\x0EA\u01A1\vA\x03A\x03A\x03A\x03A\x03A\x03B\x03B\x03B\x03B\x07" + "B\u01AC\nB\fB\x0EB\u01AF\vB\x03B\x03B\x04\u0190\u019F\x02\x02C\x03\x02" + "\x03\x05\x02\x04\x07\x02\x05\t\x02\x06\v\x02\x07\r\x02\b\x0F\x02\t\x11" + "\x02\n\x13\x02\v\x15\x02\f\x17\x02\r\x19\x02\x0E\x1B\x02\x0F\x1D\x02\x10" + "\x1F\x02\x11!\x02\x12#\x02\x13%\x02\x14'\x02\x15)\x02\x16+\x02\x17-\x02" + "\x18/\x02\x191\x02\x1A3\x02\x1B5\x02\x1C7\x02\x1D9\x02\x1E;\x02\x1F=\x02" + " ?\x02!A\x02\"C\x02#E\x02$G\x02%I\x02&K\x02'M\x02(O\x02)Q\x02*S\x02+" + "U\x02,W\x02-Y\x02.[\x02/]\x020_\x021a\x022c\x023e\x024g\x02\x02i\x02\x02" + "k\x02\x02m\x02\x02o\x02\x02q\x02\x02s\x02\x02u\x02\x02w\x025y\x026{\x02" + "7}\x028\x7F\x029\x81\x02:\x83\x02;\x03\x02\x0F\x03\x02))\x03\x02$$\x03" + "\x02]]\x03\x02__\x03\x02}}\x03\x02\x7F\x7F\x04\x02&&BB\x07\x02C\\c|\u0403" + "\u0403\u0412\u0451\u0453\u0453\n\x02/02;C\\aac|\u0403\u0403\u0412\u0451" + '\u0453\u0453\x03\x022;\x03\x0200\x05\x02\v\f\x0F\x0F""\x04\x02\f\f\x0F' + "\x0F\x02\u01BC\x02\x03\x03\x02\x02\x02\x02\x05\x03\x02\x02\x02\x02\x07" + "\x03\x02\x02\x02\x02\t\x03\x02\x02\x02\x02\v\x03\x02\x02\x02\x02\r\x03" + "\x02\x02\x02\x02\x0F\x03\x02\x02\x02\x02\x11\x03\x02\x02\x02\x02\x13\x03" + "\x02\x02\x02\x02\x15\x03\x02\x02\x02\x02\x17\x03\x02\x02\x02\x02\x19\x03" + "\x02\x02\x02\x02\x1B\x03\x02\x02\x02\x02\x1D\x03\x02\x02\x02\x02\x1F\x03" + "\x02\x02\x02\x02!\x03\x02\x02\x02\x02#\x03\x02\x02\x02\x02%\x03\x02\x02" + "\x02\x02'\x03\x02\x02\x02\x02)\x03\x02\x02\x02\x02+\x03\x02\x02\x02\x02" + "-\x03\x02\x02\x02\x02/\x03\x02\x02\x02\x021\x03\x02\x02\x02\x023\x03\x02" + "\x02\x02\x025\x03\x02\x02\x02\x027\x03\x02\x02\x02\x029\x03\x02\x02\x02" + "\x02;\x03\x02\x02\x02\x02=\x03\x02\x02\x02\x02?\x03\x02\x02\x02\x02A\x03" + "\x02\x02\x02\x02C\x03\x02\x02\x02\x02E\x03\x02\x02\x02\x02G\x03\x02\x02" + "\x02\x02I\x03\x02\x02\x02\x02K\x03\x02\x02\x02\x02M\x03\x02\x02\x02\x02" + "O\x03\x02\x02\x02\x02Q\x03\x02\x02\x02\x02S\x03\x02\x02\x02\x02U\x03\x02" + "\x02\x02\x02W\x03\x02\x02\x02\x02Y\x03\x02\x02\x02\x02[\x03\x02\x02\x02" + "\x02]\x03\x02\x02\x02\x02_\x03\x02\x02\x02\x02a\x03\x02\x02\x02\x02c\x03" + "\x02\x02\x02\x02e\x03\x02\x02\x02\x02w\x03\x02\x02\x02\x02y\x03\x02\x02" + "\x02\x02{\x03\x02\x02\x02\x02}\x03\x02\x02\x02\x02\x7F\x03\x02\x02\x02" + "\x02\x81\x03\x02\x02\x02\x02\x83\x03\x02\x02\x02\x03\x85\x03\x02\x02\x02" + "\x05\x88\x03\x02\x02\x02\x07\x94\x03\x02\x02\x02\t\x9C\x03\x02\x02\x02" + "\v\xA5\x03\x02\x02\x02\r\xAC\x03\x02\x02\x02\x0F\xB1\x03\x02\x02\x02\x11" + "\xB3\x03\x02\x02\x02\x13\xB5\x03\x02\x02\x02\x15\xB9\x03\x02\x02\x02\x17" + "\xBB\x03\x02\x02\x02\x19\xBD\x03\x02\x02\x02\x1B\xC1\x03\x02\x02\x02\x1D" + "\xC3\x03\x02\x02\x02\x1F\xC6\x03\x02\x02\x02!\xC8\x03\x02\x02\x02#\xCB" + "\x03\x02\x02\x02%\xCE\x03\x02\x02\x02'\xD1\x03\x02\x02\x02)\xD3\x03\x02" + "\x02\x02+\xD6\x03\x02\x02\x02-\xD8\x03\x02\x02\x02/\xDC\x03\x02\x02\x02" + "1\xDF\x03\x02\x02\x023\xE3\x03\x02\x02\x025\xE5\x03\x02\x02\x027\xE7\x03" + "\x02\x02\x029\xE9\x03\x02\x02\x02;\xEB\x03\x02\x02\x02=\xF2\x03\x02\x02" + "\x02?\xF8\x03\x02\x02\x02A\xFE\x03\x02\x02\x02C\u0100\x03\x02\x02\x02" + "E\u0102\x03\x02\x02\x02G\u0104\x03\x02\x02\x02I\u0106\x03\x02\x02\x02" + "K\u0108\x03\x02\x02\x02M\u010A\x03\x02\x02\x02O\u010C\x03\x02\x02\x02" + "Q\u010E\x03\x02\x02\x02S\u0111\x03\x02\x02\x02U\u0116\x03\x02\x02\x02" + "W\u011C\x03\x02\x02\x02Y\u0124\x03\x02\x02\x02[\u012A\x03\x02\x02\x02" + "]\u012F\x03\x02\x02\x02_\u0131\x03\x02\x02\x02a\u0135\x03\x02\x02\x02" + "c\u0137\x03\x02\x02\x02e\u013B\x03\x02\x02\x02g\u013F\x03\x02\x02\x02" + "i\u0141\x03\x02\x02\x02k\u0146\x03\x02\x02\x02m\u014C\x03\x02\x02\x02" + "o\u014F\x03\x02\x02\x02q\u0151\x03\x02\x02\x02s\u0155\x03\x02\x02\x02" + "u\u015E\x03\x02\x02\x02w\u0168\x03\x02\x02\x02y\u0171\x03\x02\x02\x02" + "{\u017B\x03\x02\x02\x02}\u018C\x03\x02\x02\x02\x7F\u0195\x03\x02\x02\x02" + "\x81\u0199\x03\x02\x02\x02\x83\u01A7\x03\x02\x02\x02\x85\x86\x057\x1C" + "\x02\x86\x87\x057\x1C\x02\x87\x04\x03\x02\x02\x02\x88\x89\x07i\x02\x02" + "\x89\x8A\x07g\x02\x02\x8A\x8B\x07v\x02\x02\x8B\x8C\x07R\x02\x02\x8C\x8D" + "\x07t\x02\x02\x8D\x8E\x07q\x02\x02\x8E\x8F\x07r\x02\x02\x8F\x90\x07g\x02" + "\x02\x90\x91\x07t\x02\x02\x91\x92\x07v\x02\x02\x92\x93\x07{\x02\x02\x93" + "\x06\x03\x02\x02\x02\x94\x95\x07f\x02\x02\x95\x96\x07g\x02\x02\x96\x97" + "\x07e\x02\x02\x97\x98\x07k\x02\x02\x98\x99\x07o\x02\x02\x99\x9A\x07c\x02" + "\x02\x9A\x9B\x07n\x02\x02\x9B\b\x03\x02\x02\x02\x9C\x9D\x07h\x02\x02\x9D" + "\x9E\x07t\x02\x02\x9E\x9F\x07c\x02\x02\x9F\xA0\x07e\x02\x02\xA0\xA1\x07" + "v\x02\x02\xA1\xA2\x07k\x02\x02\xA2\xA3\x07q\x02\x02\xA3\xA4\x07p\x02\x02" + "\xA4\n\x03\x02\x02\x02\xA5\xA6\x07u\x02\x02\xA6\xA7\x07v\x02\x02\xA7\xA8" + "\x07t\x02\x02\xA8\xA9\x07k\x02\x02\xA9\xAA\x07p\x02\x02\xAA\xAB\x07i\x02" + "\x02\xAB\f\x03\x02\x02\x02\xAC\xAD\x07f\x02\x02\xAD\xAE\x07c\x02\x02\xAE" + "\xAF\x07v\x02\x02\xAF\xB0\x07g\x02\x02\xB0\x0E\x03\x02\x02\x02\xB1\xB2" + "\x07'\x02\x02\xB2\x10\x03\x02\x02\x02\xB3\xB4\x07,\x02\x02\xB4\x12\x03" + '\x02\x02\x02\xB5\xB6\x07"\x02\x02\xB6\xB7\x071\x02\x02\xB7\xB8\x07"' + "\x02\x02\xB8\x14\x03\x02\x02\x02\xB9\xBA\x07-\x02\x02\xBA\x16\x03\x02" + "\x02\x02\xBB\xBC\x07/\x02\x02\xBC\x18\x03\x02\x02\x02\xBD\xBE\x07?\x02" + "\x02\xBE\xBF\x07?\x02\x02\xBF\xC0\x07?\x02\x02\xC0\x1A\x03\x02\x02\x02" + "\xC1\xC2\x07@\x02\x02\xC2\x1C\x03\x02\x02\x02\xC3\xC4\x07@\x02\x02\xC4" + "\xC5\x07?\x02\x02\xC5\x1E\x03\x02\x02\x02\xC6\xC7\x07>\x02\x02\xC7 \x03" + '\x02\x02\x02\xC8\xC9\x07>\x02\x02\xC9\xCA\x07?\x02\x02\xCA"\x03\x02\x02' + "\x02\xCB\xCC\x07?\x02\x02\xCC\xCD\x07?\x02\x02\xCD$\x03\x02\x02\x02\xCE" + "\xCF\x07#\x02\x02\xCF\xD0\x07?\x02\x02\xD0&\x03\x02\x02\x02\xD1\xD2\x07" + "?\x02\x02\xD2(\x03\x02\x02\x02\xD3\xD4\x07c\x02\x02\xD4\xD5\x07u\x02\x02" + "\xD5*\x03\x02\x02\x02\xD6\xD7\x07%\x02\x02\xD7,\x03\x02\x02\x02\xD8\xD9" + "\x07x\x02\x02\xD9\xDA\x07c\x02\x02\xDA\xDB\x07t\x02\x02\xDB.\x03\x02\x02" + "\x02\xDC\xDD\x07k\x02\x02\xDD\xDE\x07p\x02\x02\xDE0\x03\x02\x02\x02\xDF" + '\xE0\x07"\x02\x02\xE0\xE1\x07<\x02\x02\xE1\xE2\x07"\x02\x02\xE22\x03' + "\x02\x02\x02\xE3\xE4\x07<\x02\x02\xE44\x03\x02\x02\x02\xE5\xE6\x07.\x02" + "\x02\xE66\x03\x02\x02\x02\xE7\xE8\x070\x02\x02\xE88\x03\x02\x02\x02\xE9" + "\xEA\x07B\x02\x02\xEA:\x03\x02\x02\x02\xEB\xEC\x07&\x02\x02\xEC<\x03\x02" + "\x02\x02\xED\xEE\x07c\x02\x02\xEE\xEF\x07p\x02\x02\xEF\xF3\x07f\x02\x02" + "\xF0\xF1\x07(\x02\x02\xF1\xF3\x07(\x02\x02\xF2\xED\x03\x02\x02\x02\xF2" + "\xF0\x03\x02\x02\x02\xF3>\x03\x02\x02\x02\xF4\xF5\x07q\x02\x02\xF5\xF9" + "\x07t\x02\x02\xF6\xF7\x07~\x02\x02\xF7\xF9\x07~\x02\x02\xF8\xF4\x03\x02" + "\x02\x02\xF8\xF6\x03\x02\x02\x02\xF9@\x03\x02\x02\x02\xFA\xFB\x07p\x02" + "\x02\xFB\xFC\x07q\x02\x02\xFC\xFF\x07v\x02\x02\xFD\xFF\x07#\x02\x02\xFE" + "\xFA\x03\x02\x02\x02\xFE\xFD\x03\x02\x02\x02\xFFB\x03\x02\x02\x02\u0100" + "\u0101\x07*\x02\x02\u0101D\x03\x02\x02\x02\u0102\u0103\x07+\x02\x02\u0103" + "F\x03\x02\x02\x02\u0104\u0105\x07]\x02\x02\u0105H\x03\x02\x02\x02\u0106" + "\u0107\x07_\x02\x02\u0107J\x03\x02\x02\x02\u0108\u0109\x07}\x02\x02\u0109" + "L\x03\x02\x02\x02\u010A\u010B\x07\x7F\x02\x02\u010BN\x03\x02\x02\x02\u010C" + "\u010D\x071\x02\x02\u010DP\x03\x02\x02\x02\u010E\u010F\x07k\x02\x02\u010F" + "\u0110\x07h\x02\x02\u0110R\x03\x02\x02\x02\u0111\u0112\x07g\x02\x02\u0112" + "\u0113\x07n\x02\x02\u0113\u0114\x07u\x02\x02\u0114\u0115\x07g\x02\x02" + "\u0115T\x03\x02\x02\x02\u0116\u0117\x07G\x02\x02\u0117\u0118\x07t\x02" + "\x02\u0118\u0119\x07t\x02\x02\u0119\u011A\x07q\x02\x02\u011A\u011B\x07" + "t\x02\x02\u011BV\x03\x02\x02\x02\u011C\u011D\x07Y\x02\x02\u011D\u011E" + "\x07c\x02\x02\u011E\u011F\x07t\x02\x02\u011F\u0120\x07p\x02\x02\u0120" + "\u0121\x07k\x02\x02\u0121\u0122\x07p\x02\x02\u0122\u0123\x07i\x02\x02" + "\u0123X\x03\x02\x02\x02\u0124\u0125\x07e\x02\x02\u0125\u0126\x07j\x02" + "\x02\u0126\u0127\x07g\x02\x02\u0127\u0128\x07e\x02\x02\u0128\u0129\x07" + "m\x02\x02\u0129Z\x03\x02\x02\x02\u012A\u012B\x07y\x02\x02\u012B\u012C" + "\x07k\x02\x02\u012C\u012D\x07v\x02\x02\u012D\u012E\x07j\x02\x02\u012E" + "\\\x03\x02\x02\x02\u012F\u0130\x07=\x02\x02\u0130^\x03\x02\x02\x02\u0131" + "\u0132\x07A\x02\x02\u0132`\x03\x02\x02\x02\u0133\u0136\x05c2\x02\u0134" + "\u0136\x05e3\x02\u0135\u0133\x03\x02\x02\x02\u0135\u0134\x03\x02\x02\x02" + "\u0136b\x03\x02\x02\x02\u0137\u0138\x05g4\x02\u0138\u0139\x05k6\x02\u0139" + "\u013A\x05g4\x02\u013Ad\x03\x02\x02\x02\u013B\u013C\x05i5\x02\u013C\u013D" + "\x05m7\x02\u013D\u013E\x05i5\x02\u013Ef\x03\x02\x02\x02\u013F\u0140\x07" + ")\x02\x02\u0140h\x03\x02\x02\x02\u0141\u0142\x07$\x02\x02\u0142j\x03\x02" + "\x02\x02\u0143\u0145\n\x02\x02\x02\u0144\u0143\x03\x02\x02\x02\u0145\u0148" + "\x03\x02\x02\x02\u0146\u0144\x03\x02\x02\x02\u0146\u0147\x03\x02\x02\x02" + "\u0147l\x03\x02\x02\x02\u0148\u0146\x03\x02\x02\x02\u0149\u014B\n\x03" + "\x02\x02\u014A\u0149\x03\x02\x02\x02\u014B\u014E\x03\x02\x02\x02\u014C" + "\u014A\x03\x02\x02\x02\u014C\u014D\x03\x02\x02\x02\u014Dn\x03\x02\x02" + "\x02\u014E\u014C\x03\x02\x02\x02\u014F\u0150\x07b\x02\x02\u0150p\x03\x02" + "\x02\x02\u0151\u0152\x05o8\x02\u0152\u0153\x05o8\x02\u0153\u0154\x05o" + "8\x02\u0154r\x03\x02\x02\x02\u0155\u0159\t\x04\x02\x02\u0156\u0158\n\x05" + "\x02\x02\u0157\u0156\x03\x02\x02\x02\u0158\u015B\x03\x02\x02\x02\u0159" + "\u0157\x03\x02\x02\x02\u0159\u015A\x03\x02\x02\x02\u015A\u015C\x03\x02" + "\x02\x02\u015B\u0159\x03\x02\x02\x02\u015C\u015D\t\x05\x02\x02\u015Dt" + "\x03\x02\x02\x02\u015E\u0162\t\x06\x02\x02\u015F\u0161\n\x07\x02\x02\u0160" + "\u015F\x03\x02\x02\x02\u0161\u0164\x03\x02\x02\x02\u0162\u0160\x03\x02" + "\x02\x02\u0162\u0163\x03\x02\x02\x02\u0163\u0165\x03\x02\x02\x02\u0164" + "\u0162\x03\x02\x02\x02\u0165\u0166\t\x07\x02\x02\u0166v\x03\x02\x02\x02" + "\u0167\u0169\t\b\x02\x02\u0168\u0167\x03\x02\x02\x02\u0168\u0169\x03\x02" + "\x02\x02\u0169\u016A\x03\x02\x02\x02\u016A\u016E\t\t\x02\x02\u016B\u016D" + "\t\n\x02\x02\u016C\u016B\x03\x02\x02\x02\u016D\u0170\x03\x02\x02\x02\u016E" + "\u016C\x03\x02\x02\x02\u016E\u016F\x03\x02\x02\x02\u016Fx\x03\x02\x02" + "\x02\u0170\u016E\x03\x02\x02\x02\u0171\u0173\x05w<\x02\u0172\u0174\x05" + "s:\x02\u0173\u0172\x03\x02\x02\x02\u0173\u0174\x03\x02\x02\x02\u0174\u0176" + "\x03\x02\x02\x02\u0175\u0177\x05u;\x02\u0176\u0175\x03\x02\x02\x02\u0176" + "\u0177\x03\x02\x02\x02\u0177z\x03\x02\x02\x02\u0178\u017A\x05\x17\f\x02" + "\u0179\u0178\x03\x02\x02\x02\u017A\u017D\x03\x02\x02\x02\u017B\u0179\x03" + "\x02\x02\x02\u017B\u017C\x03\x02\x02\x02\u017C\u017F\x03\x02\x02\x02\u017D" + "\u017B\x03\x02\x02\x02\u017E\u0180\t\v\x02\x02\u017F\u017E\x03\x02\x02" + "\x02\u0180\u0181\x03\x02\x02\x02\u0181\u017F\x03\x02\x02\x02\u0181\u0182" + "\x03\x02\x02\x02\u0182\u0184\x03\x02\x02\x02\u0183\u0185\t\f\x02\x02\u0184" + "\u0183\x03\x02\x02\x02\u0184\u0185\x03\x02\x02\x02\u0185\u0189\x03\x02" + "\x02\x02\u0186\u0188\t\v\x02\x02\u0187\u0186\x03\x02\x02\x02\u0188\u018B" + "\x03\x02\x02\x02\u0189\u0187\x03\x02\x02\x02\u0189\u018A\x03\x02\x02\x02" + "\u018A|\x03\x02\x02\x02\u018B\u0189\x03\x02\x02\x02\u018C\u0190\x05q9" + "\x02\u018D\u018F\v\x02\x02\x02\u018E\u018D\x03\x02\x02\x02\u018F\u0192" + "\x03\x02\x02\x02\u0190\u0191\x03\x02\x02\x02\u0190\u018E\x03\x02\x02\x02" + "\u0191\u0193\x03\x02\x02\x02\u0192\u0190\x03\x02\x02\x02\u0193\u0194\x05" + "q9\x02\u0194~\x03\x02\x02\x02\u0195\u0196\t\r\x02\x02\u0196\u0197\x03" + "\x02\x02\x02\u0197\u0198\b@\x02\x02\u0198\x80\x03\x02\x02\x02\u0199\u019A" + "\x071\x02\x02\u019A\u019B\x07,\x02\x02\u019B\u019F\x03\x02\x02\x02\u019C" + "\u019E\v\x02\x02\x02\u019D\u019C\x03\x02\x02\x02\u019E\u01A1\x03\x02\x02" + "\x02\u019F\u01A0\x03\x02\x02\x02\u019F\u019D\x03\x02\x02\x02\u01A0\u01A2" + "\x03\x02\x02\x02\u01A1\u019F\x03\x02\x02\x02\u01A2\u01A3\x07,\x02\x02" + "\u01A3\u01A4\x071\x02\x02\u01A4\u01A5\x03\x02\x02\x02\u01A5\u01A6\bA\x02" + "\x02\u01A6\x82\x03\x02\x02\x02\u01A7\u01A8\x071\x02\x02\u01A8\u01A9\x07" + "1\x02\x02\u01A9\u01AD\x03\x02\x02\x02\u01AA\u01AC\n\x0E\x02\x02\u01AB" + "\u01AA\x03\x02\x02\x02\u01AC\u01AF\x03\x02\x02\x02\u01AD\u01AB\x03\x02" + "\x02\x02\u01AD\u01AE\x03\x02\x02\x02\u01AE\u01B0\x03\x02\x02\x02\u01AF" + "\u01AD\x03\x02\x02\x02\u01B0\u01B1\bB\x02\x02\u01B1\x84\x03\x02\x02\x02" + "\x16\x02\xF2\xF8\xFE\u0135\u0146\u014C\u0159\u0162\u0168\u016E\u0173\u0176" + "\u017B\u0181\u0184\u0189\u0190\u019F\u01AD\x03\b\x02\x02";
116216
116210
  KCLangLexer.__ATN = void 0;
116217
116211
 
116218
116212
  /***/ }),
@@ -116229,9 +116223,9 @@ __webpack_require__.r(__webpack_exports__);
116229
116223
  /* harmony export */ "KCLangParser": () => (/* binding */ KCLangParser),
116230
116224
  /* harmony export */ "KclangContext": () => (/* binding */ KclangContext),
116231
116225
  /* harmony export */ "GlobalDefinitionContext": () => (/* binding */ GlobalDefinitionContext),
116226
+ /* harmony export */ "StatementContext": () => (/* binding */ StatementContext),
116232
116227
  /* harmony export */ "InBlockContext": () => (/* binding */ InBlockContext),
116233
116228
  /* harmony export */ "InBlockItemContext": () => (/* binding */ InBlockItemContext),
116234
- /* harmony export */ "StatementContext": () => (/* binding */ StatementContext),
116235
116229
  /* harmony export */ "GlobalVariableContext": () => (/* binding */ GlobalVariableContext),
116236
116230
  /* harmony export */ "PropertyVariableContext": () => (/* binding */ PropertyVariableContext),
116237
116231
  /* harmony export */ "PropertyExpressionContext": () => (/* binding */ PropertyExpressionContext),
@@ -116239,21 +116233,21 @@ __webpack_require__.r(__webpack_exports__);
116239
116233
  /* harmony export */ "IfStatementContext": () => (/* binding */ IfStatementContext),
116240
116234
  /* harmony export */ "IfPartContext": () => (/* binding */ IfPartContext),
116241
116235
  /* harmony export */ "ElsePartContext": () => (/* binding */ ElsePartContext),
116236
+ /* harmony export */ "LabelContext": () => (/* binding */ LabelContext),
116242
116237
  /* harmony export */ "BodyContext": () => (/* binding */ BodyContext),
116243
116238
  /* harmony export */ "VarNameContext": () => (/* binding */ VarNameContext),
116244
116239
  /* harmony export */ "CheckContext": () => (/* binding */ CheckContext),
116245
116240
  /* harmony export */ "WithBlockContext": () => (/* binding */ WithBlockContext),
116246
116241
  /* harmony export */ "FormulaContext": () => (/* binding */ FormulaContext),
116247
116242
  /* harmony export */ "ExpressionContext": () => (/* binding */ ExpressionContext),
116248
- /* harmony export */ "OneOfContext": () => (/* binding */ OneOfContext),
116249
116243
  /* harmony export */ "CompositionContext": () => (/* binding */ CompositionContext),
116250
116244
  /* harmony export */ "SummationContext": () => (/* binding */ SummationContext),
116251
116245
  /* harmony export */ "ComparisonContext": () => (/* binding */ ComparisonContext),
116252
116246
  /* harmony export */ "AndContext": () => (/* binding */ AndContext),
116253
116247
  /* harmony export */ "OrContext": () => (/* binding */ OrContext),
116254
116248
  /* harmony export */ "TernaryContext": () => (/* binding */ TernaryContext),
116249
+ /* harmony export */ "OneOfContext": () => (/* binding */ OneOfContext),
116255
116250
  /* harmony export */ "UnaryContext": () => (/* binding */ UnaryContext),
116256
- /* harmony export */ "LabelContext": () => (/* binding */ LabelContext),
116257
116251
  /* harmony export */ "UnaryExpressionContext": () => (/* binding */ UnaryExpressionContext),
116258
116252
  /* harmony export */ "ConstContext": () => (/* binding */ ConstContext),
116259
116253
  /* harmony export */ "PathOrVarWithTypeContext": () => (/* binding */ PathOrVarWithTypeContext),
@@ -116451,44 +116445,43 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
116451
116445
  } // @RuleVersion(0)
116452
116446
 
116453
116447
 
116454
- inBlock() {
116455
- let _localctx = new InBlockContext(this._ctx, this.state);
116456
-
116457
- this.enterRule(_localctx, 4, KCLangParser.RULE_inBlock);
116448
+ statement() {
116449
+ let _localctx = new StatementContext(this._ctx, this.state);
116458
116450
 
116459
- let _la;
116451
+ this.enterRule(_localctx, 4, KCLangParser.RULE_statement);
116460
116452
 
116461
116453
  try {
116462
- this.enterOuterAlt(_localctx, 1);
116463
- {
116464
- this.state = 91;
116465
- this.match(KCLangParser.IN);
116466
- this.state = 92;
116467
- this.path();
116468
- this.state = 93;
116469
- this.match(KCLangParser.LBRACE);
116470
- this.state = 97;
116454
+ this.state = 94;
116471
116455
 
116472
- this._errHandler.sync(this);
116473
-
116474
- _la = this._input.LA(1);
116456
+ this._errHandler.sync(this);
116475
116457
 
116476
- while ((_la - 22 & ~0x1F) === 0 && (1 << _la - 22 & (1 << KCLangParser.VAR - 22 | 1 << KCLangParser.IN - 22 | 1 << KCLangParser.IF - 22 | 1 << KCLangParser.CHECK - 22)) !== 0) {
116458
+ switch (this._input.LA(1)) {
116459
+ case KCLangParser.CHECK:
116460
+ this.enterOuterAlt(_localctx, 1);
116477
116461
  {
116478
- {
116479
- this.state = 94;
116480
- this.inBlockItem();
116481
- }
116462
+ this.state = 91;
116463
+ this.check();
116482
116464
  }
116483
- this.state = 99;
116465
+ break;
116484
116466
 
116485
- this._errHandler.sync(this);
116467
+ case KCLangParser.IF:
116468
+ this.enterOuterAlt(_localctx, 2);
116469
+ {
116470
+ this.state = 92;
116471
+ this.ifStatement();
116472
+ }
116473
+ break;
116486
116474
 
116487
- _la = this._input.LA(1);
116488
- }
116475
+ case KCLangParser.VAR:
116476
+ this.enterOuterAlt(_localctx, 3);
116477
+ {
116478
+ this.state = 93;
116479
+ this.localVariable();
116480
+ }
116481
+ break;
116489
116482
 
116490
- this.state = 100;
116491
- this.match(KCLangParser.RBRACE);
116483
+ default:
116484
+ throw new antlr4ts_NoViableAltException__WEBPACK_IMPORTED_MODULE_3__.NoViableAltException(this);
116492
116485
  }
116493
116486
  } catch (re) {
116494
116487
  if (re instanceof antlr4ts_RecognitionException__WEBPACK_IMPORTED_MODULE_7__.RecognitionException) {
@@ -116508,37 +116501,44 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
116508
116501
  } // @RuleVersion(0)
116509
116502
 
116510
116503
 
116511
- inBlockItem() {
116512
- let _localctx = new InBlockItemContext(this._ctx, this.state);
116504
+ inBlock() {
116505
+ let _localctx = new InBlockContext(this._ctx, this.state);
116506
+
116507
+ this.enterRule(_localctx, 6, KCLangParser.RULE_inBlock);
116513
116508
 
116514
- this.enterRule(_localctx, 6, KCLangParser.RULE_inBlockItem);
116509
+ let _la;
116515
116510
 
116516
116511
  try {
116517
- this.state = 104;
116512
+ this.enterOuterAlt(_localctx, 1);
116513
+ {
116514
+ this.state = 96;
116515
+ this.match(KCLangParser.IN);
116516
+ this.state = 97;
116517
+ this.path();
116518
+ this.state = 98;
116519
+ this.match(KCLangParser.LBRACE);
116520
+ this.state = 102;
116518
116521
 
116519
- this._errHandler.sync(this);
116522
+ this._errHandler.sync(this);
116520
116523
 
116521
- switch (this._input.LA(1)) {
116522
- case KCLangParser.IN:
116523
- this.enterOuterAlt(_localctx, 1);
116524
- {
116525
- this.state = 102;
116526
- this.inBlock();
116527
- }
116528
- break;
116524
+ _la = this._input.LA(1);
116529
116525
 
116530
- case KCLangParser.VAR:
116531
- case KCLangParser.IF:
116532
- case KCLangParser.CHECK:
116533
- this.enterOuterAlt(_localctx, 2);
116526
+ while ((_la - 22 & ~0x1f) === 0 && (1 << _la - 22 & (1 << KCLangParser.VAR - 22 | 1 << KCLangParser.IN - 22 | 1 << KCLangParser.IF - 22 | 1 << KCLangParser.CHECK - 22)) !== 0) {
116534
116527
  {
116535
- this.state = 103;
116536
- this.statement();
116528
+ {
116529
+ this.state = 99;
116530
+ this.inBlockItem();
116531
+ }
116537
116532
  }
116538
- break;
116533
+ this.state = 104;
116539
116534
 
116540
- default:
116541
- throw new antlr4ts_NoViableAltException__WEBPACK_IMPORTED_MODULE_3__.NoViableAltException(this);
116535
+ this._errHandler.sync(this);
116536
+
116537
+ _la = this._input.LA(1);
116538
+ }
116539
+
116540
+ this.state = 105;
116541
+ this.match(KCLangParser.RBRACE);
116542
116542
  }
116543
116543
  } catch (re) {
116544
116544
  if (re instanceof antlr4ts_RecognitionException__WEBPACK_IMPORTED_MODULE_7__.RecognitionException) {
@@ -116558,10 +116558,10 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
116558
116558
  } // @RuleVersion(0)
116559
116559
 
116560
116560
 
116561
- statement() {
116562
- let _localctx = new StatementContext(this._ctx, this.state);
116561
+ inBlockItem() {
116562
+ let _localctx = new InBlockItemContext(this._ctx, this.state);
116563
116563
 
116564
- this.enterRule(_localctx, 8, KCLangParser.RULE_statement);
116564
+ this.enterRule(_localctx, 8, KCLangParser.RULE_inBlockItem);
116565
116565
 
116566
116566
  try {
116567
116567
  this.state = 109;
@@ -116569,27 +116569,21 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
116569
116569
  this._errHandler.sync(this);
116570
116570
 
116571
116571
  switch (this._input.LA(1)) {
116572
- case KCLangParser.CHECK:
116572
+ case KCLangParser.IN:
116573
116573
  this.enterOuterAlt(_localctx, 1);
116574
- {
116575
- this.state = 106;
116576
- this.check();
116577
- }
116578
- break;
116579
-
116580
- case KCLangParser.IF:
116581
- this.enterOuterAlt(_localctx, 2);
116582
116574
  {
116583
116575
  this.state = 107;
116584
- this.ifStatement();
116576
+ this.inBlock();
116585
116577
  }
116586
116578
  break;
116587
116579
 
116588
116580
  case KCLangParser.VAR:
116589
- this.enterOuterAlt(_localctx, 3);
116581
+ case KCLangParser.IF:
116582
+ case KCLangParser.CHECK:
116583
+ this.enterOuterAlt(_localctx, 2);
116590
116584
  {
116591
116585
  this.state = 108;
116592
- this.localVariable();
116586
+ this.statement();
116593
116587
  }
116594
116588
  break;
116595
116589
 
@@ -116883,17 +116877,66 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
116883
116877
  } // @RuleVersion(0)
116884
116878
 
116885
116879
 
116880
+ label() {
116881
+ let _localctx = new LabelContext(this._ctx, this.state);
116882
+
116883
+ this.enterRule(_localctx, 24, KCLangParser.RULE_label);
116884
+
116885
+ try {
116886
+ this.state = 153;
116887
+
116888
+ this._errHandler.sync(this);
116889
+
116890
+ switch (this.interpreter.adaptivePredict(this._input, 7, this._ctx)) {
116891
+ case 1:
116892
+ this.enterOuterAlt(_localctx, 1);
116893
+ {
116894
+ this.state = 149;
116895
+ this.match(KCLangParser.NAME);
116896
+ this.state = 150;
116897
+ this.match(KCLangParser.COLON);
116898
+ }
116899
+ break;
116900
+
116901
+ case 2:
116902
+ this.enterOuterAlt(_localctx, 2);
116903
+ {
116904
+ this.state = 151;
116905
+ this.match(KCLangParser.NAME);
116906
+ this.state = 152;
116907
+ this.match(KCLangParser.HASH);
116908
+ }
116909
+ break;
116910
+ }
116911
+ } catch (re) {
116912
+ if (re instanceof antlr4ts_RecognitionException__WEBPACK_IMPORTED_MODULE_7__.RecognitionException) {
116913
+ _localctx.exception = re;
116914
+
116915
+ this._errHandler.reportError(this, re);
116916
+
116917
+ this._errHandler.recover(this, re);
116918
+ } else {
116919
+ throw re;
116920
+ }
116921
+ } finally {
116922
+ this.exitRule();
116923
+ }
116924
+
116925
+ return _localctx;
116926
+ } // @RuleVersion(0)
116927
+
116928
+
116886
116929
  body() {
116887
116930
  let _localctx = new BodyContext(this._ctx, this.state);
116888
116931
 
116889
- this.enterRule(_localctx, 24, KCLangParser.RULE_body);
116932
+ this.enterRule(_localctx, 26, KCLangParser.RULE_body);
116890
116933
 
116891
116934
  let _la;
116892
116935
 
116893
116936
  try {
116894
116937
  this.enterOuterAlt(_localctx, 1);
116895
116938
  {
116896
- this.state = 158;
116939
+ this.state = 164;
116897
116940
 
116898
116941
  this._errHandler.sync(this);
116899
116942
 
@@ -116901,29 +116944,29 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
116901
116944
  case KCLangParser.LBRACE:
116902
116945
  {
116903
116946
  {
116904
- this.state = 149;
116947
+ this.state = 155;
116905
116948
  this.match(KCLangParser.LBRACE);
116906
- this.state = 153;
116949
+ this.state = 159;
116907
116950
 
116908
116951
  this._errHandler.sync(this);
116909
116952
 
116910
116953
  _la = this._input.LA(1);
116911
116954
 
116912
- while ((_la - 22 & ~0x1F) === 0 && (1 << _la - 22 & (1 << KCLangParser.VAR - 22 | 1 << KCLangParser.IF - 22 | 1 << KCLangParser.CHECK - 22)) !== 0) {
116955
+ while ((_la - 22 & ~0x1f) === 0 && (1 << _la - 22 & (1 << KCLangParser.VAR - 22 | 1 << KCLangParser.IF - 22 | 1 << KCLangParser.CHECK - 22)) !== 0) {
116913
116956
  {
116914
116957
  {
116915
- this.state = 150;
116958
+ this.state = 156;
116916
116959
  this.statement();
116917
116960
  }
116918
116961
  }
116919
- this.state = 155;
116962
+ this.state = 161;
116920
116963
 
116921
116964
  this._errHandler.sync(this);
116922
116965
 
116923
116966
  _la = this._input.LA(1);
116924
116967
  }
116925
116968
 
116926
- this.state = 156;
116969
+ this.state = 162;
116927
116970
  this.match(KCLangParser.RBRACE);
116928
116971
  }
116929
116972
  }
@@ -116933,7 +116976,7 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
116933
116976
  case KCLangParser.IF:
116934
116977
  case KCLangParser.CHECK:
116935
116978
  {
116936
- this.state = 157;
116979
+ this.state = 163;
116937
116980
  this.statement();
116938
116981
  }
116939
116982
  break;
@@ -116963,12 +117006,12 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
116963
117006
  varName() {
116964
117007
  let _localctx = new VarNameContext(this._ctx, this.state);
116965
117008
 
116966
- this.enterRule(_localctx, 26, KCLangParser.RULE_varName);
117009
+ this.enterRule(_localctx, 28, KCLangParser.RULE_varName);
116967
117010
 
116968
117011
  try {
116969
117012
  this.enterOuterAlt(_localctx, 1);
116970
117013
  {
116971
- this.state = 160;
117014
+ this.state = 166;
116972
117015
  this.match(KCLangParser.NAME);
116973
117016
  }
116974
117017
  } catch (re) {
@@ -116992,36 +117035,36 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
116992
117035
  check() {
116993
117036
  let _localctx = new CheckContext(this._ctx, this.state);
116994
117037
 
116995
- this.enterRule(_localctx, 28, KCLangParser.RULE_check);
117038
+ this.enterRule(_localctx, 30, KCLangParser.RULE_check);
116996
117039
 
116997
117040
  let _la;
116998
117041
 
116999
117042
  try {
117000
117043
  this.enterOuterAlt(_localctx, 1);
117001
117044
  {
117002
- this.state = 162;
117045
+ this.state = 168;
117003
117046
  this.match(KCLangParser.CHECK);
117004
- this.state = 165;
117047
+ this.state = 171;
117005
117048
 
117006
117049
  this._errHandler.sync(this);
117007
117050
 
117008
- switch (this.interpreter.adaptivePredict(this._input, 9, this._ctx)) {
117051
+ switch (this.interpreter.adaptivePredict(this._input, 10, this._ctx)) {
117009
117052
  case 1:
117010
117053
  {
117011
- this.state = 163;
117054
+ this.state = 169;
117012
117055
  this.formula();
117013
117056
  }
117014
117057
  break;
117015
117058
 
117016
117059
  case 2:
117017
117060
  {
117018
- this.state = 164;
117061
+ this.state = 170;
117019
117062
  this.expression(0);
117020
117063
  }
117021
117064
  break;
117022
117065
  }
117023
117066
 
117024
- this.state = 170;
117067
+ this.state = 176;
117025
117068
 
117026
117069
  this._errHandler.sync(this);
117027
117070
 
@@ -117030,18 +117073,18 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117030
117073
  while (_la === KCLangParser.WITH) {
117031
117074
  {
117032
117075
  {
117033
- this.state = 167;
117076
+ this.state = 173;
117034
117077
  this.withBlock();
117035
117078
  }
117036
117079
  }
117037
- this.state = 172;
117080
+ this.state = 178;
117038
117081
 
117039
117082
  this._errHandler.sync(this);
117040
117083
 
117041
117084
  _la = this._input.LA(1);
117042
117085
  }
117043
117086
 
117044
- this.state = 173;
117087
+ this.state = 179;
117045
117088
  this.match(KCLangParser.SEMICOLON);
117046
117089
  }
117047
117090
  } catch (re) {
@@ -117065,16 +117108,16 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117065
117108
  withBlock() {
117066
117109
  let _localctx = new WithBlockContext(this._ctx, this.state);
117067
117110
 
117068
- this.enterRule(_localctx, 30, KCLangParser.RULE_withBlock);
117111
+ this.enterRule(_localctx, 32, KCLangParser.RULE_withBlock);
117069
117112
 
117070
117113
  try {
117071
117114
  this.enterOuterAlt(_localctx, 1);
117072
117115
  {
117073
- this.state = 175;
117116
+ this.state = 181;
117074
117117
  this.match(KCLangParser.WITH);
117075
- this.state = 176;
117118
+ this.state = 182;
117076
117119
  this.match(KCLangParser.NAME);
117077
- this.state = 177;
117120
+ this.state = 183;
117078
117121
  this.match(KCLangParser.STRING);
117079
117122
  }
117080
117123
  } catch (re) {
@@ -117098,16 +117141,16 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117098
117141
  formula() {
117099
117142
  let _localctx = new FormulaContext(this._ctx, this.state);
117100
117143
 
117101
- this.enterRule(_localctx, 32, KCLangParser.RULE_formula);
117144
+ this.enterRule(_localctx, 34, KCLangParser.RULE_formula);
117102
117145
 
117103
117146
  try {
117104
117147
  this.enterOuterAlt(_localctx, 1);
117105
117148
  {
117106
- this.state = 179;
117149
+ this.state = 185;
117107
117150
  this.path();
117108
- this.state = 180;
117151
+ this.state = 186;
117109
117152
  this.match(KCLangParser.TEQ);
117110
- this.state = 181;
117153
+ this.state = 187;
117111
117154
  this.expression(0);
117112
117155
  }
117113
117156
  } catch (re) {
@@ -117140,15 +117183,15 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117140
117183
 
117141
117184
 
117142
117185
  let _prevctx = _localctx;
117143
- let _startState = 34;
117144
- this.enterRecursionRule(_localctx, 34, KCLangParser.RULE_expression, _p);
117186
+ let _startState = 36;
117187
+ this.enterRecursionRule(_localctx, 36, KCLangParser.RULE_expression, _p);
117145
117188
 
117146
117189
  try {
117147
117190
  let _alt;
117148
117191
 
117149
117192
  this.enterOuterAlt(_localctx, 1);
117150
117193
  {
117151
- this.state = 196;
117194
+ this.state = 202;
117152
117195
 
117153
117196
  this._errHandler.sync(this);
117154
117197
 
@@ -117158,20 +117201,20 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117158
117201
  _localctx = new TernaryContext(_localctx);
117159
117202
  this._ctx = _localctx;
117160
117203
  _prevctx = _localctx;
117161
- this.state = 184;
117204
+ this.state = 190;
117162
117205
  this.match(KCLangParser.IF);
117163
- this.state = 185;
117206
+ this.state = 191;
117164
117207
  this.match(KCLangParser.LPAREN);
117165
- this.state = 186;
117208
+ this.state = 192;
117166
117209
  this.expression(0);
117167
- this.state = 187;
117210
+ this.state = 193;
117168
117211
  this.match(KCLangParser.RPAREN);
117169
- this.state = 188;
117212
+ this.state = 194;
117170
117213
  this.expression(0);
117171
- this.state = 189;
117214
+ this.state = 195;
117172
117215
  this.match(KCLangParser.ELSE);
117173
- this.state = 190;
117174
- this.expression(2);
117216
+ this.state = 196;
117217
+ this.expression(3);
117175
117218
  }
117176
117219
  break;
117177
117220
 
@@ -117191,20 +117234,20 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117191
117234
  _localctx = new UnaryContext(_localctx);
117192
117235
  this._ctx = _localctx;
117193
117236
  _prevctx = _localctx;
117194
- this.state = 193;
117237
+ this.state = 199;
117195
117238
 
117196
117239
  this._errHandler.sync(this);
117197
117240
 
117198
- switch (this.interpreter.adaptivePredict(this._input, 11, this._ctx)) {
117241
+ switch (this.interpreter.adaptivePredict(this._input, 12, this._ctx)) {
117199
117242
  case 1:
117200
117243
  {
117201
- this.state = 192;
117244
+ this.state = 198;
117202
117245
  this.label();
117203
117246
  }
117204
117247
  break;
117205
117248
  }
117206
117249
 
117207
- this.state = 195;
117250
+ this.state = 201;
117208
117251
  this.unaryExpression();
117209
117252
  }
117210
117253
  break;
@@ -117214,11 +117257,11 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117214
117257
  }
117215
117258
 
117216
117259
  this._ctx._stop = this._input.tryLT(-1);
117217
- this.state = 227;
117260
+ this.state = 233;
117218
117261
 
117219
117262
  this._errHandler.sync(this);
117220
117263
 
117221
- _alt = this.interpreter.adaptivePredict(this._input, 14, this._ctx);
117264
+ _alt = this.interpreter.adaptivePredict(this._input, 15, this._ctx);
117222
117265
 
117223
117266
  while (_alt !== 2 && _alt !== antlr4ts_atn_ATN__WEBPACK_IMPORTED_MODULE_0__.ATN.INVALID_ALT_NUMBER) {
117224
117267
  if (_alt === 1) {
@@ -117228,25 +117271,25 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117228
117271
 
117229
117272
  _prevctx = _localctx;
117230
117273
  {
117231
- this.state = 225;
117274
+ this.state = 231;
117232
117275
 
117233
117276
  this._errHandler.sync(this);
117234
117277
 
117235
- switch (this.interpreter.adaptivePredict(this._input, 13, this._ctx)) {
117278
+ switch (this.interpreter.adaptivePredict(this._input, 14, this._ctx)) {
117236
117279
  case 1:
117237
117280
  {
117238
117281
  _localctx = new CompositionContext(new ExpressionContext(_parentctx, _parentState));
117239
117282
  this.pushNewRecursionContext(_localctx, _startState, KCLangParser.RULE_expression);
117240
- this.state = 198;
117283
+ this.state = 204;
117241
117284
 
117242
- if (!this.precpred(this._ctx, 8)) {
117243
- throw this.createFailedPredicateException("this.precpred(this._ctx, 8)");
117285
+ if (!this.precpred(this._ctx, 9)) {
117286
+ throw this.createFailedPredicateException("this.precpred(this._ctx, 9)");
117244
117287
  }
117245
117288
 
117246
- this.state = 199;
117289
+ this.state = 205;
117247
117290
  this.compositionOperand();
117248
- this.state = 200;
117249
- this.expression(9);
117291
+ this.state = 206;
117292
+ this.expression(10);
117250
117293
  }
117251
117294
  break;
117252
117295
 
@@ -117254,16 +117297,16 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117254
117297
  {
117255
117298
  _localctx = new SummationContext(new ExpressionContext(_parentctx, _parentState));
117256
117299
  this.pushNewRecursionContext(_localctx, _startState, KCLangParser.RULE_expression);
117257
- this.state = 202;
117300
+ this.state = 208;
117258
117301
 
117259
- if (!this.precpred(this._ctx, 7)) {
117260
- throw this.createFailedPredicateException("this.precpred(this._ctx, 7)");
117302
+ if (!this.precpred(this._ctx, 8)) {
117303
+ throw this.createFailedPredicateException("this.precpred(this._ctx, 8)");
117261
117304
  }
117262
117305
 
117263
- this.state = 203;
117306
+ this.state = 209;
117264
117307
  this.summationOperand();
117265
- this.state = 204;
117266
- this.expression(8);
117308
+ this.state = 210;
117309
+ this.expression(9);
117267
117310
  }
117268
117311
  break;
117269
117312
 
@@ -117271,16 +117314,16 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117271
117314
  {
117272
117315
  _localctx = new ComparisonContext(new ExpressionContext(_parentctx, _parentState));
117273
117316
  this.pushNewRecursionContext(_localctx, _startState, KCLangParser.RULE_expression);
117274
- this.state = 206;
117317
+ this.state = 212;
117275
117318
 
117276
- if (!this.precpred(this._ctx, 6)) {
117277
- throw this.createFailedPredicateException("this.precpred(this._ctx, 6)");
117319
+ if (!this.precpred(this._ctx, 7)) {
117320
+ throw this.createFailedPredicateException("this.precpred(this._ctx, 7)");
117278
117321
  }
117279
117322
 
117280
- this.state = 207;
117323
+ this.state = 213;
117281
117324
  this.conditionalOperand();
117282
- this.state = 208;
117283
- this.expression(7);
117325
+ this.state = 214;
117326
+ this.expression(8);
117284
117327
  }
117285
117328
  break;
117286
117329
 
@@ -117288,16 +117331,16 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117288
117331
  {
117289
117332
  _localctx = new AndContext(new ExpressionContext(_parentctx, _parentState));
117290
117333
  this.pushNewRecursionContext(_localctx, _startState, KCLangParser.RULE_expression);
117291
- this.state = 210;
117334
+ this.state = 216;
117292
117335
 
117293
- if (!this.precpred(this._ctx, 5)) {
117294
- throw this.createFailedPredicateException("this.precpred(this._ctx, 5)");
117336
+ if (!this.precpred(this._ctx, 6)) {
117337
+ throw this.createFailedPredicateException("this.precpred(this._ctx, 6)");
117295
117338
  }
117296
117339
 
117297
- this.state = 211;
117340
+ this.state = 217;
117298
117341
  this.match(KCLangParser.AND);
117299
- this.state = 212;
117300
- this.expression(6);
117342
+ this.state = 218;
117343
+ this.expression(7);
117301
117344
  }
117302
117345
  break;
117303
117346
 
@@ -117305,16 +117348,16 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117305
117348
  {
117306
117349
  _localctx = new OrContext(new ExpressionContext(_parentctx, _parentState));
117307
117350
  this.pushNewRecursionContext(_localctx, _startState, KCLangParser.RULE_expression);
117308
- this.state = 213;
117351
+ this.state = 219;
117309
117352
 
117310
- if (!this.precpred(this._ctx, 4)) {
117311
- throw this.createFailedPredicateException("this.precpred(this._ctx, 4)");
117353
+ if (!this.precpred(this._ctx, 5)) {
117354
+ throw this.createFailedPredicateException("this.precpred(this._ctx, 5)");
117312
117355
  }
117313
117356
 
117314
- this.state = 214;
117357
+ this.state = 220;
117315
117358
  this.match(KCLangParser.OR);
117316
- this.state = 215;
117317
- this.expression(5);
117359
+ this.state = 221;
117360
+ this.expression(6);
117318
117361
  }
117319
117362
  break;
117320
117363
 
@@ -117322,20 +117365,20 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117322
117365
  {
117323
117366
  _localctx = new TernaryContext(new ExpressionContext(_parentctx, _parentState));
117324
117367
  this.pushNewRecursionContext(_localctx, _startState, KCLangParser.RULE_expression);
117325
- this.state = 216;
117368
+ this.state = 222;
117326
117369
 
117327
- if (!this.precpred(this._ctx, 3)) {
117328
- throw this.createFailedPredicateException("this.precpred(this._ctx, 3)");
117370
+ if (!this.precpred(this._ctx, 4)) {
117371
+ throw this.createFailedPredicateException("this.precpred(this._ctx, 4)");
117329
117372
  }
117330
117373
 
117331
- this.state = 217;
117374
+ this.state = 223;
117332
117375
  this.match(KCLangParser.QUESTIONMARK);
117333
- this.state = 218;
117376
+ this.state = 224;
117334
117377
  this.expression(0);
117335
- this.state = 219;
117378
+ this.state = 225;
117336
117379
  this.match(KCLangParser.COLON1);
117337
- this.state = 220;
117338
- this.expression(3);
117380
+ this.state = 226;
117381
+ this.expression(4);
117339
117382
  }
117340
117383
  break;
117341
117384
 
@@ -117343,15 +117386,15 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117343
117386
  {
117344
117387
  _localctx = new OneOfContext(new ExpressionContext(_parentctx, _parentState));
117345
117388
  this.pushNewRecursionContext(_localctx, _startState, KCLangParser.RULE_expression);
117346
- this.state = 222;
117389
+ this.state = 228;
117347
117390
 
117348
- if (!this.precpred(this._ctx, 9)) {
117349
- throw this.createFailedPredicateException("this.precpred(this._ctx, 9)");
117391
+ if (!this.precpred(this._ctx, 2)) {
117392
+ throw this.createFailedPredicateException("this.precpred(this._ctx, 2)");
117350
117393
  }
117351
117394
 
117352
- this.state = 223;
117395
+ this.state = 229;
117353
117396
  this.match(KCLangParser.IN);
117354
- this.state = 224;
117397
+ this.state = 230;
117355
117398
  this.expressionSequence();
117356
117399
  }
117357
117400
  break;
@@ -117359,11 +117402,11 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117359
117402
  }
117360
117403
  }
117361
117404
 
117362
- this.state = 229;
117405
+ this.state = 235;
117363
117406
 
117364
117407
  this._errHandler.sync(this);
117365
117408
 
117366
- _alt = this.interpreter.adaptivePredict(this._input, 14, this._ctx);
117409
+ _alt = this.interpreter.adaptivePredict(this._input, 15, this._ctx);
117367
117410
  }
117368
117411
  }
117369
117412
  } catch (re) {
@@ -117384,55 +117427,6 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117384
117427
  } // @RuleVersion(0)
117385
117428
 
117386
117429
 
117387
- label() {
117388
- let _localctx = new LabelContext(this._ctx, this.state);
117389
-
117390
- this.enterRule(_localctx, 36, KCLangParser.RULE_label);
117391
-
117392
- try {
117393
- this.state = 234;
117394
-
117395
- this._errHandler.sync(this);
117396
-
117397
- switch (this.interpreter.adaptivePredict(this._input, 15, this._ctx)) {
117398
- case 1:
117399
- this.enterOuterAlt(_localctx, 1);
117400
- {
117401
- this.state = 230;
117402
- this.match(KCLangParser.NAME);
117403
- this.state = 231;
117404
- this.match(KCLangParser.COLON);
117405
- }
117406
- break;
117407
-
117408
- case 2:
117409
- this.enterOuterAlt(_localctx, 2);
117410
- {
117411
- this.state = 232;
117412
- this.match(KCLangParser.NAME);
117413
- this.state = 233;
117414
- this.match(KCLangParser.HASH);
117415
- }
117416
- break;
117417
- }
117418
- } catch (re) {
117419
- if (re instanceof antlr4ts_RecognitionException__WEBPACK_IMPORTED_MODULE_7__.RecognitionException) {
117420
- _localctx.exception = re;
117421
-
117422
- this._errHandler.reportError(this, re);
117423
-
117424
- this._errHandler.recover(this, re);
117425
- } else {
117426
- throw re;
117427
- }
117428
- } finally {
117429
- this.exitRule();
117430
- }
117431
-
117432
- return _localctx;
117433
- } // @RuleVersion(0)
117434
-
117435
-
117436
117430
  unaryExpression() {
117437
117431
  let _localctx = new UnaryExpressionContext(this._ctx, this.state);
117438
117432
 
@@ -117578,7 +117572,7 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117578
117572
 
117579
117573
  _la = this._input.LA(1);
117580
117574
 
117581
- if ((_la & ~0x1F) === 0 && (1 << _la & (1 << KCLangParser.GOUP | 1 << KCLangParser.PERCENT | 1 << KCLangParser.MIN | 1 << KCLangParser.DOT | 1 << KCLangParser.AT)) !== 0 || (_la - 32 & ~0x1F) === 0 && (1 << _la - 32 & (1 << KCLangParser.NOT - 32 | 1 << KCLangParser.LPAREN - 32 | 1 << KCLangParser.SLASH - 32 | 1 << KCLangParser.IF - 32 | 1 << KCLangParser.CONSTSTRINGWITHQUOTES - 32 | 1 << KCLangParser.NAME - 32 | 1 << KCLangParser.PATHTOKEN - 32 | 1 << KCLangParser.NUMBER - 32)) !== 0) {
117575
+ if ((_la & ~0x1f) === 0 && (1 << _la & (1 << KCLangParser.GOUP | 1 << KCLangParser.PERCENT | 1 << KCLangParser.MIN | 1 << KCLangParser.DOT | 1 << KCLangParser.AT)) !== 0 || (_la - 32 & ~0x1f) === 0 && (1 << _la - 32 & (1 << KCLangParser.NOT - 32 | 1 << KCLangParser.LPAREN - 32 | 1 << KCLangParser.SLASH - 32 | 1 << KCLangParser.IF - 32 | 1 << KCLangParser.CONSTSTRINGWITHQUOTES - 32 | 1 << KCLangParser.NAME - 32 | 1 << KCLangParser.PATHTOKEN - 32 | 1 << KCLangParser.NUMBER - 32)) !== 0) {
117582
117576
  {
117583
117577
  this.state = 259;
117584
117578
  this.expression(0);
@@ -117653,7 +117647,7 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117653
117647
 
117654
117648
  _la = this._input.LA(1);
117655
117649
 
117656
- if ((_la & ~0x1F) === 0 && (1 << _la & (1 << KCLangParser.GOUP | 1 << KCLangParser.PERCENT | 1 << KCLangParser.MIN | 1 << KCLangParser.DOT | 1 << KCLangParser.AT)) !== 0 || (_la - 32 & ~0x1F) === 0 && (1 << _la - 32 & (1 << KCLangParser.NOT - 32 | 1 << KCLangParser.LPAREN - 32 | 1 << KCLangParser.SLASH - 32 | 1 << KCLangParser.IF - 32 | 1 << KCLangParser.CONSTSTRINGWITHQUOTES - 32 | 1 << KCLangParser.NAME - 32 | 1 << KCLangParser.PATHTOKEN - 32 | 1 << KCLangParser.NUMBER - 32)) !== 0) {
117650
+ if ((_la & ~0x1f) === 0 && (1 << _la & (1 << KCLangParser.GOUP | 1 << KCLangParser.PERCENT | 1 << KCLangParser.MIN | 1 << KCLangParser.DOT | 1 << KCLangParser.AT)) !== 0 || (_la - 32 & ~0x1f) === 0 && (1 << _la - 32 & (1 << KCLangParser.NOT - 32 | 1 << KCLangParser.LPAREN - 32 | 1 << KCLangParser.SLASH - 32 | 1 << KCLangParser.IF - 32 | 1 << KCLangParser.CONSTSTRINGWITHQUOTES - 32 | 1 << KCLangParser.NAME - 32 | 1 << KCLangParser.PATHTOKEN - 32 | 1 << KCLangParser.NUMBER - 32)) !== 0) {
117657
117651
  {
117658
117652
  this.state = 274;
117659
117653
  this.argument();
@@ -117879,7 +117873,7 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
117879
117873
  this.state = 300;
117880
117874
  _la = this._input.LA(1);
117881
117875
 
117882
- if (!((_la & ~0x1F) === 0 && (1 << _la & (1 << KCLangParser.DECIMAL | 1 << KCLangParser.FRACTION | 1 << KCLangParser.STRINGTYPE | 1 << KCLangParser.DATE)) !== 0)) {
117876
+ if (!((_la & ~0x1f) === 0 && (1 << _la & (1 << KCLangParser.DECIMAL | 1 << KCLangParser.FRACTION | 1 << KCLangParser.STRINGTYPE | 1 << KCLangParser.DATE)) !== 0)) {
117883
117877
  this._errHandler.recoverInline(this);
117884
117878
  } else {
117885
117879
  if (this._input.LA(1) === antlr4ts_Token__WEBPACK_IMPORTED_MODULE_8__.Token.EOF) {
@@ -118350,7 +118344,7 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
118350
118344
  this.state = 345;
118351
118345
  _la = this._input.LA(1);
118352
118346
 
118353
- if (!((_la & ~0x1F) === 0 && (1 << _la & (1 << KCLangParser.GT | 1 << KCLangParser.GE | 1 << KCLangParser.LT | 1 << KCLangParser.LE | 1 << KCLangParser.EQ | 1 << KCLangParser.NEQ)) !== 0)) {
118347
+ if (!((_la & ~0x1f) === 0 && (1 << _la & (1 << KCLangParser.GT | 1 << KCLangParser.GE | 1 << KCLangParser.LT | 1 << KCLangParser.LE | 1 << KCLangParser.EQ | 1 << KCLangParser.NEQ)) !== 0)) {
118354
118348
  this._errHandler.recoverInline(this);
118355
118349
  } else {
118356
118350
  if (this._input.LA(1) === antlr4ts_Token__WEBPACK_IMPORTED_MODULE_8__.Token.EOF) {
@@ -118467,7 +118461,7 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
118467
118461
 
118468
118462
  sempred(_localctx, ruleIndex, predIndex) {
118469
118463
  switch (ruleIndex) {
118470
- case 17:
118464
+ case 18:
118471
118465
  return this.expression_sempred(_localctx, predIndex);
118472
118466
  }
118473
118467
 
@@ -118477,25 +118471,25 @@ class KCLangParser extends antlr4ts_Parser__WEBPACK_IMPORTED_MODULE_4__.Parser {
118477
118471
  expression_sempred(_localctx, predIndex) {
118478
118472
  switch (predIndex) {
118479
118473
  case 0:
118480
- return this.precpred(this._ctx, 8);
118474
+ return this.precpred(this._ctx, 9);
118481
118475
 
118482
118476
  case 1:
118483
- return this.precpred(this._ctx, 7);
118477
+ return this.precpred(this._ctx, 8);
118484
118478
 
118485
118479
  case 2:
118486
- return this.precpred(this._ctx, 6);
118480
+ return this.precpred(this._ctx, 7);
118487
118481
 
118488
118482
  case 3:
118489
- return this.precpred(this._ctx, 5);
118483
+ return this.precpred(this._ctx, 6);
118490
118484
 
118491
118485
  case 4:
118492
- return this.precpred(this._ctx, 4);
118486
+ return this.precpred(this._ctx, 5);
118493
118487
 
118494
118488
  case 5:
118495
- return this.precpred(this._ctx, 3);
118489
+ return this.precpred(this._ctx, 4);
118496
118490
 
118497
118491
  case 6:
118498
- return this.precpred(this._ctx, 9);
118492
+ return this.precpred(this._ctx, 2);
118499
118493
  }
118500
118494
 
118501
118495
  return true;
@@ -118569,9 +118563,9 @@ KCLangParser.BlockComment = 56;
118569
118563
  KCLangParser.LineComment = 57;
118570
118564
  KCLangParser.RULE_kclang = 0;
118571
118565
  KCLangParser.RULE_globalDefinition = 1;
118572
- KCLangParser.RULE_inBlock = 2;
118573
- KCLangParser.RULE_inBlockItem = 3;
118574
- KCLangParser.RULE_statement = 4;
118566
+ KCLangParser.RULE_statement = 2;
118567
+ KCLangParser.RULE_inBlock = 3;
118568
+ KCLangParser.RULE_inBlockItem = 4;
118575
118569
  KCLangParser.RULE_globalVariable = 5;
118576
118570
  KCLangParser.RULE_propertyVariable = 6;
118577
118571
  KCLangParser.RULE_propertyExpression = 7;
@@ -118579,13 +118573,13 @@ KCLangParser.RULE_localVariable = 8;
118579
118573
  KCLangParser.RULE_ifStatement = 9;
118580
118574
  KCLangParser.RULE_ifPart = 10;
118581
118575
  KCLangParser.RULE_elsePart = 11;
118582
- KCLangParser.RULE_body = 12;
118583
- KCLangParser.RULE_varName = 13;
118584
- KCLangParser.RULE_check = 14;
118585
- KCLangParser.RULE_withBlock = 15;
118586
- KCLangParser.RULE_formula = 16;
118587
- KCLangParser.RULE_expression = 17;
118588
- KCLangParser.RULE_label = 18;
118576
+ KCLangParser.RULE_label = 12;
118577
+ KCLangParser.RULE_body = 13;
118578
+ KCLangParser.RULE_varName = 14;
118579
+ KCLangParser.RULE_check = 15;
118580
+ KCLangParser.RULE_withBlock = 16;
118581
+ KCLangParser.RULE_formula = 17;
118582
+ KCLangParser.RULE_expression = 18;
118589
118583
  KCLangParser.RULE_unaryExpression = 19;
118590
118584
  KCLangParser.RULE_expressionSequence = 20;
118591
118585
  KCLangParser.RULE_funcExpression = 21;
@@ -118606,11 +118600,11 @@ KCLangParser.RULE_pathToken = 35;
118606
118600
  KCLangParser.RULE_conditionalOperand = 36;
118607
118601
  KCLangParser.RULE_summationOperand = 37;
118608
118602
  KCLangParser.RULE_compositionOperand = 38;
118609
- KCLangParser.ruleNames = ["kclang", "globalDefinition", "inBlock", "inBlockItem", "statement", "globalVariable", "propertyVariable", "propertyExpression", "localVariable", "ifStatement", "ifPart", "elsePart", "body", "varName", "check", "withBlock", "formula", "expression", "label", "unaryExpression", "expressionSequence", "funcExpression", "argument", "pathOfVarExpression", "varExpression", "typeD", "type", "constExpression", "constString", "constDecimal", "pathOrVar", "path", "globalPath", "relativePath", "incompletePath", "pathToken", "conditionalOperand", "summationOperand", "compositionOperand"];
118603
+ KCLangParser.ruleNames = ["kclang", "globalDefinition", "statement", "inBlock", "inBlockItem", "globalVariable", "propertyVariable", "propertyExpression", "localVariable", "ifStatement", "ifPart", "elsePart", "label", "body", "varName", "check", "withBlock", "formula", "expression", "unaryExpression", "expressionSequence", "funcExpression", "argument", "pathOfVarExpression", "varExpression", "typeD", "type", "constExpression", "constString", "constDecimal", "pathOrVar", "path", "globalPath", "relativePath", "incompletePath", "pathToken", "conditionalOperand", "summationOperand", "compositionOperand"];
118610
118604
  KCLangParser._LITERAL_NAMES = [undefined, undefined, "'getProperty'", "'decimal'", "'fraction'", "'string'", "'date'", "'%'", "'*'", "' / '", "'+'", "'-'", "'==='", "'>'", "'>='", "'<'", "'<='", "'=='", "'!='", "'='", "'as'", "'#'", "'var'", "'in'", "' : '", "':'", "','", "'.'", "'@'", "'$'", undefined, undefined, undefined, "'('", "')'", "'['", "']'", "'{'", "'}'", "'/'", "'if'", "'else'", "'Error'", "'Warning'", "'check'", "'with'", "';'", "'?'"];
118611
118605
  KCLangParser._SYMBOLIC_NAMES = [undefined, "GOUP", "PROPERTIES", "DECIMAL", "FRACTION", "STRINGTYPE", "DATE", "PERCENT", "MUL", "DIV", "PLUS", "MIN", "TEQ", "GT", "GE", "LT", "LE", "EQ", "NEQ", "EQUAL", "AS", "HASH", "VAR", "IN", "COLON1", "COLON", "COMMA", "DOT", "AT", "DOLLAR", "AND", "OR", "NOT", "LPAREN", "RPAREN", "LBRACKET", "RBRACKET", "LBRACE", "RBRACE", "SLASH", "IF", "ELSE", "ERROR", "WARNING", "CHECK", "WITH", "SEMICOLON", "QUESTIONMARK", "CONSTSTRINGWITHQUOTES", "CONSTSTRINGWITHSINGLEQUOTES", "CONSTSTRINGWITHDOUBLEQUOTES", "NAME", "PATHTOKEN", "NUMBER", "STRING", "SPACE", "BlockComment", "LineComment"];
118612
118606
  KCLangParser.VOCABULARY = new antlr4ts_VocabularyImpl__WEBPACK_IMPORTED_MODULE_9__.VocabularyImpl(KCLangParser._LITERAL_NAMES, KCLangParser._SYMBOLIC_NAMES, []);
118613
- KCLangParser._serializedATN = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x03;\u0162\x04\x02" + "\t\x02\x04\x03\t\x03\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06\x04\x07" + "\t\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f\x04\r\t\r\x04" + "\x0E\t\x0E\x04\x0F\t\x0F\x04\x10\t\x10\x04\x11\t\x11\x04\x12\t\x12\x04" + "\x13\t\x13\x04\x14\t\x14\x04\x15\t\x15\x04\x16\t\x16\x04\x17\t\x17\x04" + "\x18\t\x18\x04\x19\t\x19\x04\x1A\t\x1A\x04\x1B\t\x1B\x04\x1C\t\x1C\x04" + "\x1D\t\x1D\x04\x1E\t\x1E\x04\x1F\t\x1F\x04 \t \x04!\t!\x04\"\t\"\x04#" + "\t#\x04$\t$\x04%\t%\x04&\t&\x04\'\t\'\x04(\t(\x03\x02\x07\x02R\n\x02\f" + "\x02\x0E\x02U\v\x02\x03\x02\x03\x02\x03\x03\x03\x03\x03\x03\x05\x03\\" + "\n\x03\x03\x04\x03\x04\x03\x04\x03\x04\x07\x04b\n\x04\f\x04\x0E\x04e\v" + "\x04\x03\x04\x03\x04\x03\x05\x03\x05\x05\x05k\n\x05\x03\x06\x03\x06\x03" + "\x06\x05\x06p\n\x06\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03" + "\b\x03\b\x03\b\x03\b\x03\b\x03\b\x03\t\x03\t\x03\t\x03\t\x03\t\x05\t\x83" + "\n\t\x03\n\x03\n\x03\n\x03\n\x03\n\x03\n\x03\v\x03\v\x05\v\x8D\n\v\x03" + "\f\x03\f\x03\f\x03\f\x03\f\x03\f\x03\r\x03\r\x03\r\x03\x0E\x03\x0E\x07" + "\x0E\x9A\n\x0E\f\x0E\x0E\x0E\x9D\v\x0E\x03\x0E\x03\x0E\x05\x0E\xA1\n\x0E" + "\x03\x0F\x03\x0F\x03\x10\x03\x10\x03\x10\x05\x10\xA8\n\x10\x03\x10\x07" + "\x10\xAB\n\x10\f\x10\x0E\x10\xAE\v\x10\x03\x10\x03\x10\x03\x11\x03\x11" + "\x03\x11\x03\x11\x03\x12\x03\x12\x03\x12\x03\x12\x03\x13\x03\x13\x03\x13" + "\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13\x05\x13\xC4\n" + "\x13\x03\x13\x05\x13\xC7\n\x13\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13" + "\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13" + "\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13\x03\x13" + "\x03\x13\x03\x13\x03\x13\x03\x13\x07\x13\xE4\n\x13\f\x13\x0E\x13\xE7\v" + "\x13\x03\x14\x03\x14\x03\x14\x03\x14\x05\x14\xED\n\x14\x03\x15\x03\x15" + "\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15" + "\x03\x15\x05\x15\xFB\n\x15\x03\x16\x03\x16\x03\x16\x03\x16\x07\x16\u0101" + "\n\x16\f\x16\x0E\x16\u0104\v\x16\x03\x16\x05\x16\u0107\n\x16\x03\x16\x03" + "\x16\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x07\x17\u0110\n\x17\f\x17" + "\x0E\x17\u0113\v\x17\x03\x17\x05\x17\u0116\n\x17\x03\x17\x03\x17\x03\x18" + "\x03\x18\x03\x18\x03\x18\x05\x18\u011E\n\x18\x03\x19\x03\x19\x05\x19\u0122" + "\n\x19\x03\x1A\x03\x1A\x03\x1A\x05\x1A\u0127\n\x1A\x03\x1B\x03\x1B\x03" + "\x1B\x03\x1B\x05\x1B\u012D\n\x1B\x03\x1C\x03\x1C\x03\x1D\x03\x1D\x03\x1D" + "\x05\x1D\u0134\n\x1D\x05\x1D\u0136\n\x1D\x03\x1E\x03\x1E\x03\x1F\x03\x1F" + "\x03 \x03 \x03!\x03!\x03!\x05!\u0141\n!\x03\"\x03\"\x03\"\x03#\x03#\x03" + "#\x07#\u0149\n#\f#\x0E#\u014C\v#\x03$\x03$\x05$\u0150\n$\x03$\x03$\x03" + "$\x03$\x05$\u0156\n$\x05$\u0158\n$\x03%\x03%\x03&\x03&\x03\'\x03\'\x03" + "(\x03(\x03(\x03\u014A\x02\x03$)\x02\x02\x04\x02\x06\x02\b\x02\n\x02\f" + "\x02\x0E\x02\x10\x02\x12\x02\x14\x02\x16\x02\x18\x02\x1A\x02\x1C\x02\x1E" + "\x02 \x02\"\x02$\x02&\x02(\x02*\x02,\x02.\x020\x022\x024\x026\x028\x02" + ":\x02<\x02>\x02@\x02B\x02D\x02F\x02H\x02J\x02L\x02N\x02\x02\b\x03\x02" + "\x05\b\x03\x02\x1E\x1F\x05\x02\x03\x03\x1D\x1D56\x03\x02\x0F\x14\x03\x02" + "\f\r\x03\x02\n\v\x02\u0167\x02S\x03\x02\x02\x02\x04[\x03\x02\x02\x02\x06" + "]\x03\x02\x02\x02\bj\x03\x02\x02\x02\no\x03\x02\x02\x02\fq\x03\x02\x02" + "\x02\x0Ew\x03\x02\x02\x02\x10}\x03\x02\x02\x02\x12\x84\x03\x02\x02\x02" + "\x14\x8A\x03\x02\x02\x02\x16\x8E\x03\x02\x02\x02\x18\x94\x03\x02\x02\x02" + "\x1A\xA0\x03\x02\x02\x02\x1C\xA2\x03\x02\x02\x02\x1E\xA4\x03\x02\x02\x02" + " \xB1\x03\x02\x02\x02\"\xB5\x03\x02\x02\x02$\xC6\x03\x02\x02\x02&\xEC" + "\x03\x02\x02\x02(\xFA\x03\x02\x02\x02*\xFC\x03\x02\x02\x02,\u010A\x03" + "\x02\x02\x02.\u011D\x03\x02\x02\x020\u011F\x03\x02\x02\x022\u0123\x03" + "\x02\x02\x024\u012C\x03\x02\x02\x026\u012E\x03\x02\x02\x028\u0135\x03" + "\x02\x02\x02:\u0137\x03\x02\x02\x02<\u0139\x03\x02\x02\x02>\u013B\x03" + "\x02\x02\x02@\u0140\x03\x02\x02\x02B\u0142\x03\x02\x02\x02D\u0145\x03" + "\x02\x02\x02F\u0157\x03\x02\x02\x02H\u0159\x03\x02\x02\x02J\u015B\x03" + "\x02\x02\x02L\u015D\x03\x02\x02\x02N\u015F\x03\x02\x02\x02PR\x05\x04\x03" + "\x02QP\x03\x02\x02\x02RU\x03\x02\x02\x02SQ\x03\x02\x02\x02ST\x03\x02\x02" + "\x02TV\x03\x02\x02\x02US\x03\x02\x02\x02VW\x07\x02\x02\x03W\x03\x03\x02" + "\x02\x02X\\\x05\x06\x04\x02Y\\\x05\f\x07\x02Z\\\x05\x0E\b\x02[X\x03\x02" + "\x02\x02[Y\x03\x02\x02\x02[Z\x03\x02\x02\x02\\\x05\x03\x02\x02\x02]^\x07" + "\x19\x02\x02^_\x05@!\x02_c\x07\'\x02\x02`b\x05\b\x05\x02a`\x03\x02\x02" + "\x02be\x03\x02\x02\x02ca\x03\x02\x02\x02cd\x03\x02\x02\x02df\x03\x02\x02" + "\x02ec\x03\x02\x02\x02fg\x07(\x02\x02g\x07\x03\x02\x02\x02hk\x05\x06\x04" + "\x02ik\x05\n\x06\x02jh\x03\x02\x02\x02ji\x03\x02\x02\x02k\t\x03\x02\x02" + "\x02lp\x05\x1E\x10\x02mp\x05\x14\v\x02np\x05\x12\n\x02ol\x03\x02\x02\x02" + "om\x03\x02\x02\x02on\x03\x02\x02\x02p\v\x03\x02\x02\x02qr\x07\x18\x02" + "\x02rs\x05\x1C\x0F\x02st\x07\x15\x02\x02tu\x05@!\x02uv\x070\x02\x02v\r" + "\x03\x02\x02\x02wx\x07\x18\x02\x02xy\x05\x1C\x0F\x02yz\x07\x15\x02\x02" + "z{\x05\x10\t\x02{|\x070\x02\x02|\x0F\x03\x02\x02\x02}~\x07\x04\x02\x02" + "~\x7F\x07#\x02\x02\x7F\x80\x05:\x1E\x02\x80\x82\x07$\x02\x02\x81\x83\x05" + "4\x1B\x02\x82\x81\x03\x02\x02\x02\x82\x83\x03\x02\x02\x02\x83\x11\x03" + "\x02\x02\x02\x84\x85\x07\x18\x02\x02\x85\x86\x05\x1C\x0F\x02\x86\x87\x07" + "\x15\x02\x02\x87\x88\x05$\x13\x02\x88\x89\x070\x02\x02\x89\x13\x03\x02" + "\x02\x02\x8A\x8C\x05\x16\f\x02\x8B\x8D\x05\x18\r\x02\x8C\x8B\x03\x02\x02" + "\x02\x8C\x8D\x03\x02\x02\x02\x8D\x15\x03\x02\x02\x02\x8E\x8F\x07*\x02" + "\x02\x8F\x90\x07#\x02\x02\x90\x91\x05$\x13\x02\x91\x92\x07$\x02\x02\x92" + "\x93\x05\x1A\x0E\x02\x93\x17\x03\x02\x02\x02\x94\x95\x07+\x02\x02\x95" + "\x96\x05\x1A\x0E\x02\x96\x19\x03\x02\x02\x02\x97\x9B\x07\'\x02\x02\x98" + "\x9A\x05\n\x06\x02\x99\x98\x03\x02\x02\x02\x9A\x9D\x03\x02\x02\x02\x9B" + "\x99\x03\x02\x02\x02\x9B\x9C\x03\x02\x02\x02\x9C\x9E\x03\x02\x02\x02\x9D" + "\x9B\x03\x02\x02\x02\x9E\xA1\x07(\x02\x02\x9F\xA1\x05\n\x06\x02\xA0\x97" + "\x03\x02\x02\x02\xA0\x9F\x03\x02\x02\x02\xA1\x1B\x03\x02\x02\x02\xA2\xA3" + "\x075\x02\x02\xA3\x1D\x03\x02\x02\x02\xA4\xA7\x07.\x02\x02\xA5\xA8\x05" + "\"\x12\x02\xA6\xA8\x05$\x13\x02\xA7\xA5\x03\x02\x02\x02\xA7\xA6\x03\x02" + "\x02\x02\xA8\xAC\x03\x02\x02\x02\xA9\xAB\x05 \x11\x02\xAA\xA9\x03\x02" + "\x02\x02\xAB\xAE\x03\x02\x02\x02\xAC\xAA\x03\x02\x02\x02\xAC\xAD\x03\x02" + "\x02\x02\xAD\xAF\x03\x02\x02\x02\xAE\xAC\x03\x02\x02\x02\xAF\xB0\x070" + "\x02\x02\xB0\x1F\x03\x02\x02\x02\xB1\xB2\x07/\x02\x02\xB2\xB3\x075\x02" + "\x02\xB3\xB4\x078\x02\x02\xB4!\x03\x02\x02\x02\xB5\xB6\x05@!\x02\xB6\xB7" + "\x07\x0E\x02\x02\xB7\xB8\x05$\x13\x02\xB8#\x03\x02\x02\x02\xB9\xBA\b\x13" + "\x01\x02\xBA\xBB\x07*\x02\x02\xBB\xBC\x07#\x02\x02\xBC\xBD\x05$\x13\x02" + "\xBD\xBE\x07$\x02\x02\xBE\xBF\x05$\x13\x02\xBF\xC0\x07+\x02\x02\xC0\xC1" + "\x05$\x13\x04\xC1\xC7\x03\x02\x02\x02\xC2\xC4\x05&\x14\x02\xC3\xC2\x03" + "\x02\x02\x02\xC3\xC4\x03\x02\x02\x02\xC4\xC5\x03\x02\x02\x02\xC5\xC7\x05" + "(\x15\x02\xC6\xB9\x03\x02\x02\x02\xC6\xC3\x03\x02\x02\x02\xC7\xE5\x03" + "\x02\x02\x02\xC8\xC9\f\n\x02\x02\xC9\xCA\x05N(\x02\xCA\xCB\x05$\x13\v" + "\xCB\xE4\x03\x02\x02\x02\xCC\xCD\f\t\x02\x02\xCD\xCE\x05L\'\x02\xCE\xCF" + "\x05$\x13\n\xCF\xE4\x03\x02\x02\x02\xD0\xD1\f\b\x02\x02\xD1\xD2\x05J&" + "\x02\xD2\xD3\x05$\x13\t\xD3\xE4\x03\x02\x02\x02\xD4\xD5\f\x07\x02\x02" + "\xD5\xD6\x07 \x02\x02\xD6\xE4\x05$\x13\b\xD7\xD8\f\x06\x02\x02\xD8\xD9" + "\x07!\x02\x02\xD9\xE4\x05$\x13\x07\xDA\xDB\f\x05\x02\x02\xDB\xDC\x071" + "\x02\x02\xDC\xDD\x05$\x13\x02\xDD\xDE\x07\x1A\x02\x02\xDE\xDF\x05$\x13" + "\x05\xDF\xE4\x03\x02\x02\x02\xE0\xE1\f\v\x02\x02\xE1\xE2\x07\x19\x02\x02" + "\xE2\xE4\x05*\x16\x02\xE3\xC8\x03\x02\x02\x02\xE3\xCC\x03\x02\x02\x02" + "\xE3\xD0\x03\x02\x02\x02\xE3\xD4\x03\x02\x02\x02\xE3\xD7\x03\x02\x02\x02" + "\xE3\xDA\x03\x02\x02\x02\xE3\xE0\x03\x02\x02\x02\xE4\xE7\x03\x02\x02\x02" + "\xE5\xE3\x03\x02\x02\x02\xE5\xE6\x03\x02\x02\x02\xE6%\x03\x02\x02\x02" + "\xE7\xE5\x03\x02\x02\x02\xE8\xE9\x075\x02\x02\xE9\xED\x07\x1B\x02\x02" + "\xEA\xEB\x075\x02\x02\xEB\xED\x07\x17\x02\x02\xEC\xE8\x03\x02\x02\x02" + "\xEC\xEA\x03\x02\x02\x02\xED\'\x03\x02\x02\x02\xEE\xFB\x058\x1D\x02\xEF" + "\xFB\x050\x19\x02\xF0\xFB\x052\x1A\x02\xF1\xF2\x07#\x02\x02\xF2\xF3\x05" + "$\x13\x02\xF3\xF4\x07$\x02\x02\xF4\xFB\x03\x02\x02\x02\xF5\xF6\x07\"\x02" + "\x02\xF6\xFB\x05(\x15\x02\xF7\xFB\x05,\x17\x02\xF8\xF9\x07\r\x02\x02\xF9" + "\xFB\x05(\x15\x02\xFA\xEE\x03\x02\x02\x02\xFA\xEF\x03\x02\x02\x02\xFA" + "\xF0\x03\x02\x02\x02\xFA\xF1\x03\x02\x02\x02\xFA\xF5\x03\x02\x02\x02\xFA" + "\xF7\x03\x02\x02\x02\xFA\xF8\x03\x02\x02\x02\xFB)\x03\x02\x02\x02\xFC" + "\u0102\x07%\x02\x02\xFD\xFE\x05$\x13\x02\xFE\xFF\x07\x1C\x02\x02\xFF\u0101" + "\x03\x02\x02\x02\u0100\xFD\x03\x02\x02\x02\u0101\u0104\x03\x02\x02\x02" + "\u0102\u0100\x03\x02\x02\x02\u0102\u0103\x03\x02\x02\x02\u0103\u0106\x03" + "\x02\x02\x02\u0104\u0102\x03\x02\x02\x02\u0105\u0107\x05$\x13\x02\u0106" + "\u0105\x03\x02\x02\x02\u0106\u0107\x03\x02\x02\x02\u0107\u0108\x03\x02" + "\x02\x02\u0108\u0109\x07&\x02\x02\u0109+\x03\x02\x02\x02\u010A\u010B\x07" + "5\x02\x02\u010B\u0111\x07#\x02\x02\u010C\u010D\x05.\x18\x02\u010D\u010E" + "\x07\x1C\x02\x02\u010E\u0110\x03\x02\x02\x02\u010F\u010C\x03\x02\x02\x02" + "\u0110\u0113\x03\x02\x02\x02\u0111\u010F\x03\x02\x02\x02\u0111\u0112\x03" + "\x02\x02\x02\u0112\u0115\x03\x02\x02\x02\u0113\u0111\x03\x02\x02\x02\u0114" + "\u0116\x05.\x18\x02\u0115\u0114\x03\x02\x02\x02\u0115\u0116\x03\x02\x02" + "\x02\u0116\u0117\x03\x02\x02\x02\u0117\u0118\x07$\x02\x02\u0118-\x03\x02" + "\x02\x02\u0119\u011A\x075\x02\x02\u011A\u011B\x07\x15\x02\x02\u011B\u011E" + "\x05$\x13\x02\u011C\u011E\x05$\x13\x02\u011D\u0119\x03\x02\x02\x02\u011D" + "\u011C\x03\x02\x02\x02\u011E/\x03\x02\x02\x02\u011F\u0121\x05> \x02\u0120" + "\u0122\x054\x1B\x02\u0121\u0120\x03\x02\x02\x02\u0121\u0122\x03\x02\x02" + "\x02\u01221\x03\x02\x02\x02\u0123\u0124\x07\t\x02\x02\u0124\u0126\x07" + "5\x02\x02\u0125\u0127\x054\x1B\x02\u0126\u0125\x03\x02\x02\x02\u0126\u0127" + "\x03\x02\x02\x02\u01273\x03\x02\x02\x02\u0128\u0129\x07\x1B\x02\x02\u0129" + "\u012D\x056\x1C\x02\u012A\u012B\x07\x16\x02\x02\u012B\u012D\x056\x1C\x02" + "\u012C\u0128\x03\x02\x02\x02\u012C\u012A\x03\x02\x02\x02\u012D5\x03\x02" + "\x02\x02\u012E\u012F\t\x02\x02\x02\u012F7\x03\x02\x02\x02\u0130\u0136" + "\x05<\x1F\x02\u0131\u0133\x05:\x1E\x02\u0132\u0134\x054\x1B\x02\u0133" + "\u0132\x03\x02\x02\x02\u0133\u0134\x03\x02\x02\x02\u0134\u0136\x03\x02" + "\x02\x02\u0135\u0130\x03\x02\x02\x02\u0135\u0131\x03\x02\x02\x02\u0136" + "9\x03\x02\x02\x02\u0137\u0138\x072\x02\x02\u0138;\x03\x02\x02\x02\u0139" + "\u013A\x077\x02\x02\u013A=\x03\x02\x02\x02\u013B\u013C\x05@!\x02\u013C" + "?\x03\x02\x02\x02\u013D\u0141\x05D#\x02\u013E\u0141\x05B\"\x02\u013F\u0141" + "\x05F$\x02\u0140\u013D\x03\x02\x02\x02\u0140\u013E\x03\x02\x02\x02\u0140" + "\u013F\x03\x02\x02\x02\u0141A\x03\x02\x02\x02\u0142\u0143\x07)\x02\x02" + "\u0143\u0144\x05D#\x02\u0144C\x03\x02\x02\x02\u0145\u014A\x05H%\x02\u0146" + "\u0147\x07)\x02\x02\u0147\u0149\x05H%\x02\u0148\u0146\x03\x02\x02\x02" + "\u0149\u014C\x03\x02\x02\x02\u014A\u014B\x03\x02\x02\x02\u014A\u0148\x03" + "\x02\x02\x02\u014BE\x03\x02\x02\x02\u014C\u014A\x03\x02\x02\x02\u014D" + "\u0158\x07\x1E\x02\x02\u014E\u0150\x07)\x02\x02\u014F\u014E\x03\x02\x02" + "\x02\u014F\u0150\x03\x02\x02\x02\u0150\u0151\x03\x02\x02\x02\u0151\u0152" + "\x05D#\x02\u0152\u0153\x03\x02\x02\x02\u0153\u0155\x07)\x02\x02\u0154" + "\u0156\t\x03\x02\x02\u0155\u0154\x03\x02\x02\x02\u0155\u0156\x03\x02\x02" + "\x02\u0156\u0158\x03\x02\x02\x02\u0157\u014D\x03\x02\x02\x02\u0157\u014F" + "\x03\x02\x02\x02\u0158G\x03\x02\x02\x02\u0159\u015A\t\x04\x02\x02\u015A" + "I\x03\x02\x02\x02\u015B\u015C\t\x05\x02\x02\u015CK\x03\x02\x02\x02\u015D" + "\u015E\t\x06\x02\x02\u015EM\x03\x02\x02\x02\u015F\u0160\t\x07\x02\x02" + "\u0160O\x03\x02\x02\x02\"S[cjo\x82\x8C\x9B\xA0\xA7\xAC\xC3\xC6\xE3\xE5" + "\xEC\xFA\u0102\u0106\u0111\u0115\u011D\u0121\u0126\u012C\u0133\u0135\u0140" + "\u014A\u014F\u0155\u0157";
118607
+ KCLangParser._serializedATN = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x03;\u0162\x04\x02" + "\t\x02\x04\x03\t\x03\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06\x04\x07" + "\t\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f\x04\r\t\r\x04" + "\x0E\t\x0E\x04\x0F\t\x0F\x04\x10\t\x10\x04\x11\t\x11\x04\x12\t\x12\x04" + "\x13\t\x13\x04\x14\t\x14\x04\x15\t\x15\x04\x16\t\x16\x04\x17\t\x17\x04" + "\x18\t\x18\x04\x19\t\x19\x04\x1A\t\x1A\x04\x1B\t\x1B\x04\x1C\t\x1C\x04" + '\x1D\t\x1D\x04\x1E\t\x1E\x04\x1F\t\x1F\x04 \t \x04!\t!\x04"\t"\x04#' + "\t#\x04$\t$\x04%\t%\x04&\t&\x04'\t'\x04(\t(\x03\x02\x07\x02R\n\x02\f" + "\x02\x0E\x02U\v\x02\x03\x02\x03\x02\x03\x03\x03\x03\x03\x03\x05\x03\\" + "\n\x03\x03\x04\x03\x04\x03\x04\x05\x04a\n\x04\x03\x05\x03\x05\x03\x05" + "\x03\x05\x07\x05g\n\x05\f\x05\x0E\x05j\v\x05\x03\x05\x03\x05\x03\x06\x03" + "\x06\x05\x06p\n\x06\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03" + "\b\x03\b\x03\b\x03\b\x03\b\x03\b\x03\t\x03\t\x03\t\x03\t\x03\t\x05\t\x83" + "\n\t\x03\n\x03\n\x03\n\x03\n\x03\n\x03\n\x03\v\x03\v\x05\v\x8D\n\v\x03" + "\f\x03\f\x03\f\x03\f\x03\f\x03\f\x03\r\x03\r\x03\r\x03\x0E\x03\x0E\x03" + "\x0E\x03\x0E\x05\x0E\x9C\n\x0E\x03\x0F\x03\x0F\x07\x0F\xA0\n\x0F\f\x0F" + "\x0E\x0F\xA3\v\x0F\x03\x0F\x03\x0F\x05\x0F\xA7\n\x0F\x03\x10\x03\x10\x03" + "\x11\x03\x11\x03\x11\x05\x11\xAE\n\x11\x03\x11\x07\x11\xB1\n\x11\f\x11" + "\x0E\x11\xB4\v\x11\x03\x11\x03\x11\x03\x12\x03\x12\x03\x12\x03\x12\x03" + "\x13\x03\x13\x03\x13\x03\x13\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03" + "\x14\x03\x14\x03\x14\x03\x14\x03\x14\x05\x14\xCA\n\x14\x03\x14\x05\x14" + "\xCD\n\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03" + "\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03" + "\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03" + "\x14\x03\x14\x07\x14\xEA\n\x14\f\x14\x0E\x14\xED\v\x14\x03\x15\x03\x15" + "\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15" + "\x03\x15\x05\x15\xFB\n\x15\x03\x16\x03\x16\x03\x16\x03\x16\x07\x16\u0101" + "\n\x16\f\x16\x0E\x16\u0104\v\x16\x03\x16\x05\x16\u0107\n\x16\x03\x16\x03" + "\x16\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x07\x17\u0110\n\x17\f\x17" + "\x0E\x17\u0113\v\x17\x03\x17\x05\x17\u0116\n\x17\x03\x17\x03\x17\x03\x18" + "\x03\x18\x03\x18\x03\x18\x05\x18\u011E\n\x18\x03\x19\x03\x19\x05\x19\u0122" + "\n\x19\x03\x1A\x03\x1A\x03\x1A\x05\x1A\u0127\n\x1A\x03\x1B\x03\x1B\x03" + "\x1B\x03\x1B\x05\x1B\u012D\n\x1B\x03\x1C\x03\x1C\x03\x1D\x03\x1D\x03\x1D" + "\x05\x1D\u0134\n\x1D\x05\x1D\u0136\n\x1D\x03\x1E\x03\x1E\x03\x1F\x03\x1F" + '\x03 \x03 \x03!\x03!\x03!\x05!\u0141\n!\x03"\x03"\x03"\x03#\x03#\x03' + "#\x07#\u0149\n#\f#\x0E#\u014C\v#\x03$\x03$\x05$\u0150\n$\x03$\x03$\x03" + "$\x03$\x05$\u0156\n$\x05$\u0158\n$\x03%\x03%\x03&\x03&\x03'\x03'\x03" + "(\x03(\x03(\x03\u014A\x02\x03&)\x02\x02\x04\x02\x06\x02\b\x02\n\x02\f" + "\x02\x0E\x02\x10\x02\x12\x02\x14\x02\x16\x02\x18\x02\x1A\x02\x1C\x02\x1E" + '\x02 \x02"\x02$\x02&\x02(\x02*\x02,\x02.\x020\x022\x024\x026\x028\x02' + ":\x02<\x02>\x02@\x02B\x02D\x02F\x02H\x02J\x02L\x02N\x02\x02\b\x03\x02" + "\x05\b\x03\x02\x1E\x1F\x05\x02\x03\x03\x1D\x1D56\x03\x02\x0F\x14\x03\x02" + "\f\r\x03\x02\n\v\x02\u0167\x02S\x03\x02\x02\x02\x04[\x03\x02\x02\x02\x06" + "`\x03\x02\x02\x02\bb\x03\x02\x02\x02\no\x03\x02\x02\x02\fq\x03\x02\x02" + "\x02\x0Ew\x03\x02\x02\x02\x10}\x03\x02\x02\x02\x12\x84\x03\x02\x02\x02" + "\x14\x8A\x03\x02\x02\x02\x16\x8E\x03\x02\x02\x02\x18\x94\x03\x02\x02\x02" + "\x1A\x9B\x03\x02\x02\x02\x1C\xA6\x03\x02\x02\x02\x1E\xA8\x03\x02\x02\x02" + ' \xAA\x03\x02\x02\x02"\xB7\x03\x02\x02\x02$\xBB\x03\x02\x02\x02&\xCC' + "\x03\x02\x02\x02(\xFA\x03\x02\x02\x02*\xFC\x03\x02\x02\x02,\u010A\x03" + "\x02\x02\x02.\u011D\x03\x02\x02\x020\u011F\x03\x02\x02\x022\u0123\x03" + "\x02\x02\x024\u012C\x03\x02\x02\x026\u012E\x03\x02\x02\x028\u0135\x03" + "\x02\x02\x02:\u0137\x03\x02\x02\x02<\u0139\x03\x02\x02\x02>\u013B\x03" + "\x02\x02\x02@\u0140\x03\x02\x02\x02B\u0142\x03\x02\x02\x02D\u0145\x03" + "\x02\x02\x02F\u0157\x03\x02\x02\x02H\u0159\x03\x02\x02\x02J\u015B\x03" + "\x02\x02\x02L\u015D\x03\x02\x02\x02N\u015F\x03\x02\x02\x02PR\x05\x04\x03" + "\x02QP\x03\x02\x02\x02RU\x03\x02\x02\x02SQ\x03\x02\x02\x02ST\x03\x02\x02" + "\x02TV\x03\x02\x02\x02US\x03\x02\x02\x02VW\x07\x02\x02\x03W\x03\x03\x02" + "\x02\x02X\\\x05\b\x05\x02Y\\\x05\f\x07\x02Z\\\x05\x0E\b\x02[X\x03\x02" + "\x02\x02[Y\x03\x02\x02\x02[Z\x03\x02\x02\x02\\\x05\x03\x02\x02\x02]a\x05" + " \x11\x02^a\x05\x14\v\x02_a\x05\x12\n\x02`]\x03\x02\x02\x02`^\x03\x02" + "\x02\x02`_\x03\x02\x02\x02a\x07\x03\x02\x02\x02bc\x07\x19\x02\x02cd\x05" + "@!\x02dh\x07'\x02\x02eg\x05\n\x06\x02fe\x03\x02\x02\x02gj\x03\x02\x02" + "\x02hf\x03\x02\x02\x02hi\x03\x02\x02\x02ik\x03\x02\x02\x02jh\x03\x02\x02" + "\x02kl\x07(\x02\x02l\t\x03\x02\x02\x02mp\x05\b\x05\x02np\x05\x06\x04\x02" + "om\x03\x02\x02\x02on\x03\x02\x02\x02p\v\x03\x02\x02\x02qr\x07\x18\x02" + "\x02rs\x05\x1E\x10\x02st\x07\x15\x02\x02tu\x05@!\x02uv\x070\x02\x02v\r" + "\x03\x02\x02\x02wx\x07\x18\x02\x02xy\x05\x1E\x10\x02yz\x07\x15\x02\x02" + "z{\x05\x10\t\x02{|\x070\x02\x02|\x0F\x03\x02\x02\x02}~\x07\x04\x02\x02" + "~\x7F\x07#\x02\x02\x7F\x80\x05:\x1E\x02\x80\x82\x07$\x02\x02\x81\x83\x05" + "4\x1B\x02\x82\x81\x03\x02\x02\x02\x82\x83\x03\x02\x02\x02\x83\x11\x03" + "\x02\x02\x02\x84\x85\x07\x18\x02\x02\x85\x86\x05\x1E\x10\x02\x86\x87\x07" + "\x15\x02\x02\x87\x88\x05&\x14\x02\x88\x89\x070\x02\x02\x89\x13\x03\x02" + "\x02\x02\x8A\x8C\x05\x16\f\x02\x8B\x8D\x05\x18\r\x02\x8C\x8B\x03\x02\x02" + "\x02\x8C\x8D\x03\x02\x02\x02\x8D\x15\x03\x02\x02\x02\x8E\x8F\x07*\x02" + "\x02\x8F\x90\x07#\x02\x02\x90\x91\x05&\x14\x02\x91\x92\x07$\x02\x02\x92" + "\x93\x05\x1C\x0F\x02\x93\x17\x03\x02\x02\x02\x94\x95\x07+\x02\x02\x95" + "\x96\x05\x1C\x0F\x02\x96\x19\x03\x02\x02\x02\x97\x98\x075\x02\x02\x98" + "\x9C\x07\x1B\x02\x02\x99\x9A\x075\x02\x02\x9A\x9C\x07\x17\x02\x02\x9B" + "\x97\x03\x02\x02\x02\x9B\x99\x03\x02\x02\x02\x9C\x1B\x03\x02\x02\x02\x9D" + "\xA1\x07'\x02\x02\x9E\xA0\x05\x06\x04\x02\x9F\x9E\x03\x02\x02\x02\xA0" + "\xA3\x03\x02\x02\x02\xA1\x9F\x03\x02\x02\x02\xA1\xA2\x03\x02\x02\x02\xA2" + "\xA4\x03\x02\x02\x02\xA3\xA1\x03\x02\x02\x02\xA4\xA7\x07(\x02\x02\xA5" + "\xA7\x05\x06\x04\x02\xA6\x9D\x03\x02\x02\x02\xA6\xA5\x03\x02\x02\x02\xA7" + "\x1D\x03\x02\x02\x02\xA8\xA9\x075\x02\x02\xA9\x1F\x03\x02\x02\x02\xAA" + "\xAD\x07.\x02\x02\xAB\xAE\x05$\x13\x02\xAC\xAE\x05&\x14\x02\xAD\xAB\x03" + "\x02\x02\x02\xAD\xAC\x03\x02\x02\x02\xAE\xB2\x03\x02\x02\x02\xAF\xB1\x05" + '"\x12\x02\xB0\xAF\x03\x02\x02\x02\xB1\xB4\x03\x02\x02\x02\xB2\xB0\x03' + "\x02\x02\x02\xB2\xB3\x03\x02\x02\x02\xB3\xB5\x03\x02\x02\x02\xB4\xB2\x03" + "\x02\x02\x02\xB5\xB6\x070\x02\x02\xB6!\x03\x02\x02\x02\xB7\xB8\x07/\x02" + "\x02\xB8\xB9\x075\x02\x02\xB9\xBA\x078\x02\x02\xBA#\x03\x02\x02\x02\xBB" + "\xBC\x05@!\x02\xBC\xBD\x07\x0E\x02\x02\xBD\xBE\x05&\x14\x02\xBE%\x03\x02" + "\x02\x02\xBF\xC0\b\x14\x01\x02\xC0\xC1\x07*\x02\x02\xC1\xC2\x07#\x02\x02" + "\xC2\xC3\x05&\x14\x02\xC3\xC4\x07$\x02\x02\xC4\xC5\x05&\x14\x02\xC5\xC6" + "\x07+\x02\x02\xC6\xC7\x05&\x14\x05\xC7\xCD\x03\x02\x02\x02\xC8\xCA\x05" + "\x1A\x0E\x02\xC9\xC8\x03\x02\x02\x02\xC9\xCA\x03\x02\x02\x02\xCA\xCB\x03" + "\x02\x02\x02\xCB\xCD\x05(\x15\x02\xCC\xBF\x03\x02\x02\x02\xCC\xC9\x03" + "\x02\x02\x02\xCD\xEB\x03\x02\x02\x02\xCE\xCF\f\v\x02\x02\xCF\xD0\x05N" + "(\x02\xD0\xD1\x05&\x14\f\xD1\xEA\x03\x02\x02\x02\xD2\xD3\f\n\x02\x02\xD3" + "\xD4\x05L'\x02\xD4\xD5\x05&\x14\v\xD5\xEA\x03\x02\x02\x02\xD6\xD7\f\t" + "\x02\x02\xD7\xD8\x05J&\x02\xD8\xD9\x05&\x14\n\xD9\xEA\x03\x02\x02\x02" + "\xDA\xDB\f\b\x02\x02\xDB\xDC\x07 \x02\x02\xDC\xEA\x05&\x14\t\xDD\xDE\f" + "\x07\x02\x02\xDE\xDF\x07!\x02\x02\xDF\xEA\x05&\x14\b\xE0\xE1\f\x06\x02" + "\x02\xE1\xE2\x071\x02\x02\xE2\xE3\x05&\x14\x02\xE3\xE4\x07\x1A\x02\x02" + "\xE4\xE5\x05&\x14\x06\xE5\xEA\x03\x02\x02\x02\xE6\xE7\f\x04\x02\x02\xE7" + "\xE8\x07\x19\x02\x02\xE8\xEA\x05*\x16\x02\xE9\xCE\x03\x02\x02\x02\xE9" + "\xD2\x03\x02\x02\x02\xE9\xD6\x03\x02\x02\x02\xE9\xDA\x03\x02\x02\x02\xE9" + "\xDD\x03\x02\x02\x02\xE9\xE0\x03\x02\x02\x02\xE9\xE6\x03\x02\x02\x02\xEA" + "\xED\x03\x02\x02\x02\xEB\xE9\x03\x02\x02\x02\xEB\xEC\x03\x02\x02\x02\xEC" + "'\x03\x02\x02\x02\xED\xEB\x03\x02\x02\x02\xEE\xFB\x058\x1D\x02\xEF\xFB" + "\x050\x19\x02\xF0\xFB\x052\x1A\x02\xF1\xF2\x07#\x02\x02\xF2\xF3\x05&\x14" + '\x02\xF3\xF4\x07$\x02\x02\xF4\xFB\x03\x02\x02\x02\xF5\xF6\x07"\x02\x02' + "\xF6\xFB\x05(\x15\x02\xF7\xFB\x05,\x17\x02\xF8\xF9\x07\r\x02\x02\xF9\xFB" + "\x05(\x15\x02\xFA\xEE\x03\x02\x02\x02\xFA\xEF\x03\x02\x02\x02\xFA\xF0" + "\x03\x02\x02\x02\xFA\xF1\x03\x02\x02\x02\xFA\xF5\x03\x02\x02\x02\xFA\xF7" + "\x03\x02\x02\x02\xFA\xF8\x03\x02\x02\x02\xFB)\x03\x02\x02\x02\xFC\u0102" + "\x07%\x02\x02\xFD\xFE\x05&\x14\x02\xFE\xFF\x07\x1C\x02\x02\xFF\u0101\x03" + "\x02\x02\x02\u0100\xFD\x03\x02\x02\x02\u0101\u0104\x03\x02\x02\x02\u0102" + "\u0100\x03\x02\x02\x02\u0102\u0103\x03\x02\x02\x02\u0103\u0106\x03\x02" + "\x02\x02\u0104\u0102\x03\x02\x02\x02\u0105\u0107\x05&\x14\x02\u0106\u0105" + "\x03\x02\x02\x02\u0106\u0107\x03\x02\x02\x02\u0107\u0108\x03\x02\x02\x02" + "\u0108\u0109\x07&\x02\x02\u0109+\x03\x02\x02\x02\u010A\u010B\x075\x02" + "\x02\u010B\u0111\x07#\x02\x02\u010C\u010D\x05.\x18\x02\u010D\u010E\x07" + "\x1C\x02\x02\u010E\u0110\x03\x02\x02\x02\u010F\u010C\x03\x02\x02\x02\u0110" + "\u0113\x03\x02\x02\x02\u0111\u010F\x03\x02\x02\x02\u0111\u0112\x03\x02" + "\x02\x02\u0112\u0115\x03\x02\x02\x02\u0113\u0111\x03\x02\x02\x02\u0114" + "\u0116\x05.\x18\x02\u0115\u0114\x03\x02\x02\x02\u0115\u0116\x03\x02\x02" + "\x02\u0116\u0117\x03\x02\x02\x02\u0117\u0118\x07$\x02\x02\u0118-\x03\x02" + "\x02\x02\u0119\u011A\x075\x02\x02\u011A\u011B\x07\x15\x02\x02\u011B\u011E" + "\x05&\x14\x02\u011C\u011E\x05&\x14\x02\u011D\u0119\x03\x02\x02\x02\u011D" + "\u011C\x03\x02\x02\x02\u011E/\x03\x02\x02\x02\u011F\u0121\x05> \x02\u0120" + "\u0122\x054\x1B\x02\u0121\u0120\x03\x02\x02\x02\u0121\u0122\x03\x02\x02" + "\x02\u01221\x03\x02\x02\x02\u0123\u0124\x07\t\x02\x02\u0124\u0126\x07" + "5\x02\x02\u0125\u0127\x054\x1B\x02\u0126\u0125\x03\x02\x02\x02\u0126\u0127" + "\x03\x02\x02\x02\u01273\x03\x02\x02\x02\u0128\u0129\x07\x1B\x02\x02\u0129" + "\u012D\x056\x1C\x02\u012A\u012B\x07\x16\x02\x02\u012B\u012D\x056\x1C\x02" + "\u012C\u0128\x03\x02\x02\x02\u012C\u012A\x03\x02\x02\x02\u012D5\x03\x02" + "\x02\x02\u012E\u012F\t\x02\x02\x02\u012F7\x03\x02\x02\x02\u0130\u0136" + "\x05<\x1F\x02\u0131\u0133\x05:\x1E\x02\u0132\u0134\x054\x1B\x02\u0133" + "\u0132\x03\x02\x02\x02\u0133\u0134\x03\x02\x02\x02\u0134\u0136\x03\x02" + "\x02\x02\u0135\u0130\x03\x02\x02\x02\u0135\u0131\x03\x02\x02\x02\u0136" + "9\x03\x02\x02\x02\u0137\u0138\x072\x02\x02\u0138;\x03\x02\x02\x02\u0139" + "\u013A\x077\x02\x02\u013A=\x03\x02\x02\x02\u013B\u013C\x05@!\x02\u013C" + '?\x03\x02\x02\x02\u013D\u0141\x05D#\x02\u013E\u0141\x05B"\x02\u013F\u0141' + "\x05F$\x02\u0140\u013D\x03\x02\x02\x02\u0140\u013E\x03\x02\x02\x02\u0140" + "\u013F\x03\x02\x02\x02\u0141A\x03\x02\x02\x02\u0142\u0143\x07)\x02\x02" + "\u0143\u0144\x05D#\x02\u0144C\x03\x02\x02\x02\u0145\u014A\x05H%\x02\u0146" + "\u0147\x07)\x02\x02\u0147\u0149\x05H%\x02\u0148\u0146\x03\x02\x02\x02" + "\u0149\u014C\x03\x02\x02\x02\u014A\u014B\x03\x02\x02\x02\u014A\u0148\x03" + "\x02\x02\x02\u014BE\x03\x02\x02\x02\u014C\u014A\x03\x02\x02\x02\u014D" + "\u0158\x07\x1E\x02\x02\u014E\u0150\x07)\x02\x02\u014F\u014E\x03\x02\x02" + "\x02\u014F\u0150\x03\x02\x02\x02\u0150\u0151\x03\x02\x02\x02\u0151\u0152" + "\x05D#\x02\u0152\u0153\x03\x02\x02\x02\u0153\u0155\x07)\x02\x02\u0154" + "\u0156\t\x03\x02\x02\u0155\u0154\x03\x02\x02\x02\u0155\u0156\x03\x02\x02" + "\x02\u0156\u0158\x03\x02\x02\x02\u0157\u014D\x03\x02\x02\x02\u0157\u014F" + "\x03\x02\x02\x02\u0158G\x03\x02\x02\x02\u0159\u015A\t\x04\x02\x02\u015A" + "I\x03\x02\x02\x02\u015B\u015C\t\x05\x02\x02\u015CK\x03\x02\x02\x02\u015D" + "\u015E\t\x06\x02\x02\u015EM\x03\x02\x02\x02\u015F\u0160\t\x07\x02\x02" + '\u0160O\x03\x02\x02\x02"S[`ho\x82\x8C\x9B\xA1\xA6\xAD\xB2\xC9\xCC\xE9' + "\xEB\xFA\u0102\u0106\u0111\u0115\u011D\u0121\u0126\u012C\u0133\u0135\u0140" + "\u014A\u014F\u0155\u0157";
118614
118608
  KCLangParser.__ATN = void 0;
118615
118609
  class KclangContext extends antlr4ts_ParserRuleContext__WEBPACK_IMPORTED_MODULE_5__.ParserRuleContext {
118616
118610
  EOF() {
@@ -118703,6 +118697,52 @@ class GlobalDefinitionContext extends antlr4ts_ParserRuleContext__WEBPACK_IMPORT
118703
118697
  }
118704
118698
  }
118705
118699
 
118700
+ }
118701
+ class StatementContext extends antlr4ts_ParserRuleContext__WEBPACK_IMPORTED_MODULE_5__.ParserRuleContext {
118702
+ check() {
118703
+ return this.tryGetRuleContext(0, CheckContext);
118704
+ }
118705
+
118706
+ ifStatement() {
118707
+ return this.tryGetRuleContext(0, IfStatementContext);
118708
+ }
118709
+
118710
+ localVariable() {
118711
+ return this.tryGetRuleContext(0, LocalVariableContext);
118712
+ }
118713
+
118714
+ constructor(parent, invokingState) {
118715
+ super(parent, invokingState);
118716
+ } // @Override
118717
+
118718
+
118719
+ get ruleIndex() {
118720
+ return KCLangParser.RULE_statement;
118721
+ } // @Override
118722
+
118723
+
118724
+ enterRule(listener) {
118725
+ if (listener.enterStatement) {
118726
+ listener.enterStatement(this);
118727
+ }
118728
+ } // @Override
118729
+
118730
+
118731
+ exitRule(listener) {
118732
+ if (listener.exitStatement) {
118733
+ listener.exitStatement(this);
118734
+ }
118735
+ } // @Override
118736
+
118737
+
118738
+ accept(visitor) {
118739
+ if (visitor.visitStatement) {
118740
+ return visitor.visitStatement(this);
118741
+ } else {
118742
+ return visitor.visitChildren(this);
118743
+ }
118744
+ }
118745
+
118706
118746
  }
118707
118747
  class InBlockContext extends antlr4ts_ParserRuleContext__WEBPACK_IMPORTED_MODULE_5__.ParserRuleContext {
118708
118748
  IN() {
@@ -118803,52 +118843,6 @@ class InBlockItemContext extends antlr4ts_ParserRuleContext__WEBPACK_IMPORTED_MO
118803
118843
  }
118804
118844
  }
118805
118845
 
118806
- }
118807
- class StatementContext extends antlr4ts_ParserRuleContext__WEBPACK_IMPORTED_MODULE_5__.ParserRuleContext {
118808
- check() {
118809
- return this.tryGetRuleContext(0, CheckContext);
118810
- }
118811
-
118812
- ifStatement() {
118813
- return this.tryGetRuleContext(0, IfStatementContext);
118814
- }
118815
-
118816
- localVariable() {
118817
- return this.tryGetRuleContext(0, LocalVariableContext);
118818
- }
118819
-
118820
- constructor(parent, invokingState) {
118821
- super(parent, invokingState);
118822
- } // @Override
118823
-
118824
-
118825
- get ruleIndex() {
118826
- return KCLangParser.RULE_statement;
118827
- } // @Override
118828
-
118829
-
118830
- enterRule(listener) {
118831
- if (listener.enterStatement) {
118832
- listener.enterStatement(this);
118833
- }
118834
- } // @Override
118835
-
118836
-
118837
- exitRule(listener) {
118838
- if (listener.exitStatement) {
118839
- listener.exitStatement(this);
118840
- }
118841
- } // @Override
118842
-
118843
-
118844
- accept(visitor) {
118845
- if (visitor.visitStatement) {
118846
- return visitor.visitStatement(this);
118847
- } else {
118848
- return visitor.visitChildren(this);
118849
- }
118850
- }
118851
-
118852
118846
  }
118853
118847
  class GlobalVariableContext extends antlr4ts_ParserRuleContext__WEBPACK_IMPORTED_MODULE_5__.ParserRuleContext {
118854
118848
  VAR() {
@@ -119203,6 +119197,52 @@ class ElsePartContext extends antlr4ts_ParserRuleContext__WEBPACK_IMPORTED_MODUL
119203
119197
  }
119204
119198
  }
119205
119199
 
119200
+ }
119201
+ class LabelContext extends antlr4ts_ParserRuleContext__WEBPACK_IMPORTED_MODULE_5__.ParserRuleContext {
119202
+ NAME() {
119203
+ return this.getToken(KCLangParser.NAME, 0);
119204
+ }
119205
+
119206
+ COLON() {
119207
+ return this.tryGetToken(KCLangParser.COLON, 0);
119208
+ }
119209
+
119210
+ HASH() {
119211
+ return this.tryGetToken(KCLangParser.HASH, 0);
119212
+ }
119213
+
119214
+ constructor(parent, invokingState) {
119215
+ super(parent, invokingState);
119216
+ } // @Override
119217
+
119218
+
119219
+ get ruleIndex() {
119220
+ return KCLangParser.RULE_label;
119221
+ } // @Override
119222
+
119223
+
119224
+ enterRule(listener) {
119225
+ if (listener.enterLabel) {
119226
+ listener.enterLabel(this);
119227
+ }
119228
+ } // @Override
119229
+
119230
+
119231
+ exitRule(listener) {
119232
+ if (listener.exitLabel) {
119233
+ listener.exitLabel(this);
119234
+ }
119235
+ } // @Override
119236
+
119237
+
119238
+ accept(visitor) {
119239
+ if (visitor.visitLabel) {
119240
+ return visitor.visitLabel(this);
119241
+ } else {
119242
+ return visitor.visitChildren(this);
119243
+ }
119244
+ }
119245
+
119206
119246
  }
119207
119247
  class BodyContext extends antlr4ts_ParserRuleContext__WEBPACK_IMPORTED_MODULE_5__.ParserRuleContext {
119208
119248
  statement(i) {
@@ -119456,48 +119496,6 @@ class ExpressionContext extends antlr4ts_ParserRuleContext__WEBPACK_IMPORTED_MOD
119456
119496
  super.copyFrom(ctx);
119457
119497
  }
119458
119498
 
119459
- }
119460
- class OneOfContext extends ExpressionContext {
119461
- expression() {
119462
- return this.getRuleContext(0, ExpressionContext);
119463
- }
119464
-
119465
- IN() {
119466
- return this.getToken(KCLangParser.IN, 0);
119467
- }
119468
-
119469
- expressionSequence() {
119470
- return this.getRuleContext(0, ExpressionSequenceContext);
119471
- }
119472
-
119473
- constructor(ctx) {
119474
- super(ctx.parent, ctx.invokingState);
119475
- this.copyFrom(ctx);
119476
- } // @Override
119477
-
119478
-
119479
- enterRule(listener) {
119480
- if (listener.enterOneOf) {
119481
- listener.enterOneOf(this);
119482
- }
119483
- } // @Override
119484
-
119485
-
119486
- exitRule(listener) {
119487
- if (listener.exitOneOf) {
119488
- listener.exitOneOf(this);
119489
- }
119490
- } // @Override
119491
-
119492
-
119493
- accept(visitor) {
119494
- if (visitor.visitOneOf) {
119495
- return visitor.visitOneOf(this);
119496
- } else {
119497
- return visitor.visitChildren(this);
119498
- }
119499
- }
119500
-
119501
119499
  }
119502
119500
  class CompositionContext extends ExpressionContext {
119503
119501
  expression(i) {
@@ -119771,13 +119769,17 @@ class TernaryContext extends ExpressionContext {
119771
119769
  }
119772
119770
 
119773
119771
  }
119774
- class UnaryContext extends ExpressionContext {
119775
- unaryExpression() {
119776
- return this.getRuleContext(0, UnaryExpressionContext);
119772
+ class OneOfContext extends ExpressionContext {
119773
+ expression() {
119774
+ return this.getRuleContext(0, ExpressionContext);
119777
119775
  }
119778
119776
 
119779
- label() {
119780
- return this.tryGetRuleContext(0, LabelContext);
119777
+ IN() {
119778
+ return this.getToken(KCLangParser.IN, 0);
119779
+ }
119780
+
119781
+ expressionSequence() {
119782
+ return this.getRuleContext(0, ExpressionSequenceContext);
119781
119783
  }
119782
119784
 
119783
119785
  constructor(ctx) {
@@ -119787,68 +119789,60 @@ class UnaryContext extends ExpressionContext {
119787
119789
 
119788
119790
 
119789
119791
  enterRule(listener) {
119790
- if (listener.enterUnary) {
119791
- listener.enterUnary(this);
119792
+ if (listener.enterOneOf) {
119793
+ listener.enterOneOf(this);
119792
119794
  }
119793
119795
  } // @Override
119794
119796
 
119795
119797
 
119796
119798
  exitRule(listener) {
119797
- if (listener.exitUnary) {
119798
- listener.exitUnary(this);
119799
+ if (listener.exitOneOf) {
119800
+ listener.exitOneOf(this);
119799
119801
  }
119800
119802
  } // @Override
119801
119803
 
119802
119804
 
119803
119805
  accept(visitor) {
119804
- if (visitor.visitUnary) {
119805
- return visitor.visitUnary(this);
119806
+ if (visitor.visitOneOf) {
119807
+ return visitor.visitOneOf(this);
119806
119808
  } else {
119807
119809
  return visitor.visitChildren(this);
119808
119810
  }
119809
119811
  }
119810
119812
 
119811
119813
  }
119812
- class LabelContext extends antlr4ts_ParserRuleContext__WEBPACK_IMPORTED_MODULE_5__.ParserRuleContext {
119813
- NAME() {
119814
- return this.getToken(KCLangParser.NAME, 0);
119815
- }
119816
-
119817
- COLON() {
119818
- return this.tryGetToken(KCLangParser.COLON, 0);
119814
+ class UnaryContext extends ExpressionContext {
119815
+ unaryExpression() {
119816
+ return this.getRuleContext(0, UnaryExpressionContext);
119819
119817
  }
119820
119818
 
119821
- HASH() {
119822
- return this.tryGetToken(KCLangParser.HASH, 0);
119819
+ label() {
119820
+ return this.tryGetRuleContext(0, LabelContext);
119823
119821
  }
119824
119822
 
119825
- constructor(parent, invokingState) {
119826
- super(parent, invokingState);
119827
- } // @Override
119828
-
119829
-
119830
- get ruleIndex() {
119831
- return KCLangParser.RULE_label;
119823
+ constructor(ctx) {
119824
+ super(ctx.parent, ctx.invokingState);
119825
+ this.copyFrom(ctx);
119832
119826
  } // @Override
119833
119827
 
119834
119828
 
119835
119829
  enterRule(listener) {
119836
- if (listener.enterLabel) {
119837
- listener.enterLabel(this);
119830
+ if (listener.enterUnary) {
119831
+ listener.enterUnary(this);
119838
119832
  }
119839
119833
  } // @Override
119840
119834
 
119841
119835
 
119842
119836
  exitRule(listener) {
119843
- if (listener.exitLabel) {
119844
- listener.exitLabel(this);
119837
+ if (listener.exitUnary) {
119838
+ listener.exitUnary(this);
119845
119839
  }
119846
119840
  } // @Override
119847
119841
 
119848
119842
 
119849
119843
  accept(visitor) {
119850
- if (visitor.visitLabel) {
119851
- return visitor.visitLabel(this);
119844
+ if (visitor.visitUnary) {
119845
+ return visitor.visitUnary(this);
119852
119846
  } else {
119853
119847
  return visitor.visitChildren(this);
119854
119848
  }
@@ -129224,12 +129218,6 @@ __webpack_require__.r(__webpack_exports__);
129224
129218
  /* harmony export */ "DataDeclarationGenerationTimeHelper": () => (/* binding */ DataDeclarationGenerationTimeHelper)
129225
129219
  /* harmony export */ });
129226
129220
  /* harmony import */ var _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../Common/ModelPath/ModelPath */ "./Common/ModelPath/ModelPath.ts");
129227
- /* harmony import */ var _Common_IterableUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../Common/IterableUtils */ "./Common/IterableUtils.ts");
129228
- /* harmony import */ var _Common_TypingUtils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../Common/TypingUtils */ "./Common/TypingUtils.ts");
129229
- /* harmony import */ var _Common_ModelPath_Set_Set2__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../Common/ModelPath/Set/Set2 */ "./Common/ModelPath/Set/Set2.ts");
129230
-
129231
-
129232
-
129233
129221
 
129234
129222
  class DataDeclarationGenerationTimeHelper {
129235
129223
  constructor(dataDeclaration) {
@@ -129287,54 +129275,6 @@ class DataDeclarationGenerationTimeHelper {
129287
129275
  return this.dataDeclaration[(0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.convertToLegacyPath)(targetPath)];
129288
129276
  }
129289
129277
 
129290
- getOptionalSections() {
129291
- var _this$dataDeclaration, _this$dataDeclaration2;
129292
-
129293
- const anyPath = Object.keys(this.dataDeclaration)[0];
129294
-
129295
- if (anyPath == undefined) {
129296
- return (0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_2__.reject)();
129297
- }
129298
-
129299
- const absolutePath = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.createAbsolute)(anyPath);
129300
- const root = _Common_IterableUtils__WEBPACK_IMPORTED_MODULE_1__.IterUtils.first(absolutePath.getPathParts());
129301
- return (_this$dataDeclaration = (_this$dataDeclaration2 = this.dataDeclaration[root !== null && root !== void 0 ? root : ""]) === null || _this$dataDeclaration2 === void 0 ? void 0 : _this$dataDeclaration2.optionalSections) !== null && _this$dataDeclaration !== void 0 ? _this$dataDeclaration : [];
129302
- }
129303
-
129304
- getAllPaths() {
129305
- return Object.keys(this.dataDeclaration).map(path => (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.createAbsoluteFromMask)(path, _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.PathTokens.each));
129306
- }
129307
-
129308
- getAllPathsBySection() {
129309
- const unpackSectionNameFromFn = fnCode => {
129310
- var _fnCode$match, _fnCode$match$groups;
129311
-
129312
- return (_fnCode$match = fnCode.match(/getSectionFunction\('(?<name>[\w\d_]+?)'\)/)) === null || _fnCode$match === void 0 ? void 0 : (_fnCode$match$groups = _fnCode$match.groups) === null || _fnCode$match$groups === void 0 ? void 0 : _fnCode$match$groups["name"];
129313
- };
129314
-
129315
- const section2Path = Object.entries(this.dataDeclaration).map(current => {
129316
- var _pathData$section;
129317
-
129318
- const path = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.createAbsoluteFromMask)(current[0], _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.PathTokens.each);
129319
- const pathData = current[1];
129320
- const allSections = _Common_IterableUtils__WEBPACK_IMPORTED_MODULE_1__.IterUtils.distinctBy(((_pathData$section = pathData.section) !== null && _pathData$section !== void 0 ? _pathData$section : [] // eslint-disable-next-line no-warning-comments
129321
- // TODO: Обработать вариант с множественностью
129322
- ).map(section => typeof section === "string" || Array.isArray(section) ? section : typeof section === "object" && "fn" in section && typeof section.fn === "string" ? unpackSectionNameFromFn(section.fn) : undefined).flat(1).filter(_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_2__.isNotNullOrUndefined).map(x => ({
129323
- section: x,
129324
- path: path
129325
- })), x => x.section);
129326
- return [...allSections];
129327
- }).flat(1).reduce((acc, current) => {
129328
- var _acc$get;
129329
-
129330
- const currentPaths = (_acc$get = acc.get(current.section)) !== null && _acc$get !== void 0 ? _acc$get : new _Common_ModelPath_Set_Set2__WEBPACK_IMPORTED_MODULE_3__.Set2();
129331
- currentPaths.add(current.path);
129332
- acc.set(current.section, currentPaths);
129333
- return acc;
129334
- }, new Map());
129335
- return section2Path;
129336
- }
129337
-
129338
129278
  }
129339
129279
 
129340
129280
  /***/ }),
@@ -131955,7 +131895,6 @@ __webpack_require__.r(__webpack_exports__);
131955
131895
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
131956
131896
  /* harmony export */ "FLangNode": () => (/* binding */ FLangNode),
131957
131897
  /* harmony export */ "FLangExpression": () => (/* binding */ FLangExpression),
131958
- /* harmony export */ "FLangDecimalExpression": () => (/* binding */ FLangDecimalExpression),
131959
131898
  /* harmony export */ "ValueReferenceExpression": () => (/* binding */ ValueReferenceExpression),
131960
131899
  /* harmony export */ "BinaryExpression": () => (/* binding */ BinaryExpression),
131961
131900
  /* harmony export */ "BinaryBooleanExpression": () => (/* binding */ BinaryBooleanExpression),
@@ -131983,12 +131922,10 @@ __webpack_require__.r(__webpack_exports__);
131983
131922
  /* harmony export */ "AnonymousFunctionDeclarationExpression": () => (/* binding */ AnonymousFunctionDeclarationExpression),
131984
131923
  /* harmony export */ "CallExpression": () => (/* binding */ CallExpression),
131985
131924
  /* harmony export */ "ReduceCallExpression": () => (/* binding */ ReduceCallExpression),
131986
- /* harmony export */ "ReduceMultipleCallExpression": () => (/* binding */ ReduceMultipleCallExpression),
131987
131925
  /* harmony export */ "CastExpression": () => (/* binding */ CastExpression),
131988
131926
  /* harmony export */ "ConstExpression": () => (/* binding */ ConstExpression),
131989
131927
  /* harmony export */ "StringLiteralExpression": () => (/* binding */ StringLiteralExpression),
131990
131928
  /* harmony export */ "DecimalLiteralExpression": () => (/* binding */ DecimalLiteralExpression),
131991
- /* harmony export */ "DictLiteralExpression": () => (/* binding */ DictLiteralExpression),
131992
131929
  /* harmony export */ "BoolLiteralExpression": () => (/* binding */ BoolLiteralExpression),
131993
131930
  /* harmony export */ "AbsExpression": () => (/* binding */ AbsExpression),
131994
131931
  /* harmony export */ "LenExpression": () => (/* binding */ LenExpression),
@@ -131996,27 +131933,17 @@ __webpack_require__.r(__webpack_exports__);
131996
131933
  /* harmony export */ "FractionalLenExpression": () => (/* binding */ FractionalLenExpression),
131997
131934
  /* harmony export */ "RoundExpression": () => (/* binding */ RoundExpression),
131998
131935
  /* harmony export */ "FloorExpression": () => (/* binding */ FloorExpression),
131999
- /* harmony export */ "AddSumExpression": () => (/* binding */ AddSumExpression),
132000
- /* harmony export */ "GetExpression": () => (/* binding */ GetExpression),
132001
131936
  /* harmony export */ "IntegerLiteralExpression": () => (/* binding */ IntegerLiteralExpression),
132002
131937
  /* harmony export */ "NullLiteralExpression": () => (/* binding */ NullLiteralExpression),
132003
131938
  /* harmony export */ "ConditionalExpression": () => (/* binding */ ConditionalExpression),
132004
131939
  /* harmony export */ "DateNowExpression": () => (/* binding */ DateNowExpression),
132005
- /* harmony export */ "NullCoalesceExpression": () => (/* binding */ NullCoalesceExpression),
132006
- /* harmony export */ "NoDepsExpression": () => (/* binding */ NoDepsExpression),
132007
131940
  /* harmony export */ "FLangStatement": () => (/* binding */ FLangStatement),
132008
131941
  /* harmony export */ "SetStatement": () => (/* binding */ SetStatement)
132009
131942
  /* harmony export */ });
132010
131943
  /* harmony import */ var _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../Common/ModelPath/ModelPath */ "./Common/ModelPath/ModelPath.ts");
132011
131944
 
132012
- class FLangNode {
132013
- toString() {
132014
- return this.convertToString();
132015
- }
132016
-
132017
- }
131945
+ class FLangNode {}
132018
131946
  class FLangExpression extends FLangNode {}
132019
- class FLangDecimalExpression extends FLangExpression {}
132020
131947
 
132021
131948
  function toFLangString(modelPath) {
132022
131949
  return (modelPath.isAbsolute() ? "/" : "") + modelPath.getPathPartsAsArray().map(x => {
@@ -132030,18 +131957,6 @@ function toFLangString(modelPath) {
132030
131957
  }).join("/");
132031
131958
  }
132032
131959
 
132033
- function toFLangIterString(modelPath) {
132034
- return (modelPath.isAbsolute() ? "/" : "") + modelPath.getPathPartsAsArray().map(x => {
132035
- if (x === _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.PathTokens.each) {
132036
- return "#iter";
132037
- } else if (x === _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.PathTokens.current) {
132038
- return "#iter";
132039
- }
132040
-
132041
- return x;
132042
- }).join("/");
132043
- }
132044
-
132045
131960
  class ValueReferenceExpression extends FLangExpression {
132046
131961
  constructor(modePath, valueName) {
132047
131962
  super();
@@ -132217,7 +132132,6 @@ class BuildInTypeExpression extends TypeReferenceExpression {
132217
132132
  }
132218
132133
  BuildInTypeExpression.decimal = new BuildInTypeExpression("decimal");
132219
132134
  BuildInTypeExpression.string = new BuildInTypeExpression("string");
132220
- BuildInTypeExpression.dict = new BuildInTypeExpression("dict");
132221
132135
  class ArgumentDeclarationExpression extends FLangExpression {
132222
132136
  constructor(argumentName, typeExpression) {
132223
132137
  super();
@@ -132289,26 +132203,6 @@ class ReduceCallExpression extends CallExpression {
132289
132203
  return `reduce(${toFLangString(this.modelPath)}/#iter, ${this.reduceFunction.convertToString()}, ${this.initialValue.convertToString()})`;
132290
132204
  }
132291
132205
 
132292
- }
132293
- class ReduceMultipleCallExpression extends CallExpression {
132294
- constructor(baseModelPath, reduceModelPath, reduceFunction, initialValue) {
132295
- super("reduce", []);
132296
- this.modelPath = void 0;
132297
- this.reduceModelPath = void 0;
132298
- this.reduceFunction = void 0;
132299
- this.initialValue = void 0;
132300
- this.reduceModelPath = reduceModelPath;
132301
- this.initialValue = initialValue;
132302
- this.modelPath = baseModelPath;
132303
- this.reduceFunction = reduceFunction;
132304
- }
132305
-
132306
- convertToString() {
132307
- const basePath = toFLangString(this.modelPath);
132308
- const iterationPathPart = toFLangIterString(this.reduceModelPath);
132309
- return `reduce(${basePath}/#iter/${iterationPathPart}/#iter, ${this.reduceFunction.convertToString()}, ${this.initialValue.convertToString()})`;
132310
- }
132311
-
132312
132206
  }
132313
132207
  class CastExpression extends FLangExpression {
132314
132208
  constructor(targetExpression, targetType, castArgument) {
@@ -132347,7 +132241,7 @@ class StringLiteralExpression extends ConstExpression {
132347
132241
  }
132348
132242
 
132349
132243
  }
132350
- class DecimalLiteralExpression extends FLangDecimalExpression {
132244
+ class DecimalLiteralExpression extends ConstExpression {
132351
132245
  constructor(value) {
132352
132246
  super();
132353
132247
  this.value = void 0;
@@ -132358,12 +132252,6 @@ class DecimalLiteralExpression extends FLangDecimalExpression {
132358
132252
  return `decimal("${typeof this.value === "string" ? this.value : JSON.stringify(this.value)}")`;
132359
132253
  }
132360
132254
 
132361
- }
132362
- class DictLiteralExpression extends FLangExpression {
132363
- convertToString() {
132364
- return `dict()`;
132365
- }
132366
-
132367
132255
  }
132368
132256
  class BoolLiteralExpression extends ConstExpression {
132369
132257
  constructor(value) {
@@ -132377,7 +132265,7 @@ class BoolLiteralExpression extends ConstExpression {
132377
132265
  }
132378
132266
 
132379
132267
  }
132380
- class AbsExpression extends FLangDecimalExpression {
132268
+ class AbsExpression extends ConstExpression {
132381
132269
  constructor(expression) {
132382
132270
  super();
132383
132271
  this.expression = void 0;
@@ -132389,7 +132277,7 @@ class AbsExpression extends FLangDecimalExpression {
132389
132277
  }
132390
132278
 
132391
132279
  }
132392
- class LenExpression extends FLangDecimalExpression {
132280
+ class LenExpression extends FLangExpression {
132393
132281
  constructor(expression) {
132394
132282
  super();
132395
132283
  this.expression = void 0;
@@ -132401,7 +132289,7 @@ class LenExpression extends FLangDecimalExpression {
132401
132289
  }
132402
132290
 
132403
132291
  }
132404
- class NumLenExpression extends FLangDecimalExpression {
132292
+ class NumLenExpression extends FLangExpression {
132405
132293
  constructor(expression) {
132406
132294
  super();
132407
132295
  this.expression = void 0;
@@ -132413,7 +132301,7 @@ class NumLenExpression extends FLangDecimalExpression {
132413
132301
  }
132414
132302
 
132415
132303
  }
132416
- class FractionalLenExpression extends FLangDecimalExpression {
132304
+ class FractionalLenExpression extends FLangExpression {
132417
132305
  constructor(expression) {
132418
132306
  super();
132419
132307
  this.expression = void 0;
@@ -132425,7 +132313,7 @@ class FractionalLenExpression extends FLangDecimalExpression {
132425
132313
  }
132426
132314
 
132427
132315
  }
132428
- class RoundExpression extends FLangDecimalExpression {
132316
+ class RoundExpression extends ConstExpression {
132429
132317
  constructor(expression, fractionalDigits) {
132430
132318
  super();
132431
132319
  this.expression = void 0;
@@ -132451,41 +132339,6 @@ class FloorExpression extends ConstExpression {
132451
132339
  return `floor(${this.expression.convertToString()})`;
132452
132340
  }
132453
132341
 
132454
- }
132455
- class AddSumExpression extends FLangExpression {
132456
- constructor(argumentReference, key, value) {
132457
- super();
132458
- this.argumentReference = void 0;
132459
- this.key = void 0;
132460
- this.valuePath = void 0;
132461
- this.key = key;
132462
- this.valuePath = value;
132463
- this.argumentReference = argumentReference;
132464
- }
132465
-
132466
- convertToString() {
132467
- const dictName = this.argumentReference.convertToString();
132468
- const key = this.key.convertToString();
132469
- const value = this.valuePath.convertToString();
132470
- return `addSum(${dictName}, ${key}, ${value})`;
132471
- }
132472
-
132473
- }
132474
- class GetExpression extends FLangDecimalExpression {
132475
- constructor(dictionaryExpression, key) {
132476
- super();
132477
- this.dictionaryExpression = void 0;
132478
- this.key = void 0;
132479
- this.key = key;
132480
- this.dictionaryExpression = dictionaryExpression;
132481
- }
132482
-
132483
- convertToString() {
132484
- const dict = this.dictionaryExpression.convertToString();
132485
- const key = this.key.convertToString();
132486
- return `get(${dict}, ${key})`;
132487
- }
132488
-
132489
132342
  }
132490
132343
  class IntegerLiteralExpression extends ConstExpression {
132491
132344
  constructor(value) {
@@ -132532,38 +132385,6 @@ class DateNowExpression extends FLangExpression {
132532
132385
  return `dateNow()`;
132533
132386
  }
132534
132387
 
132535
- }
132536
- class NullCoalesceExpression extends FLangExpression {
132537
- constructor(expression, elseExpression) {
132538
- super();
132539
- this.expression = void 0;
132540
- this.elseExpression = void 0;
132541
- this.expression = expression;
132542
- this.elseExpression = elseExpression;
132543
- }
132544
-
132545
- convertToString() {
132546
- let expression = this.expression.convertToString();
132547
-
132548
- if (this.expression instanceof LogicalExpression) {
132549
- expression = `(${expression})`;
132550
- }
132551
-
132552
- return `${expression} ?? ${this.elseExpression.convertToString()}`;
132553
- }
132554
-
132555
- }
132556
- class NoDepsExpression extends FLangExpression {
132557
- constructor(expression) {
132558
- super();
132559
- this.expression = void 0;
132560
- this.expression = expression;
132561
- }
132562
-
132563
- convertToString() {
132564
- return `nodeps(${this.expression.convertToString()})`;
132565
- }
132566
-
132567
132388
  }
132568
132389
  class FLangStatement extends FLangNode {}
132569
132390
  class SetStatement extends FLangStatement {
@@ -132583,56 +132404,6 @@ class SetStatement extends FLangStatement {
132583
132404
 
132584
132405
  /***/ }),
132585
132406
 
132586
- /***/ "./Generator/src/generators/ServerSideFLangNormalization/FLang/FlangUtils.ts":
132587
- /*!***********************************************************************************!*\
132588
- !*** ./Generator/src/generators/ServerSideFLangNormalization/FLang/FlangUtils.ts ***!
132589
- \***********************************************************************************/
132590
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
132591
-
132592
- "use strict";
132593
- __webpack_require__.r(__webpack_exports__);
132594
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
132595
- /* harmony export */ "getFlatArgumentExpressions": () => (/* binding */ getFlatArgumentExpressions),
132596
- /* harmony export */ "castOperandToStringIfNeed": () => (/* binding */ castOperandToStringIfNeed),
132597
- /* harmony export */ "castOperandToBoolIfNeed": () => (/* binding */ castOperandToBoolIfNeed),
132598
- /* harmony export */ "castOperandToDecimalIfNeed": () => (/* binding */ castOperandToDecimalIfNeed)
132599
- /* harmony export */ });
132600
- /* harmony import */ var _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../AutoCalculationsGenerator/AutoCalculationsFromFormulas/KCXmlContract/Formula */ "./Generator/src/generators/AutoCalculationsGenerator/AutoCalculationsFromFormulas/KCXmlContract/Formula.ts");
132601
- /* harmony import */ var _FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FLangCodeDom */ "./Generator/src/generators/ServerSideFLangNormalization/FLang/FLangCodeDom.ts");
132602
-
132603
-
132604
- function getFlatArgumentExpressions(expressions) {
132605
- return expressions.reduce((acc, curr) => {
132606
- if (curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_0__.FormulaArgumentExpression) {
132607
- return acc.concat(curr);
132608
- }
132609
-
132610
- if (curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_0__.FormulaSumExpression || curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_0__.FormulaDivisionExpression || curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_0__.FormulaMultiplyExpression) {
132611
- return acc.concat(getFlatArgumentExpressions(curr.arguments));
132612
- } // eslint-disable-next-line no-warning-comments
132613
- // TODO: Этот код никуда не годится. Тут нужно дублировать сбор зависимостей по всему дереву
132614
- // Пока оставляю, т.к. придётся переписать обход дерева выражений
132615
-
132616
-
132617
- if (curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_0__.FormulaMinusExpression || curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_0__.FormulaRoundExpression || curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_0__.FormulaAbsExpression || curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_0__.FormulaAbsExpression) {
132618
- return acc.concat(getFlatArgumentExpressions([curr.expression]));
132619
- }
132620
-
132621
- return acc;
132622
- }, []);
132623
- }
132624
- function castOperandToStringIfNeed(operandExpression) {
132625
- return operandExpression instanceof _FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.StringLiteralExpression || operandExpression instanceof _FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.CastExpression && operandExpression.getTargetType() == "string" ? operandExpression : new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.CastExpression(operandExpression, "string");
132626
- }
132627
- function castOperandToBoolIfNeed(operandExpression) {
132628
- return operandExpression instanceof _FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.BoolLiteralExpression || operandExpression instanceof _FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.CastExpression && operandExpression.getTargetType() == "bool" ? operandExpression : new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.CastExpression(operandExpression, "bool");
132629
- }
132630
- function castOperandToDecimalIfNeed(operandExpression, defaultValue) {
132631
- return operandExpression instanceof _FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.FLangDecimalExpression || operandExpression instanceof _FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.CastExpression && operandExpression.getTargetType() == "decimal" ? operandExpression : new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.CastExpression(operandExpression, "decimal", defaultValue != undefined ? new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.DecimalLiteralExpression(defaultValue) : undefined);
132632
- }
132633
-
132634
- /***/ }),
132635
-
132636
132407
  /***/ "./Generator/src/generators/ServerSideFLangNormalization/FormulaOnlyNormalizationRuleGenerator.ts":
132637
132408
  /*!********************************************************************************************************!*\
132638
132409
  !*** ./Generator/src/generators/ServerSideFLangNormalization/FormulaOnlyNormalizationRuleGenerator.ts ***!
@@ -132665,14 +132436,16 @@ class FormulaOnlyNormalizationRuleGenerator extends _NormalizationRulesGenerator
132665
132436
  const target = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_2__.createModelPath)(formula.target.replace(/\@/g, ""), false);
132666
132437
  const fullTarget = (0,_DataSchema_DataSchemaUtils__WEBPACK_IMPORTED_MODULE_1__.adjustPathMultiplicityComplex)(prefix.joinWith(target).normalize(), this.formSchemaRng, this.dataDeclarationHelper);
132667
132438
  const precalculationRules = [];
132668
- const defaultValue = this.dataDeclarationHelper.getDefaultValue(fullTarget.toLegacyPath());
132669
132439
  const isTargetAutoField = this.dataDeclarationHelper.isNodeHasAutoFlagEntry(fullTarget.toAbsolute());
132670
132440
  const result = [];
132671
- result.push(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(fullTarget, "value"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.NullCoalesceExpression(this.compileExpressionToFlashExpression(formula.expression, prefix, fullTarget, x => precalculationRules.push(x)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.StringLiteralExpression(defaultValue))));
132441
+ result.push(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(fullTarget, "value"), this.compileExpressionToFlashExpression(formula.expression, prefix, fullTarget, x => precalculationRules.push(x))));
132672
132442
  result.push(...precalculationRules);
132673
132443
 
132674
132444
  if (isTargetAutoField) {
132675
- result.push(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(fullTarget, "autoValue"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.NullCoalesceExpression(this.compileExpressionToFlashExpression(formula.expression, prefix, fullTarget, x => precalculationRules.push(x)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.StringLiteralExpression(defaultValue))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(fullTarget, "autoFlag"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.IsEqualsBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(fullTarget.toCurrentIteration(), "value"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(fullTarget.toCurrentIteration(), "autoValue")), "string")));
132445
+ result.push(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(fullTarget, "autoValue"), this.compileExpressionToFlashExpression(formula.expression, prefix, fullTarget, x => precalculationRules.push(x))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(fullTarget, "autoFlag"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.IsEqualsBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(fullTarget.toCurrentIteration(), "value"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(fullTarget.toCurrentIteration(), "autoValue")), "string")));
132446
+ result.push(...precalculationRules);
132447
+ } else {
132448
+ result.push(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(fullTarget, "value"), this.compileExpressionToFlashExpression(formula.expression, prefix, fullTarget, x => precalculationRules.push(x))));
132676
132449
  result.push(...precalculationRules);
132677
132450
  }
132678
132451
 
@@ -132707,12 +132480,8 @@ __webpack_require__.r(__webpack_exports__);
132707
132480
  /* harmony import */ var _Common_ModelPath_BuildIterationSequence__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../Common/ModelPath/BuildIterationSequence */ "./Common/ModelPath/BuildIterationSequence.ts");
132708
132481
  /* harmony import */ var _Common_ModelPath_Map_AbsoluteModelPathMap__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../Common/ModelPath/Map/AbsoluteModelPathMap */ "./Common/ModelPath/Map/AbsoluteModelPathMap.ts");
132709
132482
  /* harmony import */ var _Common_ModelPath_PathSplitHelper__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../Common/ModelPath/PathSplitHelper */ "./Common/ModelPath/PathSplitHelper.ts");
132710
- /* harmony import */ var _Engine_src_Engine_Core_PathUtils_PathUtils__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../Engine/src/Engine/Core/PathUtils/PathUtils */ "./Engine/src/Engine/Core/PathUtils/PathUtils.ts");
132711
- /* harmony import */ var _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./FLang/FLangCodeDom */ "./Generator/src/generators/ServerSideFLangNormalization/FLang/FLangCodeDom.ts");
132712
- /* harmony import */ var _FLangValidationBuildContext__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./FLangValidationBuildContext */ "./Generator/src/generators/ServerSideFLangNormalization/FLangValidationBuildContext.ts");
132713
- /* harmony import */ var _FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./FLang/FlangUtils */ "./Generator/src/generators/ServerSideFLangNormalization/FLang/FlangUtils.ts");
132714
-
132715
-
132483
+ /* harmony import */ var _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./FLang/FLangCodeDom */ "./Generator/src/generators/ServerSideFLangNormalization/FLang/FLangCodeDom.ts");
132484
+ /* harmony import */ var _FLangValidationBuildContext__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./FLangValidationBuildContext */ "./Generator/src/generators/ServerSideFLangNormalization/FLangValidationBuildContext.ts");
132716
132485
 
132717
132486
 
132718
132487
 
@@ -132755,42 +132524,13 @@ class NormalizationRulesGenerator {
132755
132524
  const initializeRules = this.buildInitializeRules(formRoot, resourcesHash);
132756
132525
  let dataDeclarationRules = [...this.buildSugarFLangRules()];
132757
132526
  const formulaFLangRules = [...this.buildFormulaFLangRules()];
132758
- const optionalSectionRules = this.buildOptionalSectionsRules();
132759
- const sugarValidationRules = this.buildSugarValidationRules();
132760
- const autocalculatedValuePaths = formulaFLangRules.map(x => x instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement ? new _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.AbsoluteModelFieldPath(x.left.modePath, x.left.valueName) : undefined).filter(_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_9__.isNotNullOrUndefined);
132527
+ const autocalculatedValuePaths = formulaFLangRules.map(x => x instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement ? new _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.AbsoluteModelFieldPath(x.left.modePath, x.left.valueName) : undefined).filter(_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_9__.isNotNullOrUndefined);
132761
132528
  dataDeclarationRules = dataDeclarationRules.filter(ddp => {
132762
- const ddpTarget = ddp instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement ? new _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.AbsoluteModelFieldPath(ddp.left.modePath, ddp.left.valueName) : undefined;
132529
+ const ddpTarget = ddp instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement ? new _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.AbsoluteModelFieldPath(ddp.left.modePath, ddp.left.valueName) : undefined;
132763
132530
  return ddpTarget == undefined || !autocalculatedValuePaths.some(x => x.isEquals(ddpTarget));
132764
132531
  });
132765
- const allRules = _Common_IterableUtils__WEBPACK_IMPORTED_MODULE_0__.IterUtils.concat(initializeRules, optionalSectionRules, dataDeclarationRules, formulaFLangRules, sugarValidationRules);
132766
- const allUniqueRules = _Common_IterableUtils__WEBPACK_IMPORTED_MODULE_0__.IterUtils.distinctBy(allRules, x => x instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement ? x.left.convertToString() : x.convertToString());
132767
- const allUniqueRulesWithOptionalChecks = Iterator.from(this.rewriteRulesWithOptionalPageCheck(allUniqueRules)).map(x => x.convertToString()).reduce((x, y) => x + (x ? "\n" : "") + y, "");
132768
- return allUniqueRulesWithOptionalChecks;
132769
- }
132770
-
132771
- rewriteRulesWithOptionalPageCheck(rules) {
132772
- const allOptionalSections = (0,_Common_IterableUtils__WEBPACK_IMPORTED_MODULE_0__.reverseArray)(_Common_IterableUtils__WEBPACK_IMPORTED_MODULE_0__.IterUtils.sortBy(this.dataDeclarationHelper.getOptionalSections().map(x => ({
132773
- path: (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createAbsoluteFromMask)(x.path, _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.each),
132774
- sectionId: x.id
132775
- })), x => x.path.toLegacyPath())).toArray();
132776
- const wrappedRules = Iterator.from(rules).map(rule => {
132777
- if (rule instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement && rule.left.valueName != "children") {
132778
- const targetPath = rule.left.modePath;
132779
- const targetOptionalSection = allOptionalSections.find(x => _Engine_src_Engine_Core_PathUtils_PathUtils__WEBPACK_IMPORTED_MODULE_13__.PathUtils.isPrefix(x.path.toLegacyPath(), targetPath.toLegacyPath()));
132780
-
132781
- if (targetOptionalSection != undefined) {
132782
- const targetIsFilledPath = targetOptionalSection.path.joinWith(NormalizationRulesGenerator.optionalSectionFilledFieldName);
132783
-
132784
- if (!targetIsFilledPath.isEquals(targetPath)) {
132785
- const targetIsFilledValueRef = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(targetIsFilledPath.toCurrentIteration(), "value");
132786
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(rule.left, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.EqExpression(targetIsFilledValueRef, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("1")), rule.right, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression()));
132787
- }
132788
- }
132789
- }
132790
-
132791
- return rule;
132792
- });
132793
- return wrappedRules;
132532
+ const allRules = _Common_IterableUtils__WEBPACK_IMPORTED_MODULE_0__.IterUtils.concat(initializeRules, dataDeclarationRules, formulaFLangRules, this.buildSugarValidationRules());
132533
+ return Iterator.from(_Common_IterableUtils__WEBPACK_IMPORTED_MODULE_0__.IterUtils.distinctBy(allRules, x => x instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement ? x.left.convertToString() : x.convertToString())).map(x => x.convertToString()).reduce((x, y) => x + (x ? "\n" : "") + y, "");
132794
132534
  }
132795
132535
 
132796
132536
  buildKcValidationRuleCheck(condition) {
@@ -132813,8 +132553,8 @@ class NormalizationRulesGenerator {
132813
132553
 
132814
132554
  const path = current.target.toLegacyPath();
132815
132555
  const targetCtx = current.errorLevel === "Warning" ? ctx.warnings : ctx.errors;
132816
- const currentExpression = (_targetCtx$path = targetCtx[path]) !== null && _targetCtx$path !== void 0 ? _targetCtx$path : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression();
132817
- const condition = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NegateUnaryExpression(current.checkExpression), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("[" + JSON.stringify(current.message) + "]"), currentExpression);
132556
+ const currentExpression = (_targetCtx$path = targetCtx[path]) !== null && _targetCtx$path !== void 0 ? _targetCtx$path : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NullLiteralExpression();
132557
+ const condition = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NegateUnaryExpression(current.checkExpression), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression("[" + JSON.stringify(current.message) + "]"), currentExpression);
132818
132558
  targetCtx[path] = condition;
132819
132559
  return ctx;
132820
132560
  }, {
@@ -132825,7 +132565,7 @@ class NormalizationRulesGenerator {
132825
132565
  }
132826
132566
 
132827
132567
  buildInitializeRules(formRoot, resourcesHash) {
132828
- const mandatoryRules = [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createAbsolute)(formRoot), "resourcesHash"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression(resourcesHash)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createAbsolute)(formRoot), "normalizationSource"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("server"))];
132568
+ const mandatoryRules = [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createAbsolute)(formRoot), "resourcesHash"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression(resourcesHash)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createAbsolute)(formRoot), "normalizationSource"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression("server"))];
132829
132569
  const thresholdEntry = Object.entries(this.lazyLoadingDeclaration).find(x => x[1].thresholdValue != undefined);
132830
132570
 
132831
132571
  if (thresholdEntry != undefined) {
@@ -132833,48 +132573,14 @@ class NormalizationRulesGenerator {
132833
132573
 
132834
132574
  const thresholdEntryPath = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createFromMask)(`/${thresholdEntry[0]}`, true, _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.each);
132835
132575
  const thresholdValue = (_thresholdEntry$1$thr = (_thresholdEntry$ = thresholdEntry[1]) === null || _thresholdEntry$ === void 0 ? void 0 : _thresholdEntry$.thresholdValue) !== null && _thresholdEntry$1$thr !== void 0 ? _thresholdEntry$1$thr : 0;
132836
- const lazyLoadingEnabledRef = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createAbsolute)(formRoot).joinWith("LazyLoadingEnabled"), "value");
132837
- const statement = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(lazyLoadingEnabledRef, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.GeExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ReduceCallExpression(thresholdEntryPath.trimLastStarIfLastToken().toCurrentIteration(), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.AnonymousFunctionDeclarationExpression(_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.BuildInTypeExpression.decimal, [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentDeclarationExpression("result", _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.BuildInTypeExpression.decimal)], new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SumBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentReferenceExpression("result"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(1))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(thresholdValue)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("true"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("false")));
132576
+ const lazyLoadingEnabledRef = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createAbsolute)(formRoot).joinWith("LazyLoadingEnabled"), "value");
132577
+ const statement = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement(lazyLoadingEnabledRef, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.GeExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ReduceCallExpression(thresholdEntryPath.trimLastStarIfLastToken().toCurrentIteration(), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.AnonymousFunctionDeclarationExpression(_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.BuildInTypeExpression.decimal, [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ArgumentDeclarationExpression("result", _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.BuildInTypeExpression.decimal)], new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SumBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ArgumentReferenceExpression("result"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(1))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(thresholdValue)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression("true"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression("false")));
132838
132578
  return mandatoryRules.concat([statement]);
132839
132579
  }
132840
132580
 
132841
132581
  return mandatoryRules;
132842
132582
  }
132843
132583
 
132844
- buildOptionalSectionIsFilledCheckRule(targetPath, pathsBySection) {
132845
- const targetValueRef = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(targetPath.joinWith(NormalizationRulesGenerator.optionalSectionFilledFieldName), "value");
132846
- const pathTestRules = Iterator.from(pathsBySection).map(path => {
132847
- const splitInfo = (0,_Common_ModelPath_PathSplitHelper__WEBPACK_IMPORTED_MODULE_12__.getMatchedAndDifferentModelPaths)(targetPath, path);
132848
- const restPathPart = splitInfo.differentPath;
132849
-
132850
- if (!restPathPart.isContainIteration()) {
132851
- const pathValueRef = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NoDepsExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(path.toCurrentIteration(), "value"));
132852
- const checkExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.AndBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NotEqExpression(pathValueRef, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression()), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NotEqExpression(pathValueRef, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("")));
132853
- return checkExpression;
132854
- } // eslint-disable-next-line no-warning-comments
132855
- //TODO: сюда допилить редьюс по вложенным элементам
132856
-
132857
-
132858
- return undefined;
132859
- }).filter(_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_9__.isNotNullOrUndefined);
132860
- const allChecksExpressions = pathTestRules.reduce((acc, current) => acc == undefined ? current : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.OrBinaryExpression(acc, current), undefined);
132861
- return allChecksExpressions != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(targetValueRef, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(allChecksExpressions, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("1"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("0"))) : undefined;
132862
- }
132863
-
132864
- buildOptionalSectionsRules() {
132865
- const allOptionalSections = this.dataDeclarationHelper.getOptionalSections();
132866
- const section2PathsMap = this.dataDeclarationHelper.getAllPathsBySection();
132867
- const allRules = allOptionalSections.map(x => {
132868
- var _section2PathsMap$get, _section2PathsMap$get2;
132869
-
132870
- const sectionId = x.id;
132871
- const targetPath = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createAbsoluteFromMask)(x.path, _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.each);
132872
- const pathsBySection = (_section2PathsMap$get = (_section2PathsMap$get2 = section2PathsMap.get(sectionId)) === null || _section2PathsMap$get2 === void 0 ? void 0 : _section2PathsMap$get2.values()) !== null && _section2PathsMap$get !== void 0 ? _section2PathsMap$get : Iterator.from([]);
132873
- return this.buildOptionalSectionIsFilledCheckRule(targetPath, pathsBySection);
132874
- }).filter(_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_9__.isNotNullOrUndefined);
132875
- return allRules;
132876
- }
132877
-
132878
132584
  buildSugarFLangRules() {
132879
132585
  const converter = new _markupGenerator_ElementProcessors_FormParts_Form_FormConverter__WEBPACK_IMPORTED_MODULE_2__.FormConverter(this.sugarRoot);
132880
132586
  const builder = new _markupGenerator_FLangNormalizationRulesBuilder__WEBPACK_IMPORTED_MODULE_8__.FLangNormalizationRulesBuilder(this.controlCustomizationContext);
@@ -132893,16 +132599,15 @@ class NormalizationRulesGenerator {
132893
132599
  const prefix = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createModelPath)(formula.match.replace(/\@/g, ""), true).normalize();
132894
132600
  const target = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createModelPath)(formula.target.replace(/\@/g, ""), false);
132895
132601
  const fullTarget = (0,_DataSchema_DataSchemaUtils__WEBPACK_IMPORTED_MODULE_6__.adjustPathMultiplicityComplex)(prefix.joinWith(target).normalize(), this.formSchemaRng, this.dataDeclarationHelper);
132896
- const defaultValue = this.dataDeclarationHelper.getDefaultValue(fullTarget.toLegacyPath());
132897
132602
  const precalculationRules = [];
132898
132603
  const isTargetAutoField = this.dataDeclarationHelper.isNodeHasAutoFlagEntry(fullTarget.toAbsolute());
132899
132604
  const result = [];
132900
132605
 
132901
132606
  if (isTargetAutoField) {
132902
- result.push(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(fullTarget, "autoValue"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullCoalesceExpression(this.compileExpressionToFlashExpression(formula.expression, prefix, fullTarget, x => precalculationRules.push(x)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression(defaultValue))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(fullTarget, "autoFlag"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.IsEqualsBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(fullTarget.toCurrentIteration(), "value"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(fullTarget.toCurrentIteration(), "autoValue")), "string")));
132607
+ result.push(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(fullTarget, "autoValue"), this.compileExpressionToFlashExpression(formula.expression, prefix, fullTarget, x => precalculationRules.push(x))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(fullTarget, "autoFlag"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.IsEqualsBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(fullTarget.toCurrentIteration(), "value"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(fullTarget.toCurrentIteration(), "autoValue")), "string")));
132903
132608
  result.push(...precalculationRules);
132904
132609
  } else {
132905
- result.push(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(fullTarget, "value"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullCoalesceExpression(this.compileExpressionToFlashExpression(formula.expression, prefix, fullTarget, x => precalculationRules.push(x)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression(defaultValue))));
132610
+ result.push(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(fullTarget, "value"), this.compileExpressionToFlashExpression(formula.expression, prefix, fullTarget, x => precalculationRules.push(x))));
132906
132611
  result.push(...precalculationRules);
132907
132612
  }
132908
132613
 
@@ -132916,31 +132621,34 @@ class NormalizationRulesGenerator {
132916
132621
 
132917
132622
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaArgumentExpression || expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaMultySumExpression) {
132918
132623
  return this.compiledArgumentExpression(prefix, target, expression, addPrecalculationRule);
132919
- }
132624
+ } // if (expression instanceof FormulaConstExpression) {
132625
+ // return this.compileConstExpression(expression);
132626
+ // }
132627
+
132920
132628
 
132921
132629
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaAbsExpression) {
132922
- return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.AbsExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.expression, prefix, target, addPrecalculationRule))));
132630
+ return this.castOperandToStringIfNeed(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.AbsExpression(this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.expression, prefix, target, addPrecalculationRule))));
132923
132631
  }
132924
132632
 
132925
132633
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaXAbsExpression) {
132926
- const expr = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.expression, prefix, target, addPrecalculationRule));
132927
- return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.LtExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(expr), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.AbsExpression(expr)));
132634
+ const expr = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.expression, prefix, target, addPrecalculationRule));
132635
+ return this.castOperandToStringIfNeed(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.LtExpression(this.castOperandToDecimalIfNeed(expr), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.AbsExpression(expr)));
132928
132636
  }
132929
132637
 
132930
132638
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaRoundExpression) {
132931
- return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.RoundExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.expression, prefix, target, addPrecalculationRule)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.IntegerLiteralExpression(expression.fractionalDigits)));
132639
+ return this.castOperandToStringIfNeed(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.RoundExpression(this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.expression, prefix, target, addPrecalculationRule)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.IntegerLiteralExpression(expression.fractionalDigits)));
132932
132640
  }
132933
132641
 
132934
132642
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaFloorExpression) {
132935
- return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.FloorExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.expression, prefix, target, addPrecalculationRule))));
132643
+ return this.castOperandToStringIfNeed(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.FloorExpression(this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.expression, prefix, target, addPrecalculationRule))));
132936
132644
  }
132937
132645
 
132938
132646
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaChooseExpression) {
132939
- return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(this.compileExpressionToFlashExpression(expression.ifNode.condition, prefix, target, addPrecalculationRule), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(this.compileExpressionToFlashExpression(expression.thenNode.expression, prefix, target, addPrecalculationRule)), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(this.compileExpressionToFlashExpression(expression.elseNode.expression, prefix, target, addPrecalculationRule))));
132647
+ return this.castOperandToStringIfNeed(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ConditionalExpression(this.compileExpressionToFlashExpression(expression.ifNode.condition, prefix, target, addPrecalculationRule), this.castOperandToStringIfNeed(this.compileExpressionToFlashExpression(expression.thenNode.expression, prefix, target, addPrecalculationRule)), this.castOperandToStringIfNeed(this.compileExpressionToFlashExpression(expression.elseNode.expression, prefix, target, addPrecalculationRule))));
132940
132648
  }
132941
132649
 
132942
132650
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaMultiplyExpression) {
132943
- return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(this.compileMultiplyExpression(expression, prefix, target, addPrecalculationRule));
132651
+ return this.castOperandToStringIfNeed(this.compileMultiplyExpression(expression, prefix, target, addPrecalculationRule));
132944
132652
  }
132945
132653
 
132946
132654
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaOrExpression) {
@@ -132952,16 +132660,16 @@ class NormalizationRulesGenerator {
132952
132660
  }
132953
132661
 
132954
132662
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaNotExpression) {
132955
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NegateUnaryExpression(this.compileExpressionToFlashExpression(expression.argument, prefix, target, addPrecalculationRule));
132663
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NegateUnaryExpression(this.compileExpressionToFlashExpression(expression.argument, prefix, target, addPrecalculationRule));
132956
132664
  }
132957
132665
 
132958
132666
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaConstExpression) {
132959
132667
  switch (expression.type) {
132960
132668
  case "string":
132961
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression(expression.value);
132669
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression(expression.value);
132962
132670
 
132963
132671
  case "decimal":
132964
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(expression.value);
132672
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(expression.value);
132965
132673
 
132966
132674
  default:
132967
132675
  throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_7__.NotSupportedError("Unknown constant type!");
@@ -132973,55 +132681,53 @@ class NormalizationRulesGenerator {
132973
132681
  }
132974
132682
 
132975
132683
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaMinusExpression) {
132976
- return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.MinusUnaryExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.expression, prefix, target, addPrecalculationRule))));
132684
+ return this.castOperandToStringIfNeed(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.MinusUnaryExpression(this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.expression, prefix, target, addPrecalculationRule))));
132977
132685
  }
132978
132686
 
132979
132687
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaGtExpression) {
132980
- const left = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.arguments[0], prefix, target, addPrecalculationRule));
132981
- const right = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.arguments[1], prefix, target, addPrecalculationRule));
132982
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.GtExpression(left, right);
132688
+ const left = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.arguments[0], prefix, target, addPrecalculationRule));
132689
+ const right = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.arguments[1], prefix, target, addPrecalculationRule));
132690
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.GtExpression(left, right);
132983
132691
  }
132984
132692
 
132985
132693
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaLtExpression) {
132986
- const left = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.arguments[0], prefix, target, addPrecalculationRule));
132987
- const right = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.arguments[1], prefix, target, addPrecalculationRule));
132988
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.LtExpression(left, right);
132694
+ const left = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.arguments[0], prefix, target, addPrecalculationRule));
132695
+ const right = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.arguments[1], prefix, target, addPrecalculationRule));
132696
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.LtExpression(left, right);
132989
132697
  }
132990
132698
 
132991
132699
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaGeExpression) {
132992
- const left = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.arguments[0], prefix, target, addPrecalculationRule));
132993
- const right = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.arguments[1], prefix, target, addPrecalculationRule));
132994
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.GeExpression(left, right);
132700
+ const left = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.arguments[0], prefix, target, addPrecalculationRule));
132701
+ const right = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.arguments[1], prefix, target, addPrecalculationRule));
132702
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.GeExpression(left, right);
132995
132703
  }
132996
132704
 
132997
132705
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaLeExpression) {
132998
- const left = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.arguments[0], prefix, target, addPrecalculationRule));
132999
- const right = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(expression.arguments[1], prefix, target, addPrecalculationRule));
133000
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.LeExpression(left, right);
132706
+ const left = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.arguments[0], prefix, target, addPrecalculationRule));
132707
+ const right = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(expression.arguments[1], prefix, target, addPrecalculationRule));
132708
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.LeExpression(left, right);
133001
132709
  }
133002
132710
 
133003
132711
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaEqExpression) {
133004
- const left = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(this.compileExpressionToFlashExpression(expression.arguments[0], prefix, target, addPrecalculationRule));
133005
- const right = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(this.compileExpressionToFlashExpression(expression.arguments[1], prefix, target, addPrecalculationRule));
133006
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.EqExpression(left, right);
132712
+ const left = this.castOperandToStringIfNeed(this.compileExpressionToFlashExpression(expression.arguments[0], prefix, target, addPrecalculationRule));
132713
+ const right = this.castOperandToStringIfNeed(this.compileExpressionToFlashExpression(expression.arguments[1], prefix, target, addPrecalculationRule));
132714
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.EqExpression(left, right);
133007
132715
  }
133008
132716
 
133009
132717
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaExistsExpression) {
133010
- // eslint-disable-next-line no-warning-comments
133011
- // TODO: тут необходимо учесть, что exists может смотреть на множественность
133012
132718
  const arg = this.compiledArgumentExpression(prefix, target, expression, addPrecalculationRule);
133013
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.OrBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.EqExpression(arg, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("")), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.EqExpression(arg, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression())));
132719
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.OrBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.EqExpression(arg, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression("")), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.EqExpression(arg, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NullLiteralExpression())));
133014
132720
  }
133015
132721
 
133016
132722
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaWhenExpression) {
133017
132723
  const condition = this.compileExpressionToFlashExpression(expression.expressions[0], prefix, target, addPrecalculationRule);
133018
132724
  const thenExpression = this.compileExpressionToFlashExpression(expression.expressions[1], prefix, target, addPrecalculationRule);
133019
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(condition, thenExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.EqExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.IntegerLiteralExpression(1), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.IntegerLiteralExpression(1)));
132725
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ConditionalExpression(condition, thenExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.EqExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.IntegerLiteralExpression(1), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.IntegerLiteralExpression(1)));
133020
132726
  }
133021
132727
 
133022
132728
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaRegexMatchExpression) {
133023
132729
  const arg = this.compileExpressionToFlashExpression(expression.argument, prefix, target, addPrecalculationRule);
133024
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CallExpression("regexMatch", [arg, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression(expression.pattern)]);
132730
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CallExpression("regexMatch", [arg, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression(expression.pattern)]);
133025
132731
  }
133026
132732
 
133027
132733
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaCountExpression) {
@@ -133029,7 +132735,7 @@ class NormalizationRulesGenerator {
133029
132735
  }
133030
132736
 
133031
132737
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaLengthExpression) {
133032
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.LenExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(this.compileExpressionToFlashExpression(expression.argument, prefix, target, addPrecalculationRule)));
132738
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.LenExpression(this.castOperandToStringIfNeed(this.compileExpressionToFlashExpression(expression.argument, prefix, target, addPrecalculationRule)));
133033
132739
  }
133034
132740
 
133035
132741
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaConcatExpression) {
@@ -133038,75 +132744,42 @@ class NormalizationRulesGenerator {
133038
132744
 
133039
132745
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaSubstringExpression) {
133040
132746
  const arg = this.compileExpressionToFlashExpression(expression.expression, prefix, target, addPrecalculationRule);
133041
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CallExpression("substring", [arg, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(expression.start), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(expression.length)]);
132747
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CallExpression("substring", [arg, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(expression.start), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(expression.length)]);
133042
132748
  }
133043
132749
 
133044
132750
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaNewLineExpression) {
133045
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("\r\n");
132751
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression("\r\n");
133046
132752
  }
133047
132753
 
133048
132754
  if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaDateNowExpression) {
133049
- return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DateNowExpression());
133050
- }
133051
-
133052
- if (expression instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaGroupSumExpression) {
133053
- return this.compileGroupSumExpression(prefix, target, expression, addPrecalculationRule);
132755
+ return this.castOperandToStringIfNeed(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DateNowExpression());
133054
132756
  }
133055
132757
 
133056
132758
  throw new Error(`Unsupported type of node: ${expression.constructor.name}`);
133057
132759
  }
133058
132760
 
133059
- compileGroupSumExpression(prefix, target, expression, addPrecalculationRule) {
133060
- const targetKeyPath = this.preparePathAndAdjustMultiplicity(prefix, expression.targetKeyPath);
133061
- const sourceKeyPath = this.preparePathAndAdjustMultiplicity(prefix, expression.sourceKeyPath);
133062
- const sourceValuePath = this.preparePathAndAdjustMultiplicity(prefix, expression.sourceValuePath);
133063
- const iterationEntries = [...(0,_Common_IterableUtils__WEBPACK_IMPORTED_MODULE_0__.reverseArray)((0,_Common_ModelPath_BuildIterationSequence__WEBPACK_IMPORTED_MODULE_10__.buildIterationSequence)(sourceKeyPath))];
133064
- const finalAnonymousFunction = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.AnonymousFunctionDeclarationExpression(_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.BuildInTypeExpression.dict, [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentDeclarationExpression("result", _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.BuildInTypeExpression.dict)], new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.AddSumExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentReferenceExpression("result"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(sourceKeyPath.toCurrentIteration(), "value"), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(sourceValuePath.toCurrentIteration(), "value"))));
133065
-
133066
- const getWrapReduceFunction = innerReduceCall => new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.AnonymousFunctionDeclarationExpression(_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.BuildInTypeExpression.dict, [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentDeclarationExpression("result", _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.BuildInTypeExpression.dict)], innerReduceCall);
133067
-
133068
- const createReduceExpression = (iterablePath, initialValue, innerReduce) => {
133069
- const reduceBody = innerReduce != undefined ? getWrapReduceFunction(innerReduce) : finalAnonymousFunction;
133070
- const reduceExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ReduceCallExpression(iterablePath.toCurrentIteration(), reduceBody, initialValue);
133071
- return reduceExpression;
133072
- };
133073
-
133074
- const reduceExpression = iterationEntries.reduce((prevReduceExpr, curr, index) => {
133075
- const initialValue = index === iterationEntries.length - 1 ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DictLiteralExpression() : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentReferenceExpression("result");
133076
- const reduceExpr = createReduceExpression(curr.iterable, initialValue, prevReduceExpr);
133077
- return reduceExpr;
133078
- }, undefined);
133079
-
133080
- if (reduceExpression == undefined) {
133081
- throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_7__.NotSupportedError("Target and source must be in different collections! " + "\n" + `Target: ${target}` + "\n" + `SourceKey: ${sourceKeyPath}`);
133082
- }
133083
-
133084
- const finalValueExpression = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.GetExpression(reduceExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(targetKeyPath.toCurrentIteration(), "value")));
133085
- return finalValueExpression;
133086
- }
133087
-
133088
132761
  compiledArgumentExpression(prefix, target, expression, addPrecalculationRule, aggregationFunction = "Sum") {
133089
- const adjustedSelectPath = this.preparePathAndAdjustMultiplicity(prefix, expression.select);
132762
+ const selectPath = prefix.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createModelPath)(expression.select.replace(/\@/g, ""), false)).normalize();
132763
+ const adjustedSelectPath = (0,_DataSchema_DataSchemaUtils__WEBPACK_IMPORTED_MODULE_6__.adjustPathMultiplicityComplex)(selectPath.toAbsolute(), this.formSchemaRng, this.dataDeclarationHelper);
133090
132764
  const splitInfo = (0,_Common_ModelPath_PathSplitHelper__WEBPACK_IMPORTED_MODULE_12__.getMatchedAndDifferentModelPaths)(target, adjustedSelectPath);
133091
132765
  const baseSelectPath = splitInfo.matchedPath;
133092
132766
 
133093
132767
  if (!splitInfo.differentPath.isContainIteration()) {
133094
- const valueRefExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(adjustedSelectPath.toCurrentIteration().normalize(), "value");
133095
- return splitInfo.differentPath.isEmpty() ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NoDepsExpression(valueRefExpression) : valueRefExpression;
132768
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(adjustedSelectPath.toCurrentIteration().normalize(), "value");
133096
132769
  } else {
133097
- let resultValueExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(adjustedSelectPath.toCurrentIteration().normalize(), "value");
132770
+ let resultValueExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(adjustedSelectPath.toCurrentIteration().normalize(), "value");
133098
132771
  let countValueExpression = undefined;
133099
132772
  const iterationEntries = [...(0,_Common_IterableUtils__WEBPACK_IMPORTED_MODULE_0__.reverseArray)((0,_Common_ModelPath_BuildIterationSequence__WEBPACK_IMPORTED_MODULE_10__.buildIterationSequence)(splitInfo.differentPath))];
133100
132773
 
133101
132774
  for (const iterationEntry of iterationEntries) {
133102
132775
  const iterablePath = baseSelectPath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createRelativeFromTokens)(iterationEntry.iterable.getPathPartsAsArray()));
133103
132776
  const suffixWithoutMultiple = iterationEntry.suffix.getPathPartsAsArray().filter(x => _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.isSimpleToken(x));
133104
- const nextResultValueExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(iterablePath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createRelativeFromTokens)(suffixWithoutMultiple)).joinWith("Sum").normalize(), "value");
133105
- const currentSumExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(iterablePath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createRelativeFromTokens)(suffixWithoutMultiple)).joinWith("Sum").toCurrentIteration().normalize(), "value");
133106
- const countResultValueExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(iterablePath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createRelativeFromTokens)(suffixWithoutMultiple)).joinWith("Count").normalize(), "value");
133107
- const currenCountExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(iterablePath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createRelativeFromTokens)(suffixWithoutMultiple)).joinWith("Count").toCurrentIteration().normalize(), "value");
133108
- addPrecalculationRule(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(nextResultValueExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ReduceCallExpression(iterablePath.toCurrentIteration(), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.AnonymousFunctionDeclarationExpression(_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.BuildInTypeExpression.decimal, [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentDeclarationExpression("result", _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.BuildInTypeExpression.decimal)], new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.OrBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NotEqExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentReferenceExpression("result"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression()), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NotEqExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(resultValueExpression, "decimal"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression())), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SumBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullCoalesceExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentReferenceExpression("result"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(resultValueExpression, "decimal", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression())), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression())), "string", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("G29"))));
133109
- addPrecalculationRule(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(countResultValueExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ReduceCallExpression(iterablePath.toCurrentIteration(), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.AnonymousFunctionDeclarationExpression(_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.BuildInTypeExpression.decimal, [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentDeclarationExpression("result", _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.BuildInTypeExpression.decimal)], new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SumBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentReferenceExpression("result"), countValueExpression == undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NotEqExpression(resultValueExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("")), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(1), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0)) : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(countValueExpression, "decimal", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0)))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0)), "string", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("G29"))));
132777
+ const nextResultValueExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(iterablePath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createRelativeFromTokens)(suffixWithoutMultiple)).joinWith("Sum").normalize(), "value");
132778
+ const currentSumExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(iterablePath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createRelativeFromTokens)(suffixWithoutMultiple)).joinWith("Sum").toCurrentIteration().normalize(), "value");
132779
+ const countResultValueExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(iterablePath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createRelativeFromTokens)(suffixWithoutMultiple)).joinWith("Count").normalize(), "value");
132780
+ const currenCountExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(iterablePath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createRelativeFromTokens)(suffixWithoutMultiple)).joinWith("Count").toCurrentIteration().normalize(), "value");
132781
+ addPrecalculationRule(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement(nextResultValueExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ReduceCallExpression(iterablePath.toCurrentIteration(), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.AnonymousFunctionDeclarationExpression(_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.BuildInTypeExpression.decimal, [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ArgumentDeclarationExpression("result", _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.BuildInTypeExpression.decimal)], new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SumBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ArgumentReferenceExpression("result"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(resultValueExpression, "decimal", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0)))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0)), "string", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression("G29"))));
132782
+ addPrecalculationRule(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement(countResultValueExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ReduceCallExpression(iterablePath.toCurrentIteration(), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.AnonymousFunctionDeclarationExpression(_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.BuildInTypeExpression.decimal, [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ArgumentDeclarationExpression("result", _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.BuildInTypeExpression.decimal)], new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SumBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ArgumentReferenceExpression("result"), countValueExpression == undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NotEqExpression(resultValueExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression("")), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(1), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0)) : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(countValueExpression, "decimal", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0)))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0)), "string", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression("G29"))));
133110
132783
  resultValueExpression = currentSumExpression;
133111
132784
  countValueExpression = currenCountExpression;
133112
132785
  }
@@ -133116,42 +132789,42 @@ class NormalizationRulesGenerator {
133116
132789
  }
133117
132790
 
133118
132791
  compileSumExpression(expression, prefix, target, addPrecalculationRule) {
133119
- const args = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.getFlatArgumentExpressions)(expression.arguments);
132792
+ const args = this.getFlatArgumentExpressions(expression.arguments);
133120
132793
  const conditionExpression = args.reduce((acc, curr) => {
133121
- const currExpr = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.AndBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NotEqExpression(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression()), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NotEqExpression(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("")));
133122
- return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.OrBinaryExpression(acc, currExpr) : currExpr;
132794
+ const currExpr = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NotEqExpression(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NullLiteralExpression());
132795
+ return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.OrBinaryExpression(acc, currExpr) : currExpr;
133123
132796
  }, undefined);
133124
132797
 
133125
132798
  if (conditionExpression == undefined) {
133126
132799
  const result = expression.arguments.reduce((acc, curr) => {
133127
- const currExpr = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule));
133128
- return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SumBinaryExpression(acc, currExpr) : currExpr;
132800
+ const currExpr = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule));
132801
+ return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SumBinaryExpression(acc, currExpr) : currExpr;
133129
132802
  }, undefined);
133130
132803
 
133131
132804
  if (result == undefined) {
133132
132805
  throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_7__.InvalidProgramStateError();
133133
132806
  }
133134
132807
 
133135
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(result, "string");
132808
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(result, "string");
133136
132809
  }
133137
132810
 
133138
132811
  const trueResultExpression = expression.arguments.reduce((acc, curr) => {
133139
- const currExpr = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule), 0);
133140
- return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SumBinaryExpression(acc, currExpr) : currExpr;
132812
+ const currExpr = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule), 0);
132813
+ return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SumBinaryExpression(acc, currExpr) : currExpr;
133141
132814
  }, undefined);
133142
132815
 
133143
132816
  if (trueResultExpression == undefined) {
133144
132817
  throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_7__.InvalidProgramStateError();
133145
132818
  }
133146
132819
 
133147
- const result = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(conditionExpression, trueResultExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression());
133148
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(result, "string");
132820
+ const result = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ConditionalExpression(conditionExpression, trueResultExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NullLiteralExpression());
132821
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(result, "string");
133149
132822
  }
133150
132823
 
133151
132824
  compileConcatExpression(expression, prefix, target, addPrecalculationRule) {
133152
132825
  const result = expression.arguments.reduce((acc, curr) => {
133153
- const currExpr = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToStringIfNeed)(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule));
133154
- return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SumBinaryExpression(acc, currExpr) : currExpr;
132826
+ const currExpr = this.castOperandToStringIfNeed(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule));
132827
+ return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SumBinaryExpression(acc, currExpr) : currExpr;
133155
132828
  }, undefined);
133156
132829
 
133157
132830
  if (result == undefined) {
@@ -133164,7 +132837,7 @@ class NormalizationRulesGenerator {
133164
132837
  compileOrExpression(expression, prefix, target, addPrecalculationRule) {
133165
132838
  const result = expression.arguments.reduce((acc, curr) => {
133166
132839
  const currExpr = this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule);
133167
- return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.OrBinaryExpression(acc, currExpr) : currExpr;
132840
+ return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.OrBinaryExpression(acc, currExpr) : currExpr;
133168
132841
  }, undefined);
133169
132842
 
133170
132843
  if (result == undefined) {
@@ -133177,7 +132850,7 @@ class NormalizationRulesGenerator {
133177
132850
  compileAndExpression(expression, prefix, target, addPrecalculationRule) {
133178
132851
  const result = expression.arguments.reduce((acc, curr) => {
133179
132852
  const currExpr = this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule);
133180
- return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.AndBinaryExpression(acc, currExpr) : currExpr;
132853
+ return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.AndBinaryExpression(acc, currExpr) : currExpr;
133181
132854
  }, undefined);
133182
132855
 
133183
132856
  if (result == undefined) {
@@ -133189,51 +132862,73 @@ class NormalizationRulesGenerator {
133189
132862
 
133190
132863
  compileMultiplyExpression(expression, prefix, target, addPrecalculationRule) {
133191
132864
  const result = expression.arguments.reduce((acc, curr) => {
133192
- const expr = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule));
133193
- const currExpr = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.EqExpression(expr, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression()), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.IntegerLiteralExpression(0), expr);
133194
- return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.MultiplyBinaryExpression(acc, currExpr) : currExpr;
132865
+ const expr = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule));
132866
+ const currExpr = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.EqExpression(expr, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NullLiteralExpression()), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.IntegerLiteralExpression(0), expr);
132867
+ return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.MultiplyBinaryExpression(acc, currExpr) : currExpr;
133195
132868
  }, undefined);
133196
132869
 
133197
132870
  if (result == undefined) {
133198
132871
  throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_7__.InvalidProgramStateError();
133199
132872
  }
133200
132873
 
133201
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(result, "string");
132874
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(result, "string");
133202
132875
  }
133203
132876
 
133204
132877
  compileDivisionExpression(expression, prefix, target, addPrecalculationRule) {
133205
132878
  const result = expression.arguments.reduce((acc, curr) => {
133206
- const currExpr = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_16__.castOperandToDecimalIfNeed)(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule));
133207
- return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DivisionBinaryExpression(acc, currExpr) : currExpr;
132879
+ const currExpr = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule));
132880
+ return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DivisionBinaryExpression(acc, currExpr) : currExpr;
133208
132881
  }, undefined);
133209
132882
 
133210
132883
  if (result == undefined) {
133211
132884
  throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_7__.InvalidProgramStateError();
133212
132885
  }
133213
132886
 
133214
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(result, "string");
132887
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(result, "string");
132888
+ }
132889
+
132890
+ getFlatArgumentExpressions(expressions) {
132891
+ return expressions.reduce((acc, curr) => {
132892
+ if (curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaArgumentExpression) {
132893
+ return acc.concat(curr);
132894
+ }
132895
+
132896
+ if (curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaSumExpression || curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaDivisionExpression || curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaMultiplyExpression) {
132897
+ return acc.concat(this.getFlatArgumentExpressions(curr.arguments));
132898
+ }
132899
+
132900
+ return acc;
132901
+ }, []);
132902
+ }
132903
+
132904
+ castOperandToStringIfNeed(operandExpression) {
132905
+ return operandExpression instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression || operandExpression instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression && operandExpression.getTargetType() == "string" ? operandExpression : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(operandExpression, "string");
132906
+ }
132907
+
132908
+ castOperandToDecimalIfNeed(operandExpression, defaultValue) {
132909
+ return operandExpression instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression ? operandExpression : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(operandExpression, "decimal", defaultValue != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(defaultValue) : undefined);
133215
132910
  }
133216
132911
 
133217
132912
  *buildSugarValidationRules() {
133218
132913
  const converter = new _markupGenerator_ElementProcessors_FormParts_Form_FormConverter__WEBPACK_IMPORTED_MODULE_2__.FormConverter(this.sugarRoot);
133219
- const context = new _FLangValidationBuildContext__WEBPACK_IMPORTED_MODULE_15__.FLangValidationBuildContext(this.typesRegistry, this.formSchemaRng, this.useSchemaValidations);
132914
+ const context = new _FLangValidationBuildContext__WEBPACK_IMPORTED_MODULE_14__.FLangValidationBuildContext(this.typesRegistry, this.formSchemaRng, this.useSchemaValidations);
133220
132915
  const kcRules = this.buildKcValidationRules();
133221
132916
  const allRules = Iterator.from(converter.buildFLangValidations(context, this.formSchemaRng)).reduce((ctx, current) => {
133222
132917
  const statement = current.statement;
133223
132918
 
133224
- if (!(statement instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement)) {
132919
+ if (!(statement instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement)) {
133225
132920
  throw new Error("This type of node is not supported!");
133226
132921
  }
133227
132922
 
133228
132923
  const targetCtx = current.checkType === "warning" ? ctx.warnings : ctx.errors;
133229
132924
  const path = statement.left.modePath.toLegacyPath();
133230
132925
  const existing = targetCtx[path];
133231
- const expression = existing != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NotEqExpression(statement.right, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression()), statement.right, existing) : statement.right;
132926
+ const expression = existing != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NotEqExpression(statement.right, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NullLiteralExpression()), statement.right, existing) : statement.right;
133232
132927
  targetCtx[path] = expression;
133233
132928
  return ctx;
133234
132929
  }, kcRules);
133235
132930
 
133236
- const createRule = (rules, path, checkType) => new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createFromMask)(path, true, _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.each), checkType), rules[path]);
132931
+ const createRule = (rules, path, checkType) => new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createFromMask)(path, true, _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.each), checkType), rules[path]);
133237
132932
 
133238
132933
  const rules = Object.keys(allRules.errors).map(path => createRule(allRules.errors, path, "error")).concat(Object.keys(allRules.warnings).map(path => createRule(allRules.warnings, path, "warning")));
133239
132934
 
@@ -133260,7 +132955,7 @@ class NormalizationRulesGenerator {
133260
132955
 
133261
132956
  *buildErrorWarningCountRules(allPathsWithValidations, fieldName) {
133262
132957
  const countFieldName = `${fieldName}sCount`;
133263
- const zeroExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0);
132958
+ const zeroExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0);
133264
132959
  const totalErrorCountExpressions = new _Common_ModelPath_Map_AbsoluteModelPathMap__WEBPACK_IMPORTED_MODULE_11__.AbsoluteModelPathMap(_Common_ModelPath_EachCurrentCollision__WEBPACK_IMPORTED_MODULE_5__.EachCurrentCollision.AreDifferent);
133265
132960
  const errorCountByTarget = new _Common_ModelPath_Map_AbsoluteModelPathMap__WEBPACK_IMPORTED_MODULE_11__.AbsoluteModelPathMap(_Common_ModelPath_EachCurrentCollision__WEBPACK_IMPORTED_MODULE_5__.EachCurrentCollision.AreDifferent);
133266
132961
 
@@ -133274,11 +132969,11 @@ class NormalizationRulesGenerator {
133274
132969
  if (this.dataDeclarationHelper.isErrorsAndWarningsCountRequired(iterationPath) && this.dataDeclarationHelper.isNodeHasChildrenEntry(iterationPath)) {
133275
132970
  const multipleTarget = iterationPath.joinWith(_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.each);
133276
132971
  errorCountByTarget.getOrSet(multipleTarget, () => []).push(resultCountExpression);
133277
- resultCountExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(multipleTarget.toCurrentIteration(), countFieldName), "decimal", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0));
132972
+ resultCountExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(multipleTarget.toCurrentIteration(), countFieldName), "decimal", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0));
133278
132973
  }
133279
132974
 
133280
132975
  errorCountByTarget.getOrSet(iterationPath, () => []).push(resultCountExpression);
133281
- resultCountExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(iterationPath.toCurrentIteration(), countFieldName), "decimal", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0));
132976
+ resultCountExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(iterationPath.toCurrentIteration(), countFieldName), "decimal", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0));
133282
132977
  }
133283
132978
 
133284
132979
  totalErrorCountExpressions.set((_IterUtils$last = _Common_IterableUtils__WEBPACK_IMPORTED_MODULE_0__.IterUtils.last(iterationSequence)) !== null && _IterUtils$last !== void 0 ? _IterUtils$last : path, resultCountExpression);
@@ -133287,32 +132982,26 @@ class NormalizationRulesGenerator {
133287
132982
  for (const entry of errorCountByTarget.entries()) {
133288
132983
  const iterable = entry[0];
133289
132984
  const items = [..._Common_IterableUtils__WEBPACK_IMPORTED_MODULE_0__.IterUtils.distinctBy(entry[1], x => x.convertToString())];
133290
- const firstEmptyExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression();
133291
- const allItemsSumExpression = items.reduce((x, y) => x == firstEmptyExpression ? y : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SumBinaryExpression(x, y), firstEmptyExpression);
133292
- const nextErrorCountPrecalculation = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(iterable, countFieldName);
132985
+ const firstEmptyExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NullLiteralExpression();
132986
+ const allItemsSumExpression = items.reduce((x, y) => x == firstEmptyExpression ? y : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SumBinaryExpression(x, y), firstEmptyExpression);
132987
+ const nextErrorCountPrecalculation = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(iterable, countFieldName);
133293
132988
 
133294
132989
  if (_Common_IterableUtils__WEBPACK_IMPORTED_MODULE_0__.IterUtils.last(iterable.getPathParts()) === _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.each || !this.dataDeclarationHelper.isNodeHasChildrenEntry(iterable)) {
133295
- yield new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(nextErrorCountPrecalculation, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(allItemsSumExpression, "string", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("G29")));
132990
+ yield new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement(nextErrorCountPrecalculation, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(allItemsSumExpression, "string", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression("G29")));
133296
132991
  } else {
133297
- yield new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(nextErrorCountPrecalculation, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ReduceCallExpression(iterable.toCurrentIteration(), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.AnonymousFunctionDeclarationExpression(_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.BuildInTypeExpression.decimal, [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentDeclarationExpression("result", _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.BuildInTypeExpression.decimal)], new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SumBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ArgumentReferenceExpression("result"), allItemsSumExpression)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0)), "string", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("G29")));
132992
+ yield new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement(nextErrorCountPrecalculation, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ReduceCallExpression(iterable.toCurrentIteration(), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.AnonymousFunctionDeclarationExpression(_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.BuildInTypeExpression.decimal, [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ArgumentDeclarationExpression("result", _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.BuildInTypeExpression.decimal)], new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SumBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ArgumentReferenceExpression("result"), allItemsSumExpression)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0)), "string", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression("G29")));
133298
132993
  }
133299
132994
  }
133300
132995
 
133301
- const allRules = Iterator.from(totalErrorCountExpressions.values()).reduce((result, expression) => result === zeroExpression ? expression : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SumBinaryExpression(result, expression), zeroExpression);
133302
- yield new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createAbsolute)((0,_markupGenerator_getRootPath__WEBPACK_IMPORTED_MODULE_4__.getRootPath)(this.sugarRoot)), countFieldName), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.CastExpression(allRules, "string", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression("G29")));
132996
+ const allRules = Iterator.from(totalErrorCountExpressions.values()).reduce((result, expression) => result === zeroExpression ? expression : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SumBinaryExpression(result, expression), zeroExpression);
132997
+ yield new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createAbsolute)((0,_markupGenerator_getRootPath__WEBPACK_IMPORTED_MODULE_4__.getRootPath)(this.sugarRoot)), countFieldName), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(allRules, "string", new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression("G29")));
133303
132998
  }
133304
132999
 
133305
133000
  getErrorWarningCountExpression(path, fieldName) {
133306
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.OrBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.IsEqualsBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(path, fieldName), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.StringLiteralExpression(`[]`)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.IsEqualsBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.ValueReferenceExpression(path, fieldName), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.NullLiteralExpression())), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(0), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_14__.DecimalLiteralExpression(1));
133307
- }
133308
-
133309
- preparePathAndAdjustMultiplicity(prefix, path) {
133310
- const resultPath = (0,_DataSchema_DataSchemaUtils__WEBPACK_IMPORTED_MODULE_6__.adjustPathMultiplicityComplex)(prefix.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createModelPath)(path.replace(/\@/g, ""), false)).normalize(), this.formSchemaRng, this.dataDeclarationHelper);
133311
- return resultPath;
133001
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.OrBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.IsEqualsBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(path, fieldName), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression(`[]`)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.IsEqualsBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ValueReferenceExpression(path, fieldName), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NullLiteralExpression())), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(0), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(1));
133312
133002
  }
133313
133003
 
133314
133004
  }
133315
- NormalizationRulesGenerator.optionalSectionFilledFieldName = "isFilledOptional";
133316
133005
 
133317
133006
  /***/ }),
133318
133007
 
@@ -157672,12 +157361,10 @@ class TextConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_3__.Sug
157672
157361
  }
157673
157362
 
157674
157363
  doBuildNormalizeRules() {
157675
- var _node$dataBinding$def, _node$dataBinding;
157676
-
157677
157364
  const node = this.getCurrentNodeAs(_TextNode__WEBPACK_IMPORTED_MODULE_7__.TextNode);
157678
- const defaultValue = (_node$dataBinding$def = (_node$dataBinding = node.dataBinding) === null || _node$dataBinding === void 0 ? void 0 : _node$dataBinding.defaultValue) !== null && _node$dataBinding$def !== void 0 ? _node$dataBinding$def : "";
157365
+ const defaultValue = "";
157679
157366
  const targetValueReference = new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_4__.ValueReferenceExpression(node.getFullPath().toEachIteration(), "value");
157680
- const currentValueReference = new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_4__.NoDepsExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_4__.ValueReferenceExpression(node.getFullPath().toCurrentIteration(), "value"));
157367
+ const currentValueReference = new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_4__.ValueReferenceExpression(node.getFullPath().toCurrentIteration(), "value");
157681
157368
  let valueExpression = new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_4__.StringLiteralExpression(defaultValue);
157682
157369
 
157683
157370
  if (node.dataBinding.fetchfn != undefined) {
@@ -158289,19 +157976,19 @@ class FLangNormalizationRulesBuilder {
158289
157976
 
158290
157977
  *childrenInitializer(node, optional, defaultChildren) {
158291
157978
  const targetPathReference = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createFromMask)((0,_getBindingPath__WEBPACK_IMPORTED_MODULE_2__.getResolvedBindingPath)(node), true, _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.each);
158292
- yield new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.SetStatement(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference, "children"), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ConditionalExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.IsEqualsBinaryExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.NoDepsExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference.toCurrentIteration(), "children")), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.NullLiteralExpression()), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.StringLiteralExpression(JSON.stringify(defaultChildren !== null && defaultChildren !== void 0 ? defaultChildren : optional ? [] : ["0"])), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.NoDepsExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference.toCurrentIteration(), "children"))));
157979
+ yield new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.SetStatement(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference, "children"), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ConditionalExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.IsEqualsBinaryExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference.toCurrentIteration(), "children"), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.NullLiteralExpression()), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.StringLiteralExpression(JSON.stringify(defaultChildren !== null && defaultChildren !== void 0 ? defaultChildren : optional ? [] : ["0"])), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference.toCurrentIteration(), "children")));
158293
157980
  }
158294
157981
 
158295
157982
  *childrenInitializerForPicklist(node, optional, defaultChildren) {
158296
157983
  const targetPathReference = node.getFullPath().toEachIteration().trimLastStarIfLastToken();
158297
- yield new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.SetStatement(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference, "children"), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ConditionalExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.IsEqualsBinaryExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.NoDepsExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference.toCurrentIteration(), "children")), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.NullLiteralExpression()), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.StringLiteralExpression(JSON.stringify(defaultChildren !== null && defaultChildren !== void 0 ? defaultChildren : optional ? [] : ["0"])), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.NoDepsExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference.toCurrentIteration(), "children"))));
157984
+ yield new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.SetStatement(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference, "children"), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ConditionalExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.IsEqualsBinaryExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference.toCurrentIteration(), "children"), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.NullLiteralExpression()), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.StringLiteralExpression(JSON.stringify(defaultChildren !== null && defaultChildren !== void 0 ? defaultChildren : optional ? [] : ["0"])), new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference.toCurrentIteration(), "children")));
158298
157985
  }
158299
157986
 
158300
157987
  valueInitializer(node, dataBinding, disabled) {
158301
157988
  var _dataBinding$defaultV;
158302
157989
 
158303
157990
  const targetPathReference = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createFromMask)((0,_getBindingPath__WEBPACK_IMPORTED_MODULE_2__.getResolvedBindingPath)(node), true, _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.each);
158304
- const currentValueReference = new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.NoDepsExpression(new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference.toCurrentIteration(), "value"));
157991
+ const currentValueReference = new _ServerSideFLangNormalization_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_0__.ValueReferenceExpression(targetPathReference.toCurrentIteration(), "value");
158305
157992
  const defaultValue = (_dataBinding$defaultV = dataBinding.defaultValue) !== null && _dataBinding$defaultV !== void 0 ? _dataBinding$defaultV : "";
158306
157993
 
158307
157994
  if (dataBinding.fetchfn !== undefined) {
@@ -162827,7 +162514,7 @@ class ValidationGenerator {
162827
162514
  return [true, []];
162828
162515
  } else if (!dependenciesRequiredValidator.hasOptionalParent) {
162829
162516
  return [false, []];
162830
- } else if (dependenciesRequiredValidator.dependencies.length > 0 && dependenciesRequiredValidator.dependencies.length < 16) {
162517
+ } else if (dependenciesRequiredValidator.dependencies.length > 0 && dependenciesRequiredValidator.dependencies.length <= ValidationGenerator.MAX_OPTIONAL_CHILDREN_LIMIT) {
162831
162518
  return [true, dependenciesRequiredValidator.dependencies];
162832
162519
  }
162833
162520
 
@@ -162908,6 +162595,7 @@ class ValidationGenerator {
162908
162595
  }
162909
162596
 
162910
162597
  }
162598
+ ValidationGenerator.MAX_OPTIONAL_CHILDREN_LIMIT = 18;
162911
162599
 
162912
162600
  function absoluteModelPathGenerator(path) {
162913
162601
  return `ap([${path.getPathPartsAsArray().map(x => x === _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_8__.PathTokens.each ? "each" : x === _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_8__.PathTokens.current ? "current" : JSON.stringify(x)).join(", ")}])`;