@yuneta/gobj-js 7.16.4 → 7.16.6

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.
@@ -19,12 +19,12 @@ var gobjJs = function(e) {
19
19
  };
20
20
  function n(e) {
21
21
  return function(e, r) {
22
- var o, l, i, s, _, a, u, c, f, g = 1, d = e.length, b = "";
23
- for (l = 0; l < d; l++) if ("string" == typeof e[l]) b += e[l];
24
- else if ("object" == typeof e[l]) {
25
- if ((s = e[l]).keys) for (o = r[g], i = 0; i < s.keys.length; i++) {
26
- if (null == o) throw new Error(n("[sprintf] Cannot access property \"%s\" of undefined value \"%s\"", s.keys[i], s.keys[i - 1]));
27
- o = o[s.keys[i]];
22
+ var o, i, l, s, _, a, u, c, f, g = 1, d = e.length, b = "";
23
+ for (i = 0; i < d; i++) if ("string" == typeof e[i]) b += e[i];
24
+ else if ("object" == typeof e[i]) {
25
+ if ((s = e[i]).keys) for (o = r[g], l = 0; l < s.keys.length; l++) {
26
+ if (null == o) throw new Error(n("[sprintf] Cannot access property \"%s\" of undefined value \"%s\"", s.keys[l], s.keys[l - 1]));
27
+ o = o[s.keys[l]];
28
28
  }
29
29
  else o = s.param_no ? r[s.param_no] : r[g++];
30
30
  if (t.not_type.test(s.type) && t.not_primitive.test(s.type) && o instanceof Function && (o = o()), t.numeric_arg.test(s.type) && "number" != typeof o && isNaN(o)) throw new TypeError(n("[sprintf] expecting number but found %T", o));
@@ -79,14 +79,14 @@ var gobjJs = function(e) {
79
79
  return b;
80
80
  }(function(e) {
81
81
  if (r[e]) return r[e];
82
- let n, o = e, l = [], i = 0;
82
+ let n, o = e, i = [], l = 0;
83
83
  for (; o;) {
84
- if (null !== (n = t.text.exec(o))) l.push(n[0]);
85
- else if (null !== (n = t.modulo.exec(o))) l.push("%");
84
+ if (null !== (n = t.text.exec(o))) i.push(n[0]);
85
+ else if (null !== (n = t.modulo.exec(o))) i.push("%");
86
86
  else {
87
87
  if (null === (n = t.placeholder.exec(o))) throw new SyntaxError("[sprintf] unexpected placeholder");
88
88
  if (n[2]) {
89
- i |= 1;
89
+ l |= 1;
90
90
  var s = [], _ = n[2], a = [];
91
91
  if (null === (a = t.key.exec(_))) throw new SyntaxError("[sprintf] failed to parse named argument key");
92
92
  for (s.push(a[1]); "" !== (_ = _.substring(a[0].length));) if (null !== (a = t.key_access.exec(_))) s.push(a[1]);
@@ -95,9 +95,9 @@ var gobjJs = function(e) {
95
95
  s.push(a[1]);
96
96
  }
97
97
  n[2] = s;
98
- } else i |= 2;
99
- if (3 === i) throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");
100
- l.push({
98
+ } else l |= 2;
99
+ if (3 === l) throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");
100
+ i.push({
101
101
  placeholder: n[0],
102
102
  param_no: n[1],
103
103
  keys: n[2],
@@ -111,7 +111,7 @@ var gobjJs = function(e) {
111
111
  }
112
112
  o = o.substring(n[0].length);
113
113
  }
114
- return r[e] = l;
114
+ return r[e] = i;
115
115
  }(e), arguments);
116
116
  }
117
117
  var r = Object.create(null);
@@ -123,7 +123,7 @@ var gobjJs = function(e) {
123
123
  data: o || []
124
124
  };
125
125
  }
126
- function l(e, t, n, r, o) {
126
+ function i(e, t, n, r, o) {
127
127
  return {
128
128
  result: t,
129
129
  comment: n || {},
@@ -131,7 +131,7 @@ var gobjJs = function(e) {
131
131
  data: o || []
132
132
  };
133
133
  }
134
- var i = "7.0.0a", s = null, _ = null, a = null, u = null, c = null, f = null, g = [], d = Object.create(null), b = {}, p = null, m = null, E = 0, T = Object.freeze({
134
+ var l = "7.0.0a", s = null, _ = null, a = null, u = null, c = null, f = null, g = [], d = Object.create(null), b = {}, p = null, m = null, E = 0, T = Object.freeze({
135
135
  DTP_STRING: 1,
136
136
  DTP_BOOLEAN: 2,
137
137
  DTP_INTEGER: 3,
@@ -167,12 +167,12 @@ var gobjJs = function(e) {
167
167
  });
168
168
  h.SDF_RD, h.SDF_WR, h.SDF_STATS, h.SDF_PERSIST, h.SDF_VOLATIL, h.SDF_RSTATS, h.SDF_PSTATS, h.SDF_WR, h.SDF_PERSIST;
169
169
  var y = class {
170
- constructor(e, t, n = 0, r = null, o = "", l = null, i = null, s = 0, _ = null, a = null, u = null) {
171
- this.type = e, this.name = t, this.alias = l, this.flag = n, this.default_value = r, this.header = i, this.fillspace = s, this.description = o, this.json_fn = _, this.schema = a, this.authpth = u;
170
+ constructor(e, t, n = 0, r = null, o = "", i = null, l = null, s = 0, _ = null, a = null, u = null) {
171
+ this.type = e, this.name = t, this.alias = i, this.flag = n, this.default_value = r, this.header = l, this.fillspace = s, this.description = o, this.json_fn = _, this.schema = a, this.authpth = u;
172
172
  }
173
173
  }, j = () => new y(0, null), v = (e, t, n, r, o) => new y(e, t, n, r, o), S = class {
174
- constructor(e, t, n, r, o, l, i, s, _) {
175
- this.gclass_name = e, this.dl_states = [], this.dl_events = [], this.gmt = t, this.lmt = n, this.attrs_table = r, this.priv = o, this.authz_table = l, this.command_table = i, this.s_user_trace_level = s, this.gclass_flag = Number(_) || 0, this.instances = 0, this.trace_level = 0, this.no_trace_level = 0, this.jn_trace_filter = null, this.fsm_checked = !1;
174
+ constructor(e, t, n, r, o, i, l, s, _) {
175
+ this.gclass_name = e, this.dl_states = [], this.dl_events = [], this.gmt = t, this.lmt = n, this.attrs_table = r, this.priv = o, this.authz_table = i, this.command_table = l, this.s_user_trace_level = s, this.gclass_flag = Number(_) || 0, this.instances = 0, this.trace_level = 0, this.no_trace_level = 0, this.jn_trace_filter = null, this.fsm_checked = !1;
176
176
  }
177
177
  }, O = class {
178
178
  constructor(e, t, n, r, o) {
@@ -326,7 +326,7 @@ var gobjJs = function(e) {
326
326
  return function(e) {
327
327
  for (const [t, n] of U) if (t === e) return n;
328
328
  return 0;
329
- }(String(e)) || (Ht(`${t}: trace level NOT FOUND: ${e}`), 0);
329
+ }(String(e)) || (qt(`${t}: trace level NOT FOUND: ${e}`), 0);
330
330
  }
331
331
  function W(e) {
332
332
  if (V) return 4294967295;
@@ -341,10 +341,10 @@ var gobjJs = function(e) {
341
341
  if (!p || !p.jn_attrs) return 0;
342
342
  let e = 0;
343
343
  if (ot(p, "tracing")) {
344
- const t = Number(lt(p, "tracing")) || 0;
344
+ const t = Number(it(p, "tracing")) || 0;
345
345
  t >= 1 && (e |= P.TRACE_MACHINE), t >= 2 && (e |= P.TRACE_EV_KW);
346
346
  }
347
- return ot(p, "trace_timer") && lt(p, "trace_timer") && (e |= P.TRACE_TIMER), ot(p, "trace_creation") && lt(p, "trace_creation") && (e |= P.TRACE_CREATE_DELETE), ot(p, "trace_start_stop") && lt(p, "trace_start_stop") && (e |= P.TRACE_START_STOP), e;
347
+ return ot(p, "trace_timer") && it(p, "trace_timer") && (e |= P.TRACE_TIMER), ot(p, "trace_creation") && it(p, "trace_creation") && (e |= P.TRACE_CREATE_DELETE), ot(p, "trace_start_stop") && it(p, "trace_start_stop") && (e |= P.TRACE_START_STOP), e;
348
348
  }
349
349
  function Y(e) {
350
350
  return (W(e) | x()) & P.TRACE_CREATE_DELETE;
@@ -358,15 +358,15 @@ var gobjJs = function(e) {
358
358
  const n = W(e) | x();
359
359
  return !!(n & P.TRACE_MACHINE || n & P.TRACE_TIMER_PERIODIC && "EV_TIMEOUT_PERIODIC" === t || n & P.TRACE_TIMER && "EV_TIMEOUT" === t);
360
360
  }
361
- function q(e, t) {
361
+ function H(e, t) {
362
362
  if (V > 1) return !1;
363
363
  if (!e) return !0;
364
364
  const n = K(e);
365
365
  return !!(n & P.TRACE_MACHINE || n & P.TRACE_TIMER_PERIODIC && "EV_TIMEOUT_PERIODIC" === t || n & P.TRACE_TIMER && "EV_TIMEOUT" === t);
366
366
  }
367
- function H(e, t) {
367
+ function q(e, t) {
368
368
  let n = {};
369
- if (!mn(t)) return Ht("sdata_desc MUST be an array"), Zt(t), n;
369
+ if (!mn(t)) return qt("sdata_desc MUST be an array"), Zt(t), n;
370
370
  for (let r = 0; r < t.length; r++) {
371
371
  const o = t[r];
372
372
  o.name && z(e, n, o);
@@ -383,16 +383,16 @@ var gobjJs = function(e) {
383
383
  r = On(o);
384
384
  break;
385
385
  case T.DTP_INTEGER:
386
- r = parseInt(o), isNaN(r) && Ht(`${Ve(e)}: attr NaN: ${n.name}`);
386
+ r = parseInt(o), isNaN(r) && qt(`${Ve(e)}: attr NaN: ${n.name}`);
387
387
  break;
388
388
  case T.DTP_REAL:
389
- r = Number(o), isNaN(r) && Ht(`${Ve(e)}: attr NaN: ${n.name}`);
389
+ r = Number(o), isNaN(r) && qt(`${Ve(e)}: attr NaN: ${n.name}`);
390
390
  break;
391
391
  case T.DTP_LIST:
392
392
  if (En(o)) try {
393
393
  r = JSON.parse(o);
394
394
  } catch (e) {
395
- Ht(`JSON parse error: ${e.message}`);
395
+ qt(`JSON parse error: ${e.message}`);
396
396
  }
397
397
  else r = o;
398
398
  mn(r) || (r = []);
@@ -401,7 +401,7 @@ var gobjJs = function(e) {
401
401
  if (En(o)) try {
402
402
  r = JSON.parse(o);
403
403
  } catch (e) {
404
- Ht(`JSON parse error: ${e.message}`);
404
+ qt(`JSON parse error: ${e.message}`);
405
405
  }
406
406
  else r = o;
407
407
  pn(r) || (r = {});
@@ -410,13 +410,13 @@ var gobjJs = function(e) {
410
410
  if (En(o)) try {
411
411
  r = JSON.parse(o);
412
412
  } catch (e) {
413
- Ht(`JSON parse error: ${e.message}`);
413
+ qt(`JSON parse error: ${e.message}`);
414
414
  }
415
415
  else r = o;
416
416
  break;
417
417
  case T.DTP_POINTER: r = o;
418
418
  }
419
- return void 0 === r && (Ht(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
419
+ return void 0 === r && (qt(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
420
420
  }
421
421
  function Q(e, t, n, r) {
422
422
  let o;
@@ -433,80 +433,80 @@ var gobjJs = function(e) {
433
433
  o = On(r);
434
434
  break;
435
435
  case T.DTP_INTEGER:
436
- o = parseInt(r), isNaN(o) && Ht(`${Ve(e)}: attr NaN: ${n.name}`);
436
+ o = parseInt(r), isNaN(o) && qt(`${Ve(e)}: attr NaN: ${n.name}`);
437
437
  break;
438
438
  case T.DTP_REAL:
439
- o = Number(r), isNaN(o) && Ht(`${Ve(e)}: attr NaN: ${n.name}`);
439
+ o = Number(r), isNaN(o) && qt(`${Ve(e)}: attr NaN: ${n.name}`);
440
440
  break;
441
441
  case T.DTP_LIST:
442
442
  if (En(r)) try {
443
443
  o = JSON.parse(r);
444
444
  } catch (e) {
445
- Ht(`JSON parse error: ${e.message}`);
445
+ qt(`JSON parse error: ${e.message}`);
446
446
  }
447
447
  else o = r;
448
- if (!mn(o)) return Ht(`attr must be an array: ${n.name}`), -1;
448
+ if (!mn(o)) return qt(`attr must be an array: ${n.name}`), -1;
449
449
  break;
450
450
  case T.DTP_DICT:
451
451
  if (En(r)) try {
452
452
  o = JSON.parse(r);
453
453
  } catch (e) {
454
- Ht(`JSON parse error: ${e.message}`);
454
+ qt(`JSON parse error: ${e.message}`);
455
455
  }
456
456
  else o = r;
457
- if (!pn(o)) return Ht(`attr must be an object: ${n.name}`), -1;
457
+ if (!pn(o)) return qt(`attr must be an object: ${n.name}`), -1;
458
458
  break;
459
459
  case T.DTP_JSON:
460
460
  if (En(r)) try {
461
461
  o = JSON.parse(r);
462
462
  } catch (e) {
463
- Ht(`JSON parse error: ${e.message}`);
463
+ qt(`JSON parse error: ${e.message}`);
464
464
  }
465
465
  else o = r;
466
- if (!mn(o) && !pn(o)) return Ht(`attr must be a json dict/list: ${n.name}`), -1;
466
+ if (!mn(o) && !pn(o)) return qt(`attr must be a json dict/list: ${n.name}`), -1;
467
467
  break;
468
468
  case T.DTP_POINTER: o = r;
469
469
  }
470
- return void 0 === o && Ht(`${Ve(e)}: attr undefined: ${n.name}`), t[n.name] = o, pn(e.priv) && e.priv.hasOwnProperty(n.name) && (e.priv[n.name] = o), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
470
+ return void 0 === o && qt(`${Ve(e)}: attr undefined: ${n.name}`), t[n.name] = o, pn(e.priv) && e.priv.hasOwnProperty(n.name) && (e.priv[n.name] = o), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
471
471
  }
472
472
  function X(e) {
473
473
  return e.jn_attrs;
474
474
  }
475
475
  function Z(e, t, n) {
476
- return ot(e, t) ? X(e) : e && e.bottom_gobj ? Z(e.bottom_gobj, t, n) : (n && Ht(`GClass Attribute NOT FOUND: ${Ve(e)}, attr ${t}`), null);
476
+ return ot(e, t) ? X(e) : e && e.bottom_gobj ? Z(e.bottom_gobj, t, n) : (n && qt(`GClass Attribute NOT FOUND: ${Ve(e)}, attr ${t}`), null);
477
477
  }
478
478
  function ee(e, t, n) {
479
- if (!(e && e instanceof S)) return n && Ht("gclass NULL"), null;
479
+ if (!(e && e instanceof S)) return n && qt("gclass NULL"), null;
480
480
  if (!t) return e.attrs_table;
481
481
  for (let n = 0; n < e.attrs_table.length; n++) {
482
482
  const r = e.attrs_table[n];
483
483
  if (r.name && r.name === t) return r;
484
484
  }
485
- return n && Ht(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
485
+ return n && qt(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
486
486
  }
487
- function te(e, t, n, r, o, l, i, s, _, a, u) {
488
- if (Sn(e)) return Ht("gclass_name EMPTY"), null;
489
- if (e.includes("`") || e.includes("^") || e.includes(".")) return Ht(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
490
- if (ce(e)) return Ht(`GClass ALREADY exists: ${e}`), null;
491
- let c = new S(e, r, o, l, i, s, _, a, u);
487
+ function te(e, t, n, r, o, i, l, s, _, a, u) {
488
+ if (Sn(e)) return qt("gclass_name EMPTY"), null;
489
+ if (e.includes("`") || e.includes("^") || e.includes(".")) return qt(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
490
+ if (ce(e)) return qt(`GClass ALREADY exists: ${e}`), null;
491
+ let c = new S(e, r, o, i, l, s, _, a, u);
492
492
  (function(e, t) {
493
- e && e instanceof S ? t ? d[t] ? Ht(`gclass ALREADY REGISTERED: ${t}`) : d[t] = e : Ht("gclass_name undefined") : Ht("gclass undefined");
493
+ e && e instanceof S ? t ? d[t] ? qt(`gclass ALREADY REGISTERED: ${t}`) : d[t] = e : qt("gclass_name undefined") : qt("gclass undefined");
494
494
  })(c, e);
495
495
  const f = n.length;
496
496
  for (let e = 0; e < f; e++) {
497
497
  let t = n[e][0], r = n[e][1];
498
498
  if (Sn(t)) continue;
499
- if (le(c, t) < 0) return ne(c), null;
499
+ if (ie(c, t) < 0) return ne(c), null;
500
500
  const o = r.length;
501
501
  for (let e = 0; e < o; e++) {
502
- let n = r[e][0], o = r[e][1], l = r[e][2];
503
- Sn(n) || ie(c, t, n, o, l);
502
+ let n = r[e][0], o = r[e][1], i = r[e][2];
503
+ Sn(n) || le(c, t, n, o, i);
504
504
  }
505
505
  }
506
506
  for (let e = 0; e < t.length; e++) {
507
507
  let n = t[e][0], r = t[e][1];
508
508
  if (!Sn(n)) {
509
- if (ae(c, n)) return Ht(`SMachine: event repeated in input_events: ${n}`), ne(c), null;
509
+ if (ae(c, n)) return qt(`SMachine: event repeated in input_events: ${n}`), ne(c), null;
510
510
  _e(c, n, r);
511
511
  }
512
512
  }
@@ -520,11 +520,11 @@ var gobjJs = function(e) {
520
520
  let t;
521
521
  if (En(e)) t = e;
522
522
  else {
523
- if (!(e instanceof S)) return Ht("Cannot unregister gclass, type unknown"), -1;
523
+ if (!(e instanceof S)) return qt("Cannot unregister gclass, type unknown"), -1;
524
524
  t = e.gclass_name;
525
525
  }
526
526
  let n = d[t];
527
- return n ? n.instances > 0 ? (Ht(`Cannot unregister gclass, instances in use: ${t}`), -1) : (delete d[t], 0) : (Ht(`Cannot unregister gclass, not found: ${t}`), -1);
527
+ return n ? n.instances > 0 ? (qt(`Cannot unregister gclass, instances in use: ${t}`), -1) : (delete d[t], 0) : (qt(`Cannot unregister gclass, not found: ${t}`), -1);
528
528
  }
529
529
  function re(e, t) {
530
530
  const n = e.dl_states.length, r = e.dl_states;
@@ -542,23 +542,23 @@ var gobjJs = function(e) {
542
542
  }
543
543
  return null;
544
544
  }
545
- function le(e, t) {
546
- return e instanceof S ? re(e, t) ? (Ht(`state already exists: ${t}`), -1) : (e.dl_states.push(new I(t)), 0) : (Ht("Cannot add state, typeof not GClass"), -1);
545
+ function ie(e, t) {
546
+ return e instanceof S ? re(e, t) ? (qt(`state already exists: ${t}`), -1) : (e.dl_states.push(new I(t)), 0) : (qt("Cannot add state, typeof not GClass"), -1);
547
547
  }
548
- function ie(e, t, n, r, o) {
549
- if (!(e instanceof S)) return Ht("Cannot add state, typeof not GClass"), -1;
550
- if (Sn(t)) return Ht("state_name EMPTY"), -1;
551
- let l = re(e, t);
552
- return l ? oe(l, n) ? (Ht(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (l.dl_actions.push(new k(n, r, o)), 0) : (Ht(`state not found: ${t}`), -1);
548
+ function le(e, t, n, r, o) {
549
+ if (!(e instanceof S)) return qt("Cannot add state, typeof not GClass"), -1;
550
+ if (Sn(t)) return qt("state_name EMPTY"), -1;
551
+ let i = re(e, t);
552
+ return i ? oe(i, n) ? (qt(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (i.dl_actions.push(new k(n, r, o)), 0) : (qt(`state not found: ${t}`), -1);
553
553
  }
554
554
  function se(e, t, n) {
555
555
  Sn(t) || e.push(new $(t, n));
556
556
  }
557
557
  function _e(e, t, n) {
558
- return e instanceof S ? se(e.dl_events, t, n) : (Ht("Cannot add state, typeof not GClass"), -1);
558
+ return e instanceof S ? se(e.dl_events, t, n) : (qt("Cannot add state, typeof not GClass"), -1);
559
559
  }
560
560
  function ae(e, t) {
561
- if (!(e instanceof S)) return Ht("Cannot add state, typeof not GClass"), 0;
561
+ if (!(e instanceof S)) return qt("Cannot add state, typeof not GClass"), 0;
562
562
  const n = e.dl_events.length, r = e.dl_events;
563
563
  for (let e = 0; e < n; e++) {
564
564
  let n = r[e];
@@ -567,25 +567,25 @@ var gobjJs = function(e) {
567
567
  return null;
568
568
  }
569
569
  function ue(e) {
570
- if (!(e instanceof S)) return Ht("Cannot add state, typeof not GClass"), -1;
570
+ if (!(e instanceof S)) return qt("Cannot add state, typeof not GClass"), -1;
571
571
  let t = 0;
572
- dn(e.dl_states) || (Ht(`GClass without states: ${e.gclass_name}`), t += -1);
572
+ dn(e.dl_states) || (qt(`GClass without states: ${e.gclass_name}`), t += -1);
573
573
  for (let n = 0; n < e.dl_states.length; n++) {
574
574
  let r = e.dl_states[n];
575
575
  if (!Sn(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
576
576
  let o = r.dl_actions[n];
577
- Sn(o.event_name) || (ae(e, o.event_name) || (Ht(`SMachine: state's event NOT in input_events: gclass ${e.gclass_name}, state ${r.state_name}, event ${o.event_name}`), t += -1), o.next_state && (re(e, o.next_state) || (Ht(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${o.next_state}`), t += -1)));
577
+ Sn(o.event_name) || (ae(e, o.event_name) || (qt(`SMachine: state's event NOT in input_events: gclass ${e.gclass_name}, state ${r.state_name}, event ${o.event_name}`), t += -1), o.next_state && (re(e, o.next_state) || (qt(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${o.next_state}`), t += -1)));
578
578
  }
579
579
  }
580
580
  for (let n = 0; n < e.dl_events.length; n++) {
581
581
  let r = e.dl_events[n];
582
- if (!Sn(r.event_name) && (Tn(r.event_flag) || (Ht(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & D.EVF_OUTPUT_EVENT))) {
582
+ if (!Sn(r.event_name) && (Tn(r.event_flag) || (qt(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & D.EVF_OUTPUT_EVENT))) {
583
583
  let n = !1;
584
584
  for (let t = 0; t < e.dl_states.length; t++) {
585
585
  let o = e.dl_states[t];
586
586
  Sn(o.state_name) || oe(o, r.event_name) && (n = !0);
587
587
  }
588
- n || (Ht(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
588
+ n || (qt(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
589
589
  }
590
590
  }
591
591
  return t;
@@ -595,75 +595,75 @@ var gobjJs = function(e) {
595
595
  try {
596
596
  n = d[e];
597
597
  } catch (e) {}
598
- return n || (t && Ht(`gclass not found: ${e}`), null);
598
+ return n || (t && qt(`gclass not found: ${e}`), null);
599
599
  }
600
600
  function fe() {
601
601
  return !m || m.obflag & R.obflag_destroyed ? null : m;
602
602
  }
603
603
  function ge(e, t) {
604
604
  e = e.toLowerCase();
605
- return b[e] || (t && Ht(`gobj service not found: ${e}`), null);
605
+ return b[e] || (t && qt(`gobj service not found: ${e}`), null);
606
606
  }
607
607
  function de(e) {
608
608
  let t = Fe(e);
609
- return t = t.toLowerCase(), b[t] && Ht(`service ALREADY REGISTERED: ${t}. Will be UPDATED`), b[t] = e, 0;
609
+ return t = t.toLowerCase(), b[t] && qt(`service ALREADY REGISTERED: ${t}. Will be UPDATED`), b[t] = e, 0;
610
610
  }
611
611
  function be(e, t) {
612
- t.parent && Ht(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
612
+ t.parent && qt(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
613
613
  }
614
614
  function pe(e, t) {
615
615
  let n = ur(e.dl_children, t);
616
616
  n >= 0 && (fn(e.dl_children, n), t.parent = null);
617
617
  }
618
618
  function me(e, t) {
619
- "__json_config_variables__" !== t && Ht(`GClass Attribute NOT FOUND: ${Ve(e)}, attr ${t}`);
619
+ "__json_config_variables__" !== t && qt(`GClass Attribute NOT FOUND: ${Ve(e)}, attr ${t}`);
620
620
  }
621
621
  function Ee(e, t, n) {
622
622
  let r = t;
623
623
  (function(e, t, n, r, o) {
624
- if (!e || !t) return Ht("hsdata or kw NULL"), -1;
625
- let l = 0;
626
- for (const [i, s] of Object.entries(t)) {
627
- const t = ee(o.gclass, i, !1);
628
- t ? (-1 === n || t.flag & n) && (t.flag & h.SDF_DEPRECATED && zt(`${Ve(o)}: Deprecated attribute used in gobj creation: ${i}`), l += Q(o, e, t, s)) : r && (r(o, i), l--);
624
+ if (!e || !t) return qt("hsdata or kw NULL"), -1;
625
+ let i = 0;
626
+ for (const [l, s] of Object.entries(t)) {
627
+ const t = ee(o.gclass, l, !1);
628
+ t ? (-1 === n || t.flag & n) && (t.flag & h.SDF_DEPRECATED && zt(`${Ve(o)}: Deprecated attribute used in gobj creation: ${l}`), i += Q(o, e, t, s)) : r && (r(o, l), i--);
629
629
  }
630
- return l;
631
- })(X(e), r, -1, e.gclass.gclass_flag & N.gcflag_ignore_unknown_attrs ? 0 : me, e) < 0 && (Ht(`${Ve(e)} json2data() FAILED`), Zt(r));
630
+ return i;
631
+ })(X(e), r, -1, e.gclass.gclass_flag & N.gcflag_ignore_unknown_attrs ? 0 : me, e) < 0 && (qt(`${Ve(e)} json2data() FAILED`), Zt(r));
632
632
  }
633
- function Te(e, t, r, o, l) {
634
- if (l & w.gobj_flag_yuno) {
635
- if (p) return Ht("__yuno__ already created"), null;
636
- l |= w.gobj_flag_service;
633
+ function Te(e, t, r, o, i) {
634
+ if (i & w.gobj_flag_yuno) {
635
+ if (p) return qt("__yuno__ already created"), null;
636
+ i |= w.gobj_flag_service;
637
637
  } else {
638
- if (!o) return Ht("gobj NEEDS a parent!"), null;
639
- if (!("string" == typeof o || o instanceof O)) return Ht(`BAD TYPE of parent: ${o}`), null;
638
+ if (!o) return qt("gobj NEEDS a parent!"), null;
639
+ if (!("string" == typeof o || o instanceof O)) return qt(`BAD TYPE of parent: ${o}`), null;
640
640
  if (En(o) && !(o = ge(o))) return zt(`parent service not found: ${o}`), null;
641
641
  }
642
- if (l & w.gobj_flag_service && ge(e, !1)) return Ht(`service ALREADY registered: ${t}^${e}`), null;
643
- if (l & w.gobj_flag_default_service) {
644
- if (m) return Ht(`default service ALREADY registered: ${t}^${e}`), null;
645
- l |= w.gobj_flag_service;
642
+ if (i & w.gobj_flag_service && ge(e, !1)) return qt(`service ALREADY registered: ${t}^${e}`), null;
643
+ if (i & w.gobj_flag_default_service) {
644
+ if (m) return qt(`default service ALREADY registered: ${t}^${e}`), null;
645
+ i |= w.gobj_flag_service;
646
646
  }
647
- if (Sn(t)) return Ht("gclass_name must be a string"), null;
648
- let i = ce(t, !1);
649
- if (!i) return Ht(`GClass not registered: ${t}^${e}`), null;
650
- if (!En(e)) return Ht(`gobj_name must be a string: ${t}`), null;
647
+ if (Sn(t)) return qt("gclass_name must be a string"), null;
648
+ let l = ce(t, !1);
649
+ if (!l) return qt(`GClass not registered: ${t}^${e}`), null;
650
+ if (!En(e)) return qt(`gobj_name must be a string: ${t}`), null;
651
651
  if (!Sn(e)) {
652
- if (e.includes("`")) return Ht(`gobj_name cannot contain char ': ${t}^${e}`), null;
653
- if (e.includes("^")) return Ht(`gobj_name cannot contain char ^: ${t}^${e}`), null;
652
+ if (e.includes("`")) return qt(`gobj_name cannot contain char ': ${t}^${e}`), null;
653
+ if (e.includes("^")) return qt(`gobj_name cannot contain char ^: ${t}^${e}`), null;
654
654
  }
655
- let _ = new O(e, i, r, o, l);
656
- _.jn_attrs = H(_, i.attrs_table);
655
+ let _ = new O(e, l, r, o, i);
656
+ _.jn_attrs = q(_, l.attrs_table);
657
657
  for (const [e, t] of Object.entries(_.jn_attrs)) e in _.priv && (_.priv[e] = t);
658
658
  let a = Y(_);
659
- return a && L(n("💙💙⏩ creating: %s^%s", i.gclass_name, e)), _.gobj_flag & w.gobj_flag_service && de(_), _.gobj_flag & w.gobj_flag_yuno && (p = _), _.gobj_flag & w.gobj_flag_default_service && (m = _), _.gobj_flag & w.gobj_flag_yuno || be(o, _), _.obflag |= R.obflag_created, _.gclass.instances++, Ee(_, r), _.gobj_flag & w.gobj_flag_service && s && s(_, null), _.gclass.gmt.mt_create2 ? _.gclass.gmt.mt_create2(_, r) : _.gclass.gmt.mt_create && _.gclass.gmt.mt_create(_), o && o.gclass.gmt.mt_child_added && (a && L(n("👦👦🔵 child_added(%s): %s", Me(o), Ve(_))), o.gclass.gmt.mt_child_added(o, _)), a && L(n("💙💙⏪ created: %s", Me(_))), _;
659
+ return a && L(n("💙💙⏩ creating: %s^%s", l.gclass_name, e)), _.gobj_flag & w.gobj_flag_service && de(_), _.gobj_flag & w.gobj_flag_yuno && (p = _), _.gobj_flag & w.gobj_flag_default_service && (m = _), _.gobj_flag & w.gobj_flag_yuno || be(o, _), _.obflag |= R.obflag_created, _.gclass.instances++, Ee(_, r), _.gobj_flag & w.gobj_flag_service && s && s(_, null), _.gclass.gmt.mt_create2 ? _.gclass.gmt.mt_create2(_, r) : _.gclass.gmt.mt_create && _.gclass.gmt.mt_create(_), o && o.gclass.gmt.mt_child_added && (a && L(n("👦👦🔵 child_added(%s): %s", Me(o), Ve(_))), o.gclass.gmt.mt_child_added(o, _)), a && L(n("💙💙⏪ created: %s", Me(_))), _;
660
660
  }
661
661
  function he(e, t, n, r) {
662
662
  return Te(e, t, n, r, w.gobj_flag_pure_child);
663
663
  }
664
664
  function ye(e) {
665
- if (Ye(e)) return void Ht("gobj NULL or DESTROYED");
666
- e.__refs__ > 0 && Ht(`${Ve(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.playing && (Ht(`Destroying a PLAYING gobj: ${Me(e)}`), De(e)), e.running && (Ht(`Destroying a RUNNING gobj: ${Me(e)}`), Oe(e)), e.obflag |= R.obflag_destroying, function(e) {
665
+ if (Ye(e)) return void qt("gobj NULL or DESTROYED");
666
+ e.__refs__ > 0 && qt(`${Ve(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.playing && (qt(`Destroying a PLAYING gobj: ${Me(e)}`), De(e)), e.running && (qt(`Destroying a RUNNING gobj: ${Me(e)}`), Oe(e)), e.obflag |= R.obflag_destroying, function(e) {
667
667
  if (0 === ht.length) return;
668
668
  for (let t of ht) t.src === e && (t.src = null);
669
669
  ht = ht.filter((t) => t.dst !== e);
@@ -673,7 +673,7 @@ var gobjJs = function(e) {
673
673
  let r = We(e);
674
674
  r && r.gclass.gmt.mt_child_removed && (t && L(n("👦👦🔴 child_removed(%s): %s", Me(r), Ve(e))), r.gclass.gmt.mt_child_removed(r, e)), e.gobj_flag & w.gobj_flag_service && function(e) {
675
675
  let t = Fe(e);
676
- t = t.toLowerCase(), b[t] ? delete b[t] : Ht(`"service NOT found in register": ${t}`);
676
+ t = t.toLowerCase(), b[t] ? delete b[t] : qt(`"service NOT found in register": ${t}`);
677
677
  }(e), kt(e, e.dl_subscriptions, !0), kt(e, e.dl_subscribings, !0), r && (pe(r, e), Ke(e) && (Be(r) !== e || Ye(r) || Je(r, null))), function(e) {
678
678
  let t = e.dl_children.slice();
679
679
  for (let e = 0; e < t.length; e++) {
@@ -683,9 +683,9 @@ var gobjJs = function(e) {
683
683
  }(e), e.obflag & R.obflag_created && e.gclass.gmt.mt_destroy && e.gclass.gmt.mt_destroy(e), t && L(n("💔💔⏪ destroyed: %s", Me(e))), e.obflag |= R.obflag_destroyed, e.obflag & R.obflag_created && e.gclass.instances--;
684
684
  }
685
685
  function je(e) {
686
- if (Ye(e)) return Ht("gobj NULL or DESTROYED"), -1;
687
- if (e.running) return Ht(`${Ve(e)}: GObj ALREADY RUNNING`), -1;
688
- if (e.disabled) return Ht(`${Ve(e)}: GObj DISABLED`), -1;
686
+ if (Ye(e)) return qt("gobj NULL or DESTROYED"), -1;
687
+ if (e.running) return qt(`${Ve(e)}: GObj ALREADY RUNNING`), -1;
688
+ if (e.disabled) return qt(`${Ve(e)}: GObj DISABLED`), -1;
689
689
  B(e) && L(n("⏺ ⏺ start: %s", Me(e))), e.running = !0;
690
690
  let t = 0;
691
691
  return e.gclass.gmt.mt_start && (t = e.gclass.gmt.mt_start(e)), t;
@@ -697,8 +697,8 @@ var gobjJs = function(e) {
697
697
  return e.gclass.gclass_flag & N.gcflag_manual_start || ke(e) ? 1 : (Ae(e) || je(e), 0);
698
698
  }
699
699
  function Oe(e) {
700
- if (Ye(e)) return Ht("gobj NULL or DESTROYED"), -1;
701
- if (!e.running) return Ht(`${Ve(e)}: GObj NOT RUNNING`), -1;
700
+ if (Ye(e)) return qt("gobj NULL or DESTROYED"), -1;
701
+ if (!e.running) return qt(`${Ve(e)}: GObj NOT RUNNING`), -1;
702
702
  e.playing && (zt(`${Ve(e)}: GObj stopping without previous pause`), De(e)), B(e) && L(n("⏹ ⏹ stop: %s", Me(e))), e.running = !1;
703
703
  let t = 0;
704
704
  return e.gclass.gmt.mt_stop && (t = e.gclass.gmt.mt_stop(e)), t;
@@ -707,14 +707,14 @@ var gobjJs = function(e) {
707
707
  return Ae(e) && Oe(e), 0;
708
708
  }
709
709
  function we(e) {
710
- return Ye(e) ? (Ht("gobj NULL or DESTROYED"), -1) : He(e, A.WALK_FIRST2LAST, Ne, 0, 0);
710
+ return Ye(e) ? (qt("gobj NULL or DESTROYED"), -1) : qe(e, A.WALK_FIRST2LAST, Ne, 0, 0);
711
711
  }
712
712
  function Re(e) {
713
- if (Ye(e)) return Ht(`gobj NULL or DESTROYED: ${Ve(e)}`), -1;
714
- if (e.playing) return Ht(`${Ve(e)}: GObj ALREADY PLAYING`), -1;
715
- if (e.disabled) return Ht(`${Ve(e)}: GObj DISABLED`), -1;
713
+ if (Ye(e)) return qt(`gobj NULL or DESTROYED: ${Ve(e)}`), -1;
714
+ if (e.playing) return qt(`${Ve(e)}: GObj ALREADY PLAYING`), -1;
715
+ if (e.disabled) return qt(`${Ve(e)}: GObj DISABLED`), -1;
716
716
  if (!Ae(e)) {
717
- if (e.gclass.gclass_flag & N.gcflag_required_start_to_play) return Ht(`${Ve(e)}: Cannot play, start not done`), -1;
717
+ if (e.gclass.gclass_flag & N.gcflag_required_start_to_play) return qt(`${Ve(e)}: Cannot play, start not done`), -1;
718
718
  zt(`${Ve(e)}: GObj playing without previous start`), je(e);
719
719
  }
720
720
  B(e) && L(n("⏯ ⏯ play: %s", Me(e))), e.playing = !0;
@@ -722,7 +722,7 @@ var gobjJs = function(e) {
722
722
  return e.gclass.gmt.mt_play && (t = e.gclass.gmt.mt_play(e), (t < 0 || !1 === t) && (e.playing = !1)), t;
723
723
  }
724
724
  function De(e) {
725
- return Ye(e) ? (Ht("gobj NULL or DESTROYED"), -1) : e.playing ? (B(e) && L(n("⏸ ⏸ pause: %s", Me(e))), e.playing = !1, e.gclass.gmt.mt_pause ? e.gclass.gmt.mt_pause(e) : 0) : (Ht(`${Ve(e)}: GObj NOT PLAYING`), -1);
725
+ return Ye(e) ? (qt("gobj NULL or DESTROYED"), -1) : e.playing ? (B(e) && L(n("⏸ ⏸ pause: %s", Me(e))), e.playing = !1, e.gclass.gmt.mt_pause ? e.gclass.gmt.mt_pause(e) : 0) : (qt(`${Ve(e)}: GObj NOT PLAYING`), -1);
726
726
  }
727
727
  function Ae(e) {
728
728
  return !Ye(e) && e.running;
@@ -752,104 +752,104 @@ var gobjJs = function(e) {
752
752
  return e ? at(e, "yuno_id") : "";
753
753
  }
754
754
  function Fe(e) {
755
- return vn(e) ? e.gobj_name : (Ht("gobj bad type"), null);
755
+ return vn(e) ? e.gobj_name : (qt("gobj bad type"), null);
756
756
  }
757
757
  function Ge(e) {
758
- return vn(e) ? e.gclass.gclass_name : (Ht("gobj NULL of bad type"), null);
758
+ return vn(e) ? e.gclass.gclass_name : (qt("gobj NULL of bad type"), null);
759
759
  }
760
760
  function Ve(e) {
761
- return vn(e) ? e.gclass.gclass_name + "^" + Fe(e) : (Ht("gobj bad type"), null);
761
+ return vn(e) ? e.gclass.gclass_name + "^" + Fe(e) : (qt("gobj bad type"), null);
762
762
  }
763
763
  function Me(e) {
764
- if (!vn(e)) return Ht("gobj NULL of bad type"), null;
764
+ if (!vn(e)) return qt("gobj NULL of bad type"), null;
765
765
  let t = Ve(e), n = We(e);
766
766
  for (; n;) t = Ve(n) + "`" + t, n = We(n);
767
767
  return t;
768
768
  }
769
769
  function We(e) {
770
- return vn(e) ? e.parent : (Ht("gobj NULL of bad type"), null);
770
+ return vn(e) ? e.parent : (qt("gobj NULL of bad type"), null);
771
771
  }
772
772
  function Ke(e) {
773
- return vn(e) ? !!(e.gobj_flag & w.gobj_flag_volatil) : (Ht("gobj NULL of bad type"), null);
773
+ return vn(e) ? !!(e.gobj_flag & w.gobj_flag_volatil) : (qt("gobj NULL of bad type"), null);
774
774
  }
775
775
  function xe(e) {
776
- return vn(e) ? !!(e.gobj_flag & w.gobj_flag_pure_child) : (Ht("gobj NULL of bad type"), null);
776
+ return vn(e) ? !!(e.gobj_flag & w.gobj_flag_pure_child) : (qt("gobj NULL of bad type"), null);
777
777
  }
778
778
  function Ye(e) {
779
779
  return !vn(e) || !!(e.obflag & (R.obflag_destroyed | R.obflag_destroying));
780
780
  }
781
781
  function Be(e) {
782
- return vn(e) ? e.bottom_gobj : (Ht("gobj NULL of bad type"), null);
782
+ return vn(e) ? e.bottom_gobj : (qt("gobj NULL of bad type"), null);
783
783
  }
784
784
  function Je(e, t) {
785
- if (!vn(e)) return Ht("gobj NULL of bad type"), null;
785
+ if (!vn(e)) return qt("gobj NULL of bad type"), null;
786
786
  e.bottom_gobj && zt(`${Ve(e)}: bottom_gobj already set`), e.bottom_gobj = t;
787
787
  }
788
- function qe(e, t, n) {
789
- return vn(e) ? t ? ee(e.gclass, t, n) : e.gclass.attrs_table : (Ht("gobj NULL of bad type"), null);
788
+ function He(e, t, n) {
789
+ return vn(e) ? t ? ee(e.gclass, t, n) : e.gclass.attrs_table : (qt("gobj NULL of bad type"), null);
790
790
  }
791
- function He(e, t, n, r, o) {
792
- return Ye(e) ? (Ht("gobj NULL, destroying, or bad type"), 0) : Xe(e.dl_children, t, n, r, o);
791
+ function qe(e, t, n, r, o) {
792
+ return Ye(e) ? (qt("gobj NULL, destroying, or bad type"), 0) : Xe(e.dl_children, t, n, r, o);
793
793
  }
794
794
  function ze(e, t, n, r, o) {
795
- return Ye(e) ? (Ht("gobj NULL, destroying, or bad type"), 0) : et(e.dl_children, t, n, r, o);
795
+ return Ye(e) ? (qt("gobj NULL, destroying, or bad type"), 0) : et(e.dl_children, t, n, r, o);
796
796
  }
797
797
  function Qe(e) {
798
- return "number" == typeof e && isFinite(e) ? e : (null == e || Ht(`walk callback must return a NUMBER (-1 stop, 0 descend, >0 skip children), got ${typeof e}: taken as 0`), 0);
798
+ return "number" == typeof e && isFinite(e) ? e : (null == e || qt(`walk callback must return a NUMBER (-1 stop, 0 descend, >0 skip children), got ${typeof e}: taken as 0`), 0);
799
799
  }
800
800
  function Xe(e, t, n, r, o) {
801
- let l, i = [...e];
802
- if (t & A.WALK_LAST2FIRST) for (let e = i.length; e > 0; e--) {
803
- l = i[e - 1];
804
- let t = Qe(n(l, r, o));
801
+ let i, l = [...e];
802
+ if (t & A.WALK_LAST2FIRST) for (let e = l.length; e > 0; e--) {
803
+ i = l[e - 1];
804
+ let t = Qe(n(i, r, o));
805
805
  if (t < 0) return t;
806
806
  }
807
- else for (let e = 0; e < i.length; e++) {
808
- l = i[e];
809
- let t = Qe(n(l, r, o));
807
+ else for (let e = 0; e < l.length; e++) {
808
+ i = l[e];
809
+ let t = Qe(n(i, r, o));
810
810
  if (t < 0) return t;
811
811
  }
812
812
  return 0;
813
813
  }
814
814
  function Ze(e, t, n, r, o) {
815
- let l, i = Xe(e, t, n, r, o);
816
- if (i < 0) return i;
815
+ let i, l = Xe(e, t, n, r, o);
816
+ if (l < 0) return l;
817
817
  if (t & A.WALK_LAST2FIRST) {
818
- for (let s = e.length; s > 0; s--) if (l = e[s - 1], i = Ze([...l.dl_children], t, n, r, o), i < 0) return i;
819
- } else for (let s = 0; s < e.length; s++) if (l = e[s], i = Ze([...l.dl_children], t, n, r, o), i < 0) return i;
820
- return i;
818
+ for (let s = e.length; s > 0; s--) if (i = e[s - 1], l = Ze([...i.dl_children], t, n, r, o), l < 0) return l;
819
+ } else for (let s = 0; s < e.length; s++) if (i = e[s], l = Ze([...i.dl_children], t, n, r, o), l < 0) return l;
820
+ return l;
821
821
  }
822
822
  function et(e, t, n, r, o) {
823
823
  if (t & A.WALK_BYLEVEL) return Ze(e, t, n, r, o);
824
- let l, i;
824
+ let i, l;
825
825
  if (t & A.WALK_BOTTOM2TOP) for (let s = e.length; s > 0; s--) {
826
- if (i = e[s - 1], l = et([...i.dl_children], t, n, r, o), l < 0) return l;
827
- if (l = Qe(n(i, r, o)), l < 0) return l;
826
+ if (l = e[s - 1], i = et([...l.dl_children], t, n, r, o), i < 0) return i;
827
+ if (i = Qe(n(l, r, o)), i < 0) return i;
828
828
  }
829
829
  else for (let s = 0; s < e.length; s++) {
830
- if (i = e[s], l = Qe(n(i, r, o)), l < 0) return l;
831
- if (0 === l && (l = et([...i.dl_children], t, n, r, o), l < 0)) return l;
830
+ if (l = e[s], i = Qe(n(l, r, o)), i < 0) return i;
831
+ if (0 === i && (i = et([...l.dl_children], t, n, r, o), i < 0)) return i;
832
832
  }
833
833
  return 0;
834
834
  }
835
835
  function tt(e, t) {
836
- if (!vn(e)) return Ht("gobj NULL of bad type"), !1;
836
+ if (!vn(e)) return qt("gobj NULL of bad type"), !1;
837
837
  let n = t.__gclass_name__, r = t.__gobj_name__, o = t.__prefix_gobj_name__;
838
838
  t.__disabled__;
839
- let l = t.__state__;
839
+ let i = t.__state__;
840
840
  if (n && n !== Ge(e)) return !1;
841
841
  if (r && r !== Fe(e)) return !1;
842
842
  if (o) {
843
843
  let t = o.length;
844
844
  if (o !== Fe(e).substring(0, t)) return !1;
845
845
  }
846
- if (l && l !== pt(e)) return !1;
847
- let i = e.jn_attrs;
848
- for (const n of Object.keys(t)) if ("__gclass_name__" !== n && "__gobj_name__" !== n && "__prefix_gobj_name__" !== n && "__disabled__" !== n && "__state__" !== n && ot(e, n) && i[n] !== t[n]) return !1;
846
+ if (i && i !== pt(e)) return !1;
847
+ let l = e.jn_attrs;
848
+ for (const n of Object.keys(t)) if ("__gclass_name__" !== n && "__gobj_name__" !== n && "__prefix_gobj_name__" !== n && "__disabled__" !== n && "__state__" !== n && ot(e, n) && l[n] !== t[n]) return !1;
849
849
  return !0;
850
850
  }
851
851
  function nt(e, t) {
852
- if (Ye(e)) return Ht("gobj NULL or DESTROYED"), null;
852
+ if (Ye(e)) return qt("gobj NULL or DESTROYED"), null;
853
853
  const n = e.dl_children;
854
854
  for (let e = 0; e < n.length; e++) {
855
855
  const r = n[e];
@@ -873,27 +873,27 @@ var gobjJs = function(e) {
873
873
  if (1 === n.length) return e;
874
874
  let r = n[1].split("^"), o = {};
875
875
  1 === r.length ? o.__gobj_name__ = r : (o.__gclass_name__ = r[0], o.__gobj_name__ = r[1]);
876
- let l = nt(e, o);
877
- return l ? (n.splice(0, 1), n = n.join("`"), rt(l, n)) : null;
876
+ let i = nt(e, o);
877
+ return i ? (n.splice(0, 1), n = n.join("`"), rt(i, n)) : null;
878
878
  }
879
879
  function ot(e, t) {
880
880
  return !Sn(t) && !!ee(e.gclass, t, !1);
881
881
  }
882
- function lt(e, t, n) {
882
+ function it(e, t, n) {
883
883
  let r = e.jn_attrs;
884
884
  if (t in r && r.hasOwnProperty(t)) {
885
885
  let n = r[t];
886
886
  return e.gclass.gmt.mt_reading ? e.gclass.gmt.mt_reading(e, t, n) : n;
887
887
  }
888
- return Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
888
+ return qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
889
889
  }
890
- function it(e, t, n) {
890
+ function lt(e, t, n) {
891
891
  let r = {}, o = e.gclass.attrs_table;
892
892
  for (let n = 0; n < o.length; n++) {
893
- const l = o[n];
894
- if (l.name && (-1 === t || l.flag & t)) {
893
+ const i = o[n];
894
+ if (i.name && (-1 === t || i.flag & t)) {
895
895
  let t;
896
- !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? t = ln(e.jn_attrs, l.name) : (t = e.gclass.gmt.mt_reading(e, l.name), void 0 === t && (t = ln(e.jn_attrs, l.name))), _n(r, l.name, t);
896
+ !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? t = ln(e.jn_attrs, i.name) : (t = e.gclass.gmt.mt_reading(e, i.name), void 0 === t && (t = ln(e.jn_attrs, i.name))), _n(r, i.name, t);
897
897
  }
898
898
  }
899
899
  return r;
@@ -906,58 +906,58 @@ var gobjJs = function(e) {
906
906
  if (0 === wn(t, "__service__")) return Ie(e);
907
907
  }
908
908
  let n = Z(e, t, !1);
909
- return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
909
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
910
910
  }
911
911
  function _t(e, t) {
912
912
  t && wn(t, "__trace_level__");
913
913
  let n = Z(e, t, !1);
914
- return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
914
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
915
915
  }
916
916
  function at(e, t) {
917
917
  if (t && 0 === wn(t, "__state__")) return pt(e);
918
918
  let n = Z(e, t, !1);
919
- return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
919
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
920
920
  }
921
921
  function ut(e, t) {
922
922
  let n = Z(e, t, !1);
923
- return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
923
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
924
924
  }
925
925
  function ct(e, t, n, r) {
926
- let o = X(e), l = 0;
927
- for (const [r, i] of Object.entries(t)) {
928
- let t = qe(e, r, !0);
929
- t && (-1 === n || t.flag & n) && (l += Q(e, o, t, i));
926
+ let o = X(e), i = 0;
927
+ for (const [r, l] of Object.entries(t)) {
928
+ let t = He(e, r, !0);
929
+ t && (-1 === n || t.flag & n) && (i += Q(e, o, t, l));
930
930
  }
931
- return l;
931
+ return i;
932
932
  }
933
933
  function ft(e, t, n) {
934
934
  let r = Z(e, t, !1);
935
- return r ? (r[t] = On(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
935
+ return r ? (r[t] = On(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
936
936
  }
937
937
  function gt(e, t, n) {
938
938
  let r = Z(e, t, !1);
939
- return r ? (r[t] = parseInt(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
939
+ return r ? (r[t] = parseInt(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
940
940
  }
941
941
  function dt(e, t, n) {
942
942
  let r = Z(e, t, !1);
943
- return r ? (r[t] = String(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
943
+ return r ? (r[t] = String(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
944
944
  }
945
945
  function bt(e, t) {
946
- if (Ye(e)) return Ht("gobj NULL or DESTROYED"), null;
946
+ if (Ye(e)) return qt("gobj NULL or DESTROYED"), null;
947
947
  if (e.current_state.state_name === t) return !1;
948
948
  let r = re(e.gclass, t);
949
- if (!r) return Ht(`${Ve(e)}: state unknown, state ${t}`), !1;
949
+ if (!r) return qt(`${Ve(e)}: state unknown, state ${t}`), !1;
950
950
  e.last_state = e.current_state, e.current_state = r;
951
- let o = J(e, "EV_STATE_CHANGED"), l = !!function(e) {
951
+ let o = J(e, "EV_STATE_CHANGED"), i = !!function(e) {
952
952
  return W(e) & P.TRACE_STATES;
953
953
  }(e);
954
- return (o || l) && (1 === C || L(n("🔀🔀 mach(%s%s^%s), new st(%s), prev st(%s)", e.running ? "" : "!!", Ge(e), Fe(e), pt(e), e.last_state.state_name))), !0;
954
+ return (o || i) && (1 === C || L(n("🔀🔀 mach(%s%s^%s), new st(%s), prev st(%s)", e.running ? "" : "!!", Ge(e), Fe(e), pt(e), e.last_state.state_name))), !0;
955
955
  }
956
956
  function pt(e) {
957
- return vn(e) ? e.current_state.state_name : (Ht("hgobj NULL"), "");
957
+ return vn(e) ? e.current_state.state_name : (qt("hgobj NULL"), "");
958
958
  }
959
959
  function mt(e, t, n) {
960
- if (!vn(e)) return Ht("gobj NULL of bad type"), null;
960
+ if (!vn(e)) return qt("gobj NULL of bad type"), null;
961
961
  let r = ae(e.gclass, t);
962
962
  if (r) return r;
963
963
  if (n) {
@@ -987,19 +987,19 @@ var gobjJs = function(e) {
987
987
  return ht.length > 0 && !yt && (yt = !0, setTimeout(jt, 0)), t;
988
988
  }
989
989
  function vt(e, t, r, o) {
990
- if (!(e && e instanceof O)) return Ht("gobj dst NULL"), -1;
991
- if (e.obflag & (R.obflag_destroyed | R.obflag_destroying)) return Ht("gobj dst DESTROYED"), -1;
992
- let l = e.current_state;
993
- if (!l) return Ht(`${Ve(e)}: current_state NULL`), -1;
994
- let i = J(e, t) && !q(o, t);
990
+ if (!(e && e instanceof O)) return qt("gobj dst NULL"), -1;
991
+ if (e.obflag & (R.obflag_destroyed | R.obflag_destroying)) return qt("gobj dst DESTROYED"), -1;
992
+ let i = e.current_state;
993
+ if (!i) return qt(`${Ve(e)}: current_state NULL`), -1;
994
+ let l = J(e, t) && !H(o, t);
995
995
  E++;
996
- let s = oe(l, t);
997
- if (!s) return e.gclass.gmt.mt_inject_event ? (E--, i && (L(1 === C ? n("🔜 %s %s%s %s", t || "", e.running ? "" : "!!", Ve(e), l.state_name) : n("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", Ve(e), l.state_name, t || "", o && !o.running ? "!!" : "", Ve(o))), r && i > 1 && gn(r) && Zt(r)), e.gclass.gmt.mt_inject_event(e, t, r, o)) : (i && L(n("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Ge(e), Fe(e), l.state_name, t || "", o && !o.running ? "!!" : "", Ge(o), Fe(o))), Ht(`📛📛 Event NOT DEFINED in state 📛📛: ${Ve(e)}, ${l.state_name}, ${t}`), E--, -1);
998
- if (i) {
999
- if (1 === C) L(n("🔄 %s %s%s %s from %s%s", t || "", e.running ? "" : "!!", Ve(e), l.state_name, o && !o.running ? "!!" : "", Ve(o)));
996
+ let s = oe(i, t);
997
+ if (!s) return e.gclass.gmt.mt_inject_event ? (E--, l && (L(1 === C ? n("🔜 %s %s%s %s", t || "", e.running ? "" : "!!", Ve(e), i.state_name) : n("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", Ve(e), i.state_name, t || "", o && !o.running ? "!!" : "", Ve(o))), r && l > 1 && gn(r) && Zt(r)), e.gclass.gmt.mt_inject_event(e, t, r, o)) : (l && L(n("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Ge(e), Fe(e), i.state_name, t || "", o && !o.running ? "!!" : "", Ge(o), Fe(o))), qt(`📛📛 Event NOT DEFINED in state 📛📛: ${Ve(e)}, ${i.state_name}, ${t}`), E--, -1);
998
+ if (l) {
999
+ if (1 === C) L(n("🔄 %s %s%s %s from %s%s", t || "", e.running ? "" : "!!", Ve(e), i.state_name, o && !o.running ? "!!" : "", Ve(o)));
1000
1000
  else {
1001
1001
  let r = "";
1002
- s.action && (r = fr(s.action)), L(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Ge(e), Fe(e), l.state_name, "", t || "", "", r, o && !o.running ? "!!" : "", Ge(o), Fe(o)));
1002
+ s.action && (r = fr(s.action)), L(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Ge(e), Fe(e), i.state_name, "", t || "", "", r, o && !o.running ? "!!" : "", Ge(o), Fe(o)));
1003
1003
  }
1004
1004
  r && (W(e) | x()) & P.TRACE_EV_KW && gn(r) && Zt(r);
1005
1005
  }
@@ -1008,7 +1008,7 @@ var gobjJs = function(e) {
1008
1008
  try {
1009
1009
  s.action && (_ = s.action(e, t, r, o));
1010
1010
  } finally {}
1011
- return !i || 1 === C || e.obflag & R.obflag_destroyed || L(n("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Ge(e), Fe(e), e.current_state.state_name, t || "", Tn(_) ? _ : 0)), E--, _;
1011
+ return !l || 1 === C || e.obflag & R.obflag_destroyed || L(n("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Ge(e), Fe(e), e.current_state.state_name, t || "", Tn(_) ? _ : 0)), E--, _;
1012
1012
  }
1013
1013
  var St = Object.freeze({
1014
1014
  __hard_subscription__: 1,
@@ -1027,14 +1027,14 @@ var gobjJs = function(e) {
1027
1027
  j()
1028
1028
  ];
1029
1029
  function Nt(e, t, n, r, o) {
1030
- let l = Un(t, r, "__config__", null), i = Un(t, r, "__global__", null), s = Un(t, r, "__local__", null), _ = Fn(t, r, "__filter__", null), a = !0;
1031
- if (t && t !== Pn(null, e, "publisher", null) && (a = !1), o && o !== Pn(null, e, "subscriber", null) && (a = !1), n && n !== Ln(null, e, "event", "") && (a = !1), bn(l) > 0) {
1030
+ let i = Un(t, r, "__config__", null), l = Un(t, r, "__global__", null), s = Un(t, r, "__local__", null), _ = Fn(t, r, "__filter__", null), a = !0;
1031
+ if (t && t !== Pn(null, e, "publisher", null) && (a = !1), o && o !== Pn(null, e, "subscriber", null) && (a = !1), n && n !== Ln(null, e, "event", "") && (a = !1), bn(i) > 0) {
1032
1032
  let t = Un(null, e, "__config__", null);
1033
- bn(t) > 0 && tn(t, l) || (a = !1);
1033
+ bn(t) > 0 && tn(t, i) || (a = !1);
1034
1034
  }
1035
- if (bn(i) > 0) {
1035
+ if (bn(l) > 0) {
1036
1036
  let t = Un(null, e, "__global__", null);
1037
- bn(t) > 0 && tn(t, i) || (a = !1);
1037
+ bn(t) > 0 && tn(t, l) || (a = !1);
1038
1038
  }
1039
1039
  if (bn(s) > 0) {
1040
1040
  let t = Un(null, e, "__local__", null);
@@ -1047,28 +1047,28 @@ var gobjJs = function(e) {
1047
1047
  return a;
1048
1048
  }
1049
1049
  function wt(e, t, n, r, o) {
1050
- let l = [];
1051
- for (let i = 0; i < e.length; i++) {
1052
- let s = e[i];
1053
- Nt(s, t, n, r, o) && un(l, s);
1050
+ let i = [];
1051
+ for (let l = 0; l < e.length; l++) {
1052
+ let s = e[l];
1053
+ Nt(s, t, n, r, o) && un(i, s);
1054
1054
  }
1055
- return l;
1055
+ return i;
1056
1056
  }
1057
1057
  function Rt(e, t, n, r, o) {
1058
- for (let l = 0; l < e.length; l++) if (Nt(e[l], t, n, r, o)) return l;
1058
+ for (let i = 0; i < e.length; i++) if (Nt(e[i], t, n, r, o)) return i;
1059
1059
  return -1;
1060
1060
  }
1061
1061
  function Dt(e, t, r, o) {
1062
- let l = Pn(e, t, "publisher", null, Lt.KW_REQUIRED), i = Pn(e, t, "subscriber", null, Lt.KW_REQUIRED), s = Ln(e, t, "event", "", Lt.KW_REQUIRED);
1062
+ let i = Pn(e, t, "publisher", null, Lt.KW_REQUIRED), l = Pn(e, t, "subscriber", null, Lt.KW_REQUIRED), s = Ln(e, t, "event", "", Lt.KW_REQUIRED);
1063
1063
  if (!!(Cn(e, t, "subs_flag", null, Lt.KW_REQUIRED) & St.__hard_subscription__) && !r) return -1;
1064
- p && st(p, "trace_subscriptions") && (L(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", s || "", Ve(l), Ve(i))), Zt(t)), l.obflag & R.obflag_destroyed || o || l.gclass.gmt.mt_subscription_deleted && l.gclass.gmt.mt_subscription_deleted(l, t);
1065
- let _ = Rt(l.dl_subscriptions, l, s, t, i);
1066
- return _ >= 0 ? fn(l.dl_subscriptions, _) : (Ht(`${Ve(e)}: subscription in publisher not found`), Zt(t)), _ = Rt(i.dl_subscribings, l, s, t, i), _ >= 0 ? fn(i.dl_subscribings, _) : (Ht(`${Ve(e)}: subscription in subscriber not found`), Zt(t)), 0;
1064
+ p && st(p, "trace_subscriptions") && (L(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", s || "", Ve(i), Ve(l))), Zt(t)), i.obflag & R.obflag_destroyed || o || i.gclass.gmt.mt_subscription_deleted && i.gclass.gmt.mt_subscription_deleted(i, t);
1065
+ let _ = Rt(i.dl_subscriptions, i, s, t, l);
1066
+ return _ >= 0 ? fn(i.dl_subscriptions, _) : (qt(`${Ve(e)}: subscription in publisher not found`), Zt(t)), _ = Rt(l.dl_subscribings, i, s, t, l), _ >= 0 ? fn(l.dl_subscribings, _) : (qt(`${Ve(e)}: subscription in subscriber not found`), Zt(t)), 0;
1067
1067
  }
1068
1068
  function At(e, t, r, o) {
1069
- if (null == r && (r = {}), !e) return Ht(`publisher NULL: ev ${t}`), 0;
1070
- if (!o) return Ht(`subscriber NULL: ev ${t}`), 0;
1071
- const l = /* @__PURE__ */ new Set([
1069
+ if (null == r && (r = {}), !e) return qt(`publisher NULL: ev ${t}`), 0;
1070
+ if (!o) return qt(`subscriber NULL: ev ${t}`), 0;
1071
+ const i = /* @__PURE__ */ new Set([
1072
1072
  "__config__",
1073
1073
  "__global__",
1074
1074
  "__local__",
@@ -1076,33 +1076,33 @@ var gobjJs = function(e) {
1076
1076
  "__service__"
1077
1077
  ]);
1078
1078
  if (Object.keys(r).forEach((n) => {
1079
- l.has(n) || Ht(`${Ve(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
1079
+ i.has(n) || qt(`${Ve(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
1080
1080
  }), Sn(t)) t = "";
1081
- else if (!(Tt(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return Ht(`event NOT in output event list: ${Ve(e)}, ${t}`), 0;
1082
- let i = wt(e.dl_subscriptions, e, t, r, o);
1083
- dn(i) > 0 && (Ht(`${Ve(e)}: ${dn(i)} subscription(s) REPEATED, will be deleted and override`), Zt(i, "subscription REPEATED"), kt(e, i, !1));
1081
+ else if (!(Tt(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return qt(`event NOT in output event list: ${Ve(e)}, ${t}`), 0;
1082
+ let l = wt(e.dl_subscriptions, e, t, r, o);
1083
+ dn(l) > 0 && (qt(`${Ve(e)}: ${dn(l)} subscription(s) REPEATED, will be deleted and override`), Zt(l, "subscription REPEATED"), kt(e, l, !1));
1084
1084
  let s = function(e, t, n, r) {
1085
- let o = H(e, Ot);
1085
+ let o = q(e, Ot);
1086
1086
  an(o, "event", t), an(o, "subscriber", r), an(o, "publisher", e);
1087
- let l = 0;
1087
+ let i = 0;
1088
1088
  if (n) {
1089
- let t = Un(e, n, "__config__", null), r = Un(e, n, "__global__", null), i = Un(e, n, "__local__", null), s = Fn(e, n, "__filter__", null), _ = Ln(e, n, "__service__", "");
1089
+ let t = Un(e, n, "__config__", null), r = Un(e, n, "__global__", null), l = Un(e, n, "__local__", null), s = Fn(e, n, "__filter__", null), _ = Ln(e, n, "__service__", "");
1090
1090
  if (bn(r) > 0 && an(o, "__global__", en(r)), bn(t) > 0) {
1091
1091
  let n = en(t);
1092
1092
  if (an(o, "__config__", n), An(n, "__hard_subscription__")) {
1093
1093
  let t = $n(e, n, "__hard_subscription__", !1);
1094
- sn(n, "__hard_subscription__"), t && (l |= St.__hard_subscription__);
1094
+ sn(n, "__hard_subscription__"), t && (i |= St.__hard_subscription__);
1095
1095
  }
1096
1096
  if (An(n, "__own_event__")) {
1097
1097
  let t = $n(e, n, "__own_event__", !1);
1098
- sn(n, "__own_event__"), t && (l |= St.__own_event__);
1098
+ sn(n, "__own_event__"), t && (i |= St.__own_event__);
1099
1099
  }
1100
1100
  }
1101
- bn(i) > 0 && an(o, "__local__", en(i)), bn(s) > 0 && an(o, "__filter__", en(s)), Sn(_) || an(o, "__service__", _);
1101
+ bn(l) > 0 && an(o, "__local__", en(l)), bn(s) > 0 && an(o, "__filter__", en(s)), Sn(_) || an(o, "__service__", _);
1102
1102
  }
1103
- return an(o, "subs_flag", l), o;
1103
+ return an(o, "subs_flag", i), o;
1104
1104
  }(e, t, r, o);
1105
- if (!s) return Ht(`${Ve(e)}: _create_subscription() FAILED`), 0;
1105
+ if (!s) return qt(`${Ve(e)}: _create_subscription() FAILED`), 0;
1106
1106
  if (un(e.dl_subscriptions, s), un(o.dl_subscribings, s), p && st(p, "trace_subscriptions") && (L(n("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", t || "", Ve(e), Ve(o))), r && Zt(r)), e.gclass.gmt.mt_subscription_added) {
1107
1107
  let t = e.gclass.gmt.mt_subscription_added(e, s);
1108
1108
  (t < 0 || !1 === t) && (Dt(e, s, !0, !0), s = 0);
@@ -1121,18 +1121,18 @@ var gobjJs = function(e) {
1121
1121
  return wt(e.dl_subscribings, r, t, n, e);
1122
1122
  }
1123
1123
  function Ct(e, t, r) {
1124
- if (pn(r) || (r = {}), !e || e.obflag & (R.obflag_destroyed | R.obflag_destroying)) return Ht("gobj NULL or DESTROYED"), -1;
1125
- if (Sn(t)) return Ht(`${Ve(e)}: event EMPTY`), -1;
1124
+ if (pn(r) || (r = {}), !e || e.obflag & (R.obflag_destroyed | R.obflag_destroying)) return qt("gobj NULL or DESTROYED"), -1;
1125
+ if (Sn(t)) return qt(`${Ve(e)}: event EMPTY`), -1;
1126
1126
  let o = mt(e, t, !0);
1127
- if (!(o && o.event_flag & (D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return Ht(`event NOT in output event list: ${Ve(e)}, ev ${t}`), -1;
1128
- let l = p && st(p, "trace_subscriptions");
1129
- if (l && (L(1 === C ? n("🔝🔝 %s %s%s %s", t || "", e.running ? "" : "!!", Ve(e), e.current_state.state_name) : n("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Ge(e), Fe(e), e.current_state.state_name, "", t || "", "")), gn(r) && Zt(r)), e.gclass.gmt.mt_publish_event) {
1127
+ if (!(o && o.event_flag & (D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return qt(`event NOT in output event list: ${Ve(e)}, ev ${t}`), -1;
1128
+ let i = p && st(p, "trace_subscriptions");
1129
+ if (i && (L(1 === C ? n("🔝🔝 %s %s%s %s", t || "", e.running ? "" : "!!", Ve(e), e.current_state.state_name) : n("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Ge(e), Fe(e), e.current_state.state_name, "", t || "", "")), gn(r) && Zt(r)), e.gclass.gmt.mt_publish_event) {
1130
1130
  let n = e.gclass.gmt.mt_publish_event(e, t, r);
1131
1131
  if (n <= 0) return n;
1132
1132
  }
1133
- let i = [...e.dl_subscriptions], s = 0, _ = 0;
1134
- for (let o = 0; o < i.length; o++) {
1135
- let a = i[o];
1133
+ let l = [...e.dl_subscriptions], s = 0, _ = 0;
1134
+ for (let o = 0; o < l.length; o++) {
1135
+ let a = l[o];
1136
1136
  if (e.gclass.gmt.mt_publication_pre_filter) {
1137
1137
  let n = e.gclass.gmt.mt_publication_pre_filter(e, a, t, r);
1138
1138
  if (n < 0) break;
@@ -1143,12 +1143,12 @@ var gobjJs = function(e) {
1143
1143
  let c = Cn(e, a, "subs_flag", 0, Lt.KW_REQUIRED), f = Ln(e, a, "event", "", Lt.KW_REQUIRED);
1144
1144
  if (Sn(f) || 0 === wn(f, t)) {
1145
1145
  Un(e, a, "__config__", null, 0);
1146
- let o = Un(e, a, "__global__", null, 0), i = Un(e, a, "__local__", null, 0), f = Fn(e, a, "__filter__", null, 0), g = r, d = 1;
1147
- if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, t, g, u) : bn(f) > 0 && (d = Wn(g, f) ? 1 : 0, l && (L(n("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", d ? "👍" : "👎", t || "", Ve(u), Ve(e))), Zt(f))), d < 0) break;
1146
+ let o = Un(e, a, "__global__", null, 0), l = Un(e, a, "__local__", null, 0), f = Fn(e, a, "__filter__", null, 0), g = r, d = 1;
1147
+ if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, t, g, u) : bn(f) > 0 && (d = Wn(g, f) ? 1 : 0, i && (L(n("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", d ? "👍" : "👎", t || "", Ve(u), Ve(e))), Zt(f))), d < 0) break;
1148
1148
  if (!d) continue;
1149
1149
  let b = mt(u, t, !0);
1150
1150
  if (b && b.event_flag & D.EVF_SYSTEM_EVENT && !Et(u, b.event_name, 0)) continue;
1151
- i && Dn(g, i), o && nn(g, o), l && (L(1 === C ? n("🔝🔄 %s (%s) %s%s", t || "", t || "", u.running ? "" : "!!", Ve(u)) : n("🔝🔄 mach(%s%s), st: %s, ev: %s, from(%s%s)", u.running ? "" : "!!", Ve(u), pt(u), t || "", e && !e.running ? "!!" : "", Ve(e))), gn(g) && Zt(g));
1151
+ l && Dn(g, l), o && nn(g, o), i && (L(1 === C ? n("🔝🔄 %s (%s) %s%s", t || "", t || "", u.running ? "" : "!!", Ve(u)) : n("🔝🔄 mach(%s%s), st: %s, ev: %s, from(%s%s)", u.running ? "" : "!!", Ve(u), pt(u), t || "", e && !e.running ? "!!" : "", Ve(e))), gn(g) && Zt(g));
1152
1152
  let p = vt(u, t, g, e);
1153
1153
  if (p < 0 && c & St.__own_event__) {
1154
1154
  s = -1;
@@ -1205,7 +1205,7 @@ var gobjJs = function(e) {
1205
1205
  function Jt(e) {
1206
1206
  e ? (Ut = e, Ft = e) : (Ut = Pt.error, Ft = Pt.warn);
1207
1207
  }
1208
- function qt(e) {
1208
+ function Ht(e) {
1209
1209
  const t = Array.prototype.slice.call(arguments);
1210
1210
  let n = "";
1211
1211
  if ("string" == typeof e) {
@@ -1227,20 +1227,20 @@ var gobjJs = function(e) {
1227
1227
  } else n = t.map((e) => "object" == typeof e ? JSON.stringify(e) : String(e)).join(" ");
1228
1228
  return n;
1229
1229
  }
1230
- function Ht(e) {
1231
- let t = qt(e), n = ar();
1230
+ function qt(e) {
1231
+ let t = Ht(e), n = ar();
1232
1232
  Ut && (Ut === Pt.error ? xt("error", t) && Ut("%c" + n + " ERROR: " + String(t), "color:red") : (xt("error", t) && Pt.error("%c" + n + " ERROR: " + String(t), "color:red"), Ut(`${n} ERROR: ${String(t)}`))), Bt("error", t, n);
1233
1233
  }
1234
1234
  function zt(e) {
1235
- let t = qt(e), n = ar();
1235
+ let t = Ht(e), n = ar();
1236
1236
  Ft && (Ft === Pt.warn ? xt("warning", t) && Ft("%c" + n + " WARNING: " + String(t), "color:yellow") : (xt("warning", t) && Pt.warn("%c" + n + " WARNING: " + String(t), "color:yellow"), Ft(`${n} WARNING: ${String(t)}`))), Bt("warning", t, n);
1237
1237
  }
1238
1238
  function Qt(e) {
1239
- let t = qt(e), n = ar();
1239
+ let t = Ht(e), n = ar();
1240
1240
  Vt && xt("debug", t) && Vt("%c" + n + " DEBUG: " + String(t), "color:silver"), Bt("debug", t, n);
1241
1241
  }
1242
1242
  function Xt(e) {
1243
- let t = qt(e), n = ar();
1243
+ let t = Ht(e), n = ar();
1244
1244
  Vt && xt("msg", t) && Vt("%c" + n + " MSG: " + String(t), "color:cyan"), Bt("msg", t, n);
1245
1245
  }
1246
1246
  function Zt(e, t) {
@@ -1373,16 +1373,16 @@ var gobjJs = function(e) {
1373
1373
  return !(!(t in e) || !e.hasOwnProperty(t));
1374
1374
  }
1375
1375
  function kn(e, t, n, r) {
1376
- if (e && !vn(e) && Ht("GObj bad instanceof"), !pn(t) && !mn(t)) return Ht(`${Ve(e)}: kw must be list or dict`), 0;
1377
- if (!En(n)) return Ht(`${Ve(e)}: path must be a string: ${String(n)}`), 0;
1376
+ if (e && !vn(e) && qt("GObj bad instanceof"), !pn(t) && !mn(t)) return qt(`${Ve(e)}: kw must be list or dict`), 0;
1377
+ if (!En(n)) return qt(`${Ve(e)}: path must be a string: ${String(n)}`), 0;
1378
1378
  let o = n.split("`");
1379
1379
  if (o.length <= 1) return t[n];
1380
- let l = o.length;
1381
- for (let i = 0; i < l; i++) if (void 0 === (t = t[o[i]])) return void (r && Ht(`${Ve(e)}: path not found: ${String(n)}`));
1380
+ let i = o.length;
1381
+ for (let l = 0; l < i; l++) if (void 0 === (t = t[o[l]])) return void (r && qt(`${Ve(e)}: path not found: ${String(n)}`));
1382
1382
  return t;
1383
1383
  }
1384
1384
  function In(e, t, n) {
1385
- e && !vn(e) && Ht("GObj bad instanceof");
1385
+ e && !vn(e) && qt("GObj bad instanceof");
1386
1386
  let [r, o] = function(e, t) {
1387
1387
  let n = e.lastIndexOf(t);
1388
1388
  return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
@@ -1390,144 +1390,144 @@ var gobjJs = function(e) {
1390
1390
  return Sn(o) ? sn(t, n) : sn(kn(e, t, r, !0), o), 0;
1391
1391
  }
1392
1392
  function $n(e, t, n, r, o) {
1393
- e && !vn(e) && Ht("GObj bad instanceof");
1394
- let l = kn(e, t, n, !1);
1395
- const i = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
1396
- if (void 0 === l) {
1393
+ e && !vn(e) && qt("GObj bad instanceof");
1394
+ let i = kn(e, t, n, !1);
1395
+ const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
1396
+ if (void 0 === i) {
1397
1397
  if (s) {
1398
1398
  let o = Boolean(r);
1399
1399
  return Gn(e, t, n, o), o;
1400
1400
  }
1401
- return i && (Ht(`path not found: '${n}'`), Zt(t)), Boolean(r);
1401
+ return l && (qt(`path not found: '${n}'`), Zt(t)), Boolean(r);
1402
1402
  }
1403
- return _ && In(e, t, n), Boolean(l);
1403
+ return _ && In(e, t, n), Boolean(i);
1404
1404
  }
1405
1405
  function Cn(e, t, n, r, o) {
1406
- e && !vn(e) && Ht("GObj bad instanceof");
1407
- let l = kn(e, t, n, !1);
1408
- const i = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
1409
- if (void 0 === l) {
1406
+ e && !vn(e) && qt("GObj bad instanceof");
1407
+ let i = kn(e, t, n, !1);
1408
+ const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
1409
+ if (void 0 === i) {
1410
1410
  if (s) {
1411
1411
  let o = parseInt(r);
1412
1412
  return Gn(e, t, n, o), o;
1413
1413
  }
1414
- return i && (Ht(`path not found: '${n}'`), Zt(t)), parseInt(r);
1414
+ return l && (qt(`path not found: '${n}'`), Zt(t)), parseInt(r);
1415
1415
  }
1416
- return _ && In(e, t, n), Tn(l) ? parseInt(l) : (i && (Ht(`path value MUST BE a number: ${n}`), Xt(t)), parseInt(r));
1416
+ return _ && In(e, t, n), Tn(i) ? parseInt(i) : (l && (qt(`path value MUST BE a number: ${n}`), Xt(t)), parseInt(r));
1417
1417
  }
1418
1418
  function Ln(e, t, n, r, o) {
1419
- e && !vn(e) && Ht("GObj bad instanceof");
1420
- let l = kn(e, t, n, !1);
1421
- const i = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
1422
- if (void 0 === l) {
1419
+ e && !vn(e) && qt("GObj bad instanceof");
1420
+ let i = kn(e, t, n, !1);
1421
+ const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
1422
+ if (void 0 === i) {
1423
1423
  if (s) {
1424
1424
  let o = String(r);
1425
1425
  return Gn(e, t, n, o), o;
1426
1426
  }
1427
- return i && (Ht(`path not found: '${n}'`), Zt(t)), String(r);
1427
+ return l && (qt(`path not found: '${n}'`), Zt(t)), String(r);
1428
1428
  }
1429
- return _ && In(e, t, n), En(l) ? String(l) : (i && (Ht(`${Ve(e)}: path value MUST BE a string: ${n}`), Xt(t)), String(r));
1429
+ return _ && In(e, t, n), En(i) ? String(i) : (l && (qt(`${Ve(e)}: path value MUST BE a string: ${n}`), Xt(t)), String(r));
1430
1430
  }
1431
1431
  function Pn(e, t, n, r, o) {
1432
- e && !vn(e) && Ht("GObj bad instanceof");
1433
- let l = kn(e, t, n, !1);
1434
- const i = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
1435
- if (void 0 === l) {
1432
+ e && !vn(e) && qt("GObj bad instanceof");
1433
+ let i = kn(e, t, n, !1);
1434
+ const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
1435
+ if (void 0 === i) {
1436
1436
  if (s) {
1437
1437
  let o = r;
1438
1438
  return Gn(e, t, n, o), o;
1439
1439
  }
1440
- return i && (Ht(`path not found: '${n}'`), Zt(t)), r;
1440
+ return l && (qt(`path not found: '${n}'`), Zt(t)), r;
1441
1441
  }
1442
- return _ && In(e, t, n), l;
1442
+ return _ && In(e, t, n), i;
1443
1443
  }
1444
1444
  function Un(e, t, n, r, o) {
1445
- e && !vn(e) && Ht("GObj bad instanceof");
1446
- let l = kn(e, t, n, !1);
1447
- const i = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
1448
- if (void 0 === l) {
1445
+ e && !vn(e) && qt("GObj bad instanceof");
1446
+ let i = kn(e, t, n, !1);
1447
+ const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
1448
+ if (void 0 === i) {
1449
1449
  if (s) {
1450
1450
  let o = Object(r);
1451
1451
  return Gn(e, t, n, o), o;
1452
1452
  }
1453
- return i && (Ht(`path not found: '${n}'`), Zt(t)), Object(r);
1453
+ return l && (qt(`path not found: '${n}'`), Zt(t)), Object(r);
1454
1454
  }
1455
- return _ && In(e, t, n), pn(l) ? Object(l) : (i && (Ht(`path value MUST BE a dict: ${n}`), Xt(t)), Object(r));
1455
+ return _ && In(e, t, n), pn(i) ? Object(i) : (l && (qt(`path value MUST BE a dict: ${n}`), Xt(t)), Object(r));
1456
1456
  }
1457
1457
  function Fn(e, t, n, r, o) {
1458
- e && !vn(e) && Ht("GObj bad instanceof");
1459
- let l = kn(e, t, n, !1);
1460
- const i = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
1461
- if (void 0 === l) {
1458
+ e && !vn(e) && qt("GObj bad instanceof");
1459
+ let i = kn(e, t, n, !1);
1460
+ const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
1461
+ if (void 0 === i) {
1462
1462
  if (s) {
1463
1463
  let o = r;
1464
1464
  return Gn(e, t, n, o), o;
1465
1465
  }
1466
- return i && (Ht(`path not found: '${n}'`), Zt(t)), r;
1466
+ return l && (qt(`path not found: '${n}'`), Zt(t)), r;
1467
1467
  }
1468
- return _ && In(e, t, n), l;
1468
+ return _ && In(e, t, n), i;
1469
1469
  }
1470
1470
  function Gn(e, t, n, r) {
1471
- if (e && !vn(e) && Ht("GObj bad instanceof"), !pn(t)) return Ht("kw is not an object"), -1;
1471
+ if (e && !vn(e) && qt("GObj bad instanceof"), !pn(t)) return qt("kw is not an object"), -1;
1472
1472
  let o = n.split("`");
1473
1473
  if (o.length <= 1) return t[n] = r, 0;
1474
- let l = o.length;
1475
- for (let e = 0; e < l; e++) {
1474
+ let i = o.length;
1475
+ for (let e = 0; e < i; e++) {
1476
1476
  let n = o[e];
1477
- e === l - 1 ? t[n] = r : (void 0 === t[n] && (t[n] = {}), t = t[n]);
1477
+ e === i - 1 ? t[n] = r : (void 0 === t[n] && (t[n] = {}), t = t[n]);
1478
1478
  }
1479
1479
  return 0;
1480
1480
  }
1481
1481
  function Vn(e, t, n, r, o) {
1482
- if (e && !vn(e) && Ht("GObj bad instanceof"), !pn(t)) return Ht("kw is not an object"), -1;
1483
- let l = Un(e, t, n, {}, !0);
1484
- return pn(l) ? (l[r] = o, 0) : (Ht("subdict is not an object"), -1);
1482
+ if (e && !vn(e) && qt("GObj bad instanceof"), !pn(t)) return qt("kw is not an object"), -1;
1483
+ let i = Un(e, t, n, {}, !0);
1484
+ return pn(i) ? (i[r] = o, 0) : (qt("subdict is not an object"), -1);
1485
1485
  }
1486
1486
  function Mn(e, t, r) {
1487
- let o = "", l = !1;
1487
+ let o = "", i = !1;
1488
1488
  if (mn(t)) {
1489
- l = !1;
1490
- for (let i = 0; i < t.length; i++) {
1491
- let s = t[i];
1492
- if (o = Sn(r) ? n("%s", r) : n("%s`%d", r, i), l = Mn(e, s, o), l) break;
1489
+ i = !1;
1490
+ for (let l = 0; l < t.length; l++) {
1491
+ let s = t[l];
1492
+ if (o = Sn(r) ? n("%s", r) : n("%s`%d", r, l), i = Mn(e, s, o), i) break;
1493
1493
  }
1494
1494
  } else if (pn(t)) {
1495
- l = !0;
1496
- let i = Object.keys(t);
1497
- for (let s = 0; s < i.length; s++) {
1498
- let _ = i[s], a = t[_];
1495
+ i = !0;
1496
+ let l = Object.keys(t);
1497
+ for (let s = 0; s < l.length; s++) {
1498
+ let _ = l[s], a = t[_];
1499
1499
  if (o = Sn(r) ? n("%s", _) : n("%s`%s", r, _), mn(a) || pn(a)) {
1500
- if (l = Mn(e, a, o), !l) break;
1500
+ if (i = Mn(e, a, o), !i) break;
1501
1501
  continue;
1502
1502
  }
1503
1503
  let u = Fn(0, e, o, 0, 0);
1504
1504
  if (u || (u = ln(e, o)), !u) {
1505
- l = !1;
1505
+ i = !1;
1506
1506
  break;
1507
1507
  }
1508
1508
  if (0 !== Rn(u, a)) {
1509
- l = !1;
1509
+ i = !1;
1510
1510
  break;
1511
1511
  }
1512
1512
  }
1513
1513
  }
1514
- return l;
1514
+ return i;
1515
1515
  }
1516
1516
  function Wn(e, t) {
1517
1517
  return 0 === bn(t) || Mn(e, t, "");
1518
1518
  }
1519
1519
  function Kn(e, t, n, r) {
1520
- e && !vn(e) && Ht("GObj bad instanceof");
1520
+ e && !vn(e) && qt("GObj bad instanceof");
1521
1521
  let o = {};
1522
1522
  if (En(n) && !Sn(n)) {
1523
- let l = n;
1524
- t.hasOwnProperty(l) ? o[l] = t[l] : r && Ht(`${Ve(e)}: key not found: ${l}`);
1525
- } else if (pn(n) && gn(n) > 0) for (let l of Object.keys(n)) t.hasOwnProperty(l) ? o[l] = t[l] : r && Ht(`${Ve(e)}: key not found: ${l}`);
1523
+ let i = n;
1524
+ t.hasOwnProperty(i) ? o[i] = t[i] : r && qt(`${Ve(e)}: key not found: ${i}`);
1525
+ } else if (pn(n) && gn(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? o[i] = t[i] : r && qt(`${Ve(e)}: key not found: ${i}`);
1526
1526
  else {
1527
1527
  if (!(mn(n) && dn(n) > 0)) return t;
1528
- for (let l = 0; l < n.length; l++) {
1529
- let i = n[l];
1530
- t.hasOwnProperty(i) ? o[i] = t[i] : r && Ht(`${Ve(e)}: key not found: ${i}`);
1528
+ for (let i = 0; i < n.length; i++) {
1529
+ let l = n[i];
1530
+ t.hasOwnProperty(l) ? o[l] = t[l] : r && qt(`${Ve(e)}: key not found: ${l}`);
1531
1531
  }
1532
1532
  }
1533
1533
  return o;
@@ -1535,14 +1535,14 @@ var gobjJs = function(e) {
1535
1535
  function xn(e, t, n, r) {
1536
1536
  let o = {};
1537
1537
  if (nn(o, t), En(n) && !Sn(n)) {
1538
- let l = n;
1539
- Fn(e, t, l, 0, 0) ? sn(o, l) : r && Ht(`${Ve(e)}: key not found: ${l}`);
1540
- } else if (pn(n) && gn(n) > 0) for (let l of Object.keys(n)) t.hasOwnProperty(l) ? sn(o, l) : r && Ht(`${Ve(e)}: key not found: ${l}`);
1538
+ let i = n;
1539
+ Fn(e, t, i, 0, 0) ? sn(o, i) : r && qt(`${Ve(e)}: key not found: ${i}`);
1540
+ } else if (pn(n) && gn(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? sn(o, i) : r && qt(`${Ve(e)}: key not found: ${i}`);
1541
1541
  else {
1542
1542
  if (!(mn(n) && dn(n) > 0)) return {};
1543
- for (let l = 0; l < n.length; l++) {
1544
- let i = n[l];
1545
- t.hasOwnProperty(i) ? sn(o, i) : r && Ht(`${Ve(e)}: key not found: ${i}`);
1543
+ for (let i = 0; i < n.length; i++) {
1544
+ let l = n[i];
1545
+ t.hasOwnProperty(l) ? sn(o, l) : r && qt(`${Ve(e)}: key not found: ${l}`);
1546
1546
  }
1547
1547
  }
1548
1548
  return o;
@@ -1557,11 +1557,11 @@ var gobjJs = function(e) {
1557
1557
  }
1558
1558
  function Bn(e, t) {
1559
1559
  if ("undefined" == typeof window || !window.localStorage) return 0;
1560
- if (!e || void 0 === t) return Ht(`kw_set_local_storage_value(): invalid key or value: key=${e}`), -1;
1560
+ if (!e || void 0 === t) return qt(`kw_set_local_storage_value(): invalid key or value: key=${e}`), -1;
1561
1561
  try {
1562
1562
  return window.localStorage.setItem(e, JSON.stringify(t)), 0;
1563
1563
  } catch (t) {
1564
- return Ht(`kw_set_local_storage_value(): cannot save "${e}" (storage full or blocked?): ${t && t.message ? t.message : t}`), -1;
1564
+ return qt(`kw_set_local_storage_value(): cannot save "${e}" (storage full or blocked?): ${t && t.message ? t.message : t}`), -1;
1565
1565
  }
1566
1566
  }
1567
1567
  function Jn(e) {
@@ -1572,7 +1572,7 @@ var gobjJs = function(e) {
1572
1572
  }
1573
1573
  else window.console.warn(`Invalid key for localStorage removal: ${e}`);
1574
1574
  }
1575
- function qn(e, t) {
1575
+ function Hn(e, t) {
1576
1576
  if (yn(e) || yn(t)) return !0;
1577
1577
  if (mn(e)) {
1578
1578
  if (0 === e.length) return !0;
@@ -1583,27 +1583,27 @@ var gobjJs = function(e) {
1583
1583
  } else if (En(e) && e === t) return !0;
1584
1584
  return !1;
1585
1585
  }
1586
- function Hn(e, t, n, r, o) {
1587
- if (e && !vn(e) && Ht("GObj bad instanceof"), !t) return null;
1586
+ function qn(e, t, n, r, o) {
1587
+ if (e && !vn(e) && qt("GObj bad instanceof"), !t) return null;
1588
1588
  o || (o = Wn);
1589
- let l = [];
1590
- if (mn(t)) for (let i = 0; i < t.length; i++) {
1591
- let s, _ = t[i];
1589
+ let i = [];
1590
+ if (mn(t)) for (let l = 0; l < t.length; l++) {
1591
+ let s, _ = t[l];
1592
1592
  if (pn(_)) s = Ln(e, _, "id", "", 0);
1593
1593
  else {
1594
1594
  if (!En(_)) continue;
1595
1595
  s = _;
1596
1596
  }
1597
- qn(n, s) && o(_, r) && l.push(_);
1597
+ Hn(n, s) && o(_, r) && i.push(_);
1598
1598
  }
1599
1599
  else {
1600
- if (!pn(t)) return Ht("kw_collect() BAD kw parameter"), null;
1600
+ if (!pn(t)) return qt("kw_collect() BAD kw parameter"), null;
1601
1601
  for (let e of Object.keys(t)) {
1602
- let i = t[e];
1603
- qn(n, e) && o(i, r) && l.push(i);
1602
+ let l = t[e];
1603
+ Hn(n, e) && o(l, r) && i.push(l);
1604
1604
  }
1605
1605
  }
1606
- return l;
1606
+ return i;
1607
1607
  }
1608
1608
  function zn(e, t) {
1609
1609
  if (!e) return -1;
@@ -1611,7 +1611,7 @@ var gobjJs = function(e) {
1611
1611
  return -1;
1612
1612
  }
1613
1613
  function Qn(e, t, n) {
1614
- if (!e || !t) return Ht("ERROR: str_in_list() list or str empty"), !1;
1614
+ if (!e || !t) return qt("ERROR: str_in_list() list or str empty"), !1;
1615
1615
  let r = e.length;
1616
1616
  if (n) {
1617
1617
  t = t.toLowerCase();
@@ -1635,21 +1635,21 @@ var gobjJs = function(e) {
1635
1635
  r || (r = {}, e.__md_iev__ = r), r[t] = n;
1636
1636
  }
1637
1637
  function er(e, t, n, r) {
1638
- if (!vn(e)) return Ht("gobj is not a GObj"), null;
1638
+ if (!vn(e)) return qt("gobj is not a GObj"), null;
1639
1639
  if (!t) return;
1640
1640
  let o = Xn(t, n);
1641
1641
  o || (o = [], Zn(t, n, o));
1642
1642
  try {
1643
1643
  mn(o) && o.unshift(r);
1644
1644
  } catch (e) {
1645
- Ht(e);
1645
+ qt(e);
1646
1646
  }
1647
1647
  }
1648
1648
  function tr(e, t, n, r) {
1649
- if (!vn(e)) return Ht("gobj is not a GObj"), null;
1650
- if (!pn(t)) return Ht("kw is not a dict"), null;
1649
+ if (!vn(e)) return qt("gobj is not a GObj"), null;
1650
+ if (!pn(t)) return qt("kw is not a dict"), null;
1651
1651
  let o = Xn(t, n);
1652
- return o ? 0 === o.length ? (r && Ht(`stack empty: ${n}`), null) : o[0] : (r && Ht(`stack NOT FOUND: ${n}`), null);
1652
+ return o ? 0 === o.length ? (r && qt(`stack empty: ${n}`), null) : o[0] : (r && qt(`stack NOT FOUND: ${n}`), null);
1653
1653
  }
1654
1654
  function nr(e, t, n) {
1655
1655
  return Sn(n) ? In(e, t, "__md_iev__`__msg_type__") : Vn(e, t, "__md_iev__", "__msg_type__", n), 0;
@@ -1670,23 +1670,23 @@ var gobjJs = function(e) {
1670
1670
  ]), pn(e[r]) && or(e[r], t, n), n = n.slice(0, -o.length);
1671
1671
  }
1672
1672
  }
1673
- function lr(e, t, n, r) {
1673
+ function ir(e, t, n, r) {
1674
1674
  if (!e) return null;
1675
- let o, l = e.length;
1676
- for (o = 0; o < l; o++) {
1677
- let l = e[o];
1678
- if (l) {
1679
- let e = l.id;
1680
- if (e && e === n) return l;
1681
- if (r && An(l, t)) {
1682
- let e = lr(l[t], t, n, r);
1675
+ let o, i = e.length;
1676
+ for (o = 0; o < i; o++) {
1677
+ let i = e[o];
1678
+ if (i) {
1679
+ let e = i.id;
1680
+ if (e && e === n) return i;
1681
+ if (r && An(i, t)) {
1682
+ let e = ir(i[t], t, n, r);
1683
1683
  if (e) return e;
1684
1684
  }
1685
1685
  }
1686
1686
  }
1687
1687
  return null;
1688
1688
  }
1689
- function ir(e) {
1689
+ function lr(e) {
1690
1690
  function t(e) {
1691
1691
  let t = e.replace(/-/g, "+").replace(/_/g, "/");
1692
1692
  switch (t.length % 4) {
@@ -1777,7 +1777,7 @@ var gobjJs = function(e) {
1777
1777
  if (En(t)) {
1778
1778
  if (-1 === t.indexOf("^")) {
1779
1779
  let n, r, o = e.fkey;
1780
- if (1 !== gn(o)) return Ht("bad fkey 1"), Ht(e), Ht(t), null;
1780
+ if (1 !== gn(o)) return qt("bad fkey 1"), qt(e), qt(t), null;
1781
1781
  for (const e of Object.keys(o)) {
1782
1782
  n = e, r = o[e];
1783
1783
  break;
@@ -1790,7 +1790,7 @@ var gobjJs = function(e) {
1790
1790
  }
1791
1791
  {
1792
1792
  let n = t.split("^");
1793
- return 3 !== n.length ? (Ht("bad fkey 2"), Ht(e), Ht(t), null) : {
1793
+ return 3 !== n.length ? (qt("bad fkey 2"), qt(e), qt(t), null) : {
1794
1794
  topic_name: n[0],
1795
1795
  id: n[1],
1796
1796
  hook_name: n[2]
@@ -1801,7 +1801,7 @@ var gobjJs = function(e) {
1801
1801
  topic_name: t.topic_name,
1802
1802
  id: t.id,
1803
1803
  hook_name: t.hook_name
1804
- } : (Ht("bad fkey 3"), Ht(e), Ht(t), null);
1804
+ } : (qt("bad fkey 3"), qt(e), qt(t), null);
1805
1805
  }
1806
1806
  var hr = [
1807
1807
  "string",
@@ -1867,7 +1867,8 @@ var gobjJs = function(e) {
1867
1867
  default_value: e.default,
1868
1868
  placeholder: e.placeholder,
1869
1869
  fillspace: e.fillspace || 4,
1870
- fkey: e.fkey || null
1870
+ fkey: e.fkey || null,
1871
+ is_file: !1
1871
1872
  };
1872
1873
  if (!e.flag) return t;
1873
1874
  for (let n = 0; n < e.flag.length; n++) {
@@ -1880,7 +1881,10 @@ var gobjJs = function(e) {
1880
1881
  case "template":
1881
1882
  t.enum_list = e.template;
1882
1883
  break;
1883
- case "table": t.enum_list = e.table;
1884
+ case "table":
1885
+ t.enum_list = e.table;
1886
+ break;
1887
+ case "file": t.is_file = !0;
1884
1888
  }
1885
1889
  t.type = r;
1886
1890
  } else if (Qn(yr, r)) switch (r) {
@@ -1894,7 +1898,7 @@ var gobjJs = function(e) {
1894
1898
  case "hidden": t.is_hidden = !0;
1895
1899
  }
1896
1900
  }
1897
- return t;
1901
+ return t.is_file && (t.type = "file"), t;
1898
1902
  }
1899
1903
  var Sr = [
1900
1904
  v(T.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
@@ -1907,10 +1911,10 @@ var gobjJs = function(e) {
1907
1911
  timer_id: -1
1908
1912
  }, Nr = null;
1909
1913
  function wr(e, t, n, r) {
1910
- let o = e.priv, l = o.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
1914
+ let o = e.priv, i = o.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
1911
1915
  return o.periodic && o.msec > 0 ? o.timer_id = setTimeout(function() {
1912
1916
  vt(e, "EV_TIMEOUT", {}, e);
1913
- }, o.msec) : o.timer_id = -1, xe(e) ? vt(We(e), l, {}, e) : Ct(e, l, {}), o.periodic || -1 !== o.timer_id || Ae(e) && Oe(e), 0;
1917
+ }, o.msec) : o.timer_id = -1, xe(e) ? vt(We(e), i, {}, e) : Ct(e, i, {}), o.periodic || -1 !== o.timer_id || Ae(e) && Oe(e), 0;
1914
1918
  }
1915
1919
  var Rr = {
1916
1920
  mt_create: function(e) {
@@ -1938,13 +1942,13 @@ var gobjJs = function(e) {
1938
1942
  mt_destroy: function(e) {}
1939
1943
  };
1940
1944
  function Dr(e, t) {
1941
- return e instanceof O ? "C_TIMER" !== Ge(e) ? (Ht("not C_TIMER GObj"), -1) : (ft(e, "periodic", !1), void gt(e, "msec", t)) : (Ht("not GObj TYPE"), -1);
1945
+ return e instanceof O ? "C_TIMER" !== Ge(e) ? (qt("not C_TIMER GObj"), -1) : (ft(e, "periodic", !1), void gt(e, "msec", t)) : (qt("not GObj TYPE"), -1);
1942
1946
  }
1943
1947
  function Ar(e, t) {
1944
- return e instanceof O ? "C_TIMER" !== Ge(e) ? (Ht("not C_TIMER GObj"), -1) : (ft(e, "periodic", !0), void gt(e, "msec", t)) : (Ht("not GObj TYPE"), -1);
1948
+ return e instanceof O ? "C_TIMER" !== Ge(e) ? (qt("not C_TIMER GObj"), -1) : (ft(e, "periodic", !0), void gt(e, "msec", t)) : (qt("not GObj TYPE"), -1);
1945
1949
  }
1946
1950
  function kr(e) {
1947
- return e instanceof O ? "C_TIMER" !== Ge(e) ? (Ht("not C_TIMER GObj"), -1) : void gt(e, "msec", -1) : (Ht("not GObj TYPE"), -1);
1951
+ return e instanceof O ? "C_TIMER" !== Ge(e) ? (qt("not C_TIMER GObj"), -1) : void gt(e, "msec", -1) : (qt("not GObj TYPE"), -1);
1948
1952
  }
1949
1953
  var Ir = [
1950
1954
  v(T.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
@@ -1958,7 +1962,7 @@ var gobjJs = function(e) {
1958
1962
  v(T.DTP_STRING, "yuno_tag", 0, "", "Tags of yuno. Set by agent"),
1959
1963
  v(T.DTP_STRING, "yuno_release", 0, "", "Yuno Release. Set by agent"),
1960
1964
  v(T.DTP_STRING, "yuno_version", 0, "", "Yuno version (APP_VERSION)"),
1961
- v(T.DTP_STRING, "yuneta_version", 0, i, "Yuneta version"),
1965
+ v(T.DTP_STRING, "yuneta_version", 0, l, "Yuneta version"),
1962
1966
  v(T.DTP_LIST, "required_services", 0, "[]", "Required services"),
1963
1967
  v(T.DTP_INTEGER, "tracing", 0, 0, "Tracing level"),
1964
1968
  v(T.DTP_BOOLEAN, "trace_timer", 0, 0, "Trace timers"),
@@ -1979,7 +1983,7 @@ var gobjJs = function(e) {
1979
1983
  var Pr = {
1980
1984
  mt_create: function(e) {
1981
1985
  let t = e.priv;
1982
- dt(e, "start_date", ar()), dt(e, "node_uuid", cr()), e.priv.gobj_timer = he(Fe(e), "C_TIMER", {}, e), t.periodic_timeout = lt(e, "periodic_timeout");
1986
+ dt(e, "start_date", ar()), dt(e, "node_uuid", cr()), e.priv.gobj_timer = he(Fe(e), "C_TIMER", {}, e), t.periodic_timeout = it(e, "periodic_timeout");
1983
1987
  },
1984
1988
  mt_writing: function(e, t) {},
1985
1989
  mt_start: function(e) {
@@ -2026,14 +2030,14 @@ var gobjJs = function(e) {
2026
2030
  retry_ms: 0
2027
2031
  }, Vr = null;
2028
2032
  function Mr(e) {
2029
- e.priv.websocket && Ht("Websocket ALREADY setup");
2033
+ e.priv.websocket && qt("Websocket ALREADY setup");
2030
2034
  const t = at(e, "url");
2031
2035
  let n;
2032
2036
  Qt(`====> Starting WebSocket to '${t}' (${Ve(e)})`);
2033
2037
  try {
2034
2038
  n = new WebSocket(t);
2035
2039
  } catch (n) {
2036
- return Ht(`${Ve(e)}: Cannot open WebSocket to '${t}', Error: ${n.message}`), null;
2040
+ return qt(`${Ve(e)}: Cannot open WebSocket to '${t}', Error: ${n.message}`), null;
2037
2041
  }
2038
2042
  return n ? (n.onopen = () => {
2039
2043
  vt(e, "EV_ON_OPEN", { url: t }, e);
@@ -2047,7 +2051,7 @@ var gobjJs = function(e) {
2047
2051
  url: t,
2048
2052
  e: n
2049
2053
  }, e));
2050
- }, n) : (Ht(`${Ve(e)}: Failed to initialize WebSocket.`), null);
2054
+ }, n) : (qt(`${Ve(e)}: Failed to initialize WebSocket.`), null);
2051
2055
  }
2052
2056
  function Wr(e, t = 1e3, n = "") {
2053
2057
  let r = e.priv, o = r.websocket;
@@ -2056,7 +2060,7 @@ var gobjJs = function(e) {
2056
2060
  try {
2057
2061
  o.close(t, n);
2058
2062
  } catch (e) {
2059
- Ht("Error closing WebSocket:", e.message);
2063
+ qt("Error closing WebSocket:", e.message);
2060
2064
  }
2061
2065
  } else zt("WebSocket is already closed or in the process of closing.");
2062
2066
  }
@@ -2077,18 +2081,18 @@ var gobjJs = function(e) {
2077
2081
  return function(e, t) {
2078
2082
  let n = e.priv, r = JSON.stringify(t);
2079
2083
  if (st(Ce(), "trace_inter_event")) {
2080
- let n = at(e, "url"), o = Fe(Ce()) + " ==> " + n, l = lt(Ce(), "trace_ievent_callback");
2081
- l ? l(o, t, 1, r.length) : Kr(0, o, t);
2084
+ let n = at(e, "url"), o = Fe(Ce()) + " ==> " + n, i = it(Ce(), "trace_ievent_callback");
2085
+ i ? i(o, t, 1, r.length) : Kr(0, o, t);
2082
2086
  }
2083
2087
  if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return zt(`${Ve(e)}: send_iev(): websocket not open, message lost`), -1;
2084
2088
  try {
2085
2089
  n.websocket.send(r);
2086
2090
  } catch (t) {
2087
- Ht(`${Ve(e)}: send_iev(): ${t}`);
2091
+ qt(`${Ve(e)}: send_iev(): ${t}`);
2088
2092
  }
2089
2093
  return 0;
2090
2094
  }(e, function(e, t) {
2091
- return Sn(e) ? (Ht("iev_create() event NULL"), null) : new xr(e, t);
2095
+ return Sn(e) ? (qt("iev_create() event NULL"), null) : new xr(e, t);
2092
2096
  }(t, n));
2093
2097
  }
2094
2098
  function Br(e, t, n) {
@@ -2103,16 +2107,16 @@ var gobjJs = function(e) {
2103
2107
  };
2104
2108
  }
2105
2109
  function Jr(e) {
2106
- let t = e.priv, n = $e(Ce()), r = at(Ce(), "yuno_version"), o = at(Ce(), "yuno_release"), l = at(Ce(), "yuno_tag"), s = lt(e, "required_services");
2107
- s && s.length || (s = lt(Ce(), "required_services"));
2110
+ let t = e.priv, n = $e(Ce()), r = at(Ce(), "yuno_version"), o = at(Ce(), "yuno_release"), i = at(Ce(), "yuno_tag"), s = it(e, "required_services");
2111
+ s && s.length || (s = it(Ce(), "required_services"));
2108
2112
  let _ = {
2109
2113
  yuno_role: Pe(),
2110
2114
  yuno_id: Ue(),
2111
2115
  yuno_name: Le(),
2112
- yuno_tag: l,
2116
+ yuno_tag: i,
2113
2117
  yuno_version: r,
2114
2118
  yuno_release: o,
2115
- yuneta_version: i,
2119
+ yuneta_version: l,
2116
2120
  playing: n,
2117
2121
  pid: 0,
2118
2122
  watcher_pid: 0,
@@ -2127,13 +2131,13 @@ var gobjJs = function(e) {
2127
2131
  };
2128
2132
  return er(e, _, Ur, Br(e, Fe(We(e)), null)), nr(e, _, "__identity__"), Dr(t.gobj_timer, _t(e, "timeout_idack")), Yr(e, "EV_IDENTITY_CARD", _);
2129
2133
  }
2130
- function qr(e, t) {
2134
+ function Hr(e, t) {
2131
2135
  if (Sn(t.event)) return -1;
2132
- let n = {}, r = t.__global__, o = t.__config__, l = t.__filter__, i = t.__service__, s = t.subscriber;
2133
- o && (n.__config__ = o), r && (n.__global__ = r), l && (n.__filter__ = l);
2134
- return er(e, n, Ur, Br(e, Fe(s), i)), nr(e, n, "__subscribing__"), Yr(e, t.event, n);
2136
+ let n = {}, r = t.__global__, o = t.__config__, i = t.__filter__, l = t.__service__, s = t.subscriber;
2137
+ o && (n.__config__ = o), r && (n.__global__ = r), i && (n.__filter__ = i);
2138
+ return er(e, n, Ur, Br(e, Fe(s), l)), nr(e, n, "__subscribing__"), Yr(e, t.event, n);
2135
2139
  }
2136
- function Hr(e, t, n, r) {
2140
+ function qr(e, t, n, r) {
2137
2141
  let o = e.priv;
2138
2142
  return Ae(e) && (o.websocket = Mr(e)), 0;
2139
2143
  }
@@ -2141,26 +2145,26 @@ var gobjJs = function(e) {
2141
2145
  return Qt("Websocket opened: " + e.priv.url), Jr(e), 0;
2142
2146
  }
2143
2147
  function Qr(e, t, n, r) {
2144
- let o = e.priv, l = n.e, i = n.url;
2145
- return Jt(), zt(`${Ve(e)}: WebSocket closed ${i} (Code: ${l.code}, Reason: "${l.reason}", Clean: ${l.wasClean})`), o.websocket && (o.websocket.onopen = null, o.websocket.onmessage = null, o.websocket.onerror = null, o.websocket.onclose = null, o.websocket = null), o.inform_on_close ? (o.inform_on_close = !1, Ct(e, "EV_ON_CLOSE", {
2146
- url: i,
2148
+ let o = e.priv, i = n.e, l = n.url;
2149
+ return Jt(), zt(`${Ve(e)}: WebSocket closed ${l} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), o.websocket && (o.websocket.onopen = null, o.websocket.onmessage = null, o.websocket.onerror = null, o.websocket.onclose = null, o.websocket = null), o.inform_on_close ? (o.inform_on_close = !1, Ct(e, "EV_ON_CLOSE", {
2150
+ url: l,
2147
2151
  remote_yuno_name: o.remote_yuno_name,
2148
2152
  remote_yuno_role: o.remote_yuno_role,
2149
2153
  remote_yuno_service: o.remote_yuno_service
2150
- })) : (zt(`${Ve(e)}: EV_ON_OPEN_ERROR cannot open ${i} (Code: ${l.code}, Reason: "${l.reason}", Clean: ${l.wasClean})`), Ct(e, "EV_ON_OPEN_ERROR", {
2151
- url: i,
2154
+ })) : (zt(`${Ve(e)}: EV_ON_OPEN_ERROR cannot open ${l} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), Ct(e, "EV_ON_OPEN_ERROR", {
2155
+ url: l,
2152
2156
  remote_yuno_name: o.remote_yuno_name,
2153
2157
  remote_yuno_role: o.remote_yuno_role,
2154
2158
  remote_yuno_service: o.remote_yuno_service,
2155
- code: l.code,
2156
- reason: l.reason,
2157
- was_clean: l.wasClean
2159
+ code: i.code,
2160
+ reason: i.reason,
2161
+ was_clean: i.wasClean
2158
2162
  })), Ae(e) && Dr(o.gobj_timer, function(e) {
2159
2163
  let t = e.priv, n = _t(e, "timeout_retry"), r = _t(e, "timeout_retry_max");
2160
2164
  r < n && (r = n);
2161
2165
  t.retry_ms = t.retry_ms ? Math.min(2 * t.retry_ms, r) : n;
2162
- let o = .2 * t.retry_ms, l = t.retry_ms - o + 2 * Math.random() * o;
2163
- return Math.max(1, Math.round(l));
2166
+ let o = .2 * t.retry_ms, i = t.retry_ms - o + 2 * Math.random() * o;
2167
+ return Math.max(1, Math.round(i));
2164
2168
  }(e)), 0;
2165
2169
  }
2166
2170
  function Xr(e, t, n, r) {
@@ -2169,8 +2173,8 @@ var gobjJs = function(e) {
2169
2173
  function Zr(e, t, n, r) {
2170
2174
  let o = e.priv;
2171
2175
  kr(o.gobj_timer);
2172
- let l = tr(e, n, Ur, !0), i = Ln(e, l, "src_yuno", ""), s = Ln(e, l, "src_role", ""), _ = Ln(e, l, "src_service", "");
2173
- dt(e, "remote_yuno_name", i), dt(e, "remote_yuno_role", s), dt(e, "remote_yuno_service", _);
2176
+ let i = tr(e, n, Ur, !0), l = Ln(e, i, "src_yuno", ""), s = Ln(e, i, "src_role", ""), _ = Ln(e, i, "src_service", "");
2177
+ dt(e, "remote_yuno_name", l), dt(e, "remote_yuno_role", s), dt(e, "remote_yuno_service", _);
2174
2178
  let a = Cn(e, n, "result", -1, 0), u = Ln(e, n, "comment", "", 0), c = Ln(e, n, "username", "", 0), f = Fn(e, n, "services_roles", {});
2175
2179
  if (a < 0) {
2176
2180
  Wr(e);
@@ -2179,7 +2183,7 @@ var gobjJs = function(e) {
2179
2183
  result: a,
2180
2184
  comment: u,
2181
2185
  username: c,
2182
- remote_yuno_name: i,
2186
+ remote_yuno_name: l,
2183
2187
  remote_yuno_role: s,
2184
2188
  remote_yuno_service: _
2185
2189
  };
@@ -2189,7 +2193,7 @@ var gobjJs = function(e) {
2189
2193
  o.inform_on_close = !0;
2190
2194
  let t = {
2191
2195
  username: c,
2192
- remote_yuno_name: i,
2196
+ remote_yuno_name: l,
2193
2197
  remote_yuno_role: s,
2194
2198
  remote_yuno_service: _,
2195
2199
  services_roles: f
@@ -2198,52 +2202,52 @@ var gobjJs = function(e) {
2198
2202
  }
2199
2203
  o.inside_on_open = !1, function(e) {
2200
2204
  let t = It(e, null, null, null);
2201
- for (let n = 0; n < t.length; n++) qr(e, t[n]);
2205
+ for (let n = 0; n < t.length; n++) Hr(e, t[n]);
2202
2206
  }(e);
2203
2207
  }
2204
2208
  return 0;
2205
2209
  }
2206
2210
  function eo(e, t, n, r) {
2207
- let o = e.priv.url, l = function(e, t) {
2211
+ let o = e.priv.url, i = function(e, t) {
2208
2212
  let n;
2209
2213
  try {
2210
2214
  n = JSON.parse(t);
2211
2215
  } catch (e) {
2212
- return Ht("parsing inter_event json: " + e), null;
2216
+ return qt("parsing inter_event json: " + e), null;
2213
2217
  }
2214
- if (!(n instanceof Object)) return Ht("parsing inter_event: websocket data not a json object"), null;
2218
+ if (!(n instanceof Object)) return qt("parsing inter_event: websocket data not a json object"), null;
2215
2219
  let r = n.event;
2216
- if (!r) return Ht("parsing inter_event: no event"), null;
2217
- if ("string" != typeof r) return Ht("parsing inter_event: event not a string"), null;
2220
+ if (!r) return qt("parsing inter_event: no event"), null;
2221
+ if ("string" != typeof r) return qt("parsing inter_event: event not a string"), null;
2218
2222
  let o = n.kw;
2219
2223
  return o ? o instanceof Object ? {
2220
2224
  event: r,
2221
2225
  kw: o || {}
2222
- } : (Ht("parsing inter_event: kw not a json object"), null) : (Ht("parsing inter_kw: no kw"), null);
2226
+ } : (qt("parsing inter_event: kw not a json object"), null) : (qt("parsing inter_kw: no kw"), null);
2223
2227
  }(0, n.data);
2224
2228
  if (st(Ce(), "trace_inter_event")) {
2225
- let e = Fe(Ce()) + " <== " + o, t = n.data.length, r = lt(Ce(), "trace_ievent_callback");
2226
- r ? r(e, l, 2, t) : Kr(0, e, l);
2229
+ let e = Fe(Ce()) + " <== " + o, t = n.data.length, r = it(Ce(), "trace_ievent_callback");
2230
+ r ? r(e, i, 2, t) : Kr(0, e, i);
2227
2231
  }
2228
- let i = l.event, s = l.kw;
2232
+ let l = i.event, s = i.kw;
2229
2233
  if ("ST_SESSION" !== pt(e)) {
2230
- if (Et(e, i, D.EVF_PUBLIC_EVENT)) {
2231
- if (!(vt(e, i, s, e) < 0)) return 0;
2232
- } else Ht(`${Ve(e)}: event UNKNOWN in not-session state ${i}`);
2234
+ if (Et(e, l, D.EVF_PUBLIC_EVENT)) {
2235
+ if (!(vt(e, l, s, e) < 0)) return 0;
2236
+ } else qt(`${Ve(e)}: event UNKNOWN in not-session state ${l}`);
2233
2237
  return Wr(e), -1;
2234
2238
  }
2235
- l = null;
2239
+ i = null;
2236
2240
  let _ = rr(e, s), a = tr(e, s, Ur), u = Ln(e, a, "dst_role", "");
2237
- if (u.toLowerCase() !== Pe().toLowerCase()) return Ht(`"It's not my role, dst_role: ${u}, my_role: ${Pe()}`), 0;
2241
+ if (u.toLowerCase() !== Pe().toLowerCase()) return qt(`"It's not my role, dst_role: ${u}, my_role: ${Pe()}`), 0;
2238
2242
  let c = Ln(e, a, "dst_service", "");
2239
2243
  if ("__subscribing__" === _) return -1;
2240
2244
  if ("__unsubscribing__" === _) return -1;
2241
- if (Et(e, i, D.EVF_PUBLIC_EVENT)) return vt(e, i, s, e), 0;
2245
+ if (Et(e, l, D.EVF_PUBLIC_EVENT)) return vt(e, l, s, e), 0;
2242
2246
  if (!Sn(c)) {
2243
2247
  let t = ge(c, !1);
2244
- return t ? Et(t, i, D.EVF_PUBLIC_EVENT) ? (vt(t, i, s, e), 0) : (Ht(`${Ve(e)}: Service found but no event or not public, service '${Ve(t)}', ev '${i}'`), -1) : (zt(`${Ve(e)}: event for a service that is gone, DROPPED: service '${c}', ev '${i}'`), 0);
2248
+ return t ? Et(t, l, D.EVF_PUBLIC_EVENT) ? (vt(t, l, s, e), 0) : (qt(`${Ve(e)}: Service found but no event or not public, service '${Ve(t)}', ev '${l}'`), -1) : (zt(`${Ve(e)}: event for a service that is gone, DROPPED: service '${c}', ev '${l}'`), 0);
2245
2249
  }
2246
- return xe(e) ? vt(We(e), i, s, e) : Ct(e, i, s), 0;
2250
+ return xe(e) ? vt(We(e), l, s, e) : Ct(e, l, s), 0;
2247
2251
  }
2248
2252
  function to(e, t, n, r) {
2249
2253
  return 0;
@@ -2283,21 +2287,21 @@ var gobjJs = function(e) {
2283
2287
  },
2284
2288
  mt_destroy: function(e) {},
2285
2289
  mt_stats: function(e, t, n, r) {
2286
- if ("ST_SESSION" !== pt(e)) return Ht("Not in session"), null;
2290
+ if ("ST_SESSION" !== pt(e)) return qt("Not in session"), null;
2287
2291
  n || (n = {});
2288
- let o = Br(e, Fe(r), Ln(e, n, "service", null, 0)), l = Fn(e, n, "__md_stats__", null, Lt.KW_EXTRACT);
2289
- return l || (l = {}), er(e, n, "stats_stack", {
2292
+ let o = Br(e, Fe(r), Ln(e, n, "service", null, 0)), i = Fn(e, n, "__md_stats__", null, Lt.KW_EXTRACT);
2293
+ return i || (i = {}), er(e, n, "stats_stack", {
2290
2294
  stats: t,
2291
- kw: l
2295
+ kw: i
2292
2296
  }), er(e, n, Ur, o), n.__stats__ = t, nr(e, n, "__stats__"), Yr(e, "EV_MT_STATS", n, r), null;
2293
2297
  },
2294
2298
  mt_command_parser: function(e, t, n, r) {
2295
- if ("ST_SESSION" !== pt(e)) return Ht("Not in session"), null;
2299
+ if ("ST_SESSION" !== pt(e)) return qt("Not in session"), null;
2296
2300
  n || (n = {});
2297
- let o = Br(e, Fe(r), Ln(e, n, "service", "", 0)), l = Fn(e, n, "__md_command__", null, Lt.KW_EXTRACT);
2298
- return l || (l = {}), er(e, n, "command_stack", {
2301
+ let o = Br(e, Fe(r), Ln(e, n, "service", "", 0)), i = Fn(e, n, "__md_command__", null, Lt.KW_EXTRACT);
2302
+ return i || (i = {}), er(e, n, "command_stack", {
2299
2303
  command: t,
2300
- kw: l
2304
+ kw: i
2301
2305
  }), er(e, n, Ur, o), n.__command__ = t, nr(e, n, "__command__"), Yr(e, "EV_MT_COMMAND", n, r), null;
2302
2306
  },
2303
2307
  mt_inject_event: function(e, t, n, r) {
@@ -2311,19 +2315,19 @@ var gobjJs = function(e) {
2311
2315
  },
2312
2316
  mt_subscription_added: function(e, t) {
2313
2317
  let n = e.priv;
2314
- return "ST_SESSION" === pt(e) && n.websocket ? n.inside_on_open ? 0 : qr(e, t) : 0;
2318
+ return "ST_SESSION" === pt(e) && n.websocket ? n.inside_on_open ? 0 : Hr(e, t) : 0;
2315
2319
  },
2316
2320
  mt_subscription_deleted: function(e, t) {
2317
2321
  let n = e.priv;
2318
2322
  if ("ST_SESSION" !== pt(e) || !n.websocket) return 0;
2319
2323
  if (n.inside_on_open) return 0;
2320
2324
  if (Sn(t.event)) return 0;
2321
- let r = {}, o = t.__global__, l = t.__config__, i = t.__filter__, s = t.__service__, _ = t.subscriber;
2322
- l && (r.__config__ = l), o && (r.__global__ = o), i && (r.__filter__ = i);
2325
+ let r = {}, o = t.__global__, i = t.__config__, l = t.__filter__, s = t.__service__, _ = t.subscriber;
2326
+ i && (r.__config__ = i), o && (r.__global__ = o), l && (r.__filter__ = l);
2323
2327
  return er(e, r, Ur, Br(e, Fe(_), s)), nr(e, r, "__unsubscribing__"), Yr(e, t.event, r, e);
2324
2328
  }
2325
2329
  };
2326
- return e.GObj = O, e.SDATA = v, e.SDATAAUTHZ = (e, t, n, r, o, l) => new y(e, t, n, null, l, r, null, 0, null, o, null), e.SDATACM = (e, t, n, r, o, l) => new y(e, t, 0, null, l, n, null, 0, o, r, null), e.SDATACM2 = (e, t, n, r, o, l, i) => new y(e, t, n, null, i, r, null, 0, l, o, null), e.SDATADF = (e, t, n, r, o, l) => new y(e, t, n, null, l, null, r, o), e.SDATAPM = (e, t, n, r, o) => new y(e, t, n, r, o), e.SDATAPM0 = (e, t, n, r, o) => new y(e, t, n, null, o, null, null, 0, null, null, r), e.SDATA_END = j, e.SDataDesc = y, e.YUNETA_VERSION = i, Object.defineProperty(e, "__yuno__", {
2330
+ return e.GObj = O, e.SDATA = v, e.SDATAAUTHZ = (e, t, n, r, o, i) => new y(e, t, n, null, i, r, null, 0, null, o, null), e.SDATACM = (e, t, n, r, o, i) => new y(e, t, 0, null, i, n, null, 0, o, r, null), e.SDATACM2 = (e, t, n, r, o, i, l) => new y(e, t, n, null, l, r, null, 0, i, o, null), e.SDATADF = (e, t, n, r, o, i) => new y(e, t, n, null, i, null, r, o), e.SDATAPM = (e, t, n, r, o) => new y(e, t, n, r, o), e.SDATAPM0 = (e, t, n, r, o) => new y(e, t, n, null, o, null, null, 0, null, null, r), e.SDATA_END = j, e.SDataDesc = y, e.YUNETA_VERSION = l, Object.defineProperty(e, "__yuno__", {
2327
2331
  enumerable: !0,
2328
2332
  get: function() {
2329
2333
  return p;
@@ -2332,25 +2336,25 @@ var gobjJs = function(e) {
2332
2336
  let t = "", n = 0;
2333
2337
  for (let r of e) null != r && "" !== r && (r = String(r), r = 0 === n ? r.replace(/\/+$/, "") : r.replace(/^\/+/, "").replace(/\/+$/, ""), "" !== r && (n > 0 && (t += "/"), t += r, n++));
2334
2338
  return t;
2335
- }, e.build_stats_response = l, e.clean_name = function(e) {
2339
+ }, e.build_stats_response = i, e.clean_name = function(e) {
2336
2340
  return e.replace(/[?# ^:]/g, "_");
2337
2341
  }, e.clear_timeout = kr, e.cmp_two_simple_json = Rn, e.command_parser = function(e, t, n, r) {}, e.createElement2 = function e(t, n) {
2338
- let [r, o, l, i] = t;
2339
- if (!r) return void Ht("Tag must be a valid HTML element.");
2342
+ let [r, o, i, l] = t;
2343
+ if (!r) return void qt("Tag must be a valid HTML element.");
2340
2344
  let s = document.createElement(r), _ = "";
2341
2345
  if (o && "object" == typeof o) for (let e of Object.keys(o)) if ("style" === e && "object" == typeof o[e]) {
2342
2346
  let t = "";
2343
2347
  for (const n of Object.keys(o[e])) t += `${n}: ${o[e][n]};`;
2344
2348
  s.style.cssText = t;
2345
2349
  } else "style" === e ? s.style.cssText = o[e] : "i18n" === e || "data-i18n" === e || "data_i18next" === e || "data-i18next" === e ? null !== o[e] && void 0 !== o[e] && (_ = o[e], s.setAttribute("data-i18n", _)) : s.setAttribute(e, o[e]);
2346
- if (En(l)) if (l = l.trim(), l.length > 0 && "<" === l[0]) s.appendChild(_r(l));
2347
- else if (n && _) s.textContent = n(_) || l;
2348
- else s.textContent = l;
2349
- else if (mn(l)) {
2350
- if (l.length > 0) if (En(l[0])) s.appendChild(e(l, n));
2351
- else for (let t of l) Array.isArray(t) && t.length > 0 ? s.appendChild(e(t, n)) : t instanceof HTMLElement && s.appendChild(t);
2352
- } else l instanceof HTMLElement || l instanceof Text || l instanceof SVGElement ? s.appendChild(l) : null != l && (Ht("content ignored"), Zt(l));
2353
- if (i && "object" == typeof i) for (const e of Object.keys(i)) s.addEventListener(e, i[e]);
2350
+ if (En(i)) if (i = i.trim(), i.length > 0 && "<" === i[0]) s.appendChild(_r(i));
2351
+ else if (n && _) s.textContent = n(_) || i;
2352
+ else s.textContent = i;
2353
+ else if (mn(i)) {
2354
+ if (i.length > 0) if (En(i[0])) s.appendChild(e(i, n));
2355
+ else for (let t of i) Array.isArray(t) && t.length > 0 ? s.appendChild(e(t, n)) : t instanceof HTMLElement && s.appendChild(t);
2356
+ } else i instanceof HTMLElement || i instanceof Text || i instanceof SVGElement ? s.appendChild(i) : null != i && (qt("content ignored"), Zt(i));
2357
+ if (l && "object" == typeof l) for (const e of Object.keys(l)) s.addEventListener(e, l[e]);
2354
2358
  return s;
2355
2359
  }, e.createOneHtml = _r, e.create_json_record = function(e, t) {
2356
2360
  let n = en(e);
@@ -2360,14 +2364,14 @@ var gobjJs = function(e) {
2360
2364
  return t || (t = {}), Object.entries(e).forEach(([e, r]) => {
2361
2365
  let o;
2362
2366
  pn(r) && (o = r.default);
2363
- let l = Fn(null, t, e, o);
2364
- n[e] = l;
2367
+ let i = Fn(null, t, e, o);
2368
+ n[e] = i;
2365
2369
  }), n;
2366
2370
  }, e.current_timestamp = ar, e.data_type_t = T, e.db_list_persistent_attrs = function(e, t) {
2367
2371
  let n = Yn(Er(e), null, !1), r = {};
2368
2372
  return n && pn(n) && (r = Kn(e, n, t, !1)), r;
2369
2373
  }, e.db_load_persistent_attrs = function(e, t) {
2370
- let n = it(e, h.SDF_PERSIST), r = Yn(Er(e), null, !1);
2374
+ let n = lt(e, h.SDF_PERSIST), r = Yn(Er(e), null, !1);
2371
2375
  if (r && pn(r)) {
2372
2376
  let o = Kn(e, r, t, !1);
2373
2377
  o = Kn(e, o, n, !1), ct(e, o, h.SDF_PERSIST);
@@ -2376,22 +2380,22 @@ var gobjJs = function(e) {
2376
2380
  let n = xn(e, Yn(Er(e), null, !1), t, !1);
2377
2381
  0 === gn(n) ? Jn(Er(e)) : Bn(Er(e), n);
2378
2382
  }, e.db_save_persistent_attrs = function(e, t) {
2379
- let n = Kn(e, it(e, h.SDF_PERSIST), t, !1), r = Yn(Er(e), null, !1);
2383
+ let n = Kn(e, lt(e, h.SDF_PERSIST), t, !1), r = Yn(Er(e), null, !1);
2380
2384
  return r && pn(r) && on(n, r), Bn(Er(e), n);
2381
2385
  }, e.debounce = function(e, t = 0, n = !1) {
2382
- let r = null, o = null, l = null;
2383
- const i = (...i) => {
2384
- l = this, o = i;
2386
+ let r = null, o = null, i = null;
2387
+ const l = (...l) => {
2388
+ i = this, o = l;
2385
2389
  const s = n && !r;
2386
2390
  clearTimeout(r), r = setTimeout(() => {
2387
- r = null, n || e.apply(l, o);
2388
- }, t), s && e.apply(l, o);
2391
+ r = null, n || e.apply(i, o);
2392
+ }, t), s && e.apply(i, o);
2389
2393
  };
2390
- return i.flush = () => {
2391
- r && (clearTimeout(r), r = null, e.apply(l, o));
2392
- }, i.cancel = () => {
2393
- clearTimeout(r), r = null, o = null, l = null;
2394
- }, i;
2394
+ return l.flush = () => {
2395
+ r && (clearTimeout(r), r = null, e.apply(i, o));
2396
+ }, l.cancel = () => {
2397
+ clearTimeout(r), r = null, o = null, i = null;
2398
+ }, l;
2395
2399
  }, e.delete_from_list = function(e, t) {
2396
2400
  for (let n = 0; n < e.length; n++) if (t === e[n]) return e.splice(n, 1), !0;
2397
2401
  return !1;
@@ -2414,29 +2418,29 @@ var gobjJs = function(e) {
2414
2418
  const o = "number" == typeof r[0];
2415
2419
  if (null === t) t = o ? [] : {};
2416
2420
  else if (o !== Array.isArray(t)) throw new Error(`flat2json: '${n}' does not fit a ${Array.isArray(t) ? "array" : "object"} root`);
2417
- let l = t;
2421
+ let i = t;
2418
2422
  for (let t = 0; t < r.length; t++) {
2419
- const o = r[t], i = "number" == typeof o, s = t === r.length - 1, _ = !s && "number" == typeof r[t + 1];
2420
- if (i && o > dr) throw new Error(`flat2json: array index ${o} over the limit (100000) in '${n}'`);
2421
- if (i !== Array.isArray(l)) throw new Error(`flat2json: '${n}' uses a ${i ? "array index" : "key"} where the tree already has a ${Array.isArray(l) ? "array" : "object"}`);
2423
+ const o = r[t], l = "number" == typeof o, s = t === r.length - 1, _ = !s && "number" == typeof r[t + 1];
2424
+ if (l && o > dr) throw new Error(`flat2json: array index ${o} over the limit (100000) in '${n}'`);
2425
+ if (l !== Array.isArray(i)) throw new Error(`flat2json: '${n}' uses a ${l ? "array index" : "key"} where the tree already has a ${Array.isArray(i) ? "array" : "object"}`);
2422
2426
  if (s) {
2423
- if (Array.isArray(l)) {
2424
- for (; l.length <= o;) l.push(null);
2425
- l[o] = e[n];
2427
+ if (Array.isArray(i)) {
2428
+ for (; i.length <= o;) i.push(null);
2429
+ i[o] = e[n];
2426
2430
  } else {
2427
- if (Object.prototype.hasOwnProperty.call(l, o)) throw new Error(`flat2json: '${n}' is written twice, or once as a value and once as a container`);
2428
- l[o] = e[n];
2431
+ if (Object.prototype.hasOwnProperty.call(i, o)) throw new Error(`flat2json: '${n}' is written twice, or once as a value and once as a container`);
2432
+ i[o] = e[n];
2429
2433
  }
2430
2434
  break;
2431
2435
  }
2432
2436
  let a;
2433
- if (Array.isArray(l)) {
2434
- for (; l.length <= o;) l.push(null);
2435
- a = l[o], null == a && (a = _ ? [] : {}, l[o] = a);
2436
- } else a = l[o], void 0 === a && (a = _ ? [] : {}, l[o] = a);
2437
+ if (Array.isArray(i)) {
2438
+ for (; i.length <= o;) i.push(null);
2439
+ a = i[o], null == a && (a = _ ? [] : {}, i[o] = a);
2440
+ } else a = i[o], void 0 === a && (a = _ ? [] : {}, i[o] = a);
2437
2441
  if (null === a || "object" != typeof a) throw new Error(`flat2json: '${n}' walks through a value: the same id is a leaf and a container at once`);
2438
2442
  if (_ !== Array.isArray(a)) throw new Error(`flat2json: '${n}' needs a ${_ ? "array" : "object"} where the tree already has a ${Array.isArray(a) ? "array" : "object"}`);
2439
- l = a;
2443
+ i = a;
2440
2444
  }
2441
2445
  }
2442
2446
  return null === t ? {} : t;
@@ -2465,7 +2469,7 @@ var gobjJs = function(e) {
2465
2469
  return o;
2466
2470
  }, e.flat_key_join = function(e) {
2467
2471
  return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : br(e)).join("`") : "";
2468
- }, e.flat_key_split = pr, e.gclass_add_ev_action = ie, e.gclass_add_event_type = _e, e.gclass_add_state = le, e.gclass_check_fsm = ue, e.gclass_create = te, e.gclass_event_type = ae, e.gclass_find_by_name = ce, e.gclass_flag_t = N, e.gclass_unregister = ne, e.getPositionRelativeToBody = function(e) {
2472
+ }, e.flat_key_split = pr, e.gclass_add_ev_action = le, e.gclass_add_event_type = _e, e.gclass_add_state = ie, e.gclass_check_fsm = ue, e.gclass_create = te, e.gclass_event_type = ae, e.gclass_find_by_name = ce, e.gclass_flag_t = N, e.gclass_unregister = ne, e.getPositionRelativeToBody = function(e) {
2469
2473
  if (!e) return {
2470
2474
  top: 0,
2471
2475
  left: 0,
@@ -2477,21 +2481,21 @@ var gobjJs = function(e) {
2477
2481
  left: 0,
2478
2482
  width: 0,
2479
2483
  height: 0
2480
- }, l = "undefined" != typeof window, i = l && (window.scrollY || document.documentElement?.scrollTop || document.body?.scrollTop) || 0, s = l && (window.scrollX || document.documentElement?.scrollLeft || document.body?.scrollLeft) || 0;
2484
+ }, i = "undefined" != typeof window, l = i && (window.scrollY || document.documentElement?.scrollTop || document.body?.scrollTop) || 0, s = i && (window.scrollX || document.documentElement?.scrollLeft || document.body?.scrollLeft) || 0;
2481
2485
  return {
2482
- top: t + i,
2486
+ top: t + l,
2483
2487
  left: n + s,
2484
2488
  right: n + s + r,
2485
- bottom: t + i + o
2489
+ bottom: t + l + o
2486
2490
  };
2487
2491
  }, e.get_function_name = fr, e.get_now = function() {
2488
2492
  return Math.floor(Date.now() / 1e3);
2489
2493
  }, e.gobj_bottom_gobj = Be, e.gobj_change_parent = function(e, t) {
2490
- return Ye(e) ? (Ht("gobj NULL or DESTROYED"), null) : t instanceof O ? (e.parent && e.parent.mt_child_removed && e.parent.mt_child_removed(e.parent, e), e.parent && (pe(e.parent, e), e.parent = null), be(t, e), t.mt_child_added && (Y(e) && Qt(n("👦👦🔵 child_added(%s): %s", Me(t), Ve(e))), t.mt_child_added(t, e)), 0) : (Ht(`${Ve(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
2491
- }, e.gobj_change_state = bt, e.gobj_command = function(e, t, r, l) {
2492
- if (Ye(e)) return Ht("gobj NULL or DESTROYED"), -1;
2493
- let i = p && _t(p, "tracing");
2494
- return i && (L(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", Ae(e) ? "" : "!!", Ve(e), t, Ve(l))), i > 1 && Zt(r)), e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, t, r, l) : e.gclass.command_table ? c ? c(e, t, r, l) : o(0, -1, n("%s: global command parser not available", Ve(e)), 0, 0) : o(0, -1, n("%s: command table not available", Ve(e)), 0, 0);
2494
+ return Ye(e) ? (qt("gobj NULL or DESTROYED"), null) : t instanceof O ? (e.parent && e.parent.mt_child_removed && e.parent.mt_child_removed(e.parent, e), e.parent && (pe(e.parent, e), e.parent = null), be(t, e), t.mt_child_added && (Y(e) && Qt(n("👦👦🔵 child_added(%s): %s", Me(t), Ve(e))), t.mt_child_added(t, e)), 0) : (qt(`${Ve(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
2495
+ }, e.gobj_change_state = bt, e.gobj_command = function(e, t, r, i) {
2496
+ if (Ye(e)) return qt("gobj NULL or DESTROYED"), -1;
2497
+ let l = p && _t(p, "tracing");
2498
+ return l && (L(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", Ae(e) ? "" : "!!", Ve(e), t, Ve(i))), l > 1 && Zt(r)), e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, t, r, i) : e.gclass.command_table ? c ? c(e, t, r, i) : o(0, -1, n("%s: global command parser not available", Ve(e)), 0, 0) : o(0, -1, n("%s: command table not available", Ve(e)), 0, 0);
2495
2499
  }, e.gobj_create = function(e, t, n, r) {
2496
2500
  return Te(e, t, n, r, 0);
2497
2501
  }, e.gobj_create2 = Te, e.gobj_create_default_service = function(e, t, n, r) {
@@ -2513,13 +2517,13 @@ var gobjJs = function(e) {
2513
2517
  }, e.gobj_list_subscriptions = function(e) {
2514
2518
  let t = It(e, null, null, null);
2515
2519
  for (let n = 0; n < t.length; n++) {
2516
- let r = t[n], o = Pn(e, r, "publisher", null, Lt.KW_REQUIRED), l = Pn(e, r, "subscriber", null, Lt.KW_REQUIRED);
2517
- an(r, "s_event", Ln(e, r, "event", "", Lt.KW_REQUIRED)), an(r, "s_publisher", Ve(o)), an(r, "s_subscriber", Ve(l));
2520
+ let r = t[n], o = Pn(e, r, "publisher", null, Lt.KW_REQUIRED), i = Pn(e, r, "subscriber", null, Lt.KW_REQUIRED);
2521
+ an(r, "s_event", Ln(e, r, "event", "", Lt.KW_REQUIRED)), an(r, "s_publisher", Ve(o)), an(r, "s_subscriber", Ve(i));
2518
2522
  }
2519
2523
  let n = $t(e, 0, null, 0);
2520
2524
  for (let t = 0; t < n.length; t++) {
2521
- let r = n[t], o = Pn(e, r, "publisher", null, Lt.KW_REQUIRED), l = Pn(e, r, "subscriber", null, Lt.KW_REQUIRED);
2522
- an(r, "s_event", Ln(e, r, "event", "", Lt.KW_REQUIRED)), an(r, "s_publisher", Ve(o)), an(r, "s_subscriber", Ve(l));
2525
+ let r = n[t], o = Pn(e, r, "publisher", null, Lt.KW_REQUIRED), i = Pn(e, r, "subscriber", null, Lt.KW_REQUIRED);
2526
+ an(r, "s_event", Ln(e, r, "event", "", Lt.KW_REQUIRED)), an(r, "s_publisher", Ve(o)), an(r, "s_subscriber", Ve(i));
2523
2527
  }
2524
2528
  return {
2525
2529
  subscriptions: t,
@@ -2528,9 +2532,9 @@ var gobjJs = function(e) {
2528
2532
  total_subscribings: dn(n)
2529
2533
  };
2530
2534
  }, e.gobj_load_persistent_attrs = function(e, t) {
2531
- return Ie(e) ? s ? s(e, t) : -1 : (Ht(`${Ve(e)}: Only gobj services can load/save writable-persistent`), -1);
2535
+ return Ie(e) ? s ? s(e, t) : -1 : (qt(`${Ve(e)}: Only gobj services can load/save writable-persistent`), -1);
2532
2536
  }, e.gobj_match_children = function(e, t) {
2533
- if (Ye(e)) return Ht("gobj NULL or DESTROYED"), null;
2537
+ if (Ye(e)) return qt("gobj NULL or DESTROYED"), null;
2534
2538
  t = t || {};
2535
2539
  let n = [];
2536
2540
  const r = e.dl_children;
@@ -2545,21 +2549,21 @@ var gobjJs = function(e) {
2545
2549
  return function e(n, r) {
2546
2550
  let o = r.dl_children;
2547
2551
  for (let r = 0; r < o.length; r++) {
2548
- let l = o[r];
2549
- tt(l, t) && n.push(l), e(n, l);
2552
+ let i = o[r];
2553
+ tt(i, t) && n.push(i), e(n, i);
2550
2554
  }
2551
2555
  }(n, e), n;
2552
2556
  }, e.gobj_match_gobj = tt, e.gobj_name = Fe, e.gobj_parent = We, e.gobj_pause = De, e.gobj_play = Re, e.gobj_post_event = function(e, t, r, o) {
2553
- return e && e instanceof O ? e.obflag & (R.obflag_destroyed | R.obflag_destroying) ? (Ht(`gobj_post_event(): gobj dst DESTROYING, event ${t}`), -1) : Sn(t) ? (Ht("gobj_post_event(): event EMPTY"), -1) : Et(e, t, 0) ? ht.length >= 1e4 ? (Ht(`gobj_post_event(): too many posted events, this is NOT a work queue, event ${t}, pending ${ht.length}`), -1) : (ht.push({
2557
+ return e && e instanceof O ? e.obflag & (R.obflag_destroyed | R.obflag_destroying) ? (qt(`gobj_post_event(): gobj dst DESTROYING, event ${t}`), -1) : Sn(t) ? (qt("gobj_post_event(): event EMPTY"), -1) : Et(e, t, 0) ? ht.length >= 1e4 ? (qt(`gobj_post_event(): too many posted events, this is NOT a work queue, event ${t}, pending ${ht.length}`), -1) : (ht.push({
2554
2558
  dst: e,
2555
2559
  event: t,
2556
2560
  kw: r,
2557
2561
  src: o
2558
- }), J(e, t) && !q(o, t) && L(n("📬 posted(%s%s), ev: %s, pending: %d", e.running ? "" : "!!", Ve(e), t, ht.length)), yt || (yt = !0, setTimeout(jt, 0)), 0) : (Ht(`gobj_post_event(): event NOT DEFINED in gclass ${Ge(e)}, event ${t}`), -1) : (Ht(`gobj_post_event(): gobj dst NULL, event ${t}`), -1);
2562
+ }), J(e, t) && !H(o, t) && L(n("📬 posted(%s%s), ev: %s, pending: %d", e.running ? "" : "!!", Ve(e), t, ht.length)), yt || (yt = !0, setTimeout(jt, 0)), 0) : (qt(`gobj_post_event(): event NOT DEFINED in gclass ${Ge(e)}, event ${t}`), -1) : (qt(`gobj_post_event(): gobj dst NULL, event ${t}`), -1);
2559
2563
  }, e.gobj_posted_events_size = function() {
2560
2564
  return ht.length;
2561
- }, e.gobj_publish_event = Ct, e.gobj_read_attr = lt, e.gobj_read_attrs = it, e.gobj_read_bool_attr = st, e.gobj_read_integer_attr = _t, e.gobj_read_pointer_attr = ut, e.gobj_read_str_attr = at, e.gobj_remove_persistent_attrs = function(e, t) {
2562
- return Ie(e) ? a ? a(e, t) : -1 : (Ht(`${Ve(e)}: Only gobj services can load/save writable-persistent`), -1);
2565
+ }, e.gobj_publish_event = Ct, e.gobj_read_attr = it, e.gobj_read_attrs = lt, e.gobj_read_bool_attr = st, e.gobj_read_integer_attr = _t, e.gobj_read_pointer_attr = ut, e.gobj_read_str_attr = at, e.gobj_remove_persistent_attrs = function(e, t) {
2566
+ return Ie(e) ? a ? a(e, t) : -1 : (qt(`${Ve(e)}: Only gobj services can load/save writable-persistent`), -1);
2563
2567
  }, e.gobj_repr_global_trace_levels = function() {
2564
2568
  return U.map(([e, t, n]) => ({
2565
2569
  name: e,
@@ -2569,19 +2573,19 @@ var gobjJs = function(e) {
2569
2573
  }));
2570
2574
  }, e.gobj_reset_volatil_attrs = function(e) {
2571
2575
  return function(e, t, n) {
2572
- if (Ye(e)) return Ht("gobj NULL or DESTROYED"), -1;
2576
+ if (Ye(e)) return qt("gobj NULL or DESTROYED"), -1;
2573
2577
  let r = e.gclass.attrs_table;
2574
2578
  for (let o = 0; o < r.length; o++) {
2575
- const l = r[o];
2576
- if (l.name && !(n && l.flag & n) && (-1 === t || l.flag & t)) {
2577
- const t = z(e, e.jn_attrs, l);
2578
- pn(e.priv) && e.priv.hasOwnProperty(l.name) && (e.priv[l.name] = t), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, l.name);
2579
+ const i = r[o];
2580
+ if (i.name && !(n && i.flag & n) && (-1 === t || i.flag & t)) {
2581
+ const t = z(e, e.jn_attrs, i);
2582
+ pn(e.priv) && e.priv.hasOwnProperty(i.name) && (e.priv[i.name] = t), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, i.name);
2579
2583
  }
2580
2584
  }
2581
2585
  return 0;
2582
2586
  }(e, h.SDF_VOLATIL, 0);
2583
2587
  }, e.gobj_save_persistent_attrs = function(e, t) {
2584
- return Ie(e) ? _ ? _(e, t) : -1 : (Ht(`${Ve(e)}: Only gobj services can load/save writable-persistent`), -1);
2588
+ return Ie(e) ? _ ? _(e, t) : -1 : (qt(`${Ve(e)}: Only gobj services can load/save writable-persistent`), -1);
2585
2589
  }, e.gobj_search_path = rt, e.gobj_send_event = vt, e.gobj_services = function() {
2586
2590
  let e = [];
2587
2591
  for (const t of Object.keys(b)) cn(e, t);
@@ -2590,12 +2594,12 @@ var gobjJs = function(e) {
2590
2594
  return V = Number(e) || 0, 0;
2591
2595
  }, e.gobj_set_gclass_no_trace = function(e, t, n) {
2592
2596
  const r = En(e) ? ce(e) : e;
2593
- if (!r) return Ht(`gobj_set_gclass_no_trace: gclass NOT FOUND: ${e}`), -1;
2597
+ if (!r) return qt(`gobj_set_gclass_no_trace: gclass NOT FOUND: ${e}`), -1;
2594
2598
  const o = M(t, "gobj_set_gclass_no_trace");
2595
2599
  return o ? (n ? r.no_trace_level |= o : r.no_trace_level &= ~o, 0) : -1;
2596
2600
  }, e.gobj_set_gclass_trace = function(e, t, n) {
2597
2601
  const r = En(e) ? ce(e) : e;
2598
- if (!r) return Ht(`gobj_set_gclass_trace: gclass NOT FOUND: ${e}`), -1;
2602
+ if (!r) return qt(`gobj_set_gclass_trace: gclass NOT FOUND: ${e}`), -1;
2599
2603
  const o = M(t, "gobj_set_gclass_trace");
2600
2604
  return o ? (n ? r.trace_level |= o : r.trace_level &= ~o, 0) : -1;
2601
2605
  }, e.gobj_set_global_no_trace = function(e, t) {
@@ -2605,21 +2609,21 @@ var gobjJs = function(e) {
2605
2609
  const n = M(e, "gobj_set_global_trace");
2606
2610
  return n ? (t ? F |= n : F &= ~n, 0) : -1;
2607
2611
  }, e.gobj_set_gobj_no_trace = function(e, t, n) {
2608
- if (!e) return Ht("gobj_set_gobj_no_trace: gobj NULL"), -1;
2612
+ if (!e) return qt("gobj_set_gobj_no_trace: gobj NULL"), -1;
2609
2613
  const r = M(t, "gobj_set_gobj_no_trace");
2610
2614
  return r ? (n ? e.no_trace_level |= r : e.no_trace_level &= ~r, 0) : -1;
2611
2615
  }, e.gobj_set_gobj_trace = function(e, t, n) {
2612
- if (!e) return Ht("gobj_set_gobj_trace: gobj NULL"), -1;
2616
+ if (!e) return qt("gobj_set_gobj_trace: gobj NULL"), -1;
2613
2617
  const r = M(t, "gobj_set_gobj_trace");
2614
2618
  return r ? (n ? e.trace_level |= r : e.trace_level &= ~r, 0) : -1;
2615
2619
  }, e.gobj_set_trace_machine_format = function(e) {
2616
2620
  C = 1 === Number(e) ? 1 : 0;
2617
2621
  }, e.gobj_short_name = Ve, e.gobj_start = je, e.gobj_start_children = function(e) {
2618
- return Ye(e) ? (Ht("gobj NULL or DESTROYED"), -1) : He(e, A.WALK_FIRST2LAST, ve, 0, 0);
2622
+ return Ye(e) ? (qt("gobj NULL or DESTROYED"), -1) : qe(e, A.WALK_FIRST2LAST, ve, 0, 0);
2619
2623
  }, e.gobj_start_tree = function(e) {
2620
- return Ye(e) ? (Ht("gobj NULL or DESTROYED"), -1) : (B(e) && L(n("⏺ ⏺ ⏺ ⏺ start_tree: %s", Me(e))), e.gclass.gclass_flag & N.gcflag_manual_start || e.disabled ? 0 : (e.running || je(e), ze(e, A.WALK_TOP2BOTTOM, Se, 0, 0)));
2621
- }, e.gobj_start_up = function(e, t, n, r, o, l, i) {
2622
- s = t, _ = n, a = r, u = o, c = l, f = i;
2624
+ return Ye(e) ? (qt("gobj NULL or DESTROYED"), -1) : (B(e) && L(n("⏺ ⏺ ⏺ ⏺ start_tree: %s", Me(e))), e.gclass.gclass_flag & N.gcflag_manual_start || e.disabled ? 0 : (e.running || je(e), ze(e, A.WALK_TOP2BOTTOM, Se, 0, 0)));
2625
+ }, e.gobj_start_up = function(e, t, n, r, o, i, l) {
2626
+ s = t, _ = n, a = r, u = o, c = i, f = l;
2623
2627
  const d = [["EV_STATE_CHANGED", D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS], [0, 0]];
2624
2628
  for (let e = 0; e < d.length; e++) {
2625
2629
  let t = d[e][0], n = d[e][1];
@@ -2627,14 +2631,14 @@ var gobjJs = function(e) {
2627
2631
  }
2628
2632
  return 0;
2629
2633
  }, e.gobj_stats = function(e, t, r, o) {
2630
- return Ye(e) ? (Ht("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, t, r, o) : f ? f(e, t, r, o) : l(0, -1, n("%s, stats parser not available", Ve(e)), 0, 0);
2634
+ return Ye(e) ? (qt("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, t, r, o) : f ? f(e, t, r, o) : i(0, -1, n("%s, stats parser not available", Ve(e)), 0, 0);
2631
2635
  }, e.gobj_stop = Oe, e.gobj_stop_children = we, e.gobj_stop_tree = function(e) {
2632
- return Ye(e) ? (Ht("gobj NULL or DESTROYED"), -1) : (B(e) && L(n("⏹ ⏹ ⏹ ⏹ stop_tree: %s", Me(e))), Ae(e) && Oe(e), ze(e, A.WALK_TOP2BOTTOM, Ne, 0, 0));
2636
+ return Ye(e) ? (qt("gobj NULL or DESTROYED"), -1) : (B(e) && L(n("⏹ ⏹ ⏹ ⏹ stop_tree: %s", Me(e))), Ae(e) && Oe(e), ze(e, A.WALK_TOP2BOTTOM, Ne, 0, 0));
2633
2637
  }, e.gobj_subscribe_event = At, e.gobj_trace_level = W, e.gobj_trace_machine_format = function() {
2634
2638
  return C;
2635
2639
  }, e.gobj_trace_no_level = K, e.gobj_unsubscribe_event = function(e, t, n, r) {
2636
- if (null == n && (n = {}), !e) return Ht(`publisher NULL: ev ${t}`), 0;
2637
- if (!r) return Ht(`subscriber NULL: ev ${t}`), 0;
2640
+ if (null == n && (n = {}), !e) return qt(`publisher NULL: ev ${t}`), 0;
2641
+ if (!r) return qt(`subscriber NULL: ev ${t}`), 0;
2638
2642
  const o = /* @__PURE__ */ new Set([
2639
2643
  "__config__",
2640
2644
  "__global__",
@@ -2643,35 +2647,35 @@ var gobjJs = function(e) {
2643
2647
  "__service__"
2644
2648
  ]);
2645
2649
  if (Object.keys(n).forEach((n) => {
2646
- o.has(n) || Ht(`${Ve(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
2650
+ o.has(n) || qt(`${Ve(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
2647
2651
  }), Sn(t)) t = "";
2648
- else if (!(Tt(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return Ht(`event NOT in output event list: ${Ve(e)}, ev ${t}`), 0;
2649
- let l = wt(e.dl_subscriptions, e, t, n, r), i = 0;
2650
- for (let t = 0; t < l.length; t++) {
2651
- let n = l[t];
2652
- Dt(e, n, !1, !1), i++;
2653
- }
2654
- return i || (zt(`${Ve(e)}: No subscription found`), Zt(n, "No subscription found")), 0;
2655
- }, e.gobj_unsubscribe_list = kt, e.gobj_walk_gobj_children = He, e.gobj_walk_gobj_children_tree = ze, e.gobj_write_attr = function(e, t, r, o) {
2656
- if (!En(t)) return Ht(n("gobj_write_attr(%s): path must be a string", Ve(e))), -1;
2657
- let l, i = e.jn_attrs, s = t.split("`");
2652
+ else if (!(Tt(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return qt(`event NOT in output event list: ${Ve(e)}, ev ${t}`), 0;
2653
+ let i = wt(e.dl_subscriptions, e, t, n, r), l = 0;
2654
+ for (let t = 0; t < i.length; t++) {
2655
+ let n = i[t];
2656
+ Dt(e, n, !1, !1), l++;
2657
+ }
2658
+ return l || (zt(`${Ve(e)}: No subscription found`), Zt(n, "No subscription found")), 0;
2659
+ }, e.gobj_unsubscribe_list = kt, e.gobj_walk_gobj_children = qe, e.gobj_walk_gobj_children_tree = ze, e.gobj_write_attr = function(e, t, r, o) {
2660
+ if (!En(t)) return qt(n("gobj_write_attr(%s): path must be a string", Ve(e))), -1;
2661
+ let i, l = e.jn_attrs, s = t.split("`");
2658
2662
  if (s.length <= 1) {
2659
2663
  let o = t;
2660
- return o in i && i.hasOwnProperty(o) ? (i[o] = r, pn(e.priv) && e.priv.hasOwnProperty(o) && (e.priv[o] = r), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o), 0) : (Ht(n("gobj_write_attr(%s): attr not found '%s'", Ve(e), o)), -1);
2664
+ return o in l && l.hasOwnProperty(o) ? (l[o] = r, pn(e.priv) && e.priv.hasOwnProperty(o) && (e.priv[o] = r), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o), 0) : (qt(n("gobj_write_attr(%s): attr not found '%s'", Ve(e), o)), -1);
2661
2665
  }
2662
2666
  let _ = s.length;
2663
2667
  for (let t = 0; t < _; t++) {
2664
- l = s[t];
2665
- let n = nt(e, { __gobj_name__: l });
2668
+ i = s[t];
2669
+ let n = nt(e, { __gobj_name__: i });
2666
2670
  if (n && t < _ - 1) {
2667
2671
  e = n;
2668
2672
  continue;
2669
2673
  }
2670
2674
  let o = e.jn_attrs;
2671
- if (l in o && o.hasOwnProperty(l)) return o[l] = r, pn(e.priv) && e.priv.hasOwnProperty(l) && (e.priv[l] = r), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.mt_writing && e.mt_writing(e, l), 0;
2675
+ if (i in o && o.hasOwnProperty(i)) return o[i] = r, pn(e.priv) && e.priv.hasOwnProperty(i) && (e.priv[i] = r), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.mt_writing && e.mt_writing(e, i), 0;
2672
2676
  break;
2673
2677
  }
2674
- return Ht(n("gobj_write_attr(%s): attr not found '%s'", Ve(e), l)), -1;
2678
+ return qt(n("gobj_write_attr(%s): attr not found '%s'", Ve(e), i)), -1;
2675
2679
  }, e.gobj_write_attrs = ct, e.gobj_write_bool_attr = ft, e.gobj_write_integer_attr = gt, e.gobj_write_str_attr = dt, e.gobj_yuno = Ce, e.gobj_yuno_id = Ue, e.gobj_yuno_name = Le, e.gobj_yuno_role = Pe, e.id_index_in_obj_list = zn, e.index_in_list = ur, e.is_array = mn, e.is_boolean = hn, e.is_date = function(e) {
2676
2680
  return e instanceof Date && !isNaN(e);
2677
2681
  }, e.is_function = jn, e.is_gobj = vn, e.is_metadata_key = function(e) {
@@ -2691,11 +2695,11 @@ var gobjJs = function(e) {
2691
2695
  return !isNaN(t) && "" !== e.trim() && !isNaN(t);
2692
2696
  }, e.is_string = En, e.jdb_delete = function(e, t, n, r) {
2693
2697
  let o = Fn(null, Fn(null, e, "topics", null, 0), t, null, 0);
2694
- if (!o) return Ht("jdb_delete: topic not found: " + t), null;
2695
- if (Sn(r.id)) return Ht("jdb_delete: record without id: " + r), Xt(r), null;
2696
- let l, i = n.split("`"), s = o;
2697
- for (; (l = i.shift()) && !Sn(l) && s;) pn(s) && (s = Fn(null, s, e.hook, null, 0)), s = lr(s, null, l, !1);
2698
- if (0 === i.length && s) if (mn(s)) {
2698
+ if (!o) return qt("jdb_delete: topic not found: " + t), null;
2699
+ if (Sn(r.id)) return qt("jdb_delete: record without id: " + r), Xt(r), null;
2700
+ let i, l = n.split("`"), s = o;
2701
+ for (; (i = l.shift()) && !Sn(i) && s;) pn(s) && (s = Fn(null, s, e.hook, null, 0)), s = ir(s, null, i, !1);
2702
+ if (0 === l.length && s) if (mn(s)) {
2699
2703
  let e = zn(s, r.id);
2700
2704
  e >= 0 && s.splice(e, 1);
2701
2705
  } else {
@@ -2705,32 +2709,32 @@ var gobjJs = function(e) {
2705
2709
  return o;
2706
2710
  }, e.jdb_get = function(e, t, n, r) {
2707
2711
  let o = Fn(null, Fn(null, e, "topics", null, 0), t, null, 0);
2708
- return o ? (void 0 === r && (r = !0), lr(o, e.hook, n, r)) : (Ht("jdb_get: topic not found: " + t), null);
2712
+ return o ? (void 0 === r && (r = !0), ir(o, e.hook, n, r)) : (qt("jdb_get: topic not found: " + t), null);
2709
2713
  }, e.jdb_get_by_idx = function(e, t, n) {
2710
2714
  let r = Fn(null, Fn(null, e, "topics", null, 0), t, null, 0);
2711
- return r ? n < r.length ? r[n] : {} : (Ht("jdb_get_by_idx: topic not found: " + t), null);
2715
+ return r ? n < r.length ? r[n] : {} : (qt("jdb_get_by_idx: topic not found: " + t), null);
2712
2716
  }, e.jdb_get_topic = function(e, t) {
2713
2717
  let n = Fn(null, e, "topics", null, 0);
2714
- if (!n) return Ht("jdb topics section not found"), Xt(e), null;
2715
- return Fn(null, n, t, null, 0) || (Ht("jdb topic not found: " + t), Xt(n), null);
2718
+ if (!n) return qt("jdb topics section not found"), Xt(e), null;
2719
+ return Fn(null, n, t, null, 0) || (qt("jdb topic not found: " + t), Xt(n), null);
2716
2720
  }, e.jdb_init = function(e, t, n) {
2717
2721
  n && (e = en(e));
2718
2722
  let r = Fn(null, e, "type", [], 1);
2719
2723
  Ln(null, e, "hook", "data", 1);
2720
- let o = Fn(null, e, "schema", {}, 1), l = Fn(null, e, "topics", {}, 1);
2724
+ let o = Fn(null, e, "schema", {}, 1), i = Fn(null, e, "topics", {}, 1);
2721
2725
  return or(o, function(e, t, n, o) {
2722
- "__" !== t.substring(0, 2) && Fn(null, l, o, en(r), 1);
2726
+ "__" !== t.substring(0, 2) && Fn(null, i, o, en(r), 1);
2723
2727
  }, t), e;
2724
2728
  }, e.jdb_update = function(e, t, n, r) {
2725
2729
  let o = Fn(null, Fn(null, e, "topics", null, 0), t, null, 0);
2726
- if (!o) return Ht("jdb_update: topic not found: " + t), null;
2727
- if (Sn(r.id)) return Ht("jdb_update: record without id: " + r), Xt(r), null;
2728
- let l, i = n.split("`"), s = o;
2729
- for (; (l = i.shift()) && !Sn(l) && s;) pn(s) && (s = Fn(null, s, e.hook, [], 1)), s = lr(s, null, l, !1);
2730
- if (0 === i.length && s) if (mn(s)) s.push(r);
2730
+ if (!o) return qt("jdb_update: topic not found: " + t), null;
2731
+ if (Sn(r.id)) return qt("jdb_update: record without id: " + r), Xt(r), null;
2732
+ let i, l = n.split("`"), s = o;
2733
+ for (; (i = l.shift()) && !Sn(i) && s;) pn(s) && (s = Fn(null, s, e.hook, [], 1)), s = ir(s, null, i, !1);
2734
+ if (0 === l.length && s) if (mn(s)) s.push(r);
2731
2735
  else if (s.id === r.id) Object.assign(s, r);
2732
2736
  else {
2733
- let t = Fn(null, s, e.hook, [], 1), n = lr(t, e.hook, r.id, !1);
2737
+ let t = Fn(null, s, e.hook, [], 1), n = ir(t, e.hook, r.id, !1);
2734
2738
  n ? Object.assign(n, r) : t.push(r);
2735
2739
  }
2736
2740
  return o;
@@ -2739,15 +2743,15 @@ var gobjJs = function(e) {
2739
2743
  if (o > gr) throw new Error("json2flat: deeper than 256");
2740
2744
  if (null === e || "object" != typeof e || Array.isArray(e)) {
2741
2745
  if (Array.isArray(e) && e.length > 0) return void e.forEach((e, t) => {
2742
- const l = `[${t}]`;
2743
- n(e, 0 === o ? l : r + "`" + l, o + 1);
2746
+ const i = `[${t}]`;
2747
+ n(e, 0 === o ? i : r + "`" + i, o + 1);
2744
2748
  });
2745
2749
  } else {
2746
2750
  const t = Object.keys(e);
2747
2751
  if (t.length > 0) {
2748
- for (const l of t) {
2749
- const t = br(l);
2750
- n(e[l], 0 === o ? t : r + "`" + t, o + 1);
2752
+ for (const i of t) {
2753
+ const t = br(i);
2754
+ n(e[i], 0 === o ? t : r + "`" + t, o + 1);
2751
2755
  }
2752
2756
  return;
2753
2757
  }
@@ -2759,7 +2763,7 @@ var gobjJs = function(e) {
2759
2763
  return t ? (Array.prototype.push.apply(e, t), e) : e;
2760
2764
  }, e.json_array_remove = fn, e.json_array_size = dn, e.json_deep_copy = en, e.json_is_identical = tn, e.json_object_del = sn, e.json_object_get = ln, e.json_object_set = _n, e.json_object_set_new = an, e.json_object_size = gn, e.json_object_update = nn, e.json_object_update_existing = rn, e.json_object_update_missing = on, e.json_size = bn, e.jwt2json = function(e, t) {
2761
2765
  try {
2762
- let n = ir(e);
2766
+ let n = lr(e);
2763
2767
  switch (t) {
2764
2768
  case "header": return JSON.parse(n.header);
2765
2769
  case "signature": return JSON.parse(n.signature);
@@ -2768,66 +2772,66 @@ var gobjJs = function(e) {
2768
2772
  } catch (e) {
2769
2773
  return null;
2770
2774
  }
2771
- }, e.jwtDecode = ir, e.kw_clone_by_keys = Kn, e.kw_clone_by_not_keys = xn, e.kw_collect = function(e, t, n, r) {
2772
- if (e && !vn(e) && Ht("GObj bad instanceof"), !t) return null;
2775
+ }, e.jwtDecode = lr, e.kw_clone_by_keys = Kn, e.kw_clone_by_not_keys = xn, e.kw_collect = function(e, t, n, r) {
2776
+ if (e && !vn(e) && qt("GObj bad instanceof"), !t) return null;
2773
2777
  r || (r = Wn);
2774
2778
  let o = [];
2775
2779
  if (mn(t)) for (let e = 0; e < t.length; e++) {
2776
- let l = t[e];
2777
- r(l, n) && o.push(l);
2780
+ let i = t[e];
2781
+ r(i, n) && o.push(i);
2778
2782
  }
2779
2783
  else {
2780
- if (!pn(t)) return Ht("kw_select() BAD kw parameter"), null;
2784
+ if (!pn(t)) return qt("kw_select() BAD kw parameter"), null;
2781
2785
  r(t, n) && o.push(t);
2782
2786
  }
2783
2787
  return o;
2784
2788
  }, e.kw_delete = In, e.kw_find_json_in_list = function(e, t, n, r) {
2785
- if (!n || !mn(t)) return r && Ht("item NULL or kw_list is not a list"), -1;
2789
+ if (!n || !mn(t)) return r && qt("item NULL or kw_list is not a list"), -1;
2786
2790
  for (let e = 0; e < t.length; e++) if (tn(n, t[e])) return e;
2787
- return r && Ht("item not found in this list"), -1;
2791
+ return r && qt("item not found in this list"), -1;
2788
2792
  }, e.kw_find_path = kn, e.kw_flag_t = Lt, e.kw_get_bool = $n, e.kw_get_dict = Un, e.kw_get_dict_value = Fn, e.kw_get_int = Cn, e.kw_get_list = function(e, t, n, r, o) {
2789
- e && !vn(e) && Ht("GObj bad instanceof");
2790
- let l = kn(e, t, n, !1);
2791
- const i = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
2792
- if (void 0 === l) {
2793
+ e && !vn(e) && qt("GObj bad instanceof");
2794
+ let i = kn(e, t, n, !1);
2795
+ const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
2796
+ if (void 0 === i) {
2793
2797
  if (s) {
2794
2798
  let o = Array(r);
2795
2799
  return Gn(e, t, n, o), o;
2796
2800
  }
2797
- return i && (Ht(`path not found: '${n}'`), Zt(t)), Array(r);
2801
+ return l && (qt(`path not found: '${n}'`), Zt(t)), Array(r);
2798
2802
  }
2799
- return _ && In(e, t, n), mn(l) ? Array(l) : (i && (Ht(`path value MUST BE an array: ${n}`), Xt(t)), Array(r));
2803
+ return _ && In(e, t, n), mn(i) ? Array(i) : (l && (qt(`path value MUST BE an array: ${n}`), Xt(t)), Array(r));
2800
2804
  }, e.kw_get_local_storage_value = Yn, e.kw_get_pointer = Pn, e.kw_get_real = function(e, t, n, r, o) {
2801
- e && !vn(e) && Ht("GObj bad instanceof");
2802
- let l = kn(e, t, n, !1);
2803
- const i = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
2804
- if (void 0 === l) {
2805
+ e && !vn(e) && qt("GObj bad instanceof");
2806
+ let i = kn(e, t, n, !1);
2807
+ const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
2808
+ if (void 0 === i) {
2805
2809
  if (s) {
2806
2810
  let o = Number(r);
2807
2811
  return Gn(e, t, n, o), o;
2808
2812
  }
2809
- return i && (Ht(`path not found: '${n}'`), Zt(t)), Number(r);
2813
+ return l && (qt(`path not found: '${n}'`), Zt(t)), Number(r);
2810
2814
  }
2811
- return _ && In(e, t, n), Tn(l) ? Number(l) : (i && (Ht(`path value MUST BE a number: ${n}`), Xt(t)), Number(r));
2815
+ return _ && In(e, t, n), Tn(i) ? Number(i) : (l && (qt(`path value MUST BE a number: ${n}`), Xt(t)), Number(r));
2812
2816
  }, e.kw_get_str = Ln, e.kw_has_key = An, e.kw_match_simple = Wn, e.kw_pop = Dn, e.kw_remove_local_storage_value = Jn, e.kw_select = function(e, t, n, r) {
2813
- if (e && !vn(e) && Ht("GObj bad instanceof"), !t) return null;
2817
+ if (e && !vn(e) && qt("GObj bad instanceof"), !t) return null;
2814
2818
  r || (r = Wn);
2815
2819
  let o = [];
2816
2820
  if (mn(t)) for (let e = 0; e < t.length; e++) {
2817
- let l = t[e];
2818
- r(l, n) && o.push(en(l));
2821
+ let i = t[e];
2822
+ r(i, n) && o.push(en(i));
2819
2823
  }
2820
2824
  else {
2821
- if (!pn(t)) return Ht("kw_select() BAD kw parameter"), null;
2825
+ if (!pn(t)) return qt("kw_select() BAD kw parameter"), null;
2822
2826
  r(t, n) && o.push(en(t));
2823
2827
  }
2824
2828
  return o;
2825
- }, e.kw_set_dict_value = Gn, e.kw_set_local_storage_value = Bn, e.kw_set_subdict_value = Vn, e.kwid_collect = Hn, e.kwid_find_one_record = function(e, t, n, r, o) {
2826
- e && !vn(e) && Ht("GObj bad instanceof");
2827
- let l = Hn(e, t, n, r, o);
2828
- return l.length > 0 ? l[0] : null;
2829
+ }, e.kw_set_dict_value = Gn, e.kw_set_local_storage_value = Bn, e.kw_set_subdict_value = Vn, e.kwid_collect = qn, e.kwid_find_one_record = function(e, t, n, r, o) {
2830
+ e && !vn(e) && qt("GObj bad instanceof");
2831
+ let i = qn(e, t, n, r, o);
2832
+ return i.length > 0 ? i[0] : null;
2829
2833
  }, e.kwid_get_ids = function(e, t) {
2830
- if (e && !vn(e) && Ht("GObj bad instanceof"), !t) return [];
2834
+ if (e && !vn(e) && qt("GObj bad instanceof"), !t) return [];
2831
2835
  let n = [];
2832
2836
  if (En(t)) n.push(t);
2833
2837
  else if (pn(t)) for (let e in t) t.hasOwnProperty(e) && n.push(e);
@@ -2839,51 +2843,51 @@ var gobjJs = function(e) {
2839
2843
  }
2840
2844
  });
2841
2845
  return n;
2842
- }, e.kwid_match_id = qn, e.kwid_new_dict = function(e, t, n) {
2843
- e && !vn(e) && Ht("GObj bad instanceof");
2846
+ }, e.kwid_match_id = Hn, e.kwid_new_dict = function(e, t, n) {
2847
+ e && !vn(e) && qt("GObj bad instanceof");
2844
2848
  let r = {};
2845
2849
  if (Sn(n) || (t = kn(e, t, n)), pn(t)) r = t;
2846
2850
  else if (mn(t)) for (let n = 0; n < t.length; n++) {
2847
- let o = t[n], l = Ln(e, o, "id", "", 0);
2848
- Sn(l) || (r[l] = o);
2851
+ let o = t[n], i = Ln(e, o, "id", "", 0);
2852
+ Sn(i) || (r[i] = o);
2849
2853
  }
2850
- else Ht(`${Ve(e)} kwid_new_dict: data type unknown`);
2854
+ else qt(`${Ve(e)} kwid_new_dict: data type unknown`);
2851
2855
  return r;
2852
2856
  }, e.list2options = function(e, t, n) {
2853
2857
  t = t || "id", n = n || "value";
2854
2858
  let r = [];
2855
2859
  if (mn(e)) for (let o = 0; o < e.length; o++) {
2856
- let l = e[o];
2857
- if (En(l)) r.push({
2860
+ let i = e[o];
2861
+ if (En(i)) r.push({
2858
2862
  id: e[o],
2859
2863
  value: e[o]
2860
2864
  });
2861
- else if (pn(l)) {
2865
+ else if (pn(i)) {
2862
2866
  let e = {};
2863
- if (An(l, t)) {
2864
- if (!An(l, n)) {
2865
- if (!(bn(l) > 0)) {
2866
- Ht("list2options(): object without field value: " + n);
2867
+ if (An(i, t)) {
2868
+ if (!An(i, n)) {
2869
+ if (!(bn(i) > 0)) {
2870
+ qt("list2options(): object without field value: " + n);
2867
2871
  continue;
2868
2872
  }
2869
- n = Object.keys(l)[0];
2873
+ n = Object.keys(i)[0];
2870
2874
  }
2871
- e.id = l[t], e.value = l[n];
2875
+ e.id = i[t], e.value = i[n];
2872
2876
  } else {
2873
- if (!(bn(l) > 0)) {
2874
- Ht("list2options(): object without field id: " + t);
2877
+ if (!(bn(i) > 0)) {
2878
+ qt("list2options(): object without field id: " + t);
2875
2879
  continue;
2876
2880
  }
2877
- t = Object.keys(l)[0], e.id = t, e.value = l[t];
2881
+ t = Object.keys(i)[0], e.id = t, e.value = i[t];
2878
2882
  }
2879
2883
  r.push(e);
2880
- } else Ht("list2options(): case1 not implemented");
2884
+ } else qt("list2options(): case1 not implemented");
2881
2885
  }
2882
2886
  else if (pn(e)) for (let t of Object.keys(e)) r.push({
2883
2887
  id: t,
2884
2888
  value: t
2885
2889
  });
2886
- else Ht("list2options(): case2 not implemented");
2890
+ else qt("list2options(): case2 not implemented");
2887
2891
  return r;
2888
2892
  }, e.load_json_file = function(e, t, n) {
2889
2893
  let r = new XMLHttpRequest();
@@ -2891,36 +2895,42 @@ var gobjJs = function(e) {
2891
2895
  if (4 === r.readyState) if (200 === r.status || 0 === (e = r).status && e.responseText && e.responseURL.startsWith("file:")) try {
2892
2896
  t(JSON.parse(r.responseText));
2893
2897
  } catch (e) {
2894
- n && (Ht(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
2898
+ n && (qt(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
2895
2899
  }
2896
2900
  else n && n(r.status);
2897
2901
  var e;
2898
2902
  }, r.send();
2899
- }, e.log_debug = Qt, e.log_error = Ht, e.log_info = function(e) {
2900
- let t = qt(e), n = ar();
2903
+ }, e.log_debug = Qt, e.log_error = qt, e.log_info = function(e) {
2904
+ let t = Ht(e), n = ar();
2901
2905
  Gt && xt("info", t) && Gt("%c" + n + " INFO: " + String(t), "color:cyan"), Bt("info", t, n);
2902
2906
  }, e.log_warning = zt, e.msg_iev_get_msg_type = rr, e.msg_iev_get_stack = tr, e.msg_iev_push_stack = er, e.msg_iev_read_key = Xn, e.msg_iev_set_msg_type = nr, e.msg_iev_write_key = Zn, e.node_uuid = cr, e.parseBoolean = On, e.parseSVG = function(e) {
2903
2907
  return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
2904
2908
  }, e.refresh_language = function(e, t) {
2905
- jn(t) ? (e || (e = document), e.querySelectorAll("[data-i18n]").forEach(function(e) {
2909
+ if (!jn(t)) return void qt("You must supply a translation function");
2910
+ e || (e = document);
2911
+ const n = (t) => {
2912
+ let n = [];
2913
+ return "function" == typeof e.matches && e.matches(t) && n.push(e), n.push(...e.querySelectorAll(t)), n;
2914
+ };
2915
+ n("[data-i18n]").forEach(function(e) {
2906
2916
  let n = e.getAttribute("data-i18n");
2907
2917
  for (let r of e.childNodes) if (r.nodeType === Node.TEXT_NODE) {
2908
2918
  n || (n = r.nodeValue), r.nodeValue = t(n);
2909
2919
  break;
2910
2920
  }
2911
- }), e.querySelectorAll("[data-i18n-title]").forEach(function(e) {
2921
+ }), n("[data-i18n-title]").forEach(function(e) {
2912
2922
  let n = e.getAttribute("data-i18n-title");
2913
2923
  n && e.setAttribute("title", t(n));
2914
- }), e.querySelectorAll("[data-i18n-aria-label]").forEach(function(e) {
2924
+ }), n("[data-i18n-aria-label]").forEach(function(e) {
2915
2925
  let n = e.getAttribute("data-i18n-aria-label");
2916
2926
  n && e.setAttribute("aria-label", t(n));
2917
- }), e.querySelectorAll("[data-i18n-placeholder]").forEach(function(e) {
2927
+ }), n("[data-i18n-placeholder]").forEach(function(e) {
2918
2928
  let n = e.getAttribute("data-i18n-placeholder");
2919
2929
  n && e.setAttribute("placeholder", t(n));
2920
- })) : Ht("You must supply a translation function");
2930
+ });
2921
2931
  }, e.register_c_ievent_cli = function() {
2922
2932
  return function(e) {
2923
- if (Vr) return Ht(`GClass ALREADY created: ${e}`), -1;
2933
+ if (Vr) return qt(`GClass ALREADY created: ${e}`), -1;
2924
2934
  const t = [
2925
2935
  ["ST_DISCONNECTED", [
2926
2936
  [
@@ -2935,7 +2945,7 @@ var gobjJs = function(e) {
2935
2945
  ],
2936
2946
  [
2937
2947
  "EV_TIMEOUT",
2938
- Hr,
2948
+ qr,
2939
2949
  null
2940
2950
  ],
2941
2951
  [
@@ -3015,7 +3025,7 @@ var gobjJs = function(e) {
3015
3025
  }("C_IEVENT_CLI");
3016
3026
  }, e.register_c_timer = function() {
3017
3027
  return function(e) {
3018
- if (Nr) return Ht(`GClass ALREADY created: ${e}`), -1;
3028
+ if (Nr) return qt(`GClass ALREADY created: ${e}`), -1;
3019
3029
  const t = [["ST_IDLE", [[
3020
3030
  "EV_TIMEOUT",
3021
3031
  wr,
@@ -3029,7 +3039,7 @@ var gobjJs = function(e) {
3029
3039
  }("C_TIMER");
3030
3040
  }, e.register_c_yuno = function() {
3031
3041
  return function(e) {
3032
- if (Cr) return Ht(`GClass ALREADY created: ${e}`), -1;
3042
+ if (Cr) return qt(`GClass ALREADY created: ${e}`), -1;
3033
3043
  const t = [["ST_IDLE", [[
3034
3044
  "EV_TIMEOUT_PERIODIC",
3035
3045
  Lr,
@@ -3056,8 +3066,8 @@ var gobjJs = function(e) {
3056
3066
  var r = (e + "").substring(0, n), o = (t + "").substring(0, n);
3057
3067
  return r === o ? 0 : r > o ? 1 : -1;
3058
3068
  }, e.strs_in_list = function(e, t, n) {
3059
- if (!e) return Ht("ERROR: strs_in_list() list empty"), !1;
3060
- if (!t) return Ht("ERROR: strs_in_list() str empty"), !1;
3069
+ if (!e) return qt("ERROR: strs_in_list() list empty"), !1;
3070
+ if (!t) return qt("ERROR: strs_in_list() str empty"), !1;
3061
3071
  for (let r = 0; r < t.length; r++) if (Qn(e, t[r], n)) return !0;
3062
3072
  return !1;
3063
3073
  }, e.strstr = function(e, t, n) {
@@ -3100,9 +3110,9 @@ var gobjJs = function(e) {
3100
3110
  }, e.timeTracker = function(e = "Time Tracker", t = !1) {
3101
3111
  const n = e, r = performance.now();
3102
3112
  let o = r;
3103
- return t && zt(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", l = "") => {
3104
- const i = performance.now(), s = (i - o) / 1e3, _ = (i - r) / 1e3;
3105
- return t && zt(`--\x3e ${n} ${e} - partial: ${s} sec, total: ${_} sec, ${l}`), o = i, {
3113
+ return t && zt(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", i = "") => {
3114
+ const l = performance.now(), s = (l - o) / 1e3, _ = (l - r) / 1e3;
3115
+ return t && zt(`--\x3e ${n} ${e} - partial: ${s} sec, total: ${_} sec, ${i}`), o = l, {
3106
3116
  partial: s,
3107
3117
  total: _
3108
3118
  };
@@ -3111,7 +3121,7 @@ var gobjJs = function(e) {
3111
3121
  if (En(t)) {
3112
3122
  if (-1 === t.indexOf("^")) {
3113
3123
  let n, r = e.hook;
3114
- if (1 !== gn(r)) return Ht("bad hook 1"), Ht(e), Ht(t), null;
3124
+ if (1 !== gn(r)) return qt("bad hook 1"), qt(e), qt(t), null;
3115
3125
  for (let e of Object.keys(r)) {
3116
3126
  n = e, r[e];
3117
3127
  break;
@@ -3123,7 +3133,7 @@ var gobjJs = function(e) {
3123
3133
  }
3124
3134
  {
3125
3135
  let n = t.split("^");
3126
- return 2 !== n.length ? (Ht("bad hook 2"), Ht(e), Ht(t), null) : {
3136
+ return 2 !== n.length ? (qt("bad hook 2"), qt(e), qt(t), null) : {
3127
3137
  topic_name: n[0],
3128
3138
  id: n[1]
3129
3139
  };
@@ -3132,7 +3142,7 @@ var gobjJs = function(e) {
3132
3142
  return pn(t) ? {
3133
3143
  topic_name: t.topic_name,
3134
3144
  id: t.id
3135
- } : (Ht("bad hook 3"), Ht(e), Ht(t), null);
3145
+ } : (qt("bad hook 3"), qt(e), qt(t), null);
3136
3146
  }, e.treedb_encoder_fkey = function(e, t) {
3137
3147
  let n = Tr(e, t);
3138
3148
  return n ? n.topic_name + "^" + n.id + "^" + n.hook_name : null;