@yuneta/gobj-js 7.26.27 → 7.26.29

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.
@@ -146,7 +146,7 @@ var gobjJs = function(e) {
146
146
  DTP_POINTER: 8
147
147
  }), T = (e) => e === E.DTP_STRING, j = (e) => e === E.DTP_BOOLEAN, O = (e) => e === E.DTP_REAL, S = (e) => e === E.DTP_LIST, w = (e) => e === E.DTP_DICT, N = (e) => e === E.DTP_JSON;
148
148
  E.DTP_POINTER;
149
- var $ = (e) => ((e) => e === E.DTP_INTEGER)(e) || O(e) || j(e), A = Object.freeze({
149
+ var $ = (e) => ((e) => e === E.DTP_INTEGER)(e) || O(e) || j(e), R = Object.freeze({
150
150
  SDF_NOTACCESS: 1,
151
151
  SDF_RD: 2,
152
152
  SDF_WR: 4,
@@ -170,18 +170,18 @@ var gobjJs = function(e) {
170
170
  SDF_AUTHZ_RS: 1048576,
171
171
  SDF_SECRET: 2097152
172
172
  });
173
- A.SDF_RD, A.SDF_WR, A.SDF_STATS, A.SDF_PERSIST, A.SDF_VOLATIL, A.SDF_RSTATS, A.SDF_PSTATS, A.SDF_WR, A.SDF_PERSIST;
174
- var R = class {
173
+ R.SDF_RD, R.SDF_WR, R.SDF_STATS, R.SDF_PERSIST, R.SDF_VOLATIL, R.SDF_RSTATS, R.SDF_PSTATS, R.SDF_WR, R.SDF_PERSIST;
174
+ var A = class {
175
175
  constructor(e, t, n = 0, r = null, o = "", l = null, i = null, s = 0, a = null, u = null, _ = null) {
176
176
  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 = a, this.schema = u, this.authpth = _;
177
177
  }
178
- }, D = () => new R(0, null), k = (e, t, n, r, o) => new R(e, t, n, r, o), C = class {
178
+ }, D = () => new A(0, null), k = (e, t, n, r, o) => new A(e, t, n, r, o), C = class {
179
179
  constructor(e, t, n, r, o, l, i, s, a) {
180
180
  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(a) || 0, this.instances = 0, this.trace_level = 0, this.no_trace_level = 0, this.jn_trace_filter = null, this.fsm_checked = !1;
181
181
  }
182
182
  }, I = class {
183
183
  constructor(e, t, n, r, o) {
184
- this.__refs__ = 0, this.gclass = t, this.parent = null, this.dl_children = [], this.dl_subscriptions = [], this.dl_subscribings = [], this.current_state = t.dl_states[0], this.last_state = null, this.obflag = 0, this.gobj_flag = Number(o) || 0, this.gobj_name = e, this.jn_attrs = null, this.jn_stats = {}, this.jn_user_data = {}, this.full_name = null, this.short_name = null, this.priv = Ao(t.priv), this.running = !1, this.playing = !1, this.disabled = !1, this.bottom_gobj = null, this.trace_level = 0, this.no_trace_level = 0;
184
+ this.__refs__ = 0, this.gclass = t, this.parent = null, this.dl_children = [], this.dl_subscriptions = [], this.dl_subscribings = [], this.current_state = t.dl_states[0], this.last_state = null, this.obflag = 0, this.gobj_flag = Number(o) || 0, this.gobj_name = e, this.jn_attrs = null, this.jn_stats = {}, this.jn_user_data = {}, this.full_name = null, this.short_name = null, this.priv = Ro(t.priv), this.running = !1, this.playing = !1, this.disabled = !1, this.bottom_gobj = null, this.trace_level = 0, this.no_trace_level = 0;
185
185
  }
186
186
  }, P = Object.freeze({
187
187
  gcflag_manual_start: 1,
@@ -227,7 +227,7 @@ var gobjJs = function(e) {
227
227
  };
228
228
  var x = 1;
229
229
  function K(e) {
230
- Ko(e) && (e = JSON.stringify(e)), ar(" ".repeat(Math.max(1, 2 * h)) + String(e));
230
+ Bo(e) && (e = JSON.stringify(e)), ar(" ".repeat(Math.max(1, 2 * h)) + String(e));
231
231
  }
232
232
  var B = Object.freeze({
233
233
  TRACE_MACHINE: 65536,
@@ -321,7 +321,7 @@ var gobjJs = function(e) {
321
321
  B.TRACE_COMMANDS,
322
322
  "Trace commands"
323
323
  ]
324
- ], J = 0, H = 0, q = 0;
324
+ ], J = 0, q = 0, H = 0;
325
325
  function z(e, t) {
326
326
  let n = [];
327
327
  for (const [t, r] of Y) e & r && n.push(t);
@@ -329,7 +329,7 @@ var gobjJs = function(e) {
329
329
  return n;
330
330
  }
331
331
  function Q(e, t, n) {
332
- if (Xo(e)) return void 0 === n ? 268369920 : 65535;
332
+ if (Zo(e)) return void 0 === n ? 268369920 : 65535;
333
333
  if (/^[0-9]+$/.test(String(e))) {
334
334
  const t = Number(e);
335
335
  if (t) return t;
@@ -343,12 +343,12 @@ var gobjJs = function(e) {
343
343
  }(String(e), n) || (ir(`${t}: trace level NOT FOUND: ${e}`), 0);
344
344
  }
345
345
  function X(e) {
346
- if (q) return 4294967295;
346
+ if (H) return 4294967295;
347
347
  let t = J;
348
348
  return e && (t |= e.trace_level || 0, e.gclass && (t |= e.gclass.trace_level || 0)), t;
349
349
  }
350
350
  function Z(e) {
351
- let t = H;
351
+ let t = q;
352
352
  return e && (t |= e.no_trace_level || 0, e.gclass && (t |= e.gclass.no_trace_level || 0)), t;
353
353
  }
354
354
  function ee(e) {
@@ -364,13 +364,13 @@ var gobjJs = function(e) {
364
364
  return X(e) & B.TRACE_EV_KW;
365
365
  }
366
366
  function oe(e, t) {
367
- if (q > 1) return !0;
367
+ if (H > 1) return !0;
368
368
  if (!e) return !1;
369
369
  const n = X(e);
370
370
  return !!(n & B.TRACE_MACHINE || n & B.TRACE_TIMER_PERIODIC && "EV_TIMEOUT_PERIODIC" === t || n & B.TRACE_TIMER && "EV_TIMEOUT" === t);
371
371
  }
372
372
  function le(e, t) {
373
- if (q > 1) return !1;
373
+ if (H > 1) return !1;
374
374
  if (!e) return !0;
375
375
  const n = Z(e);
376
376
  return !!(n & B.TRACE_MACHINE || n & B.TRACE_TIMER_PERIODIC && "EV_TIMEOUT_PERIODIC" === t || n & B.TRACE_TIMER && "EV_TIMEOUT" === t);
@@ -381,47 +381,47 @@ var gobjJs = function(e) {
381
381
  }
382
382
  function se(e, t) {
383
383
  const n = Q(e, "gobj_set_global_no_trace");
384
- return n ? (t ? H |= n : H &= ~n, 0) : -1;
384
+ return n ? (t ? q |= n : q &= ~n, 0) : -1;
385
385
  }
386
386
  function ae(e, t) {
387
387
  return J = t ? (J | e) >>> 0 : (J & ~e) >>> 0, 0;
388
388
  }
389
389
  function ue(e, t) {
390
- return H = t ? (H | e) >>> 0 : (H & ~e) >>> 0, 0;
390
+ return q = t ? (q | e) >>> 0 : (q & ~e) >>> 0, 0;
391
391
  }
392
392
  function _e() {
393
393
  return z(J, null);
394
394
  }
395
395
  function ce() {
396
- return z(H, null);
396
+ return z(q, null);
397
397
  }
398
398
  function fe(e) {
399
- const t = Yo(e) ? et(e) : e;
399
+ const t = Jo(e) ? et(e) : e;
400
400
  return t ? z(t.trace_level | J, t.s_user_trace_level) : (ir(`gobj_get_gclass_trace_level: gclass NOT FOUND: ${e}`), []);
401
401
  }
402
402
  function ge(e) {
403
- const t = Yo(e) ? et(e) : e;
403
+ const t = Jo(e) ? et(e) : e;
404
404
  return t ? z(t.trace_level, t.s_user_trace_level) : (ir(`gobj_get_gclass_trace_level2: gclass NOT FOUND: ${e}`), []);
405
405
  }
406
406
  function de(e) {
407
- const t = Yo(e) ? et(e) : e;
407
+ const t = Jo(e) ? et(e) : e;
408
408
  return t ? z(t.no_trace_level, t.s_user_trace_level) : (ir(`gobj_get_gclass_trace_no_level: gclass NOT FOUND: ${e}`), []);
409
409
  }
410
410
  function be(e, t, n) {
411
- const r = Yo(e) ? et(e) : e;
411
+ const r = Jo(e) ? et(e) : e;
412
412
  if (!r) return ir(`gobj_set_gclass_trace: gclass NOT FOUND: ${e}`), -1;
413
413
  const o = null === t ? 4294967295 : Q(t, "gobj_set_gclass_trace", r.s_user_trace_level || null);
414
414
  return o ? (n ? r.trace_level |= o : r.trace_level &= ~o, 0) : -1;
415
415
  }
416
416
  function pe(e, t, n) {
417
- const r = Yo(e) ? et(e) : e;
417
+ const r = Jo(e) ? et(e) : e;
418
418
  if (!r) return ir(`gobj_set_gclass_no_trace: gclass NOT FOUND: ${e}`), -1;
419
419
  const o = null === t ? 4294967295 : Q(t, "gobj_set_gclass_no_trace", r.s_user_trace_level || null);
420
420
  return o ? (n ? r.no_trace_level |= o : r.no_trace_level &= ~o, 0) : -1;
421
421
  }
422
422
  function me(e, t) {
423
423
  let n = {};
424
- if (!Bo(t)) return ir("sdata_desc MUST be an array"), _r(t), n;
424
+ if (!Yo(t)) return ir("sdata_desc MUST be an array"), _r(t), n;
425
425
  for (let r = 0; r < t.length; r++) {
426
426
  const o = t[r];
427
427
  o.name && he(e, n, o);
@@ -435,7 +435,7 @@ var gobjJs = function(e) {
435
435
  r = String(o);
436
436
  break;
437
437
  case E.DTP_BOOLEAN:
438
- r = Zo(o);
438
+ r = el(o);
439
439
  break;
440
440
  case E.DTP_INTEGER:
441
441
  r = parseInt(o), isNaN(r) && ir(`${kt(e)}: attr NaN: ${n.name}`);
@@ -444,26 +444,26 @@ var gobjJs = function(e) {
444
444
  r = Number(o), isNaN(r) && ir(`${kt(e)}: attr NaN: ${n.name}`);
445
445
  break;
446
446
  case E.DTP_LIST:
447
- if (Yo(o)) try {
447
+ if (Jo(o)) try {
448
448
  r = JSON.parse(o);
449
449
  } catch (e) {
450
450
  ir(`JSON parse error: ${e.message}`);
451
451
  }
452
452
  else r = o;
453
- Bo(r) || (r = []);
453
+ Yo(r) || (r = []);
454
454
  break;
455
455
  case E.DTP_DICT:
456
- if (Yo(o)) try {
456
+ if (Jo(o)) try {
457
457
  r = JSON.parse(o);
458
458
  } catch (e) {
459
459
  ir(`JSON parse error: ${e.message}`);
460
460
  }
461
461
  else r = o;
462
- Ko(r) || (r = {});
462
+ Bo(r) || (r = {});
463
463
  break;
464
464
  case E.DTP_JSON:
465
465
  if ("" === o || void 0 === o) r = null;
466
- else if (Yo(o)) try {
466
+ else if (Jo(o)) try {
467
467
  r = JSON.parse(o);
468
468
  } catch (e) {
469
469
  ir(`JSON parse error: ${e.message}`);
@@ -552,16 +552,16 @@ var gobjJs = function(e) {
552
552
  }(e)) return t;
553
553
  }
554
554
  function $e(e, t) {
555
- return T(e) ? Yo(t) : w(e) ? Ko(t) : S(e) ? Bo(t) : !$(e) || "number" == typeof t || "boolean" == typeof t;
555
+ return T(e) ? Jo(t) : w(e) ? Bo(t) : S(e) ? Yo(t) : !$(e) || "number" == typeof t || "boolean" == typeof t;
556
556
  }
557
- function Ae(e) {
557
+ function Re(e) {
558
558
  return e >= -0x8000000000000000 && e < 0x8000000000000000;
559
559
  }
560
- function Re(e) {
561
- return Bo(e) ? "an array" : Ko(e) ? "an object" : Yo(e) ? je : "number" == typeof e ? Number.isInteger(e) && Ae(e) ? "an integer" : "a real" : "boolean" == typeof e ? "a boolean" : "null";
560
+ function Ae(e) {
561
+ return Yo(e) ? "an array" : Bo(e) ? "an object" : Jo(e) ? je : "number" == typeof e ? Number.isInteger(e) && Re(e) ? "an integer" : "a real" : "boolean" == typeof e ? "a boolean" : "null";
562
562
  }
563
563
  function De(e, t, n) {
564
- if (Yo(t) || (t = ""), T(e)) return {
564
+ if (Jo(t) || (t = ""), T(e)) return {
565
565
  value: t,
566
566
  refused: null
567
567
  };
@@ -608,7 +608,7 @@ var gobjJs = function(e) {
608
608
  refused: null
609
609
  };
610
610
  const o = Number(r);
611
- return Ae(o) ? {
611
+ return Re(o) ? {
612
612
  value: o,
613
613
  refused: null
614
614
  } : {
@@ -656,9 +656,9 @@ var gobjJs = function(e) {
656
656
  value: void 0,
657
657
  refused: null
658
658
  };
659
- const n = Yo(t) && t.indexOf("\0") >= 0;
659
+ const n = Jo(t) && t.indexOf("\0") >= 0;
660
660
  if (N(e)) {
661
- if (!Yo(t) || n) return {
661
+ if (!Jo(t) || n) return {
662
662
  value: t,
663
663
  refused: null
664
664
  };
@@ -671,7 +671,7 @@ var gobjJs = function(e) {
671
671
  return T(e) || w(e) || S(e) || $(e) ? n ? {
672
672
  value: void 0,
673
673
  refused: "a text with a NUL in it"
674
- } : Yo(t) && !T(e) ? De(e, t, !0) : $e(e, t) ? $(e) ? function(e, t) {
674
+ } : Jo(t) && !T(e) ? De(e, t, !0) : $e(e, t) ? $(e) ? function(e, t) {
675
675
  return "number" != typeof t || Number.isFinite(t) ? j(e) ? {
676
676
  value: "boolean" == typeof t ? t : 0 !== t,
677
677
  refused: null
@@ -681,7 +681,7 @@ var gobjJs = function(e) {
681
681
  } : "boolean" == typeof t ? {
682
682
  value: t ? 1 : 0,
683
683
  refused: null
684
- } : Ae(t) ? Number.isInteger(t) ? {
684
+ } : Re(t) ? Number.isInteger(t) ? {
685
685
  value: t,
686
686
  refused: null
687
687
  } : {
@@ -702,7 +702,7 @@ var gobjJs = function(e) {
702
702
  refused: Ue
703
703
  } : {
704
704
  value: void 0,
705
- refused: Re(t)
705
+ refused: Ae(t)
706
706
  } : {
707
707
  value: t,
708
708
  refused: null
@@ -775,7 +775,7 @@ var gobjJs = function(e) {
775
775
  function Fe(e) {
776
776
  if (Le(e)) try {
777
777
  const t = JSON.stringify(e);
778
- return Yo(t) ? t : void 0;
778
+ return Jo(t) ? t : void 0;
779
779
  } catch (e) {
780
780
  return;
781
781
  }
@@ -790,9 +790,9 @@ var gobjJs = function(e) {
790
790
  [E.DTP_DICT]: "a json object"
791
791
  };
792
792
  let l;
793
- if (t.flag & A.SDF_SECRET) l = "********";
793
+ if (t.flag & R.SDF_SECRET) l = "********";
794
794
  else {
795
- l = Yo(n) ? n : Fe(void 0 === n ? null : n), void 0 === l && (l = `<${Ue}>`);
795
+ l = Jo(n) ? n : Fe(void 0 === n ? null : n), void 0 === l && (l = `<${Ue}>`);
796
796
  const e = To(l);
797
797
  if (null !== e && (l = e), l.length > 64) {
798
798
  let e = 64;
@@ -807,7 +807,7 @@ var gobjJs = function(e) {
807
807
  switch (n.type) {
808
808
  case E.DTP_STRING:
809
809
  if (null == r) o = "";
810
- else if (Yo(r)) o = String(r);
810
+ else if (Jo(r)) o = String(r);
811
811
  else if (o = Fe(r), void 0 === o) return Me(e, n, r, Ue), -1;
812
812
  break;
813
813
  case E.DTP_BOOLEAN:
@@ -823,7 +823,7 @@ var gobjJs = function(e) {
823
823
  }
824
824
  break;
825
825
  case E.DTP_JSON:
826
- if (o = r, Yo(r)) {
826
+ if (o = r, Jo(r)) {
827
827
  const e = r.trim();
828
828
  if (e.startsWith("{") || e.startsWith("[")) try {
829
829
  o = JSON.parse(e);
@@ -834,7 +834,7 @@ var gobjJs = function(e) {
834
834
  break;
835
835
  case E.DTP_POINTER: o = r;
836
836
  }
837
- return void 0 === o && ir(`${kt(e)}: attr undefined: ${n.name}`), t[n.name] = o, Ko(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, n.name) && (e.priv[n.name] = o), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
837
+ return void 0 === o && ir(`${kt(e)}: attr undefined: ${n.name}`), t[n.name] = o, Bo(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, n.name) && (e.priv[n.name] = o), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
838
838
  }
839
839
  function Ve(e) {
840
840
  return e.jn_attrs;
@@ -852,7 +852,7 @@ var gobjJs = function(e) {
852
852
  return n && ir(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
853
853
  }
854
854
  function Ke(e, t, n, r, o, l, i, s, a, u, _) {
855
- if (Xo(e)) return ir("gclass_name EMPTY"), null;
855
+ if (Zo(e)) return ir("gclass_name EMPTY"), null;
856
856
  if (e.includes("`") || e.includes("^") || e.includes(".")) return ir(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
857
857
  if (et(e)) return ir(`GClass ALREADY exists: ${e}`), null;
858
858
  let c = new C(e, r, o, l, i, s, a, u, _);
@@ -862,17 +862,17 @@ var gobjJs = function(e) {
862
862
  const f = n.length;
863
863
  for (let e = 0; e < f; e++) {
864
864
  let t = n[e][0], r = n[e][1];
865
- if (Xo(t)) continue;
866
- if (He(c, t) < 0) return Be(c), null;
865
+ if (Zo(t)) continue;
866
+ if (qe(c, t) < 0) return Be(c), null;
867
867
  const o = r.length;
868
868
  for (let e = 0; e < o; e++) {
869
869
  let n = r[e][0], o = r[e][1], l = r[e][2];
870
- Xo(n) || qe(c, t, n, o, l);
870
+ Zo(n) || He(c, t, n, o, l);
871
871
  }
872
872
  }
873
873
  for (let e = 0; e < t.length; e++) {
874
874
  let n = t[e][0], r = t[e][1];
875
- if (!Xo(n)) {
875
+ if (!Zo(n)) {
876
876
  if (Xe(c, n)) return ir(`SMachine: event repeated in input_events: ${n}`), Be(c), null;
877
877
  Qe(c, n, r);
878
878
  }
@@ -885,7 +885,7 @@ var gobjJs = function(e) {
885
885
  }
886
886
  function Be(e) {
887
887
  let t;
888
- if (Yo(e)) t = e;
888
+ if (Jo(e)) t = e;
889
889
  else {
890
890
  if (!(e instanceof C)) return ir("Cannot unregister gclass, type unknown"), -1;
891
891
  t = e.gclass_name;
@@ -909,17 +909,17 @@ var gobjJs = function(e) {
909
909
  }
910
910
  return null;
911
911
  }
912
- function He(e, t) {
912
+ function qe(e, t) {
913
913
  return e instanceof C ? Ye(e, t) ? (ir(`state already exists: ${t}`), -1) : (e.dl_states.push(new V(t)), 0) : (ir("Cannot add state, typeof not GClass"), -1);
914
914
  }
915
- function qe(e, t, n, r, o) {
915
+ function He(e, t, n, r, o) {
916
916
  if (!(e instanceof C)) return ir("Cannot add state, typeof not GClass"), -1;
917
- if (Xo(t)) return ir("state_name EMPTY"), -1;
917
+ if (Zo(t)) return ir("state_name EMPTY"), -1;
918
918
  let l = Ye(e, t);
919
919
  return l ? Je(l, n) ? (ir(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (l.dl_actions.push(new G(n, r, o)), 0) : (ir(`state not found: ${t}`), -1);
920
920
  }
921
921
  function ze(e, t, n) {
922
- Xo(t) || e.push(new W(t, n));
922
+ Zo(t) || e.push(new W(t, n));
923
923
  }
924
924
  function Qe(e, t, n) {
925
925
  return e instanceof C ? ze(e.dl_events, t, n) : (ir("Cannot add state, typeof not GClass"), -1);
@@ -939,18 +939,18 @@ var gobjJs = function(e) {
939
939
  Wo(e.dl_states) || (ir(`GClass without states: ${e.gclass_name}`), t += -1);
940
940
  for (let n = 0; n < e.dl_states.length; n++) {
941
941
  let r = e.dl_states[n];
942
- if (!Xo(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
942
+ if (!Zo(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
943
943
  let o = r.dl_actions[n];
944
- Xo(o.event_name) || (Xe(e, o.event_name) || (ir(`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 && (Ye(e, o.next_state) || (ir(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${o.next_state}`), t += -1)));
944
+ Zo(o.event_name) || (Xe(e, o.event_name) || (ir(`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 && (Ye(e, o.next_state) || (ir(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${o.next_state}`), t += -1)));
945
945
  }
946
946
  }
947
947
  for (let n = 0; n < e.dl_events.length; n++) {
948
948
  let r = e.dl_events[n];
949
- if (!Xo(r.event_name) && (Jo(r.event_flag) || (ir(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & F.EVF_OUTPUT_EVENT))) {
949
+ if (!Zo(r.event_name) && (qo(r.event_flag) || (ir(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & F.EVF_OUTPUT_EVENT))) {
950
950
  let n = !1;
951
951
  for (let t = 0; t < e.dl_states.length; t++) {
952
952
  let o = e.dl_states[t];
953
- Xo(o.state_name) || Je(o, r.event_name) && (n = !0);
953
+ Zo(o.state_name) || Je(o, r.event_name) && (n = !0);
954
954
  }
955
955
  n || (ir(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
956
956
  }
@@ -968,19 +968,19 @@ var gobjJs = function(e) {
968
968
  return !m || m.obflag & U.obflag_destroyed ? null : m;
969
969
  }
970
970
  function nt(e, t) {
971
- if (!Yo(e)) return ir(`gobj_find_service(): service name must be a string: ${e}`), null;
971
+ if (!Jo(e)) return ir(`gobj_find_service(): service name must be a string: ${e}`), null;
972
972
  e = e.toLowerCase();
973
973
  return b[e] || (t && ir(`gobj service not found: ${e}`), null);
974
974
  }
975
975
  function rt(e) {
976
- let t = Rt(e);
976
+ let t = At(e);
977
977
  return t = t.toLowerCase(), b[t] && ir(`service ALREADY REGISTERED: ${t}. Will be UPDATED`), b[t] = e, 0;
978
978
  }
979
979
  function ot(e, t) {
980
980
  t.parent && ir(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
981
981
  }
982
982
  function lt(e, t) {
983
- let n = ql(e.dl_children, t);
983
+ let n = zl(e.dl_children, t);
984
984
  n >= 0 && (Go(e.dl_children, n), t.parent = null);
985
985
  }
986
986
  function it(e, t) {
@@ -996,7 +996,7 @@ var gobjJs = function(e) {
996
996
  let l = 0;
997
997
  for (const [i, s] of Object.entries(t)) {
998
998
  const t = xe(o.gclass, i, !1);
999
- t ? (-1 === n || t.flag & n) && (t.flag & A.SDF_DEPRECATED && sr(`${kt(o)}: Deprecated attribute used in gobj creation: ${i}`), l += Ge(o, e, t, s)) : r && (r(o, i), l--);
999
+ t ? (-1 === n || t.flag & n) && (t.flag & R.SDF_DEPRECATED && sr(`${kt(o)}: Deprecated attribute used in gobj creation: ${i}`), l += Ge(o, e, t, s)) : r && (r(o, i), l--);
1000
1000
  }
1001
1001
  return l;
1002
1002
  })(Ve(e), r, -1, e.gclass.gclass_flag & P.gcflag_ignore_unknown_attrs ? 0 : st, e) < 0 && (ir(`${kt(e)} json2data() FAILED`), $o(r));
@@ -1008,7 +1008,7 @@ var gobjJs = function(e) {
1008
1008
  } else {
1009
1009
  if (!o) return ir("gobj NEEDS a parent!"), null;
1010
1010
  if (!("string" == typeof o || o instanceof I)) return ir(`BAD TYPE of parent: ${o}`), null;
1011
- if (Yo(o)) {
1011
+ if (Jo(o)) {
1012
1012
  const e = o;
1013
1013
  if (!(o = nt(e))) return sr(`parent service not found: ${e}`), null;
1014
1014
  }
@@ -1018,11 +1018,11 @@ var gobjJs = function(e) {
1018
1018
  if (m) return ir(`default service ALREADY registered: ${t}^${e}`), null;
1019
1019
  l |= L.gobj_flag_service;
1020
1020
  }
1021
- if (Xo(t)) return ir("gclass_name must be a string"), null;
1021
+ if (Zo(t)) return ir("gclass_name must be a string"), null;
1022
1022
  let i = et(t, !1);
1023
1023
  if (!i) return ir(`GClass not registered: ${t}^${e}`), null;
1024
- if (!Yo(e)) return ir(`gobj_name must be a string: ${t}`), null;
1025
- if (!Xo(e)) {
1024
+ if (!Jo(e)) return ir(`gobj_name must be a string: ${t}`), null;
1025
+ if (!Zo(e)) {
1026
1026
  if (e.includes("`")) return ir(`gobj_name cannot contain char ': ${t}^${e}`), null;
1027
1027
  if (e.includes("^")) return ir(`gobj_name cannot contain char ^: ${t}^${e}`), null;
1028
1028
  }
@@ -1064,7 +1064,7 @@ var gobjJs = function(e) {
1064
1064
  t && K(n("💔💔⏩ destroying: %s", Ct(e)));
1065
1065
  let r = It(e);
1066
1066
  r && r.gclass.gmt.mt_child_removed && (t && K(n("👦👦🔴 child_removed(%s): %s", Ct(r), kt(e))), r.gclass.gmt.mt_child_removed(r, e)), e.gobj_flag & L.gobj_flag_service && function(e) {
1067
- let t = Rt(e);
1067
+ let t = At(e);
1068
1068
  t = t.toLowerCase(), b[t] ? delete b[t] : ir(`"service NOT found in register": ${t}`);
1069
1069
  }(e), e === m && (m = null), Cn(e, e.dl_subscriptions, !0), Cn(e, e.dl_subscribings, !0), r && (lt(r, e), Pt(e) && (Ft(r) !== e || Ut(r) || Mt(r, null))), function(e) {
1070
1070
  let t = e.dl_children.slice();
@@ -1078,17 +1078,38 @@ var gobjJs = function(e) {
1078
1078
  if (Ut(e)) return ir("gobj NULL or DESTROYED"), -1;
1079
1079
  if (e.running) return ir(`${kt(e)}: GObj ALREADY RUNNING`), -1;
1080
1080
  if (e.disabled) return ir(`${kt(e)}: GObj DISABLED`), -1;
1081
+ const t = function(e) {
1082
+ const t = Ve(e), n = [];
1083
+ if (!Yo(e.gclass.attrs_table)) return null;
1084
+ for (const r of e.gclass.attrs_table) {
1085
+ if (!(r.name && r.flag & R.SDF_REQUIRED)) continue;
1086
+ const e = t[r.name];
1087
+ switch (r.type) {
1088
+ case E.DTP_STRING:
1089
+ Jo(e) && !Zo(e) || n.push(r.name);
1090
+ break;
1091
+ case E.DTP_LIST:
1092
+ case E.DTP_DICT:
1093
+ case E.DTP_JSON:
1094
+ Ko(e) && n.push(r.name);
1095
+ break;
1096
+ case E.DTP_POINTER: e || n.push(r.name);
1097
+ }
1098
+ }
1099
+ return n.length ? n : null;
1100
+ }(e);
1101
+ if (t) return ir(`${kt(e)}: Cannot start without all required attributes: ` + JSON.stringify(t)), -1;
1081
1102
  ne(e) && K(n("⏺ ⏺ start: %s", Ct(e))), e.running = !0;
1082
- let t = 0;
1103
+ let r = 0;
1083
1104
  if (e.gclass.gmt.mt_start) {
1084
- const n = vn(e, "mt_start", y.FRAME_METHOD);
1105
+ const t = vn(e, "mt_start", y.FRAME_METHOD);
1085
1106
  try {
1086
- t = e.gclass.gmt.mt_start(e);
1107
+ r = e.gclass.gmt.mt_start(e);
1087
1108
  } finally {
1088
- En(n);
1109
+ En(t);
1089
1110
  }
1090
1111
  }
1091
- return t;
1112
+ return r;
1092
1113
  }
1093
1114
  function gt(e) {
1094
1115
  const t = vn(e, "gobj_start", y.FRAME_WATCH);
@@ -1141,7 +1162,8 @@ var gobjJs = function(e) {
1141
1162
  if (e.disabled) return ir(`${kt(e)}: GObj DISABLED`), -1;
1142
1163
  if (!Tt(e)) {
1143
1164
  if (e.gclass.gclass_flag & P.gcflag_required_start_to_play) return ir(`${kt(e)}: Cannot play, start not done`), -1;
1144
- sr(`${kt(e)}: GObj playing without previous start`), ft(e);
1165
+ if (sr(`${kt(e)}: GObj playing without previous start`), gt(e)) return -1;
1166
+ if (!e.running) return -1;
1145
1167
  }
1146
1168
  ne(e) && K(n("⏯ ⏯ play: %s", Ct(e))), e.playing = !0;
1147
1169
  let t = 0;
@@ -1186,115 +1208,128 @@ var gobjJs = function(e) {
1186
1208
  }
1187
1209
  function Nt() {
1188
1210
  let e = wt();
1189
- return e ? Rt(e) : "";
1211
+ return e ? At(e) : "";
1190
1212
  }
1191
1213
  function $t() {
1192
1214
  let e = wt();
1193
1215
  return e ? tn(e, "yuno_role") : "";
1194
1216
  }
1195
- function At() {
1217
+ function Rt() {
1196
1218
  let e = wt();
1197
1219
  return e ? tn(e, "yuno_id") : "";
1198
1220
  }
1199
- function Rt(e) {
1200
- return Qo(e) ? e.gobj_name : (ir("gobj bad type"), null);
1221
+ function At(e) {
1222
+ return Xo(e) ? e.gobj_name : (ir("gobj bad type"), null);
1201
1223
  }
1202
1224
  function Dt(e) {
1203
- return Qo(e) ? e.gclass.gclass_name : (ir("gobj NULL of bad type"), null);
1225
+ return Xo(e) ? e.gclass.gclass_name : (ir("gobj NULL of bad type"), null);
1204
1226
  }
1205
1227
  function kt(e) {
1206
- return Qo(e) ? e.gclass.gclass_name + "^" + Rt(e) : (ir("gobj bad type"), null);
1228
+ return Xo(e) ? e.gclass.gclass_name + "^" + At(e) : (ir("gobj bad type"), null);
1207
1229
  }
1208
1230
  function Ct(e) {
1209
- if (!Qo(e)) return ir("gobj NULL of bad type"), null;
1231
+ if (!Xo(e)) return ir("gobj NULL of bad type"), null;
1210
1232
  let t = kt(e), n = It(e);
1211
1233
  for (; n;) t = kt(n) + "`" + t, n = It(n);
1212
1234
  return t;
1213
1235
  }
1214
1236
  function It(e) {
1215
- return Qo(e) ? e.parent : (ir("gobj NULL of bad type"), null);
1237
+ return Xo(e) ? e.parent : (ir("gobj NULL of bad type"), null);
1216
1238
  }
1217
1239
  function Pt(e) {
1218
- return Qo(e) ? !!(e.gobj_flag & L.gobj_flag_volatil) : (ir("gobj NULL of bad type"), null);
1240
+ return Xo(e) ? !!(e.gobj_flag & L.gobj_flag_volatil) : (ir("gobj NULL of bad type"), null);
1219
1241
  }
1220
1242
  function Lt(e) {
1221
- return Qo(e) ? !!(e.gobj_flag & L.gobj_flag_pure_child) : (ir("gobj NULL of bad type"), null);
1243
+ return Xo(e) ? !!(e.gobj_flag & L.gobj_flag_pure_child) : (ir("gobj NULL of bad type"), null);
1222
1244
  }
1223
1245
  function Ut(e) {
1224
- return !Qo(e) || !!(e.obflag & (U.obflag_destroyed | U.obflag_destroying));
1246
+ return !Xo(e) || !!(e.obflag & (U.obflag_destroyed | U.obflag_destroying));
1225
1247
  }
1226
1248
  function Ft(e) {
1227
- return Qo(e) ? e.bottom_gobj : (ir("gobj NULL of bad type"), null);
1249
+ return Xo(e) ? e.bottom_gobj : (ir("gobj NULL of bad type"), null);
1228
1250
  }
1229
1251
  function Mt(e, t) {
1230
- if (!Qo(e)) return ir("gobj NULL of bad type"), null;
1252
+ if (!Xo(e)) return ir("gobj NULL of bad type"), null;
1231
1253
  e.bottom_gobj && t && sr(`${kt(e)}: bottom_gobj already set`), e.bottom_gobj = t;
1232
1254
  }
1233
1255
  function Gt(e, t, n) {
1234
- return Qo(e) ? t ? xe(e.gclass, t, n) : e.gclass.attrs_table : (ir("gobj NULL of bad type"), null);
1256
+ return Xo(e) ? t ? xe(e.gclass, t, n) : e.gclass.attrs_table : (ir("gobj NULL of bad type"), null);
1235
1257
  }
1236
1258
  function Vt(e, t, n, r, o) {
1237
- return Ut(e) ? (ir("gobj NULL, destroying, or bad type"), 0) : Kt(e.dl_children, t, n, r, o);
1259
+ return Ut(e) ? (ir("gobj NULL, destroying, or bad type"), 0) : function(e, t, n, r, o, l) {
1260
+ let i, s = [...e.dl_children];
1261
+ if (n & M.WALK_LAST2FIRST) for (let n = s.length; n > 0; n--) {
1262
+ if (i = s[n - 1], Kt(i, e, t)) continue;
1263
+ t.add(i);
1264
+ let a = xt(r(i, o, l));
1265
+ if (a < 0) return a;
1266
+ }
1267
+ else for (let n = 0; n < s.length; n++) {
1268
+ if (i = s[n], Kt(i, e, t)) continue;
1269
+ t.add(i);
1270
+ let a = xt(r(i, o, l));
1271
+ if (a < 0) return a;
1272
+ }
1273
+ return 0;
1274
+ }(e, /* @__PURE__ */ new Set(), t, n, r, o);
1238
1275
  }
1239
1276
  function Wt(e, t, n, r, o) {
1240
- return Ut(e) ? (ir("gobj NULL, destroying, or bad type"), 0) : Yt(e.dl_children, t, n, r, o);
1277
+ return Ut(e) ? (ir("gobj NULL, destroying, or bad type"), 0) : Yt(e, /* @__PURE__ */ new Set(), t, n, r, o);
1241
1278
  }
1242
1279
  function xt(e) {
1243
1280
  return "number" == typeof e && isFinite(e) ? e : (null == e || ir(`walk callback must return a NUMBER (-1 stop, 0 descend, >0 skip children), got ${typeof e}: taken as 0`), 0);
1244
1281
  }
1245
- function Kt(e, t, n, r, o) {
1246
- let l, i = [...e];
1247
- if (t & M.WALK_LAST2FIRST) for (let e = i.length; e > 0; e--) {
1248
- if (l = i[e - 1], Ut(l)) continue;
1249
- let t = xt(n(l, r, o));
1250
- if (t < 0) return t;
1282
+ function Kt(e, t, n) {
1283
+ return Ut(e) || e.parent !== t || n.has(e);
1284
+ }
1285
+ function Bt(e, t, n, r, o, l) {
1286
+ let i = [...e.dl_children];
1287
+ n & M.WALK_LAST2FIRST && i.reverse();
1288
+ let s = [];
1289
+ for (const n of i) {
1290
+ if (Kt(n, e, t)) continue;
1291
+ t.add(n), s.push(n);
1292
+ let i = xt(r(n, o, l));
1293
+ if (i < 0) return i;
1251
1294
  }
1252
- else for (let e = 0; e < i.length; e++) {
1253
- if (l = i[e], Ut(l)) continue;
1254
- let t = xt(n(l, r, o));
1255
- if (t < 0) return t;
1295
+ for (const e of s) {
1296
+ if (Ut(e)) continue;
1297
+ let i = Bt(e, t, n, r, o, l);
1298
+ if (i < 0) return i;
1256
1299
  }
1257
1300
  return 0;
1258
1301
  }
1259
- function Bt(e, t, n, r, o) {
1260
- let l, i = [...e], s = Kt(i, t, n, r, o);
1261
- if (s < 0) return s;
1262
- if (t & M.WALK_LAST2FIRST) {
1263
- for (let e = i.length; e > 0; e--) if (l = i[e - 1], !Ut(l) && (s = Bt(l.dl_children, t, n, r, o), s < 0)) return s;
1264
- } else for (let e = 0; e < i.length; e++) if (l = i[e], !Ut(l) && (s = Bt(l.dl_children, t, n, r, o), s < 0)) return s;
1265
- return s;
1266
- }
1267
- function Yt(e, t, n, r, o) {
1268
- if (t & M.WALK_BYLEVEL) return Bt(e, t, n, r, o);
1269
- let l, i, s = [...e];
1270
- if (t & M.WALK_BOTTOM2TOP) {
1271
- for (let e = s.length; e > 0; e--) if (i = s[e - 1], !Ut(i)) {
1272
- if (l = Yt(i.dl_children, t, n, r, o), l < 0) return l;
1273
- if (!Ut(i) && (l = xt(n(i, r, o)), l < 0)) return l;
1302
+ function Yt(e, t, n, r, o, l) {
1303
+ if (n & M.WALK_BYLEVEL) return Bt(e, t, n, r, o, l);
1304
+ let i, s, a = [...e.dl_children];
1305
+ if (n & M.WALK_BOTTOM2TOP) {
1306
+ for (let u = a.length; u > 0; u--) if (s = a[u - 1], !Kt(s, e, t)) {
1307
+ if (i = Yt(s, t, n, r, o, l), i < 0) return i;
1308
+ if (!Ut(s) && (t.add(s), i = xt(r(s, o, l)), i < 0)) return i;
1274
1309
  }
1275
- } else for (let e = 0; e < s.length; e++) if (i = s[e], !Ut(i)) {
1276
- if (l = xt(n(i, r, o)), l < 0) return l;
1277
- if (0 === l && !Ut(i) && (l = Yt(i.dl_children, t, n, r, o), l < 0)) return l;
1310
+ } else for (let u = 0; u < a.length; u++) if (s = a[u], !Kt(s, e, t)) {
1311
+ if (t.add(s), i = xt(r(s, o, l)), i < 0) return i;
1312
+ if (0 === i && !Ut(s) && (i = Yt(s, t, n, r, o, l), i < 0)) return i;
1278
1313
  }
1279
1314
  return 0;
1280
1315
  }
1281
1316
  function Jt(e, t) {
1282
- if (!Qo(e)) return ir("gobj NULL of bad type"), !1;
1317
+ if (!Xo(e)) return ir("gobj NULL of bad type"), !1;
1283
1318
  let n = t.__gclass_name__, r = t.__gobj_name__, o = t.__prefix_gobj_name__;
1284
1319
  t.__disabled__;
1285
1320
  let l = t.__state__;
1286
1321
  if (n && n !== Dt(e)) return !1;
1287
- if (r && r !== Rt(e)) return !1;
1322
+ if (r && r !== At(e)) return !1;
1288
1323
  if (o) {
1289
1324
  let t = o.length;
1290
- if (o !== Rt(e).substring(0, t)) return !1;
1325
+ if (o !== At(e).substring(0, t)) return !1;
1291
1326
  }
1292
1327
  if (l && l !== fn(e)) return !1;
1293
1328
  let i = e.jn_attrs;
1294
1329
  for (const n of Object.keys(t)) if ("__gclass_name__" !== n && "__gobj_name__" !== n && "__prefix_gobj_name__" !== n && "__disabled__" !== n && "__state__" !== n && zt(e, n) && i[n] !== t[n]) return !1;
1295
1330
  return !0;
1296
1331
  }
1297
- function Ht(e, t) {
1332
+ function qt(e, t) {
1298
1333
  if (Ut(e)) return ir("gobj NULL or DESTROYED"), null;
1299
1334
  const n = e.dl_children;
1300
1335
  for (let e = 0; e < n.length; e++) {
@@ -1303,7 +1338,7 @@ var gobjJs = function(e) {
1303
1338
  }
1304
1339
  return null;
1305
1340
  }
1306
- function qt(e, t) {
1341
+ function Ht(e, t) {
1307
1342
  if (!t) return null;
1308
1343
  let n = t.split("`");
1309
1344
  if (!function(e, t) {
@@ -1314,16 +1349,16 @@ var gobjJs = function(e) {
1314
1349
  if (1 !== n.length) return !1;
1315
1350
  r = n[0];
1316
1351
  }
1317
- return r === Rt(e);
1352
+ return r === At(e);
1318
1353
  }(e, n[0])) return null;
1319
1354
  if (1 === n.length) return e;
1320
1355
  let r = n[1].split("^"), o = {};
1321
1356
  1 === r.length ? o.__gobj_name__ = r : (o.__gclass_name__ = r[0], o.__gobj_name__ = r[1]);
1322
- let l = Ht(e, o);
1323
- return l ? (n.splice(0, 1), n = n.join("`"), qt(l, n)) : null;
1357
+ let l = qt(e, o);
1358
+ return l ? (n.splice(0, 1), n = n.join("`"), Ht(l, n)) : null;
1324
1359
  }
1325
1360
  function zt(e, t) {
1326
- return !Xo(t) && !!xe(e.gclass, t, !1);
1361
+ return !Zo(t) && !!xe(e.gclass, t, !1);
1327
1362
  }
1328
1363
  function Qt(e, t, n) {
1329
1364
  let r = e.jn_attrs;
@@ -1346,21 +1381,21 @@ var gobjJs = function(e) {
1346
1381
  }
1347
1382
  function Zt(e, t) {
1348
1383
  if (t) {
1349
- if (0 === tl(t, "__disabled__")) return jt(e);
1350
- if (0 === tl(t, "__running__")) return Tt(e);
1351
- if (0 === tl(t, "__playing__")) return St(e);
1352
- if (0 === tl(t, "__service__")) return Ot(e);
1384
+ if (0 === nl(t, "__disabled__")) return jt(e);
1385
+ if (0 === nl(t, "__running__")) return Tt(e);
1386
+ if (0 === nl(t, "__playing__")) return St(e);
1387
+ if (0 === nl(t, "__service__")) return Ot(e);
1353
1388
  }
1354
1389
  let n = We(e, t, !1);
1355
1390
  return n ? !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? Io(n, t) : e.gclass.gmt.mt_reading(e, t) : (ir(`${kt(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
1356
1391
  }
1357
1392
  function en(e, t) {
1358
- t && tl(t, "__trace_level__");
1393
+ t && nl(t, "__trace_level__");
1359
1394
  let n = We(e, t, !1);
1360
1395
  return n ? !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? Io(n, t) : e.gclass.gmt.mt_reading(e, t) : (ir(`${kt(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
1361
1396
  }
1362
1397
  function tn(e, t) {
1363
- if (t && 0 === tl(t, "__state__")) return fn(e);
1398
+ if (t && 0 === nl(t, "__state__")) return fn(e);
1364
1399
  let n = We(e, t, !1);
1365
1400
  return n ? !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? Io(n, t) : e.gclass.gmt.mt_reading(e, t) : (ir(`${kt(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
1366
1401
  }
@@ -1369,7 +1404,7 @@ var gobjJs = function(e) {
1369
1404
  return n ? !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? Io(n, t) : e.gclass.gmt.mt_reading(e, t) : (ir(`${kt(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
1370
1405
  }
1371
1406
  function rn(e, t, r, o) {
1372
- if (!Yo(t)) return ir(n("gobj_write_attr(%s): path must be a string", kt(e))), -1;
1407
+ if (!Jo(t)) return ir(n("gobj_write_attr(%s): path must be a string", kt(e))), -1;
1373
1408
  let l, i = e.jn_attrs, s = t.split("`");
1374
1409
  if (s.length <= 1) {
1375
1410
  let o = t;
@@ -1378,7 +1413,7 @@ var gobjJs = function(e) {
1378
1413
  let a = s.length;
1379
1414
  for (let t = 0; t < a; t++) {
1380
1415
  l = s[t];
1381
- let n = Ht(e, { __gobj_name__: l });
1416
+ let n = qt(e, { __gobj_name__: l });
1382
1417
  if (n && t < a - 1) {
1383
1418
  e = n;
1384
1419
  continue;
@@ -1397,7 +1432,7 @@ var gobjJs = function(e) {
1397
1432
  let o;
1398
1433
  if (T(n)) {
1399
1434
  if (null == r) return { value: "" };
1400
- if (Yo(r)) return { value: r };
1435
+ if (Jo(r)) return { value: r };
1401
1436
  o = {
1402
1437
  value: Fe(r),
1403
1438
  refused: Ue
@@ -1427,7 +1462,7 @@ var gobjJs = function(e) {
1427
1462
  let r = We(e, t, !1);
1428
1463
  if (r) {
1429
1464
  const o = ln(e, t, E.DTP_BOOLEAN, n);
1430
- return o.refused ? -1 : (r[t] = o.value, Ko(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, t) && (e.priv[t] = r[t]), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0);
1465
+ return o.refused ? -1 : (r[t] = o.value, Bo(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, t) && (e.priv[t] = r[t]), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0);
1431
1466
  }
1432
1467
  return ir(`${kt(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1;
1433
1468
  }
@@ -1435,7 +1470,7 @@ var gobjJs = function(e) {
1435
1470
  let r = We(e, t, !1);
1436
1471
  if (r) {
1437
1472
  const o = ln(e, t, E.DTP_INTEGER, n);
1438
- return o.refused ? -1 : (r[t] = o.value, Ko(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, t) && (e.priv[t] = r[t]), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0);
1473
+ return o.refused ? -1 : (r[t] = o.value, Bo(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, t) && (e.priv[t] = r[t]), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0);
1439
1474
  }
1440
1475
  return ir(`${kt(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1;
1441
1476
  }
@@ -1443,7 +1478,7 @@ var gobjJs = function(e) {
1443
1478
  let r = We(e, t, !1);
1444
1479
  if (r) {
1445
1480
  const o = ln(e, t, E.DTP_STRING, n);
1446
- return o.refused ? -1 : (r[t] = o.value, Ko(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, t) && (e.priv[t] = r[t]), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0);
1481
+ return o.refused ? -1 : (r[t] = o.value, Bo(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, t) && (e.priv[t] = r[t]), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0);
1447
1482
  }
1448
1483
  return ir(`${kt(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1;
1449
1484
  }
@@ -1456,13 +1491,13 @@ var gobjJs = function(e) {
1456
1491
  let o = oe(e, "EV_STATE_CHANGED"), l = !!function(e) {
1457
1492
  return X(e) & B.TRACE_STATES;
1458
1493
  }(e);
1459
- return (o || l) && (1 === x || K(n("🔀🔀 mach(%s%s^%s), new st(%s), prev st(%s)", e.running ? "" : "!!", Dt(e), Rt(e), fn(e), e.last_state.state_name))), !0;
1494
+ return (o || l) && (1 === x || K(n("🔀🔀 mach(%s%s^%s), new st(%s), prev st(%s)", e.running ? "" : "!!", Dt(e), At(e), fn(e), e.last_state.state_name))), !0;
1460
1495
  }
1461
1496
  function fn(e) {
1462
- return Qo(e) ? e.current_state.state_name : (ir("hgobj NULL"), "");
1497
+ return Xo(e) ? e.current_state.state_name : (ir("hgobj NULL"), "");
1463
1498
  }
1464
1499
  function gn(e, t, n) {
1465
- if (!Qo(e)) return ir("gobj NULL of bad type"), null;
1500
+ if (!Xo(e)) return ir("gobj NULL of bad type"), null;
1466
1501
  let r = Xe(e.gclass, t);
1467
1502
  if (r) return r;
1468
1503
  if (n) {
@@ -1484,7 +1519,7 @@ var gobjJs = function(e) {
1484
1519
  }
1485
1520
  var pn = [], mn = !1;
1486
1521
  function hn(e, t, r, o) {
1487
- return e && e instanceof I ? e.obflag & (U.obflag_destroyed | U.obflag_destroying) ? (ir(`gobj_post_event(): gobj dst DESTROYING, event ${t}`), -1) : Xo(t) ? (ir("gobj_post_event(): event EMPTY"), -1) : dn(e, t, 0) ? pn.length >= 1e4 ? (ir(`gobj_post_event(): too many posted events, this is NOT a work queue, event ${t}, pending ${pn.length}`), -1) : (pn.push({
1522
+ return e && e instanceof I ? e.obflag & (U.obflag_destroyed | U.obflag_destroying) ? (ir(`gobj_post_event(): gobj dst DESTROYING, event ${t}`), -1) : Zo(t) ? (ir("gobj_post_event(): event EMPTY"), -1) : dn(e, t, 0) ? pn.length >= 1e4 ? (ir(`gobj_post_event(): too many posted events, this is NOT a work queue, event ${t}, pending ${pn.length}`), -1) : (pn.push({
1488
1523
  dst: e,
1489
1524
  event: t,
1490
1525
  kw: r,
@@ -1544,13 +1579,13 @@ var gobjJs = function(e) {
1544
1579
  En(s);
1545
1580
  }
1546
1581
  }
1547
- return i && K(n("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Dt(e), Rt(e), l.state_name, t || "", o && !o.running ? "!!" : "", Dt(o), Rt(o))), ir(`📛📛 Event NOT DEFINED in state 📛📛: ${kt(e)}, ${l.state_name}, ${t}`), h--, -1;
1582
+ return i && K(n("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Dt(e), At(e), l.state_name, t || "", o && !o.running ? "!!" : "", Dt(o), At(o))), ir(`📛📛 Event NOT DEFINED in state 📛📛: ${kt(e)}, ${l.state_name}, ${t}`), h--, -1;
1548
1583
  }
1549
1584
  if (i) {
1550
1585
  if (1 === x) K(n("🔄 %s %s%s %s from %s%s", t || "", e.running ? "" : "!!", kt(e), l.state_name, o && !o.running ? "!!" : "", kt(o)));
1551
1586
  else {
1552
1587
  let r = "";
1553
- s.action && (r = Ql(s.action)), K(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Dt(e), Rt(e), l.state_name, "", t || "", "", r, o && !o.running ? "!!" : "", Dt(o), Rt(o)));
1588
+ s.action && (r = ti(s.action)), K(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Dt(e), At(e), l.state_name, "", t || "", "", r, o && !o.running ? "!!" : "", Dt(o), At(o)));
1554
1589
  }
1555
1590
  r && re(e) && Vo(r) && $o(r);
1556
1591
  }
@@ -1569,7 +1604,7 @@ var gobjJs = function(e) {
1569
1604
  } finally {
1570
1605
  En(a);
1571
1606
  }
1572
- return i && 1 !== x && !a.destroyed && K(n("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Dt(e), Rt(e), e.current_state.state_name, t || "", Jo(u) ? u : 0)), h--, u;
1607
+ return i && 1 !== x && !a.destroyed && K(n("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Dt(e), At(e), e.current_state.state_name, t || "", qo(u) ? u : 0)), h--, u;
1573
1608
  }
1574
1609
  var On = Object.freeze({
1575
1610
  __rename_event_name__: 1,
@@ -1602,39 +1637,39 @@ var gobjJs = function(e) {
1602
1637
  ];
1603
1638
  function Nn(e, t) {
1604
1639
  let n = e ? e.__config__ : null;
1605
- if (!Ko(n) || !ol(n, "__hard_subscription__") && !ol(n, "__own_event__") && !ol(n, "__rename_event_name__")) return {
1640
+ if (!Bo(n) || !ll(n, "__hard_subscription__") && !ll(n, "__own_event__") && !ll(n, "__rename_event_name__")) return {
1606
1641
  kw: e,
1607
1642
  renamed_event: ""
1608
1643
  };
1609
1644
  let r = Do({}, e), o = Do({}, n);
1610
1645
  r.__config__ = o;
1611
- let l = "", i = o.__rename_event_name__, s = "string" != typeof i || Xo(i) ? null : Sn(i, 0, !1);
1646
+ let l = "", i = o.__rename_event_name__, s = "string" != typeof i || Zo(i) ? null : Sn(i, 0, !1);
1612
1647
  return s && (l = s.event_name, delete o.__rename_event_name__, t && xo(r.__global__) > 0 && (r.__global__ = Do(Do({}, r.__global__), { __original_event_name__: t }))), delete o.__hard_subscription__, delete o.__own_event__, {
1613
1648
  kw: r,
1614
1649
  renamed_event: l
1615
1650
  };
1616
1651
  }
1617
1652
  function $n(e, t, n, r, o, l) {
1618
- let i = dl(t, o, "__config__", null), s = dl(t, o, "__global__", null), a = dl(t, o, "__local__", null), u = bl(t, o, "__filter__", null), _ = !0;
1619
- if (t && t !== gl(null, e, "publisher", null) && (_ = !1), l && l !== gl(null, e, "subscriber", null) && (_ = !1), n && n !== fl(null, e, "event", "") && (_ = !1), r && r !== fl(null, e, "renamed_event", "") && (_ = !1), xo(i) > 0) {
1620
- let t = dl(null, e, "__config__", null);
1621
- xo(t) > 0 && Ro(t, i) || (_ = !1);
1653
+ let i = bl(t, o, "__config__", null), s = bl(t, o, "__global__", null), a = bl(t, o, "__local__", null), u = pl(t, o, "__filter__", null), _ = !0;
1654
+ if (t && t !== dl(null, e, "publisher", null) && (_ = !1), l && l !== dl(null, e, "subscriber", null) && (_ = !1), n && n !== gl(null, e, "event", "") && (_ = !1), r && r !== gl(null, e, "renamed_event", "") && (_ = !1), xo(i) > 0) {
1655
+ let t = bl(null, e, "__config__", null);
1656
+ xo(t) > 0 && Ao(t, i) || (_ = !1);
1622
1657
  }
1623
1658
  if (xo(s) > 0) {
1624
- let t = dl(null, e, "__global__", null);
1625
- xo(t) > 0 && Ro(t, s) || (_ = !1);
1659
+ let t = bl(null, e, "__global__", null);
1660
+ xo(t) > 0 && Ao(t, s) || (_ = !1);
1626
1661
  }
1627
1662
  if (xo(a) > 0) {
1628
- let t = dl(null, e, "__local__", null);
1629
- xo(t) > 0 && Ro(t, a) || (_ = !1);
1663
+ let t = bl(null, e, "__local__", null);
1664
+ xo(t) > 0 && Ao(t, a) || (_ = !1);
1630
1665
  }
1631
1666
  if (xo(u) > 0) {
1632
- let t = bl(null, e, "__filter__", null);
1633
- xo(t) > 0 && Ro(t, u) || (_ = !1);
1667
+ let t = pl(null, e, "__filter__", null);
1668
+ xo(t) > 0 && Ao(t, u) || (_ = !1);
1634
1669
  }
1635
1670
  return _;
1636
1671
  }
1637
- function An(e, t, n, r, o, l) {
1672
+ function Rn(e, t, n, r, o, l) {
1638
1673
  let i = [];
1639
1674
  for (let s = 0; s < e.length; s++) {
1640
1675
  let a = e[s];
@@ -1642,17 +1677,17 @@ var gobjJs = function(e) {
1642
1677
  }
1643
1678
  return i;
1644
1679
  }
1645
- function Rn(e, t) {
1680
+ function An(e, t) {
1646
1681
  return e.indexOf(t);
1647
1682
  }
1648
1683
  function Dn(e, t, r, o) {
1649
- let l = gl(e, t, "publisher", null, Un.KW_REQUIRED), i = gl(e, t, "subscriber", null, Un.KW_REQUIRED), s = fl(e, t, "event", "", Un.KW_REQUIRED);
1650
- if (!!(cl(e, t, "subs_flag", null, Un.KW_REQUIRED) & On.__hard_subscription__) && !r) return -1;
1684
+ let l = dl(e, t, "publisher", null, Un.KW_REQUIRED), i = dl(e, t, "subscriber", null, Un.KW_REQUIRED), s = gl(e, t, "event", "", Un.KW_REQUIRED);
1685
+ if (!!(fl(e, t, "subs_flag", null, Un.KW_REQUIRED) & On.__hard_subscription__) && !r) return -1;
1651
1686
  let a = te(i) || te(l);
1652
- if (Rn(l.dl_subscriptions, t) < 0) return a && K(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s', ALREADY REMOVED", s || "", kt(l), kt(i))), 1;
1687
+ if (An(l.dl_subscriptions, t) < 0) return a && K(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s', ALREADY REMOVED", s || "", kt(l), kt(i))), 1;
1653
1688
  a && (K(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", s || "", kt(l), kt(i))), _r(t)), l.obflag & U.obflag_destroyed || o || l.gclass.gmt.mt_subscription_deleted && l.gclass.gmt.mt_subscription_deleted(l, t);
1654
- let u = Rn(l.dl_subscriptions, t);
1655
- return u >= 0 ? Go(l.dl_subscriptions, u) : (ir(`${kt(e)}: subscription in publisher not found`), _r(t)), u = Rn(i.dl_subscribings, t), u >= 0 ? Go(i.dl_subscribings, u) : (ir(`${kt(e)}: subscription in subscriber not found`), _r(t)), 0;
1689
+ let u = An(l.dl_subscriptions, t);
1690
+ return u >= 0 ? Go(l.dl_subscriptions, u) : (ir(`${kt(e)}: subscription in publisher not found`), _r(t)), u = An(i.dl_subscribings, t), u >= 0 ? Go(i.dl_subscribings, u) : (ir(`${kt(e)}: subscription in subscriber not found`), _r(t)), 0;
1656
1691
  }
1657
1692
  function kn(e, t, r, o) {
1658
1693
  if (null == r && (r = {}), !e) return ir(`publisher NULL: ev ${t}`), 0;
@@ -1666,10 +1701,10 @@ var gobjJs = function(e) {
1666
1701
  ]);
1667
1702
  if (Object.keys(r).forEach((n) => {
1668
1703
  l.has(n) || ir(`${kt(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
1669
- }), Xo(t)) t = "";
1704
+ }), Zo(t)) t = "";
1670
1705
  else if (!(bn(e, t, F.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & P.gcflag_no_check_output_events)) return ir(`event NOT in output event list: ${kt(e)}, ${t}`), 0;
1671
- let i = Nn(r, t), s = An(e.dl_subscriptions, e, t, i.renamed_event, i.kw, o), a = null;
1672
- for (let t = 0; t < s.length; t++) if (cl(e, s[t], "subs_flag", 0, Un.KW_REQUIRED) & On.__hard_subscription__) {
1706
+ let i = Nn(r, t), s = Rn(e.dl_subscriptions, e, t, i.renamed_event, i.kw, o), a = null;
1707
+ for (let t = 0; t < s.length; t++) if (fl(e, s[t], "subs_flag", 0, Un.KW_REQUIRED) & On.__hard_subscription__) {
1673
1708
  a = s[t];
1674
1709
  break;
1675
1710
  }
@@ -1680,29 +1715,29 @@ var gobjJs = function(e) {
1680
1715
  Uo(o, "event", t), Uo(o, "subscriber", r), Uo(o, "publisher", e);
1681
1716
  let l = 0;
1682
1717
  if (n) {
1683
- let r = dl(e, n, "__config__", null), i = dl(e, n, "__global__", null), s = dl(e, n, "__local__", null), a = bl(e, n, "__filter__", null), u = fl(e, n, "__service__", "");
1684
- if (xo(i) > 0 && Uo(o, "__global__", Ao(i)), xo(r) > 0) {
1685
- let n = Ao(r);
1718
+ let r = bl(e, n, "__config__", null), i = bl(e, n, "__global__", null), s = bl(e, n, "__local__", null), a = pl(e, n, "__filter__", null), u = gl(e, n, "__service__", "");
1719
+ if (xo(i) > 0 && Uo(o, "__global__", Ro(i)), xo(r) > 0) {
1720
+ let n = Ro(r);
1686
1721
  Uo(o, "__config__", n);
1687
- let i = fl(e, n, "__rename_event_name__", "");
1688
- if (!Xo(i)) {
1722
+ let i = gl(e, n, "__rename_event_name__", "");
1723
+ if (!Zo(i)) {
1689
1724
  let r = Sn(i, 0, !1);
1690
1725
  if (r) {
1691
1726
  Uo(o, "renamed_event", r.event_name), delete n.__rename_event_name__, l |= On.__rename_event_name__;
1692
- let i = dl(e, o, "__global__", null);
1693
- Ko(i) || (i = {}, Uo(o, "__global__", i)), i.__original_event_name__ = t;
1727
+ let i = bl(e, o, "__global__", null);
1728
+ Bo(i) || (i = {}, Uo(o, "__global__", i)), i.__original_event_name__ = t;
1694
1729
  } else ir(`${kt(e)}: EVENT NOT FOUND (__rename_event_name__: ${i})`);
1695
1730
  }
1696
- if (ol(n, "__hard_subscription__")) {
1697
- let t = _l(e, n, "__hard_subscription__", !1);
1731
+ if (ll(n, "__hard_subscription__")) {
1732
+ let t = cl(e, n, "__hard_subscription__", !1);
1698
1733
  Po(n, "__hard_subscription__"), t && (l |= On.__hard_subscription__);
1699
1734
  }
1700
- if (ol(n, "__own_event__")) {
1701
- let t = _l(e, n, "__own_event__", !1);
1735
+ if (ll(n, "__own_event__")) {
1736
+ let t = cl(e, n, "__own_event__", !1);
1702
1737
  Po(n, "__own_event__"), t && (l |= On.__own_event__);
1703
1738
  }
1704
1739
  }
1705
- xo(s) > 0 && Uo(o, "__local__", Ao(s)), xo(a) > 0 && Uo(o, "__filter__", Ao(a)), Xo(u) || Uo(o, "__service__", u);
1740
+ xo(s) > 0 && Uo(o, "__local__", Ro(s)), xo(a) > 0 && Uo(o, "__filter__", Ro(a)), Zo(u) || Uo(o, "__service__", u);
1706
1741
  }
1707
1742
  return Uo(o, "subs_flag", l), o;
1708
1743
  }(e, t, r, o);
@@ -1719,18 +1754,18 @@ var gobjJs = function(e) {
1719
1754
  return o && sr(`${kt(e)}: Subscription(s) already removed, nothing to remove (count: ${o})`), 0;
1720
1755
  }
1721
1756
  function In(e, t, n, r) {
1722
- return null == n && (n = {}), An(e.dl_subscriptions, e, t, null, n, r);
1757
+ return null == n && (n = {}), Rn(e.dl_subscriptions, e, t, null, n, r);
1723
1758
  }
1724
1759
  function Pn(e, t, n, r) {
1725
- return An(e.dl_subscribings, r, t, null, n, e);
1760
+ return Rn(e.dl_subscribings, r, t, null, n, e);
1726
1761
  }
1727
1762
  function Ln(e, t, r) {
1728
- if (Ko(r) || (r = {}), !e || e.obflag & (U.obflag_destroyed | U.obflag_destroying)) return ir("gobj NULL or DESTROYED"), -1;
1729
- if (Xo(t)) return ir(`${kt(e)}: event EMPTY`), -1;
1763
+ if (Bo(r) || (r = {}), !e || e.obflag & (U.obflag_destroyed | U.obflag_destroying)) return ir("gobj NULL or DESTROYED"), -1;
1764
+ if (Zo(t)) return ir(`${kt(e)}: event EMPTY`), -1;
1730
1765
  let o = gn(e, t, !0);
1731
1766
  if (!(o && o.event_flag & (F.EVF_SYSTEM_EVENT | F.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & P.gcflag_no_check_output_events)) return ir(`event NOT in output event list: ${kt(e)}, ev ${t}`), -1;
1732
1767
  let l = (te(e) || oe(e, t)) && !le(e, t);
1733
- if (l && (K(1 === x ? n("🔝🔝 %s %s%s %s", t || "", e.running ? "" : "!!", kt(e), e.current_state.state_name) : n("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Dt(e), Rt(e), e.current_state.state_name, "", t || "", "")), re(e) && Vo(r) && $o(r)), e.gclass.gmt.mt_publish_event) {
1768
+ if (l && (K(1 === x ? n("🔝🔝 %s %s%s %s", t || "", e.running ? "" : "!!", kt(e), e.current_state.state_name) : n("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Dt(e), At(e), e.current_state.state_name, "", t || "", "")), re(e) && Vo(r) && $o(r)), e.gclass.gmt.mt_publish_event) {
1734
1769
  let n = e.gclass.gmt.mt_publish_event(e, t, r);
1735
1770
  if (n <= 0) return n;
1736
1771
  }
@@ -1744,20 +1779,20 @@ var gobjJs = function(e) {
1744
1779
  if (n < 0) break;
1745
1780
  if (!n) continue;
1746
1781
  }
1747
- let c = gl(e, _, "subscriber", null, Un.KW_REQUIRED);
1782
+ let c = dl(e, _, "subscriber", null, Un.KW_REQUIRED);
1748
1783
  if (!c || Ut(c)) continue;
1749
- let f = cl(e, _, "subs_flag", 0, Un.KW_REQUIRED), g = fl(e, _, "event", "", Un.KW_REQUIRED);
1750
- if (Xo(g) || 0 === tl(g, t)) {
1751
- dl(e, _, "__config__", null, 0);
1752
- let o = dl(e, _, "__global__", null, 0), i = dl(e, _, "__local__", null, 0), g = bl(e, _, "__filter__", null, 0), d = _.renamed_event;
1753
- Xo(d) && (d = t);
1784
+ let f = fl(e, _, "subs_flag", 0, Un.KW_REQUIRED), g = gl(e, _, "event", "", Un.KW_REQUIRED);
1785
+ if (Zo(g) || 0 === nl(g, t)) {
1786
+ bl(e, _, "__config__", null, 0);
1787
+ let o = bl(e, _, "__global__", null, 0), i = bl(e, _, "__local__", null, 0), g = pl(e, _, "__filter__", null, 0), d = _.renamed_event;
1788
+ Zo(d) && (d = t);
1754
1789
  let b = 1;
1755
- if (e.gclass.gmt.mt_publication_filter ? b = e.gclass.gmt.mt_publication_filter(e, t, r, c) : xo(g) > 0 && (b = yl(r, g) ? 1 : 0, l && (K(n("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", b ? "👍" : "👎", t || "", kt(c), kt(e))), _r(g))), b < 0) break;
1790
+ if (e.gclass.gmt.mt_publication_filter ? b = e.gclass.gmt.mt_publication_filter(e, t, r, c) : xo(g) > 0 && (b = vl(r, g) ? 1 : 0, l && (K(n("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", b ? "👍" : "👎", t || "", kt(c), kt(e))), _r(g))), b < 0) break;
1756
1791
  if (!b) continue;
1757
1792
  let p = gn(c, t, !0);
1758
1793
  if (p && p.event_flag & F.EVF_SYSTEM_EVENT && !dn(c, p.event_name, 0)) continue;
1759
1794
  let m = r;
1760
- (xo(i) > 0 || xo(o) > 0) && (m = Do({}, r)), xo(i) > 0 && rl(m, i), xo(o) > 0 && Do(m, Ao(o)), l && (K(1 === x ? n("🔝🔄 %s (%s) %s%s", t || "", d || "", c.running ? "" : "!!", kt(c)) : n("🔝🔄 mach(%s%s), st: %s, ev: %s (%s), from(%s%s)", c.running ? "" : "!!", kt(c), fn(c), t || "", d || "", e && !e.running ? "!!" : "", kt(e))), re(e) && Vo(m) && $o(m));
1795
+ (xo(i) > 0 || xo(o) > 0) && (m = Do({}, r)), xo(i) > 0 && ol(m, i), xo(o) > 0 && Do(m, Ro(o)), l && (K(1 === x ? n("🔝🔄 %s (%s) %s%s", t || "", d || "", c.running ? "" : "!!", kt(c)) : n("🔝🔄 mach(%s%s), st: %s, ev: %s (%s), from(%s%s)", c.running ? "" : "!!", kt(c), fn(c), t || "", d || "", e && !e.running ? "!!" : "", kt(e))), re(e) && Vo(m) && $o(m));
1761
1796
  let h = jn(c, d, m, e);
1762
1797
  if (h < 0 && f & On.__own_event__) {
1763
1798
  s = -1;
@@ -1794,7 +1829,7 @@ var gobjJs = function(e) {
1794
1829
  var Fn = "undefined" != typeof window ? window.console : console, Mn = Fn.error, Gn = Fn.warn, Vn = Fn.info, Wn = Fn.debug, xn = null, Kn = 600, Bn = [];
1795
1830
  var Yn = !0;
1796
1831
  var Jn = null;
1797
- function Hn(e, t) {
1832
+ function qn(e, t) {
1798
1833
  if (!Yn) return !1;
1799
1834
  if (!Jn) return !0;
1800
1835
  try {
@@ -1803,9 +1838,9 @@ var gobjJs = function(e) {
1803
1838
  return !0;
1804
1839
  }
1805
1840
  }
1806
- var qn = !1;
1841
+ var Hn = !1;
1807
1842
  function zn(e, t, n) {
1808
- qn || (function(e, t, n) {
1843
+ Hn || (function(e, t, n) {
1809
1844
  let r = t;
1810
1845
  "json" === e && (r = Zn(t)), Bn.push([
1811
1846
  e,
@@ -1815,12 +1850,12 @@ var gobjJs = function(e) {
1815
1850
  }(e, t, n), Qn(e, t, n));
1816
1851
  }
1817
1852
  function Qn(e, t, n) {
1818
- if (xn && !qn) {
1819
- qn = !0;
1853
+ if (xn && !Hn) {
1854
+ Hn = !0;
1820
1855
  try {
1821
1856
  xn(e, t, n);
1822
1857
  } catch (e) {} finally {
1823
- qn = !1;
1858
+ Hn = !1;
1824
1859
  }
1825
1860
  }
1826
1861
  }
@@ -1899,22 +1934,22 @@ var gobjJs = function(e) {
1899
1934
  }
1900
1935
  function ir(e, ...t) {
1901
1936
  let n = nr(e, ...t), r = Hl();
1902
- Mn && (Mn === Fn.error ? Hn("error", n) && rr(Mn, "%c" + r + " ERROR: " + String(n), "color:red") : (Hn("error", n) && Fn.error("%c" + r + " ERROR: " + String(n), "color:red"), lr(Mn, `${r} ERROR: ${String(n)}`))), zn("error", n, r);
1937
+ Mn && (Mn === Fn.error ? qn("error", n) && rr(Mn, "%c" + r + " ERROR: " + String(n), "color:red") : (qn("error", n) && Fn.error("%c" + r + " ERROR: " + String(n), "color:red"), lr(Mn, `${r} ERROR: ${String(n)}`))), zn("error", n, r);
1903
1938
  }
1904
1939
  function sr(e, ...t) {
1905
1940
  let n = nr(e, ...t), r = Hl();
1906
- Gn && (Gn === Fn.warn ? Hn("warning", n) && rr(Gn, "%c" + r + " WARNING: " + String(n), "color:yellow") : (Hn("warning", n) && Fn.warn("%c" + r + " WARNING: " + String(n), "color:yellow"), lr(Gn, `${r} WARNING: ${String(n)}`))), zn("warning", n, r);
1941
+ Gn && (Gn === Fn.warn ? qn("warning", n) && rr(Gn, "%c" + r + " WARNING: " + String(n), "color:yellow") : (qn("warning", n) && Fn.warn("%c" + r + " WARNING: " + String(n), "color:yellow"), lr(Gn, `${r} WARNING: ${String(n)}`))), zn("warning", n, r);
1907
1942
  }
1908
1943
  function ar(e, ...t) {
1909
1944
  let n = nr(e, ...t), r = Hl();
1910
- Wn && Hn("debug", n) && rr(Wn, "%c" + r + " DEBUG: " + String(n), "color:silver"), zn("debug", n, r);
1945
+ Wn && qn("debug", n) && rr(Wn, "%c" + r + " DEBUG: " + String(n), "color:silver"), zn("debug", n, r);
1911
1946
  }
1912
1947
  function ur(e, ...t) {
1913
1948
  let n = nr(e, ...t), r = Hl();
1914
- Wn && Hn("msg", n) && rr(Wn, "%c" + r + " MSG: " + String(n), "color:cyan"), zn("msg", n, r);
1949
+ Wn && qn("msg", n) && rr(Wn, "%c" + r + " MSG: " + String(n), "color:cyan"), zn("msg", n, r);
1915
1950
  }
1916
1951
  function _r(e, t) {
1917
- Hn("json", t) && (t && rr(Fn.warn, "=====> " + er(t)), rr(Fn.dir, e)), zn("json", e, Hl());
1952
+ qn("json", t) && (t && rr(Fn.warn, "=====> " + er(t)), rr(Fn.dir, e)), zn("json", e, Hl());
1918
1953
  }
1919
1954
  function cr(e) {
1920
1955
  const t = new Array(128).fill(null);
@@ -2096,10 +2131,10 @@ var gobjJs = function(e) {
2096
2131
  function $r(e) {
2097
2132
  return e >= 48 && e <= 57 || e >= 65 && e <= 90 || e >= 97 && e <= 122;
2098
2133
  }
2099
- function Ar(e) {
2134
+ function Rr(e) {
2100
2135
  return e >= 65 && e <= 90 || e >= 97 && e <= 122;
2101
2136
  }
2102
- function Rr(e) {
2137
+ function Ar(e) {
2103
2138
  return e >= 65 && e <= 90;
2104
2139
  }
2105
2140
  function Dr(e) {
@@ -2160,9 +2195,9 @@ var gobjJs = function(e) {
2160
2195
  const o = t + n;
2161
2196
  for (;;) {
2162
2197
  let t = r, n = !0, l = !0;
2163
- for (; t < o && Ar(e.charCodeAt(t));) t > r && (Rr(e.charCodeAt(t)) ? l = !1 : n = !1), t++;
2198
+ for (; t < o && Rr(e.charCodeAt(t));) t > r && (Ar(e.charCodeAt(t)) ? l = !1 : n = !1), t++;
2164
2199
  if (t === r) return !1;
2165
- if (!(l || n && Rr(e.charCodeAt(r)))) return !1;
2200
+ if (!(l || n && Ar(e.charCodeAt(r)))) return !1;
2166
2201
  if (t === o) return !0;
2167
2202
  if ("-" !== e[t] && "." !== e[t] && "/" !== e[t] || t + 1 === o) return !1;
2168
2203
  r = t + 1;
@@ -2258,9 +2293,9 @@ var gobjJs = function(e) {
2258
2293
  function Br(e, t, n) {
2259
2294
  for (let r = t; r < n; r++) e[r] = 1;
2260
2295
  }
2261
- var Yr = 0, Jr = 1, Hr = 2;
2262
- function qr(e, t, n, r, o) {
2263
- const l = n === Hr ? Tr : Er;
2296
+ var Yr = 0, Jr = 1, qr = 2;
2297
+ function Hr(e, t, n, r, o) {
2298
+ const l = n === qr ? Tr : Er;
2264
2299
  let i = !1;
2265
2300
  const s = (t) => t >= e.length || " " === e[t] || " " === e[t] || "\0" === e[t];
2266
2301
  let a = "", u = 0, _ = 0;
@@ -2474,7 +2509,7 @@ var gobjJs = function(e) {
2474
2509
  const s = i.join(""), a = new Uint8Array(s.length);
2475
2510
  (function(e, t) {
2476
2511
  const n = po(e, Er), r = new Uint8Array(e.length);
2477
- qr(e, n, Yr, t, r), _o(e, t, r), fo(e, t), go(e, t), bo(e, t);
2512
+ Hr(e, n, Yr, t, r), _o(e, t, r), fo(e, t), go(e, t), bo(e, t);
2478
2513
  })(s, a), vo(s, a, n + 1);
2479
2514
  let u = 0;
2480
2515
  for (let n = 0; n < s.length; n++) {
@@ -2484,13 +2519,13 @@ var gobjJs = function(e) {
2484
2519
  }
2485
2520
  function Eo(e, t) {
2486
2521
  const n = po(e, Er), r = po(e, Tr), o = new Uint8Array(e.length);
2487
- (qr(e, n, Yr, t, o) || n !== r) && qr(e, r, Hr, t, null), function(e) {
2522
+ (Hr(e, n, Yr, t, o) || n !== r) && Hr(e, r, qr, t, null), function(e) {
2488
2523
  for (let t = 0; t < e.length; t++) {
2489
2524
  const n = e.charCodeAt(t);
2490
2525
  if ((101 === n || 98 === n || 66 === n) && Mr(e, t)[1]) return !0;
2491
2526
  }
2492
2527
  return !1;
2493
- }(e) && qr(e, n, Jr, t, null), _o(e, t, o), fo(e, t), go(e, t), bo(e, t), vo(e, t, 0);
2528
+ }(e) && Hr(e, n, Jr, t, null), _o(e, t, o), fo(e, t), go(e, t), bo(e, t), vo(e, t, 0);
2494
2529
  }
2495
2530
  function To(e) {
2496
2531
  if ("string" != typeof e) return null;
@@ -2562,7 +2597,7 @@ var gobjJs = function(e) {
2562
2597
  }
2563
2598
  r.left -= 1 + a.length;
2564
2599
  let u, _ = e[a];
2565
- u = (jr(a, 0, a.length, Er) || o && "value" === a) && null != _ && "" !== _ ? "********" : wo(_, t, n + 1, r), u !== _ && (i = !0), il(l, a, u);
2600
+ u = (jr(a, 0, a.length, Er) || o && "value" === a) && null != _ && "" !== _ ? "********" : wo(_, t, n + 1, r), u !== _ && (i = !0), sl(l, a, u);
2566
2601
  }
2567
2602
  s && (l["<more>"] = Kr);
2568
2603
  }
@@ -2578,17 +2613,17 @@ var gobjJs = function(e) {
2578
2613
  function $o(e, t) {
2579
2614
  _r(No(e), t);
2580
2615
  }
2581
- function Ao(e) {
2616
+ function Ro(e) {
2582
2617
  return structuredClone(e);
2583
2618
  }
2584
- function Ro(e, t) {
2619
+ function Ao(e, t) {
2585
2620
  if (e === t) return !0;
2586
2621
  if (null === e || null === t) return e === t;
2587
2622
  if (typeof e != typeof t) return !1;
2588
2623
  if (Array.isArray(e) !== Array.isArray(t)) return !1;
2589
2624
  if (Array.isArray(e)) {
2590
2625
  if (e.length !== t.length) return !1;
2591
- for (let n = 0; n < e.length; n++) if (!Ro(e[n], t[n])) return !1;
2626
+ for (let n = 0; n < e.length; n++) if (!Ao(e[n], t[n])) return !1;
2592
2627
  return !0;
2593
2628
  }
2594
2629
  if ("object" == typeof e) {
@@ -2596,7 +2631,7 @@ var gobjJs = function(e) {
2596
2631
  if (n.length !== r.length) return !1;
2597
2632
  for (let o = 0; o < n.length; o++) {
2598
2633
  if (n[o] !== r[o]) return !1;
2599
- if (!Ro(e[n[o]], t[r[o]])) return !1;
2634
+ if (!Ao(e[n[o]], t[r[o]])) return !1;
2600
2635
  }
2601
2636
  return !0;
2602
2637
  }
@@ -2604,17 +2639,17 @@ var gobjJs = function(e) {
2604
2639
  }
2605
2640
  function Do(e, t) {
2606
2641
  if (!t) return e;
2607
- for (let n of Object.keys(t)) il(e, n, t[n]);
2642
+ for (let n of Object.keys(t)) sl(e, n, t[n]);
2608
2643
  return e;
2609
2644
  }
2610
2645
  function ko(e, t) {
2611
2646
  if (!t) return e;
2612
- for (let n in t) Object.prototype.hasOwnProperty.call(t, n) && Object.prototype.hasOwnProperty.call(e, n) && il(e, n, t[n]);
2647
+ for (let n in t) Object.prototype.hasOwnProperty.call(t, n) && Object.prototype.hasOwnProperty.call(e, n) && sl(e, n, t[n]);
2613
2648
  return e;
2614
2649
  }
2615
2650
  function Co(e, t) {
2616
2651
  if (!t) return e;
2617
- for (let n in t) Object.prototype.hasOwnProperty.call(t, n) && !Object.prototype.hasOwnProperty.call(e, n) && il(e, n, t[n]);
2652
+ for (let n in t) Object.prototype.hasOwnProperty.call(t, n) && !Object.prototype.hasOwnProperty.call(e, n) && sl(e, n, t[n]);
2618
2653
  return e;
2619
2654
  }
2620
2655
  function Io(e, t) {
@@ -2624,10 +2659,10 @@ var gobjJs = function(e) {
2624
2659
  e && Object.prototype.hasOwnProperty.call(e, t) && delete e[t];
2625
2660
  }
2626
2661
  function Lo(e, t, n) {
2627
- il(e, t, n);
2662
+ sl(e, t, n);
2628
2663
  }
2629
2664
  function Uo(e, t, n) {
2630
- il(e, t, n);
2665
+ sl(e, t, n);
2631
2666
  }
2632
2667
  function Fo(e, t) {
2633
2668
  e.push(t);
@@ -2639,54 +2674,57 @@ var gobjJs = function(e) {
2639
2674
  e.splice(t, 1);
2640
2675
  }
2641
2676
  function Vo(e) {
2642
- return Ko(e) ? Object.keys(e).length : 0;
2677
+ return Bo(e) ? Object.keys(e).length : 0;
2643
2678
  }
2644
2679
  function Wo(e) {
2645
- return Bo(e) ? e.length : 0;
2680
+ return Yo(e) ? e.length : 0;
2646
2681
  }
2647
2682
  function xo(e) {
2648
- return Ko(e) ? Object.keys(e).length : Bo(e) ? e.length : Yo(e) && e.length > 0 ? 1 : 0;
2683
+ return Bo(e) ? Object.keys(e).length : Yo(e) ? e.length : Jo(e) && e.length > 0 ? 1 : 0;
2649
2684
  }
2650
2685
  function Ko(e) {
2651
- return null !== e && "object" == typeof e && !Array.isArray(e);
2686
+ return 0 === xo(e);
2652
2687
  }
2653
2688
  function Bo(e) {
2654
- return Array.isArray(e);
2689
+ return null !== e && "object" == typeof e && !Array.isArray(e);
2655
2690
  }
2656
2691
  function Yo(e) {
2657
- return "string" == typeof e;
2692
+ return Array.isArray(e);
2658
2693
  }
2659
2694
  function Jo(e) {
2695
+ return "string" == typeof e;
2696
+ }
2697
+ function qo(e) {
2660
2698
  return "number" == typeof e && Number.isFinite(e);
2661
2699
  }
2662
2700
  function Ho(e) {
2663
2701
  return "boolean" == typeof e;
2664
2702
  }
2665
- function qo(e) {
2666
- return null == e;
2667
- }
2668
2703
  function zo(e) {
2669
- return "function" == typeof e;
2704
+ return null == e;
2670
2705
  }
2671
2706
  function Qo(e) {
2672
- return e instanceof I;
2707
+ return "function" == typeof e;
2673
2708
  }
2674
2709
  function Xo(e) {
2675
- return !Yo(e) || 0 === e.length;
2710
+ return e instanceof I;
2676
2711
  }
2677
2712
  function Zo(e) {
2678
- return Jo(e) ? Boolean(e) : /^\s*(true|1|on)\s*$/i.test(e);
2713
+ return !Jo(e) || 0 === e.length;
2679
2714
  }
2680
- function el(e, t) {
2681
- return e === t ? 0 : e > t ? 1 : -1;
2715
+ function el(e) {
2716
+ return qo(e) ? Boolean(e) : /^\s*(true|1|on)\s*$/i.test(e);
2682
2717
  }
2683
2718
  function tl(e, t) {
2719
+ return e === t ? 0 : e > t ? 1 : -1;
2720
+ }
2721
+ function nl(e, t) {
2684
2722
  let n = e.toLowerCase(), r = t.toLowerCase();
2685
2723
  return n === r ? 0 : n > r ? 1 : -1;
2686
2724
  }
2687
- function nl(e, t) {
2688
- if (Ko(e) || Ko(t) || Bo(e) || Bo(t)) return 0;
2689
- if (Jo(e) || Jo(t)) {
2725
+ function rl(e, t) {
2726
+ if (Bo(e) || Bo(t) || Yo(e) || Yo(t)) return 0;
2727
+ if (qo(e) || qo(t)) {
2690
2728
  let n = Number(e), r = Number(t);
2691
2729
  return Number.isNaN(n) && (n = 0), Number.isNaN(r) && (r = 0), n > r ? 1 : n < r ? -1 : 0;
2692
2730
  }
@@ -2694,20 +2732,20 @@ var gobjJs = function(e) {
2694
2732
  let n = Number(e), r = Number(t);
2695
2733
  return n > r ? 1 : n < r ? -1 : 0;
2696
2734
  }
2697
- return el(String(e), String(t));
2735
+ return tl(String(e), String(t));
2698
2736
  }
2699
- function rl(e, t) {
2700
- if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t) rl(e, n);
2737
+ function ol(e, t) {
2738
+ if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t) ol(e, n);
2701
2739
  else "string" == typeof t && delete e[t];
2702
2740
  else for (const n of Object.keys(t)) delete e[n];
2703
2741
  }
2704
- function ol(e, t) {
2742
+ function ll(e, t) {
2705
2743
  return !(!(t in e) || !Object.prototype.hasOwnProperty.call(e, t));
2706
2744
  }
2707
- function ll(e, t) {
2745
+ function il(e, t) {
2708
2746
  return !Object.prototype.hasOwnProperty.call(e, t);
2709
2747
  }
2710
- function il(e, t, n) {
2748
+ function sl(e, t, n) {
2711
2749
  "__proto__" === t ? Object.defineProperty(e, t, {
2712
2750
  value: n,
2713
2751
  writable: !0,
@@ -2715,81 +2753,81 @@ var gobjJs = function(e) {
2715
2753
  configurable: !0
2716
2754
  }) : e[t] = n;
2717
2755
  }
2718
- function sl(e, t) {
2756
+ function al(e, t) {
2719
2757
  if (!/^[0-9]+$/.test(t)) return -1;
2720
2758
  const n = Number(t);
2721
2759
  return n >= e.length ? -1 : n;
2722
2760
  }
2723
- function al(e, t, n, r) {
2724
- e && !Qo(e) && ir("GObj bad instanceof");
2761
+ function ul(e, t, n, r) {
2762
+ e && !Xo(e) && ir("GObj bad instanceof");
2725
2763
  const o = e ? `${kt(e)}: ` : "";
2726
- if (!Ko(t) && !Bo(t)) return void ir(`${o}kw must be list or dict: '${String(n)}'`);
2727
- if (!Yo(n)) return void ir(`${o}path must be a string: ${String(n)}`);
2764
+ if (!Bo(t) && !Yo(t)) return void ir(`${o}kw must be list or dict: '${String(n)}'`);
2765
+ if (!Jo(n)) return void ir(`${o}path must be a string: ${String(n)}`);
2728
2766
  let l = n.split("`"), i = l.length;
2729
2767
  for (let e = 0; e < i; e++) {
2730
- if (Bo(t)) {
2731
- const i = sl(t, l[e]);
2768
+ if (Yo(t)) {
2769
+ const i = al(t, l[e]);
2732
2770
  if (i < 0) return void (r && ir(`${o}path not found: '${n}'`));
2733
2771
  l[e] = String(i);
2734
2772
  }
2735
- if (ll(t, l[e])) return void (r && ir(`${o}path not found: '${n}'`));
2773
+ if (il(t, l[e])) return void (r && ir(`${o}path not found: '${n}'`));
2736
2774
  if (e === i - 1) break;
2737
2775
  if (null == (t = t[l[e]])) return void (r && ir(`${o}path not found: '${n}'`));
2738
- if (!Ko(t) && !Bo(t)) return void ir(`${o}kw must be list or dict: '${n}'`);
2776
+ if (!Bo(t) && !Yo(t)) return void ir(`${o}kw must be list or dict: '${n}'`);
2739
2777
  }
2740
2778
  let s = t[l[i - 1]];
2741
2779
  return void 0 === s && r && ir(`${o}path not found: '${n}'`), s;
2742
2780
  }
2743
- function ul(e, t, n) {
2744
- e && !Qo(e) && ir("GObj bad instanceof");
2781
+ function _l(e, t, n) {
2782
+ e && !Xo(e) && ir("GObj bad instanceof");
2745
2783
  const r = e ? kt(e) + ": " : "";
2746
- if (!Yo(n)) return ir(`${r}kw_delete(): path must be a string: ${String(n)}`), -1;
2784
+ if (!Jo(n)) return ir(`${r}kw_delete(): path must be a string: ${String(n)}`), -1;
2747
2785
  let [o, l] = function(e, t) {
2748
2786
  let n = e.lastIndexOf(t);
2749
2787
  return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
2750
2788
  }(n, "`"), i = t;
2751
- if (Xo(l)) l = n;
2752
- else if (i = al(e, t, o, !0), void 0 === i) return -1;
2753
- return Bo(i) ? (ir(`${r}kw_delete(): cannot delete an item of a list: '${n}'`), -1) : Ko(i) && Object.prototype.hasOwnProperty.call(i, l) ? (delete i[l], 0) : (ir(`${r}kw_delete(): path not found: '${n}'`), -1);
2789
+ if (Zo(l)) l = n;
2790
+ else if (i = ul(e, t, o, !0), void 0 === i) return -1;
2791
+ return Yo(i) ? (ir(`${r}kw_delete(): cannot delete an item of a list: '${n}'`), -1) : Bo(i) && Object.prototype.hasOwnProperty.call(i, l) ? (delete i[l], 0) : (ir(`${r}kw_delete(): path not found: '${n}'`), -1);
2754
2792
  }
2755
- function _l(e, t, n, r, o) {
2756
- e && !Qo(e) && ir("GObj bad instanceof");
2757
- let l = al(e, t, n, !1);
2793
+ function cl(e, t, n, r, o) {
2794
+ e && !Xo(e) && ir("GObj bad instanceof");
2795
+ let l = ul(e, t, n, !1);
2758
2796
  const i = o && o & Un.KW_REQUIRED, s = o && o & Un.KW_CREATE, a = o && o & Un.KW_EXTRACT, u = o && o & Un.KW_WILD_NUMBER;
2759
2797
  if (void 0 === l) {
2760
2798
  if (s && t) {
2761
2799
  let o = Boolean(r);
2762
- return pl(e, t, n, o), o;
2800
+ return ml(e, t, n, o), o;
2763
2801
  }
2764
2802
  return i && (ir(`path not found: '${n}'`), $o(t)), Boolean(r);
2765
2803
  }
2766
2804
  let _;
2767
2805
  if (Ho(l)) _ = l;
2768
- else if (u && Jo(l)) _ = 0 !== l;
2769
- else if (u && Yo(l)) _ = "true" === l.toLowerCase() || "false" !== l.toLowerCase() && 0 !== (parseInt(l, 10) || 0);
2806
+ else if (u && qo(l)) _ = 0 !== l;
2807
+ else if (u && Jo(l)) _ = "true" === l.toLowerCase() || "false" !== l.toLowerCase() && 0 !== (parseInt(l, 10) || 0);
2770
2808
  else {
2771
2809
  if (!u || null !== l) return u ? (ir(`${e ? kt(e) + ": " : ""}path MUST BE a simple json element: '${n}'`), $o(t), !1) : (ir(`${e ? kt(e) + ": " : ""}path MUST BE a json boolean: '${n}'`), $o(t), Boolean(r));
2772
2810
  _ = !1;
2773
2811
  }
2774
- return a && ul(e, t, n), _;
2812
+ return a && _l(e, t, n), _;
2775
2813
  }
2776
- function cl(e, t, n, r, o) {
2777
- e && !Qo(e) && ir("GObj bad instanceof");
2778
- let l = al(e, t, n, !1);
2814
+ function fl(e, t, n, r, o) {
2815
+ e && !Xo(e) && ir("GObj bad instanceof");
2816
+ let l = ul(e, t, n, !1);
2779
2817
  const i = o && o & Un.KW_REQUIRED, s = o && o & Un.KW_CREATE, a = o && o & Un.KW_EXTRACT, u = o && o & Un.KW_WILD_NUMBER;
2780
2818
  if (void 0 === l) {
2781
2819
  if (s && t) {
2782
2820
  let o = parseInt(r);
2783
- return pl(e, t, n, o), o;
2821
+ return ml(e, t, n, o), o;
2784
2822
  }
2785
2823
  return i && (ir(`path not found: '${n}'`), $o(t)), parseInt(r);
2786
2824
  }
2787
2825
  let _;
2788
- if (Jo(l)) _ = Math.trunc(l);
2826
+ if (qo(l)) _ = Math.trunc(l);
2789
2827
  else {
2790
2828
  if (!u) return ir(`${e ? kt(e) + ": " : ""}path MUST BE a json integer: '${n}'`), $o(t), parseInt(r);
2791
2829
  if (Ho(l)) _ = l ? 1 : 0;
2792
- else if (Yo(l)) _ = function(e) {
2830
+ else if (Jo(l)) _ = function(e) {
2793
2831
  const t = /^\s*([+-]?)(0[xX][0-9a-fA-F]+|0[0-7]*|[1-9][0-9]*)/.exec(e);
2794
2832
  if (!t) return 0;
2795
2833
  let n, r = t[2];
@@ -2800,120 +2838,120 @@ var gobjJs = function(e) {
2800
2838
  _ = 0;
2801
2839
  }
2802
2840
  }
2803
- return a && ul(e, t, n), _;
2841
+ return a && _l(e, t, n), _;
2804
2842
  }
2805
- function fl(e, t, n, r, o) {
2806
- e && !Qo(e) && ir("GObj bad instanceof");
2807
- let l = al(e, t, n, !1);
2843
+ function gl(e, t, n, r, o) {
2844
+ e && !Xo(e) && ir("GObj bad instanceof");
2845
+ let l = ul(e, t, n, !1);
2808
2846
  const i = o && o & Un.KW_REQUIRED, s = o && o & Un.KW_CREATE, a = o && o & Un.KW_EXTRACT;
2809
- return void 0 === l ? s && t ? (pl(e, t, n, Yo(r) ? r : null), r) : (i && !function(e, t) {
2810
- let n = Yo(t) ? t.split("`") : [], r = e;
2847
+ return void 0 === l ? s && t ? (ml(e, t, n, Jo(r) ? r : null), r) : (i && !function(e, t) {
2848
+ let n = Jo(t) ? t.split("`") : [], r = e;
2811
2849
  for (let e = 0; e < n.length - 1; e++) {
2812
- if (!Ko(r) && !Bo(r)) return !1;
2850
+ if (!Bo(r) && !Yo(r)) return !1;
2813
2851
  r = r[n[e]];
2814
2852
  }
2815
- return !(!Ko(r) && !Bo(r) || 0 === n.length) && Object.prototype.hasOwnProperty.call(r, n[n.length - 1]);
2816
- }(t, n) && (ir(`path not found: '${n}'`), $o(t)), r) : Yo(l) ? (a && ul(e, t, n), l) : (null !== l && (ir(`${e ? kt(e) + ": " : ""}path MUST BE a json str: '${n}'`), $o(t)), r);
2853
+ return !(!Bo(r) && !Yo(r) || 0 === n.length) && Object.prototype.hasOwnProperty.call(r, n[n.length - 1]);
2854
+ }(t, n) && (ir(`path not found: '${n}'`), $o(t)), r) : Jo(l) ? (a && _l(e, t, n), l) : (null !== l && (ir(`${e ? kt(e) + ": " : ""}path MUST BE a json str: '${n}'`), $o(t)), r);
2817
2855
  }
2818
- function gl(e, t, n, r, o) {
2819
- e && !Qo(e) && ir("GObj bad instanceof");
2820
- let l = al(e, t, n, !1);
2856
+ function dl(e, t, n, r, o) {
2857
+ e && !Xo(e) && ir("GObj bad instanceof");
2858
+ let l = ul(e, t, n, !1);
2821
2859
  const i = o && o & Un.KW_REQUIRED, s = o && o & Un.KW_CREATE, a = o && o & Un.KW_EXTRACT;
2822
2860
  if (void 0 === l) {
2823
2861
  if (s) {
2824
2862
  let o = r;
2825
- return pl(e, t, n, o), o;
2863
+ return ml(e, t, n, o), o;
2826
2864
  }
2827
2865
  return i && (ir(`path not found: '${n}'`), $o(t)), r;
2828
2866
  }
2829
- return a && ul(e, t, n), l;
2867
+ return a && _l(e, t, n), l;
2830
2868
  }
2831
- function dl(e, t, n, r, o) {
2832
- e && !Qo(e) && ir("GObj bad instanceof");
2833
- let l = al(e, t, n, !1);
2869
+ function bl(e, t, n, r, o) {
2870
+ e && !Xo(e) && ir("GObj bad instanceof");
2871
+ let l = ul(e, t, n, !1);
2834
2872
  const i = o && o & Un.KW_REQUIRED, s = o && o & Un.KW_CREATE, a = o && o & Un.KW_EXTRACT;
2835
- return void 0 === l ? s && Ko(r) && t ? (pl(e, t, n, r), r) : (i && (ir(`path not found: '${n}'`), $o(t)), r) : Ko(l) ? (a && ul(e, t, n), l) : s && null === l && Ko(r) ? (pl(e, t, n, r), r) : s && null === l ? (i && (ir(`path not found: '${n}'`), $o(t)), r) : ((i || s) && (ir(`${e ? kt(e) + ": " : ""}path MUST BE a json dict: '${n}'` + (s ? ", cannot create" : "")), $o(t)), r);
2873
+ return void 0 === l ? s && Bo(r) && t ? (ml(e, t, n, r), r) : (i && (ir(`path not found: '${n}'`), $o(t)), r) : Bo(l) ? (a && _l(e, t, n), l) : s && null === l && Bo(r) ? (ml(e, t, n, r), r) : s && null === l ? (i && (ir(`path not found: '${n}'`), $o(t)), r) : ((i || s) && (ir(`${e ? kt(e) + ": " : ""}path MUST BE a json dict: '${n}'` + (s ? ", cannot create" : "")), $o(t)), r);
2836
2874
  }
2837
- function bl(e, t, n, r, o) {
2838
- e && !Qo(e) && ir("GObj bad instanceof");
2839
- let l = al(e, t, n, !1);
2875
+ function pl(e, t, n, r, o) {
2876
+ e && !Xo(e) && ir("GObj bad instanceof");
2877
+ let l = ul(e, t, n, !1);
2840
2878
  const i = o && o & Un.KW_REQUIRED, s = o && o & Un.KW_CREATE, a = o && o & Un.KW_EXTRACT;
2841
2879
  if (void 0 === l) {
2842
2880
  if (s) {
2843
2881
  let o = r;
2844
- return pl(e, t, n, o), o;
2882
+ return ml(e, t, n, o), o;
2845
2883
  }
2846
2884
  return i && (ir(`path not found: '${n}'`), $o(t)), r;
2847
2885
  }
2848
- return a && ul(e, t, n), l;
2886
+ return a && _l(e, t, n), l;
2849
2887
  }
2850
- function pl(e, t, n, r) {
2851
- if (e && !Qo(e) && ir("GObj bad instanceof"), !Ko(t)) return ir("kw is not an object"), -1;
2852
- if (!Yo(n)) return ir(`${e ? kt(e) + ": " : ""}kw_set_dict_value(): path must be a string: ${String(n)}`), -1;
2888
+ function ml(e, t, n, r) {
2889
+ if (e && !Xo(e) && ir("GObj bad instanceof"), !Bo(t)) return ir("kw is not an object"), -1;
2890
+ if (!Jo(n)) return ir(`${e ? kt(e) + ": " : ""}kw_set_dict_value(): path must be a string: ${String(n)}`), -1;
2853
2891
  if ("" === n) return ir((e ? kt(e) + ": " : "") + "kw_set_dict_value(): path empty"), -1;
2854
2892
  if (n.split("`").includes("")) return ir(`${e ? kt(e) + ": " : ""}kw_set_dict_value(): empty segment in path: '${n}'`), -1;
2855
2893
  let o = n.split("`"), l = o.length;
2856
2894
  for (let i = 0; i < l; i++) {
2857
2895
  let s = o[i];
2858
- if (Bo(t)) {
2859
- const r = sl(t, s);
2896
+ if (Yo(t)) {
2897
+ const r = al(t, s);
2860
2898
  if (r < 0) return ir(`${e ? kt(e) + ": " : ""}kw_set_dict_value(): segment '${s}' is not an index of its list: '${n}'`), -1;
2861
2899
  s = String(r);
2862
2900
  }
2863
- if (i === l - 1) il(t, s, r);
2901
+ if (i === l - 1) sl(t, s, r);
2864
2902
  else {
2865
- let r = ll(t, s) ? void 0 : t[s];
2866
- if (void 0 === r) il(t, s, {});
2867
- else if (!Ko(r) && !Bo(r)) return ir(`${e ? kt(e) + ": " : ""}kw_set_dict_value(): segment '${s}' is not a dict or a list: '${n}'`), -1;
2903
+ let r = il(t, s) ? void 0 : t[s];
2904
+ if (void 0 === r) sl(t, s, {});
2905
+ else if (!Bo(r) && !Yo(r)) return ir(`${e ? kt(e) + ": " : ""}kw_set_dict_value(): segment '${s}' is not a dict or a list: '${n}'`), -1;
2868
2906
  t = t[s];
2869
2907
  }
2870
2908
  }
2871
2909
  return 0;
2872
2910
  }
2873
- function ml(e, t, n, r, o) {
2874
- if (e && !Qo(e) && ir("GObj bad instanceof"), !Ko(t)) return ir("kw is not an object"), -1;
2875
- let l = al(e, t, n, !1);
2911
+ function hl(e, t, n, r, o) {
2912
+ if (e && !Xo(e) && ir("GObj bad instanceof"), !Bo(t)) return ir("kw is not an object"), -1;
2913
+ let l = ul(e, t, n, !1);
2876
2914
  if (void 0 === l) {
2877
- if (!Yo(n) || function(e, t) {
2915
+ if (!Jo(n) || function(e, t) {
2878
2916
  let n = t.split("`"), r = e;
2879
2917
  for (let e = 0; e < n.length - 1; e++) {
2880
- if (Bo(r)) {
2881
- const t = sl(r, n[e]);
2918
+ if (Yo(r)) {
2919
+ const t = al(r, n[e]);
2882
2920
  if (t < 0) return !1;
2883
2921
  r = r[t];
2884
2922
  } else r = Object.prototype.hasOwnProperty.call(r, n[e]) ? r[n[e]] : void 0;
2885
2923
  if (null == r) return !1;
2886
- if (!Ko(r) && !Bo(r)) return !0;
2924
+ if (!Bo(r) && !Yo(r)) return !0;
2887
2925
  }
2888
2926
  return !1;
2889
2927
  }(t, n)) return -1;
2890
- if (l = {}, pl(e, t, n, l) < 0) return -1;
2928
+ if (l = {}, ml(e, t, n, l) < 0) return -1;
2891
2929
  }
2892
- return Ko(l) ? (il(l, r, o), 0) : (ir(`subdict is not an object: '${n}'`), -1);
2930
+ return Bo(l) ? (sl(l, r, o), 0) : (ir(`subdict is not an object: '${n}'`), -1);
2893
2931
  }
2894
- function hl(e, t, r) {
2932
+ function yl(e, t, r) {
2895
2933
  let o = "", l = !1;
2896
- if (Bo(t)) {
2934
+ if (Yo(t)) {
2897
2935
  l = !1;
2898
2936
  for (let i = 0; i < t.length; i++) {
2899
2937
  let s = t[i];
2900
- if (o = Xo(r) ? n("%s", r) : n("%s`%d", r, i), l = hl(e, s, o), l) break;
2938
+ if (o = Zo(r) ? n("%s", r) : n("%s`%d", r, i), l = yl(e, s, o), l) break;
2901
2939
  }
2902
- } else if (Ko(t)) {
2940
+ } else if (Bo(t)) {
2903
2941
  l = !0;
2904
2942
  let i = Object.keys(t);
2905
2943
  for (let s = 0; s < i.length; s++) {
2906
2944
  let a = i[s], u = t[a];
2907
- if (o = Xo(r) ? n("%s", a) : n("%s`%s", r, a), Bo(u) || Ko(u)) {
2908
- if (l = hl(e, u, o), !l) break;
2945
+ if (o = Zo(r) ? n("%s", a) : n("%s`%s", r, a), Yo(u) || Bo(u)) {
2946
+ if (l = yl(e, u, o), !l) break;
2909
2947
  continue;
2910
2948
  }
2911
- let _ = bl(0, e, o, void 0, 0);
2949
+ let _ = pl(0, e, o, void 0, 0);
2912
2950
  if (void 0 === _ && (_ = Io(e, o)), void 0 === _) {
2913
2951
  l = !1;
2914
2952
  break;
2915
2953
  }
2916
- if (0 !== nl(_, u)) {
2954
+ if (0 !== rl(_, u)) {
2917
2955
  l = !1;
2918
2956
  break;
2919
2957
  }
@@ -2921,34 +2959,34 @@ var gobjJs = function(e) {
2921
2959
  }
2922
2960
  return l;
2923
2961
  }
2924
- function yl(e, t) {
2925
- return 0 === xo(t) || hl(e, t, "");
2962
+ function vl(e, t) {
2963
+ return 0 === xo(t) || yl(e, t, "");
2926
2964
  }
2927
- function vl(e, t, n, r) {
2928
- e && !Qo(e) && ir("GObj bad instanceof");
2965
+ function El(e, t, n, r) {
2966
+ e && !Xo(e) && ir("GObj bad instanceof");
2929
2967
  let o = {};
2930
- if (Yo(n) && !Xo(n)) {
2968
+ if (Jo(n) && !Zo(n)) {
2931
2969
  let l = n;
2932
- Object.prototype.hasOwnProperty.call(t, l) ? il(o, l, t[l]) : r && ir(`${kt(e)}: key not found: ${l}`);
2933
- } else if (Ko(n) && Vo(n) > 0) for (let l of Object.keys(n)) Object.prototype.hasOwnProperty.call(t, l) ? il(o, l, t[l]) : r && ir(`${kt(e)}: key not found: ${l}`);
2970
+ Object.prototype.hasOwnProperty.call(t, l) ? sl(o, l, t[l]) : r && ir(`${kt(e)}: key not found: ${l}`);
2971
+ } else if (Bo(n) && Vo(n) > 0) for (let l of Object.keys(n)) Object.prototype.hasOwnProperty.call(t, l) ? sl(o, l, t[l]) : r && ir(`${kt(e)}: key not found: ${l}`);
2934
2972
  else {
2935
- if (!(Bo(n) && Wo(n) > 0)) return t;
2973
+ if (!(Yo(n) && Wo(n) > 0)) return t;
2936
2974
  for (let l = 0; l < n.length; l++) {
2937
2975
  let i = n[l];
2938
- Object.prototype.hasOwnProperty.call(t, i) ? il(o, i, t[i]) : r && ir(`${kt(e)}: key not found: ${i}`);
2976
+ Object.prototype.hasOwnProperty.call(t, i) ? sl(o, i, t[i]) : r && ir(`${kt(e)}: key not found: ${i}`);
2939
2977
  }
2940
2978
  }
2941
2979
  return o;
2942
2980
  }
2943
- function El(e, t, n, r) {
2981
+ function Tl(e, t, n, r) {
2944
2982
  let o = {};
2945
- if (!Ko(t)) return o;
2946
- if (Do(o, t), Yo(n) && !Xo(n)) {
2983
+ if (!Bo(t)) return o;
2984
+ if (Do(o, t), Jo(n) && !Zo(n)) {
2947
2985
  let l = n;
2948
2986
  Object.prototype.hasOwnProperty.call(t, l) ? Po(o, l) : r && ir(`${kt(e)}: key not found: ${l}`);
2949
- } else if (Ko(n) && Vo(n) > 0) for (let l of Object.keys(n)) Object.prototype.hasOwnProperty.call(t, l) ? Po(o, l) : r && ir(`${kt(e)}: key not found: ${l}`);
2987
+ } else if (Bo(n) && Vo(n) > 0) for (let l of Object.keys(n)) Object.prototype.hasOwnProperty.call(t, l) ? Po(o, l) : r && ir(`${kt(e)}: key not found: ${l}`);
2950
2988
  else {
2951
- if (!(Bo(n) && Wo(n) > 0)) return {};
2989
+ if (!(Yo(n) && Wo(n) > 0)) return {};
2952
2990
  for (let l = 0; l < n.length; l++) {
2953
2991
  let i = n[l];
2954
2992
  Object.prototype.hasOwnProperty.call(t, i) ? Po(o, i) : r && ir(`${kt(e)}: key not found: ${i}`);
@@ -2956,7 +2994,7 @@ var gobjJs = function(e) {
2956
2994
  }
2957
2995
  return o;
2958
2996
  }
2959
- function Tl() {
2997
+ function jl() {
2960
2998
  if ("undefined" == typeof window) return null;
2961
2999
  let e;
2962
3000
  try {
@@ -2973,39 +3011,47 @@ var gobjJs = function(e) {
2973
3011
  }
2974
3012
  return e || null;
2975
3013
  }
2976
- var jl = /* @__PURE__ */ new Set();
2977
- function Ol(e, t) {
2978
- jl.has(e) || (jl.add(e), sr(t));
3014
+ var Ol = /* @__PURE__ */ new Set();
3015
+ function Sl(e, t) {
3016
+ Ol.has(e) || (Ol.add(e), sr(t));
2979
3017
  }
2980
- function Sl(e, t, n = !1) {
2981
- const r = Tl();
3018
+ function wl(e, t, n = !1) {
3019
+ const r = jl();
2982
3020
  if (!r) return t;
2983
3021
  const o = `kw_get_local_storage_value(): localStorage key "${e}"`;
2984
3022
  let l;
2985
3023
  try {
2986
3024
  l = r.getItem(e);
2987
3025
  } catch (n) {
2988
- return Ol(e, `${o} cannot be read (storage blocked?): the default is used`), t;
3026
+ return Sl(e, `${o} cannot be read (storage blocked?): the default is used`), t;
2989
3027
  }
2990
- let i = null;
3028
+ let i = !0, s = null;
2991
3029
  if (null !== l) try {
2992
- i = JSON.parse(l);
3030
+ s = JSON.parse(l);
2993
3031
  } catch (t) {
2994
- i = null;
3032
+ s = null;
2995
3033
  try {
2996
- r.removeItem(e), sr(`${o} does not hold json: removed, the default is used`), jl.delete(e);
3034
+ r.removeItem(e), sr(`${o} does not hold json: removed, the default is used`);
2997
3035
  } catch (t) {
2998
- Ol(e, `${o} does not hold json and cannot be removed: the default is used`);
3036
+ i = !1, Sl(e, `${o} does not hold json and cannot be removed: the default is used`);
2999
3037
  }
3000
- l = void 0;
3001
3038
  }
3002
- return void 0 !== l && jl.delete(e), null === i ? (n && wl(e, t), t) : i;
3039
+ if (null === s && (s = t, n)) {
3040
+ const n = Fe(t);
3041
+ if (void 0 === n) ir(`${o}: cannot write the default: a value with no json text`);
3042
+ else try {
3043
+ r.setItem(e, n);
3044
+ } catch (t) {
3045
+ i = !1, Sl(e, `${o} cannot be written (storage full or blocked?): the default is used, not kept`);
3046
+ }
3047
+ }
3048
+ return i && Ol.delete(e), s;
3003
3049
  }
3004
- function wl(e, t) {
3050
+ function Nl(e, t) {
3005
3051
  if (!e) return ir(`kw_set_local_storage_value(): invalid key: key=${e}`), -1;
3006
3052
  const n = Fe(t);
3007
3053
  if (void 0 === n) return ir(`kw_set_local_storage_value(): cannot save "${e}": a value with no json text`), -1;
3008
- const r = Tl();
3054
+ const r = jl();
3009
3055
  if (!r) return 0;
3010
3056
  try {
3011
3057
  return r.setItem(e, n), 0;
@@ -3013,8 +3059,8 @@ var gobjJs = function(e) {
3013
3059
  return ir(`kw_set_local_storage_value(): cannot save "${e}" (storage full or blocked?): ${t && t.message ? t.message : t}`), -1;
3014
3060
  }
3015
3061
  }
3016
- function Nl(e) {
3017
- const t = Tl();
3062
+ function $l(e) {
3063
+ const t = jl();
3018
3064
  if (t) if (e) try {
3019
3065
  t.removeItem(e);
3020
3066
  } catch (t) {
@@ -3022,45 +3068,45 @@ var gobjJs = function(e) {
3022
3068
  }
3023
3069
  else ir(`kw_remove_local_storage_value(): invalid key: key=${e}`);
3024
3070
  }
3025
- function $l(e, t) {
3026
- if (qo(e) || qo(t)) return !0;
3027
- if (Bo(e)) {
3071
+ function Rl(e, t) {
3072
+ if (zo(e) || zo(t)) return !0;
3073
+ if (Yo(e)) {
3028
3074
  if (0 === e.length) return !0;
3029
3075
  for (let n = 0; n < e.length; n++) if (e[n] === t) return !0;
3030
- } else if (Ko(e)) {
3076
+ } else if (Bo(e)) {
3031
3077
  if (0 === Object.keys(e).length) return !0;
3032
3078
  for (let n in e) if (n === t) return !0;
3033
- } else if (Yo(e) && e === t) return !0;
3079
+ } else if (Jo(e) && e === t) return !0;
3034
3080
  return !1;
3035
3081
  }
3036
3082
  function Al(e, t, n, r, o) {
3037
- if (e && !Qo(e) && ir("GObj bad instanceof"), !t) return null;
3038
- o || (o = yl);
3083
+ if (e && !Xo(e) && ir("GObj bad instanceof"), !t) return null;
3084
+ o || (o = vl);
3039
3085
  let l = [];
3040
- if (Bo(t)) for (let i = 0; i < t.length; i++) {
3086
+ if (Yo(t)) for (let i = 0; i < t.length; i++) {
3041
3087
  let s, a = t[i];
3042
- if (Ko(a)) s = fl(e, a, "id", "", 0);
3088
+ if (Bo(a)) s = gl(e, a, "id", "", 0);
3043
3089
  else {
3044
- if (!Yo(a)) continue;
3090
+ if (!Jo(a)) continue;
3045
3091
  s = a;
3046
3092
  }
3047
- $l(n, s) && o(a, r) && l.push(a);
3093
+ Rl(n, s) && o(a, r) && l.push(a);
3048
3094
  }
3049
3095
  else {
3050
- if (!Ko(t)) return ir("kw_collect() BAD kw parameter"), null;
3096
+ if (!Bo(t)) return ir("kw_collect() BAD kw parameter"), null;
3051
3097
  for (let e of Object.keys(t)) {
3052
3098
  let i = t[e];
3053
- $l(n, e) && o(i, r) && l.push(i);
3099
+ Rl(n, e) && o(i, r) && l.push(i);
3054
3100
  }
3055
3101
  }
3056
3102
  return l;
3057
3103
  }
3058
- function Rl(e, t) {
3104
+ function Dl(e, t) {
3059
3105
  if (!e) return -1;
3060
3106
  for (let n = 0; n < e.length; n++) if (e[n] && e[n].id === t) return n;
3061
3107
  return -1;
3062
3108
  }
3063
- function Dl(e, t, n) {
3109
+ function kl(e, t, n) {
3064
3110
  if (!e || !t) return ir("ERROR: str_in_list() list or str empty"), !1;
3065
3111
  let r = e.length;
3066
3112
  if (n) {
@@ -3072,7 +3118,7 @@ var gobjJs = function(e) {
3072
3118
  } else for (let n = 0; n < r; n++) if (e[n] === t) return !0;
3073
3119
  return !1;
3074
3120
  }
3075
- function kl(e, t) {
3121
+ function Cl(e, t) {
3076
3122
  try {
3077
3123
  let n = e.__md_iev__;
3078
3124
  if (n) return n[t];
@@ -3080,35 +3126,35 @@ var gobjJs = function(e) {
3080
3126
  return;
3081
3127
  }
3082
3128
  }
3083
- function Cl(e, t, n) {
3129
+ function Il(e, t, n) {
3084
3130
  let r = e.__md_iev__;
3085
3131
  r || (r = {}, e.__md_iev__ = r), r[t] = n;
3086
3132
  }
3087
- function Il(e, t, n, r) {
3088
- if (!Qo(e)) return ir("gobj is not a GObj"), null;
3133
+ function Pl(e, t, n, r) {
3134
+ if (!Xo(e)) return ir("gobj is not a GObj"), null;
3089
3135
  if (!t) return;
3090
- let o = kl(t, n);
3091
- o || (o = [], Cl(t, n, o));
3136
+ let o = Cl(t, n);
3137
+ o || (o = [], Il(t, n, o));
3092
3138
  try {
3093
- Bo(o) && o.unshift(r);
3139
+ Yo(o) && o.unshift(r);
3094
3140
  } catch (e) {
3095
3141
  ir(e);
3096
3142
  }
3097
3143
  }
3098
- function Pl(e, t, n, r) {
3099
- if (!Qo(e)) return ir("gobj is not a GObj"), null;
3100
- if (!Ko(t)) return ir("kw is not a dict"), null;
3101
- let o = kl(t, n);
3144
+ function Ll(e, t, n, r) {
3145
+ if (!Xo(e)) return ir("gobj is not a GObj"), null;
3146
+ if (!Bo(t)) return ir("kw is not a dict"), null;
3147
+ let o = Cl(t, n);
3102
3148
  return o ? 0 === o.length ? (r && ir(`stack empty: ${n}`), null) : o[0] : (r && ir(`stack NOT FOUND: ${n}`), null);
3103
3149
  }
3104
- function Ll(e, t, n) {
3105
- return Xo(n) ? ul(e, t, "__md_iev__`__msg_type__") : ml(e, t, "__md_iev__", "__msg_type__", n), 0;
3150
+ function Ul(e, t, n) {
3151
+ return Zo(n) ? _l(e, t, "__md_iev__`__msg_type__") : hl(e, t, "__md_iev__", "__msg_type__", n), 0;
3106
3152
  }
3107
- function Ul(e, t) {
3108
- return fl(e, t, "__md_iev__`__msg_type__", "", 0);
3153
+ function Fl(e, t) {
3154
+ return gl(e, t, "__md_iev__`__msg_type__", "", 0);
3109
3155
  }
3110
- function Fl(e, t, n) {
3111
- void 0 !== n && Yo(n) || (n = "");
3156
+ function Ml(e, t, n) {
3157
+ void 0 !== n && Jo(n) || (n = "");
3112
3158
  for (let r of Object.keys(e)) {
3113
3159
  if (!Object.prototype.hasOwnProperty.call(e, r)) continue;
3114
3160
  let o = (n.length ? "`" : "") + r;
@@ -3117,10 +3163,10 @@ var gobjJs = function(e) {
3117
3163
  r,
3118
3164
  e[r],
3119
3165
  n
3120
- ]), Ko(e[r]) && Fl(e[r], t, n), n = n.slice(0, -o.length);
3166
+ ]), Bo(e[r]) && Ml(e[r], t, n), n = n.slice(0, -o.length);
3121
3167
  }
3122
3168
  }
3123
- function Ml(e, t, n, r) {
3169
+ function Gl(e, t, n, r) {
3124
3170
  if (!e) return null;
3125
3171
  let o, l = e.length;
3126
3172
  for (o = 0; o < l; o++) {
@@ -3128,15 +3174,15 @@ var gobjJs = function(e) {
3128
3174
  if (l) {
3129
3175
  let e = l.id;
3130
3176
  if (e && e === n) return l;
3131
- if (r && ol(l, t)) {
3132
- let e = Ml(l[t], t, n, r);
3177
+ if (r && ll(l, t)) {
3178
+ let e = Gl(l[t], t, n, r);
3133
3179
  if (e) return e;
3134
3180
  }
3135
3181
  }
3136
3182
  }
3137
3183
  return null;
3138
3184
  }
3139
- function Gl(e) {
3185
+ function Vl(e) {
3140
3186
  function t(e) {
3141
3187
  let t = e.replace(/-/g, "+").replace(/_/g, "/");
3142
3188
  switch (t.length % 4) {
@@ -3167,10 +3213,10 @@ var gobjJs = function(e) {
3167
3213
  signature: t(n[2])
3168
3214
  };
3169
3215
  }
3170
- function Vl(e) {
3216
+ function Wl(e) {
3171
3217
  return null == e ? "" : String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
3172
3218
  }
3173
- var Wl = class {
3219
+ var xl = class {
3174
3220
  constructor(e) {
3175
3221
  this.html = e, Object.freeze(this);
3176
3222
  }
@@ -3178,15 +3224,15 @@ var gobjJs = function(e) {
3178
3224
  return this.html;
3179
3225
  }
3180
3226
  };
3181
- function xl(e) {
3182
- return e instanceof Wl;
3183
- }
3184
3227
  function Kl(e) {
3228
+ return e instanceof xl;
3229
+ }
3230
+ function Bl(e) {
3185
3231
  const t = document.createElement("template");
3186
3232
  return t.innerHTML = e.html.trim(), t.content;
3187
3233
  }
3188
- var Bl = !1, Yl = /* @__PURE__ */ new Set();
3189
- function Jl(e) {
3234
+ var Yl = !1, Jl = /* @__PURE__ */ new Set();
3235
+ function ql(e) {
3190
3236
  const t = document.createElement("template");
3191
3237
  return t.innerHTML = e.trim(), t.content.firstChild;
3192
3238
  }
@@ -3194,41 +3240,52 @@ var gobjJs = function(e) {
3194
3240
  const t = (e, t) => String(e).padStart(t, "0"), n = `${(e = e || /* @__PURE__ */ new Date()).getFullYear()}-${t(e.getMonth() + 1, 2)}-${t(e.getDate(), 2)}T${t(e.getHours(), 2)}:${t(e.getMinutes(), 2)}:${t(e.getSeconds(), 2)}`, r = t(e.getMilliseconds(), 3), o = e.getTimezoneOffset();
3195
3241
  return `${n}.${r}${o > 0 ? "-" : "+"}${t(Math.floor(Math.abs(o) / 60), 2)}${t(Math.abs(o) % 60, 2)}`;
3196
3242
  }
3197
- function ql(e, t) {
3243
+ function zl(e, t) {
3198
3244
  if (!e) throw "ERROR: index_in_list() list empty";
3199
3245
  for (let n = 0; n < e.length; n++) if (t === e[n]) return n;
3200
3246
  return -1;
3201
3247
  }
3202
- function zl() {
3203
- let e = "";
3204
- const t = Tl();
3205
- if (t) {
3248
+ function Ql() {
3249
+ const e = "undefined" != typeof window && window.crypto || globalThis.crypto;
3250
+ if (e && "function" == typeof e.randomUUID) return e.randomUUID();
3251
+ const t = /* @__PURE__ */ new Uint8Array(16);
3252
+ if (e && "function" == typeof e.getRandomValues) e.getRandomValues(t);
3253
+ else for (let e = 0; e < t.length; e++) t[e] = Math.floor(256 * Math.random());
3254
+ t[6] = 15 & t[6] | 64, t[8] = 63 & t[8] | 128;
3255
+ const n = Array.from(t, (e) => e.toString(16).padStart(2, "0")).join("");
3256
+ return `${n.slice(0, 8)}-${n.slice(8, 12)}-${n.slice(12, 16)}-${n.slice(16, 20)}-${n.slice(20)}`;
3257
+ }
3258
+ var Xl = null, Zl = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
3259
+ function ei() {
3260
+ if (Xl) return Xl;
3261
+ const e = jl();
3262
+ if (!e) return Xl = Ql();
3263
+ let t = null;
3264
+ try {
3265
+ t = e.getItem("host_uuid");
3266
+ } catch (e) {
3267
+ return Sl("host_uuid", "node_uuid(): localStorage cannot be read (storage blocked?): a uuid of this page only"), Xl = Ql();
3268
+ }
3269
+ if (t && !Zl.test(t) && (sr("node_uuid(): the stored host_uuid is not a uuid: a new one replaces it"), t = null), !t) {
3270
+ t = Ql();
3206
3271
  try {
3207
- e = t.getItem("host_uuid");
3208
- } catch (t) {
3209
- e = null, Ol("host_uuid", "node_uuid(): localStorage cannot be read (storage blocked?): a uuid of this page only");
3210
- }
3211
- if (!e && window.crypto?.randomUUID) {
3212
- e = window.crypto.randomUUID();
3213
- try {
3214
- t.setItem("host_uuid", e);
3215
- } catch (e) {
3216
- Ol("host_uuid", "node_uuid(): localStorage cannot be written (storage full or blocked?): a uuid of this page only");
3217
- }
3272
+ e.setItem("host_uuid", t);
3273
+ } catch (e) {
3274
+ Sl("host_uuid", "node_uuid(): localStorage cannot be written (storage full or blocked?): a uuid of this page only");
3218
3275
  }
3219
- } else e = "undefined" != typeof globalThis && globalThis.crypto?.randomUUID ? globalThis.crypto.randomUUID() : "00000000-0000-0000-0000-000000000000";
3220
- return e;
3276
+ }
3277
+ return Xl = t;
3221
3278
  }
3222
- function Ql(e) {
3279
+ function ti(e) {
3223
3280
  let t = null;
3224
3281
  return "function" != typeof e && "object" != typeof e || (t = ("" + e).match(/function\s*([\w\$]*)\s*\(/)), null !== t ? t[1] + "()" : "";
3225
3282
  }
3226
- var Xl = 256, Zl = 1e5;
3227
- function ei(e) {
3283
+ var ni = 256, ri = 1e5;
3284
+ function oi(e) {
3228
3285
  const t = String(e).replace(/`/g, "``");
3229
3286
  return "[" === t[0] ? "[" + t : t;
3230
3287
  }
3231
- function ti(e) {
3288
+ function li(e) {
3232
3289
  if ("string" != typeof e) return null;
3233
3290
  let t = [], n = "";
3234
3291
  for (let r = 0; r < e.length; r++) if ("`" !== e[r]) n += e[r];
@@ -3249,14 +3306,14 @@ var gobjJs = function(e) {
3249
3306
  return null !== t ? t : "[" === e[0] && "[" === e[1] ? e.slice(1) : e;
3250
3307
  });
3251
3308
  }
3252
- function ni(e, t) {
3309
+ function ii(e, t) {
3253
3310
  return e === t || null !== e && null !== t && "object" == typeof e && "object" == typeof t && JSON.stringify(e) === JSON.stringify(t);
3254
3311
  }
3255
- function ri(e) {
3312
+ function si(e) {
3256
3313
  return "persistent-attrs-" + kt(e);
3257
3314
  }
3258
- function oi(e, t) {
3259
- if (Yo(t)) {
3315
+ function ai(e, t) {
3316
+ if (Jo(t)) {
3260
3317
  if (-1 === t.indexOf("^")) {
3261
3318
  let n, r, o = e.fkey;
3262
3319
  if (1 !== Vo(o)) return ir("bad fkey 1"), ir(e), ir(t), null;
@@ -3279,13 +3336,13 @@ var gobjJs = function(e) {
3279
3336
  };
3280
3337
  }
3281
3338
  }
3282
- return Ko(t) ? {
3339
+ return Bo(t) ? {
3283
3340
  topic_name: t.topic_name,
3284
3341
  id: t.id,
3285
3342
  hook_name: t.hook_name
3286
3343
  } : (ir("bad fkey 3"), ir(e), ir(t), null);
3287
3344
  }
3288
- var li = [
3345
+ var ui = [
3289
3346
  "string",
3290
3347
  "integer",
3291
3348
  "object",
@@ -3295,7 +3352,7 @@ var gobjJs = function(e) {
3295
3352
  "real",
3296
3353
  "boolean",
3297
3354
  "blob"
3298
- ], ii = [
3355
+ ], _i = [
3299
3356
  "persistent",
3300
3357
  "required",
3301
3358
  "notnull",
@@ -3307,7 +3364,7 @@ var gobjJs = function(e) {
3307
3364
  "stats",
3308
3365
  "rstats",
3309
3366
  "pstats"
3310
- ], si = [
3367
+ ], ci = [
3311
3368
  "hook",
3312
3369
  "fkey",
3313
3370
  "enum",
@@ -3336,7 +3393,7 @@ var gobjJs = function(e) {
3336
3393
  "coordinates",
3337
3394
  "gbuffer"
3338
3395
  ];
3339
- function ai(e) {
3396
+ function fi(e) {
3340
3397
  let t = {
3341
3398
  name: e.id,
3342
3399
  header: e.header,
@@ -3355,7 +3412,7 @@ var gobjJs = function(e) {
3355
3412
  if (!e.flag) return t;
3356
3413
  for (let n = 0; n < e.flag.length; n++) {
3357
3414
  let r = e.flag[n];
3358
- if (Dl(si, r)) {
3415
+ if (kl(ci, r)) {
3359
3416
  switch (r) {
3360
3417
  case "enum":
3361
3418
  t.enum_list = e.enum;
@@ -3369,7 +3426,7 @@ var gobjJs = function(e) {
3369
3426
  case "file": t.is_file = !0;
3370
3427
  }
3371
3428
  t.type = r;
3372
- } else if (Dl(ii, r)) switch (r) {
3429
+ } else if (kl(_i, r)) switch (r) {
3373
3430
  case "writable":
3374
3431
  t.is_writable = !0;
3375
3432
  break;
@@ -3382,23 +3439,23 @@ var gobjJs = function(e) {
3382
3439
  }
3383
3440
  return t.is_file && (t.type = "file"), t;
3384
3441
  }
3385
- var ui = [
3442
+ var gi = [
3386
3443
  k(E.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
3387
3444
  k(E.DTP_BOOLEAN, "periodic", 0, 0, "True for periodic timeouts"),
3388
3445
  k(E.DTP_INTEGER, "msec", 0, 0, "Timeout in milliseconds"),
3389
3446
  D()
3390
- ], _i = {
3447
+ ], di = {
3391
3448
  periodic: !1,
3392
3449
  msec: 0,
3393
3450
  timer_id: -1
3394
- }, ci = null;
3395
- function fi(e, t, n, r) {
3451
+ }, bi = null;
3452
+ function pi(e, t, n, r) {
3396
3453
  let o = e.priv, l = o.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
3397
3454
  return o.periodic && o.msec > 0 ? o.timer_id = setTimeout(function() {
3398
3455
  jn(e, "EV_TIMEOUT", {}, e);
3399
3456
  }, o.msec) : o.timer_id = -1, Ln(e, l, {}), o.periodic || -1 !== o.timer_id || Tt(e) && mt(e), 0;
3400
3457
  }
3401
- var gi = {
3458
+ var mi = {
3402
3459
  mt_create: function(e) {
3403
3460
  let t = e.priv, n = nn(e, "subscriber");
3404
3461
  n ? kn(e, null, {}, n) : Lt(e) && (n = It(e), kn(e, null, {}, n)), t.periodic = Zt(e, "periodic"), t.msec = en(e, "msec");
@@ -3422,19 +3479,19 @@ var gobjJs = function(e) {
3422
3479
  },
3423
3480
  mt_destroy: function(e) {}
3424
3481
  };
3425
- function di(e) {
3482
+ function hi(e) {
3426
3483
  return "number" == typeof e && Number.isFinite(e) ? Math.round(e) : e;
3427
3484
  }
3428
- function bi(e, t) {
3429
- return e instanceof I ? "C_TIMER" !== Dt(e) ? (ir("not C_TIMER GObj"), -1) : (an(e, "periodic", !1), void un(e, "msec", di(t))) : (ir("not GObj TYPE"), -1);
3485
+ function yi(e, t) {
3486
+ return e instanceof I ? "C_TIMER" !== Dt(e) ? (ir("not C_TIMER GObj"), -1) : (an(e, "periodic", !1), void un(e, "msec", hi(t))) : (ir("not GObj TYPE"), -1);
3430
3487
  }
3431
- function pi(e, t) {
3432
- return e instanceof I ? "C_TIMER" !== Dt(e) ? (ir("not C_TIMER GObj"), -1) : (an(e, "periodic", !0), void un(e, "msec", di(t))) : (ir("not GObj TYPE"), -1);
3488
+ function vi(e, t) {
3489
+ return e instanceof I ? "C_TIMER" !== Dt(e) ? (ir("not C_TIMER GObj"), -1) : (an(e, "periodic", !0), void un(e, "msec", hi(t))) : (ir("not GObj TYPE"), -1);
3433
3490
  }
3434
- function mi(e) {
3491
+ function Ei(e) {
3435
3492
  return e instanceof I ? "C_TIMER" !== Dt(e) ? (ir("not C_TIMER GObj"), -1) : void un(e, "msec", -1) : (ir("not GObj TYPE"), -1);
3436
3493
  }
3437
- var hi = [
3494
+ var Ti = [
3438
3495
  k(E.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
3439
3496
  k(E.DTP_BOOLEAN, "browser_beforeunload", 0, !1, "Set true to refreshing browser"),
3440
3497
  k(E.DTP_STRING, "__username__", 0, "", "Username"),
@@ -3448,78 +3505,78 @@ var gobjJs = function(e) {
3448
3505
  k(E.DTP_STRING, "yuno_version", 0, "", "Yuno version (APP_VERSION)"),
3449
3506
  k(E.DTP_STRING, "yuneta_version", 0, i, "Yuneta version"),
3450
3507
  k(E.DTP_LIST, "required_services", 0, "[]", "Required services"),
3451
- k(E.DTP_DICT, "trace_levels", A.SDF_PERSIST, "{}", "Trace levels"),
3452
- k(E.DTP_DICT, "no_trace_levels", A.SDF_PERSIST, "{}", "No trace levels"),
3508
+ k(E.DTP_DICT, "trace_levels", R.SDF_PERSIST, "{}", "Trace levels"),
3509
+ k(E.DTP_DICT, "no_trace_levels", R.SDF_PERSIST, "{}", "No trace levels"),
3453
3510
  k(E.DTP_POINTER, "trace_ievent_callback", 0, null, "Where the traffic trace goes (C_IEVENT_CLI levels ievents/ievents2); console when null"),
3454
3511
  k(E.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
3455
3512
  k(E.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
3456
3513
  D()
3457
- ], yi = { gobj_timer: null }, vi = null;
3458
- function Ei(e, t, n, r) {
3514
+ ], ji = { gobj_timer: null }, Oi = null;
3515
+ function Si(e, t, n, r) {
3459
3516
  let o = Qt(e, t);
3460
- return Ko(o) || (o = {}), o[n] = r, rn(e, t, o), it(e, t);
3517
+ return Bo(o) || (o = {}), o[n] = r, rn(e, t, o), it(e, t);
3461
3518
  }
3462
- var Ti = -2147483648, ji = 2147483647;
3463
- function Oi(e) {
3519
+ var wi = -2147483648, Ni = 2147483647;
3520
+ function $i(e) {
3464
3521
  if (!0 === e || !1 === e) return e;
3465
- if ("number" == typeof e) return !Number.isInteger(e) || e < Ti || e > ji ? null : 0 !== e;
3522
+ if ("number" == typeof e) return !Number.isInteger(e) || e < wi || e > Ni ? null : 0 !== e;
3466
3523
  if ("string" != typeof e || "" === e) return null;
3467
3524
  let t = e.toLowerCase();
3468
3525
  if ("set" === t) return !0;
3469
3526
  if ("reset" === t) return !1;
3470
3527
  if (/^-?(0|[1-9][0-9]*)$/.test(e)) {
3471
3528
  let t = Number(e);
3472
- return t < Ti || t > ji ? null : 0 !== t;
3529
+ return t < wi || t > Ni ? null : 0 !== t;
3473
3530
  }
3474
3531
  return "true" === t || "yes" === t || "on" === t || "false" !== t && "no" !== t && "off" !== t && null;
3475
3532
  }
3476
- function Si() {
3533
+ function Ri() {
3477
3534
  return `${$t()}^${Nt()}`;
3478
3535
  }
3479
- function wi(e, t, n, r) {
3536
+ function Ai(e, t, n, r) {
3480
3537
  return Ln(e, t, n), 0;
3481
3538
  }
3482
- var Ni = {
3539
+ var Di = {
3483
3540
  mt_create: function(e) {
3484
3541
  let t = e.priv;
3485
- _n(e, "start_date", Hl()), _n(e, "node_uuid", zl()), e.priv.gobj_timer = _t(Rt(e), "C_TIMER", {}, e), t.periodic_timeout = Qt(e, "periodic_timeout"), function(e) {
3542
+ _n(e, "start_date", Hl()), _n(e, "node_uuid", ei()), e.priv.gobj_timer = _t(At(e), "C_TIMER", {}, e), t.periodic_timeout = Qt(e, "periodic_timeout"), function(e) {
3486
3543
  let t = Qt(e, "trace_levels");
3487
- if (!Ko(t)) return 0;
3544
+ if (!Bo(t)) return 0;
3488
3545
  let n = t.__global_trace__;
3489
- if (Bo(n)) {
3546
+ if (Yo(n)) {
3490
3547
  ae(4294967295, !1);
3491
3548
  for (let e of n) ie(e, !0);
3492
3549
  }
3493
3550
  for (const [n, r] of Object.entries(t)) {
3494
3551
  let t = et(n);
3495
- if (t) if (Bo(r)) {
3552
+ if (t) if (Yo(r)) {
3496
3553
  be(t, null, !1);
3497
3554
  for (let e of r) be(t, e, !0);
3498
- } else ir(`${Rt(e)}: trace_levels of ${n} MUST be a list`);
3555
+ } else ir(`${At(e)}: trace_levels of ${n} MUST be a list`);
3499
3556
  }
3500
3557
  }(e), function(e) {
3501
3558
  let t = Qt(e, "no_trace_levels");
3502
- if (!Ko(t)) return 0;
3559
+ if (!Bo(t)) return 0;
3503
3560
  let n = t.__global_no_trace__;
3504
- if (Bo(n)) {
3561
+ if (Yo(n)) {
3505
3562
  ue(4294967295, !1);
3506
3563
  for (let e of n) se(e, !0);
3507
3564
  }
3508
3565
  for (const [n, r] of Object.entries(t)) {
3509
3566
  let t = et(n);
3510
- if (t) if (Bo(r)) {
3567
+ if (t) if (Yo(r)) {
3511
3568
  pe(t, null, !1);
3512
3569
  for (let e of r) pe(t, e, !0);
3513
- } else ir(`${Rt(e)}: no_trace_levels of ${n} MUST be a list`);
3570
+ } else ir(`${At(e)}: no_trace_levels of ${n} MUST be a list`);
3514
3571
  }
3515
3572
  }(e);
3516
3573
  },
3517
3574
  mt_writing: function(e, t) {},
3518
3575
  mt_start: function(e) {
3519
- return pi(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
3576
+ return vi(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
3520
3577
  },
3521
3578
  mt_stop: function(e) {
3522
- return mi(e.priv.gobj_timer), yt(e), 0;
3579
+ return Ei(e.priv.gobj_timer), yt(e), 0;
3523
3580
  },
3524
3581
  mt_destroy: function(e) {},
3525
3582
  mt_play: function(e) {
@@ -3536,49 +3593,49 @@ var gobjJs = function(e) {
3536
3593
  case "get-global-no-trace": return o(0, 0, null, null, ce());
3537
3594
  case "set-global-trace":
3538
3595
  case "set-global-no-trace": {
3539
- let r = "set-global-no-trace" === t, l = n.level, i = Oi(n.set);
3540
- return l ? null === i ? o(0, -1, `${Si()}: bitmask set or re-set?`, null, null) : (r ? se(l, i) : ie(l, i)) < 0 ? o(0, -1, `${Si()}: global trace level not found: ${l}`, null, null) : r ? (Ei(e, "no_trace_levels", "__global_no_trace__", ce()), o(0, 0, null, null, ce())) : (Ei(e, "trace_levels", "__global_trace__", _e()), o(0, 0, null, null, _e())) : o(0, -1, `${Si()}: what level?`, null, null);
3596
+ let r = "set-global-no-trace" === t, l = n.level, i = $i(n.set);
3597
+ return l ? null === i ? o(0, -1, `${Ri()}: bitmask set or re-set?`, null, null) : (r ? se(l, i) : ie(l, i)) < 0 ? o(0, -1, `${Ri()}: global trace level not found: ${l}`, null, null) : r ? (Si(e, "no_trace_levels", "__global_no_trace__", ce()), o(0, 0, null, null, ce())) : (Si(e, "trace_levels", "__global_trace__", _e()), o(0, 0, null, null, _e())) : o(0, -1, `${Ri()}: what level?`, null, null);
3541
3598
  }
3542
3599
  case "get-gclass-trace":
3543
3600
  case "get-gclass-no-trace":
3544
3601
  case "set-gclass-trace":
3545
3602
  case "set-gclass-no-trace": {
3546
3603
  let r = t.indexOf("no-trace") >= 0, l = n.gclass_name || n.gclass || "", i = et(l);
3547
- if (!i) return o(0, -1, `${Si()}: what gclass is '${l}'?`, null, null);
3604
+ if (!i) return o(0, -1, `${Ri()}: what gclass is '${l}'?`, null, null);
3548
3605
  if (0 === t.indexOf("get-")) return o(0, 0, null, null, r ? de(i) : fe(i));
3549
- let s = n.level, a = Oi(n.set);
3550
- return s ? null === a ? o(0, -1, `${Si()}: bitmask set or re-set?`, null, null) : (r ? pe(i, s, a) : be(i, s, a)) < 0 ? o(0, -1, `${Si()}: trace level of ${l} not found: ${s}`, null, null) : r ? (Ei(e, "no_trace_levels", l, de(i)), o(0, 0, null, null, de(i))) : (Ei(e, "trace_levels", l, ge(i)), o(0, 0, null, null, fe(i))) : o(0, -1, `${Si()}: what level?`, null, null);
3606
+ let s = n.level, a = $i(n.set);
3607
+ return s ? null === a ? o(0, -1, `${Ri()}: bitmask set or re-set?`, null, null) : (r ? pe(i, s, a) : be(i, s, a)) < 0 ? o(0, -1, `${Ri()}: trace level of ${l} not found: ${s}`, null, null) : r ? (Si(e, "no_trace_levels", l, de(i)), o(0, 0, null, null, de(i))) : (Si(e, "trace_levels", l, ge(i)), o(0, 0, null, null, fe(i))) : o(0, -1, `${Ri()}: what level?`, null, null);
3551
3608
  }
3552
- default: return o(0, -1, `${Si()}: command not available: ${t}`, null, null);
3609
+ default: return o(0, -1, `${Ri()}: command not available: ${t}`, null, null);
3553
3610
  }
3554
3611
  }
3555
3612
  };
3556
- var $i = "ievent_gate_stack", Ai = [
3557
- k(E.DTP_STRING, "wanted_yuno_role", A.SDF_RD, "", "wanted yuno role"),
3558
- k(E.DTP_STRING, "wanted_yuno_name", A.SDF_RD, "", "wanted yuno name"),
3559
- k(E.DTP_STRING, "wanted_yuno_service", A.SDF_RD, "", "wanted yuno service"),
3560
- k(E.DTP_STRING, "remote_yuno_role", A.SDF_RD, "", "confirmed remote yuno role"),
3561
- k(E.DTP_STRING, "remote_yuno_name", A.SDF_RD, "", "confirmed remote yuno name"),
3562
- k(E.DTP_STRING, "remote_yuno_service", A.SDF_RD, "", "confirmed remote yuno service"),
3563
- k(E.DTP_STRING, "url", A.SDF_RD, "", "Url to connect"),
3564
- k(E.DTP_STRING, "jwt", A.SDF_PERSIST, "", "JWT"),
3565
- k(E.DTP_STRING, "cert_pem", A.SDF_PERSIST, "", "SSL server certification, PEM str format"),
3566
- k(E.DTP_JSON, "extra_info", A.SDF_RD, "{}", "dict data set by user, added to the identity card msg."),
3567
- k(E.DTP_LIST, "required_services", A.SDF_RD, "[]", "Services this LINK requires (identity card). Empty = the yuno's `required_services`, as before. A yuno with several links to DIFFERENT backends must set it per link: the yuno-wide list is the union, so every backend is told the service names of all the others."),
3568
- k(E.DTP_INTEGER, "timeout_retry", A.SDF_RD, "5000", "First reconnect delay (ms), at least 1000. It BACKS OFF from here, doubling up to timeout_retry_max, and resets when a session is reached"),
3569
- k(E.DTP_INTEGER, "timeout_retry_max", A.SDF_RD, "60000", "Cap of the reconnect backoff (ms). Set it equal to timeout_retry for the old fixed-interval behaviour"),
3570
- k(E.DTP_INTEGER, "timeout_idack", A.SDF_RD, "5000", "timeout waiting idAck"),
3613
+ var ki = "ievent_gate_stack", Ci = [
3614
+ k(E.DTP_STRING, "wanted_yuno_role", R.SDF_RD, "", "wanted yuno role"),
3615
+ k(E.DTP_STRING, "wanted_yuno_name", R.SDF_RD, "", "wanted yuno name"),
3616
+ k(E.DTP_STRING, "wanted_yuno_service", R.SDF_RD, "", "wanted yuno service"),
3617
+ k(E.DTP_STRING, "remote_yuno_role", R.SDF_RD, "", "confirmed remote yuno role"),
3618
+ k(E.DTP_STRING, "remote_yuno_name", R.SDF_RD, "", "confirmed remote yuno name"),
3619
+ k(E.DTP_STRING, "remote_yuno_service", R.SDF_RD, "", "confirmed remote yuno service"),
3620
+ k(E.DTP_STRING, "url", R.SDF_RD, "", "Url to connect"),
3621
+ k(E.DTP_STRING, "jwt", R.SDF_PERSIST, "", "JWT"),
3622
+ k(E.DTP_STRING, "cert_pem", R.SDF_PERSIST, "", "SSL server certification, PEM str format"),
3623
+ k(E.DTP_JSON, "extra_info", R.SDF_RD, "{}", "dict data set by user, added to the identity card msg."),
3624
+ k(E.DTP_LIST, "required_services", R.SDF_RD, "[]", "Services this LINK requires (identity card). Empty = the yuno's `required_services`, as before. A yuno with several links to DIFFERENT backends must set it per link: the yuno-wide list is the union, so every backend is told the service names of all the others."),
3625
+ k(E.DTP_INTEGER, "timeout_retry", R.SDF_RD, "5000", "Base of the first reconnect delay (ms, ±20% jitter), at least 1000. It BACKS OFF from here, doubling up to timeout_retry_max, and resets when a session is reached"),
3626
+ k(E.DTP_INTEGER, "timeout_retry_max", R.SDF_RD, "60000", "Cap of the reconnect backoff (ms). Set it equal to timeout_retry for the old fixed-interval behaviour"),
3627
+ k(E.DTP_INTEGER, "timeout_idack", R.SDF_RD, "5000", "timeout waiting idAck"),
3571
3628
  k(E.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
3572
3629
  D()
3573
- ], Ri = [
3630
+ ], Ii = [
3574
3631
  ["ievents", "Trace inter-events with metadata of kw"],
3575
3632
  ["ievents2", "Trace inter-events with full kw"],
3576
3633
  ["identity-card", "Trace identity_card messages"]
3577
3634
  ];
3578
- function Di(e) {
3635
+ function Pi(e) {
3579
3636
  return !!(3 & X(e));
3580
3637
  }
3581
- var ki = {
3638
+ var Li = {
3582
3639
  url: null,
3583
3640
  remote_yuno_name: null,
3584
3641
  remote_yuno_role: null,
@@ -3591,8 +3648,8 @@ var gobjJs = function(e) {
3591
3648
  retry_ms_before_session: 0,
3592
3649
  session_since: 0,
3593
3650
  retry_floor_warned: !1
3594
- }, Ci = null;
3595
- function Ii(e) {
3651
+ }, Ui = null;
3652
+ function Fi(e) {
3596
3653
  e.priv.websocket && ir("Websocket ALREADY setup");
3597
3654
  const t = tn(e, "url");
3598
3655
  ar(`====> Starting WebSocket to '${t}' (${kt(e)})`);
@@ -3607,7 +3664,7 @@ var gobjJs = function(e) {
3607
3664
  code: 1006,
3608
3665
  reason: r.message,
3609
3666
  was_clean: !1
3610
- }, e) < 0 && bi(e.priv.gobj_timer, zi(e)), null;
3667
+ }, e) < 0 && yi(e.priv.gobj_timer, es(e)), null;
3611
3668
  }
3612
3669
  return r ? (r.onopen = () => {
3613
3670
  n !== e.priv.ws_seq || Ut(e) || jn(e, "EV_ON_OPEN", {
@@ -3629,7 +3686,7 @@ var gobjJs = function(e) {
3629
3686
  }, e));
3630
3687
  }, r) : (ir(`${kt(e)}: Failed to initialize WebSocket.`), null);
3631
3688
  }
3632
- function Pi(e, t = 1e3, n = "") {
3689
+ function Mi(e, t = 1e3, n = "") {
3633
3690
  let r = e.priv, o = r.websocket;
3634
3691
  if (r.websocket = null, o && o.readyState !== WebSocket.CLOSED && o.readyState !== WebSocket.CLOSING) {
3635
3692
  ar(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
@@ -3640,12 +3697,12 @@ var gobjJs = function(e) {
3640
3697
  }
3641
3698
  } else sr("WebSocket is already closed or in the process of closing.");
3642
3699
  }
3643
- function Li(e, t) {
3700
+ function Gi(e, t) {
3644
3701
  let n = e.priv;
3645
- "ST_SESSION" === fn(e) && (performance.now() - n.session_since < qi(e).max && (n.retry_ms = n.retry_ms_before_session), n.retry_ms_before_session = 0), Pi(e, 4002, t);
3702
+ "ST_SESSION" === fn(e) && (performance.now() - n.session_since < Zi(e).max && (n.retry_ms = n.retry_ms_before_session), n.retry_ms_before_session = 0), Mi(e, 4002, t);
3646
3703
  }
3647
- var Ui = 128;
3648
- function Fi(e, t) {
3704
+ var Vi = 128;
3705
+ function Wi(e, t) {
3649
3706
  let n = String(e), r = To(n);
3650
3707
  if (null !== r && (n = r), n.length > t) {
3651
3708
  let e = t, r = n.charCodeAt(e);
@@ -3653,7 +3710,7 @@ var gobjJs = function(e) {
3653
3710
  }
3654
3711
  return n;
3655
3712
  }
3656
- function Mi(e, t, n) {
3713
+ function xi(e, t, n) {
3657
3714
  let r = Hl();
3658
3715
  try {
3659
3716
  ar("\n" + r + " " + t + "\n"), $o(n);
@@ -3661,17 +3718,17 @@ var gobjJs = function(e) {
3661
3718
  ar("ERROR in trace_inter_event: " + e);
3662
3719
  }
3663
3720
  }
3664
- var Gi = class {
3721
+ var Ki = class {
3665
3722
  constructor(e, t) {
3666
3723
  this.event = e, this.kw = t || {};
3667
3724
  }
3668
3725
  };
3669
- function Vi(e, t, n, r) {
3726
+ function Bi(e, t, n, r) {
3670
3727
  return function(e, t) {
3671
3728
  let n = e.priv, r = JSON.stringify(t);
3672
- if (Di(e)) {
3673
- let n = tn(e, "url"), o = Rt(wt()) + " ==> " + n, l = Qt(wt(), "trace_ievent_callback");
3674
- l ? l(o, t, 1, r.length) : Mi(0, o, t);
3729
+ if (Pi(e)) {
3730
+ let n = tn(e, "url"), o = At(wt()) + " ==> " + n, l = Qt(wt(), "trace_ievent_callback");
3731
+ l ? l(o, t, 1, r.length) : xi(0, o, t);
3675
3732
  }
3676
3733
  if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return sr(`${kt(e)}: send_iev(): websocket not open, message lost`), -1;
3677
3734
  try {
@@ -3681,26 +3738,26 @@ var gobjJs = function(e) {
3681
3738
  }
3682
3739
  return 0;
3683
3740
  }(e, function(e, t) {
3684
- return Xo(e) ? (ir("iev_create() event NULL"), null) : new Gi(e, t);
3741
+ return Zo(e) ? (ir("iev_create() event NULL"), null) : new Ki(e, t);
3685
3742
  }(t, n));
3686
3743
  }
3687
- function Wi(e, t, n) {
3688
- return Xo(n) && (n = tn(e, "wanted_yuno_service")), {
3744
+ function Yi(e, t, n) {
3745
+ return Zo(n) && (n = tn(e, "wanted_yuno_service")), {
3689
3746
  dst_yuno: tn(e, "wanted_yuno_name"),
3690
3747
  dst_role: tn(e, "wanted_yuno_role"),
3691
3748
  dst_service: n,
3692
3749
  src_yuno: Nt(),
3693
3750
  src_role: $t(),
3694
3751
  src_service: t,
3695
- host: zl()
3752
+ host: ei()
3696
3753
  };
3697
3754
  }
3698
- function xi(e) {
3755
+ function Ji(e) {
3699
3756
  let t = e.priv, n = St(wt()), r = tn(wt(), "yuno_version"), o = tn(wt(), "yuno_release"), l = tn(wt(), "yuno_tag"), s = Qt(e, "required_services");
3700
3757
  s && s.length || (s = Qt(wt(), "required_services"));
3701
3758
  let a = {
3702
3759
  yuno_role: $t(),
3703
- yuno_id: At(),
3760
+ yuno_id: Rt(),
3704
3761
  yuno_name: Nt(),
3705
3762
  yuno_tag: l,
3706
3763
  yuno_version: r,
@@ -3713,32 +3770,32 @@ var gobjJs = function(e) {
3713
3770
  username: tn(wt(), "__username__"),
3714
3771
  launch_id: 0,
3715
3772
  yuno_startdate: tn(wt(), "start_date"),
3716
- id: zl(),
3773
+ id: ei(),
3717
3774
  user_agent: "undefined" != typeof window ? window.navigator.userAgent : "",
3718
3775
  language: "undefined" != typeof window ? window.navigator.language : "",
3719
3776
  required_services: s
3720
3777
  };
3721
- return Il(e, a, $i, Wi(e, Rt(It(e)), null)), Ll(e, a, "__identity__"), bi(t.gobj_timer, en(e, "timeout_idack")), Vi(e, "EV_IDENTITY_CARD", a);
3778
+ return Pl(e, a, ki, Yi(e, At(It(e)), null)), Ul(e, a, "__identity__"), yi(t.gobj_timer, en(e, "timeout_idack")), Bi(e, "EV_IDENTITY_CARD", a);
3722
3779
  }
3723
- function Ki(e, t) {
3724
- if (Xo(t.event)) return -1;
3780
+ function qi(e, t) {
3781
+ if (Zo(t.event)) return -1;
3725
3782
  let n = {}, r = t.__global__, o = t.__config__, l = t.__filter__, i = t.__service__, s = t.subscriber;
3726
3783
  o && (n.__config__ = o), r && (n.__global__ = r), l && (n.__filter__ = l);
3727
- return Il(e, n, $i, Wi(e, Rt(s), i)), Ll(e, n, "__subscribing__"), Vi(e, t.event, n);
3784
+ return Pl(e, n, ki, Yi(e, At(s), i)), Ul(e, n, "__subscribing__"), Bi(e, t.event, n);
3728
3785
  }
3729
- function Bi(e, t, n, r) {
3786
+ function Hi(e, t, n, r) {
3730
3787
  let o = e.priv;
3731
- return Tt(e) && (o.websocket = Ii(e)), 0;
3788
+ return Tt(e) && (o.websocket = Fi(e)), 0;
3732
3789
  }
3733
- function Yi(e, t, n, r) {
3734
- return ar("Websocket opened: " + e.priv.url), xi(e), 0;
3790
+ function zi(e, t, n, r) {
3791
+ return ar("Websocket opened: " + e.priv.url), Ji(e), 0;
3735
3792
  }
3736
- function Ji(e, t, n, r) {
3793
+ function Qi(e, t, n, r) {
3737
3794
  let o = e.priv, l = n.url;
3738
3795
  if (void 0 !== n.ws_seq && n.ws_seq !== o.ws_seq) return 0;
3739
3796
  Xn();
3740
- const i = Fi(void 0 === n.reason ? "" : n.reason, 256);
3741
- return Di(e) && ur(`${kt(e)}: WebSocket closed ${l} (Code: ${n.code}, Reason: "${i}", Clean: ${n.was_clean})`), 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, (!n.was_clean || 1e3 !== n.code && 1001 !== n.code) && Tt(e) && sr(`${kt(e)}: session closed ${l} (Code: ${n.code}, Reason: "${i}", Clean: ${n.was_clean})`), Ln(e, "EV_ON_CLOSE", {
3797
+ const i = Wi(void 0 === n.reason ? "" : n.reason, 256);
3798
+ return Pi(e) && ur(`${kt(e)}: WebSocket closed ${l} (Code: ${n.code}, Reason: "${i}", Clean: ${n.was_clean})`), 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, (!n.was_clean || 1e3 !== n.code && 1001 !== n.code) && Tt(e) && sr(`${kt(e)}: session closed ${l} (Code: ${n.code}, Reason: "${i}", Clean: ${n.was_clean})`), Ln(e, "EV_ON_CLOSE", {
3742
3799
  url: l,
3743
3800
  remote_yuno_name: o.remote_yuno_name,
3744
3801
  remote_yuno_role: o.remote_yuno_role,
@@ -3754,33 +3811,33 @@ var gobjJs = function(e) {
3754
3811
  code: n.code,
3755
3812
  reason: i,
3756
3813
  was_clean: n.was_clean
3757
- })), Tt(e) && bi(o.gobj_timer, zi(e)), 0;
3814
+ })), Tt(e) && yi(o.gobj_timer, es(e)), 0;
3758
3815
  }
3759
- var Hi = 1e3;
3760
- function qi(e) {
3816
+ var Xi = 1e3;
3817
+ function Zi(e) {
3761
3818
  let t = e.priv, n = en(e, "timeout_retry"), r = en(e, "timeout_retry_max");
3762
- return n >= Hi || (t.retry_floor_warned || (t.retry_floor_warned = !0, sr(`${kt(e)}: timeout_retry ${n} ms is below ${Hi} ms: ${Hi} ms is used`)), n = Hi), r >= n || (r = n), {
3819
+ return n >= Xi || (t.retry_floor_warned || (t.retry_floor_warned = !0, sr(`${kt(e)}: timeout_retry ${n} ms is below ${Xi} ms: ${Xi} ms is used`)), n = Xi), r >= n || (r = n), {
3763
3820
  base: n,
3764
3821
  max: r
3765
3822
  };
3766
3823
  }
3767
- function zi(e) {
3824
+ function es(e) {
3768
3825
  let t = e.priv;
3769
- const { base: n, max: r } = qi(e);
3826
+ const { base: n, max: r } = Zi(e);
3770
3827
  t.retry_ms = t.retry_ms ? Math.min(2 * t.retry_ms, r) : n;
3771
3828
  let o = .2 * t.retry_ms, l = t.retry_ms - o + 2 * Math.random() * o;
3772
3829
  return Math.max(1, Math.round(l));
3773
3830
  }
3774
- function Qi(e, t, n, r) {
3775
- return xi(e), 0;
3831
+ function ts(e, t, n, r) {
3832
+ return Ji(e), 0;
3776
3833
  }
3777
- function Xi(e, t, n, r) {
3834
+ function ns(e, t, n, r) {
3778
3835
  let o = e.priv;
3779
- mi(o.gobj_timer);
3780
- let l = Pl(e, n, $i, !0), i = fl(e, l, "src_yuno", ""), s = fl(e, l, "src_role", ""), a = fl(e, l, "src_service", "");
3836
+ Ei(o.gobj_timer);
3837
+ let l = Ll(e, n, ki, !0), i = gl(e, l, "src_yuno", ""), s = gl(e, l, "src_role", ""), a = gl(e, l, "src_service", "");
3781
3838
  _n(e, "remote_yuno_name", i), _n(e, "remote_yuno_role", s), _n(e, "remote_yuno_service", a);
3782
- let u = cl(e, n, "result", -1, 0), _ = fl(e, n, "comment", "", 0), c = fl(e, n, "username", "", 0), f = bl(e, n, "services_roles", {});
3783
- if (u < 0) Pi(e), Ln(e, "EV_ON_ID_NAK", {
3839
+ let u = fl(e, n, "result", -1, 0), _ = gl(e, n, "comment", "", 0), c = gl(e, n, "username", "", 0), f = pl(e, n, "services_roles", {});
3840
+ if (u < 0) Mi(e), Ln(e, "EV_ON_ID_NAK", {
3784
3841
  url: tn(e, "url"),
3785
3842
  result: u,
3786
3843
  comment: _,
@@ -3797,11 +3854,11 @@ var gobjJs = function(e) {
3797
3854
  services_roles: f
3798
3855
  })), o.inside_on_open = !1, function(e) {
3799
3856
  let t = In(e, null, null, null);
3800
- for (let n = 0; n < t.length; n++) Ki(e, t[n]);
3857
+ for (let n = 0; n < t.length; n++) qi(e, t[n]);
3801
3858
  }(e);
3802
3859
  return 0;
3803
3860
  }
3804
- function Zi(e, t, n, r) {
3861
+ function rs(e, t, n, r) {
3805
3862
  let o = e.priv.url, l = function(e, t) {
3806
3863
  let n;
3807
3864
  try {
@@ -3820,52 +3877,52 @@ var gobjJs = function(e) {
3820
3877
  kw: o || {}
3821
3878
  } : (sr(`${kt(e)}: parsing inter_event: kw not a json object`), null) : (sr(`${kt(e)}: parsing inter_kw: no kw`), null);
3822
3879
  }(e, n.data);
3823
- if (!l) return sr(`${kt(e)}: frame dropped from ${o}: ${Fi(n.data, 256)}`), -1;
3824
- if (Di(e)) {
3825
- let e = Rt(wt()) + " <== " + o, t = n.data.length, r = Qt(wt(), "trace_ievent_callback");
3826
- r ? r(e, l, 2, t) : Mi(0, e, l);
3880
+ if (!l) return sr(`${kt(e)}: frame dropped from ${o}: ${Wi(n.data, 256)}`), -1;
3881
+ if (Pi(e)) {
3882
+ let e = At(wt()) + " <== " + o, t = n.data.length, r = Qt(wt(), "trace_ievent_callback");
3883
+ r ? r(e, l, 2, t) : xi(0, e, l);
3827
3884
  }
3828
3885
  let i = l.event, s = l.kw;
3829
3886
  if ("ST_SESSION" !== fn(e)) {
3830
3887
  if ("ev_identity_card_ack" === String(i).toLowerCase()) {
3831
3888
  if (!(jn(e, "EV_IDENTITY_CARD_ACK", s, e) < 0)) return 0;
3832
- } else sr(`${kt(e)}: event UNKNOWN in not-session state ${Fi(i, Ui)}`);
3833
- return Li(e, "event out of session"), -1;
3889
+ } else sr(`${kt(e)}: event UNKNOWN in not-session state ${Wi(i, Vi)}`);
3890
+ return Gi(e, "event out of session"), -1;
3834
3891
  }
3835
3892
  l = null;
3836
- let a = Ul(e, s), u = Pl(e, s, $i), _ = fl(e, u, "dst_role", "");
3837
- if (!Xo(_) && _.toLowerCase() !== String($t()).toLowerCase()) return sr(`${kt(e)}: It's not my role, dst_role: ${Fi(_, Ui)}, my_role: ${$t()}, event: ${Fi(i, Ui)}`), Li(e, "not my role"), -1;
3838
- let c = fl(e, u, "dst_yuno", "");
3839
- if (!Xo(c) && c.toLowerCase() !== String(Nt()).toLowerCase()) return sr(`${kt(e)}: It's not my name, dst_yuno: ${Fi(c, Ui)}, my_name: ${Nt()}, event: ${Fi(i, Ui)}`), Li(e, "not my name"), -1;
3840
- let f = fl(e, u, "dst_service", "");
3841
- if ("__subscribing__" === a) return sr(`${kt(e)}: subscription event ignored, I'm client (service: ${Fi(f, Ui)}, event: ${Fi(i, Ui)})`), -1;
3842
- if ("__unsubscribing__" === a) return sr(`${kt(e)}: unsubscription event ignored, I'm client (service: ${Fi(f, Ui)}, event: ${Fi(i, Ui)})`), -1;
3893
+ let a = Fl(e, s), u = Ll(e, s, ki), _ = gl(e, u, "dst_role", "");
3894
+ if (!Zo(_) && _.toLowerCase() !== String($t()).toLowerCase()) return sr(`${kt(e)}: It's not my role, dst_role: ${Wi(_, Vi)}, my_role: ${$t()}, event: ${Wi(i, Vi)}`), Gi(e, "not my role"), -1;
3895
+ let c = gl(e, u, "dst_yuno", "");
3896
+ if (!Zo(c) && c.toLowerCase() !== String(Nt()).toLowerCase()) return sr(`${kt(e)}: It's not my name, dst_yuno: ${Wi(c, Vi)}, my_name: ${Nt()}, event: ${Wi(i, Vi)}`), Gi(e, "not my name"), -1;
3897
+ let f = gl(e, u, "dst_service", "");
3898
+ if ("__subscribing__" === a) return sr(`${kt(e)}: subscription event ignored, I'm client (service: ${Wi(f, Vi)}, event: ${Wi(i, Vi)})`), -1;
3899
+ if ("__unsubscribing__" === a) return sr(`${kt(e)}: unsubscription event ignored, I'm client (service: ${Wi(f, Vi)}, event: ${Wi(i, Vi)})`), -1;
3843
3900
  const g = Sn(i, 0, !1);
3844
3901
  if (g && dn(e, g.event_name, 0)) {
3845
3902
  const t = g.event_name;
3846
- return dn(e, t, F.EVF_PUBLIC_EVENT) && "EV_IDENTITY_CARD_ACK" !== t ? (jn(e, t, s, e), 0) : (sr(`${kt(e)}: event of the transport itself, or out of its place, DROPPED: ev '${Fi(i, Ui)}'`), -1);
3903
+ return dn(e, t, F.EVF_PUBLIC_EVENT) && "EV_IDENTITY_CARD_ACK" !== t ? (jn(e, t, s, e), 0) : (sr(`${kt(e)}: event of the transport itself, or out of its place, DROPPED: ev '${Wi(i, Vi)}'`), -1);
3847
3904
  }
3848
- if (!Xo(f)) {
3905
+ if (!Zo(f)) {
3849
3906
  let t = nt(f, !1);
3850
- return t ? dn(t, i, F.EVF_PUBLIC_EVENT) ? (jn(t, i, s, e), 0) : (sr(`${kt(e)}: Service found but no event or not public, DROPPED: service '${kt(t)}', ev '${Fi(i, Ui)}'`), -1) : (sr(`${kt(e)}: event for a service that is gone, DROPPED: service '${Fi(f, Ui)}', ev '${Fi(i, Ui)}'`), 0);
3907
+ return t ? dn(t, i, F.EVF_PUBLIC_EVENT) ? (jn(t, i, s, e), 0) : (sr(`${kt(e)}: Service found but no event or not public, DROPPED: service '${kt(t)}', ev '${Wi(i, Vi)}'`), -1) : (sr(`${kt(e)}: event for a service that is gone, DROPPED: service '${Wi(f, Vi)}', ev '${Wi(i, Vi)}'`), 0);
3851
3908
  }
3852
3909
  let d = Sn(i, F.EVF_PUBLIC_EVENT, !1);
3853
- return d ? (Ln(e, d.event_name, s), 0) : (sr(`${kt(e)}: event that no gclass declares public, DROPPED: ev '${Fi(i, Ui)}'`), -1);
3910
+ return d ? (Ln(e, d.event_name, s), 0) : (sr(`${kt(e)}: event that no gclass declares public, DROPPED: ev '${Wi(i, Vi)}'`), -1);
3854
3911
  }
3855
- function es(e, t, n, r) {
3912
+ function os(e, t, n, r) {
3856
3913
  const o = n && "string" == typeof n[r] ? n[r] : "", l = n && "string" == typeof n.service ? n.service : "";
3857
- return sr(`${kt(e)}: ${t} not served by this client, DROPPED: ${r.replace(/_/g, "")} '${Fi(o, Ui)}', service '${Fi(l, Ui)}'`), -1;
3914
+ return sr(`${kt(e)}: ${t} not served by this client, DROPPED: ${r.replace(/_/g, "")} '${Wi(o, Vi)}', service '${Wi(l, Vi)}'`), -1;
3858
3915
  }
3859
- function ts(e, t, n, r) {
3860
- return es(e, t, n, "__stats__");
3916
+ function ls(e, t, n, r) {
3917
+ return os(e, t, n, "__stats__");
3861
3918
  }
3862
- function ns(e, t, n, r) {
3863
- return es(e, t, n, "__command__");
3919
+ function is(e, t, n, r) {
3920
+ return os(e, t, n, "__command__");
3864
3921
  }
3865
- var rs = {
3922
+ var ss = {
3866
3923
  mt_create: function(e) {
3867
3924
  let t = e.priv;
3868
- t.gobj_timer = _t(Rt(e), "C_TIMER", {}, e), t.ws_seq = 0, t.url = tn(e, "url"), t.remote_yuno_name = tn(e, "remote_yuno_name"), t.remote_yuno_role = tn(e, "remote_yuno_role"), t.remote_yuno_service = tn(e, "remote_yuno_service"), _n(e, "wanted_yuno_name", t.remote_yuno_name), _n(e, "wanted_yuno_role", t.remote_yuno_role), _n(e, "wanted_yuno_service", t.remote_yuno_service);
3925
+ t.gobj_timer = _t(At(e), "C_TIMER", {}, e), t.ws_seq = 0, t.url = tn(e, "url"), t.remote_yuno_name = tn(e, "remote_yuno_name"), t.remote_yuno_role = tn(e, "remote_yuno_role"), t.remote_yuno_service = tn(e, "remote_yuno_service"), _n(e, "wanted_yuno_name", t.remote_yuno_name), _n(e, "wanted_yuno_role", t.remote_yuno_role), _n(e, "wanted_yuno_service", t.remote_yuno_service);
3869
3926
  let n = nn(e, "subscriber");
3870
3927
  n ? kn(e, null, {}, n) : Lt(e) && (n = It(e), kn(e, null, {}, n));
3871
3928
  },
@@ -3892,55 +3949,55 @@ var gobjJs = function(e) {
3892
3949
  code: 1e3,
3893
3950
  reason: "restarted",
3894
3951
  was_clean: !0
3895
- }, e), mi(t.gobj_timer)), t.websocket = Ii(e), 0;
3952
+ }, e), Ei(t.gobj_timer)), t.websocket = Fi(e), 0;
3896
3953
  },
3897
3954
  mt_stop: function(e) {
3898
3955
  let t = e.priv;
3899
- return mi(t.gobj_timer), t.websocket && Pi(e), 0;
3956
+ return Ei(t.gobj_timer), t.websocket && Mi(e), 0;
3900
3957
  },
3901
3958
  mt_destroy: function(e) {},
3902
3959
  mt_stats: function(e, t, n, r) {
3903
3960
  if ("ST_SESSION" !== fn(e)) return ir("Not in session"), null;
3904
3961
  n || (n = {});
3905
- let o = Wi(e, Rt(r), fl(e, n, "service", null, 0)), l = bl(e, n, "__md_stats__", null, Un.KW_EXTRACT);
3906
- return l || (l = {}), Il(e, n, "stats_stack", {
3962
+ let o = Yi(e, At(r), gl(e, n, "service", null, 0)), l = pl(e, n, "__md_stats__", null, Un.KW_EXTRACT);
3963
+ return l || (l = {}), Pl(e, n, "stats_stack", {
3907
3964
  stats: t,
3908
3965
  kw: l
3909
- }), Il(e, n, $i, o), n.__stats__ = t, Ll(e, n, "__stats__"), Vi(e, "EV_MT_STATS", n, r), null;
3966
+ }), Pl(e, n, ki, o), n.__stats__ = t, Ul(e, n, "__stats__"), Bi(e, "EV_MT_STATS", n, r), null;
3910
3967
  },
3911
3968
  mt_command_parser: function(e, t, n, r) {
3912
3969
  if ("ST_SESSION" !== fn(e)) return ir("Not in session"), null;
3913
3970
  n || (n = {});
3914
- let o = Wi(e, Rt(r), fl(e, n, "service", "", 0)), l = bl(e, n, "__md_command__", null, Un.KW_EXTRACT);
3915
- return l || (l = {}), Il(e, n, "command_stack", {
3971
+ let o = Yi(e, At(r), gl(e, n, "service", "", 0)), l = pl(e, n, "__md_command__", null, Un.KW_EXTRACT);
3972
+ return l || (l = {}), Pl(e, n, "command_stack", {
3916
3973
  command: t,
3917
3974
  kw: l
3918
- }), Il(e, n, $i, o), n.__command__ = t, Ll(e, n, "__command__"), Vi(e, "EV_MT_COMMAND", n, r), null;
3975
+ }), Pl(e, n, ki, o), n.__command__ = t, Ul(e, n, "__command__"), Bi(e, "EV_MT_COMMAND", n, r), null;
3919
3976
  },
3920
3977
  mt_inject_event: function(e, t, n, r) {
3921
3978
  if ("ST_SESSION" !== fn(e)) return window.console.error("Not in session"), -1;
3922
- if (n = Do({}, Ko(n) ? n : {}), Ko(n.__md_iev__) && (n.__md_iev__ = Ao(n.__md_iev__)), Pl(e, n, $i));
3979
+ if (n = Do({}, Bo(n) ? n : {}), Bo(n.__md_iev__) && (n.__md_iev__ = Ro(n.__md_iev__)), Ll(e, n, ki));
3923
3980
  else {
3924
- let o = Wi(e, Rt(r), fl(e, n, "__service__", 0, 0));
3925
- Po(n, "__service__"), Il(e, n, "__message__", t), Il(e, n, $i, o);
3981
+ let o = Yi(e, At(r), gl(e, n, "__service__", 0, 0));
3982
+ Po(n, "__service__"), Pl(e, n, "__message__", t), Pl(e, n, ki, o);
3926
3983
  }
3927
- return Ll(e, n, "__message__"), Vi(e, t, n, r);
3984
+ return Ul(e, n, "__message__"), Bi(e, t, n, r);
3928
3985
  },
3929
3986
  mt_subscription_added: function(e, t) {
3930
3987
  let n = e.priv;
3931
- return "ST_SESSION" === fn(e) && n.websocket ? n.inside_on_open ? 0 : Ki(e, t) : 0;
3988
+ return "ST_SESSION" === fn(e) && n.websocket ? n.inside_on_open ? 0 : qi(e, t) : 0;
3932
3989
  },
3933
3990
  mt_subscription_deleted: function(e, t) {
3934
3991
  let n = e.priv;
3935
3992
  if ("ST_SESSION" !== fn(e) || !n.websocket) return 0;
3936
3993
  if (n.inside_on_open) return 0;
3937
- if (Xo(t.event)) return 0;
3994
+ if (Zo(t.event)) return 0;
3938
3995
  let r = {}, o = t.__global__, l = t.__config__, i = t.__filter__, s = t.__service__, a = t.subscriber;
3939
3996
  l && (r.__config__ = l), o && (r.__global__ = o), i && (r.__filter__ = i);
3940
- return Il(e, r, $i, Wi(e, Rt(a), s)), Ll(e, r, "__unsubscribing__"), Vi(e, t.event, r, e);
3997
+ return Pl(e, r, ki, Yi(e, At(a), s)), Ul(e, r, "__unsubscribing__"), Bi(e, t.event, r, e);
3941
3998
  }
3942
3999
  };
3943
- return e.GObj = I, e.SDATA = k, e.SDATAAUTHZ = (e, t, n, r, o, l) => new R(e, t, n, null, l, r, null, 0, null, o, null), e.SDATACM = (e, t, n, r, o, l) => new R(e, t, 0, null, l, n, null, 0, o, r, null), e.SDATACM2 = (e, t, n, r, o, l, i) => new R(e, t, n, null, i, r, null, 0, l, o, null), e.SDATADF = (e, t, n, r, o, l) => new R(e, t, n, null, l, null, r, o), e.SDATAPM = (e, t, n, r, o) => new R(e, t, n, r, o), e.SDATAPM0 = (e, t, n, r, o) => new R(e, t, n, null, o, null, null, 0, null, null, r), e.SDATA_END = D, e.SDataDesc = R, e.YUNETA_VERSION = i, Object.defineProperty(e, "__yuno__", {
4000
+ return e.GObj = I, e.SDATA = k, e.SDATAAUTHZ = (e, t, n, r, o, l) => new A(e, t, n, null, l, r, null, 0, null, o, null), e.SDATACM = (e, t, n, r, o, l) => new A(e, t, 0, null, l, n, null, 0, o, r, null), e.SDATACM2 = (e, t, n, r, o, l, i) => new A(e, t, n, null, i, r, null, 0, l, o, null), e.SDATADF = (e, t, n, r, o, l) => new A(e, t, n, null, l, null, r, o), e.SDATAPM = (e, t, n, r, o) => new A(e, t, n, r, o), e.SDATAPM0 = (e, t, n, r, o) => new A(e, t, n, null, o, null, null, 0, null, null, r), e.SDATA_END = D, e.SDataDesc = A, e.YUNETA_VERSION = i, Object.defineProperty(e, "__yuno__", {
3944
4001
  enumerable: !0,
3945
4002
  get: function() {
3946
4003
  return p;
@@ -3951,7 +4008,7 @@ var gobjJs = function(e) {
3951
4008
  return t;
3952
4009
  }, e.build_stats_response = l, e.clean_name = function(e) {
3953
4010
  return e.replace(/[?# ^:]/g, "_");
3954
- }, e.clear_timeout = mi, e.cmp_two_simple_json = nl, e.command_parameter_from_json = ke, e.command_parameter_from_text = function(e, t) {
4011
+ }, e.clear_timeout = Ei, e.cmp_two_simple_json = rl, e.command_parameter_from_json = ke, e.command_parameter_from_text = function(e, t) {
3955
4012
  const n = De(e, t, !1);
3956
4013
  return void 0 !== n.value || n.refused || (n.refused = je), n;
3957
4014
  }, e.command_parser = function(e, t, n, r) {}, e.createElement2 = function e(t, n) {
@@ -3963,46 +4020,46 @@ var gobjJs = function(e) {
3963
4020
  for (const n of Object.keys(o[e])) t += `${n}: ${o[e][n]};`;
3964
4021
  s.style.cssText = t;
3965
4022
  } 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] && (a = o[e], s.setAttribute("data-i18n", a)) : s.setAttribute(e, o[e]);
3966
- if (xl(l)) s.appendChild(Kl(l));
3967
- else if (Yo(l)) if (l = l.trim(), l.length > 0 && "<" === l[0] && !Bl) s.appendChild(Jl(l));
4023
+ if (Kl(l)) s.appendChild(Bl(l));
4024
+ else if (Jo(l)) if (l = l.trim(), l.length > 0 && "<" === l[0] && !Yl) s.appendChild(ql(l));
3968
4025
  else if (l.length > 0 && "<" === l[0] && function(e) {
3969
- if (Yl.size >= 100) return;
4026
+ if (Jl.size >= 100) return;
3970
4027
  const t = e.slice(0, 80);
3971
- Yl.has(t) || (Yl.add(t), sr(`createElement2: a string that starts with '<' is TEXT (set_strings_are_text): use html_markup() if it is markup: ${JSON.stringify(t)}`));
4028
+ Jl.has(t) || (Jl.add(t), sr(`createElement2: a string that starts with '<' is TEXT (set_strings_are_text): use html_markup() if it is markup: ${JSON.stringify(t)}`));
3972
4029
  }(l), n && a) s.textContent = n(a) || l;
3973
4030
  else s.textContent = l;
3974
- else if (Bo(l)) {
3975
- if (l.length > 0) if (Yo(l[0])) s.appendChild(e(l, n));
3976
- else for (let t of l) Array.isArray(t) ? t.length > 0 && s.appendChild(e(t, n)) : t instanceof Node ? s.appendChild(t) : xl(t) ? s.appendChild(Kl(t)) : Yo(t) ? s.appendChild(document.createTextNode(t)) : null != t && !1 !== t && ir("createElement2: child ignored, type " + typeof t);
4031
+ else if (Yo(l)) {
4032
+ if (l.length > 0) if (Jo(l[0])) s.appendChild(e(l, n));
4033
+ else for (let t of l) Array.isArray(t) ? t.length > 0 && s.appendChild(e(t, n)) : t instanceof Node ? s.appendChild(t) : Kl(t) ? s.appendChild(Bl(t)) : Jo(t) ? s.appendChild(document.createTextNode(t)) : null != t && !1 !== t && ir("createElement2: child ignored, type " + typeof t);
3977
4034
  } else l instanceof HTMLElement || l instanceof Text || l instanceof SVGElement ? s.appendChild(l) : null != l && (ir("content ignored"), _r(l));
3978
4035
  if (i && "object" == typeof i) for (const e of Object.keys(i)) s.addEventListener(e, i[e]);
3979
4036
  return s;
3980
- }, e.createOneHtml = Jl, e.create_json_record = function(e, t) {
3981
- let n = Ao(e);
4037
+ }, e.createOneHtml = ql, e.create_json_record = function(e, t) {
4038
+ let n = Ro(e);
3982
4039
  return ko(n, t), n;
3983
4040
  }, e.create_template_record = function(e, t) {
3984
4041
  let n = {};
3985
4042
  return t || (t = {}), Object.entries(e).forEach(([e, r]) => {
3986
4043
  let o;
3987
- Ko(r) && (o = r.default);
3988
- let l = bl(null, t, e, o);
4044
+ Bo(r) && (o = r.default);
4045
+ let l = pl(null, t, e, o);
3989
4046
  Lo(n, e, l);
3990
4047
  }), n;
3991
4048
  }, e.current_timestamp = Hl, e.data_type_t = E, e.db_list_persistent_attrs = function(e, t) {
3992
- let n = Sl(ri(e), null, !1), r = {};
3993
- return n && Ko(n) && (r = vl(e, n, t, !1)), r;
4049
+ let n = wl(si(e), null, !1), r = {};
4050
+ return n && Bo(n) && (r = El(e, n, t, !1)), r;
3994
4051
  }, e.db_load_persistent_attrs = function(e, t) {
3995
- let n = Xt(e, A.SDF_PERSIST), r = Sl(ri(e), null, !1);
3996
- if (r && Ko(r)) {
3997
- let o = vl(e, r, t, !1);
3998
- o = vl(e, o, n, !1), sn(e, o, A.SDF_PERSIST);
4052
+ let n = Xt(e, R.SDF_PERSIST), r = wl(si(e), null, !1);
4053
+ if (r && Bo(r)) {
4054
+ let o = El(e, r, t, !1);
4055
+ o = El(e, o, n, !1), sn(e, o, R.SDF_PERSIST);
3999
4056
  }
4000
4057
  }, e.db_remove_persistent_attrs = function(e, t) {
4001
- let n = El(e, Sl(ri(e), null, !1), t, !1);
4002
- 0 === Vo(n) ? Nl(ri(e)) : wl(ri(e), n);
4058
+ let n = Tl(e, wl(si(e), null, !1), t, !1);
4059
+ 0 === Vo(n) ? $l(si(e)) : Nl(si(e), n);
4003
4060
  }, e.db_save_persistent_attrs = function(e, t) {
4004
- let n = vl(e, Xt(e, A.SDF_PERSIST), t, !1), r = Sl(ri(e), null, !1);
4005
- return r && Ko(r) && Co(n, r), wl(ri(e), n);
4061
+ let n = El(e, Xt(e, R.SDF_PERSIST), t, !1), r = wl(si(e), null, !1);
4062
+ return r && Bo(r) && Co(n, r), Nl(si(e), n);
4006
4063
  }, e.debounce = function(e, t = 0, n = !1) {
4007
4064
  let r = null, o = null, l = null;
4008
4065
  const i = (...i) => {
@@ -4024,22 +4081,20 @@ var gobjJs = function(e) {
4024
4081
  const t = {};
4025
4082
  for (const n of e) Do(t, structuredClone(n));
4026
4083
  return t;
4027
- }, e.empty_json = function(e) {
4028
- return 0 === xo(e);
4029
- }, e.empty_string = Xo, e.escapeHtml = Vl, e.event_flag_t = F, e.flat2json = function(e) {
4084
+ }, e.empty_json = Ko, e.empty_string = Zo, e.escapeHtml = Wl, e.event_flag_t = F, e.flat2json = function(e) {
4030
4085
  if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat2json: a flat json is an object of id -> value");
4031
4086
  let t = null;
4032
4087
  for (const n of Object.keys(e)) {
4033
- const r = ti(n);
4088
+ const r = li(n);
4034
4089
  if (!r || 0 === r.length) throw new Error(`flat2json: malformed flat id: '${n}'`);
4035
- if (r.length > Xl) throw new Error(`flat2json: '${n}' deeper than 256`);
4090
+ if (r.length > ni) throw new Error(`flat2json: '${n}' deeper than 256`);
4036
4091
  const o = "number" == typeof r[0];
4037
4092
  if (null === t) t = o ? [] : {};
4038
4093
  else if (o !== Array.isArray(t)) throw new Error(`flat2json: '${n}' does not fit a ${Array.isArray(t) ? "array" : "object"} root`);
4039
4094
  let l = t;
4040
4095
  for (let t = 0; t < r.length; t++) {
4041
4096
  const o = r[t], i = "number" == typeof o, s = t === r.length - 1, a = !s && "number" == typeof r[t + 1];
4042
- if (i && o > Zl) throw new Error(`flat2json: array index ${o} over the limit (100000) in '${n}'`);
4097
+ if (i && o > ri) throw new Error(`flat2json: array index ${o} over the limit (100000) in '${n}'`);
4043
4098
  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"}`);
4044
4099
  if (s) {
4045
4100
  if (Array.isArray(l)) {
@@ -4047,7 +4102,7 @@ var gobjJs = function(e) {
4047
4102
  l[o] = e[n];
4048
4103
  } else {
4049
4104
  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`);
4050
- il(l, o, e[n]);
4105
+ sl(l, o, e[n]);
4051
4106
  }
4052
4107
  break;
4053
4108
  }
@@ -4055,7 +4110,7 @@ var gobjJs = function(e) {
4055
4110
  if (Array.isArray(l)) {
4056
4111
  for (; l.length <= o;) l.push(null);
4057
4112
  u = l[o], null == u && (u = a ? [] : {}, l[o] = u);
4058
- } else u = ll(l, o) ? void 0 : l[o], void 0 === u && (u = a ? [] : {}, il(l, o, u));
4113
+ } else u = il(l, o) ? void 0 : l[o], void 0 === u && (u = a ? [] : {}, sl(l, o, u));
4059
4114
  if (null === u || "object" != typeof u) throw new Error(`flat2json: '${n}' walks through a value: the same id is a leaf and a container at once`);
4060
4115
  if (a !== Array.isArray(u)) throw new Error(`flat2json: '${n}' needs a ${a ? "array" : "object"} where the tree already has a ${Array.isArray(u) ? "array" : "object"}`);
4061
4116
  l = u;
@@ -4066,11 +4121,11 @@ var gobjJs = function(e) {
4066
4121
  if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat_apply: a flat json is an object of id -> value");
4067
4122
  if (null === t || "object" != typeof t) throw new Error("flat_apply: a diff is the object flat_diff() answers");
4068
4123
  for (const n of Object.keys(t.removed || {})) delete e[n];
4069
- for (const n of Object.keys(t.added || {})) il(e, n, t.added[n]);
4124
+ for (const n of Object.keys(t.added || {})) sl(e, n, t.added[n]);
4070
4125
  for (const n of Object.keys(t.changed || {})) {
4071
4126
  const r = t.changed[n];
4072
4127
  if (!r || !Object.prototype.hasOwnProperty.call(r, "to")) throw new Error(`flat_apply: changed '${n}' without a 'to'`);
4073
- il(e, n, r.to);
4128
+ sl(e, n, r.to);
4074
4129
  }
4075
4130
  return e;
4076
4131
  }, e.flat_diff = function(e, t) {
@@ -4079,15 +4134,15 @@ var gobjJs = function(e) {
4079
4134
  removed: {},
4080
4135
  changed: {}
4081
4136
  };
4082
- for (const e of Object.keys(n)) Object.prototype.hasOwnProperty.call(r, e) ? ni(n[e], r[e]) || il(o.changed, e, {
4137
+ for (const e of Object.keys(n)) Object.prototype.hasOwnProperty.call(r, e) ? ii(n[e], r[e]) || sl(o.changed, e, {
4083
4138
  from: n[e],
4084
4139
  to: r[e]
4085
- }) : il(o.removed, e, n[e]);
4086
- for (const e of Object.keys(r)) Object.prototype.hasOwnProperty.call(n, e) || il(o.added, e, r[e]);
4140
+ }) : sl(o.removed, e, n[e]);
4141
+ for (const e of Object.keys(r)) Object.prototype.hasOwnProperty.call(n, e) || sl(o.added, e, r[e]);
4087
4142
  return o;
4088
4143
  }, e.flat_key_join = function(e) {
4089
- return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : ei(e)).join("`") : "";
4090
- }, e.flat_key_split = ti, e.gclass_add_ev_action = qe, e.gclass_add_event_type = Qe, e.gclass_add_state = He, e.gclass_check_fsm = Ze, e.gclass_create = Ke, e.gclass_event_type = Xe, e.gclass_find_by_name = et, e.gclass_flag_t = P, e.gclass_unregister = Be, e.getPositionRelativeToBody = function(e) {
4144
+ return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : oi(e)).join("`") : "";
4145
+ }, e.flat_key_split = li, e.gclass_add_ev_action = He, e.gclass_add_event_type = Qe, e.gclass_add_state = qe, e.gclass_check_fsm = Ze, e.gclass_create = Ke, e.gclass_event_type = Xe, e.gclass_find_by_name = et, e.gclass_flag_t = P, e.gclass_unregister = Be, e.getPositionRelativeToBody = function(e) {
4091
4146
  if (!e) return {
4092
4147
  top: 0,
4093
4148
  left: 0,
@@ -4106,14 +4161,18 @@ var gobjJs = function(e) {
4106
4161
  right: n + s + r,
4107
4162
  bottom: t + i + o
4108
4163
  };
4109
- }, e.get_function_name = Ql, e.get_now = function() {
4164
+ }, e.get_function_name = ti, e.get_now = function() {
4110
4165
  return Math.floor(Date.now() / 1e3);
4111
4166
  }, e.gobj_bottom_gobj = Ft, e.gobj_change_parent = function(e, t) {
4112
- return Ut(e) ? (ir("gobj NULL or DESTROYED"), null) : t instanceof I ? (e.parent && e.parent.gclass.gmt.mt_child_removed && e.parent.gclass.gmt.mt_child_removed(e.parent, e), e.parent && (lt(e.parent, e), e.parent = null), ot(t, e), t.gclass.gmt.mt_child_added && (ee(e) && ar(n("👦👦🔵 child_added(%s): %s", Ct(t), kt(e))), t.gclass.gmt.mt_child_added(t, e)), 0) : (ir(`${kt(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
4167
+ if (Ut(e)) return ir("gobj NULL or DESTROYED"), -1;
4168
+ if (!(t instanceof I)) return ir(`${kt(e)}: gobj_change_parent() BAD TYPE of parent`), -1;
4169
+ if (Ut(t)) return ir(`${kt(e)}: gobj_change_parent() parent NULL or DESTROYED`), -1;
4170
+ for (let n = t; n; n = n.parent) if (n === e) return ir(`${kt(e)}: gobj_change_parent() a gobj cannot be its own ancestor: ${kt(t)}`), -1;
4171
+ return e.parent && e.parent.gclass.gmt.mt_child_removed && e.parent.gclass.gmt.mt_child_removed(e.parent, e), e.parent && (lt(e.parent, e), e.parent = null), ot(t, e), t.gclass.gmt.mt_child_added && (ee(e) && ar(n("👦👦🔵 child_added(%s): %s", Ct(t), kt(e))), t.gclass.gmt.mt_child_added(t, e)), 0;
4113
4172
  }, e.gobj_change_state = cn, e.gobj_command = function(e, t, r, l) {
4114
4173
  if (Ut(e)) return ir("gobj NULL or DESTROYED"), -1;
4115
4174
  if (function(e) {
4116
- return q > 1 || !!e && !!(X(e) & B.TRACE_COMMANDS);
4175
+ return H > 1 || !!e && !!(X(e) & B.TRACE_COMMANDS);
4117
4176
  }(e) || oe(e, null) && !le(l, null)) {
4118
4177
  let o = To(t);
4119
4178
  K(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", Tt(e) ? "" : "!!", kt(e), null !== o ? o : t, kt(l))), re(e) && $o(r);
@@ -4129,26 +4188,26 @@ var gobjJs = function(e) {
4129
4188
  return ut(e, t, n, r, L.gobj_flag_volatil);
4130
4189
  }, e.gobj_create_yuno = function(e, t, n) {
4131
4190
  return ut(e, t, n, null, L.gobj_flag_yuno);
4132
- }, e.gobj_current_state = fn, e.gobj_default_service = tt, e.gobj_deliver_posted_events = yn, e.gobj_destroy = ct, e.gobj_find_child = Ht, e.gobj_find_event_type = Sn, e.gobj_find_gobj = function(e, t) {
4133
- if (Xo(t)) return null;
4191
+ }, e.gobj_current_state = fn, e.gobj_default_service = tt, e.gobj_deliver_posted_events = yn, e.gobj_destroy = ct, e.gobj_find_child = qt, e.gobj_find_event_type = Sn, e.gobj_find_gobj = function(e, t) {
4192
+ if (Zo(t)) return null;
4134
4193
  const n = t.toLowerCase();
4135
- return "__default_service__" === n ? m : "__yuno__" === n || "__root__" === n ? p : qt(p, t);
4194
+ return "__default_service__" === n ? m : "__yuno__" === n || "__root__" === n ? p : Ht(p, t);
4136
4195
  }, e.gobj_find_service = nt, e.gobj_find_subscribings = Pn, e.gobj_find_subscriptions = In, e.gobj_flag_t = L, e.gobj_full_name = Ct, e.gobj_gclass_name = Dt, e.gobj_get_gclass_trace_level = fe, e.gobj_get_gclass_trace_level2 = ge, e.gobj_get_gclass_trace_no_level = de, e.gobj_get_global_trace_level = _e, e.gobj_get_global_trace_no_level = ce, e.gobj_global_trace_level = function() {
4137
4196
  return J;
4138
4197
  }, e.gobj_global_trace_no_level = function() {
4139
- return H;
4198
+ return q;
4140
4199
  }, e.gobj_has_attr = zt, e.gobj_has_event = dn, e.gobj_has_output_event = bn, e.gobj_hsdata = Ve, e.gobj_is_destroying = Ut, e.gobj_is_playing = St, e.gobj_is_pure_child = Lt, e.gobj_is_running = Tt, e.gobj_is_service = Ot, e.gobj_is_volatil = Pt, e.gobj_list_persistent_attrs = function(e, t) {
4141
4200
  return _ ? _(e, t) : null;
4142
4201
  }, e.gobj_list_subscriptions = function(e) {
4143
4202
  let t = In(e, null, null, null);
4144
4203
  for (let n = 0; n < t.length; n++) {
4145
- let r = t[n], o = gl(e, r, "publisher", null, Un.KW_REQUIRED), l = gl(e, r, "subscriber", null, Un.KW_REQUIRED);
4146
- Uo(r, "s_event", fl(e, r, "event", "", Un.KW_REQUIRED)), Uo(r, "s_publisher", kt(o)), Uo(r, "s_subscriber", kt(l));
4204
+ let r = t[n], o = dl(e, r, "publisher", null, Un.KW_REQUIRED), l = dl(e, r, "subscriber", null, Un.KW_REQUIRED);
4205
+ Uo(r, "s_event", gl(e, r, "event", "", Un.KW_REQUIRED)), Uo(r, "s_publisher", kt(o)), Uo(r, "s_subscriber", kt(l));
4147
4206
  }
4148
4207
  let n = Pn(e, 0, null, 0);
4149
4208
  for (let t = 0; t < n.length; t++) {
4150
- let r = n[t], o = gl(e, r, "publisher", null, Un.KW_REQUIRED), l = gl(e, r, "subscriber", null, Un.KW_REQUIRED);
4151
- Uo(r, "s_event", fl(e, r, "event", "", Un.KW_REQUIRED)), Uo(r, "s_publisher", kt(o)), Uo(r, "s_subscriber", kt(l));
4209
+ let r = n[t], o = dl(e, r, "publisher", null, Un.KW_REQUIRED), l = dl(e, r, "subscriber", null, Un.KW_REQUIRED);
4210
+ Uo(r, "s_event", gl(e, r, "event", "", Un.KW_REQUIRED)), Uo(r, "s_publisher", kt(o)), Uo(r, "s_subscriber", kt(l));
4152
4211
  }
4153
4212
  return {
4154
4213
  subscriptions: t,
@@ -4178,7 +4237,7 @@ var gobjJs = function(e) {
4178
4237
  Jt(l, t) && n.push(l), e(n, l);
4179
4238
  }
4180
4239
  }(n, e), n;
4181
- }, e.gobj_match_gobj = Jt, e.gobj_name = Rt, e.gobj_parent = It, e.gobj_pause = Et, e.gobj_play = vt, e.gobj_post_event = hn, e.gobj_posted_events_size = function() {
4240
+ }, e.gobj_match_gobj = Jt, e.gobj_name = At, e.gobj_parent = It, e.gobj_pause = Et, e.gobj_play = vt, e.gobj_post_event = hn, e.gobj_posted_events_size = function() {
4182
4241
  return pn.length;
4183
4242
  }, e.gobj_publish_event = Ln, e.gobj_read_attr = Qt, e.gobj_read_attrs = Xt, e.gobj_read_bool_attr = Zt, e.gobj_read_integer_attr = en, e.gobj_read_pointer_attr = nn, e.gobj_read_str_attr = tn, e.gobj_remove_persistent_attrs = function(e, t) {
4184
4243
  return Ot(e) ? u ? u(e, t) : -1 : (ir(`${kt(e)}: Only gobj services can load/save writable-persistent`), -1);
@@ -4195,16 +4254,16 @@ var gobjJs = function(e) {
4195
4254
  let r = e.gclass.attrs_table;
4196
4255
  for (let o = 0; o < r.length; o++) {
4197
4256
  const l = r[o];
4198
- l.name && (n && l.flag & n || (-1 === t || l.flag & t) && (he(e, e.jn_attrs, l), Ko(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, l.name) && (e.priv[l.name] = e.jn_attrs[l.name]), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, l.name)));
4257
+ l.name && (n && l.flag & n || (-1 === t || l.flag & t) && (he(e, e.jn_attrs, l), Bo(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, l.name) && (e.priv[l.name] = e.jn_attrs[l.name]), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, l.name)));
4199
4258
  }
4200
4259
  return 0;
4201
- }(e, A.SDF_VOLATIL, 0);
4202
- }, e.gobj_save_persistent_attrs = it, e.gobj_search_path = qt, e.gobj_send_event = jn, e.gobj_services = function() {
4260
+ }(e, R.SDF_VOLATIL, 0);
4261
+ }, e.gobj_save_persistent_attrs = it, e.gobj_search_path = Ht, e.gobj_send_event = jn, e.gobj_services = function() {
4203
4262
  let e = [];
4204
4263
  for (const t of Object.keys(b)) Mo(e, t);
4205
4264
  return e;
4206
4265
  }, e.gobj_set_bottom_gobj = Mt, e.gobj_set_deep_trace = function(e) {
4207
- return q = Number(e) || 0, 0;
4266
+ return H = Number(e) || 0, 0;
4208
4267
  }, e.gobj_set_gclass_no_trace = pe, e.gobj_set_gclass_trace = be, e.gobj_set_global_no_trace = se, e.gobj_set_global_no_trace2 = ue, e.gobj_set_global_trace = ie, e.gobj_set_global_trace2 = ae, e.gobj_set_gobj_no_trace = function(e, t, n) {
4209
4268
  if (!e) return ir("gobj_set_gobj_no_trace: gobj NULL"), -1;
4210
4269
  const r = Q(t, "gobj_set_gobj_no_trace", e.gclass && e.gclass.s_user_trace_level || null);
@@ -4245,84 +4304,84 @@ var gobjJs = function(e) {
4245
4304
  ]);
4246
4305
  if (Object.keys(n).forEach((n) => {
4247
4306
  o.has(n) || ir(`${kt(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
4248
- }), Xo(t)) t = "";
4307
+ }), Zo(t)) t = "";
4249
4308
  else if (!(bn(e, t, F.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & P.gcflag_no_check_output_events)) return ir(`event NOT in output event list: ${kt(e)}, ev ${t}`), 0;
4250
- let l = Nn(n, t), i = An(e.dl_subscriptions, e, t, l.renamed_event, l.kw, r), s = 0, a = 0, u = 0;
4309
+ let l = Nn(n, t), i = Rn(e.dl_subscriptions, e, t, l.renamed_event, l.kw, r), s = 0, a = 0, u = 0;
4251
4310
  for (let t = 0; t < i.length; t++) {
4252
4311
  let n = i[t], r = Dn(e, n, !1, !1);
4253
4312
  0 === r ? s++ : r < 0 ? a++ : u++;
4254
4313
  }
4255
4314
  return a ? sr(`${kt(e)}: Hard subscription not removed, only gobj_unsubscribe_list() with force removes it (event: ${t}, hard: ${a})`) : s || u || (sr(`${kt(e)}: No subscription found`), $o(n, "No subscription found")), 0;
4256
- }, e.gobj_unsubscribe_list = Cn, e.gobj_walk_gobj_children = Vt, e.gobj_walk_gobj_children_tree = Wt, e.gobj_write_attr = rn, e.gobj_write_attrs = sn, e.gobj_write_bool_attr = an, e.gobj_write_integer_attr = un, e.gobj_write_str_attr = _n, e.gobj_yuno = wt, e.gobj_yuno_id = At, e.gobj_yuno_name = Nt, e.gobj_yuno_role = $t, e.html_markup = function(e) {
4257
- return "string" != typeof e ? (ir("html_markup: not a string, type " + typeof e), new Wl("")) : new Wl(e);
4258
- }, e.id_index_in_obj_list = Rl, e.index_in_list = ql, e.is_array = Bo, e.is_boolean = Ho, e.is_date = function(e) {
4315
+ }, e.gobj_unsubscribe_list = Cn, e.gobj_walk_gobj_children = Vt, e.gobj_walk_gobj_children_tree = Wt, e.gobj_write_attr = rn, e.gobj_write_attrs = sn, e.gobj_write_bool_attr = an, e.gobj_write_integer_attr = un, e.gobj_write_str_attr = _n, e.gobj_yuno = wt, e.gobj_yuno_id = Rt, e.gobj_yuno_name = Nt, e.gobj_yuno_role = $t, e.html_markup = function(e) {
4316
+ return "string" != typeof e ? (ir("html_markup: not a string, type " + typeof e), new xl("")) : new xl(e);
4317
+ }, e.id_index_in_obj_list = Dl, e.index_in_list = zl, e.is_array = Yo, e.is_boolean = Ho, e.is_date = function(e) {
4259
4318
  return e instanceof Date && !isNaN(e);
4260
- }, e.is_function = zo, e.is_gobj = Qo, e.is_html_markup = xl, e.is_metadata_key = function(e) {
4261
- if (!Yo(e)) return !1;
4319
+ }, e.is_function = Qo, e.is_gobj = Xo, e.is_html_markup = Kl, e.is_metadata_key = function(e) {
4320
+ if (!Jo(e)) return !1;
4262
4321
  let t = 0;
4263
4322
  for (; t < e.length && "_" === e[t] && !(t > 2); t++);
4264
4323
  return 2 === t;
4265
- }, e.is_null = qo, e.is_number = Jo, e.is_object = Ko, e.is_private_key = function(e) {
4266
- if (!Yo(e)) return !1;
4324
+ }, e.is_null = zo, e.is_number = qo, e.is_object = Bo, e.is_private_key = function(e) {
4325
+ if (!Jo(e)) return !1;
4267
4326
  let t = 0;
4268
4327
  for (; t < e.length && "_" === e[t] && !(t > 2); t++);
4269
4328
  return 1 === t;
4270
4329
  }, e.is_pure_number = function(e) {
4271
- if (Jo(e)) return !0;
4272
- if (!Yo(e)) return !1;
4330
+ if (qo(e)) return !0;
4331
+ if (!Jo(e)) return !1;
4273
4332
  const t = Number(e);
4274
4333
  return !isNaN(t) && "" !== e.trim() && !isNaN(t);
4275
4334
  }, e.is_secret_name = function(e) {
4276
4335
  return "string" == typeof e && vr(e, 0, e.length, !0, !0);
4277
- }, e.is_string = Yo, e.jdb_delete = function(e, t, n, r) {
4278
- let o = bl(null, bl(null, e, "topics", null, 0), t, null, 0);
4336
+ }, e.is_string = Jo, e.jdb_delete = function(e, t, n, r) {
4337
+ let o = pl(null, pl(null, e, "topics", null, 0), t, null, 0);
4279
4338
  if (!o) return ir("jdb_delete: topic not found: " + t), null;
4280
- if (!Ko(r) || Xo(r.id)) return ir(`jdb_delete: record without id: ${Zn(r)}`), null;
4281
- if (!Yo(n)) return ir(`jdb_delete: path must be a string: ${String(n)}`), null;
4339
+ if (!Bo(r) || Zo(r.id)) return ir(`jdb_delete: record without id: ${Zn(r)}`), null;
4340
+ if (!Jo(n)) return ir(`jdb_delete: path must be a string: ${String(n)}`), null;
4282
4341
  if ("" !== n && n.split("`").includes("")) return ir(`jdb_delete: empty segment in path: '${n}'`), null;
4283
4342
  let l, i = n.split("`"), s = o;
4284
- for (; (l = i.shift()) && !Xo(l) && s;) Ko(s) && (s = bl(null, s, e.hook, null, 0)), s = Ml(s, null, l, !1);
4343
+ for (; (l = i.shift()) && !Zo(l) && s;) Bo(s) && (s = pl(null, s, e.hook, null, 0)), s = Gl(s, null, l, !1);
4285
4344
  if (!s || 0 !== i.length) return ir(`jdb_delete: path not found in topic '${t}': '${n}'`), null;
4286
- let a = Bo(s) ? s : bl(null, s, e.hook, null, 0), u = Rl(a, r.id);
4345
+ let a = Yo(s) ? s : pl(null, s, e.hook, null, 0), u = Dl(a, r.id);
4287
4346
  return u < 0 ? (ir(`jdb_delete: record not found in topic '${t}': '${n}' '${r.id}'`), null) : (a.splice(u, 1), o);
4288
4347
  }, e.jdb_get = function(e, t, n, r) {
4289
- let o = bl(null, bl(null, e, "topics", null, 0), t, null, 0);
4290
- return o ? (void 0 === r && (r = !0), Ml(o, e.hook, n, r)) : (ir("jdb_get: topic not found: " + t), null);
4348
+ let o = pl(null, pl(null, e, "topics", null, 0), t, null, 0);
4349
+ return o ? (void 0 === r && (r = !0), Gl(o, e.hook, n, r)) : (ir("jdb_get: topic not found: " + t), null);
4291
4350
  }, e.jdb_get_by_idx = function(e, t, n) {
4292
- let r = bl(null, bl(null, e, "topics", null, 0), t, null, 0);
4351
+ let r = pl(null, pl(null, e, "topics", null, 0), t, null, 0);
4293
4352
  return r ? n < r.length ? r[n] : {} : (ir("jdb_get_by_idx: topic not found: " + t), null);
4294
4353
  }, e.jdb_get_topic = function(e, t) {
4295
- let n = bl(null, e, "topics", null, 0);
4354
+ let n = pl(null, e, "topics", null, 0);
4296
4355
  if (!n) return ir("jdb topics section not found"), ur(e), null;
4297
- return bl(null, n, t, null, 0) || (ir("jdb topic not found: " + t), ur(n), null);
4356
+ return pl(null, n, t, null, 0) || (ir("jdb topic not found: " + t), ur(n), null);
4298
4357
  }, e.jdb_init = function(e, t, n) {
4299
- n && (e = Ao(e));
4300
- let r = bl(null, e, "type", [], Un.KW_CREATE);
4301
- fl(null, e, "hook", "data", Un.KW_CREATE);
4302
- let o = bl(null, e, "schema", {}, Un.KW_CREATE), l = bl(null, e, "topics", {}, Un.KW_CREATE);
4303
- return Fl(o, function(e, t, n, o) {
4304
- "__" === t.substring(0, 2) || Ko(n) || bl(null, l, o, Ao(r), Un.KW_CREATE);
4358
+ n && (e = Ro(e));
4359
+ let r = pl(null, e, "type", [], Un.KW_CREATE);
4360
+ gl(null, e, "hook", "data", Un.KW_CREATE);
4361
+ let o = pl(null, e, "schema", {}, Un.KW_CREATE), l = pl(null, e, "topics", {}, Un.KW_CREATE);
4362
+ return Ml(o, function(e, t, n, o) {
4363
+ "__" === t.substring(0, 2) || Bo(n) || pl(null, l, o, Ro(r), Un.KW_CREATE);
4305
4364
  }, t), e;
4306
4365
  }, e.jdb_update = function(e, t, n, r) {
4307
- let o = bl(null, bl(null, e, "topics", null, 0), t, null, 0);
4366
+ let o = pl(null, pl(null, e, "topics", null, 0), t, null, 0);
4308
4367
  if (!o) return ir("jdb_update: topic not found: " + t), null;
4309
- if (!Ko(r) || Xo(r.id)) return ir(`jdb_update: record without id: ${Zn(r)}`), null;
4310
- if (!Yo(n)) return ir(`jdb_update: path must be a string: ${String(n)}`), null;
4368
+ if (!Bo(r) || Zo(r.id)) return ir(`jdb_update: record without id: ${Zn(r)}`), null;
4369
+ if (!Jo(n)) return ir(`jdb_update: path must be a string: ${String(n)}`), null;
4311
4370
  if ("" !== n && n.split("`").includes("")) return ir(`jdb_update: empty segment in path: '${n}'`), null;
4312
4371
  let l, i, s = n.split("`"), a = o;
4313
- for (; (l = s.shift()) && !Xo(l) && a;) Ko(a) && (a = bl(null, a, e.hook, null, 0)), a = Ml(a, null, l, !1);
4372
+ for (; (l = s.shift()) && !Zo(l) && a;) Bo(a) && (a = pl(null, a, e.hook, null, 0)), a = Gl(a, null, l, !1);
4314
4373
  if (!a || 0 !== s.length) return ir(`jdb_update: path not found in topic '${t}': '${n}'`), null;
4315
- if (Bo(a)) i = a;
4374
+ if (Yo(a)) i = a;
4316
4375
  else {
4317
4376
  if (a.id === r.id) return Do(a, r), o;
4318
- if (i = bl(null, a, e.hook, null, 0), null == i) i = [], Lo(a, e.hook, i);
4319
- else if (!Bo(i)) return ir(`jdb_update: the hook '${e.hook}' of '${n}' is not a list in topic '${t}'`), null;
4377
+ if (i = pl(null, a, e.hook, null, 0), null == i) i = [], Lo(a, e.hook, i);
4378
+ else if (!Yo(i)) return ir(`jdb_update: the hook '${e.hook}' of '${n}' is not a list in topic '${t}'`), null;
4320
4379
  }
4321
- let u = Ml(i, e.hook, r.id, !1);
4380
+ let u = Gl(i, e.hook, r.id, !1);
4322
4381
  return u ? Do(u, r) : i.push(r), o;
4323
4382
  }, e.json2flat = function(e) {
4324
4383
  const t = {}, n = (e, r, o) => {
4325
- if (o > Xl) throw new Error("json2flat: deeper than 256");
4384
+ if (o > ni) throw new Error("json2flat: deeper than 256");
4326
4385
  if (null === e || "object" != typeof e || Array.isArray(e)) {
4327
4386
  if (Array.isArray(e) && e.length > 0) return void e.forEach((e, t) => {
4328
4387
  const l = `[${t}]`;
@@ -4332,20 +4391,20 @@ var gobjJs = function(e) {
4332
4391
  const t = Object.keys(e);
4333
4392
  if (t.length > 0) {
4334
4393
  for (const l of t) {
4335
- const t = ei(l);
4394
+ const t = oi(l);
4336
4395
  n(e[l], 0 === o ? t : r + "`" + t, o + 1);
4337
4396
  }
4338
4397
  return;
4339
4398
  }
4340
4399
  }
4341
- 0 !== o && il(t, r, e);
4400
+ 0 !== o && sl(t, r, e);
4342
4401
  };
4343
4402
  return null == e || n(e, "", 0), t;
4344
4403
  }, e.json_array_append = Fo, e.json_array_append_new = Mo, e.json_array_extend = function(e, t) {
4345
4404
  return t ? (Array.prototype.push.apply(e, t), e) : e;
4346
- }, e.json_array_remove = Go, e.json_array_size = Wo, e.json_deep_copy = Ao, e.json_is_identical = Ro, e.json_mask_secrets = No, e.json_object_del = Po, e.json_object_get = Io, e.json_object_set = Lo, e.json_object_set_new = Uo, e.json_object_size = Vo, e.json_object_update = Do, e.json_object_update_existing = ko, e.json_object_update_missing = Co, e.json_size = xo, e.json_text_of = Fe, e.jwt2json = function(e, t) {
4405
+ }, e.json_array_remove = Go, e.json_array_size = Wo, e.json_deep_copy = Ro, e.json_is_identical = Ao, e.json_mask_secrets = No, e.json_object_del = Po, e.json_object_get = Io, e.json_object_set = Lo, e.json_object_set_new = Uo, e.json_object_size = Vo, e.json_object_update = Do, e.json_object_update_existing = ko, e.json_object_update_missing = Co, e.json_size = xo, e.json_text_of = Fe, e.jwt2json = function(e, t) {
4347
4406
  try {
4348
- let n = Gl(e);
4407
+ let n = Vl(e);
4349
4408
  switch (t) {
4350
4409
  case "header": return JSON.parse(n.header);
4351
4410
  case "signature": return JSON.parse(n.signature);
@@ -4354,98 +4413,98 @@ var gobjJs = function(e) {
4354
4413
  } catch (e) {
4355
4414
  return null;
4356
4415
  }
4357
- }, e.jwtDecode = Gl, e.kw_clone_by_keys = vl, e.kw_clone_by_not_keys = El, e.kw_collect = function(e, t, n, r) {
4358
- if (e && !Qo(e) && ir("GObj bad instanceof"), !t) return null;
4359
- r || (r = yl);
4416
+ }, e.jwtDecode = Vl, e.kw_clone_by_keys = El, e.kw_clone_by_not_keys = Tl, e.kw_collect = function(e, t, n, r) {
4417
+ if (e && !Xo(e) && ir("GObj bad instanceof"), !t) return null;
4418
+ r || (r = vl);
4360
4419
  let o = [];
4361
- if (Bo(t)) for (let e = 0; e < t.length; e++) {
4420
+ if (Yo(t)) for (let e = 0; e < t.length; e++) {
4362
4421
  let l = t[e];
4363
4422
  r(l, n) && o.push(l);
4364
4423
  }
4365
4424
  else {
4366
- if (!Ko(t)) return ir("kw_select() BAD kw parameter"), null;
4425
+ if (!Bo(t)) return ir("kw_select() BAD kw parameter"), null;
4367
4426
  r(t, n) && o.push(t);
4368
4427
  }
4369
4428
  return o;
4370
- }, e.kw_delete = ul, e.kw_find_json_in_list = function(e, t, n, r) {
4371
- if (!n || !Bo(t)) return r && ir("item NULL or kw_list is not a list"), -1;
4372
- for (let e = 0; e < t.length; e++) if (Ro(n, t[e])) return e;
4429
+ }, e.kw_delete = _l, e.kw_find_json_in_list = function(e, t, n, r) {
4430
+ if (!n || !Yo(t)) return r && ir("item NULL or kw_list is not a list"), -1;
4431
+ for (let e = 0; e < t.length; e++) if (Ao(n, t[e])) return e;
4373
4432
  return r && ir("item not found in this list"), -1;
4374
- }, e.kw_find_path = al, e.kw_flag_t = Un, e.kw_get_bool = _l, e.kw_get_dict = dl, e.kw_get_dict_value = bl, e.kw_get_int = cl, e.kw_get_list = function(e, t, n, r, o) {
4375
- e && !Qo(e) && ir("GObj bad instanceof");
4376
- let l = al(e, t, n, !1);
4433
+ }, e.kw_find_path = ul, e.kw_flag_t = Un, e.kw_get_bool = cl, e.kw_get_dict = bl, e.kw_get_dict_value = pl, e.kw_get_int = fl, e.kw_get_list = function(e, t, n, r, o) {
4434
+ e && !Xo(e) && ir("GObj bad instanceof");
4435
+ let l = ul(e, t, n, !1);
4377
4436
  const i = o && o & Un.KW_REQUIRED, s = o && o & Un.KW_CREATE, a = o && o & Un.KW_EXTRACT;
4378
- return void 0 === l ? s && Bo(r) && t ? (pl(e, t, n, r), r) : (i && (ir(`path not found: '${n}'`), $o(t)), r) : Bo(l) ? (a && ul(e, t, n), l) : s && null === l && Bo(r) ? (pl(e, t, n, r), r) : s && null === l ? (i && (ir(`path not found: '${n}'`), $o(t)), r) : ((i || s) && (ir(`${e ? kt(e) + ": " : ""}path MUST BE a json list: '${n}'` + (s ? ", cannot create" : "")), $o(t)), r);
4379
- }, e.kw_get_local_storage_value = Sl, e.kw_get_pointer = gl, e.kw_get_real = function(e, t, n, r, o) {
4380
- e && !Qo(e) && ir("GObj bad instanceof");
4381
- let l = al(e, t, n, !1);
4437
+ return void 0 === l ? s && Yo(r) && t ? (ml(e, t, n, r), r) : (i && (ir(`path not found: '${n}'`), $o(t)), r) : Yo(l) ? (a && _l(e, t, n), l) : s && null === l && Yo(r) ? (ml(e, t, n, r), r) : s && null === l ? (i && (ir(`path not found: '${n}'`), $o(t)), r) : ((i || s) && (ir(`${e ? kt(e) + ": " : ""}path MUST BE a json list: '${n}'` + (s ? ", cannot create" : "")), $o(t)), r);
4438
+ }, e.kw_get_local_storage_value = wl, e.kw_get_pointer = dl, e.kw_get_real = function(e, t, n, r, o) {
4439
+ e && !Xo(e) && ir("GObj bad instanceof");
4440
+ let l = ul(e, t, n, !1);
4382
4441
  const i = o && o & Un.KW_REQUIRED, s = o && o & Un.KW_CREATE, a = o && o & Un.KW_EXTRACT, u = o && o & Un.KW_WILD_NUMBER;
4383
4442
  if (void 0 === l) {
4384
4443
  if (s && t) {
4385
4444
  let o = Number(r);
4386
- return pl(e, t, n, o), o;
4445
+ return ml(e, t, n, o), o;
4387
4446
  }
4388
4447
  return i && (ir(`path not found: '${n}'`), $o(t)), Number(r);
4389
4448
  }
4390
4449
  let _;
4391
- if (Jo(l)) _ = l;
4450
+ if (qo(l)) _ = l;
4392
4451
  else {
4393
4452
  if (!u) return ir(`${e ? kt(e) + ": " : ""}path MUST BE a json real: '${n}'`), $o(t), Number(r);
4394
4453
  if (Ho(l)) _ = l ? 1 : 0;
4395
- else if (Yo(l)) _ = parseFloat(l), Number.isNaN(_) && (_ = 0);
4454
+ else if (Jo(l)) _ = parseFloat(l), Number.isNaN(_) && (_ = 0);
4396
4455
  else {
4397
4456
  if (null !== l) return ir(`${e ? kt(e) + ": " : ""}path MUST BE a simple json element: '${n}'`), $o(t), 0;
4398
4457
  _ = 0;
4399
4458
  }
4400
4459
  }
4401
- return a && ul(e, t, n), _;
4402
- }, e.kw_get_str = fl, e.kw_has_key = ol, e.kw_match_simple = yl, e.kw_pop = rl, e.kw_remove_local_storage_value = Nl, e.kw_select = function(e, t, n, r) {
4403
- if (e && !Qo(e) && ir("GObj bad instanceof"), !t) return null;
4404
- r || (r = yl);
4460
+ return a && _l(e, t, n), _;
4461
+ }, e.kw_get_str = gl, e.kw_has_key = ll, e.kw_match_simple = vl, e.kw_pop = ol, e.kw_remove_local_storage_value = $l, e.kw_select = function(e, t, n, r) {
4462
+ if (e && !Xo(e) && ir("GObj bad instanceof"), !t) return null;
4463
+ r || (r = vl);
4405
4464
  let o = [];
4406
- if (Bo(t)) for (let e = 0; e < t.length; e++) {
4465
+ if (Yo(t)) for (let e = 0; e < t.length; e++) {
4407
4466
  let l = t[e];
4408
- r(l, n) && o.push(Ao(l));
4467
+ r(l, n) && o.push(Ro(l));
4409
4468
  }
4410
4469
  else {
4411
- if (!Ko(t)) return ir("kw_select() BAD kw parameter"), null;
4412
- r(t, n) && o.push(Ao(t));
4470
+ if (!Bo(t)) return ir("kw_select() BAD kw parameter"), null;
4471
+ r(t, n) && o.push(Ro(t));
4413
4472
  }
4414
4473
  return o;
4415
- }, e.kw_set_dict_value = pl, e.kw_set_local_storage_value = wl, e.kw_set_subdict_value = ml, e.kwid_collect = Al, e.kwid_find_one_record = function(e, t, n, r, o) {
4416
- e && !Qo(e) && ir("GObj bad instanceof");
4474
+ }, e.kw_set_dict_value = ml, e.kw_set_local_storage_value = Nl, e.kw_set_subdict_value = hl, e.kwid_collect = Al, e.kwid_find_one_record = function(e, t, n, r, o) {
4475
+ e && !Xo(e) && ir("GObj bad instanceof");
4417
4476
  let l = Al(e, t, n, r, o);
4418
4477
  return l && 0 !== l.length ? l[0] : null;
4419
4478
  }, e.kwid_get_ids = function(e, t) {
4420
- if (e && !Qo(e) && ir("GObj bad instanceof"), !t) return [];
4479
+ if (e && !Xo(e) && ir("GObj bad instanceof"), !t) return [];
4421
4480
  let n = [];
4422
- if (Yo(t)) n.push(t);
4423
- else if (Ko(t)) for (let e in t) Object.prototype.hasOwnProperty.call(t, e) && n.push(e);
4424
- else Bo(t) && t.forEach(function(t) {
4425
- if (Yo(t)) Xo(t) || n.push(t);
4426
- else if (Ko(t)) {
4427
- let r = fl(e, t, "id", 0, 0);
4481
+ if (Jo(t)) n.push(t);
4482
+ else if (Bo(t)) for (let e in t) Object.prototype.hasOwnProperty.call(t, e) && n.push(e);
4483
+ else Yo(t) && t.forEach(function(t) {
4484
+ if (Jo(t)) Zo(t) || n.push(t);
4485
+ else if (Bo(t)) {
4486
+ let r = gl(e, t, "id", 0, 0);
4428
4487
  r && n.push(r);
4429
4488
  }
4430
4489
  });
4431
4490
  return n;
4432
- }, e.kwid_match_id = $l, e.kwid_new_dict = function(e, t, n) {
4433
- e && !Qo(e) && ir("GObj bad instanceof");
4491
+ }, e.kwid_match_id = Rl, e.kwid_new_dict = function(e, t, n) {
4492
+ e && !Xo(e) && ir("GObj bad instanceof");
4434
4493
  let r = {};
4435
- if (Xo(n) || (t = al(e, t, n)), Ko(t)) r = t;
4436
- else if (Bo(t)) for (let n = 0; n < t.length; n++) {
4437
- let o = t[n], l = fl(e, o, "id", "", Un.KW_REQUIRED);
4438
- Xo(l) || il(r, l, o);
4494
+ if (Zo(n) || (t = ul(e, t, n)), Bo(t)) r = t;
4495
+ else if (Yo(t)) for (let n = 0; n < t.length; n++) {
4496
+ let o = t[n], l = gl(e, o, "id", "", Un.KW_REQUIRED);
4497
+ Zo(l) || sl(r, l, o);
4439
4498
  }
4440
4499
  else ir(`${kt(e)} kwid_new_dict: data type unknown`);
4441
4500
  return r;
4442
4501
  }, e.kwid_new_list = function(e, t, n) {
4443
- if (e && !Qo(e) && ir("GObj bad instanceof"), Xo(n) || (t = al(e, t, n)), Bo(t)) return t;
4444
- if (Ko(t)) {
4502
+ if (e && !Xo(e) && ir("GObj bad instanceof"), Zo(n) || (t = ul(e, t, n)), Yo(t)) return t;
4503
+ if (Bo(t)) {
4445
4504
  let n = [];
4446
4505
  for (let r of Object.keys(t)) {
4447
4506
  let o = t[r];
4448
- Ko(o) ? (o.id = r, n.push(o)) : ir(`${kt(e)} kwid_new_list: not a record: '${r}'`);
4507
+ Bo(o) ? (o.id = r, n.push(o)) : ir(`${kt(e)} kwid_new_list: not a record: '${r}'`);
4449
4508
  }
4450
4509
  return n;
4451
4510
  }
@@ -4453,16 +4512,16 @@ var gobjJs = function(e) {
4453
4512
  }, e.list2options = function(e, t, n) {
4454
4513
  t = t || "id", n = n || "value";
4455
4514
  let r = [];
4456
- if (Bo(e)) for (let o = 0; o < e.length; o++) {
4515
+ if (Yo(e)) for (let o = 0; o < e.length; o++) {
4457
4516
  let l = e[o];
4458
- if (Yo(l)) r.push({
4517
+ if (Jo(l)) r.push({
4459
4518
  id: e[o],
4460
4519
  value: e[o]
4461
4520
  });
4462
- else if (Ko(l)) {
4521
+ else if (Bo(l)) {
4463
4522
  let e = {};
4464
- if (ol(l, t)) {
4465
- if (!ol(l, n)) {
4523
+ if (ll(l, t)) {
4524
+ if (!ll(l, n)) {
4466
4525
  if (!(xo(l) > 0)) {
4467
4526
  ir("list2options(): object without field value: " + n);
4468
4527
  continue;
@@ -4480,7 +4539,7 @@ var gobjJs = function(e) {
4480
4539
  r.push(e);
4481
4540
  } else ir("list2options(): case1 not implemented");
4482
4541
  }
4483
- else if (Ko(e)) for (let t of Object.keys(e)) r.push({
4542
+ else if (Bo(e)) for (let t of Object.keys(e)) r.push({
4484
4543
  id: t,
4485
4544
  value: t
4486
4545
  });
@@ -4499,11 +4558,11 @@ var gobjJs = function(e) {
4499
4558
  }, r.send();
4500
4559
  }, e.log_debug = ar, e.log_error = ir, e.log_info = function(e, ...t) {
4501
4560
  let n = nr(e, ...t), r = Hl();
4502
- Vn && Hn("info", n) && rr(Vn, "%c" + r + " INFO: " + String(n), "color:cyan"), zn("info", n, r);
4503
- }, e.log_warning = sr, e.mask_secrets_inline = To, e.msg_iev_get_msg_type = Ul, e.msg_iev_get_stack = Pl, e.msg_iev_push_stack = Il, e.msg_iev_read_key = kl, e.msg_iev_set_msg_type = Ll, e.msg_iev_write_key = Cl, e.node_uuid = zl, e.parseBoolean = Zo, e.parseSVG = function(e) {
4561
+ Vn && qn("info", n) && rr(Vn, "%c" + r + " INFO: " + String(n), "color:cyan"), zn("info", n, r);
4562
+ }, e.log_warning = sr, e.mask_secrets_inline = To, e.msg_iev_get_msg_type = Fl, e.msg_iev_get_stack = Ll, e.msg_iev_push_stack = Pl, e.msg_iev_read_key = Cl, e.msg_iev_set_msg_type = Ul, e.msg_iev_write_key = Il, e.node_uuid = ei, e.parseBoolean = el, e.parseSVG = function(e) {
4504
4563
  return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
4505
4564
  }, e.refresh_language = function(e, t) {
4506
- if (!zo(t)) return void ir("You must supply a translation function");
4565
+ if (!Qo(t)) return void ir("You must supply a translation function");
4507
4566
  e || (e = document);
4508
4567
  const n = (t) => {
4509
4568
  let n = [];
@@ -4527,22 +4586,22 @@ var gobjJs = function(e) {
4527
4586
  });
4528
4587
  }, e.register_c_ievent_cli = function() {
4529
4588
  return function(e) {
4530
- if (Ci) return ir(`GClass ALREADY created: ${e}`), -1;
4589
+ if (Ui) return ir(`GClass ALREADY created: ${e}`), -1;
4531
4590
  const t = [
4532
4591
  ["ST_DISCONNECTED", [
4533
4592
  [
4534
4593
  "EV_ON_OPEN",
4535
- Yi,
4594
+ zi,
4536
4595
  "ST_WAIT_IDENTITY_CARD_ACK"
4537
4596
  ],
4538
4597
  [
4539
4598
  "EV_ON_CLOSE",
4540
- Ji,
4599
+ Qi,
4541
4600
  null
4542
4601
  ],
4543
4602
  [
4544
4603
  "EV_TIMEOUT",
4545
- Bi,
4604
+ Hi,
4546
4605
  null
4547
4606
  ],
4548
4607
  [
@@ -4554,22 +4613,22 @@ var gobjJs = function(e) {
4554
4613
  ["ST_WAIT_IDENTITY_CARD_ACK", [
4555
4614
  [
4556
4615
  "EV_ON_MESSAGE",
4557
- Zi,
4616
+ rs,
4558
4617
  null
4559
4618
  ],
4560
4619
  [
4561
4620
  "EV_IDENTITY_CARD_ACK",
4562
- Xi,
4621
+ ns,
4563
4622
  null
4564
4623
  ],
4565
4624
  [
4566
4625
  "EV_ON_CLOSE",
4567
- Ji,
4626
+ Qi,
4568
4627
  "ST_DISCONNECTED"
4569
4628
  ],
4570
4629
  [
4571
4630
  "EV_TIMEOUT",
4572
- Qi,
4631
+ ts,
4573
4632
  null
4574
4633
  ],
4575
4634
  [
@@ -4581,22 +4640,22 @@ var gobjJs = function(e) {
4581
4640
  ["ST_SESSION", [
4582
4641
  [
4583
4642
  "EV_ON_MESSAGE",
4584
- Zi,
4643
+ rs,
4585
4644
  null
4586
4645
  ],
4587
4646
  [
4588
4647
  "EV_MT_STATS",
4589
- ts,
4648
+ ls,
4590
4649
  null
4591
4650
  ],
4592
4651
  [
4593
4652
  "EV_MT_COMMAND",
4594
- ns,
4653
+ is,
4595
4654
  null
4596
4655
  ],
4597
4656
  [
4598
4657
  "EV_ON_CLOSE",
4599
- Ji,
4658
+ Qi,
4600
4659
  "ST_DISCONNECTED"
4601
4660
  ],
4602
4661
  [
@@ -4607,7 +4666,7 @@ var gobjJs = function(e) {
4607
4666
  ]],
4608
4667
  [null, null]
4609
4668
  ];
4610
- return (Ci = Ke(e, [
4669
+ return (Ui = Ke(e, [
4611
4670
  ["EV_ON_MESSAGE", F.EVF_OUTPUT_EVENT],
4612
4671
  ["EV_IDENTITY_CARD_ACK", F.EVF_PUBLIC_EVENT],
4613
4672
  ["EV_ON_ID_NAK", F.EVF_OUTPUT_EVENT],
@@ -4618,37 +4677,37 @@ var gobjJs = function(e) {
4618
4677
  ["EV_ON_OPEN_ERROR", F.EVF_OUTPUT_EVENT | F.EVF_NO_WARN_SUBS],
4619
4678
  ["EV_TIMEOUT", 0],
4620
4679
  [null, 0]
4621
- ], t, rs, 0, Ai, ki, 0, 0, Ri, P.gcflag_no_check_output_events)) ? 0 : -1;
4680
+ ], t, ss, 0, Ci, Li, 0, 0, Ii, P.gcflag_no_check_output_events)) ? 0 : -1;
4622
4681
  }("C_IEVENT_CLI");
4623
4682
  }, e.register_c_timer = function() {
4624
4683
  return function(e) {
4625
- if (ci) return ir(`GClass ALREADY created: ${e}`), -1;
4684
+ if (bi) return ir(`GClass ALREADY created: ${e}`), -1;
4626
4685
  const t = [["ST_IDLE", [[
4627
4686
  "EV_TIMEOUT",
4628
- fi,
4687
+ pi,
4629
4688
  null
4630
4689
  ]]]];
4631
- return (ci = Ke(e, [
4690
+ return (bi = Ke(e, [
4632
4691
  ["EV_TIMEOUT", F.EVF_OUTPUT_EVENT],
4633
4692
  ["EV_TIMEOUT_PERIODIC", F.EVF_OUTPUT_EVENT],
4634
4693
  [0, 0]
4635
- ], t, gi, 0, ui, _i, 0, 0, 0, P.gcflag_manual_start)) ? 0 : -1;
4694
+ ], t, mi, 0, gi, di, 0, 0, 0, P.gcflag_manual_start)) ? 0 : -1;
4636
4695
  }("C_TIMER");
4637
4696
  }, e.register_c_yuno = function() {
4638
4697
  return function(e) {
4639
- if (vi) return ir(`GClass ALREADY created: ${e}`), -1;
4698
+ if (Oi) return ir(`GClass ALREADY created: ${e}`), -1;
4640
4699
  const t = [["ST_IDLE", [[
4641
4700
  "EV_TIMEOUT_PERIODIC",
4642
- wi,
4701
+ Ai,
4643
4702
  null
4644
4703
  ]]]];
4645
- return (vi = Ke(e, [["EV_TIMEOUT_PERIODIC", F.EVF_OUTPUT_EVENT | F.EVF_NO_WARN_SUBS], [0, 0]], t, Ni, 0, hi, yi, 0, 0, 0, 0)) ? 0 : -1;
4704
+ return (Oi = Ke(e, [["EV_TIMEOUT_PERIODIC", F.EVF_OUTPUT_EVENT | F.EVF_NO_WARN_SUBS], [0, 0]], t, Di, 0, Ti, ji, 0, 0, 0, 0)) ? 0 : -1;
4646
4705
  }("C_YUNO");
4647
4706
  }, e.safeSrc = function(e) {
4648
4707
  if (!e) return "";
4649
4708
  const t = String(e).trim();
4650
- return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : Vl(t);
4651
- }, e.sdata_flag_t = A, e.send_http_json_post = function(e, t, n) {
4709
+ return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : Wl(t);
4710
+ }, e.sdata_flag_t = R, e.send_http_json_post = function(e, t, n) {
4652
4711
  let r = new XMLHttpRequest();
4653
4712
  r.open("POST", e), r.setRequestHeader("Accept", "application/json"), r.setRequestHeader("Content-Type", "application/json"), r.onreadystatechange = function() {
4654
4713
  4 === r.readyState && n(r.status, r.responseText);
@@ -4671,16 +4730,16 @@ var gobjJs = function(e) {
4671
4730
  }
4672
4731
  } else xn = e;
4673
4732
  }, e.set_remote_log_functions = Xn, e.set_strings_are_text = function(e) {
4674
- Bl = !!e;
4675
- }, e.set_timeout = bi, e.set_timeout_periodic = pi, e.sprintf = n, e.stats_parser = function(e, t, n, r) {}, e.str_in_list = Dl, e.strcasecmp = tl, e.strcmp = el, e.strings_are_text = function() {
4676
- return Bl;
4733
+ Yl = !!e;
4734
+ }, e.set_timeout = yi, e.set_timeout_periodic = vi, e.sprintf = n, e.stats_parser = function(e, t, n, r) {}, e.str_in_list = kl, e.strcasecmp = nl, e.strcmp = tl, e.strings_are_text = function() {
4735
+ return Yl;
4677
4736
  }, e.strncmp = function(e, t, n) {
4678
4737
  var r = (e + "").substring(0, n), o = (t + "").substring(0, n);
4679
4738
  return r === o ? 0 : r > o ? 1 : -1;
4680
4739
  }, e.strs_in_list = function(e, t, n) {
4681
4740
  if (!e) return ir("ERROR: strs_in_list() list empty"), !1;
4682
4741
  if (!t) return ir("ERROR: strs_in_list() str empty"), !1;
4683
- for (let r = 0; r < t.length; r++) if (Dl(e, t[r], n)) return !0;
4742
+ for (let r = 0; r < t.length; r++) if (kl(e, t[r], n)) return !0;
4684
4743
  return !1;
4685
4744
  }, e.strstr = function(e, t, n) {
4686
4745
  var r;
@@ -4699,13 +4758,13 @@ var gobjJs = function(e) {
4699
4758
  placeholder: void 0,
4700
4759
  fkey: null
4701
4760
  };
4702
- if (Yo(t)) {
4761
+ if (Jo(t)) {
4703
4762
  let e = t.split(".");
4704
4763
  for (let t = 0; t < e.length; t++) {
4705
4764
  let r = e[t];
4706
- if (Dl(li, r)) n.real_type || (n.real_type = r);
4707
- else if (Dl(si, r)) n.type || (n.type = r);
4708
- else if (Dl(ii, r)) switch (r) {
4765
+ if (kl(ui, r)) n.real_type || (n.real_type = r);
4766
+ else if (kl(ci, r)) n.type || (n.type = r);
4767
+ else if (kl(_i, r)) switch (r) {
4709
4768
  case "writable":
4710
4769
  n.is_writable = !0;
4711
4770
  break;
@@ -4717,7 +4776,7 @@ var gobjJs = function(e) {
4717
4776
  }
4718
4777
  }
4719
4778
  n.real_type || (n.real_type = "string");
4720
- } else Ko(t) ? (n = ai(t), n.name || (n.name = e), n.header || (n.header = e)) : Bo(t) && (n.real_type = "array", n.enum_list = t);
4779
+ } else Bo(t) ? (n = fi(t), n.name || (n.name = e), n.header || (n.header = e)) : Yo(t) && (n.real_type = "array", n.enum_list = t);
4721
4780
  return n.type || (n.type = n.real_type), n;
4722
4781
  }, e.timeTracker = function(e = "Time Tracker", t = !1) {
4723
4782
  const n = e, r = performance.now();
@@ -4729,8 +4788,8 @@ var gobjJs = function(e) {
4729
4788
  total: a
4730
4789
  };
4731
4790
  } };
4732
- }, e.trace_json = _r, e.trace_json_masked = $o, e.trace_level_t = B, e.trace_msg = ur, e.treedb_decoder_fkey = oi, e.treedb_decoder_hook = function(e, t) {
4733
- if (Yo(t)) {
4791
+ }, e.trace_json = _r, e.trace_json_masked = $o, e.trace_level_t = B, e.trace_msg = ur, e.treedb_decoder_fkey = ai, e.treedb_decoder_hook = function(e, t) {
4792
+ if (Jo(t)) {
4734
4793
  if (-1 === t.indexOf("^")) {
4735
4794
  let n, r = e.hook;
4736
4795
  if (1 !== Vo(r)) return ir("bad hook 1"), ir(e), ir(t), null;
@@ -4751,17 +4810,17 @@ var gobjJs = function(e) {
4751
4810
  };
4752
4811
  }
4753
4812
  }
4754
- return Ko(t) ? {
4813
+ return Bo(t) ? {
4755
4814
  topic_name: t.topic_name,
4756
4815
  id: t.id
4757
4816
  } : (ir("bad hook 3"), ir(e), ir(t), null);
4758
4817
  }, e.treedb_encoder_fkey = function(e, t) {
4759
- let n = oi(e, t);
4818
+ let n = ai(e, t);
4760
4819
  return n ? n.topic_name + "^" + n.id + "^" + n.hook_name : null;
4761
- }, e.treedb_get_field_desc = ai, e.treedb_hook_data_size = function(e) {
4762
- if (Bo(e) && 1 === xo(e)) {
4820
+ }, e.treedb_get_field_desc = fi, e.treedb_hook_data_size = function(e) {
4821
+ if (Yo(e) && 1 === xo(e)) {
4763
4822
  let t = e[0];
4764
- return ol(t, "size") ? t.size : 1;
4823
+ return ll(t, "size") ? t.size : 1;
4765
4824
  }
4766
4825
  return xo(e);
4767
4826
  }, e.vsprintf = function(e, t) {