Hex Artifact Content Вы: nobody
Вход

Artifact bf1ab80fb9af48f3a951d7d6e38878ae75215d02:


0000: ef bb bf 24 65 6e 67 69 6e 65 20 4a 53 63 72 69  ...$engine JScri
0010: 70 74 0d 0a 24 75 6e 61 6d 65 20 77 61 74 63 68  pt..$uname watch
0020: 5f 65 78 74 0d 0a 24 64 6e 61 6d 65 20 d0 a0 d0  _ext..$dname ...
0030: b0 d1 81 d1 88 d0 b8 d1 80 d0 b5 d0 bd d0 bd d0  ................
0040: be d0 b5 20 d1 82 d0 b0 d0 b1 d0 bb d0 be 0d 0a  ... ............
0050: 24 61 64 64 69 6e 20 73 74 64 63 6f 6d 6d 61 6e  $addin stdcomman
0060: 64 73 0d 0a 24 61 64 64 69 6e 20 73 74 64 6c 69  ds..$addin stdli
0070: 62 0d 0a 24 61 64 64 69 6e 20 67 6c 6f 62 61 6c  b..$addin global
0080: 0d 0a 0d 0a 73 74 64 6c 69 62 2e 72 65 71 75 69  ....stdlib.requi
0090: 72 65 28 27 53 79 6e 74 61 78 41 6e 61 6c 79 73  re('SyntaxAnalys
00a0: 69 73 2e 6a 73 27 2c 20 53 65 6c 66 53 63 72 69  is.js', SelfScri
00b0: 70 74 29 3b 0d 0a 73 74 64 6c 69 62 2e 72 65 71  pt);..stdlib.req
00c0: 75 69 72 65 28 27 54 65 78 74 57 69 6e 64 6f 77  uire('TextWindow
00d0: 2e 6a 73 27 2c 20 53 65 6c 66 53 63 72 69 70 74  .js', SelfScript
00e0: 29 3b 0d 0a 73 74 64 6c 69 62 2e 72 65 71 75 69  );..stdlib.requi
00f0: 72 65 28 27 53 65 74 74 69 6e 67 73 4d 61 6e 61  re('SettingsMana
0100: 67 65 6d 65 6e 74 2e 6a 73 27 2c 20 53 65 6c 66  gement.js', Self
0110: 53 63 72 69 70 74 29 3b 0d 0a 0d 0a 73 74 64 6c  Script);....stdl
0120: 69 62 2e 72 65 71 75 69 72 65 28 27 6c 6f 67 34  ib.require('log4
0130: 6a 73 2e 6a 73 27 2c 20 53 65 6c 66 53 63 72 69  js.js', SelfScri
0140: 70 74 29 3b 0d 0a 0d 0a 67 6c 6f 62 61 6c 2e 63  pt);....global.c
0150: 6f 6e 6e 65 63 74 47 6c 6f 62 61 6c 73 28 53 65  onnectGlobals(Se
0160: 6c 66 53 63 72 69 70 74 29 3b 0d 0a 0d 0a 0d 0a  lfScript);......
0170: 76 61 72 20 6c 6f 67 67 65 72 20 3d 20 4c 6f 67  var logger = Log
0180: 34 6a 73 2e 67 65 74 4c 6f 67 67 65 72 28 53 65  4js.getLogger(Se
0190: 6c 66 53 63 72 69 70 74 2e 75 6e 69 71 75 65 4e  lfScript.uniqueN
01a0: 61 6d 65 29 3b 0d 0a 76 61 72 20 61 70 70 65 6e  ame);..var appen
01b0: 64 65 72 20 3d 20 6e 65 77 20 4c 6f 67 34 6a 73  der = new Log4js
01c0: 2e 42 72 6f 77 73 65 72 43 6f 6e 73 6f 6c 65 41  .BrowserConsoleA
01d0: 70 70 65 6e 64 65 72 28 29 3b 0d 0a 61 70 70 65  ppender();..appe
01e0: 6e 64 65 72 2e 73 65 74 4c 61 79 6f 75 74 28 6e  nder.setLayout(n
01f0: 65 77 20 4c 6f 67 34 6a 73 2e 50 61 74 74 65 72  ew Log4js.Patter
0200: 6e 4c 61 79 6f 75 74 28 4c 6f 67 34 6a 73 2e 50  nLayout(Log4js.P
0210: 61 74 74 65 72 6e 4c 61 79 6f 75 74 2e 54 54 43  atternLayout.TTC
0220: 43 5f 43 4f 4e 56 45 52 53 49 4f 4e 5f 50 41 54  C_CONVERSION_PAT
0230: 54 45 52 4e 29 29 3b 0d 0a 6c 6f 67 67 65 72 2e  TERN));..logger.
0240: 61 64 64 41 70 70 65 6e 64 65 72 28 61 70 70 65  addAppender(appe
0250: 6e 64 65 72 29 3b 0d 0a 6c 6f 67 67 65 72 2e 73  nder);..logger.s
0260: 65 74 4c 65 76 65 6c 28 4c 6f 67 34 6a 73 2e 4c  etLevel(Log4js.L
0270: 65 76 65 6c 2e 45 52 52 4f 52 29 3b 0d 0a 76 61  evel.ERROR);..va
0280: 72 20 6c 6f 67 67 65 72 49 6e 66 6f 20 3d 20 4c  r loggerInfo = L
0290: 6f 67 34 6a 73 2e 67 65 74 4c 6f 67 67 65 72 28  og4js.getLogger(
02a0: 53 65 6c 66 53 63 72 69 70 74 2e 75 6e 69 71 75  SelfScript.uniqu
02b0: 65 4e 61 6d 65 2b 22 69 6e 66 6f 22 29 3b 0d 0a  eName+"info");..
02c0: 6c 6f 67 67 65 72 49 6e 66 6f 2e 61 64 64 41 70  loggerInfo.addAp
02d0: 70 65 6e 64 65 72 28 61 70 70 65 6e 64 65 72 29  pender(appender)
02e0: 3b 0d 0a 6c 6f 67 67 65 72 49 6e 66 6f 2e 73 65  ;..loggerInfo.se
02f0: 74 4c 65 76 65 6c 28 4c 6f 67 34 6a 73 2e 4c 65  tLevel(Log4js.Le
0300: 76 65 6c 2e 49 4e 46 4f 29 3b 0d 0a 0d 0a 0d 0a  vel.INFO);......
0310: 0d 0a 65 76 65 6e 74 73 2e 63 6f 6e 6e 65 63 74  ..events.connect
0320: 28 76 38 64 65 62 75 67 2c 20 22 6f 6e 44 65 62  (v8debug, "onDeb
0330: 75 67 45 76 65 6e 74 22 2c 20 53 65 6c 66 53 63  ugEvent", SelfSc
0340: 72 69 70 74 2e 53 65 6c 66 29 0d 0a 73 74 64 63  ript.Self)..stdc
0350: 6f 6d 6d 61 6e 64 73 2e 43 44 65 62 75 67 2e 42  ommands.CDebug.B
0360: 72 65 61 6b 2e 61 64 64 48 61 6e 64 6c 65 72 28  reak.addHandler(
0370: 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66 2c  SelfScript.self,
0380: 20 22 6f 6e 53 74 6f 70 44 65 62 75 67 22 29 0d   "onStopDebug").
0390: 0a 0d 0a 76 61 72 20 66 6f 72 6d 20 3d 20 6c 6f  ...var form = lo
03a0: 61 64 53 63 72 69 70 74 46 6f 72 6d 28 53 65 6c  adScriptForm(Sel
03b0: 66 53 63 72 69 70 74 2e 66 75 6c 6c 50 61 74 68  fScript.fullPath
03c0: 2e 72 65 70 6c 61 63 65 28 2f 6a 73 24 2f 69 2c  .replace(/js$/i,
03d0: 20 22 73 73 66 22 29 2c 20 53 65 6c 66 53 63 72   "ssf"), SelfScr
03e0: 69 70 74 2e 73 65 6c 66 29 0d 0a 66 6f 72 6d 2e  ipt.self)..form.
03f0: d0 9a d0 bb d1 8e d1 87 d0 a1 d0 be d1 85 d1 80  ................
0400: d0 b0 d0 bd d0 b5 d0 bd d0 b8 d1 8f d0 9f d0 be  ................
0410: d0 bb d0 be d0 b6 d0 b5 d0 bd d0 b8 d1 8f d0 9e  ................
0420: d0 ba d0 bd d0 b0 20 3d 20 22 77 61 74 63 68 5f  ...... = "watch_
0430: 65 78 74 22 0d 0a 66 6f 72 6d 2e d0 9f d0 b5 d1  ext"..form......
0440: 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0  ................
0450: 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 2e d0 9a  ................
0460: d0 be d0 bb d0 be d0 bd d0 ba d0 b8 2e d0 94 d0  ................
0470: be d0 b1 d0 b0 d0 b2 d0 b8 d1 82 d1 8c 28 22 4d  .............("M
0480: 6f 64 69 66 69 65 64 22 29 0d 0a 76 61 72 20 72  odified")..var r
0490: 4d 6f 64 75 6c 65 20 3d 20 66 6f 72 6d 2e d0 9f  Module = form...
04a0: d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b  ................
04b0: d0 b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8  ................
04c0: 2e d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8 2e d0 94  ................
04d0: d0 be d0 b1 d0 b0 d0 b2 d0 b8 d1 82 d1 8c 28 29  ..............()
04e0: 3b 0d 0a 72 4d 6f 64 75 6c 65 2e d0 9d d0 b0 d0  ;..rModule......
04f0: b7 d0 b2 d0 b0 d0 bd d0 b8 d0 b5 20 3d 20 22 d0  ........... = ".
0500: 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1  ................
0510: 8b d0 b5 20 d0 bc d0 be d0 b4 d1 83 d0 bb d1 8f  ... ............
0520: 22 3b 0d 0a 76 61 72 20 72 50 61 72 61 6d 73 20  ";..var rParams 
0530: 3d 20 66 6f 72 6d 2e d0 9f d0 b5 d1 80 d0 b5 d0  = form..........
0540: bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0  ................
0550: bb d0 b0 d0 b4 d0 ba d0 b8 2e d0 a1 d1 82 d1 80  ................
0560: d0 be d0 ba d0 b8 2e d0 94 d0 be d0 b1 d0 b0 d0  ................
0570: b2 d0 b8 d1 82 d1 8c 28 29 3b 0d 0a 72 50 61 72  .......();..rPar
0580: 61 6d 73 2e d0 9d d0 b0 d0 b7 d0 b2 d0 b0 d0 bd  ams.............
0590: d0 b8 d0 b5 20 3d 20 22 d0 9f d0 b0 d1 80 d0 b0  .... = "........
05a0: d0 bc d0 b5 d1 82 d1 80 d1 8b 20 d0 bc d0 b5 d1  .......... .....
05b0: 82 d0 be d0 b4 d0 b0 22 3b 0d 0a 76 61 72 20 72  .......";..var r
05c0: 4c 6f 63 61 6c 20 3d 20 66 6f 72 6d 2e d0 9f d0  Local = form....
05d0: b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0  ................
05e0: b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 2e  ................
05f0: d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8 2e d0 94 d0  ................
0600: be d0 b1 d0 b0 d0 b2 d0 b8 d1 82 d1 8c 28 29 3b  .............();
0610: 0d 0a 72 4c 6f 63 61 6c 2e d0 9d d0 b0 d0 b7 d0  ..rLocal........
0620: b2 d0 b0 d0 bd d0 b8 d0 b5 20 3d 20 22 d0 9b d0  ......... = "...
0630: be d0 ba d0 b0 d0 bb d1 8c d0 bd d1 8b d0 b5 20  ............... 
0640: d0 bf d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd  ................
0650: d1 8b d0 b5 22 3b 0d 0a 76 61 72 20 72 48 61 6e  ....";..var rHan
0660: 64 73 20 3d 20 66 6f 72 6d 2e d0 9f d0 b5 d1 80  ds = form.......
0670: d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 9e  ................
0680: d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 2e d0 a1 d1  ................
0690: 82 d1 80 d0 be d0 ba d0 b8 2e d0 94 d0 be d0 b1  ................
06a0: d0 b0 d0 b2 d0 b8 d1 82 d1 8c 28 29 3b 0d 0a 72  ..........();..r
06b0: 48 61 6e 64 73 2e d0 9d d0 b0 d0 b7 d0 b2 d0 b0  Hands...........
06c0: d0 bd d0 b8 d0 b5 20 3d 20 22 d0 a2 d0 b0 d0 b1  ...... = "......
06d0: d0 bb d0 be 22 3b 0d 0a 67 65 74 52 6f 77 28 72  ....";..getRow(r
06e0: 48 61 6e 64 73 2c 20 27 27 29 3b 0d 0a 76 61 72  Hands, '');..var
06f0: 20 63 6f 6c 6f 72 52 65 64 20 3d 20 76 38 6e 65   colorRed = v8ne
0700: 77 28 22 d0 a6 d0 b2 d0 b5 d1 82 22 2c 20 32 35  w("........", 25
0710: 35 2c 20 30 2c 20 30 29 2c 20 63 6f 6c 6f 72 47  5, 0, 0), colorG
0720: 72 61 79 20 3d 20 76 38 6e 65 77 28 22 d0 a6 d0  ray = v8new("...
0730: b2 d0 b5 d1 82 22 2c 20 32 30 30 2c 20 32 30 30  .....", 200, 200
0740: 2c 20 32 30 30 29 0d 0a 76 61 72 20 63 75 72 56  , 200)..var curV
0750: 69 65 77 48 77 6e 64 20 3d 20 22 22 3b 0d 0a 76  iewHwnd = "";..v
0760: 61 72 20 63 75 72 53 79 6e 74 61 78 41 6e 61 6c  ar curSyntaxAnal
0770: 79 73 69 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 76 61  ysis = null;..va
0780: 72 20 6e 65 65 64 54 65 73 74 4d 6f 64 69 66 69  r needTestModifi
0790: 65 64 20 3d 20 66 61 6c 73 65 3b 0d 0a 76 61 72  ed = false;..var
07a0: 20 74 69 6d 65 72 45 78 70 72 65 73 73 69 6f 6e   timerExpression
07b0: 55 70 64 61 74 65 72 20 3d 20 6e 75 6c 6c 3b 0d  Updater = null;.
07c0: 0a 76 61 72 20 76 61 6c 75 65 42 72 6b 70 74 43  .var valueBrkptC
07d0: 6f 6e 64 20 3d 20 22 22 3b 0d 0a 0d 0a 53 65 6c  ond = "";....Sel
07e0: 66 53 63 72 69 70 74 2e 73 65 6c 66 5b 27 6d 61  fScript.self['ma
07f0: 63 72 6f 73 d0 9e d1 82 d0 ba d1 80 d1 8b d1 82  cros............
0800: d1 8c 20 d0 be d0 ba d0 bd d0 be 20 d0 be d1 82  .. ........ ....
0810: d0 bb d0 b0 d0 b4 d0 ba d0 b8 27 5d 20 3d 20 66  ..........'] = f
0820: 75 6e 63 74 69 6f 6e 28 29 0d 0a 7b 0d 0a 09 0d  unction()..{....
0830: 0a 20 20 20 20 66 6f 72 6d 2e 4f 70 65 6e 28 29  .    form.Open()
0840: 20 2f 2f 20 d0 9f d0 be d0 ba d0 b0 d0 b6 d0 b5   // ............
0850: d0 bc 20 d0 be d0 ba d0 bd d0 be 0d 0a 7d 0d 0a  .. ..........}..
0860: 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c  ..SelfScript.sel
0870: 66 5b 27 6d 61 63 72 6f 73 d0 9f d0 b5 d1 80 d0  f['macros.......
0880: b5 d0 ba d0 bb d1 8e d1 87 d0 b8 d1 82 d1 8c d0  ................
0890: b0 d0 b2 d1 82 d0 be d0 be d0 b1 d0 bd d0 be d0  ................
08a0: b2 d0 bb d0 b5 d0 bd d0 b8 d0 b5 27 5d 20 3d 20  ...........'] = 
08b0: 66 75 6e 63 74 69 6f 6e 28 29 0d 0a 7b 0d 0a 20  function()..{.. 
08c0: 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28     logger.debug(
08d0: 74 68 69 73 2e 6e 61 6d 65 29 3b 0d 0a 20 20 20  this.name);..   
08e0: 20 69 66 20 28 21 74 69 6d 65 72 45 78 70 72 65   if (!timerExpre
08f0: 73 73 69 6f 6e 55 70 64 61 74 65 72 29 7b 0d 0a  ssionUpdater){..
0900: 20 20 20 20 20 20 20 20 6c 6f 67 67 65 72 2e 64          logger.d
0910: 65 62 75 67 28 22 74 69 6d 65 72 45 78 70 72 65  ebug("timerExpre
0920: 73 73 69 6f 6e 55 70 64 61 74 65 72 3a 20 22 2b  ssionUpdater: "+
0930: 74 69 6d 65 72 45 78 70 72 65 73 73 69 6f 6e 55  timerExpressionU
0940: 70 64 61 74 65 72 29 3b 0d 0a 20 20 20 20 7d 0d  pdater);..    }.
0950: 0a 20 20 20 20 65 6c 73 65 20 7b 0d 0a 0d 0a 20  .    else {.... 
0960: 20 20 20 20 20 20 20 74 69 6d 65 72 45 78 70 72         timerExpr
0970: 65 73 73 69 6f 6e 55 70 64 61 74 65 72 2e 73 74  essionUpdater.st
0980: 6f 70 20 3d 20 21 74 69 6d 65 72 45 78 70 72 65  op = !timerExpre
0990: 73 73 69 6f 6e 55 70 64 61 74 65 72 2e 73 74 6f  ssionUpdater.sto
09a0: 70 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 4d 65  p;..        //Me
09b0: 73 73 61 67 65 28 22 d0 a2 d0 b5 d0 bf d0 b5 d1  ssage(".........
09c0: 80 d1 8c 20 d0 b0 d0 b2 d1 82 d0 be d0 be d0 b1  ... ............
09d0: d0 bd d0 be d0 b2 d0 bb d0 b5 d0 bd d0 b8 d0 b5  ................
09e0: 20 22 2b 74 69 6d 65 72 45 78 70 72 65 73 73 69   "+timerExpressi
09f0: 6f 6e 55 70 64 61 74 65 72 2e 73 74 6f 70 3f 22  onUpdater.stop?"
0a00: d0 be d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 bb  ................
0a10: d0 b5 d0 bd d0 bd d0 be 22 20 3a 20 22 d0 b2 d0  ........" : "...
0a20: ba d0 bb d1 8e d1 87 d0 b5 d0 bd d0 be 22 29 3b  .............");
0a30: 0d 0a 20 20 20 20 20 20 20 20 6c 6f 67 67 65 72  ..        logger
0a40: 49 6e 66 6f 2e 69 6e 66 6f 28 22 74 69 6d 65 72  Info.info("timer
0a50: 45 78 70 72 65 73 73 69 6f 6e 55 70 64 61 74 65  ExpressionUpdate
0a60: 72 2e 73 74 6f 70 20 69 73 20 22 2b 74 69 6d 65  r.stop is "+time
0a70: 72 45 78 70 72 65 73 73 69 6f 6e 55 70 64 61 74  rExpressionUpdat
0a80: 65 72 2e 73 74 6f 70 29 3b 0d 0a 20 20 20 20 7d  er.stop);..    }
0a90: 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 d0 92 d0 be d0 b7  ..}..../* ......
0aa0: d0 b2 d1 80 d0 b0 d1 89 d0 b0 d0 b5 d1 82 20 d0  .............. .
0ab0: bd d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d0 b5 20  ............... 
0ac0: d0 bc d0 b0 d0 ba d1 80 d0 be d1 81 d0 b0 20 d0  .............. .
0ad0: bf d0 be 20 d1 83 d0 bc d0 be d0 bb d1 87 d0 b0  ... ............
0ae0: d0 bd d0 b8 d1 8e 20 2d 20 d0 b2 d1 8b d0 b7 d1  ...... - .......
0af0: 8b d0 b2 d0 b0 d0 b5 d1 82 d1 81 d1 8f 2c 20 d0  ............., .
0b00: ba d0 be d0 b3 d0 b4 d0 b0 20 d0 bf d0 be d0 bb  ......... ......
0b10: d1 8c d0 b7 d0 be d0 b2 d0 b0 d1 82 d0 b5 d0 bb  ................
0b20: d1 8c 20 0d 0a d0 b4 d0 b2 d0 b0 d0 b6 d0 b4 d1  .. .............
0b30: 8b 20 d1 89 d0 b5 d0 bb d0 ba d0 b0 d0 b5 d1 82  . ..............
0b40: 20 d0 bc d1 8b d1 88 d1 8c d1 8e 20 d0 bf d0 be   .......... ....
0b50: 20 d0 bd d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d1   ...............
0b60: 8e 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 b0  . ..............
0b70: 20 d0 b2 20 d0 be d0 ba d0 bd d0 b5 20 d0 a1 d0   .. ........ ...
0b80: bd d0 b5 d0 b3 d0 be d0 bf d0 b0 d1 82 d0 b0 2e  ................
0b90: 20 2a 2f 0d 0a 66 75 6e 63 74 69 6f 6e 20 67 65   */..function ge
0ba0: 74 44 65 66 61 75 6c 74 4d 61 63 72 6f 73 28 29  tDefaultMacros()
0bb0: 20 7b 0d 0a 20 20 20 20 72 65 74 75 72 6e 20 27   {..    return '
0bc0: d0 9f d0 b5 d1 80 d0 b5 d0 ba d0 bb d1 8e d1 87  ................
0bd0: d0 b8 d1 82 d1 8c d0 b0 d0 b2 d1 82 d0 be d0 be  ................
0be0: d0 b1 d0 bd d0 be d0 b2 d0 bb d0 b5 d0 bd d0 b8  ................
0bf0: d0 b5 27 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74  ..';..}....funct
0c00: 69 6f 6e 20 73 65 74 54 69 6d 65 46 6f 72 55 70  ion setTimeForUp
0c10: 64 61 74 65 45 78 70 72 65 73 73 69 6f 6e 28 74  dateExpression(t
0c20: 69 6d 65 6f 75 74 29 20 7b 0d 0a 0d 0a 20 20 20  imeout) {....   
0c30: 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 74 68   logger.debug(th
0c40: 69 73 2e 6e 61 6d 65 29 3b 0d 0a 20 20 20 20 69  is.name);..    i
0c50: 66 20 28 21 74 69 6d 65 72 45 78 70 72 65 73 73  f (!timerExpress
0c60: 69 6f 6e 55 70 64 61 74 65 72 29 7b 0d 0a 20 20  ionUpdater){..  
0c70: 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20 20 20 20    } else {..    
0c80: 20 20 20 20 69 66 20 28 28 74 69 6d 65 72 45 78      if ((timerEx
0c90: 70 72 65 73 73 69 6f 6e 55 70 64 61 74 65 72 2e  pressionUpdater.
0ca0: 74 69 6d 65 6f 75 74 20 2b 20 74 69 6d 65 6f 75  timeout + timeou
0cb0: 74 29 20 3c 20 30 20 29 20 7b 0d 0a 20 20 20 20  t) < 0 ) {..    
0cc0: 20 20 20 20 20 20 20 20 4d 65 73 73 61 67 65 28          Message(
0cd0: 22 d0 92 d1 80 d0 b5 d0 bc d1 8f 20 d0 bd d0 b8  ".......... ....
0ce0: d0 b6 d0 b5 20 d0 bd d1 83 d0 bb d1 8f 20 d0 bd  .... ........ ..
0cf0: d0 b5 d0 bb d1 8c d0 b7 d1 8f 2e 20 22 2b 28 74  ........... "+(t
0d00: 69 6d 65 72 45 78 70 72 65 73 73 69 6f 6e 55 70  imerExpressionUp
0d10: 64 61 74 65 72 2e 74 69 6d 65 6f 75 74 20 2b 20  dater.timeout + 
0d20: 74 69 6d 65 6f 75 74 29 29 3b 0d 0a 20 20 20 20  timeout));..    
0d30: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d          return;.
0d40: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20  .        }..    
0d50: 20 20 20 20 74 69 6d 65 72 45 78 70 72 65 73 73      timerExpress
0d60: 69 6f 6e 55 70 64 61 74 65 72 2e 74 69 6d 65 6f  ionUpdater.timeo
0d70: 75 74 20 3d 20 74 69 6d 65 72 45 78 70 72 65 73  ut = timerExpres
0d80: 73 69 6f 6e 55 70 64 61 74 65 72 2e 74 69 6d 65  sionUpdater.time
0d90: 6f 75 74 20 2b 20 74 69 6d 65 6f 75 74 3b 0d 0a  out + timeout;..
0da0: 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 6c 6f 67      }....    log
0db0: 67 65 72 2e 64 65 62 75 67 28 74 69 6d 65 72 45  ger.debug(timerE
0dc0: 78 70 72 65 73 73 69 6f 6e 55 70 64 61 74 65 72  xpressionUpdater
0dd0: 2e 74 69 6d 65 6f 75 74 29 3b 0d 0a 0d 0a 7d 0d  .timeout);....}.
0de0: 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 68 6f 6f 6b  ...function hook
0df0: 42 72 6b 70 74 43 6f 6e 64 28 64 6c 67 49 6e 66  BrkptCond(dlgInf
0e00: 6f 29 0d 0a 7b 0d 0a 20 20 20 20 69 66 28 64 6c  o)..{..    if(dl
0e10: 67 49 6e 66 6f 2e 73 74 61 67 65 20 3d 3d 20 6f  gInfo.stage == o
0e20: 70 65 6e 4d 6f 64 61 6c 57 6e 64 29 0d 0a 20 20  penModalWnd)..  
0e30: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 64 6c 67    {..        dlg
0e40: 49 6e 66 6f 2e 66 6f 72 6d 2e 67 65 74 43 6f 6e  Info.form.getCon
0e50: 74 72 6f 6c 28 22 43 6f 6e 64 69 74 69 6f 6e 22  trol("Condition"
0e60: 29 2e 76 61 6c 75 65 20 3d 20 76 61 6c 75 65 42  ).value = valueB
0e70: 72 6b 70 74 43 6f 6e 64 3b 0d 0a 0d 0a 20 20 20  rkptCond;....   
0e80: 20 20 20 20 20 64 6c 67 49 6e 66 6f 2e 63 61 6e       dlgInfo.can
0e90: 63 65 6c 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20  cel = false;..  
0ea0: 20 20 20 20 20 20 64 6c 67 49 6e 66 6f 2e 72 65        dlgInfo.re
0eb0: 73 75 6c 74 20 3d 20 6d 62 61 4f 6b 3b 0d 0a 20  sult = mbaOk;.. 
0ec0: 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74     }..}....funct
0ed0: 69 6f 6e 20 68 6f 6f 6b 42 72 6b 70 74 43 6f 6e  ion hookBrkptCon
0ee0: 64 41 75 74 6f 28 64 6c 67 49 6e 66 6f 29 0d 0a  dAuto(dlgInfo)..
0ef0: 7b 0d 0a 20 20 20 20 69 66 28 64 6c 67 49 6e 66  {..    if(dlgInf
0f00: 6f 2e 73 74 61 67 65 20 3d 3d 20 6f 70 65 6e 4d  o.stage == openM
0f10: 6f 64 61 6c 57 6e 64 29 0d 0a 20 20 20 20 7b 0d  odalWnd)..    {.
0f20: 0a 20 20 20 20 20 20 20 20 64 6c 67 49 6e 66 6f  .        dlgInfo
0f30: 2e 66 6f 72 6d 2e 67 65 74 43 6f 6e 74 72 6f 6c  .form.getControl
0f40: 28 22 43 6f 6e 64 69 74 69 6f 6e 22 29 2e 76 61  ("Condition").va
0f50: 6c 75 65 20 3d 20 76 61 6c 75 65 42 72 6b 70 74  lue = valueBrkpt
0f60: 43 6f 6e 64 3b 0d 0a 0d 0a 20 20 20 20 20 20 20  Cond;....       
0f70: 20 64 6c 67 49 6e 66 6f 2e 63 61 6e 63 65 6c 20   dlgInfo.cancel 
0f80: 3d 20 74 72 75 65 20 20 20 2f 2f 20 d0 9e d1 82  = true   // ....
0f90: d0 bc d0 b5 d0 bd d1 8f d0 b5 d0 bc 20 d0 bf d0  ............ ...
0fa0: be d0 ba d0 b0 d0 b7 20 d0 b4 d0 b8 d0 b0 d0 bb  ....... ........
0fb0: d0 be d0 b3 d0 b0 0d 0a 20 20 20 20 20 20 20 20  ........        
0fc0: 64 6c 67 49 6e 66 6f 2e 72 65 73 75 6c 74 20 3d  dlgInfo.result =
0fd0: 20 31 20 20 20 20 20 20 2f 2f 20 d0 ba d0 b0 d0   1      // .....
0fe0: ba 20 d0 b1 d1 83 d0 b4 d1 82 d0 be 20 d0 b2 20  . .......... .. 
0ff0: d0 bd d0 b5 d0 bc 20 d0 bd d0 b0 d0 b6 d0 b0 d0  ...... .........
1000: bb d0 b8 20 d0 9e d0 ba 0d 0a 20 20 20 20 7d 0d  ... ......    }.
1010: 0a 7d 0d 0a 0d 0a 0d 0a 0d 0a 53 65 6c 66 53 63  .}........SelfSc
1020: 72 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f  ript.self['macro
1030: 73 d0 a3 d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0  s...............
1040: b8 d1 82 d1 8c 20 d1 82 d0 be d1 87 d0 ba d1 83  ..... ..........
1050: 20 d0 be d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0   ...............
1060: b0 20 d0 bf d0 be 20 d1 83 d1 81 d0 bb d0 be d0  . .... .........
1070: b2 d0 b8 d1 8e 27 5d 20 3d 20 66 75 6e 63 74 69  .....'] = functi
1080: 6f 6e 28 29 7b 0d 0a 20 20 20 20 69 66 20 28 21  on(){..    if (!
1090: 66 6f 72 6d 2e d0 ad d0 bb d0 b5 d0 bc d0 b5 d0  form............
10a0: bd d1 82 d1 8b d0 a4 d0 be d1 80 d0 bc d1 8b 2e  ................
10b0: d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd  ................
10c0: d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba  ................
10d0: d0 b8 2e d0 a2 d0 b5 d0 ba d1 83 d1 89 d0 b0 d1  ................
10e0: 8f d0 a1 d1 82 d1 80 d0 be d0 ba d0 b0 29 20 7b  .............) {
10f0: 0d 0a 20 20 20 20 20 20 20 20 6c 6f 67 67 65 72  ..        logger
1100: 2e 65 72 72 6f 72 28 22 d0 9d d0 b5 20 d0 be d0  .error(".... ...
1110: bf d1 80 d0 b5 d0 b4 d0 b5 d0 bb d0 b5 d0 bd d0  ................
1120: bd d0 b0 20 d1 82 d0 b5 d0 ba d1 83 d1 89 d0 b0  ... ............
1130: d1 8f 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b0 20  .. ............ 
1140: d0 b4 d0 bb d1 8f 20 d0 b2 d1 8b d1 80 d0 b0 d0  ...... .........
1150: b6 d0 b5 d0 bd d0 b8 d1 8f 22 29 3b 0d 0a 20 20  .........");..  
1160: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20        return;.. 
1170: 20 20 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20     }..    ..    
1180: 65 76 65 6e 74 73 2e 63 6f 6e 6e 65 63 74 28 77  events.connect(w
1190: 69 6e 64 6f 77 73 2c 20 22 6f 6e 44 6f 4d 6f 64  indows, "onDoMod
11a0: 61 6c 22 2c 20 53 65 6c 66 53 63 72 69 70 74 2e  al", SelfScript.
11b0: 73 65 6c 66 2c 20 22 68 6f 6f 6b 42 72 6b 70 74  self, "hookBrkpt
11c0: 43 6f 6e 64 22 29 3b 0d 0a 20 20 20 20 76 61 72  Cond");..    var
11d0: 20 73 74 61 74 65 20 3d 20 73 74 64 63 6f 6d 6d   state = stdcomm
11e0: 61 6e 64 73 2e 43 44 65 62 75 67 2e 42 72 6b 70  ands.CDebug.Brkp
11f0: 74 43 6f 6e 64 2e 67 65 74 53 74 61 74 65 28 29  tCond.getState()
1200: 3b 0d 0a 20 20 20 20 76 61 72 20 63 75 72 52 6f  ;..    var curRo
1210: 77 20 3d 20 66 6f 72 6d 2e d0 ad d0 bb d0 b5 d0  w = form........
1220: bc d0 b5 d0 bd d1 82 d1 8b d0 a4 d0 be d1 80 d0  ................
1230: bc d1 8b 2e d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5  ................
1240: d0 bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0  ................
1250: d0 b4 d0 ba d0 b8 2e d0 a2 d0 b5 d0 ba d1 83 d1  ................
1260: 89 d0 b0 d1 8f d0 a1 d1 82 d1 80 d0 be d0 ba d0  ................
1270: b0 3b 0d 0a 20 20 20 20 76 61 72 20 63 75 72 56  .;..    var curV
1280: 61 6c 75 65 20 3d 20 27 27 2b 63 75 72 52 6f 77  alue = ''+curRow
1290: 2e d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0  ................
12a0: b5 3b 0d 0a 20 20 20 20 76 61 72 20 6e 61 6d 65  .;..    var name
12b0: 20 3d 20 66 75 6c 6c 4e 61 6d 65 28 63 75 72 52   = fullName(curR
12c0: 6f 77 29 3b 0d 0a 20 20 20 20 76 61 6c 75 65 42  ow);..    valueB
12d0: 72 6b 70 74 43 6f 6e 64 20 3d 20 22 22 2b 20 6e  rkptCond = ""+ n
12e0: 61 6d 65 20 2b 20 22 20 3d 20 22 2b 63 75 72 56  ame + " = "+curV
12f0: 61 6c 75 65 3b 0d 0a 20 20 20 20 73 74 64 63 6f  alue;..    stdco
1300: 6d 6d 61 6e 64 73 2e 43 44 65 62 75 67 2e 42 72  mmands.CDebug.Br
1310: 6b 70 74 43 6f 6e 64 2e 73 65 6e 64 28 29 3b 0d  kptCond.send();.
1320: 0a 20 20 20 20 65 76 65 6e 74 73 2e 64 69 73 63  .    events.disc
1330: 6f 6e 6e 65 63 74 28 77 69 6e 64 6f 77 73 2c 20  onnect(windows, 
1340: 22 6f 6e 44 6f 4d 6f 64 61 6c 22 2c 20 53 65 6c  "onDoModal", Sel
1350: 66 53 63 72 69 70 74 2e 73 65 6c 66 2c 20 22 68  fScript.self, "h
1360: 6f 6f 6b 42 72 6b 70 74 43 6f 6e 64 22 29 3b 0d  ookBrkptCond");.
1370: 0a 20 20 20 20 0d 0a 7d 0d 0a 0d 0a 53 65 6c 66  .    ..}....Self
1380: 53 63 72 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63  Script.self['mac
1390: 72 6f 73 d0 a3 d1 81 d1 82 d0 b0 d0 bd d0 be d0  ros.............
13a0: b2 d0 b8 d1 82 d1 8c 20 d1 82 d0 be d1 87 d0 ba  ....... ........
13b0: d1 83 20 d0 be d1 81 d1 82 d0 b0 d0 bd d0 be d0  .. .............
13c0: b2 d0 b0 20 d0 bf d0 be 20 d1 83 d1 81 d0 bb d0  ... .... .......
13d0: be d0 b2 d0 b8 d1 8e 20 d0 b4 d0 bb d1 8f 20 d0  ....... ...... .
13e0: b2 d1 8b d0 b4 d0 b5 d0 bb d0 b5 d0 bd d0 bd d1  ................
13f0: 8b d1 85 20 d1 81 d1 82 d1 80 d0 be d0 ba 27 5d  ... ..........']
1400: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 7b 0d 0a   = function(){..
1410: 20 20 20 20 69 66 20 28 21 66 6f 72 6d 2e d0 ad      if (!form...
1420: d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 d1 8b d0 a4  ................
1430: d0 be d1 80 d0 bc d1 8b 2e d0 9f d0 b5 d1 80 d0  ................
1440: b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 9e d1  ................
1450: 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 2e d0 a2 d0 b5  ................
1460: d0 ba d1 83 d1 89 d0 b0 d1 8f d0 a1 d1 82 d1 80  ................
1470: d0 be d0 ba d0 b0 29 20 7b 0d 0a 20 20 20 20 20  ......) {..     
1480: 20 20 20 6c 6f 67 67 65 72 2e 65 72 72 6f 72 28     logger.error(
1490: 22 d0 9d d0 b5 20 d0 be d0 bf d1 80 d0 b5 d0 b4  ".... ..........
14a0: d0 b5 d0 bb d0 b5 d0 bd d0 bd d0 b0 20 d1 82 d0  ............ ...
14b0: b5 d0 ba d1 83 d1 89 d0 b0 d1 8f 20 d1 81 d1 82  ........... ....
14c0: d1 80 d0 be d0 ba d0 b0 20 d0 b4 d0 bb d1 8f 20  ........ ...... 
14d0: d0 b2 d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8  ................
14e0: d1 8f 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 72  ..");..        r
14f0: 65 74 75 72 6e 3b 0d 0a 20 20 20 20 7d 0d 0a 0d  eturn;..    }...
1500: 0a 20 20 20 20 76 61 72 20 77 6e 64 20 3d 20 47  .    var wnd = G
1510: 65 74 54 65 78 74 57 69 6e 64 6f 77 28 29 3b 0d  etTextWindow();.
1520: 0a 20 20 20 20 69 66 28 21 77 6e 64 29 0d 0a 20  .    if(!wnd).. 
1530: 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a         return;..
1540: 20 20 20 20 76 69 65 77 20 3d 20 77 6e 64 2e 47      view = wnd.G
1550: 65 74 56 69 65 77 28 29 3b 0d 0a 0d 0a 20 20 20  etView();....   
1560: 20 76 61 72 20 63 75 72 52 6f 77 20 3d 20 66 6f   var curRow = fo
1570: 72 6d 2e d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1  rm..............
1580: 82 d1 8b d0 a4 d0 be d1 80 d0 bc d1 8b 2e d0 9f  ................
1590: d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b  ................
15a0: d0 b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8  ................
15b0: 2e d0 a2 d0 b5 d0 ba d1 83 d1 89 d0 b0 d1 8f d0  ................
15c0: a1 d1 82 d1 80 d0 be d0 ba d0 b0 3b 0d 0a 20 20  ...........;..  
15d0: 20 20 76 61 72 20 63 75 72 56 61 6c 75 65 20 3d    var curValue =
15e0: 20 27 27 2b 63 75 72 52 6f 77 2e d0 97 d0 bd d0   ''+curRow......
15f0: b0 d1 87 d0 b5 d0 bd d0 b8 d0 b5 3b 0d 0a 20 20  ...........;..  
1600: 20 20 76 61 72 20 6e 61 6d 65 20 3d 20 66 75 6c    var name = ful
1610: 6c 4e 61 6d 65 28 63 75 72 52 6f 77 29 3b 0d 0a  lName(curRow);..
1620: 20 20 20 20 76 61 6c 75 65 42 72 6b 70 74 43 6f      valueBrkptCo
1630: 6e 64 20 3d 20 22 22 2b 20 6e 61 6d 65 20 2b 20  nd = ""+ name + 
1640: 22 20 3d 20 22 2b 63 75 72 56 61 6c 75 65 3b 0d  " = "+curValue;.
1650: 0a 0d 0a 20 20 20 20 76 61 72 20 76 62 73 20 3d  ...    var vbs =
1660: 20 61 64 64 69 6e 73 2e 62 79 55 6e 69 71 75 65   addins.byUnique
1670: 4e 61 6d 65 28 22 76 62 73 22 29 2e 6f 62 6a 65  Name("vbs").obje
1680: 63 74 0d 0a 20 20 20 20 76 62 73 2e 76 61 72 30  ct..    vbs.var0
1690: 20 3d 20 76 61 6c 75 65 42 72 6b 70 74 43 6f 6e   = valueBrkptCon
16a0: 64 3b 20 76 62 73 2e 76 61 72 31 20 3d 20 22 d0  d; vbs.var1 = ".
16b0: 92 d0 b2 d0 b5 d0 b4 d0 b8 d1 82 d0 b5 20 d0 b2  ............. ..
16c0: d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d0 b5  ................
16d0: 22 3b 20 76 62 73 2e 76 61 72 32 20 3d 20 30 2c  "; vbs.var2 = 0,
16e0: 20 76 62 73 2e 76 61 72 33 20 3d 20 66 61 6c 73   vbs.var3 = fals
16f0: 65 3b 0d 0a 20 20 20 20 69 66 20 28 76 62 73 2e  e;..    if (vbs.
1700: 44 6f 45 76 61 6c 28 22 49 6e 70 75 74 53 74 72  DoEval("InputStr
1710: 69 6e 67 28 76 61 72 30 2c 20 76 61 72 31 2c 20  ing(var0, var1, 
1720: 76 61 72 32 2c 20 76 61 72 33 29 22 29 29 20 7b  var2, var3)")) {
1730: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61  ..            va
1740: 6c 75 65 42 72 6b 70 74 43 6f 6e 64 20 20 3d 20  lueBrkptCond  = 
1750: 76 62 73 2e 76 61 72 30 3b 0d 0a 20 20 20 20 7d  vbs.var0;..    }
1760: 0d 0a 20 20 20 20 69 66 20 28 76 61 6c 75 65 42  ..    if (valueB
1770: 72 6b 70 74 43 6f 6e 64 2e 6c 65 6e 67 74 68 20  rkptCond.length 
1780: 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 72 65  = 0)..        re
1790: 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 65 76 65  turn;....    eve
17a0: 6e 74 73 2e 63 6f 6e 6e 65 63 74 28 77 69 6e 64  nts.connect(wind
17b0: 6f 77 73 2c 20 22 6f 6e 44 6f 4d 6f 64 61 6c 22  ows, "onDoModal"
17c0: 2c 20 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c  , SelfScript.sel
17d0: 66 2c 20 22 68 6f 6f 6b 42 72 6b 70 74 43 6f 6e  f, "hookBrkptCon
17e0: 64 41 75 74 6f 22 29 3b 0d 0a 20 20 20 20 76 61  dAuto");..    va
17f0: 72 20 73 74 61 74 65 20 3d 20 73 74 64 63 6f 6d  r state = stdcom
1800: 6d 61 6e 64 73 2e 43 44 65 62 75 67 2e 42 72 6b  mands.CDebug.Brk
1810: 70 74 43 6f 6e 64 2e 67 65 74 53 74 61 74 65 28  ptCond.getState(
1820: 29 3b 0d 0a 0d 0a 20 20 20 20 73 65 6c 20 3d 20  );....    sel = 
1830: 77 6e 64 2e 47 65 74 53 65 6c 65 63 74 69 6f 6e  wnd.GetSelection
1840: 28 29 3b 0d 0a 20 20 20 20 66 6f 72 20 28 76 61  ();..    for (va
1850: 72 20 69 20 3d 20 73 65 6c 2e 62 65 67 69 6e 52  r i = sel.beginR
1860: 6f 77 3b 20 69 3c 73 65 6c 2e 65 6e 64 52 6f 77  ow; i<sel.endRow
1870: 3b 20 69 2b 2b 29 7b 0d 0a 20 20 20 20 20 20 20  ; i++){..       
1880: 20 73 74 64 63 6f 6d 6d 61 6e 64 73 2e 43 44 65   stdcommands.CDe
1890: 62 75 67 2e 42 72 6b 70 74 43 6f 6e 64 2e 73 65  bug.BrkptCond.se
18a0: 6e 64 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 77  nd();..        w
18b0: 6e 64 2e 53 65 74 43 61 72 65 74 50 6f 73 28 69  nd.SetCaretPos(i
18c0: 2c 20 73 65 6c 2e 62 65 67 69 6e 43 6f 6c 29 3b  , sel.beginCol);
18d0: 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 0d 0a 20  ..    }..    .. 
18e0: 20 20 20 65 76 65 6e 74 73 2e 64 69 73 63 6f 6e     events.discon
18f0: 6e 65 63 74 28 77 69 6e 64 6f 77 73 2c 20 22 6f  nect(windows, "o
1900: 6e 44 6f 4d 6f 64 61 6c 22 2c 20 53 65 6c 66 53  nDoModal", SelfS
1910: 63 72 69 70 74 2e 73 65 6c 66 2c 20 22 68 6f 6f  cript.self, "hoo
1920: 6b 42 72 6b 70 74 43 6f 6e 64 41 75 74 6f 22 29  kBrkptCondAuto")
1930: 3b 0d 0a 20 20 20 20 76 61 6c 75 65 42 72 6b 70  ;..    valueBrkp
1940: 74 43 6f 6e 64 20 3d 20 22 22 3b 0d 0a 20 20 20  tCond = "";..   
1950: 20 6c 6f 67 67 65 72 49 6e 66 6f 2e 69 6e 66 6f   loggerInfo.info
1960: 28 22 d0 a2 d0 be d1 87 d0 ba d0 b8 20 d0 be d1  (".......... ...
1970: 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 b0 20 d1 83  ............. ..
1980: d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 bb d0 b5  ................
1990: d0 bd d0 bd d1 8b 21 22 29 3b 0d 0a 20 20 20 20  ......!");..    
19a0: 0d 0a 7d 0d 0a 0d 0a 0d 0a 53 65 6c 66 53 63 72  ..}......SelfScr
19b0: 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f 73  ipt.self['macros
19c0: d0 a3 d0 b2 d0 b5 d0 bb d0 b8 d1 87 d0 b8 d1 82  ................
19d0: d1 8c 20 d0 bf d0 b5 d1 80 d0 b8 d0 be d0 b4 20  .. ............ 
19e0: d0 be d0 b1 d0 bd d0 be d0 b2 d0 bb d0 b5 d0 bd  ................
19f0: d0 b8 d1 8f 20 d0 bd d0 b0 20 31 20 d1 81 d0 b5  .... .... 1 ....
1a00: d0 ba 2e 20 27 5d 20 3d 20 66 75 6e 63 74 69 6f  ... '] = functio
1a10: 6e 28 29 20 7b 0d 0a 20 20 20 20 73 65 74 54 69  n() {..    setTi
1a20: 6d 65 46 6f 72 55 70 64 61 74 65 45 78 70 72 65  meForUpdateExpre
1a30: 73 73 69 6f 6e 28 31 30 30 30 29 3b 0d 0a 7d 0d  ssion(1000);..}.
1a40: 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e 73 65  ...SelfScript.se
1a50: 6c 66 5b 27 6d 61 63 72 6f 73 d0 a3 d0 bc d0 b5  lf['macros......
1a60: d0 bd d1 8c d1 88 d0 b8 d1 82 d1 8c 20 d0 bf d0  ............ ...
1a70: b5 d1 80 d0 b8 d0 be d0 b4 20 d0 be d0 b1 d0 bd  ......... ......
1a80: d0 be d0 b2 d0 bb d0 b5 d0 bd d0 b8 d1 8f 20 d0  .............. .
1a90: bd d0 b0 20 31 20 d1 81 d0 b5 d0 ba 2e 20 27 5d  ... 1 ....... ']
1aa0: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d   = function() {.
1ab0: 0a 20 20 20 20 73 65 74 54 69 6d 65 46 6f 72 55  .    setTimeForU
1ac0: 70 64 61 74 65 45 78 70 72 65 73 73 69 6f 6e 28  pdateExpression(
1ad0: 2d 31 30 30 30 29 3b 0d 0a 7d 0d 0a 0d 0a 2f 2f  -1000);..}....//
1ae0: 54 4f 44 4f 3a 20 d0 94 d0 be d0 b1 d0 b0 d0 b2  TODO: ..........
1af0: d0 b8 d1 82 d1 8c 20 d0 b2 d1 8b d1 87 d0 b8 d1  ...... .........
1b00: 81 d0 bb d0 b5 d0 bd d0 b8 d0 b5 20 d0 b2 d1 8b  ........... ....
1b10: d1 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d1 8f 2e 20  ............... 
1b20: 0d 0a 66 75 6e 63 74 69 6f 6e 20 6f 6e 44 65 62  ..function onDeb
1b30: 75 67 45 76 65 6e 74 28 65 76 65 6e 74 49 44 2c  ugEvent(eventID,
1b40: 20 65 76 65 6e 74 50 61 72 61 6d 29 0d 0a 7b 0d   eventParam)..{.
1b50: 0a 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75  .    logger.debu
1b60: 67 28 74 68 69 73 2e 6e 61 6d 65 29 3b 0d 0a 20  g(this.name);.. 
1b70: 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28     logger.debug(
1b80: 65 76 65 6e 74 49 44 29 3b 0d 0a 20 20 20 20 69  eventID);..    i
1b90: 66 20 28 21 74 69 6d 65 72 45 78 70 72 65 73 73  f (!timerExpress
1ba0: 69 6f 6e 55 70 64 61 74 65 72 29 7b 0d 0a 20 20  ionUpdater){..  
1bb0: 20 20 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 62        logger.deb
1bc0: 75 67 28 22 74 69 6d 65 72 45 78 70 72 65 73 73  ug("timerExpress
1bd0: 69 6f 6e 55 70 64 61 74 65 72 20 d0 bd d0 b5 20  ionUpdater .... 
1be0: d0 be d0 bf d1 80 d0 b5 d0 b4 d0 b5 d0 bb d0 b5  ................
1bf0: d0 bd 20 22 2b 74 69 6d 65 72 45 78 70 72 65 73  .. "+timerExpres
1c00: 73 69 6f 6e 55 70 64 61 74 65 72 29 0d 0a 20 20  sionUpdater)..  
1c10: 20 20 20 20 20 20 74 69 6d 65 72 45 78 70 72 65        timerExpre
1c20: 73 73 69 6f 6e 55 70 64 61 74 65 72 20 3d 20 47  ssionUpdater = G
1c30: 65 74 54 69 6d 65 72 45 78 70 72 65 73 73 69 6f  etTimerExpressio
1c40: 6e 55 70 64 61 74 65 72 28 29 3b 0d 0a 20 20 20  nUpdater();..   
1c50: 20 7d 0d 0a 20 20 20 20 2f 2f 4d 65 73 73 61 67   }..    //Messag
1c60: 65 28 22 53 43 52 49 50 54 20 22 20 2b 20 65 76  e("SCRIPT " + ev
1c70: 65 6e 74 49 44 20 2b 20 22 2c 20 22 20 2b 20 65  entID + ", " + e
1c80: 76 65 6e 74 50 61 72 61 6d 29 3b 0d 0a 20 20 20  ventParam);..   
1c90: 20 69 66 28 65 76 65 6e 74 49 44 20 3d 3d 20 22   if(eventID == "
1ca0: 7b 46 45 37 43 36 44 44 44 2d 37 43 39 39 2d 34  {FE7C6DDD-7C99-4
1cb0: 32 46 38 2d 42 41 31 34 2d 43 44 44 33 30 45 44  2F8-BA14-CDD30ED
1cc0: 46 32 45 46 31 7d 22 29 0d 0a 20 20 20 20 7b 0d  F2EF1}")..    {.
1cd0: 0a 20 20 20 20 20 20 20 20 76 61 72 20 76 69 65  .        var vie
1ce0: 77 20 3d 20 77 69 6e 64 6f 77 73 2e 67 65 74 41  w = windows.getA
1cf0: 63 74 69 76 65 56 69 65 77 28 29 0d 0a 20 20 20  ctiveView()..   
1d00: 20 20 20 20 20 66 6f 72 6d 2e 4f 70 65 6e 28 29       form.Open()
1d10: 20 2f 2f 20 d0 9f d0 be d0 ba d0 b0 d0 b6 d0 b5   // ............
1d20: d0 bc 20 d0 be d0 ba d0 bd d0 be 0d 0a 20 20 20  .. ..........   
1d30: 20 20 20 20 20 69 66 28 76 69 65 77 29 0d 0a 20       if(view).. 
1d40: 20 20 20 20 20 20 20 20 20 20 20 76 69 65 77 2e             view.
1d50: 61 63 74 69 76 61 74 65 28 29 0d 0a 20 20 20 20  activate()..    
1d60: 7d 0d 0a 20 20 20 20 65 6c 73 65 20 69 66 28 65  }..    else if(e
1d70: 76 65 6e 74 49 44 20 3d 3d 20 22 7b 37 31 35 30  ventID == "{7150
1d80: 31 41 39 44 2d 43 44 33 34 2d 34 32 37 44 2d 38  1A9D-CD34-427D-8
1d90: 31 42 36 2d 35 36 32 34 39 31 42 45 46 39 34 35  1B6-562491BEF945
1da0: 7d 22 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20  }")..    {..    
1db0: 20 20 20 20 63 6c 65 61 72 45 78 70 72 65 73 73      clearExpress
1dc0: 69 6f 6e 73 28 29 3b 0d 0a 20 20 20 20 20 20 20  ions();..       
1dd0: 20 74 69 6d 65 72 45 78 70 72 65 73 73 69 6f 6e   timerExpression
1de0: 55 70 64 61 74 65 72 2e 73 74 6f 70 57 61 74 63  Updater.stopWatc
1df0: 68 28 29 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20 20  h();..    }..   
1e00: 20 69 66 28 65 76 65 6e 74 49 44 20 3d 3d 20 22   if(eventID == "
1e10: 7b 35 42 35 46 39 32 38 44 2d 44 46 32 44 2d 34  {5B5F928D-DF2D-4
1e20: 38 30 34 2d 42 32 44 30 2d 42 34 35 33 31 36 33  804-B2D0-B453163
1e30: 41 32 43 34 43 7d 22 29 0d 0a 20 20 20 20 7b 0d  A2C4C}")..    {.
1e40: 0a 20 20 20 20 20 20 20 20 2f 2f 4d 65 73 73 61  .        //Messa
1e50: 67 65 28 22 65 76 65 6e 74 50 61 72 61 6d 20 22  ge("eventParam "
1e60: 20 2b 20 65 76 65 6e 74 50 61 72 61 6d 29 3b 0d   + eventParam);.
1e70: 0a 20 20 20 20 20 20 20 20 69 66 28 65 76 65 6e  .        if(even
1e80: 74 50 61 72 61 6d 20 3d 3d 20 33 37 20 7c 7c 20  tParam == 37 || 
1e90: 65 76 65 6e 74 50 61 72 61 6d 20 3d 3d 20 32 34  eventParam == 24
1ea0: 20 7c 7c 20 65 76 65 6e 74 50 61 72 61 6d 20 3d   || eventParam =
1eb0: 3d 20 33 30 20 29 20 20 20 20 2f 2f 20 d0 9e d1  = 30 )    // ...
1ec0: 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 b8 d0 bb d0  ................
1ed0: b8 d1 81 d1 8c 20 d0 b2 20 d1 82 d0 be d1 87 d0  ..... .. .......
1ee0: ba d0 b5 20 d0 be d1 81 d1 82 d0 b0 d0 bd d0 be  ... ............
1ef0: d0 b2 d0 b0 0d 0a 20 20 20 20 20 20 20 20 7b 0d  ......        {.
1f00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 4d  .            //M
1f10: 65 73 73 61 67 65 28 22 53 43 52 49 50 54 20 d0  essage("SCRIPT .
1f20: 9e d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 b8 d0  ................
1f30: bb d0 b8 d1 81 d1 8c 20 d0 b2 20 d1 82 d0 be d1  ....... .. .....
1f40: 87 d0 ba d0 b5 20 d0 be d1 81 d1 82 d0 b0 d0 bd  ..... ..........
1f50: d0 be d0 b2 d0 b0 22 29 0d 0a 20 20 20 20 20 20  ......")..      
1f60: 20 20 20 20 20 20 6e 65 65 64 54 65 73 74 4d 6f        needTestMo
1f70: 64 69 66 69 65 64 20 3d 20 74 72 75 65 0d 0a 20  dified = true.. 
1f80: 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 6c 4c             fillL
1f90: 6f 63 61 6c 56 61 72 69 61 62 6c 65 73 28 29 20  ocalVariables() 
1fa0: 20 20 20 2f 2f 20 d0 97 d0 b0 d0 bf d0 be d0 bb     // ..........
1fb0: d0 bd d0 b8 d0 bc 20 d0 bb d0 be d0 ba d0 b0 d0  ...... .........
1fc0: bb d1 8c d0 bd d1 8b d0 b5 20 d0 bf d0 b5 d1 80  ......... ......
1fd0: d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 0d 0a  ................
1fe0: 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 65 76              //ev
1ff0: 65 6e 74 73 2e 63 6f 6e 6e 65 63 74 28 44 65 73  ents.connect(Des
2000: 69 67 6e 65 72 2c 20 22 6f 6e 49 64 6c 65 22 2c  igner, "onIdle",
2010: 20 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66   SelfScript.self
2020: 29 20 2f 2f 20 d0 91 d1 83 d0 b4 d0 b5 d0 bc 20  ) // .......... 
2030: d0 b8 d1 85 20 d0 be d0 b1 d0 bd d0 be d0 b2 d0  .... ...........
2040: bb d1 8f d1 82 d1 8c 0d 0a 20 20 20 20 20 20 20  .........       
2050: 20 20 20 20 20 74 69 6d 65 72 45 78 70 72 65 73       timerExpres
2060: 73 69 6f 6e 55 70 64 61 74 65 72 2e 75 70 64 61  sionUpdater.upda
2070: 74 65 54 69 6d 65 72 28 29 3b 0d 0a 20 20 20 20  teTimer();..    
2080: 20 20 20 20 7d 0d 0a 20 20 20 20 7d 0d 0a 7d 0d      }..    }..}.
2090: 0a 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 69 73  .....function is
20a0: 44 65 62 75 67 45 76 61 6c 45 6e 61 62 6c 65 64  DebugEvalEnabled
20b0: 28 29 0d 0a 7b 0d 0a 20 20 20 20 2f 2f 20 d0 9a  ()..{..    // ..
20c0: d0 be d0 bc d0 b0 d0 bd d0 b4 d0 b0 20 22 d0 a8  ............ "..
20d0: d0 b0 d0 b3 d0 bd d1 83 d1 82 d1 8c 20 d0 b2 22  ............ .."
20e0: 20 d0 bd d0 b5 d0 b0 d0 ba d1 82 d0 b8 d0 b2 d0   ...............
20f0: bd d0 b0 20 2d 20 d0 b7 d0 bd d0 b0 d1 87 d0 b8  ... - ..........
2100: d1 82 2c 20 d0 bc d1 8b 20 d0 bd d0 b5 20 d0 b2  .., .... .... ..
2110: 20 d0 be d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0   ...............
2120: b5 2e 20 d0 a1 d1 87 d0 b8 d1 82 d0 b0 d1 82 d1  .. .............
2130: 8c 20 d0 bf d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd  . ..............
2140: d0 bd d1 8b d0 b5 20 d0 bd d0 b5 d0 bb d1 8c d0  ...... .........
2150: b7 d1 8f 2c 20 d0 b2 d0 be d0 b7 d0 bc d0 be d0  ..., ...........
2160: b6 d0 b5 d0 bd 20 d0 b2 d1 8b d0 bb d0 b5 d1 82  ..... ..........
2170: 0d 0a 20 20 20 20 76 61 72 20 73 74 61 74 65 20  ..    var state 
2180: 3d 20 73 74 64 63 6f 6d 6d 61 6e 64 73 2e 43 44  = stdcommands.CD
2190: 65 62 75 67 2e 53 74 65 70 49 6e 2e 67 65 74 53  ebug.StepIn.getS
21a0: 74 61 74 65 28 29 0d 0a 20 20 20 20 72 65 74 75  tate()..    retu
21b0: 72 6e 20 73 74 61 74 65 20 26 26 20 73 74 61 74  rn state && stat
21c0: 65 2e 65 6e 61 62 6c 65 64 0d 0a 7d 0d 0a 0d 0a  e.enabled..}....
21d0: 66 75 6e 63 74 69 6f 6e 20 6f 6e 53 74 6f 70 44  function onStopD
21e0: 65 62 75 67 28 29 0d 0a 7b 0d 0a 20 20 20 20 63  ebug()..{..    c
21f0: 6c 65 61 72 45 78 70 72 65 73 73 69 6f 6e 73 28  learExpressions(
2200: 29 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e  )..}....function
2210: 20 6f 6e 49 64 6c 65 28 29 0d 0a 7b 0d 0a 20 20   onIdle()..{..  
2220: 20 20 69 66 28 21 69 73 44 65 62 75 67 45 76 61    if(!isDebugEva
2230: 6c 45 6e 61 62 6c 65 64 28 29 29 0d 0a 20 20 20  lEnabled())..   
2240: 20 7b 0d 0a 20 20 20 20 20 20 20 20 65 76 65 6e   {..        even
2250: 74 73 2e 64 69 73 63 6f 6e 6e 65 63 74 28 44 65  ts.disconnect(De
2260: 73 69 67 6e 65 72 2c 20 22 6f 6e 49 64 6c 65 22  signer, "onIdle"
2270: 2c 20 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c  , SelfScript.sel
2280: 66 29 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75  f)..        retu
2290: 72 6e 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 74  rn..    }..    t
22a0: 72 79 7b 0d 0a 20 20 20 20 20 20 20 20 75 70 64  ry{..        upd
22b0: 61 74 65 44 65 62 75 67 45 78 70 72 65 73 73 69  ateDebugExpressi
22c0: 6f 6e 73 28 29 0d 0a 20 20 20 20 7d 63 61 74 63  ons()..    }catc
22d0: 68 28 65 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20  h(e)..    {..   
22e0: 20 20 20 20 20 2f 2f 20 d0 92 d1 81 d0 b5 20 d0       // ...... .
22f0: be d1 88 d0 b8 d0 b1 d0 ba d0 b8 20 d0 b1 d1 83  ........... ....
2300: d0 b4 d0 b5 d0 bc 20 d0 b3 d0 b0 d1 81 d0 b8 d1  ...... .........
2310: 82 d1 8c 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20  .....    }..    
2320: 65 76 65 6e 74 73 2e 64 69 73 63 6f 6e 6e 65 63  events.disconnec
2330: 74 28 44 65 73 69 67 6e 65 72 2c 20 22 6f 6e 49  t(Designer, "onI
2340: 64 6c 65 22 2c 20 53 65 6c 66 53 63 72 69 70 74  dle", SelfScript
2350: 2e 73 65 6c 66 29 0d 0a 7d 0d 0a 0d 0a 66 75 6e  .self)..}....fun
2360: 63 74 69 6f 6e 20 63 6c 65 61 72 45 78 70 72 65  ction clearExpre
2370: 73 73 69 6f 6e 73 28 29 0d 0a 7b 0d 0a 20 20 20  ssions()..{..   
2380: 20 72 4d 6f 64 75 6c 65 2e d0 a1 d1 82 d1 80 d0   rModule........
2390: be d0 ba d0 b8 2e d0 9e d1 87 d0 b8 d1 81 d1 82  ................
23a0: d0 b8 d1 82 d1 8c 28 29 0d 0a 20 20 20 20 72 50  ......()..    rP
23b0: 61 72 61 6d 73 2e d0 a1 d1 82 d1 80 d0 be d0 ba  arams...........
23c0: d0 b8 2e d0 9e d1 87 d0 b8 d1 81 d1 82 d0 b8 d1  ................
23d0: 82 d1 8c 28 29 0d 0a 20 20 20 20 72 4c 6f 63 61  ...()..    rLoca
23e0: 6c 2e d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8 2e d0  l...............
23f0: 9e d1 87 d0 b8 d1 81 d1 82 d0 b8 d1 82 d1 8c 28  ...............(
2400: 29 0d 0a 20 20 20 20 69 66 28 66 6f 72 6d 2e d0  )..    if(form..
2410: 9e d1 82 d0 ba d1 80 d1 8b d1 82 d0 b0 28 29 29  .............())
2420: 0d 0a 20 20 20 20 20 20 20 20 66 6f 72 6d 2e d0  ..        form..
2430: 97 d0 b0 d0 ba d1 80 d1 8b d1 82 d1 8c 28 29 0d  .............().
2440: 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 67  .}....function g
2450: 65 74 52 6f 77 28 70 61 72 65 6e 74 2c 20 6e 61  etRow(parent, na
2460: 6d 65 29 0d 0a 7b 0d 0a 20 20 20 20 76 61 72 20  me)..{..    var 
2470: 72 20 3d 20 70 61 72 65 6e 74 2e d0 a1 d1 82 d1  r = parent......
2480: 80 d0 be d0 ba d0 b8 2e d0 9d d0 b0 d0 b9 d1 82  ................
2490: d0 b8 28 6e 61 6d 65 2c 20 22 d0 9d d0 b0 d0 b7  ..(name, "......
24a0: d0 b2 d0 b0 d0 bd d0 b8 d0 b5 22 29 0d 0a 20 20  ..........")..  
24b0: 20 20 69 66 28 21 72 29 0d 0a 20 20 20 20 7b 0d    if(!r)..    {.
24c0: 0a 20 20 20 20 20 20 20 20 72 20 3d 20 70 61 72  .        r = par
24d0: 65 6e 74 2e d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8  ent.............
24e0: 2e d0 94 d0 be d0 b1 d0 b0 d0 b2 d0 b8 d1 82 d1  ................
24f0: 8c 28 29 0d 0a 20 20 20 20 20 20 20 20 72 2e d0  .()..        r..
2500: 9d d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d0 b5 20  ............... 
2510: 3d 20 6e 61 6d 65 0d 0a 20 20 20 20 20 20 20 20  = name..        
2520: 72 2e 4d 6f 64 69 66 69 65 64 20 3d 20 30 0d 0a  r.Modified = 0..
2530: 20 20 20 20 7d 0d 0a 20 20 20 20 72 65 74 75 72      }..    retur
2540: 6e 20 72 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69  n r..}....functi
2550: 6f 6e 20 72 65 6d 6f 76 65 52 6f 77 73 28 70 61  on removeRows(pa
2560: 72 65 6e 74 2c 20 61 6c 6c 29 0d 0a 7b 0d 0a 20  rent, all)..{.. 
2570: 20 20 20 76 61 72 20 64 65 6c 20 3d 20 5b 5d 0d     var del = [].
2580: 0a 20 20 20 20 66 6f 72 28 76 61 72 20 6b 20 3d  .    for(var k =
2590: 20 6e 65 77 20 45 6e 75 6d 65 72 61 74 6f 72 28   new Enumerator(
25a0: 70 61 72 65 6e 74 2e d0 a1 d1 82 d1 80 d0 be d0  parent..........
25b0: ba d0 b8 29 3b 20 21 6b 2e 61 74 45 6e 64 28 29  ...); !k.atEnd()
25c0: 3b 20 6b 2e 6d 6f 76 65 4e 65 78 74 28 29 29 0d  ; k.moveNext()).
25d0: 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20  .    {..        
25e0: 76 61 72 20 72 20 3d 20 6b 2e 69 74 65 6d 28 29  var r = k.item()
25f0: 0d 0a 20 20 20 20 20 20 20 20 69 66 28 21 61 6c  ..        if(!al
2600: 6c 5b 72 2e d0 9d d0 b0 d0 b7 d0 b2 d0 b0 d0 bd  l[r.............
2610: d0 b8 d0 b5 5d 29 0d 0a 20 20 20 20 20 20 20 20  ....])..        
2620: 20 20 20 20 64 65 6c 2e 70 75 73 68 28 72 29 0d      del.push(r).
2630: 0a 20 20 20 20 7d 0d 0a 20 20 20 20 66 6f 72 28  .    }..    for(
2640: 76 61 72 20 6b 20 69 6e 20 64 65 6c 29 0d 0a 20  var k in del).. 
2650: 20 20 20 20 20 20 20 70 61 72 65 6e 74 2e d0 a1         parent...
2660: d1 82 d1 80 d0 be d0 ba d0 b8 2e d0 a3 d0 b4 d0  ................
2670: b0 d0 bb d0 b8 d1 82 d1 8c 28 64 65 6c 5b 6b 5d  .........(del[k]
2680: 29 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e  )..}....function
2690: 20 66 69 6c 6c 4c 6f 63 61 6c 56 61 72 69 61 62   fillLocalVariab
26a0: 6c 65 73 28 29 0d 0a 7b 0d 0a 20 20 20 20 76 61  les()..{..    va
26b0: 72 20 77 6e 64 20 3d 20 47 65 74 54 65 78 74 57  r wnd = GetTextW
26c0: 69 6e 64 6f 77 28 29 3b 0d 0a 20 20 20 20 69 66  indow();..    if
26d0: 28 21 77 6e 64 29 0d 0a 20 20 20 20 20 20 20 20  (!wnd)..        
26e0: 72 65 74 75 72 6e 0d 0a 20 20 20 20 76 69 65 77  return..    view
26f0: 20 3d 20 77 6e 64 2e 47 65 74 56 69 65 77 28 29   = wnd.GetView()
2700: 3b 0d 0a 20 20 20 20 74 69 74 6c 65 20 3d 20 22  ;..    title = "
2710: 22 3b 0d 0a 20 20 20 20 69 66 20 28 21 76 69 65  ";..    if (!vie
2720: 77 29 7b 0d 0a 20 20 20 20 7d 20 65 6c 73 65 20  w){..    } else 
2730: 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 76  {..        if (v
2740: 69 65 77 2e 6d 64 4f 62 6a 20 26 26 20 76 69 65  iew.mdObj && vie
2750: 77 2e 6d 64 50 72 6f 70 29 20 7b 0d 0a 20 20 20  w.mdProp) {..   
2760: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
2770: 20 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20         function 
2780: 67 65 74 4d 64 4e 61 6d 65 28 6d 64 4f 62 6a 29  getMdName(mdObj)
2790: 20 7b 20 20 20 20 20 20 20 20 20 20 20 20 20 20   {              
27a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d                 .
27b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
27c0: 20 69 66 20 28 6d 64 4f 62 6a 2e 70 61 72 65 6e   if (mdObj.paren
27d0: 74 20 26 26 20 6d 64 4f 62 6a 2e 70 61 72 65 6e  t && mdObj.paren
27e0: 74 2e 6d 64 43 6c 61 73 73 2e 6e 61 6d 65 28 31  t.mdClass.name(1
27f0: 29 20 21 3d 20 27 d0 9a d0 be d0 bd d1 84 d0 b8  ) != '..........
2800: d0 b3 d1 83 d1 80 d0 b0 d1 86 d0 b8 d1 8f 27 29  ..............')
2810: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2820: 20 20 20 20 20 20 72 65 74 75 72 6e 20 67 65 74        return get
2830: 4d 64 4e 61 6d 65 28 6d 64 4f 62 6a 2e 70 61 72  MdName(mdObj.par
2840: 65 6e 74 29 20 2b 20 27 2e 27 20 2b 20 6d 64 4f  ent) + '.' + mdO
2850: 62 6a 2e 6d 64 43 6c 61 73 73 2e 6e 61 6d 65 28  bj.mdClass.name(
2860: 31 29 20 2b 20 27 20 27 20 2b 20 6d 64 4f 62 6a  1) + ' ' + mdObj
2870: 2e 6e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20  .name;..        
2880: 20 20 20 20 20 20 20 20 76 61 72 20 63 6e 61 6d          var cnam
2890: 65 20 3d 20 6d 64 4f 62 6a 2e 6d 64 43 6c 61 73  e = mdObj.mdClas
28a0: 73 2e 6e 61 6d 65 28 31 29 3b 0d 0a 20 20 20 20  s.name(1);..    
28b0: 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75              retu
28c0: 72 6e 20 20 28 63 6e 61 6d 65 20 3f 20 63 6e 61  rn  (cname ? cna
28d0: 6d 65 20 2b 20 27 20 27 20 3a 20 27 27 29 20 2b  me + ' ' : '') +
28e0: 20 6d 64 4f 62 6a 2e 6e 61 6d 65 3b 0d 0a 20 20   mdObj.name;..  
28f0: 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20            }..   
2900: 20 20 20 20 20 20 20 20 20 74 69 74 6c 65 20 3d           title =
2910: 20 67 65 74 4d 64 4e 61 6d 65 28 76 69 65 77 2e   getMdName(view.
2920: 6d 64 4f 62 6a 29 20 2b 20 27 3a 20 27 20 2b 20  mdObj) + ': ' + 
2930: 76 69 65 77 2e 6d 64 50 72 6f 70 2e 6e 61 6d 65  view.mdProp.name
2940: 28 31 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  (1);..          
2950: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20    ..            
2960: 69 66 20 28 77 6e 64 2e 47 65 74 48 77 6e 64 28  if (wnd.GetHwnd(
2970: 29 20 21 3d 20 63 75 72 56 69 65 77 48 77 6e 64  ) != curViewHwnd
2980: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )..             
2990: 20 20 20 63 75 72 53 79 6e 74 61 78 41 6e 61 6c     curSyntaxAnal
29a0: 79 73 69 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20  ysis = null;..  
29b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 75                cu
29c0: 72 4d 64 4f 62 6a 65 63 74 20 3d 20 77 6e 64 2e  rMdObject = wnd.
29d0: 47 65 74 48 77 6e 64 28 29 3b 0d 0a 20 20 20 20  GetHwnd();..    
29e0: 20 20 20 20 7d 0d 0a 20 20 20 20 7d 0d 0a 20 20      }..    }..  
29f0: 20 20 0d 0a 20 20 20 20 69 66 20 28 21 63 75 72    ..    if (!cur
2a00: 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 20 7c  SyntaxAnalysis |
2a10: 7c 20 21 76 69 65 77 29 7b 0d 0a 20 20 20 20 20  | !view){..     
2a20: 20 20 20 76 61 72 20 6d 6f 64 20 3d 20 53 79 6e     var mod = Syn
2a30: 74 61 78 41 6e 61 6c 79 73 69 73 2e 41 6e 61 6c  taxAnalysis.Anal
2a40: 79 73 65 54 65 78 74 44 6f 63 75 6d 65 6e 74 28  yseTextDocument(
2a50: 77 6e 64 29 3b 0d 0a 20 20 20 20 20 20 20 20 63  wnd);..        c
2a60: 75 72 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73  urSyntaxAnalysis
2a70: 20 3d 20 6d 6f 64 3b 0d 0a 20 20 20 20 7d 20 65   = mod;..    } e
2a80: 6c 73 65 20 7b 0d 0a 20 20 20 20 20 20 20 20 76  lse {..        v
2a90: 61 72 20 6d 6f 64 20 3d 20 63 75 72 53 79 6e 74  ar mod = curSynt
2aa0: 61 78 41 6e 61 6c 79 73 69 73 3b 0d 0a 20 20 20  axAnalysis;..   
2ab0: 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 61   }..    ..    va
2ac0: 72 20 6d 65 74 68 20 3d 20 6d 6f 64 2e 67 65 74  r meth = mod.get
2ad0: 41 63 74 69 76 65 4c 69 6e 65 4d 65 74 68 6f 64  ActiveLineMethod
2ae0: 28 29 0d 0a 20 20 20 20 72 4d 6f 64 75 6c 65 2e  ()..    rModule.
2af0: d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b5  ................
2b00: 20 3d 20 74 69 74 6c 65 3b 0d 0a 20 20 20 20 2f   = title;..    /
2b10: 2f 64 65 62 75 67 67 65 72 0d 0a 20 20 20 20 2f  /debugger..    /
2b20: 2f 20 d0 97 d0 b0 d0 bf d0 be d0 bb d0 bd d0 b8  / ..............
2b30: d0 bc 20 d0 bf d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0  .. .............
2b40: bd d0 bd d1 8b d0 b5 20 d0 bc d0 be d0 b4 d1 83  ....... ........
2b50: d0 bb d1 8f 0d 0a 20 20 20 20 76 61 72 20 61 6c  ......    var al
2b60: 6c 20 3d 20 7b 7d 0d 0a 20 20 20 20 66 6f 72 28  l = {}..    for(
2b70: 76 61 72 20 6b 20 69 6e 20 6d 6f 64 2e 63 6f 6e  var k in mod.con
2b80: 74 65 78 74 2e 4d 6f 64 75 6c 65 56 61 72 73 29  text.ModuleVars)
2b90: 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20  ..    {..       
2ba0: 20 67 65 74 52 6f 77 28 72 4d 6f 64 75 6c 65 2c   getRow(rModule,
2bb0: 20 6d 6f 64 2e 63 6f 6e 74 65 78 74 2e 4d 6f 64   mod.context.Mod
2bc0: 75 6c 65 56 61 72 73 5b 6b 5d 29 0d 0a 20 20 20  uleVars[k])..   
2bd0: 20 20 20 20 20 61 6c 6c 5b 6d 6f 64 2e 63 6f 6e       all[mod.con
2be0: 74 65 78 74 2e 4d 6f 64 75 6c 65 56 61 72 73 5b  text.ModuleVars[
2bf0: 6b 5d 5d 20 3d 20 74 72 75 65 0d 0a 20 20 20 20  k]] = true..    
2c00: 7d 0d 0a 20 20 20 20 72 65 6d 6f 76 65 52 6f 77  }..    removeRow
2c10: 73 28 72 4d 6f 64 75 6c 65 2c 20 61 6c 6c 29 0d  s(rModule, all).
2c20: 0a 20 20 20 20 69 66 20 28 21 6d 65 74 68 29 7b  .    if (!meth){
2c30: 0d 0a 20 20 20 20 20 20 20 20 72 50 61 72 61 6d  ..        rParam
2c40: 73 2e d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8  s...............
2c50: d0 b5 20 3d 20 22 3c d0 92 d0 bd d0 b5 20 d0 bf  .. = "<...... ..
2c60: d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83 d1 80 d1 8b  ................
2c70: 2f d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d0 b8 3e  /..............>
2c80: 22 0d 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d  "..    } else {.
2c90: 0a 20 20 20 20 20 20 20 20 2f 2f 20 d0 97 d0 b0  .        // ....
2ca0: d0 bf d0 be d0 bb d0 bd d0 b8 d0 bc 20 d0 bf d0  ............ ...
2cb0: b0 d1 80 d0 b0 d0 bc d0 b5 d1 82 d1 80 d1 8b 0d  ................
2cc0: 0a 20 20 20 20 20 20 20 20 72 50 61 72 61 6d 73  .        rParams
2cd0: 2e d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0  ................
2ce0: b5 20 3d 20 6d 65 74 68 2e 4e 61 6d 65 3b 0d 0a  . = meth.Name;..
2cf0: 20 20 20 20 20 20 20 20 69 66 28 21 6d 65 74 68          if(!meth
2d00: 2e 50 61 72 61 6d 73 29 7b 0d 0a 0d 0a 20 20 20  .Params){....   
2d10: 20 20 20 20 20 7d 65 6c 73 65 7b 0d 0a 20 20 20       }else{..   
2d20: 20 20 20 20 20 20 20 20 20 76 61 72 20 61 6c 6c           var all
2d30: 20 3d 20 7b 7d 0d 0a 20 20 20 20 20 20 20 20 20   = {}..         
2d40: 20 20 20 66 6f 72 28 76 61 72 20 6b 20 69 6e 20     for(var k in 
2d50: 6d 65 74 68 2e 50 61 72 61 6d 73 29 0d 0a 20 20  meth.Params)..  
2d60: 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20            {..   
2d70: 20 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74               get
2d80: 52 6f 77 28 72 50 61 72 61 6d 73 2c 20 6d 65 74  Row(rParams, met
2d90: 68 2e 50 61 72 61 6d 73 5b 6b 5d 29 0d 0a 20 20  h.Params[k])..  
2da0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c                al
2db0: 6c 5b 6d 65 74 68 2e 50 61 72 61 6d 73 5b 6b 5d  l[meth.Params[k]
2dc0: 5d 20 3d 20 74 72 75 65 0d 0a 20 20 20 20 20 20  ] = true..      
2dd0: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
2de0: 20 20 20 20 20 72 65 6d 6f 76 65 52 6f 77 73 28       removeRows(
2df0: 72 50 61 72 61 6d 73 2c 20 61 6c 6c 29 0d 0a 20  rParams, all).. 
2e00: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
2e10: 20 20 2f 2f 20 d0 97 d0 b0 d0 bf d0 be d0 bb d0    // ...........
2e20: bd d0 b8 d0 bc 20 d0 bb d0 be d0 ba d0 b0 d0 bb  ..... ..........
2e30: d1 8c d0 bd d1 8b d0 b5 20 d0 bf d0 b5 d1 80 d0  ........ .......
2e40: b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 0d 0a 20  ............... 
2e50: 20 20 20 20 20 20 20 76 61 72 20 61 6c 6c 20 3d         var all =
2e60: 20 7b 7d 0d 0a 20 20 20 20 20 20 20 20 66 6f 72   {}..        for
2e70: 28 76 61 72 20 6b 20 69 6e 20 6d 65 74 68 2e 44  (var k in meth.D
2e80: 65 63 6c 61 72 65 64 56 61 72 73 29 0d 0a 20 20  eclaredVars)..  
2e90: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
2ea0: 20 20 20 20 20 67 65 74 52 6f 77 28 72 4c 6f 63       getRow(rLoc
2eb0: 61 6c 2c 20 6d 65 74 68 2e 44 65 63 6c 61 72 65  al, meth.Declare
2ec0: 64 56 61 72 73 5b 6b 5d 29 0d 0a 20 20 20 20 20  dVars[k])..     
2ed0: 20 20 20 20 20 20 20 61 6c 6c 5b 6d 65 74 68 2e         all[meth.
2ee0: 44 65 63 6c 61 72 65 64 56 61 72 73 5b 6b 5d 5d  DeclaredVars[k]]
2ef0: 20 3d 20 74 72 75 65 0d 0a 20 20 20 20 20 20 20   = true..       
2f00: 20 7d 0d 0a 20 20 20 20 20 20 20 20 66 6f 72 28   }..        for(
2f10: 76 61 72 20 6b 20 69 6e 20 6d 65 74 68 2e 41 75  var k in meth.Au
2f20: 74 6f 6d 61 74 69 63 56 61 72 73 29 0d 0a 20 20  tomaticVars)..  
2f30: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
2f40: 20 20 20 20 20 67 65 74 52 6f 77 28 72 4c 6f 63       getRow(rLoc
2f50: 61 6c 2c 20 6d 65 74 68 2e 41 75 74 6f 6d 61 74  al, meth.Automat
2f60: 69 63 56 61 72 73 5b 6b 5d 29 0d 0a 20 20 20 20  icVars[k])..    
2f70: 20 20 20 20 20 20 20 20 61 6c 6c 5b 6d 65 74 68          all[meth
2f80: 2e 41 75 74 6f 6d 61 74 69 63 56 61 72 73 5b 6b  .AutomaticVars[k
2f90: 5d 5d 20 3d 20 74 72 75 65 0d 0a 20 20 20 20 20  ]] = true..     
2fa0: 20 20 20 7d 0d 0a 20 20 20 20 7d 0d 0a 20 20 20     }..    }..   
2fb0: 20 0d 0a 20 20 20 20 72 65 6d 6f 76 65 52 6f 77   ..    removeRow
2fc0: 73 28 72 4c 6f 63 61 6c 2c 20 61 6c 6c 29 0d 0a  s(rLocal, all)..
2fd0: 20 20 20 20 66 6f 72 6d 2e d0 ad d0 bb d0 b5 d0      form........
2fe0: bc d0 b5 d0 bd d1 82 d1 8b d0 a4 d0 be d1 80 d0  ................
2ff0: bc d1 8b 2e d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5  ................
3000: d0 bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0  ................
3010: d0 b4 d0 ba d0 b8 2e d0 a0 d0 b0 d0 b7 d0 b2 d0  ................
3020: b5 d1 80 d0 bd d1 83 d1 82 d1 8c 28 72 4d 6f 64  ...........(rMod
3030: 75 6c 65 2c 20 66 61 6c 73 65 29 0d 0a 20 20 20  ule, false)..   
3040: 20 66 6f 72 6d 2e d0 ad d0 bb d0 b5 d0 bc d0 b5   form...........
3050: d0 bd d1 82 d1 8b d0 a4 d0 be d1 80 d0 bc d1 8b  ................
3060: 2e d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0  ................
3070: bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0  ................
3080: ba d0 b8 2e d0 a0 d0 b0 d0 b7 d0 b2 d0 b5 d1 80  ................
3090: d0 bd d1 83 d1 82 d1 8c 28 72 50 61 72 61 6d 73  ........(rParams
30a0: 2c 20 66 61 6c 73 65 29 0d 0a 20 20 20 20 66 6f  , false)..    fo
30b0: 72 6d 2e d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1  rm..............
30c0: 82 d1 8b d0 a4 d0 be d1 80 d0 bc d1 8b 2e d0 9f  ................
30d0: d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b  ................
30e0: d0 b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8  ................
30f0: 2e d0 a0 d0 b0 d0 b7 d0 b2 d0 b5 d1 80 d0 bd d1  ................
3100: 83 d1 82 d1 8c 28 72 4c 6f 63 61 6c 2c 20 66 61  .....(rLocal, fa
3110: 6c 73 65 29 0d 0a 20 20 20 20 66 6f 72 6d 2e d0  lse)..    form..
3120: ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 d1 8b d0  ................
3130: a4 d0 be d1 80 d0 bc d1 8b 2e d0 9f d0 b5 d1 80  ................
3140: d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 9e  ................
3150: d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 2e d0 a0 d0  ................
3160: b0 d0 b7 d0 b2 d0 b5 d1 80 d0 bd d1 83 d1 82 d1  ................
3170: 8c 28 72 48 61 6e 64 73 2c 20 66 61 6c 73 65 29  .(rHands, false)
3180: 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e  ;..}....function
3190: 20 73 65 74 52 6f 77 56 61 6c 75 65 28 72 6f 77   setRowValue(row
31a0: 2c 20 76 61 6c 75 65 2c 20 74 79 70 65 29 0d 0a  , value, type)..
31b0: 7b 0d 0a 20 20 20 20 69 66 28 6e 65 65 64 54 65  {..    if(needTe
31c0: 73 74 4d 6f 64 69 66 69 65 64 29 0d 0a 20 20 20  stModified)..   
31d0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 28 72   {..        if(r
31e0: 6f 77 2e 4d 6f 64 69 66 69 65 64 20 3d 3d 20 30  ow.Modified == 0
31f0: 29 20 20 20 2f 2f 20 d0 a1 d1 82 d1 80 d0 be d0  )   // .........
3200: ba d0 b0 20 d1 82 d0 be d0 bb d1 8c d0 ba d0 be  ... ............
3210: 20 d1 87 d1 82 d0 be 20 d0 b4 d0 be d0 b1 d0 b0   ...... ........
3220: d0 b2 d0 b8 d0 bb d0 b0 d1 81 d1 8c 0d 0a 20 20  ..............  
3230: 20 20 20 20 20 20 20 20 20 20 72 6f 77 2e 4d 6f            row.Mo
3240: 64 69 66 69 65 64 20 3d 20 31 20 20 20 20 2f 2f  dified = 1    //
3250: 20 d0 92 20 d1 81 d0 bb d0 b5 d0 b4 d1 83 d1 8e   .. ............
3260: d1 89 d0 b8 d0 b9 20 d1 80 d0 b0 d0 b7 20 d0 bf  ...... ...... ..
3270: d1 80 d0 be d0 b2 d0 b5 d1 80 d1 8f d1 82 d1 8c  ................
3280: 20 d1 81 d1 82 d1 80 d0 be d0 ba d1 83 20 d0 bd   ............ ..
3290: d0 b0 20 d0 b8 d0 b7 d0 bc d0 b5 d0 bd d0 b5 d0  .. .............
32a0: bd d0 b8 d0 b5 0d 0a 20 20 20 20 20 20 20 20 65  .......        e
32b0: 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20  lse..           
32c0: 20 72 6f 77 2e 4d 6f 64 69 66 69 65 64 20 3d 20   row.Modified = 
32d0: 72 6f 77 2e d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd  row.............
32e0: d0 b8 d0 b5 20 21 3d 3d 20 76 61 6c 75 65 20 3f  .... !== value ?
32f0: 20 32 20 3a 20 31 0d 0a 20 20 20 20 7d 0d 0a 20   2 : 1..    }.. 
3300: 20 20 20 72 6f 77 2e d0 97 d0 bd d0 b0 d1 87 d0     row..........
3310: b5 d0 bd d0 b8 d0 b5 20 3d 20 76 61 6c 75 65 0d  ....... = value.
3320: 0a 20 20 20 20 72 6f 77 2e d0 a2 d0 b8 d0 bf 20  .    row....... 
3330: 3d 20 74 79 70 65 0d 0a 7d 0d 0a 0d 0a 66 75 6e  = type..}....fun
3340: 63 74 69 6f 6e 20 75 70 64 61 74 65 4f 6e 65 45  ction updateOneE
3350: 78 70 72 65 73 73 69 6f 6e 28 72 6f 77 2c 20 70  xpression(row, p
3360: 61 72 65 6e 74 4e 61 6d 65 29 0d 0a 7b 0d 0a 20  arentName)..{.. 
3370: 20 20 20 2f 2f 20 d0 a0 d0 b0 d1 81 d1 81 d1 87     // ..........
3380: d0 b8 d1 82 d0 b0 d0 b5 d0 bc 20 d0 be d1 82 d0  .......... .....
3390: bb d0 b0 d0 b4 d0 be d1 87 d0 bd d0 be d0 b5 20  ............... 
33a0: d0 b7 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b5  ................
33b0: 20 d0 b2 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b5   .. ............
33c0: 0d 0a 20 20 20 20 69 66 20 28 72 6f 77 2e d0 9d  ..    if (row...
33d0: d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d0 b5 2e 6c  ...............l
33e0: 65 6e 67 74 68 3c 31 29 7b 0d 0a 20 20 20 20 20  ength<1){..     
33f0: 20 20 20 73 65 74 52 6f 77 56 61 6c 75 65 28 72     setRowValue(r
3400: 6f 77 2c 20 27 27 2c 20 27 27 29 3b 0d 0a 20 20  ow, '', '');..  
3410: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20        return;.. 
3420: 20 20 20 7d 0d 0a 20 20 20 20 76 61 72 20 65 78     }..    var ex
3430: 70 72 20 3d 20 76 38 64 65 62 75 67 2e 65 76 61  pr = v8debug.eva
3440: 6c 28 70 61 72 65 6e 74 4e 61 6d 65 20 2b 20 72  l(parentName + r
3450: 6f 77 2e d0 9d d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0  ow..............
3460: b8 d0 b5 29 0d 0a 20 20 20 20 2f 2f 20 d0 a3 d1  ...)..    // ...
3470: 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 b8 d0 bc 20  ............... 
3480: d0 b7 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b5  ................
3490: 20 d0 b8 20 d0 bc d0 be d0 b4 d0 b8 d1 84 d0 b8   .. ............
34a0: d1 86 d0 b8 d1 80 d0 be d0 b2 d0 b0 d0 bd d0 bd  ................
34b0: d0 be d1 81 d1 82 d1 8c 0d 0a 20 20 20 20 73 65  ..........    se
34c0: 74 52 6f 77 56 61 6c 75 65 28 72 6f 77 2c 20 65  tRowValue(row, e
34d0: 78 70 72 2e 76 61 6c 75 65 2c 20 65 78 70 72 2e  xpr.value, expr.
34e0: 74 79 70 65 29 0d 0a 20 20 20 20 2f 2f 20 d0 9f  type)..    // ..
34f0: d0 b5 d1 80 d0 b5 d0 b1 d0 b5 d1 80 d0 b5 d0 bc  ................
3500: 20 d1 81 d0 b2 d0 be d0 b9 d1 81 d1 82 d0 b2 d0   ...............
3510: b0 20 d0 b2 d1 8b d1 87 d0 b8 d1 81 d0 bb d0 b5  . ..............
3520: d0 bd d0 bd d0 be d0 b3 d0 be 20 d0 b2 d1 8b d1  .......... .....
3530: 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d1 8f 0d 0a 20  ............... 
3540: 20 20 20 76 61 72 20 61 6c 6c 20 3d 20 7b 7d 0d     var all = {}.
3550: 0a 20 20 20 20 66 6f 72 28 76 61 72 20 6b 20 3d  .    for(var k =
3560: 20 30 3b 20 6b 20 3c 20 65 78 70 72 2e 70 72 6f   0; k < expr.pro
3570: 70 43 6f 75 6e 74 3b 20 6b 2b 2b 29 0d 0a 20 20  pCount; k++)..  
3580: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 76 61 72    {..        var
3590: 20 70 72 6f 70 20 3d 20 65 78 70 72 2e 70 72 6f   prop = expr.pro
35a0: 70 28 6b 29 0d 0a 20 20 20 20 20 20 20 20 76 61  p(k)..        va
35b0: 72 20 72 20 3d 20 67 65 74 52 6f 77 28 72 6f 77  r r = getRow(row
35c0: 2c 20 70 72 6f 70 2e 6e 61 6d 65 29 0d 0a 20 20  , prop.name)..  
35d0: 20 20 20 20 20 20 61 6c 6c 5b 70 72 6f 70 2e 6e        all[prop.n
35e0: 61 6d 65 5d 20 3d 20 74 72 75 65 0d 0a 20 20 20  ame] = true..   
35f0: 20 20 20 20 20 73 65 74 52 6f 77 56 61 6c 75 65       setRowValue
3600: 28 72 2c 20 70 72 6f 70 2e 76 61 6c 75 65 2c 20  (r, prop.value, 
3610: 70 72 6f 70 2e 74 79 70 65 29 0d 0a 20 20 20 20  prop.type)..    
3620: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66      ..        if
3630: 28 70 72 6f 70 2e 65 78 70 61 6e 64 61 62 6c 65  (prop.expandable
3640: 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20  )..        {..  
3650: 20 20 20 20 20 20 20 20 20 20 2f 2f 20 d0 a1 d0            // ...
3660: b2 d0 be d0 b9 d1 81 d1 82 d0 b2 d0 be 20 d0 b8  ............. ..
3670: d0 bc d0 b5 d0 b5 d1 82 20 d0 bf d0 be d0 b4 d1  ........ .......
3680: 81 d0 b2 d0 be d0 b9 d1 81 d1 82 d0 b2 d0 b0 2c  ...............,
3690: 20 d0 bd d0 b0 d0 b4 d0 be 20 d0 bf d0 be d0 ba   ........ ......
36a0: d0 b0 d0 b7 d1 8b d0 b2 d0 b0 d1 82 d1 8c 20 d0  .............. .
36b0: bf d0 bb d1 8e d1 81 d0 b8 d0 ba 0d 0a 20 20 20  .............   
36c0: 20 20 20 20 20 20 20 20 20 69 66 28 21 72 2e d0           if(!r..
36d0: a1 d1 82 d1 80 d0 be d0 ba d0 b8 2e d0 9a d0 be  ................
36e0: d0 bb d0 b8 d1 87 d0 b5 d1 81 d1 82 d0 b2 d0 be  ................
36f0: 28 29 29 20 2f 2f 20 d0 94 d0 bb d1 8f 20 d1 8d  ()) // ...... ..
3700: d1 82 d0 be d0 b3 d0 be 20 d0 bf d1 80 d0 b8 20  ........ ...... 
3710: d0 bd d0 b5 d0 be d0 b1 d1 85 d0 be d0 b4 d0 b8  ................
3720: d0 bc d0 be d1 81 d1 82 d0 b8 20 d0 b4 d0 be d0  .......... .....
3730: b1 d0 b0 d0 b2 d0 b8 d0 bc 20 d0 bf d1 83 d1 81  ......... ......
3740: d1 82 d1 83 d1 8e 20 d1 81 d1 82 d1 80 d0 be d0  ...... .........
3750: ba d1 83 0d 0a 20 20 20 20 20 20 20 20 20 20 20  .....           
3760: 20 20 20 20 20 72 2e d0 a1 d1 82 d1 80 d0 be d0       r..........
3770: ba d0 b8 2e d0 94 d0 be d0 b1 d0 b0 d0 b2 d0 b8  ................
3780: d1 82 d1 8c 28 29 2e d0 9d d0 b0 d0 b7 d0 b2 d0  ....()..........
3790: b0 d0 bd d0 b8 d0 b5 20 3d 20 22 2d 22 0d 0a 20  ....... = "-".. 
37a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d                 .
37b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20  .            // 
37c0: d0 95 d1 81 d0 bb d0 b8 20 d1 81 d0 b2 d0 be d0  ........ .......
37d0: b9 d1 81 d1 82 d0 b2 d0 be 20 d1 81 d0 b0 d0 bc  ......... ......
37e0: d0 be 20 d1 80 d0 b0 d0 b7 d0 b2 d0 b5 d1 80 d0  .. .............
37f0: bd d1 83 d1 82 d0 be 2c 20 d0 b5 d0 b3 d0 be 20  ......., ...... 
3800: d0 bd d0 b0 d0 b4 d0 be 20 d1 82 d0 be d0 b6 d0  ........ .......
3810: b5 20 d0 be d0 b1 d0 bd d0 be d0 b2 d0 b8 d1 82  . ..............
3820: d1 8c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ....            
3830: 69 66 28 66 6f 72 6d 2e d0 ad d0 bb d0 b5 d0 bc  if(form.........
3840: d0 b5 d0 bd d1 82 d1 8b d0 a4 d0 be d1 80 d0 bc  ................
3850: d1 8b 2e d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0  ................
3860: bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0 d0  ................
3870: b4 d0 ba d0 b8 2e d0 a0 d0 b0 d0 b7 d0 b2 d0 b5  ................
3880: d1 80 d0 bd d1 83 d1 82 28 72 29 29 0d 0a 20 20  ........(r))..  
3890: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 70                up
38a0: 64 61 74 65 4f 6e 65 45 78 70 72 65 73 73 69 6f  dateOneExpressio
38b0: 6e 28 72 2c 20 70 61 72 65 6e 74 4e 61 6d 65 20  n(r, parentName 
38c0: 2b 20 72 6f 77 2e d0 9d d0 b0 d0 b7 d0 b2 d0 b0  + row...........
38d0: d0 bd d0 b8 d0 b5 20 2b 20 22 2e 22 29 0d 0a 20  ...... + ".").. 
38e0: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
38f0: 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20    else..        
3900: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f  {..            /
3910: 2f 20 d0 9d d0 b5 20 d1 80 d0 b0 d0 b7 d0 b2 d0  / .... .........
3920: be d1 80 d0 b0 d1 87 d0 b8 d0 b2 d0 b0 d0 b5 d0  ................
3930: bc d0 be d0 b5 20 d1 81 d0 b2 d0 be d0 b9 d1 81  ..... ..........
3940: d1 82 d0 b2 d0 be 2c 20 d0 bd d0 b0 20 d0 b2 d1  ......, .... ...
3950: 81 d1 8f d0 ba d0 b8 d0 b9 20 d1 81 d0 bb d1 83  ......... ......
3960: d1 87 d0 b0 d0 b9 20 d1 83 d0 b4 d0 b0 d0 bb d0  ...... .........
3970: b8 d0 bc 20 d0 bf d0 be d0 b4 d1 87 d0 b8 d0 bd  ... ............
3980: d0 b5 d0 bd d0 bd d1 8b d0 b5 20 d1 81 d1 82 d1  .......... .....
3990: 80 d0 be d0 ba d0 b8 0d 0a 20 20 20 20 20 20 20  .........       
39a0: 20 20 20 20 20 72 2e d0 a1 d1 82 d1 80 d0 be d0       r..........
39b0: ba d0 b8 2e d0 9e d1 87 d0 b8 d1 81 d1 82 d0 b8  ................
39c0: d1 82 d1 8c 28 29 0d 0a 20 20 20 20 20 20 20 20  ....()..        
39d0: 7d 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 72 65  }..    }..    re
39e0: 6d 6f 76 65 52 6f 77 73 28 72 6f 77 2c 20 61 6c  moveRows(row, al
39f0: 6c 29 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f  l)..}....functio
3a00: 6e 20 75 70 64 61 74 65 52 6f 77 73 28 70 61 72  n updateRows(par
3a10: 65 6e 74 29 0d 0a 7b 0d 0a 20 20 20 20 66 6f 72  ent)..{..    for
3a20: 28 76 61 72 20 72 6f 77 73 20 3d 20 6e 65 77 20  (var rows = new 
3a30: 45 6e 75 6d 65 72 61 74 6f 72 28 70 61 72 65 6e  Enumerator(paren
3a40: 74 2e d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8 29 3b  t.............);
3a50: 20 21 72 6f 77 73 2e 61 74 45 6e 64 28 29 3b 20   !rows.atEnd(); 
3a60: 72 6f 77 73 2e 6d 6f 76 65 4e 65 78 74 28 29 29  rows.moveNext())
3a70: 0d 0a 20 20 20 20 20 20 20 20 75 70 64 61 74 65  ..        update
3a80: 4f 6e 65 45 78 70 72 65 73 73 69 6f 6e 28 72 6f  OneExpression(ro
3a90: 77 73 2e 69 74 65 6d 28 29 2c 20 22 22 29 0d 0a  ws.item(), "")..
3aa0: 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 75 70  }....function up
3ab0: 64 61 74 65 44 65 62 75 67 45 78 70 72 65 73 73  dateDebugExpress
3ac0: 69 6f 6e 73 28 29 0d 0a 7b 0d 0a 20 20 20 20 69  ions()..{..    i
3ad0: 66 28 21 66 6f 72 6d 2e d0 9e d1 82 d0 ba d1 80  f(!form.........
3ae0: d1 8b d1 82 d0 b0 28 29 29 0d 0a 20 20 20 20 20  ......())..     
3af0: 20 20 20 72 65 74 75 72 6e 0d 0a 20 20 20 20 2f     return..    /
3b00: 2f 64 65 62 75 67 67 65 72 0d 0a 20 20 20 20 75  /debugger..    u
3b10: 70 64 61 74 65 52 6f 77 73 28 72 4d 6f 64 75 6c  pdateRows(rModul
3b20: 65 29 0d 0a 20 20 20 20 75 70 64 61 74 65 52 6f  e)..    updateRo
3b30: 77 73 28 72 50 61 72 61 6d 73 29 0d 0a 20 20 20  ws(rParams)..   
3b40: 20 75 70 64 61 74 65 52 6f 77 73 28 72 4c 6f 63   updateRows(rLoc
3b50: 61 6c 29 0d 0a 20 20 20 20 75 70 64 61 74 65 52  al)..    updateR
3b60: 6f 77 73 28 72 48 61 6e 64 73 29 3b 0d 0a 20 20  ows(rHands);..  
3b70: 20 20 6e 65 65 64 54 65 73 74 4d 6f 64 69 66 69    needTestModifi
3b80: 65 64 20 3d 20 66 61 6c 73 65 0d 0a 7d 0d 0a 0d  ed = false..}...
3b90: 0a 66 75 6e 63 74 69 6f 6e 20 66 75 6c 6c 4e 61  .function fullNa
3ba0: 6d 65 28 72 6f 77 29 0d 0a 7b 0d 0a 20 20 20 20  me(row)..{..    
3bb0: 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 74 68 69  logger.debug(thi
3bc0: 73 2e 6e 61 6d 65 20 2b 20 22 20 d1 83 d1 80 d0  s.name + " .....
3bd0: be d0 b2 d0 b5 d0 bd d1 8c 20 22 2b 72 6f 77 2e  ......... "+row.
3be0: d0 a3 d1 80 d0 be d0 b2 d0 b5 d0 bd d1 8c 28 29  ..............()
3bf0: 29 3b 0d 0a 20 20 20 20 76 61 72 20 74 20 3d 20  );..    var t = 
3c00: 72 6f 77 2e d0 9d d0 b0 d0 b7 d0 b2 d0 b0 d0 bd  row.............
3c10: d0 b8 d0 b5 0d 0a 20 20 20 20 69 66 20 28 72 6f  ......    if (ro
3c20: 77 2e d0 a3 d1 80 d0 be d0 b2 d0 b5 d0 bd d1 8c  w...............
3c30: 28 29 20 3e 20 31 29 7b 0d 0a 20 20 20 20 20 20  () > 1){..      
3c40: 20 20 74 20 3d 20 66 75 6c 6c 4e 61 6d 65 28 72    t = fullName(r
3c50: 6f 77 2e d0 a0 d0 be d0 b4 d0 b8 d1 82 d0 b5 d0  ow..............
3c60: bb d1 8c 29 20 2b 22 2e 22 2b 74 3b 0d 0a 20 20  ...) +"."+t;..  
3c70: 20 20 7d 0d 0a 20 20 20 20 6c 6f 67 67 65 72 2e    }..    logger.
3c80: 64 65 62 75 67 28 22 22 2b 74 29 3b 0d 0a 20 20  debug(""+t);..  
3c90: 20 20 72 65 74 75 72 6e 20 74 0d 0a 7d 0d 0a 0d    return t..}...
3ca0: 0a 66 75 6e 63 74 69 6f 6e 20 d0 9f d0 b5 d1 80  .function ......
3cb0: d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 9e  ................
3cc0: d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 d0 92 d1 8b  ................
3cd0: d0 b1 d0 be d1 80 28 d0 ad d0 bb d0 b5 d0 bc d0  ......(.........
3ce0: b5 d0 bd d1 82 2c 20 d0 92 d1 8b d0 b1 d1 80 d0  ....., .........
3cf0: b0 d0 bd d0 bd d0 b0 d1 8f d0 a1 d1 82 d1 80 d0  ................
3d00: be d0 ba d0 b0 2c 20 d0 9a d0 be d0 bb d0 be d0  ....., .........
3d10: bd d0 ba d0 b0 2c 20 d0 a1 d1 82 d0 b0 d0 bd d0  ....., .........
3d20: b4 d0 b0 d1 80 d1 82 d0 bd d0 b0 d1 8f d0 9e d0  ................
3d30: b1 d1 80 d0 b0 d0 b1 d0 be d1 82 d0 ba d0 b0 29  ...............)
3d40: 0d 0a 7b 0d 0a 20 20 20 20 2f 2f 4d 65 73 73 61  ..{..    //Messa
3d50: 67 65 28 27 d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5  ge('............
3d60: d0 bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0  ................
3d70: d0 b4 d0 ba d0 b8 d0 92 d1 8b d0 b1 d0 be d1 80  ................
3d80: 27 29 3b 0d 0a 20 20 20 20 76 61 72 20 76 61 6c  ');..    var val
3d90: 75 65 20 3d 20 d0 92 d1 8b d0 b1 d1 80 d0 b0 d0  ue = ...........
3da0: bd d0 bd d0 b0 d1 8f d0 a1 d1 82 d1 80 d0 be d0  ................
3db0: ba d0 b0 2e 76 61 6c 2e d0 97 d0 bd d0 b0 d1 87  ....val.........
3dc0: d0 b5 d0 bd d0 b8 d0 b5 0d 0a 20 20 20 20 69 66  ..........    if
3dd0: 28 76 61 6c 75 65 2e 69 6e 64 65 78 4f 66 28 27  (value.indexOf('
3de0: 5c 6e 27 29 20 3e 3d 20 30 29 0d 0a 20 20 20 20  \n') >= 0)..    
3df0: 7b 0d 0a 20 20 20 20 20 20 20 20 4d 65 73 73 61  {..        Messa
3e00: 67 65 28 22 d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd  ge("............
3e10: d0 b8 d0 b5 20 27 22 20 2b 20 66 75 6c 6c 4e 61  .... '" + fullNa
3e20: 6d 65 28 d0 92 d1 8b d0 b1 d1 80 d0 b0 d0 bd d0  me(.............
3e30: bd d0 b0 d1 8f d0 a1 d1 82 d1 80 d0 be d0 ba d0  ................
3e40: b0 2e 76 61 6c 29 20 2b 20 22 27 3a 22 2c 20 6d  ..val) + "':", m
3e50: 49 6e 66 6f 29 0d 0a 20 20 20 20 20 20 20 20 4d  Info)..        M
3e60: 65 73 73 61 67 65 28 76 61 6c 75 65 29 0d 0a 20  essage(value).. 
3e70: 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74     }..}....funct
3e80: 69 6f 6e 20 d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5  ion ............
3e90: d0 bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0  ................
3ea0: d0 b4 d0 ba d0 b8 d0 9f d1 80 d0 b8 d0 92 d1 8b  ................
3eb0: d0 b2 d0 be d0 b4 d0 b5 d0 a1 d1 82 d1 80 d0 be  ................
3ec0: d0 ba d0 b8 28 d0 ad d0 bb d0 b5 d0 bc d0 b5 d0  ....(...........
3ed0: bd d1 82 2c 20 d0 9e d1 84 d0 be d1 80 d0 bc d0  ..., ...........
3ee0: bb d0 b5 d0 bd d0 b8 d0 b5 d0 a1 d1 82 d1 80 d0  ................
3ef0: be d0 ba d0 b8 2c 20 d0 94 d0 b0 d0 bd d0 bd d1  ....., .........
3f00: 8b d0 b5 d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8 29  ...............)
3f10: 0d 0a 7b 0d 0a 20 20 20 20 69 66 28 d0 94 d0 b0  ..{..    if(....
3f20: d0 bd d0 bd d1 8b d0 b5 d0 a1 d1 82 d1 80 d0 be  ................
3f30: d0 ba d0 b8 2e 76 61 6c 2e d0 a3 d1 80 d0 be d0  .....val........
3f40: b2 d0 b5 d0 bd d1 8c 28 29 20 3d 3d 20 30 29 0d  .......() == 0).
3f50: 0a 20 20 20 20 20 20 20 20 d0 9e d1 84 d0 be d1  .        .......
3f60: 80 d0 bc d0 bb d0 b5 d0 bd d0 b8 d0 b5 d0 a1 d1  ................
3f70: 82 d1 80 d0 be d0 ba d0 b8 2e 76 61 6c 2e d0 a6  ..........val...
3f80: d0 b2 d0 b5 d1 82 d0 a4 d0 be d0 bd d0 b0 20 3d  .............. =
3f90: 20 63 6f 6c 6f 72 47 72 61 79 0d 0a 20 20 20 20   colorGray..    
3fa0: 65 6c 73 65 0d 0a 20 20 20 20 7b 0d 0a 20 20 20  else..    {..   
3fb0: 20 20 20 20 20 69 66 28 d0 94 d0 b0 d0 bd d0 bd       if(........
3fc0: d1 8b d0 b5 d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8  ................
3fd0: 2e 76 61 6c 2e 4d 6f 64 69 66 69 65 64 20 3d 3d  .val.Modified ==
3fe0: 20 32 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20   2)..           
3ff0: 20 d0 9e d1 84 d0 be d1 80 d0 bc d0 bb d0 b5 d0   ...............
4000: bd d0 b8 d0 b5 d0 a1 d1 82 d1 80 d0 be d0 ba d0  ................
4010: b8 2e 76 61 6c 2e d0 a6 d0 b2 d0 b5 d1 82 d0 a2  ..val...........
4020: d0 b5 d0 ba d1 81 d1 82 d0 b0 20 3d 20 63 6f 6c  .......... = col
4030: 6f 72 52 65 64 0d 0a 20 20 20 20 20 20 20 20 2f  orRed..        /
4040: 2f 20 d0 94 d0 bb d1 8f 20 d1 81 d1 82 d1 80 d0  / ...... .......
4050: be d0 ba 20 d1 81 20 d0 bf d0 b5 d1 80 d0 b5 d0  ... .. .........
4060: bd d0 be d1 81 d0 be d0 bc 20 d1 81 d1 82 d1 80  ......... ......
4070: d0 be d0 ba d0 b8 20 d0 bf d0 be d0 ba d0 b0 d0  ...... .........
4080: b6 d0 b5 d0 bc 20 d0 ba d0 b0 d1 80 d1 82 d0 b8  ..... ..........
4090: d0 bd d0 ba d1 83 2c 20 d1 87 d1 82 d0 be 20 d0  ......, ...... .
40a0: bd d0 b0 20 d0 bd d0 b5 d0 b5 20 d0 bc d0 be d0  ... ...... .....
40b0: b6 d0 bd d0 be 20 d1 89 d0 b5 d0 bb d0 ba d0 bd  ..... ..........
40c0: d1 83 d1 82 d1 8c 0d 0a 20 20 20 20 20 20 20 20  ........        
40d0: 69 66 28 d0 94 d0 b0 d0 bd d0 bd d1 8b d0 b5 d0  if(.............
40e0: a1 d1 82 d1 80 d0 be d0 ba d0 b8 2e 76 61 6c 2e  ............val.
40f0: d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b5  ................
4100: 2e 69 6e 64 65 78 4f 66 28 27 5c 6e 27 29 20 3e  .indexOf('\n') >
4110: 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d  = 0)..        {.
4120: 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72  .            var
4130: 20 63 65 6c 6c 20 3d 20 d0 9e d1 84 d0 be d1 80   cell = ........
4140: d0 bc d0 bb d0 b5 d0 bd d0 b8 d0 b5 d0 a1 d1 82  ................
4150: d1 80 d0 be d0 ba d0 b8 2e 76 61 6c 2e d0 af d1  .........val....
4160: 87 d0 b5 d0 b9 d0 ba d0 b8 2e d0 97 d0 bd d0 b0  ................
4170: d1 87 d0 b5 d0 bd d0 b8 d0 b5 0d 0a 20 20 20 20  ............    
4180: 20 20 20 20 20 20 20 20 63 65 6c 6c 2e d0 9e d1          cell....
4190: 82 d0 be d0 b1 d1 80 d0 b0 d0 b6 d0 b0 d1 82 d1  ................
41a0: 8c d0 9a d0 b0 d1 80 d1 82 d0 b8 d0 bd d0 ba d1  ................
41b0: 83 20 3d 20 74 72 75 65 0d 0a 20 20 20 20 20 20  . = true..      
41c0: 20 20 20 20 20 20 63 65 6c 6c 2e d0 98 d0 bd d0        cell......
41d0: b4 d0 b5 d0 ba d1 81 d0 9a d0 b0 d1 80 d1 82 d0  ................
41e0: b8 d0 bd d0 ba d0 b8 20 3d 20 30 0d 0a 20 20 20  ....... = 0..   
41f0: 20 20 20 20 20 7d 0d 0a 20 20 20 20 7d 0d 0a 7d       }..    }..}
4200: 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 d0 9f d0  ....function ...
4210: b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0  ................
4220: b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 d0  ................
4230: 9f d0 b5 d1 80 d0 b5 d0 b4 d0 a0 d0 b0 d0 b7 d0  ................
4240: b2 d0 be d1 80 d0 b0 d1 87 d0 b8 d0 b2 d0 b0 d0  ................
4250: bd d0 b8 d0 b5 d0 bc 28 d0 ad d0 bb d0 b5 d0 bc  .......(........
4260: d0 b5 d0 bd d1 82 2c 20 d0 a1 d1 82 d1 80 d0 be  ......, ........
4270: d0 ba d0 b0 2c 20 d0 9e d1 82 d0 ba d0 b0 d0 b7  ...., ..........
4280: 29 0d 0a 7b 0d 0a 20 20 20 20 69 66 28 69 73 44  )..{..    if(isD
4290: 65 62 75 67 45 76 61 6c 45 6e 61 62 6c 65 64 28  ebugEvalEnabled(
42a0: 29 29 20 20 20 20 2f 2f 20 d0 95 d1 81 d0 bb d0  ))    // .......
42b0: b8 20 d0 b2 d0 be d0 b7 d0 bc d0 be d0 b6 d0 bd  . ..............
42c0: d0 be 20 d0 b2 d1 8b d1 87 d0 b8 d1 81 d0 bb d0  .. .............
42d0: b5 d0 bd d0 b8 d0 b5 20 d0 be d1 82 d0 bb d0 b0  ....... ........
42e0: d0 b4 d0 be d1 87 d0 bd d1 8b d1 85 20 d0 b2 d1  ............ ...
42f0: 8b d1 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d0 b9 0d  ................
4300: 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20  .    {..        
4310: 76 61 72 20 72 6f 77 20 3d 20 d0 a1 d1 82 d1 80  var row = ......
4320: d0 be d0 ba d0 b0 2e 76 61 6c 0d 0a 20 20 20 20  .......val..    
4330: 20 20 20 20 69 66 28 72 6f 77 2e d0 a3 d1 80 d0      if(row......
4340: be d0 b2 d0 b5 d0 bd d1 8c 28 29 20 3e 20 30 29  .........() > 0)
4350: 20 20 20 2f 2f 20 d0 ad d1 82 d0 be 20 d0 bd d0     // ...... ...
4360: b5 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b0 20 d1  . ............ .
4370: 81 20 d0 b8 d0 bc d0 b5 d0 bd d0 b5 d0 bc 20 d1  . ............ .
4380: 80 d0 b0 d0 b7 d0 b4 d0 b5 d0 bb d0 b0 0d 0a 20  ............... 
4390: 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20         {..      
43a0: 20 20 20 20 20 20 69 66 28 72 6f 77 2e d0 a1 d1        if(row....
43b0: 82 d1 80 d0 be d0 ba d0 b8 2e d0 9a d0 be d0 bb  ................
43c0: d0 b8 d1 87 d0 b5 d1 81 d1 82 d0 b2 d0 be 28 29  ..............()
43d0: 20 3d 3d 20 31 20 26 26 20 72 6f 77 2e d0 a1 d1   == 1 && row....
43e0: 82 d1 80 d0 be d0 ba d0 b8 2e d0 9f d0 be d0 bb  ................
43f0: d1 83 d1 87 d0 b8 d1 82 d1 8c 28 30 29 2e d0 9d  ..........(0)...
4400: d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d0 b5 20 3d  .............. =
4410: 3d 20 22 2d 22 29 0d 0a 20 20 20 20 20 20 20 20  = "-")..        
4420: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20      {..         
4430: 20 20 20 20 20 20 20 2f 2f 20 d0 a0 d0 b0 d0 b7         // ......
4440: d0 b2 d0 be d1 80 d0 b0 d1 87 d0 b8 d0 b2 d0 b0  ................
4450: d0 b5 d0 bc 20 d0 bf d0 b5 d1 80 d0 b2 d1 8b d0  .... ...........
4460: b9 20 d1 80 d0 b0 d0 b7 0d 0a 20 20 20 20 20 20  . ........      
4470: 20 20 20 20 20 20 20 20 20 20 75 70 64 61 74 65            update
4480: 4f 6e 65 45 78 70 72 65 73 73 69 6f 6e 28 72 6f  OneExpression(ro
4490: 77 2c 20 66 75 6c 6c 4e 61 6d 65 28 72 6f 77 2e  w, fullName(row.
44a0: d0 a0 d0 be d0 b4 d0 b8 d1 82 d0 b5 d0 bb d1 8c  ................
44b0: 29 20 2b 20 22 2e 22 29 0d 0a 20 20 20 20 20 20  ) + ".")..      
44c0: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
44d0: 20 7d 0d 0a 20 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a   }..    }..}....
44e0: 66 75 6e 63 74 69 6f 6e 20 d0 9f d0 b5 d1 80 d0  function .......
44f0: b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 9e d1  ................
4500: 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 d0 9f d0 b5 d1  ................
4510: 80 d0 b5 d0 b4 d0 9d d0 b0 d1 87 d0 b0 d0 bb d0  ................
4520: be d0 bc d0 94 d0 be d0 b1 d0 b0 d0 b2 d0 bb d0  ................
4530: b5 d0 bd d0 b8 d1 8f 28 d0 ad d0 bb d0 b5 d0 bc  .......(........
4540: d0 b5 d0 bd d1 82 2c 20 d0 9e d1 82 d0 ba d0 b0  ......, ........
4550: d0 b7 2c 20 d0 9a d0 be d0 bf d0 b8 d1 80 d0 be  .., ............
4560: d0 b2 d0 b0 d0 bd d0 b8 d0 b5 2c 20 d0 a0 d0 be  .........., ....
4570: d0 b4 d0 b8 d1 82 d0 b5 d0 bb d1 8c 29 7b 0d 0a  ............){..
4580: 0d 0a 20 20 20 20 4d 65 73 73 61 67 65 28 d0 a0  ..    Message(..
4590: d0 be d0 b4 d0 b8 d1 82 d0 b5 d0 bb d1 8c 2e d0  ................
45a0: 9d d0 b0 d0 b8 d0 bc d0 b5 d0 bd d0 be d0 b2 d0  ................
45b0: b0 d0 bd d0 b8 d0 b5 29 3b 0d 0a 20 20 20 20 69  .......);..    i
45c0: 66 20 28 21 d0 a0 d0 be d0 b4 d0 b8 d1 82 d0 b5  f (!............
45d0: d0 bb d1 8c 29 7b 0d 0a 20 20 20 20 20 20 20 20  ....){..        
45e0: d0 9e d1 82 d0 ba d0 b0 d0 b7 20 3d 20 74 72 75  .......... = tru
45f0: 65 3b 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75  e;..        retu
4600: 72 6e 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20  rn;..    }..    
4610: 0d 0a 20 20 20 20 2f 2f 69 66 20 28 d0 a0 d0 be  ..    //if (....
4620: d0 b4 d0 b8 d1 82 d0 b5 d0 bb d1 8c 2e d0 a3 d1  ................
4630: 80 d0 be d0 b2 d0 b5 d0 bd d1 8c 28 29 20 3e 20  ...........() > 
4640: 30 29 7b 0d 0a 20 20 20 20 2f 2f 20 20 20 20 d0  0){..    //    .
4650: 9e d1 82 d0 ba d0 b0 d0 b7 20 3d 20 74 72 75 65  ......... = true
4660: 3b 0d 0a 20 20 20 20 2f 2f 20 20 20 20 72 65 74  ;..    //    ret
4670: 75 72 6e 3b 0d 0a 20 20 20 20 2f 2f 7d 0d 0a 20  urn;..    //}.. 
4680: 20 20 20 0d 0a 20 20 20 20 69 66 20 28 d0 a0 d0     ..    if (...
4690: be d0 b4 d0 b8 d1 82 d0 b5 d0 bb d1 8c 2e d0 9d  ................
46a0: d0 b0 d0 b8 d0 bc d0 b5 d0 bd d0 be d0 b2 d0 b0  ................
46b0: d0 bd d0 b8 d0 b5 20 21 3d 20 72 48 61 6e 64 73  ...... != rHands
46c0: 2e d0 9d d0 b0 d0 b8 d0 bc d0 b5 d0 bd d0 be d0  ................
46d0: b2 d0 b0 d0 bd d0 b8 d0 b5 29 7b 0d 0a 20 20 20  .........){..   
46e0: 20 20 20 20 20 d0 9e d1 82 d0 ba d0 b0 d0 b7 20       .......... 
46f0: 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20  = true;..       
4700: 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 7d 0d   return;..    }.
4710: 0a 20 20 20 20 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63  .    ..}....func
4720: 74 69 6f 6e 20 d0 9f d0 b5 d1 80 d0 b5 d0 bc d0  tion ...........
4730: b5 d0 bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0  ................
4740: b0 d0 b4 d0 ba d0 b8 d0 9d d0 b0 d0 b7 d0 b2 d0  ................
4750: b0 d0 bd d0 b8 d0 b5 d0 9f d1 80 d0 b8 d0 98 d0  ................
4760: b7 d0 bc d0 b5 d0 bd d0 b5 d0 bd d0 b8 d0 b8 28  ...............(
4770: d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 29 20  ..............) 
4780: 7b 0d 0a 0d 0a 20 20 20 20 75 70 64 61 74 65 4f  {....    updateO
4790: 6e 65 45 78 70 72 65 73 73 69 6f 6e 28 66 6f 72  neExpression(for
47a0: 6d 2e d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82  m...............
47b0: d1 8b d0 a4 d0 be d1 80 d0 bc d1 8b 2e d0 9f d0  ................
47c0: b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0  ................
47d0: b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 2e  ................
47e0: d0 a2 d0 b5 d0 ba d1 83 d1 89 d0 b0 d1 8f d0 a1  ................
47f0: d1 82 d1 80 d0 be d0 ba d0 b0 2c 20 22 22 29 3b  .........., "");
4800: 0d 0a 20 20 20 20 0d 0a 7d 0d 0a 0d 0a 0d 0a 66  ..    ..}......f
4810: 75 6e 63 74 69 6f 6e 20 47 65 74 54 69 6d 65 72  unction GetTimer
4820: 45 78 70 72 65 73 73 69 6f 6e 55 70 64 61 74 65  ExpressionUpdate
4830: 72 28 29 7b 0d 0a 20 20 20 20 2f 2f 2f 2f 2f 2f  r(){..    //////
4840: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
4850: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
4860: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
4870: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
4880: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
4890: 2f 2f 0d 0a 2f 2f 2f 2f 7b 20 54 69 6d 65 72 45  //..////{ TimerE
48a0: 78 70 72 65 73 73 69 6f 6e 55 70 64 61 74 65 72  xpressionUpdater
48b0: 20 2d 20 d0 bf d0 b5 d1 80 d0 b5 d0 be d0 b4 d0   - .............
48c0: b8 d1 87 d0 b5 d1 81 d0 ba d0 b8 20 d0 be d0 b1  ........... ....
48d0: d0 bd d0 be d0 b2 d0 bb d1 8f d0 b5 d0 bc 20 d0  .............. .
48e0: b7 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d1 8f 20  ............... 
48f0: d0 bf d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd  ................
4900: d1 8b d1 85 0d 0a 2f 2f 2f 2f 0d 0a 0d 0a 54 69  ......////....Ti
4910: 6d 65 72 45 78 70 72 65 73 73 69 6f 6e 55 70 64  merExpressionUpd
4920: 61 74 65 72 20 3d 20 73 74 64 6c 69 62 2e 43 6c  ater = stdlib.Cl
4930: 61 73 73 2e 65 78 74 65 6e 64 28 7b 0d 0a 0d 0a  ass.extend({....
4940: 20 20 20 20 63 6f 6e 73 74 72 75 63 74 20 3a 20      construct : 
4950: 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20  function() {..  
4960: 20 20 20 20 20 20 74 68 69 73 2e 74 69 6d 65 72        this.timer
4970: 49 64 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20  Id = 0;..       
4980: 20 74 68 69 73 2e 73 74 6f 70 20 3d 20 66 61 6c   this.stop = fal
4990: 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69  se;..        thi
49a0: 73 2e 74 69 6d 65 6f 75 74 20 3d 20 31 30 30 3b  s.timeout = 100;
49b0: 0d 0a 20 20 20 20 20 20 20 20 2f 2f 74 68 69 73  ..        //this
49c0: 2e 73 74 61 72 74 57 61 74 63 68 28 29 3b 0d 0a  .startWatch();..
49d0: 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 75 70      },....    up
49e0: 64 61 74 65 54 69 6d 65 72 3a 20 66 75 6e 63 74  dateTimer: funct
49f0: 69 6f 6e 28 29 7b 0d 0a 20 20 20 20 20 20 20 20  ion(){..        
4a00: 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 74 68 69  logger.debug(thi
4a10: 73 2e 6e 61 6d 65 29 3b 0d 0a 20 20 20 20 20 20  s.name);..      
4a20: 20 20 74 68 69 73 2e 73 74 6f 70 57 61 74 63 68    this.stopWatch
4a30: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69  ();..        thi
4a40: 73 2e 73 74 61 72 74 57 61 74 63 68 28 29 0d 0a  s.startWatch()..
4a50: 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 73 74      },....    st
4a60: 61 72 74 57 61 74 63 68 20 3a 20 66 75 6e 63 74  artWatch : funct
4a70: 69 6f 6e 20 28 29 20 7b 0d 0a 20 20 20 20 20 20  ion () {..      
4a80: 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 74    logger.debug(t
4a90: 68 69 73 2e 6e 61 6d 65 20 2b 20 22 20 22 2b 20  his.name + " "+ 
4aa0: 74 68 69 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72  this.constructor
4ab0: 2e 6e 61 6d 65 29 3b 0d 0a 0d 0a 20 20 20 20 20  .name);....     
4ac0: 20 20 20 69 66 20 28 74 68 69 73 2e 74 69 6d 65     if (this.time
4ad0: 72 49 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20  rId)..          
4ae0: 20 20 74 68 69 73 2e 73 74 6f 70 57 61 74 63 68    this.stopWatch
4af0: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20  ();..        .. 
4b00: 20 20 20 20 20 20 20 69 66 20 28 74 68 69 73 2e         if (this.
4b10: 73 74 6f 70 29 7b 0d 0a 20 20 20 20 20 20 20 20  stop){..        
4b20: 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67      logger.debug
4b30: 28 22 d0 a2 d0 b0 d0 b9 d0 bc d0 b5 d1 80 20 d0  ("............ .
4b40: be d1 82 d0 ba d0 bb d1 8e d1 87 d0 b5 d0 bd 20  ............... 
4b50: 22 2b 74 68 69 73 2e 73 74 6f 70 29 3b 0d 0a 20  "+this.stop);.. 
4b60: 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72             retur
4b70: 6e 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d  n;..        }...
4b80: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 74 69  .        this.ti
4b90: 6d 65 72 49 64 20 3d 20 63 72 65 61 74 65 54 69  merId = createTi
4ba0: 6d 65 72 28 74 68 69 73 2e 74 69 6d 65 6f 75 74  mer(this.timeout
4bb0: 2c 20 74 68 69 73 2c 20 27 6f 6e 54 69 6d 65 72  , this, 'onTimer
4bc0: 27 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20  ');..    },.... 
4bd0: 20 20 20 73 74 6f 70 57 61 74 63 68 20 3a 20 66     stopWatch : f
4be0: 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0d 0a 20 20  unction () {..  
4bf0: 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73 2e        if (!this.
4c00: 74 69 6d 65 72 49 64 29 0d 0a 20 20 20 20 20 20  timerId)..      
4c10: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20        return;.. 
4c20: 20 20 20 20 20 20 20 6b 69 6c 6c 54 69 6d 65 72         killTimer
4c30: 28 74 68 69 73 2e 74 69 6d 65 72 49 64 29 3b 0d  (this.timerId);.
4c40: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 74 69  .        this.ti
4c50: 6d 65 72 49 64 20 3d 20 30 3b 0d 0a 20 20 20 20  merId = 0;..    
4c60: 7d 2c 0d 0a 0d 0a 20 20 20 20 6f 6e 54 69 6d 65  },....    onTime
4c70: 72 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 74 69  r : function (ti
4c80: 6d 65 72 49 64 29 20 7b 0d 0a 20 20 20 20 20 20  merId) {..      
4c90: 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73    ..        this
4ca0: 2e 73 74 6f 70 57 61 74 63 68 28 29 3b 0d 0a 20  .stopWatch();.. 
4cb0: 20 20 20 20 20 20 20 69 66 28 21 69 73 44 65 62         if(!isDeb
4cc0: 75 67 45 76 61 6c 45 6e 61 62 6c 65 64 28 29 29  ugEvalEnabled())
4cd0: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72  {..            r
4ce0: 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20  eturn;..        
4cf0: 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 69 66 28  }....        if(
4d00: 21 66 6f 72 6d 2e d0 9e d1 82 d0 ba d1 80 d1 8b  !form...........
4d10: d1 82 d0 b0 28 29 29 7b 0d 0a 20 20 20 20 20 20  ....()){..      
4d20: 20 20 20 20 20 20 74 68 69 73 2e 73 74 6f 70 57        this.stopW
4d30: 61 74 63 68 28 29 3b 0d 0a 20 20 20 20 20 20 20  atch();..       
4d40: 20 20 20 20 20 72 65 74 75 72 6e 0d 0a 20 20 20       return..   
4d50: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
4d60: 74 72 79 20 7b 0d 0a 20 20 20 20 20 20 20 20 75  try {..        u
4d70: 70 64 61 74 65 52 6f 77 73 28 72 4d 6f 64 75 6c  pdateRows(rModul
4d80: 65 29 0d 0a 20 20 20 20 20 20 20 20 75 70 64 61  e)..        upda
4d90: 74 65 52 6f 77 73 28 72 50 61 72 61 6d 73 29 0d  teRows(rParams).
4da0: 0a 20 20 20 20 20 20 20 20 75 70 64 61 74 65 52  .        updateR
4db0: 6f 77 73 28 72 4c 6f 63 61 6c 29 0d 0a 20 20 20  ows(rLocal)..   
4dc0: 20 20 20 20 20 75 70 64 61 74 65 52 6f 77 73 28       updateRows(
4dd0: 72 48 61 6e 64 73 29 3b 0d 0a 20 20 20 20 20 20  rHands);..      
4de0: 20 20 0d 0a 20 20 20 20 20 20 20 20 7d 20 63 61    ..        } ca
4df0: 74 63 68 20 28 65 29 20 7b 0d 0a 20 20 20 20 20  tch (e) {..     
4e00: 20 20 20 20 20 20 20 20 2f 2f 20 d0 92 d1 81 d0          // .....
4e10: b5 20 d0 be d1 88 d0 b8 d0 b1 d0 ba d0 b8 20 d0  . ............ .
4e20: b1 d1 83 d0 b4 d0 b5 d0 bc 20 d0 b3 d0 b0 d1 81  ......... ......
4e30: d0 b8 d1 82 d1 8c 0d 0a 20 20 20 20 20 20 20 20  ........        
4e40: 7d 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 0d 0a  }..    }..    ..
4e50: 7d 29 3b 20 2f 2f 20 65 6e 64 20 6f 66 20 54 69  }); // end of Ti
4e60: 6d 65 72 45 78 70 72 65 73 73 69 6f 6e 55 70 64  merExpressionUpd
4e70: 61 74 65 72 20 63 6c 61 73 73 0d 0a 0d 0a 20 20  ater class....  
4e80: 20 20 72 65 74 75 72 6e 20 6e 65 77 20 54 69 6d    return new Tim
4e90: 65 72 45 78 70 72 65 73 73 69 6f 6e 55 70 64 61  erExpressionUpda
4ea0: 74 65 72 28 29 3b 0d 0a 7d 0d 0a 0d 0a           ter();..}....