@yuneta/gobj-js 7.26.27 → 7.26.28

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.
@@ -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
557
  function Ae(e) {
558
558
  return e >= -0x8000000000000000 && e < 0x8000000000000000;
559
559
  }
560
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";
561
+ return Yo(e) ? "an array" : Bo(e) ? "an object" : Jo(e) ? je : "number" == typeof e ? Number.isInteger(e) && Ae(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
  };
@@ -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
@@ -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
  }
@@ -792,7 +792,7 @@ var gobjJs = function(e) {
792
792
  let l;
793
793
  if (t.flag & A.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,7 +968,7 @@ 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
  }
@@ -980,7 +980,7 @@ var gobjJs = function(e) {
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) {
@@ -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
  }
@@ -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 & A.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);
@@ -1197,89 +1218,102 @@ var gobjJs = function(e) {
1197
1218
  return e ? tn(e, "yuno_id") : "";
1198
1219
  }
1199
1220
  function Rt(e) {
1200
- return Qo(e) ? e.gobj_name : (ir("gobj bad type"), null);
1221
+ return Xo(e) ? e.gobj_name : (ir("gobj bad type"), null);
1201
1222
  }
1202
1223
  function Dt(e) {
1203
- return Qo(e) ? e.gclass.gclass_name : (ir("gobj NULL of bad type"), null);
1224
+ return Xo(e) ? e.gclass.gclass_name : (ir("gobj NULL of bad type"), null);
1204
1225
  }
1205
1226
  function kt(e) {
1206
- return Qo(e) ? e.gclass.gclass_name + "^" + Rt(e) : (ir("gobj bad type"), null);
1227
+ return Xo(e) ? e.gclass.gclass_name + "^" + Rt(e) : (ir("gobj bad type"), null);
1207
1228
  }
1208
1229
  function Ct(e) {
1209
- if (!Qo(e)) return ir("gobj NULL of bad type"), null;
1230
+ if (!Xo(e)) return ir("gobj NULL of bad type"), null;
1210
1231
  let t = kt(e), n = It(e);
1211
1232
  for (; n;) t = kt(n) + "`" + t, n = It(n);
1212
1233
  return t;
1213
1234
  }
1214
1235
  function It(e) {
1215
- return Qo(e) ? e.parent : (ir("gobj NULL of bad type"), null);
1236
+ return Xo(e) ? e.parent : (ir("gobj NULL of bad type"), null);
1216
1237
  }
1217
1238
  function Pt(e) {
1218
- return Qo(e) ? !!(e.gobj_flag & L.gobj_flag_volatil) : (ir("gobj NULL of bad type"), null);
1239
+ return Xo(e) ? !!(e.gobj_flag & L.gobj_flag_volatil) : (ir("gobj NULL of bad type"), null);
1219
1240
  }
1220
1241
  function Lt(e) {
1221
- return Qo(e) ? !!(e.gobj_flag & L.gobj_flag_pure_child) : (ir("gobj NULL of bad type"), null);
1242
+ return Xo(e) ? !!(e.gobj_flag & L.gobj_flag_pure_child) : (ir("gobj NULL of bad type"), null);
1222
1243
  }
1223
1244
  function Ut(e) {
1224
- return !Qo(e) || !!(e.obflag & (U.obflag_destroyed | U.obflag_destroying));
1245
+ return !Xo(e) || !!(e.obflag & (U.obflag_destroyed | U.obflag_destroying));
1225
1246
  }
1226
1247
  function Ft(e) {
1227
- return Qo(e) ? e.bottom_gobj : (ir("gobj NULL of bad type"), null);
1248
+ return Xo(e) ? e.bottom_gobj : (ir("gobj NULL of bad type"), null);
1228
1249
  }
1229
1250
  function Mt(e, t) {
1230
- if (!Qo(e)) return ir("gobj NULL of bad type"), null;
1251
+ if (!Xo(e)) return ir("gobj NULL of bad type"), null;
1231
1252
  e.bottom_gobj && t && sr(`${kt(e)}: bottom_gobj already set`), e.bottom_gobj = t;
1232
1253
  }
1233
1254
  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);
1255
+ return Xo(e) ? t ? xe(e.gclass, t, n) : e.gclass.attrs_table : (ir("gobj NULL of bad type"), null);
1235
1256
  }
1236
1257
  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);
1258
+ return Ut(e) ? (ir("gobj NULL, destroying, or bad type"), 0) : function(e, t, n, r, o, l) {
1259
+ let i, s = [...e.dl_children];
1260
+ if (n & M.WALK_LAST2FIRST) for (let n = s.length; n > 0; n--) {
1261
+ if (i = s[n - 1], Kt(i, e, t)) continue;
1262
+ t.add(i);
1263
+ let a = xt(r(i, o, l));
1264
+ if (a < 0) return a;
1265
+ }
1266
+ else for (let n = 0; n < s.length; n++) {
1267
+ if (i = s[n], Kt(i, e, t)) continue;
1268
+ t.add(i);
1269
+ let a = xt(r(i, o, l));
1270
+ if (a < 0) return a;
1271
+ }
1272
+ return 0;
1273
+ }(e, /* @__PURE__ */ new Set(), t, n, r, o);
1238
1274
  }
1239
1275
  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);
1276
+ return Ut(e) ? (ir("gobj NULL, destroying, or bad type"), 0) : Yt(e, /* @__PURE__ */ new Set(), t, n, r, o);
1241
1277
  }
1242
1278
  function xt(e) {
1243
1279
  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
1280
  }
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;
1281
+ function Kt(e, t, n) {
1282
+ return Ut(e) || e.parent !== t || n.has(e);
1283
+ }
1284
+ function Bt(e, t, n, r, o, l) {
1285
+ let i = [...e.dl_children];
1286
+ n & M.WALK_LAST2FIRST && i.reverse();
1287
+ let s = [];
1288
+ for (const n of i) {
1289
+ if (Kt(n, e, t)) continue;
1290
+ t.add(n), s.push(n);
1291
+ let i = xt(r(n, o, l));
1292
+ if (i < 0) return i;
1251
1293
  }
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;
1294
+ for (const e of s) {
1295
+ if (Ut(e)) continue;
1296
+ let i = Bt(e, t, n, r, o, l);
1297
+ if (i < 0) return i;
1256
1298
  }
1257
1299
  return 0;
1258
1300
  }
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;
1301
+ function Yt(e, t, n, r, o, l) {
1302
+ if (n & M.WALK_BYLEVEL) return Bt(e, t, n, r, o, l);
1303
+ let i, s, a = [...e.dl_children];
1304
+ if (n & M.WALK_BOTTOM2TOP) {
1305
+ for (let u = a.length; u > 0; u--) if (s = a[u - 1], !Kt(s, e, t)) {
1306
+ if (i = Yt(s, t, n, r, o, l), i < 0) return i;
1307
+ if (!Ut(s) && (t.add(s), i = xt(r(s, o, l)), i < 0)) return i;
1274
1308
  }
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;
1309
+ } else for (let u = 0; u < a.length; u++) if (s = a[u], !Kt(s, e, t)) {
1310
+ if (t.add(s), i = xt(r(s, o, l)), i < 0) return i;
1311
+ if (0 === i && !Ut(s) && (i = Yt(s, t, n, r, o, l), i < 0)) return i;
1278
1312
  }
1279
1313
  return 0;
1280
1314
  }
1281
1315
  function Jt(e, t) {
1282
- if (!Qo(e)) return ir("gobj NULL of bad type"), !1;
1316
+ if (!Xo(e)) return ir("gobj NULL of bad type"), !1;
1283
1317
  let n = t.__gclass_name__, r = t.__gobj_name__, o = t.__prefix_gobj_name__;
1284
1318
  t.__disabled__;
1285
1319
  let l = t.__state__;
@@ -1294,7 +1328,7 @@ var gobjJs = function(e) {
1294
1328
  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
1329
  return !0;
1296
1330
  }
1297
- function Ht(e, t) {
1331
+ function qt(e, t) {
1298
1332
  if (Ut(e)) return ir("gobj NULL or DESTROYED"), null;
1299
1333
  const n = e.dl_children;
1300
1334
  for (let e = 0; e < n.length; e++) {
@@ -1303,7 +1337,7 @@ var gobjJs = function(e) {
1303
1337
  }
1304
1338
  return null;
1305
1339
  }
1306
- function qt(e, t) {
1340
+ function Ht(e, t) {
1307
1341
  if (!t) return null;
1308
1342
  let n = t.split("`");
1309
1343
  if (!function(e, t) {
@@ -1319,11 +1353,11 @@ var gobjJs = function(e) {
1319
1353
  if (1 === n.length) return e;
1320
1354
  let r = n[1].split("^"), o = {};
1321
1355
  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;
1356
+ let l = qt(e, o);
1357
+ return l ? (n.splice(0, 1), n = n.join("`"), Ht(l, n)) : null;
1324
1358
  }
1325
1359
  function zt(e, t) {
1326
- return !Xo(t) && !!xe(e.gclass, t, !1);
1360
+ return !Zo(t) && !!xe(e.gclass, t, !1);
1327
1361
  }
1328
1362
  function Qt(e, t, n) {
1329
1363
  let r = e.jn_attrs;
@@ -1346,21 +1380,21 @@ var gobjJs = function(e) {
1346
1380
  }
1347
1381
  function Zt(e, t) {
1348
1382
  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);
1383
+ if (0 === nl(t, "__disabled__")) return jt(e);
1384
+ if (0 === nl(t, "__running__")) return Tt(e);
1385
+ if (0 === nl(t, "__playing__")) return St(e);
1386
+ if (0 === nl(t, "__service__")) return Ot(e);
1353
1387
  }
1354
1388
  let n = We(e, t, !1);
1355
1389
  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
1390
  }
1357
1391
  function en(e, t) {
1358
- t && tl(t, "__trace_level__");
1392
+ t && nl(t, "__trace_level__");
1359
1393
  let n = We(e, t, !1);
1360
1394
  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
1395
  }
1362
1396
  function tn(e, t) {
1363
- if (t && 0 === tl(t, "__state__")) return fn(e);
1397
+ if (t && 0 === nl(t, "__state__")) return fn(e);
1364
1398
  let n = We(e, t, !1);
1365
1399
  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
1400
  }
@@ -1369,7 +1403,7 @@ var gobjJs = function(e) {
1369
1403
  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
1404
  }
1371
1405
  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;
1406
+ if (!Jo(t)) return ir(n("gobj_write_attr(%s): path must be a string", kt(e))), -1;
1373
1407
  let l, i = e.jn_attrs, s = t.split("`");
1374
1408
  if (s.length <= 1) {
1375
1409
  let o = t;
@@ -1378,7 +1412,7 @@ var gobjJs = function(e) {
1378
1412
  let a = s.length;
1379
1413
  for (let t = 0; t < a; t++) {
1380
1414
  l = s[t];
1381
- let n = Ht(e, { __gobj_name__: l });
1415
+ let n = qt(e, { __gobj_name__: l });
1382
1416
  if (n && t < a - 1) {
1383
1417
  e = n;
1384
1418
  continue;
@@ -1397,7 +1431,7 @@ var gobjJs = function(e) {
1397
1431
  let o;
1398
1432
  if (T(n)) {
1399
1433
  if (null == r) return { value: "" };
1400
- if (Yo(r)) return { value: r };
1434
+ if (Jo(r)) return { value: r };
1401
1435
  o = {
1402
1436
  value: Fe(r),
1403
1437
  refused: Ue
@@ -1427,7 +1461,7 @@ var gobjJs = function(e) {
1427
1461
  let r = We(e, t, !1);
1428
1462
  if (r) {
1429
1463
  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);
1464
+ 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
1465
  }
1432
1466
  return ir(`${kt(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1;
1433
1467
  }
@@ -1435,7 +1469,7 @@ var gobjJs = function(e) {
1435
1469
  let r = We(e, t, !1);
1436
1470
  if (r) {
1437
1471
  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);
1472
+ 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
1473
  }
1440
1474
  return ir(`${kt(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1;
1441
1475
  }
@@ -1443,7 +1477,7 @@ var gobjJs = function(e) {
1443
1477
  let r = We(e, t, !1);
1444
1478
  if (r) {
1445
1479
  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);
1480
+ 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
1481
  }
1448
1482
  return ir(`${kt(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1;
1449
1483
  }
@@ -1459,10 +1493,10 @@ var gobjJs = function(e) {
1459
1493
  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;
1460
1494
  }
1461
1495
  function fn(e) {
1462
- return Qo(e) ? e.current_state.state_name : (ir("hgobj NULL"), "");
1496
+ return Xo(e) ? e.current_state.state_name : (ir("hgobj NULL"), "");
1463
1497
  }
1464
1498
  function gn(e, t, n) {
1465
- if (!Qo(e)) return ir("gobj NULL of bad type"), null;
1499
+ if (!Xo(e)) return ir("gobj NULL of bad type"), null;
1466
1500
  let r = Xe(e.gclass, t);
1467
1501
  if (r) return r;
1468
1502
  if (n) {
@@ -1484,7 +1518,7 @@ var gobjJs = function(e) {
1484
1518
  }
1485
1519
  var pn = [], mn = !1;
1486
1520
  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({
1521
+ 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
1522
  dst: e,
1489
1523
  event: t,
1490
1524
  kw: r,
@@ -1550,7 +1584,7 @@ var gobjJs = function(e) {
1550
1584
  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
1585
  else {
1552
1586
  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)));
1587
+ s.action && (r = ei(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)));
1554
1588
  }
1555
1589
  r && re(e) && Vo(r) && $o(r);
1556
1590
  }
@@ -1569,7 +1603,7 @@ var gobjJs = function(e) {
1569
1603
  } finally {
1570
1604
  En(a);
1571
1605
  }
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;
1606
+ 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 || "", qo(u) ? u : 0)), h--, u;
1573
1607
  }
1574
1608
  var On = Object.freeze({
1575
1609
  __rename_event_name__: 1,
@@ -1602,34 +1636,34 @@ var gobjJs = function(e) {
1602
1636
  ];
1603
1637
  function Nn(e, t) {
1604
1638
  let n = e ? e.__config__ : null;
1605
- if (!Ko(n) || !ol(n, "__hard_subscription__") && !ol(n, "__own_event__") && !ol(n, "__rename_event_name__")) return {
1639
+ if (!Bo(n) || !ll(n, "__hard_subscription__") && !ll(n, "__own_event__") && !ll(n, "__rename_event_name__")) return {
1606
1640
  kw: e,
1607
1641
  renamed_event: ""
1608
1642
  };
1609
1643
  let r = Do({}, e), o = Do({}, n);
1610
1644
  r.__config__ = o;
1611
- let l = "", i = o.__rename_event_name__, s = "string" != typeof i || Xo(i) ? null : Sn(i, 0, !1);
1645
+ let l = "", i = o.__rename_event_name__, s = "string" != typeof i || Zo(i) ? null : Sn(i, 0, !1);
1612
1646
  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
1647
  kw: r,
1614
1648
  renamed_event: l
1615
1649
  };
1616
1650
  }
1617
1651
  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);
1652
+ 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;
1653
+ 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) {
1654
+ let t = bl(null, e, "__config__", null);
1621
1655
  xo(t) > 0 && Ro(t, i) || (_ = !1);
1622
1656
  }
1623
1657
  if (xo(s) > 0) {
1624
- let t = dl(null, e, "__global__", null);
1658
+ let t = bl(null, e, "__global__", null);
1625
1659
  xo(t) > 0 && Ro(t, s) || (_ = !1);
1626
1660
  }
1627
1661
  if (xo(a) > 0) {
1628
- let t = dl(null, e, "__local__", null);
1662
+ let t = bl(null, e, "__local__", null);
1629
1663
  xo(t) > 0 && Ro(t, a) || (_ = !1);
1630
1664
  }
1631
1665
  if (xo(u) > 0) {
1632
- let t = bl(null, e, "__filter__", null);
1666
+ let t = pl(null, e, "__filter__", null);
1633
1667
  xo(t) > 0 && Ro(t, u) || (_ = !1);
1634
1668
  }
1635
1669
  return _;
@@ -1646,8 +1680,8 @@ var gobjJs = function(e) {
1646
1680
  return e.indexOf(t);
1647
1681
  }
1648
1682
  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;
1683
+ 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);
1684
+ if (!!(fl(e, t, "subs_flag", null, Un.KW_REQUIRED) & On.__hard_subscription__) && !r) return -1;
1651
1685
  let a = te(i) || te(l);
1652
1686
  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;
1653
1687
  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);
@@ -1666,10 +1700,10 @@ var gobjJs = function(e) {
1666
1700
  ]);
1667
1701
  if (Object.keys(r).forEach((n) => {
1668
1702
  l.has(n) || ir(`${kt(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
1669
- }), Xo(t)) t = "";
1703
+ }), Zo(t)) t = "";
1670
1704
  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
1705
  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
+ for (let t = 0; t < s.length; t++) if (fl(e, s[t], "subs_flag", 0, Un.KW_REQUIRED) & On.__hard_subscription__) {
1673
1707
  a = s[t];
1674
1708
  break;
1675
1709
  }
@@ -1680,29 +1714,29 @@ var gobjJs = function(e) {
1680
1714
  Uo(o, "event", t), Uo(o, "subscriber", r), Uo(o, "publisher", e);
1681
1715
  let l = 0;
1682
1716
  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__", "");
1717
+ 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__", "");
1684
1718
  if (xo(i) > 0 && Uo(o, "__global__", Ao(i)), xo(r) > 0) {
1685
1719
  let n = Ao(r);
1686
1720
  Uo(o, "__config__", n);
1687
- let i = fl(e, n, "__rename_event_name__", "");
1688
- if (!Xo(i)) {
1721
+ let i = gl(e, n, "__rename_event_name__", "");
1722
+ if (!Zo(i)) {
1689
1723
  let r = Sn(i, 0, !1);
1690
1724
  if (r) {
1691
1725
  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;
1726
+ let i = bl(e, o, "__global__", null);
1727
+ Bo(i) || (i = {}, Uo(o, "__global__", i)), i.__original_event_name__ = t;
1694
1728
  } else ir(`${kt(e)}: EVENT NOT FOUND (__rename_event_name__: ${i})`);
1695
1729
  }
1696
- if (ol(n, "__hard_subscription__")) {
1697
- let t = _l(e, n, "__hard_subscription__", !1);
1730
+ if (ll(n, "__hard_subscription__")) {
1731
+ let t = cl(e, n, "__hard_subscription__", !1);
1698
1732
  Po(n, "__hard_subscription__"), t && (l |= On.__hard_subscription__);
1699
1733
  }
1700
- if (ol(n, "__own_event__")) {
1701
- let t = _l(e, n, "__own_event__", !1);
1734
+ if (ll(n, "__own_event__")) {
1735
+ let t = cl(e, n, "__own_event__", !1);
1702
1736
  Po(n, "__own_event__"), t && (l |= On.__own_event__);
1703
1737
  }
1704
1738
  }
1705
- xo(s) > 0 && Uo(o, "__local__", Ao(s)), xo(a) > 0 && Uo(o, "__filter__", Ao(a)), Xo(u) || Uo(o, "__service__", u);
1739
+ xo(s) > 0 && Uo(o, "__local__", Ao(s)), xo(a) > 0 && Uo(o, "__filter__", Ao(a)), Zo(u) || Uo(o, "__service__", u);
1706
1740
  }
1707
1741
  return Uo(o, "subs_flag", l), o;
1708
1742
  }(e, t, r, o);
@@ -1725,8 +1759,8 @@ var gobjJs = function(e) {
1725
1759
  return An(e.dl_subscribings, r, t, null, n, e);
1726
1760
  }
1727
1761
  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;
1762
+ if (Bo(r) || (r = {}), !e || e.obflag & (U.obflag_destroyed | U.obflag_destroying)) return ir("gobj NULL or DESTROYED"), -1;
1763
+ if (Zo(t)) return ir(`${kt(e)}: event EMPTY`), -1;
1730
1764
  let o = gn(e, t, !0);
1731
1765
  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
1766
  let l = (te(e) || oe(e, t)) && !le(e, t);
@@ -1744,20 +1778,20 @@ var gobjJs = function(e) {
1744
1778
  if (n < 0) break;
1745
1779
  if (!n) continue;
1746
1780
  }
1747
- let c = gl(e, _, "subscriber", null, Un.KW_REQUIRED);
1781
+ let c = dl(e, _, "subscriber", null, Un.KW_REQUIRED);
1748
1782
  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);
1783
+ let f = fl(e, _, "subs_flag", 0, Un.KW_REQUIRED), g = gl(e, _, "event", "", Un.KW_REQUIRED);
1784
+ if (Zo(g) || 0 === nl(g, t)) {
1785
+ bl(e, _, "__config__", null, 0);
1786
+ let o = bl(e, _, "__global__", null, 0), i = bl(e, _, "__local__", null, 0), g = pl(e, _, "__filter__", null, 0), d = _.renamed_event;
1787
+ Zo(d) && (d = t);
1754
1788
  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;
1789
+ 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
1790
  if (!b) continue;
1757
1791
  let p = gn(c, t, !0);
1758
1792
  if (p && p.event_flag & F.EVF_SYSTEM_EVENT && !dn(c, p.event_name, 0)) continue;
1759
1793
  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));
1794
+ (xo(i) > 0 || xo(o) > 0) && (m = Do({}, r)), xo(i) > 0 && ol(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));
1761
1795
  let h = jn(c, d, m, e);
1762
1796
  if (h < 0 && f & On.__own_event__) {
1763
1797
  s = -1;
@@ -1794,7 +1828,7 @@ var gobjJs = function(e) {
1794
1828
  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
1829
  var Yn = !0;
1796
1830
  var Jn = null;
1797
- function Hn(e, t) {
1831
+ function qn(e, t) {
1798
1832
  if (!Yn) return !1;
1799
1833
  if (!Jn) return !0;
1800
1834
  try {
@@ -1803,9 +1837,9 @@ var gobjJs = function(e) {
1803
1837
  return !0;
1804
1838
  }
1805
1839
  }
1806
- var qn = !1;
1840
+ var Hn = !1;
1807
1841
  function zn(e, t, n) {
1808
- qn || (function(e, t, n) {
1842
+ Hn || (function(e, t, n) {
1809
1843
  let r = t;
1810
1844
  "json" === e && (r = Zn(t)), Bn.push([
1811
1845
  e,
@@ -1815,12 +1849,12 @@ var gobjJs = function(e) {
1815
1849
  }(e, t, n), Qn(e, t, n));
1816
1850
  }
1817
1851
  function Qn(e, t, n) {
1818
- if (xn && !qn) {
1819
- qn = !0;
1852
+ if (xn && !Hn) {
1853
+ Hn = !0;
1820
1854
  try {
1821
1855
  xn(e, t, n);
1822
1856
  } catch (e) {} finally {
1823
- qn = !1;
1857
+ Hn = !1;
1824
1858
  }
1825
1859
  }
1826
1860
  }
@@ -1899,22 +1933,22 @@ var gobjJs = function(e) {
1899
1933
  }
1900
1934
  function ir(e, ...t) {
1901
1935
  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);
1936
+ 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
1937
  }
1904
1938
  function sr(e, ...t) {
1905
1939
  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);
1940
+ 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
1941
  }
1908
1942
  function ar(e, ...t) {
1909
1943
  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);
1944
+ Wn && qn("debug", n) && rr(Wn, "%c" + r + " DEBUG: " + String(n), "color:silver"), zn("debug", n, r);
1911
1945
  }
1912
1946
  function ur(e, ...t) {
1913
1947
  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);
1948
+ Wn && qn("msg", n) && rr(Wn, "%c" + r + " MSG: " + String(n), "color:cyan"), zn("msg", n, r);
1915
1949
  }
1916
1950
  function _r(e, t) {
1917
- Hn("json", t) && (t && rr(Fn.warn, "=====> " + er(t)), rr(Fn.dir, e)), zn("json", e, Hl());
1951
+ qn("json", t) && (t && rr(Fn.warn, "=====> " + er(t)), rr(Fn.dir, e)), zn("json", e, Hl());
1918
1952
  }
1919
1953
  function cr(e) {
1920
1954
  const t = new Array(128).fill(null);
@@ -2258,9 +2292,9 @@ var gobjJs = function(e) {
2258
2292
  function Br(e, t, n) {
2259
2293
  for (let r = t; r < n; r++) e[r] = 1;
2260
2294
  }
2261
- var Yr = 0, Jr = 1, Hr = 2;
2262
- function qr(e, t, n, r, o) {
2263
- const l = n === Hr ? Tr : Er;
2295
+ var Yr = 0, Jr = 1, qr = 2;
2296
+ function Hr(e, t, n, r, o) {
2297
+ const l = n === qr ? Tr : Er;
2264
2298
  let i = !1;
2265
2299
  const s = (t) => t >= e.length || " " === e[t] || " " === e[t] || "\0" === e[t];
2266
2300
  let a = "", u = 0, _ = 0;
@@ -2474,7 +2508,7 @@ var gobjJs = function(e) {
2474
2508
  const s = i.join(""), a = new Uint8Array(s.length);
2475
2509
  (function(e, t) {
2476
2510
  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);
2511
+ Hr(e, n, Yr, t, r), _o(e, t, r), fo(e, t), go(e, t), bo(e, t);
2478
2512
  })(s, a), vo(s, a, n + 1);
2479
2513
  let u = 0;
2480
2514
  for (let n = 0; n < s.length; n++) {
@@ -2484,13 +2518,13 @@ var gobjJs = function(e) {
2484
2518
  }
2485
2519
  function Eo(e, t) {
2486
2520
  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) {
2521
+ (Hr(e, n, Yr, t, o) || n !== r) && Hr(e, r, qr, t, null), function(e) {
2488
2522
  for (let t = 0; t < e.length; t++) {
2489
2523
  const n = e.charCodeAt(t);
2490
2524
  if ((101 === n || 98 === n || 66 === n) && Mr(e, t)[1]) return !0;
2491
2525
  }
2492
2526
  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);
2527
+ }(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
2528
  }
2495
2529
  function To(e) {
2496
2530
  if ("string" != typeof e) return null;
@@ -2562,7 +2596,7 @@ var gobjJs = function(e) {
2562
2596
  }
2563
2597
  r.left -= 1 + a.length;
2564
2598
  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);
2599
+ u = (jr(a, 0, a.length, Er) || o && "value" === a) && null != _ && "" !== _ ? "********" : wo(_, t, n + 1, r), u !== _ && (i = !0), sl(l, a, u);
2566
2600
  }
2567
2601
  s && (l["<more>"] = Kr);
2568
2602
  }
@@ -2604,17 +2638,17 @@ var gobjJs = function(e) {
2604
2638
  }
2605
2639
  function Do(e, t) {
2606
2640
  if (!t) return e;
2607
- for (let n of Object.keys(t)) il(e, n, t[n]);
2641
+ for (let n of Object.keys(t)) sl(e, n, t[n]);
2608
2642
  return e;
2609
2643
  }
2610
2644
  function ko(e, t) {
2611
2645
  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]);
2646
+ for (let n in t) Object.prototype.hasOwnProperty.call(t, n) && Object.prototype.hasOwnProperty.call(e, n) && sl(e, n, t[n]);
2613
2647
  return e;
2614
2648
  }
2615
2649
  function Co(e, t) {
2616
2650
  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]);
2651
+ for (let n in t) Object.prototype.hasOwnProperty.call(t, n) && !Object.prototype.hasOwnProperty.call(e, n) && sl(e, n, t[n]);
2618
2652
  return e;
2619
2653
  }
2620
2654
  function Io(e, t) {
@@ -2624,10 +2658,10 @@ var gobjJs = function(e) {
2624
2658
  e && Object.prototype.hasOwnProperty.call(e, t) && delete e[t];
2625
2659
  }
2626
2660
  function Lo(e, t, n) {
2627
- il(e, t, n);
2661
+ sl(e, t, n);
2628
2662
  }
2629
2663
  function Uo(e, t, n) {
2630
- il(e, t, n);
2664
+ sl(e, t, n);
2631
2665
  }
2632
2666
  function Fo(e, t) {
2633
2667
  e.push(t);
@@ -2639,54 +2673,57 @@ var gobjJs = function(e) {
2639
2673
  e.splice(t, 1);
2640
2674
  }
2641
2675
  function Vo(e) {
2642
- return Ko(e) ? Object.keys(e).length : 0;
2676
+ return Bo(e) ? Object.keys(e).length : 0;
2643
2677
  }
2644
2678
  function Wo(e) {
2645
- return Bo(e) ? e.length : 0;
2679
+ return Yo(e) ? e.length : 0;
2646
2680
  }
2647
2681
  function xo(e) {
2648
- return Ko(e) ? Object.keys(e).length : Bo(e) ? e.length : Yo(e) && e.length > 0 ? 1 : 0;
2682
+ return Bo(e) ? Object.keys(e).length : Yo(e) ? e.length : Jo(e) && e.length > 0 ? 1 : 0;
2649
2683
  }
2650
2684
  function Ko(e) {
2651
- return null !== e && "object" == typeof e && !Array.isArray(e);
2685
+ return 0 === xo(e);
2652
2686
  }
2653
2687
  function Bo(e) {
2654
- return Array.isArray(e);
2688
+ return null !== e && "object" == typeof e && !Array.isArray(e);
2655
2689
  }
2656
2690
  function Yo(e) {
2657
- return "string" == typeof e;
2691
+ return Array.isArray(e);
2658
2692
  }
2659
2693
  function Jo(e) {
2694
+ return "string" == typeof e;
2695
+ }
2696
+ function qo(e) {
2660
2697
  return "number" == typeof e && Number.isFinite(e);
2661
2698
  }
2662
2699
  function Ho(e) {
2663
2700
  return "boolean" == typeof e;
2664
2701
  }
2665
- function qo(e) {
2666
- return null == e;
2667
- }
2668
2702
  function zo(e) {
2669
- return "function" == typeof e;
2703
+ return null == e;
2670
2704
  }
2671
2705
  function Qo(e) {
2672
- return e instanceof I;
2706
+ return "function" == typeof e;
2673
2707
  }
2674
2708
  function Xo(e) {
2675
- return !Yo(e) || 0 === e.length;
2709
+ return e instanceof I;
2676
2710
  }
2677
2711
  function Zo(e) {
2678
- return Jo(e) ? Boolean(e) : /^\s*(true|1|on)\s*$/i.test(e);
2712
+ return !Jo(e) || 0 === e.length;
2679
2713
  }
2680
- function el(e, t) {
2681
- return e === t ? 0 : e > t ? 1 : -1;
2714
+ function el(e) {
2715
+ return qo(e) ? Boolean(e) : /^\s*(true|1|on)\s*$/i.test(e);
2682
2716
  }
2683
2717
  function tl(e, t) {
2718
+ return e === t ? 0 : e > t ? 1 : -1;
2719
+ }
2720
+ function nl(e, t) {
2684
2721
  let n = e.toLowerCase(), r = t.toLowerCase();
2685
2722
  return n === r ? 0 : n > r ? 1 : -1;
2686
2723
  }
2687
- function nl(e, t) {
2688
- if (Ko(e) || Ko(t) || Bo(e) || Bo(t)) return 0;
2689
- if (Jo(e) || Jo(t)) {
2724
+ function rl(e, t) {
2725
+ if (Bo(e) || Bo(t) || Yo(e) || Yo(t)) return 0;
2726
+ if (qo(e) || qo(t)) {
2690
2727
  let n = Number(e), r = Number(t);
2691
2728
  return Number.isNaN(n) && (n = 0), Number.isNaN(r) && (r = 0), n > r ? 1 : n < r ? -1 : 0;
2692
2729
  }
@@ -2694,20 +2731,20 @@ var gobjJs = function(e) {
2694
2731
  let n = Number(e), r = Number(t);
2695
2732
  return n > r ? 1 : n < r ? -1 : 0;
2696
2733
  }
2697
- return el(String(e), String(t));
2734
+ return tl(String(e), String(t));
2698
2735
  }
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);
2736
+ function ol(e, t) {
2737
+ if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t) ol(e, n);
2701
2738
  else "string" == typeof t && delete e[t];
2702
2739
  else for (const n of Object.keys(t)) delete e[n];
2703
2740
  }
2704
- function ol(e, t) {
2741
+ function ll(e, t) {
2705
2742
  return !(!(t in e) || !Object.prototype.hasOwnProperty.call(e, t));
2706
2743
  }
2707
- function ll(e, t) {
2744
+ function il(e, t) {
2708
2745
  return !Object.prototype.hasOwnProperty.call(e, t);
2709
2746
  }
2710
- function il(e, t, n) {
2747
+ function sl(e, t, n) {
2711
2748
  "__proto__" === t ? Object.defineProperty(e, t, {
2712
2749
  value: n,
2713
2750
  writable: !0,
@@ -2715,81 +2752,81 @@ var gobjJs = function(e) {
2715
2752
  configurable: !0
2716
2753
  }) : e[t] = n;
2717
2754
  }
2718
- function sl(e, t) {
2755
+ function al(e, t) {
2719
2756
  if (!/^[0-9]+$/.test(t)) return -1;
2720
2757
  const n = Number(t);
2721
2758
  return n >= e.length ? -1 : n;
2722
2759
  }
2723
- function al(e, t, n, r) {
2724
- e && !Qo(e) && ir("GObj bad instanceof");
2760
+ function ul(e, t, n, r) {
2761
+ e && !Xo(e) && ir("GObj bad instanceof");
2725
2762
  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)}`);
2763
+ if (!Bo(t) && !Yo(t)) return void ir(`${o}kw must be list or dict: '${String(n)}'`);
2764
+ if (!Jo(n)) return void ir(`${o}path must be a string: ${String(n)}`);
2728
2765
  let l = n.split("`"), i = l.length;
2729
2766
  for (let e = 0; e < i; e++) {
2730
- if (Bo(t)) {
2731
- const i = sl(t, l[e]);
2767
+ if (Yo(t)) {
2768
+ const i = al(t, l[e]);
2732
2769
  if (i < 0) return void (r && ir(`${o}path not found: '${n}'`));
2733
2770
  l[e] = String(i);
2734
2771
  }
2735
- if (ll(t, l[e])) return void (r && ir(`${o}path not found: '${n}'`));
2772
+ if (il(t, l[e])) return void (r && ir(`${o}path not found: '${n}'`));
2736
2773
  if (e === i - 1) break;
2737
2774
  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}'`);
2775
+ if (!Bo(t) && !Yo(t)) return void ir(`${o}kw must be list or dict: '${n}'`);
2739
2776
  }
2740
2777
  let s = t[l[i - 1]];
2741
2778
  return void 0 === s && r && ir(`${o}path not found: '${n}'`), s;
2742
2779
  }
2743
- function ul(e, t, n) {
2744
- e && !Qo(e) && ir("GObj bad instanceof");
2780
+ function _l(e, t, n) {
2781
+ e && !Xo(e) && ir("GObj bad instanceof");
2745
2782
  const r = e ? kt(e) + ": " : "";
2746
- if (!Yo(n)) return ir(`${r}kw_delete(): path must be a string: ${String(n)}`), -1;
2783
+ if (!Jo(n)) return ir(`${r}kw_delete(): path must be a string: ${String(n)}`), -1;
2747
2784
  let [o, l] = function(e, t) {
2748
2785
  let n = e.lastIndexOf(t);
2749
2786
  return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
2750
2787
  }(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);
2788
+ if (Zo(l)) l = n;
2789
+ else if (i = ul(e, t, o, !0), void 0 === i) return -1;
2790
+ 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
2791
  }
2755
- function _l(e, t, n, r, o) {
2756
- e && !Qo(e) && ir("GObj bad instanceof");
2757
- let l = al(e, t, n, !1);
2792
+ function cl(e, t, n, r, o) {
2793
+ e && !Xo(e) && ir("GObj bad instanceof");
2794
+ let l = ul(e, t, n, !1);
2758
2795
  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
2796
  if (void 0 === l) {
2760
2797
  if (s && t) {
2761
2798
  let o = Boolean(r);
2762
- return pl(e, t, n, o), o;
2799
+ return ml(e, t, n, o), o;
2763
2800
  }
2764
2801
  return i && (ir(`path not found: '${n}'`), $o(t)), Boolean(r);
2765
2802
  }
2766
2803
  let _;
2767
2804
  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);
2805
+ else if (u && qo(l)) _ = 0 !== l;
2806
+ else if (u && Jo(l)) _ = "true" === l.toLowerCase() || "false" !== l.toLowerCase() && 0 !== (parseInt(l, 10) || 0);
2770
2807
  else {
2771
2808
  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
2809
  _ = !1;
2773
2810
  }
2774
- return a && ul(e, t, n), _;
2811
+ return a && _l(e, t, n), _;
2775
2812
  }
2776
- function cl(e, t, n, r, o) {
2777
- e && !Qo(e) && ir("GObj bad instanceof");
2778
- let l = al(e, t, n, !1);
2813
+ function fl(e, t, n, r, o) {
2814
+ e && !Xo(e) && ir("GObj bad instanceof");
2815
+ let l = ul(e, t, n, !1);
2779
2816
  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
2817
  if (void 0 === l) {
2781
2818
  if (s && t) {
2782
2819
  let o = parseInt(r);
2783
- return pl(e, t, n, o), o;
2820
+ return ml(e, t, n, o), o;
2784
2821
  }
2785
2822
  return i && (ir(`path not found: '${n}'`), $o(t)), parseInt(r);
2786
2823
  }
2787
2824
  let _;
2788
- if (Jo(l)) _ = Math.trunc(l);
2825
+ if (qo(l)) _ = Math.trunc(l);
2789
2826
  else {
2790
2827
  if (!u) return ir(`${e ? kt(e) + ": " : ""}path MUST BE a json integer: '${n}'`), $o(t), parseInt(r);
2791
2828
  if (Ho(l)) _ = l ? 1 : 0;
2792
- else if (Yo(l)) _ = function(e) {
2829
+ else if (Jo(l)) _ = function(e) {
2793
2830
  const t = /^\s*([+-]?)(0[xX][0-9a-fA-F]+|0[0-7]*|[1-9][0-9]*)/.exec(e);
2794
2831
  if (!t) return 0;
2795
2832
  let n, r = t[2];
@@ -2800,120 +2837,120 @@ var gobjJs = function(e) {
2800
2837
  _ = 0;
2801
2838
  }
2802
2839
  }
2803
- return a && ul(e, t, n), _;
2840
+ return a && _l(e, t, n), _;
2804
2841
  }
2805
- function fl(e, t, n, r, o) {
2806
- e && !Qo(e) && ir("GObj bad instanceof");
2807
- let l = al(e, t, n, !1);
2842
+ function gl(e, t, n, r, o) {
2843
+ e && !Xo(e) && ir("GObj bad instanceof");
2844
+ let l = ul(e, t, n, !1);
2808
2845
  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;
2846
+ return void 0 === l ? s && t ? (ml(e, t, n, Jo(r) ? r : null), r) : (i && !function(e, t) {
2847
+ let n = Jo(t) ? t.split("`") : [], r = e;
2811
2848
  for (let e = 0; e < n.length - 1; e++) {
2812
- if (!Ko(r) && !Bo(r)) return !1;
2849
+ if (!Bo(r) && !Yo(r)) return !1;
2813
2850
  r = r[n[e]];
2814
2851
  }
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);
2852
+ return !(!Bo(r) && !Yo(r) || 0 === n.length) && Object.prototype.hasOwnProperty.call(r, n[n.length - 1]);
2853
+ }(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
2854
  }
2818
- function gl(e, t, n, r, o) {
2819
- e && !Qo(e) && ir("GObj bad instanceof");
2820
- let l = al(e, t, n, !1);
2855
+ function dl(e, t, n, r, o) {
2856
+ e && !Xo(e) && ir("GObj bad instanceof");
2857
+ let l = ul(e, t, n, !1);
2821
2858
  const i = o && o & Un.KW_REQUIRED, s = o && o & Un.KW_CREATE, a = o && o & Un.KW_EXTRACT;
2822
2859
  if (void 0 === l) {
2823
2860
  if (s) {
2824
2861
  let o = r;
2825
- return pl(e, t, n, o), o;
2862
+ return ml(e, t, n, o), o;
2826
2863
  }
2827
2864
  return i && (ir(`path not found: '${n}'`), $o(t)), r;
2828
2865
  }
2829
- return a && ul(e, t, n), l;
2866
+ return a && _l(e, t, n), l;
2830
2867
  }
2831
- function dl(e, t, n, r, o) {
2832
- e && !Qo(e) && ir("GObj bad instanceof");
2833
- let l = al(e, t, n, !1);
2868
+ function bl(e, t, n, r, o) {
2869
+ e && !Xo(e) && ir("GObj bad instanceof");
2870
+ let l = ul(e, t, n, !1);
2834
2871
  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);
2872
+ 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
2873
  }
2837
- function bl(e, t, n, r, o) {
2838
- e && !Qo(e) && ir("GObj bad instanceof");
2839
- let l = al(e, t, n, !1);
2874
+ function pl(e, t, n, r, o) {
2875
+ e && !Xo(e) && ir("GObj bad instanceof");
2876
+ let l = ul(e, t, n, !1);
2840
2877
  const i = o && o & Un.KW_REQUIRED, s = o && o & Un.KW_CREATE, a = o && o & Un.KW_EXTRACT;
2841
2878
  if (void 0 === l) {
2842
2879
  if (s) {
2843
2880
  let o = r;
2844
- return pl(e, t, n, o), o;
2881
+ return ml(e, t, n, o), o;
2845
2882
  }
2846
2883
  return i && (ir(`path not found: '${n}'`), $o(t)), r;
2847
2884
  }
2848
- return a && ul(e, t, n), l;
2885
+ return a && _l(e, t, n), l;
2849
2886
  }
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;
2887
+ function ml(e, t, n, r) {
2888
+ if (e && !Xo(e) && ir("GObj bad instanceof"), !Bo(t)) return ir("kw is not an object"), -1;
2889
+ if (!Jo(n)) return ir(`${e ? kt(e) + ": " : ""}kw_set_dict_value(): path must be a string: ${String(n)}`), -1;
2853
2890
  if ("" === n) return ir((e ? kt(e) + ": " : "") + "kw_set_dict_value(): path empty"), -1;
2854
2891
  if (n.split("`").includes("")) return ir(`${e ? kt(e) + ": " : ""}kw_set_dict_value(): empty segment in path: '${n}'`), -1;
2855
2892
  let o = n.split("`"), l = o.length;
2856
2893
  for (let i = 0; i < l; i++) {
2857
2894
  let s = o[i];
2858
- if (Bo(t)) {
2859
- const r = sl(t, s);
2895
+ if (Yo(t)) {
2896
+ const r = al(t, s);
2860
2897
  if (r < 0) return ir(`${e ? kt(e) + ": " : ""}kw_set_dict_value(): segment '${s}' is not an index of its list: '${n}'`), -1;
2861
2898
  s = String(r);
2862
2899
  }
2863
- if (i === l - 1) il(t, s, r);
2900
+ if (i === l - 1) sl(t, s, r);
2864
2901
  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;
2902
+ let r = il(t, s) ? void 0 : t[s];
2903
+ if (void 0 === r) sl(t, s, {});
2904
+ 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
2905
  t = t[s];
2869
2906
  }
2870
2907
  }
2871
2908
  return 0;
2872
2909
  }
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);
2910
+ function hl(e, t, n, r, o) {
2911
+ if (e && !Xo(e) && ir("GObj bad instanceof"), !Bo(t)) return ir("kw is not an object"), -1;
2912
+ let l = ul(e, t, n, !1);
2876
2913
  if (void 0 === l) {
2877
- if (!Yo(n) || function(e, t) {
2914
+ if (!Jo(n) || function(e, t) {
2878
2915
  let n = t.split("`"), r = e;
2879
2916
  for (let e = 0; e < n.length - 1; e++) {
2880
- if (Bo(r)) {
2881
- const t = sl(r, n[e]);
2917
+ if (Yo(r)) {
2918
+ const t = al(r, n[e]);
2882
2919
  if (t < 0) return !1;
2883
2920
  r = r[t];
2884
2921
  } else r = Object.prototype.hasOwnProperty.call(r, n[e]) ? r[n[e]] : void 0;
2885
2922
  if (null == r) return !1;
2886
- if (!Ko(r) && !Bo(r)) return !0;
2923
+ if (!Bo(r) && !Yo(r)) return !0;
2887
2924
  }
2888
2925
  return !1;
2889
2926
  }(t, n)) return -1;
2890
- if (l = {}, pl(e, t, n, l) < 0) return -1;
2927
+ if (l = {}, ml(e, t, n, l) < 0) return -1;
2891
2928
  }
2892
- return Ko(l) ? (il(l, r, o), 0) : (ir(`subdict is not an object: '${n}'`), -1);
2929
+ return Bo(l) ? (sl(l, r, o), 0) : (ir(`subdict is not an object: '${n}'`), -1);
2893
2930
  }
2894
- function hl(e, t, r) {
2931
+ function yl(e, t, r) {
2895
2932
  let o = "", l = !1;
2896
- if (Bo(t)) {
2933
+ if (Yo(t)) {
2897
2934
  l = !1;
2898
2935
  for (let i = 0; i < t.length; i++) {
2899
2936
  let s = t[i];
2900
- if (o = Xo(r) ? n("%s", r) : n("%s`%d", r, i), l = hl(e, s, o), l) break;
2937
+ if (o = Zo(r) ? n("%s", r) : n("%s`%d", r, i), l = yl(e, s, o), l) break;
2901
2938
  }
2902
- } else if (Ko(t)) {
2939
+ } else if (Bo(t)) {
2903
2940
  l = !0;
2904
2941
  let i = Object.keys(t);
2905
2942
  for (let s = 0; s < i.length; s++) {
2906
2943
  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;
2944
+ if (o = Zo(r) ? n("%s", a) : n("%s`%s", r, a), Yo(u) || Bo(u)) {
2945
+ if (l = yl(e, u, o), !l) break;
2909
2946
  continue;
2910
2947
  }
2911
- let _ = bl(0, e, o, void 0, 0);
2948
+ let _ = pl(0, e, o, void 0, 0);
2912
2949
  if (void 0 === _ && (_ = Io(e, o)), void 0 === _) {
2913
2950
  l = !1;
2914
2951
  break;
2915
2952
  }
2916
- if (0 !== nl(_, u)) {
2953
+ if (0 !== rl(_, u)) {
2917
2954
  l = !1;
2918
2955
  break;
2919
2956
  }
@@ -2921,34 +2958,34 @@ var gobjJs = function(e) {
2921
2958
  }
2922
2959
  return l;
2923
2960
  }
2924
- function yl(e, t) {
2925
- return 0 === xo(t) || hl(e, t, "");
2961
+ function vl(e, t) {
2962
+ return 0 === xo(t) || yl(e, t, "");
2926
2963
  }
2927
- function vl(e, t, n, r) {
2928
- e && !Qo(e) && ir("GObj bad instanceof");
2964
+ function El(e, t, n, r) {
2965
+ e && !Xo(e) && ir("GObj bad instanceof");
2929
2966
  let o = {};
2930
- if (Yo(n) && !Xo(n)) {
2967
+ if (Jo(n) && !Zo(n)) {
2931
2968
  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}`);
2969
+ Object.prototype.hasOwnProperty.call(t, l) ? sl(o, l, t[l]) : r && ir(`${kt(e)}: key not found: ${l}`);
2970
+ } 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
2971
  else {
2935
- if (!(Bo(n) && Wo(n) > 0)) return t;
2972
+ if (!(Yo(n) && Wo(n) > 0)) return t;
2936
2973
  for (let l = 0; l < n.length; l++) {
2937
2974
  let i = n[l];
2938
- Object.prototype.hasOwnProperty.call(t, i) ? il(o, i, t[i]) : r && ir(`${kt(e)}: key not found: ${i}`);
2975
+ Object.prototype.hasOwnProperty.call(t, i) ? sl(o, i, t[i]) : r && ir(`${kt(e)}: key not found: ${i}`);
2939
2976
  }
2940
2977
  }
2941
2978
  return o;
2942
2979
  }
2943
- function El(e, t, n, r) {
2980
+ function Tl(e, t, n, r) {
2944
2981
  let o = {};
2945
- if (!Ko(t)) return o;
2946
- if (Do(o, t), Yo(n) && !Xo(n)) {
2982
+ if (!Bo(t)) return o;
2983
+ if (Do(o, t), Jo(n) && !Zo(n)) {
2947
2984
  let l = n;
2948
2985
  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}`);
2986
+ } 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
2987
  else {
2951
- if (!(Bo(n) && Wo(n) > 0)) return {};
2988
+ if (!(Yo(n) && Wo(n) > 0)) return {};
2952
2989
  for (let l = 0; l < n.length; l++) {
2953
2990
  let i = n[l];
2954
2991
  Object.prototype.hasOwnProperty.call(t, i) ? Po(o, i) : r && ir(`${kt(e)}: key not found: ${i}`);
@@ -2956,7 +2993,7 @@ var gobjJs = function(e) {
2956
2993
  }
2957
2994
  return o;
2958
2995
  }
2959
- function Tl() {
2996
+ function jl() {
2960
2997
  if ("undefined" == typeof window) return null;
2961
2998
  let e;
2962
2999
  try {
@@ -2973,39 +3010,47 @@ var gobjJs = function(e) {
2973
3010
  }
2974
3011
  return e || null;
2975
3012
  }
2976
- var jl = /* @__PURE__ */ new Set();
2977
- function Ol(e, t) {
2978
- jl.has(e) || (jl.add(e), sr(t));
3013
+ var Ol = /* @__PURE__ */ new Set();
3014
+ function Sl(e, t) {
3015
+ Ol.has(e) || (Ol.add(e), sr(t));
2979
3016
  }
2980
- function Sl(e, t, n = !1) {
2981
- const r = Tl();
3017
+ function wl(e, t, n = !1) {
3018
+ const r = jl();
2982
3019
  if (!r) return t;
2983
3020
  const o = `kw_get_local_storage_value(): localStorage key "${e}"`;
2984
3021
  let l;
2985
3022
  try {
2986
3023
  l = r.getItem(e);
2987
3024
  } catch (n) {
2988
- return Ol(e, `${o} cannot be read (storage blocked?): the default is used`), t;
3025
+ return Sl(e, `${o} cannot be read (storage blocked?): the default is used`), t;
2989
3026
  }
2990
- let i = null;
3027
+ let i = !0, s = null;
2991
3028
  if (null !== l) try {
2992
- i = JSON.parse(l);
3029
+ s = JSON.parse(l);
2993
3030
  } catch (t) {
2994
- i = null;
3031
+ s = null;
2995
3032
  try {
2996
- r.removeItem(e), sr(`${o} does not hold json: removed, the default is used`), jl.delete(e);
3033
+ r.removeItem(e), sr(`${o} does not hold json: removed, the default is used`);
2997
3034
  } catch (t) {
2998
- Ol(e, `${o} does not hold json and cannot be removed: the default is used`);
3035
+ i = !1, Sl(e, `${o} does not hold json and cannot be removed: the default is used`);
2999
3036
  }
3000
- l = void 0;
3001
3037
  }
3002
- return void 0 !== l && jl.delete(e), null === i ? (n && wl(e, t), t) : i;
3038
+ if (null === s && (s = t, n)) {
3039
+ const n = Fe(t);
3040
+ if (void 0 === n) ir(`${o}: cannot write the default: a value with no json text`);
3041
+ else try {
3042
+ r.setItem(e, n);
3043
+ } catch (t) {
3044
+ i = !1, Sl(e, `${o} cannot be written (storage full or blocked?): the default is used, not kept`);
3045
+ }
3046
+ }
3047
+ return i && Ol.delete(e), s;
3003
3048
  }
3004
- function wl(e, t) {
3049
+ function Nl(e, t) {
3005
3050
  if (!e) return ir(`kw_set_local_storage_value(): invalid key: key=${e}`), -1;
3006
3051
  const n = Fe(t);
3007
3052
  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();
3053
+ const r = jl();
3009
3054
  if (!r) return 0;
3010
3055
  try {
3011
3056
  return r.setItem(e, n), 0;
@@ -3013,8 +3058,8 @@ var gobjJs = function(e) {
3013
3058
  return ir(`kw_set_local_storage_value(): cannot save "${e}" (storage full or blocked?): ${t && t.message ? t.message : t}`), -1;
3014
3059
  }
3015
3060
  }
3016
- function Nl(e) {
3017
- const t = Tl();
3061
+ function $l(e) {
3062
+ const t = jl();
3018
3063
  if (t) if (e) try {
3019
3064
  t.removeItem(e);
3020
3065
  } catch (t) {
@@ -3022,45 +3067,45 @@ var gobjJs = function(e) {
3022
3067
  }
3023
3068
  else ir(`kw_remove_local_storage_value(): invalid key: key=${e}`);
3024
3069
  }
3025
- function $l(e, t) {
3026
- if (qo(e) || qo(t)) return !0;
3027
- if (Bo(e)) {
3070
+ function Al(e, t) {
3071
+ if (zo(e) || zo(t)) return !0;
3072
+ if (Yo(e)) {
3028
3073
  if (0 === e.length) return !0;
3029
3074
  for (let n = 0; n < e.length; n++) if (e[n] === t) return !0;
3030
- } else if (Ko(e)) {
3075
+ } else if (Bo(e)) {
3031
3076
  if (0 === Object.keys(e).length) return !0;
3032
3077
  for (let n in e) if (n === t) return !0;
3033
- } else if (Yo(e) && e === t) return !0;
3078
+ } else if (Jo(e) && e === t) return !0;
3034
3079
  return !1;
3035
3080
  }
3036
- function Al(e, t, n, r, o) {
3037
- if (e && !Qo(e) && ir("GObj bad instanceof"), !t) return null;
3038
- o || (o = yl);
3081
+ function Rl(e, t, n, r, o) {
3082
+ if (e && !Xo(e) && ir("GObj bad instanceof"), !t) return null;
3083
+ o || (o = vl);
3039
3084
  let l = [];
3040
- if (Bo(t)) for (let i = 0; i < t.length; i++) {
3085
+ if (Yo(t)) for (let i = 0; i < t.length; i++) {
3041
3086
  let s, a = t[i];
3042
- if (Ko(a)) s = fl(e, a, "id", "", 0);
3087
+ if (Bo(a)) s = gl(e, a, "id", "", 0);
3043
3088
  else {
3044
- if (!Yo(a)) continue;
3089
+ if (!Jo(a)) continue;
3045
3090
  s = a;
3046
3091
  }
3047
- $l(n, s) && o(a, r) && l.push(a);
3092
+ Al(n, s) && o(a, r) && l.push(a);
3048
3093
  }
3049
3094
  else {
3050
- if (!Ko(t)) return ir("kw_collect() BAD kw parameter"), null;
3095
+ if (!Bo(t)) return ir("kw_collect() BAD kw parameter"), null;
3051
3096
  for (let e of Object.keys(t)) {
3052
3097
  let i = t[e];
3053
- $l(n, e) && o(i, r) && l.push(i);
3098
+ Al(n, e) && o(i, r) && l.push(i);
3054
3099
  }
3055
3100
  }
3056
3101
  return l;
3057
3102
  }
3058
- function Rl(e, t) {
3103
+ function Dl(e, t) {
3059
3104
  if (!e) return -1;
3060
3105
  for (let n = 0; n < e.length; n++) if (e[n] && e[n].id === t) return n;
3061
3106
  return -1;
3062
3107
  }
3063
- function Dl(e, t, n) {
3108
+ function kl(e, t, n) {
3064
3109
  if (!e || !t) return ir("ERROR: str_in_list() list or str empty"), !1;
3065
3110
  let r = e.length;
3066
3111
  if (n) {
@@ -3072,7 +3117,7 @@ var gobjJs = function(e) {
3072
3117
  } else for (let n = 0; n < r; n++) if (e[n] === t) return !0;
3073
3118
  return !1;
3074
3119
  }
3075
- function kl(e, t) {
3120
+ function Cl(e, t) {
3076
3121
  try {
3077
3122
  let n = e.__md_iev__;
3078
3123
  if (n) return n[t];
@@ -3080,35 +3125,35 @@ var gobjJs = function(e) {
3080
3125
  return;
3081
3126
  }
3082
3127
  }
3083
- function Cl(e, t, n) {
3128
+ function Il(e, t, n) {
3084
3129
  let r = e.__md_iev__;
3085
3130
  r || (r = {}, e.__md_iev__ = r), r[t] = n;
3086
3131
  }
3087
- function Il(e, t, n, r) {
3088
- if (!Qo(e)) return ir("gobj is not a GObj"), null;
3132
+ function Pl(e, t, n, r) {
3133
+ if (!Xo(e)) return ir("gobj is not a GObj"), null;
3089
3134
  if (!t) return;
3090
- let o = kl(t, n);
3091
- o || (o = [], Cl(t, n, o));
3135
+ let o = Cl(t, n);
3136
+ o || (o = [], Il(t, n, o));
3092
3137
  try {
3093
- Bo(o) && o.unshift(r);
3138
+ Yo(o) && o.unshift(r);
3094
3139
  } catch (e) {
3095
3140
  ir(e);
3096
3141
  }
3097
3142
  }
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);
3143
+ function Ll(e, t, n, r) {
3144
+ if (!Xo(e)) return ir("gobj is not a GObj"), null;
3145
+ if (!Bo(t)) return ir("kw is not a dict"), null;
3146
+ let o = Cl(t, n);
3102
3147
  return o ? 0 === o.length ? (r && ir(`stack empty: ${n}`), null) : o[0] : (r && ir(`stack NOT FOUND: ${n}`), null);
3103
3148
  }
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;
3149
+ function Ul(e, t, n) {
3150
+ return Zo(n) ? _l(e, t, "__md_iev__`__msg_type__") : hl(e, t, "__md_iev__", "__msg_type__", n), 0;
3106
3151
  }
3107
- function Ul(e, t) {
3108
- return fl(e, t, "__md_iev__`__msg_type__", "", 0);
3152
+ function Fl(e, t) {
3153
+ return gl(e, t, "__md_iev__`__msg_type__", "", 0);
3109
3154
  }
3110
- function Fl(e, t, n) {
3111
- void 0 !== n && Yo(n) || (n = "");
3155
+ function Ml(e, t, n) {
3156
+ void 0 !== n && Jo(n) || (n = "");
3112
3157
  for (let r of Object.keys(e)) {
3113
3158
  if (!Object.prototype.hasOwnProperty.call(e, r)) continue;
3114
3159
  let o = (n.length ? "`" : "") + r;
@@ -3117,10 +3162,10 @@ var gobjJs = function(e) {
3117
3162
  r,
3118
3163
  e[r],
3119
3164
  n
3120
- ]), Ko(e[r]) && Fl(e[r], t, n), n = n.slice(0, -o.length);
3165
+ ]), Bo(e[r]) && Ml(e[r], t, n), n = n.slice(0, -o.length);
3121
3166
  }
3122
3167
  }
3123
- function Ml(e, t, n, r) {
3168
+ function Gl(e, t, n, r) {
3124
3169
  if (!e) return null;
3125
3170
  let o, l = e.length;
3126
3171
  for (o = 0; o < l; o++) {
@@ -3128,15 +3173,15 @@ var gobjJs = function(e) {
3128
3173
  if (l) {
3129
3174
  let e = l.id;
3130
3175
  if (e && e === n) return l;
3131
- if (r && ol(l, t)) {
3132
- let e = Ml(l[t], t, n, r);
3176
+ if (r && ll(l, t)) {
3177
+ let e = Gl(l[t], t, n, r);
3133
3178
  if (e) return e;
3134
3179
  }
3135
3180
  }
3136
3181
  }
3137
3182
  return null;
3138
3183
  }
3139
- function Gl(e) {
3184
+ function Vl(e) {
3140
3185
  function t(e) {
3141
3186
  let t = e.replace(/-/g, "+").replace(/_/g, "/");
3142
3187
  switch (t.length % 4) {
@@ -3167,10 +3212,10 @@ var gobjJs = function(e) {
3167
3212
  signature: t(n[2])
3168
3213
  };
3169
3214
  }
3170
- function Vl(e) {
3215
+ function Wl(e) {
3171
3216
  return null == e ? "" : String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
3172
3217
  }
3173
- var Wl = class {
3218
+ var xl = class {
3174
3219
  constructor(e) {
3175
3220
  this.html = e, Object.freeze(this);
3176
3221
  }
@@ -3178,15 +3223,15 @@ var gobjJs = function(e) {
3178
3223
  return this.html;
3179
3224
  }
3180
3225
  };
3181
- function xl(e) {
3182
- return e instanceof Wl;
3183
- }
3184
3226
  function Kl(e) {
3227
+ return e instanceof xl;
3228
+ }
3229
+ function Bl(e) {
3185
3230
  const t = document.createElement("template");
3186
3231
  return t.innerHTML = e.html.trim(), t.content;
3187
3232
  }
3188
- var Bl = !1, Yl = /* @__PURE__ */ new Set();
3189
- function Jl(e) {
3233
+ var Yl = !1, Jl = /* @__PURE__ */ new Set();
3234
+ function ql(e) {
3190
3235
  const t = document.createElement("template");
3191
3236
  return t.innerHTML = e.trim(), t.content.firstChild;
3192
3237
  }
@@ -3194,41 +3239,52 @@ var gobjJs = function(e) {
3194
3239
  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
3240
  return `${n}.${r}${o > 0 ? "-" : "+"}${t(Math.floor(Math.abs(o) / 60), 2)}${t(Math.abs(o) % 60, 2)}`;
3196
3241
  }
3197
- function ql(e, t) {
3242
+ function zl(e, t) {
3198
3243
  if (!e) throw "ERROR: index_in_list() list empty";
3199
3244
  for (let n = 0; n < e.length; n++) if (t === e[n]) return n;
3200
3245
  return -1;
3201
3246
  }
3202
- function zl() {
3203
- let e = "";
3204
- const t = Tl();
3205
- if (t) {
3247
+ function Ql() {
3248
+ const e = "undefined" != typeof window && window.crypto || globalThis.crypto;
3249
+ if (e && "function" == typeof e.randomUUID) return e.randomUUID();
3250
+ const t = /* @__PURE__ */ new Uint8Array(16);
3251
+ if (e && "function" == typeof e.getRandomValues) e.getRandomValues(t);
3252
+ else for (let e = 0; e < t.length; e++) t[e] = Math.floor(256 * Math.random());
3253
+ t[6] = 15 & t[6] | 64, t[8] = 63 & t[8] | 128;
3254
+ const n = Array.from(t, (e) => e.toString(16).padStart(2, "0")).join("");
3255
+ return `${n.slice(0, 8)}-${n.slice(8, 12)}-${n.slice(12, 16)}-${n.slice(16, 20)}-${n.slice(20)}`;
3256
+ }
3257
+ var Xl = null;
3258
+ function Zl() {
3259
+ if (Xl) return Xl;
3260
+ const e = jl();
3261
+ if (!e) return Xl = Ql();
3262
+ let t = null;
3263
+ try {
3264
+ t = e.getItem("host_uuid");
3265
+ } catch (e) {
3266
+ return Sl("host_uuid", "node_uuid(): localStorage cannot be read (storage blocked?): a uuid of this page only"), Xl = Ql();
3267
+ }
3268
+ if (!t) {
3269
+ t = Ql();
3206
3270
  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
- }
3271
+ e.setItem("host_uuid", t);
3272
+ } catch (e) {
3273
+ Sl("host_uuid", "node_uuid(): localStorage cannot be written (storage full or blocked?): a uuid of this page only");
3218
3274
  }
3219
- } else e = "undefined" != typeof globalThis && globalThis.crypto?.randomUUID ? globalThis.crypto.randomUUID() : "00000000-0000-0000-0000-000000000000";
3220
- return e;
3275
+ }
3276
+ return Xl = t;
3221
3277
  }
3222
- function Ql(e) {
3278
+ function ei(e) {
3223
3279
  let t = null;
3224
3280
  return "function" != typeof e && "object" != typeof e || (t = ("" + e).match(/function\s*([\w\$]*)\s*\(/)), null !== t ? t[1] + "()" : "";
3225
3281
  }
3226
- var Xl = 256, Zl = 1e5;
3227
- function ei(e) {
3282
+ var ti = 256, ni = 1e5;
3283
+ function ri(e) {
3228
3284
  const t = String(e).replace(/`/g, "``");
3229
3285
  return "[" === t[0] ? "[" + t : t;
3230
3286
  }
3231
- function ti(e) {
3287
+ function oi(e) {
3232
3288
  if ("string" != typeof e) return null;
3233
3289
  let t = [], n = "";
3234
3290
  for (let r = 0; r < e.length; r++) if ("`" !== e[r]) n += e[r];
@@ -3249,14 +3305,14 @@ var gobjJs = function(e) {
3249
3305
  return null !== t ? t : "[" === e[0] && "[" === e[1] ? e.slice(1) : e;
3250
3306
  });
3251
3307
  }
3252
- function ni(e, t) {
3308
+ function li(e, t) {
3253
3309
  return e === t || null !== e && null !== t && "object" == typeof e && "object" == typeof t && JSON.stringify(e) === JSON.stringify(t);
3254
3310
  }
3255
- function ri(e) {
3311
+ function ii(e) {
3256
3312
  return "persistent-attrs-" + kt(e);
3257
3313
  }
3258
- function oi(e, t) {
3259
- if (Yo(t)) {
3314
+ function si(e, t) {
3315
+ if (Jo(t)) {
3260
3316
  if (-1 === t.indexOf("^")) {
3261
3317
  let n, r, o = e.fkey;
3262
3318
  if (1 !== Vo(o)) return ir("bad fkey 1"), ir(e), ir(t), null;
@@ -3279,13 +3335,13 @@ var gobjJs = function(e) {
3279
3335
  };
3280
3336
  }
3281
3337
  }
3282
- return Ko(t) ? {
3338
+ return Bo(t) ? {
3283
3339
  topic_name: t.topic_name,
3284
3340
  id: t.id,
3285
3341
  hook_name: t.hook_name
3286
3342
  } : (ir("bad fkey 3"), ir(e), ir(t), null);
3287
3343
  }
3288
- var li = [
3344
+ var ai = [
3289
3345
  "string",
3290
3346
  "integer",
3291
3347
  "object",
@@ -3295,7 +3351,7 @@ var gobjJs = function(e) {
3295
3351
  "real",
3296
3352
  "boolean",
3297
3353
  "blob"
3298
- ], ii = [
3354
+ ], ui = [
3299
3355
  "persistent",
3300
3356
  "required",
3301
3357
  "notnull",
@@ -3307,7 +3363,7 @@ var gobjJs = function(e) {
3307
3363
  "stats",
3308
3364
  "rstats",
3309
3365
  "pstats"
3310
- ], si = [
3366
+ ], _i = [
3311
3367
  "hook",
3312
3368
  "fkey",
3313
3369
  "enum",
@@ -3336,7 +3392,7 @@ var gobjJs = function(e) {
3336
3392
  "coordinates",
3337
3393
  "gbuffer"
3338
3394
  ];
3339
- function ai(e) {
3395
+ function ci(e) {
3340
3396
  let t = {
3341
3397
  name: e.id,
3342
3398
  header: e.header,
@@ -3355,7 +3411,7 @@ var gobjJs = function(e) {
3355
3411
  if (!e.flag) return t;
3356
3412
  for (let n = 0; n < e.flag.length; n++) {
3357
3413
  let r = e.flag[n];
3358
- if (Dl(si, r)) {
3414
+ if (kl(_i, r)) {
3359
3415
  switch (r) {
3360
3416
  case "enum":
3361
3417
  t.enum_list = e.enum;
@@ -3369,7 +3425,7 @@ var gobjJs = function(e) {
3369
3425
  case "file": t.is_file = !0;
3370
3426
  }
3371
3427
  t.type = r;
3372
- } else if (Dl(ii, r)) switch (r) {
3428
+ } else if (kl(ui, r)) switch (r) {
3373
3429
  case "writable":
3374
3430
  t.is_writable = !0;
3375
3431
  break;
@@ -3382,23 +3438,23 @@ var gobjJs = function(e) {
3382
3438
  }
3383
3439
  return t.is_file && (t.type = "file"), t;
3384
3440
  }
3385
- var ui = [
3441
+ var fi = [
3386
3442
  k(E.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
3387
3443
  k(E.DTP_BOOLEAN, "periodic", 0, 0, "True for periodic timeouts"),
3388
3444
  k(E.DTP_INTEGER, "msec", 0, 0, "Timeout in milliseconds"),
3389
3445
  D()
3390
- ], _i = {
3446
+ ], gi = {
3391
3447
  periodic: !1,
3392
3448
  msec: 0,
3393
3449
  timer_id: -1
3394
- }, ci = null;
3395
- function fi(e, t, n, r) {
3450
+ }, di = null;
3451
+ function bi(e, t, n, r) {
3396
3452
  let o = e.priv, l = o.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
3397
3453
  return o.periodic && o.msec > 0 ? o.timer_id = setTimeout(function() {
3398
3454
  jn(e, "EV_TIMEOUT", {}, e);
3399
3455
  }, o.msec) : o.timer_id = -1, Ln(e, l, {}), o.periodic || -1 !== o.timer_id || Tt(e) && mt(e), 0;
3400
3456
  }
3401
- var gi = {
3457
+ var pi = {
3402
3458
  mt_create: function(e) {
3403
3459
  let t = e.priv, n = nn(e, "subscriber");
3404
3460
  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 +3478,19 @@ var gobjJs = function(e) {
3422
3478
  },
3423
3479
  mt_destroy: function(e) {}
3424
3480
  };
3425
- function di(e) {
3481
+ function mi(e) {
3426
3482
  return "number" == typeof e && Number.isFinite(e) ? Math.round(e) : e;
3427
3483
  }
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);
3484
+ function hi(e, t) {
3485
+ return e instanceof I ? "C_TIMER" !== Dt(e) ? (ir("not C_TIMER GObj"), -1) : (an(e, "periodic", !1), void un(e, "msec", mi(t))) : (ir("not GObj TYPE"), -1);
3430
3486
  }
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);
3487
+ function yi(e, t) {
3488
+ return e instanceof I ? "C_TIMER" !== Dt(e) ? (ir("not C_TIMER GObj"), -1) : (an(e, "periodic", !0), void un(e, "msec", mi(t))) : (ir("not GObj TYPE"), -1);
3433
3489
  }
3434
- function mi(e) {
3490
+ function vi(e) {
3435
3491
  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
3492
  }
3437
- var hi = [
3493
+ var Ei = [
3438
3494
  k(E.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
3439
3495
  k(E.DTP_BOOLEAN, "browser_beforeunload", 0, !1, "Set true to refreshing browser"),
3440
3496
  k(E.DTP_STRING, "__username__", 0, "", "Username"),
@@ -3454,60 +3510,60 @@ var gobjJs = function(e) {
3454
3510
  k(E.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
3455
3511
  k(E.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
3456
3512
  D()
3457
- ], yi = { gobj_timer: null }, vi = null;
3458
- function Ei(e, t, n, r) {
3513
+ ], Ti = { gobj_timer: null }, ji = null;
3514
+ function Oi(e, t, n, r) {
3459
3515
  let o = Qt(e, t);
3460
- return Ko(o) || (o = {}), o[n] = r, rn(e, t, o), it(e, t);
3516
+ return Bo(o) || (o = {}), o[n] = r, rn(e, t, o), it(e, t);
3461
3517
  }
3462
- var Ti = -2147483648, ji = 2147483647;
3463
- function Oi(e) {
3518
+ var Si = -2147483648, wi = 2147483647;
3519
+ function Ni(e) {
3464
3520
  if (!0 === e || !1 === e) return e;
3465
- if ("number" == typeof e) return !Number.isInteger(e) || e < Ti || e > ji ? null : 0 !== e;
3521
+ if ("number" == typeof e) return !Number.isInteger(e) || e < Si || e > wi ? null : 0 !== e;
3466
3522
  if ("string" != typeof e || "" === e) return null;
3467
3523
  let t = e.toLowerCase();
3468
3524
  if ("set" === t) return !0;
3469
3525
  if ("reset" === t) return !1;
3470
3526
  if (/^-?(0|[1-9][0-9]*)$/.test(e)) {
3471
3527
  let t = Number(e);
3472
- return t < Ti || t > ji ? null : 0 !== t;
3528
+ return t < Si || t > wi ? null : 0 !== t;
3473
3529
  }
3474
3530
  return "true" === t || "yes" === t || "on" === t || "false" !== t && "no" !== t && "off" !== t && null;
3475
3531
  }
3476
- function Si() {
3532
+ function $i() {
3477
3533
  return `${$t()}^${Nt()}`;
3478
3534
  }
3479
- function wi(e, t, n, r) {
3535
+ function Ai(e, t, n, r) {
3480
3536
  return Ln(e, t, n), 0;
3481
3537
  }
3482
- var Ni = {
3538
+ var Ri = {
3483
3539
  mt_create: function(e) {
3484
3540
  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) {
3541
+ _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) {
3486
3542
  let t = Qt(e, "trace_levels");
3487
- if (!Ko(t)) return 0;
3543
+ if (!Bo(t)) return 0;
3488
3544
  let n = t.__global_trace__;
3489
- if (Bo(n)) {
3545
+ if (Yo(n)) {
3490
3546
  ae(4294967295, !1);
3491
3547
  for (let e of n) ie(e, !0);
3492
3548
  }
3493
3549
  for (const [n, r] of Object.entries(t)) {
3494
3550
  let t = et(n);
3495
- if (t) if (Bo(r)) {
3551
+ if (t) if (Yo(r)) {
3496
3552
  be(t, null, !1);
3497
3553
  for (let e of r) be(t, e, !0);
3498
3554
  } else ir(`${Rt(e)}: trace_levels of ${n} MUST be a list`);
3499
3555
  }
3500
3556
  }(e), function(e) {
3501
3557
  let t = Qt(e, "no_trace_levels");
3502
- if (!Ko(t)) return 0;
3558
+ if (!Bo(t)) return 0;
3503
3559
  let n = t.__global_no_trace__;
3504
- if (Bo(n)) {
3560
+ if (Yo(n)) {
3505
3561
  ue(4294967295, !1);
3506
3562
  for (let e of n) se(e, !0);
3507
3563
  }
3508
3564
  for (const [n, r] of Object.entries(t)) {
3509
3565
  let t = et(n);
3510
- if (t) if (Bo(r)) {
3566
+ if (t) if (Yo(r)) {
3511
3567
  pe(t, null, !1);
3512
3568
  for (let e of r) pe(t, e, !0);
3513
3569
  } else ir(`${Rt(e)}: no_trace_levels of ${n} MUST be a list`);
@@ -3516,10 +3572,10 @@ var gobjJs = function(e) {
3516
3572
  },
3517
3573
  mt_writing: function(e, t) {},
3518
3574
  mt_start: function(e) {
3519
- return pi(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
3575
+ return yi(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
3520
3576
  },
3521
3577
  mt_stop: function(e) {
3522
- return mi(e.priv.gobj_timer), yt(e), 0;
3578
+ return vi(e.priv.gobj_timer), yt(e), 0;
3523
3579
  },
3524
3580
  mt_destroy: function(e) {},
3525
3581
  mt_play: function(e) {
@@ -3536,24 +3592,24 @@ var gobjJs = function(e) {
3536
3592
  case "get-global-no-trace": return o(0, 0, null, null, ce());
3537
3593
  case "set-global-trace":
3538
3594
  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);
3595
+ let r = "set-global-no-trace" === t, l = n.level, i = Ni(n.set);
3596
+ return l ? null === i ? o(0, -1, `${$i()}: bitmask set or re-set?`, null, null) : (r ? se(l, i) : ie(l, i)) < 0 ? o(0, -1, `${$i()}: global trace level not found: ${l}`, null, null) : r ? (Oi(e, "no_trace_levels", "__global_no_trace__", ce()), o(0, 0, null, null, ce())) : (Oi(e, "trace_levels", "__global_trace__", _e()), o(0, 0, null, null, _e())) : o(0, -1, `${$i()}: what level?`, null, null);
3541
3597
  }
3542
3598
  case "get-gclass-trace":
3543
3599
  case "get-gclass-no-trace":
3544
3600
  case "set-gclass-trace":
3545
3601
  case "set-gclass-no-trace": {
3546
3602
  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);
3603
+ if (!i) return o(0, -1, `${$i()}: what gclass is '${l}'?`, null, null);
3548
3604
  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);
3605
+ let s = n.level, a = Ni(n.set);
3606
+ return s ? null === a ? o(0, -1, `${$i()}: bitmask set or re-set?`, null, null) : (r ? pe(i, s, a) : be(i, s, a)) < 0 ? o(0, -1, `${$i()}: trace level of ${l} not found: ${s}`, null, null) : r ? (Oi(e, "no_trace_levels", l, de(i)), o(0, 0, null, null, de(i))) : (Oi(e, "trace_levels", l, ge(i)), o(0, 0, null, null, fe(i))) : o(0, -1, `${$i()}: what level?`, null, null);
3551
3607
  }
3552
- default: return o(0, -1, `${Si()}: command not available: ${t}`, null, null);
3608
+ default: return o(0, -1, `${$i()}: command not available: ${t}`, null, null);
3553
3609
  }
3554
3610
  }
3555
3611
  };
3556
- var $i = "ievent_gate_stack", Ai = [
3612
+ var Di = "ievent_gate_stack", ki = [
3557
3613
  k(E.DTP_STRING, "wanted_yuno_role", A.SDF_RD, "", "wanted yuno role"),
3558
3614
  k(E.DTP_STRING, "wanted_yuno_name", A.SDF_RD, "", "wanted yuno name"),
3559
3615
  k(E.DTP_STRING, "wanted_yuno_service", A.SDF_RD, "", "wanted yuno service"),
@@ -3565,20 +3621,20 @@ var gobjJs = function(e) {
3565
3621
  k(E.DTP_STRING, "cert_pem", A.SDF_PERSIST, "", "SSL server certification, PEM str format"),
3566
3622
  k(E.DTP_JSON, "extra_info", A.SDF_RD, "{}", "dict data set by user, added to the identity card msg."),
3567
3623
  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"),
3624
+ k(E.DTP_INTEGER, "timeout_retry", A.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"),
3569
3625
  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
3626
  k(E.DTP_INTEGER, "timeout_idack", A.SDF_RD, "5000", "timeout waiting idAck"),
3571
3627
  k(E.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
3572
3628
  D()
3573
- ], Ri = [
3629
+ ], Ci = [
3574
3630
  ["ievents", "Trace inter-events with metadata of kw"],
3575
3631
  ["ievents2", "Trace inter-events with full kw"],
3576
3632
  ["identity-card", "Trace identity_card messages"]
3577
3633
  ];
3578
- function Di(e) {
3634
+ function Ii(e) {
3579
3635
  return !!(3 & X(e));
3580
3636
  }
3581
- var ki = {
3637
+ var Pi = {
3582
3638
  url: null,
3583
3639
  remote_yuno_name: null,
3584
3640
  remote_yuno_role: null,
@@ -3591,8 +3647,8 @@ var gobjJs = function(e) {
3591
3647
  retry_ms_before_session: 0,
3592
3648
  session_since: 0,
3593
3649
  retry_floor_warned: !1
3594
- }, Ci = null;
3595
- function Ii(e) {
3650
+ }, Li = null;
3651
+ function Ui(e) {
3596
3652
  e.priv.websocket && ir("Websocket ALREADY setup");
3597
3653
  const t = tn(e, "url");
3598
3654
  ar(`====> Starting WebSocket to '${t}' (${kt(e)})`);
@@ -3607,7 +3663,7 @@ var gobjJs = function(e) {
3607
3663
  code: 1006,
3608
3664
  reason: r.message,
3609
3665
  was_clean: !1
3610
- }, e) < 0 && bi(e.priv.gobj_timer, zi(e)), null;
3666
+ }, e) < 0 && hi(e.priv.gobj_timer, Zi(e)), null;
3611
3667
  }
3612
3668
  return r ? (r.onopen = () => {
3613
3669
  n !== e.priv.ws_seq || Ut(e) || jn(e, "EV_ON_OPEN", {
@@ -3629,7 +3685,7 @@ var gobjJs = function(e) {
3629
3685
  }, e));
3630
3686
  }, r) : (ir(`${kt(e)}: Failed to initialize WebSocket.`), null);
3631
3687
  }
3632
- function Pi(e, t = 1e3, n = "") {
3688
+ function Fi(e, t = 1e3, n = "") {
3633
3689
  let r = e.priv, o = r.websocket;
3634
3690
  if (r.websocket = null, o && o.readyState !== WebSocket.CLOSED && o.readyState !== WebSocket.CLOSING) {
3635
3691
  ar(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
@@ -3640,12 +3696,12 @@ var gobjJs = function(e) {
3640
3696
  }
3641
3697
  } else sr("WebSocket is already closed or in the process of closing.");
3642
3698
  }
3643
- function Li(e, t) {
3699
+ function Mi(e, t) {
3644
3700
  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);
3701
+ "ST_SESSION" === fn(e) && (performance.now() - n.session_since < Xi(e).max && (n.retry_ms = n.retry_ms_before_session), n.retry_ms_before_session = 0), Fi(e, 4002, t);
3646
3702
  }
3647
- var Ui = 128;
3648
- function Fi(e, t) {
3703
+ var Gi = 128;
3704
+ function Vi(e, t) {
3649
3705
  let n = String(e), r = To(n);
3650
3706
  if (null !== r && (n = r), n.length > t) {
3651
3707
  let e = t, r = n.charCodeAt(e);
@@ -3653,7 +3709,7 @@ var gobjJs = function(e) {
3653
3709
  }
3654
3710
  return n;
3655
3711
  }
3656
- function Mi(e, t, n) {
3712
+ function Wi(e, t, n) {
3657
3713
  let r = Hl();
3658
3714
  try {
3659
3715
  ar("\n" + r + " " + t + "\n"), $o(n);
@@ -3661,17 +3717,17 @@ var gobjJs = function(e) {
3661
3717
  ar("ERROR in trace_inter_event: " + e);
3662
3718
  }
3663
3719
  }
3664
- var Gi = class {
3720
+ var xi = class {
3665
3721
  constructor(e, t) {
3666
3722
  this.event = e, this.kw = t || {};
3667
3723
  }
3668
3724
  };
3669
- function Vi(e, t, n, r) {
3725
+ function Ki(e, t, n, r) {
3670
3726
  return function(e, t) {
3671
3727
  let n = e.priv, r = JSON.stringify(t);
3672
- if (Di(e)) {
3728
+ if (Ii(e)) {
3673
3729
  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);
3730
+ l ? l(o, t, 1, r.length) : Wi(0, o, t);
3675
3731
  }
3676
3732
  if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return sr(`${kt(e)}: send_iev(): websocket not open, message lost`), -1;
3677
3733
  try {
@@ -3681,21 +3737,21 @@ var gobjJs = function(e) {
3681
3737
  }
3682
3738
  return 0;
3683
3739
  }(e, function(e, t) {
3684
- return Xo(e) ? (ir("iev_create() event NULL"), null) : new Gi(e, t);
3740
+ return Zo(e) ? (ir("iev_create() event NULL"), null) : new xi(e, t);
3685
3741
  }(t, n));
3686
3742
  }
3687
- function Wi(e, t, n) {
3688
- return Xo(n) && (n = tn(e, "wanted_yuno_service")), {
3743
+ function Bi(e, t, n) {
3744
+ return Zo(n) && (n = tn(e, "wanted_yuno_service")), {
3689
3745
  dst_yuno: tn(e, "wanted_yuno_name"),
3690
3746
  dst_role: tn(e, "wanted_yuno_role"),
3691
3747
  dst_service: n,
3692
3748
  src_yuno: Nt(),
3693
3749
  src_role: $t(),
3694
3750
  src_service: t,
3695
- host: zl()
3751
+ host: Zl()
3696
3752
  };
3697
3753
  }
3698
- function xi(e) {
3754
+ function Yi(e) {
3699
3755
  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
3756
  s && s.length || (s = Qt(wt(), "required_services"));
3701
3757
  let a = {
@@ -3713,32 +3769,32 @@ var gobjJs = function(e) {
3713
3769
  username: tn(wt(), "__username__"),
3714
3770
  launch_id: 0,
3715
3771
  yuno_startdate: tn(wt(), "start_date"),
3716
- id: zl(),
3772
+ id: Zl(),
3717
3773
  user_agent: "undefined" != typeof window ? window.navigator.userAgent : "",
3718
3774
  language: "undefined" != typeof window ? window.navigator.language : "",
3719
3775
  required_services: s
3720
3776
  };
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);
3777
+ return Pl(e, a, Di, Bi(e, Rt(It(e)), null)), Ul(e, a, "__identity__"), hi(t.gobj_timer, en(e, "timeout_idack")), Ki(e, "EV_IDENTITY_CARD", a);
3722
3778
  }
3723
- function Ki(e, t) {
3724
- if (Xo(t.event)) return -1;
3779
+ function Ji(e, t) {
3780
+ if (Zo(t.event)) return -1;
3725
3781
  let n = {}, r = t.__global__, o = t.__config__, l = t.__filter__, i = t.__service__, s = t.subscriber;
3726
3782
  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);
3783
+ return Pl(e, n, Di, Bi(e, Rt(s), i)), Ul(e, n, "__subscribing__"), Ki(e, t.event, n);
3728
3784
  }
3729
- function Bi(e, t, n, r) {
3785
+ function qi(e, t, n, r) {
3730
3786
  let o = e.priv;
3731
- return Tt(e) && (o.websocket = Ii(e)), 0;
3787
+ return Tt(e) && (o.websocket = Ui(e)), 0;
3732
3788
  }
3733
- function Yi(e, t, n, r) {
3734
- return ar("Websocket opened: " + e.priv.url), xi(e), 0;
3789
+ function Hi(e, t, n, r) {
3790
+ return ar("Websocket opened: " + e.priv.url), Yi(e), 0;
3735
3791
  }
3736
- function Ji(e, t, n, r) {
3792
+ function zi(e, t, n, r) {
3737
3793
  let o = e.priv, l = n.url;
3738
3794
  if (void 0 !== n.ws_seq && n.ws_seq !== o.ws_seq) return 0;
3739
3795
  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", {
3796
+ const i = Vi(void 0 === n.reason ? "" : n.reason, 256);
3797
+ return Ii(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
3798
  url: l,
3743
3799
  remote_yuno_name: o.remote_yuno_name,
3744
3800
  remote_yuno_role: o.remote_yuno_role,
@@ -3754,33 +3810,33 @@ var gobjJs = function(e) {
3754
3810
  code: n.code,
3755
3811
  reason: i,
3756
3812
  was_clean: n.was_clean
3757
- })), Tt(e) && bi(o.gobj_timer, zi(e)), 0;
3813
+ })), Tt(e) && hi(o.gobj_timer, Zi(e)), 0;
3758
3814
  }
3759
- var Hi = 1e3;
3760
- function qi(e) {
3815
+ var Qi = 1e3;
3816
+ function Xi(e) {
3761
3817
  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), {
3818
+ return n >= Qi || (t.retry_floor_warned || (t.retry_floor_warned = !0, sr(`${kt(e)}: timeout_retry ${n} ms is below ${Qi} ms: ${Qi} ms is used`)), n = Qi), r >= n || (r = n), {
3763
3819
  base: n,
3764
3820
  max: r
3765
3821
  };
3766
3822
  }
3767
- function zi(e) {
3823
+ function Zi(e) {
3768
3824
  let t = e.priv;
3769
- const { base: n, max: r } = qi(e);
3825
+ const { base: n, max: r } = Xi(e);
3770
3826
  t.retry_ms = t.retry_ms ? Math.min(2 * t.retry_ms, r) : n;
3771
3827
  let o = .2 * t.retry_ms, l = t.retry_ms - o + 2 * Math.random() * o;
3772
3828
  return Math.max(1, Math.round(l));
3773
3829
  }
3774
- function Qi(e, t, n, r) {
3775
- return xi(e), 0;
3830
+ function es(e, t, n, r) {
3831
+ return Yi(e), 0;
3776
3832
  }
3777
- function Xi(e, t, n, r) {
3833
+ function ts(e, t, n, r) {
3778
3834
  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", "");
3835
+ vi(o.gobj_timer);
3836
+ let l = Ll(e, n, Di, !0), i = gl(e, l, "src_yuno", ""), s = gl(e, l, "src_role", ""), a = gl(e, l, "src_service", "");
3781
3837
  _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", {
3838
+ 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", {});
3839
+ if (u < 0) Fi(e), Ln(e, "EV_ON_ID_NAK", {
3784
3840
  url: tn(e, "url"),
3785
3841
  result: u,
3786
3842
  comment: _,
@@ -3797,11 +3853,11 @@ var gobjJs = function(e) {
3797
3853
  services_roles: f
3798
3854
  })), o.inside_on_open = !1, function(e) {
3799
3855
  let t = In(e, null, null, null);
3800
- for (let n = 0; n < t.length; n++) Ki(e, t[n]);
3856
+ for (let n = 0; n < t.length; n++) Ji(e, t[n]);
3801
3857
  }(e);
3802
3858
  return 0;
3803
3859
  }
3804
- function Zi(e, t, n, r) {
3860
+ function ns(e, t, n, r) {
3805
3861
  let o = e.priv.url, l = function(e, t) {
3806
3862
  let n;
3807
3863
  try {
@@ -3820,49 +3876,49 @@ var gobjJs = function(e) {
3820
3876
  kw: o || {}
3821
3877
  } : (sr(`${kt(e)}: parsing inter_event: kw not a json object`), null) : (sr(`${kt(e)}: parsing inter_kw: no kw`), null);
3822
3878
  }(e, n.data);
3823
- if (!l) return sr(`${kt(e)}: frame dropped from ${o}: ${Fi(n.data, 256)}`), -1;
3824
- if (Di(e)) {
3879
+ if (!l) return sr(`${kt(e)}: frame dropped from ${o}: ${Vi(n.data, 256)}`), -1;
3880
+ if (Ii(e)) {
3825
3881
  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);
3882
+ r ? r(e, l, 2, t) : Wi(0, e, l);
3827
3883
  }
3828
3884
  let i = l.event, s = l.kw;
3829
3885
  if ("ST_SESSION" !== fn(e)) {
3830
3886
  if ("ev_identity_card_ack" === String(i).toLowerCase()) {
3831
3887
  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;
3888
+ } else sr(`${kt(e)}: event UNKNOWN in not-session state ${Vi(i, Gi)}`);
3889
+ return Mi(e, "event out of session"), -1;
3834
3890
  }
3835
3891
  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;
3892
+ let a = Fl(e, s), u = Ll(e, s, Di), _ = gl(e, u, "dst_role", "");
3893
+ if (!Zo(_) && _.toLowerCase() !== String($t()).toLowerCase()) return sr(`${kt(e)}: It's not my role, dst_role: ${Vi(_, Gi)}, my_role: ${$t()}, event: ${Vi(i, Gi)}`), Mi(e, "not my role"), -1;
3894
+ let c = gl(e, u, "dst_yuno", "");
3895
+ if (!Zo(c) && c.toLowerCase() !== String(Nt()).toLowerCase()) return sr(`${kt(e)}: It's not my name, dst_yuno: ${Vi(c, Gi)}, my_name: ${Nt()}, event: ${Vi(i, Gi)}`), Mi(e, "not my name"), -1;
3896
+ let f = gl(e, u, "dst_service", "");
3897
+ if ("__subscribing__" === a) return sr(`${kt(e)}: subscription event ignored, I'm client (service: ${Vi(f, Gi)}, event: ${Vi(i, Gi)})`), -1;
3898
+ if ("__unsubscribing__" === a) return sr(`${kt(e)}: unsubscription event ignored, I'm client (service: ${Vi(f, Gi)}, event: ${Vi(i, Gi)})`), -1;
3843
3899
  const g = Sn(i, 0, !1);
3844
3900
  if (g && dn(e, g.event_name, 0)) {
3845
3901
  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);
3902
+ 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 '${Vi(i, Gi)}'`), -1);
3847
3903
  }
3848
- if (!Xo(f)) {
3904
+ if (!Zo(f)) {
3849
3905
  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);
3906
+ 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 '${Vi(i, Gi)}'`), -1) : (sr(`${kt(e)}: event for a service that is gone, DROPPED: service '${Vi(f, Gi)}', ev '${Vi(i, Gi)}'`), 0);
3851
3907
  }
3852
3908
  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);
3909
+ return d ? (Ln(e, d.event_name, s), 0) : (sr(`${kt(e)}: event that no gclass declares public, DROPPED: ev '${Vi(i, Gi)}'`), -1);
3854
3910
  }
3855
- function es(e, t, n, r) {
3911
+ function rs(e, t, n, r) {
3856
3912
  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;
3913
+ return sr(`${kt(e)}: ${t} not served by this client, DROPPED: ${r.replace(/_/g, "")} '${Vi(o, Gi)}', service '${Vi(l, Gi)}'`), -1;
3858
3914
  }
3859
- function ts(e, t, n, r) {
3860
- return es(e, t, n, "__stats__");
3915
+ function os(e, t, n, r) {
3916
+ return rs(e, t, n, "__stats__");
3861
3917
  }
3862
- function ns(e, t, n, r) {
3863
- return es(e, t, n, "__command__");
3918
+ function ls(e, t, n, r) {
3919
+ return rs(e, t, n, "__command__");
3864
3920
  }
3865
- var rs = {
3921
+ var is = {
3866
3922
  mt_create: function(e) {
3867
3923
  let t = e.priv;
3868
3924
  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);
@@ -3892,52 +3948,52 @@ var gobjJs = function(e) {
3892
3948
  code: 1e3,
3893
3949
  reason: "restarted",
3894
3950
  was_clean: !0
3895
- }, e), mi(t.gobj_timer)), t.websocket = Ii(e), 0;
3951
+ }, e), vi(t.gobj_timer)), t.websocket = Ui(e), 0;
3896
3952
  },
3897
3953
  mt_stop: function(e) {
3898
3954
  let t = e.priv;
3899
- return mi(t.gobj_timer), t.websocket && Pi(e), 0;
3955
+ return vi(t.gobj_timer), t.websocket && Fi(e), 0;
3900
3956
  },
3901
3957
  mt_destroy: function(e) {},
3902
3958
  mt_stats: function(e, t, n, r) {
3903
3959
  if ("ST_SESSION" !== fn(e)) return ir("Not in session"), null;
3904
3960
  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", {
3961
+ let o = Bi(e, Rt(r), gl(e, n, "service", null, 0)), l = pl(e, n, "__md_stats__", null, Un.KW_EXTRACT);
3962
+ return l || (l = {}), Pl(e, n, "stats_stack", {
3907
3963
  stats: t,
3908
3964
  kw: l
3909
- }), Il(e, n, $i, o), n.__stats__ = t, Ll(e, n, "__stats__"), Vi(e, "EV_MT_STATS", n, r), null;
3965
+ }), Pl(e, n, Di, o), n.__stats__ = t, Ul(e, n, "__stats__"), Ki(e, "EV_MT_STATS", n, r), null;
3910
3966
  },
3911
3967
  mt_command_parser: function(e, t, n, r) {
3912
3968
  if ("ST_SESSION" !== fn(e)) return ir("Not in session"), null;
3913
3969
  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", {
3970
+ let o = Bi(e, Rt(r), gl(e, n, "service", "", 0)), l = pl(e, n, "__md_command__", null, Un.KW_EXTRACT);
3971
+ return l || (l = {}), Pl(e, n, "command_stack", {
3916
3972
  command: t,
3917
3973
  kw: l
3918
- }), Il(e, n, $i, o), n.__command__ = t, Ll(e, n, "__command__"), Vi(e, "EV_MT_COMMAND", n, r), null;
3974
+ }), Pl(e, n, Di, o), n.__command__ = t, Ul(e, n, "__command__"), Ki(e, "EV_MT_COMMAND", n, r), null;
3919
3975
  },
3920
3976
  mt_inject_event: function(e, t, n, r) {
3921
3977
  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));
3978
+ if (n = Do({}, Bo(n) ? n : {}), Bo(n.__md_iev__) && (n.__md_iev__ = Ao(n.__md_iev__)), Ll(e, n, Di));
3923
3979
  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);
3980
+ let o = Bi(e, Rt(r), gl(e, n, "__service__", 0, 0));
3981
+ Po(n, "__service__"), Pl(e, n, "__message__", t), Pl(e, n, Di, o);
3926
3982
  }
3927
- return Ll(e, n, "__message__"), Vi(e, t, n, r);
3983
+ return Ul(e, n, "__message__"), Ki(e, t, n, r);
3928
3984
  },
3929
3985
  mt_subscription_added: function(e, t) {
3930
3986
  let n = e.priv;
3931
- return "ST_SESSION" === fn(e) && n.websocket ? n.inside_on_open ? 0 : Ki(e, t) : 0;
3987
+ return "ST_SESSION" === fn(e) && n.websocket ? n.inside_on_open ? 0 : Ji(e, t) : 0;
3932
3988
  },
3933
3989
  mt_subscription_deleted: function(e, t) {
3934
3990
  let n = e.priv;
3935
3991
  if ("ST_SESSION" !== fn(e) || !n.websocket) return 0;
3936
3992
  if (n.inside_on_open) return 0;
3937
- if (Xo(t.event)) return 0;
3993
+ if (Zo(t.event)) return 0;
3938
3994
  let r = {}, o = t.__global__, l = t.__config__, i = t.__filter__, s = t.__service__, a = t.subscriber;
3939
3995
  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);
3996
+ return Pl(e, r, Di, Bi(e, Rt(a), s)), Ul(e, r, "__unsubscribing__"), Ki(e, t.event, r, e);
3941
3997
  }
3942
3998
  };
3943
3999
  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__", {
@@ -3951,7 +4007,7 @@ var gobjJs = function(e) {
3951
4007
  return t;
3952
4008
  }, e.build_stats_response = l, e.clean_name = function(e) {
3953
4009
  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) {
4010
+ }, e.clear_timeout = vi, e.cmp_two_simple_json = rl, e.command_parameter_from_json = ke, e.command_parameter_from_text = function(e, t) {
3955
4011
  const n = De(e, t, !1);
3956
4012
  return void 0 !== n.value || n.refused || (n.refused = je), n;
3957
4013
  }, e.command_parser = function(e, t, n, r) {}, e.createElement2 = function e(t, n) {
@@ -3963,46 +4019,46 @@ var gobjJs = function(e) {
3963
4019
  for (const n of Object.keys(o[e])) t += `${n}: ${o[e][n]};`;
3964
4020
  s.style.cssText = t;
3965
4021
  } 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));
4022
+ if (Kl(l)) s.appendChild(Bl(l));
4023
+ else if (Jo(l)) if (l = l.trim(), l.length > 0 && "<" === l[0] && !Yl) s.appendChild(ql(l));
3968
4024
  else if (l.length > 0 && "<" === l[0] && function(e) {
3969
- if (Yl.size >= 100) return;
4025
+ if (Jl.size >= 100) return;
3970
4026
  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)}`));
4027
+ 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
4028
  }(l), n && a) s.textContent = n(a) || l;
3973
4029
  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);
4030
+ else if (Yo(l)) {
4031
+ if (l.length > 0) if (Jo(l[0])) s.appendChild(e(l, n));
4032
+ 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
4033
  } else l instanceof HTMLElement || l instanceof Text || l instanceof SVGElement ? s.appendChild(l) : null != l && (ir("content ignored"), _r(l));
3978
4034
  if (i && "object" == typeof i) for (const e of Object.keys(i)) s.addEventListener(e, i[e]);
3979
4035
  return s;
3980
- }, e.createOneHtml = Jl, e.create_json_record = function(e, t) {
4036
+ }, e.createOneHtml = ql, e.create_json_record = function(e, t) {
3981
4037
  let n = Ao(e);
3982
4038
  return ko(n, t), n;
3983
4039
  }, e.create_template_record = function(e, t) {
3984
4040
  let n = {};
3985
4041
  return t || (t = {}), Object.entries(e).forEach(([e, r]) => {
3986
4042
  let o;
3987
- Ko(r) && (o = r.default);
3988
- let l = bl(null, t, e, o);
4043
+ Bo(r) && (o = r.default);
4044
+ let l = pl(null, t, e, o);
3989
4045
  Lo(n, e, l);
3990
4046
  }), n;
3991
4047
  }, 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;
4048
+ let n = wl(ii(e), null, !1), r = {};
4049
+ return n && Bo(n) && (r = El(e, n, t, !1)), r;
3994
4050
  }, 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);
4051
+ let n = Xt(e, A.SDF_PERSIST), r = wl(ii(e), null, !1);
4052
+ if (r && Bo(r)) {
4053
+ let o = El(e, r, t, !1);
4054
+ o = El(e, o, n, !1), sn(e, o, A.SDF_PERSIST);
3999
4055
  }
4000
4056
  }, 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);
4057
+ let n = Tl(e, wl(ii(e), null, !1), t, !1);
4058
+ 0 === Vo(n) ? $l(ii(e)) : Nl(ii(e), n);
4003
4059
  }, 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);
4060
+ let n = El(e, Xt(e, A.SDF_PERSIST), t, !1), r = wl(ii(e), null, !1);
4061
+ return r && Bo(r) && Co(n, r), Nl(ii(e), n);
4006
4062
  }, e.debounce = function(e, t = 0, n = !1) {
4007
4063
  let r = null, o = null, l = null;
4008
4064
  const i = (...i) => {
@@ -4024,22 +4080,20 @@ var gobjJs = function(e) {
4024
4080
  const t = {};
4025
4081
  for (const n of e) Do(t, structuredClone(n));
4026
4082
  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) {
4083
+ }, e.empty_json = Ko, e.empty_string = Zo, e.escapeHtml = Wl, e.event_flag_t = F, e.flat2json = function(e) {
4030
4084
  if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat2json: a flat json is an object of id -> value");
4031
4085
  let t = null;
4032
4086
  for (const n of Object.keys(e)) {
4033
- const r = ti(n);
4087
+ const r = oi(n);
4034
4088
  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`);
4089
+ if (r.length > ti) throw new Error(`flat2json: '${n}' deeper than 256`);
4036
4090
  const o = "number" == typeof r[0];
4037
4091
  if (null === t) t = o ? [] : {};
4038
4092
  else if (o !== Array.isArray(t)) throw new Error(`flat2json: '${n}' does not fit a ${Array.isArray(t) ? "array" : "object"} root`);
4039
4093
  let l = t;
4040
4094
  for (let t = 0; t < r.length; t++) {
4041
4095
  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}'`);
4096
+ if (i && o > ni) throw new Error(`flat2json: array index ${o} over the limit (100000) in '${n}'`);
4043
4097
  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
4098
  if (s) {
4045
4099
  if (Array.isArray(l)) {
@@ -4047,7 +4101,7 @@ var gobjJs = function(e) {
4047
4101
  l[o] = e[n];
4048
4102
  } else {
4049
4103
  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]);
4104
+ sl(l, o, e[n]);
4051
4105
  }
4052
4106
  break;
4053
4107
  }
@@ -4055,7 +4109,7 @@ var gobjJs = function(e) {
4055
4109
  if (Array.isArray(l)) {
4056
4110
  for (; l.length <= o;) l.push(null);
4057
4111
  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));
4112
+ } else u = il(l, o) ? void 0 : l[o], void 0 === u && (u = a ? [] : {}, sl(l, o, u));
4059
4113
  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
4114
  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
4115
  l = u;
@@ -4066,11 +4120,11 @@ var gobjJs = function(e) {
4066
4120
  if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat_apply: a flat json is an object of id -> value");
4067
4121
  if (null === t || "object" != typeof t) throw new Error("flat_apply: a diff is the object flat_diff() answers");
4068
4122
  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]);
4123
+ for (const n of Object.keys(t.added || {})) sl(e, n, t.added[n]);
4070
4124
  for (const n of Object.keys(t.changed || {})) {
4071
4125
  const r = t.changed[n];
4072
4126
  if (!r || !Object.prototype.hasOwnProperty.call(r, "to")) throw new Error(`flat_apply: changed '${n}' without a 'to'`);
4073
- il(e, n, r.to);
4127
+ sl(e, n, r.to);
4074
4128
  }
4075
4129
  return e;
4076
4130
  }, e.flat_diff = function(e, t) {
@@ -4079,15 +4133,15 @@ var gobjJs = function(e) {
4079
4133
  removed: {},
4080
4134
  changed: {}
4081
4135
  };
4082
- for (const e of Object.keys(n)) Object.prototype.hasOwnProperty.call(r, e) ? ni(n[e], r[e]) || il(o.changed, e, {
4136
+ for (const e of Object.keys(n)) Object.prototype.hasOwnProperty.call(r, e) ? li(n[e], r[e]) || sl(o.changed, e, {
4083
4137
  from: n[e],
4084
4138
  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]);
4139
+ }) : sl(o.removed, e, n[e]);
4140
+ for (const e of Object.keys(r)) Object.prototype.hasOwnProperty.call(n, e) || sl(o.added, e, r[e]);
4087
4141
  return o;
4088
4142
  }, 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) {
4143
+ return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : ri(e)).join("`") : "";
4144
+ }, e.flat_key_split = oi, 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
4145
  if (!e) return {
4092
4146
  top: 0,
4093
4147
  left: 0,
@@ -4106,14 +4160,14 @@ var gobjJs = function(e) {
4106
4160
  right: n + s + r,
4107
4161
  bottom: t + i + o
4108
4162
  };
4109
- }, e.get_function_name = Ql, e.get_now = function() {
4163
+ }, e.get_function_name = ei, e.get_now = function() {
4110
4164
  return Math.floor(Date.now() / 1e3);
4111
4165
  }, e.gobj_bottom_gobj = Ft, e.gobj_change_parent = function(e, t) {
4112
4166
  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);
4113
4167
  }, e.gobj_change_state = cn, e.gobj_command = function(e, t, r, l) {
4114
4168
  if (Ut(e)) return ir("gobj NULL or DESTROYED"), -1;
4115
4169
  if (function(e) {
4116
- return q > 1 || !!e && !!(X(e) & B.TRACE_COMMANDS);
4170
+ return H > 1 || !!e && !!(X(e) & B.TRACE_COMMANDS);
4117
4171
  }(e) || oe(e, null) && !le(l, null)) {
4118
4172
  let o = To(t);
4119
4173
  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 +4183,26 @@ var gobjJs = function(e) {
4129
4183
  return ut(e, t, n, r, L.gobj_flag_volatil);
4130
4184
  }, e.gobj_create_yuno = function(e, t, n) {
4131
4185
  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;
4186
+ }, 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) {
4187
+ if (Zo(t)) return null;
4134
4188
  const n = t.toLowerCase();
4135
- return "__default_service__" === n ? m : "__yuno__" === n || "__root__" === n ? p : qt(p, t);
4189
+ return "__default_service__" === n ? m : "__yuno__" === n || "__root__" === n ? p : Ht(p, t);
4136
4190
  }, 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
4191
  return J;
4138
4192
  }, e.gobj_global_trace_no_level = function() {
4139
- return H;
4193
+ return q;
4140
4194
  }, 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
4195
  return _ ? _(e, t) : null;
4142
4196
  }, e.gobj_list_subscriptions = function(e) {
4143
4197
  let t = In(e, null, null, null);
4144
4198
  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));
4199
+ let r = t[n], o = dl(e, r, "publisher", null, Un.KW_REQUIRED), l = dl(e, r, "subscriber", null, Un.KW_REQUIRED);
4200
+ Uo(r, "s_event", gl(e, r, "event", "", Un.KW_REQUIRED)), Uo(r, "s_publisher", kt(o)), Uo(r, "s_subscriber", kt(l));
4147
4201
  }
4148
4202
  let n = Pn(e, 0, null, 0);
4149
4203
  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));
4204
+ let r = n[t], 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));
4152
4206
  }
4153
4207
  return {
4154
4208
  subscriptions: t,
@@ -4195,16 +4249,16 @@ var gobjJs = function(e) {
4195
4249
  let r = e.gclass.attrs_table;
4196
4250
  for (let o = 0; o < r.length; o++) {
4197
4251
  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)));
4252
+ 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
4253
  }
4200
4254
  return 0;
4201
4255
  }(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() {
4256
+ }, e.gobj_save_persistent_attrs = it, e.gobj_search_path = Ht, e.gobj_send_event = jn, e.gobj_services = function() {
4203
4257
  let e = [];
4204
4258
  for (const t of Object.keys(b)) Mo(e, t);
4205
4259
  return e;
4206
4260
  }, e.gobj_set_bottom_gobj = Mt, e.gobj_set_deep_trace = function(e) {
4207
- return q = Number(e) || 0, 0;
4261
+ return H = Number(e) || 0, 0;
4208
4262
  }, 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
4263
  if (!e) return ir("gobj_set_gobj_no_trace: gobj NULL"), -1;
4210
4264
  const r = Q(t, "gobj_set_gobj_no_trace", e.gclass && e.gclass.s_user_trace_level || null);
@@ -4245,7 +4299,7 @@ var gobjJs = function(e) {
4245
4299
  ]);
4246
4300
  if (Object.keys(n).forEach((n) => {
4247
4301
  o.has(n) || ir(`${kt(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
4248
- }), Xo(t)) t = "";
4302
+ }), Zo(t)) t = "";
4249
4303
  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
4304
  let l = Nn(n, t), i = An(e.dl_subscriptions, e, t, l.renamed_event, l.kw, r), s = 0, a = 0, u = 0;
4251
4305
  for (let t = 0; t < i.length; t++) {
@@ -4254,75 +4308,75 @@ var gobjJs = function(e) {
4254
4308
  }
4255
4309
  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
4310
  }, 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) {
4311
+ return "string" != typeof e ? (ir("html_markup: not a string, type " + typeof e), new xl("")) : new xl(e);
4312
+ }, 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
4313
  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;
4314
+ }, e.is_function = Qo, e.is_gobj = Xo, e.is_html_markup = Kl, e.is_metadata_key = function(e) {
4315
+ if (!Jo(e)) return !1;
4262
4316
  let t = 0;
4263
4317
  for (; t < e.length && "_" === e[t] && !(t > 2); t++);
4264
4318
  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;
4319
+ }, e.is_null = zo, e.is_number = qo, e.is_object = Bo, e.is_private_key = function(e) {
4320
+ if (!Jo(e)) return !1;
4267
4321
  let t = 0;
4268
4322
  for (; t < e.length && "_" === e[t] && !(t > 2); t++);
4269
4323
  return 1 === t;
4270
4324
  }, e.is_pure_number = function(e) {
4271
- if (Jo(e)) return !0;
4272
- if (!Yo(e)) return !1;
4325
+ if (qo(e)) return !0;
4326
+ if (!Jo(e)) return !1;
4273
4327
  const t = Number(e);
4274
4328
  return !isNaN(t) && "" !== e.trim() && !isNaN(t);
4275
4329
  }, e.is_secret_name = function(e) {
4276
4330
  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);
4331
+ }, e.is_string = Jo, e.jdb_delete = function(e, t, n, r) {
4332
+ let o = pl(null, pl(null, e, "topics", null, 0), t, null, 0);
4279
4333
  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;
4334
+ if (!Bo(r) || Zo(r.id)) return ir(`jdb_delete: record without id: ${Zn(r)}`), null;
4335
+ if (!Jo(n)) return ir(`jdb_delete: path must be a string: ${String(n)}`), null;
4282
4336
  if ("" !== n && n.split("`").includes("")) return ir(`jdb_delete: empty segment in path: '${n}'`), null;
4283
4337
  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);
4338
+ for (; (l = i.shift()) && !Zo(l) && s;) Bo(s) && (s = pl(null, s, e.hook, null, 0)), s = Gl(s, null, l, !1);
4285
4339
  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);
4340
+ let a = Yo(s) ? s : pl(null, s, e.hook, null, 0), u = Dl(a, r.id);
4287
4341
  return u < 0 ? (ir(`jdb_delete: record not found in topic '${t}': '${n}' '${r.id}'`), null) : (a.splice(u, 1), o);
4288
4342
  }, 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);
4343
+ let o = pl(null, pl(null, e, "topics", null, 0), t, null, 0);
4344
+ return o ? (void 0 === r && (r = !0), Gl(o, e.hook, n, r)) : (ir("jdb_get: topic not found: " + t), null);
4291
4345
  }, e.jdb_get_by_idx = function(e, t, n) {
4292
- let r = bl(null, bl(null, e, "topics", null, 0), t, null, 0);
4346
+ let r = pl(null, pl(null, e, "topics", null, 0), t, null, 0);
4293
4347
  return r ? n < r.length ? r[n] : {} : (ir("jdb_get_by_idx: topic not found: " + t), null);
4294
4348
  }, e.jdb_get_topic = function(e, t) {
4295
- let n = bl(null, e, "topics", null, 0);
4349
+ let n = pl(null, e, "topics", null, 0);
4296
4350
  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);
4351
+ return pl(null, n, t, null, 0) || (ir("jdb topic not found: " + t), ur(n), null);
4298
4352
  }, e.jdb_init = function(e, t, n) {
4299
4353
  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);
4354
+ let r = pl(null, e, "type", [], Un.KW_CREATE);
4355
+ gl(null, e, "hook", "data", Un.KW_CREATE);
4356
+ let o = pl(null, e, "schema", {}, Un.KW_CREATE), l = pl(null, e, "topics", {}, Un.KW_CREATE);
4357
+ return Ml(o, function(e, t, n, o) {
4358
+ "__" === t.substring(0, 2) || Bo(n) || pl(null, l, o, Ao(r), Un.KW_CREATE);
4305
4359
  }, t), e;
4306
4360
  }, e.jdb_update = function(e, t, n, r) {
4307
- let o = bl(null, bl(null, e, "topics", null, 0), t, null, 0);
4361
+ let o = pl(null, pl(null, e, "topics", null, 0), t, null, 0);
4308
4362
  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;
4363
+ if (!Bo(r) || Zo(r.id)) return ir(`jdb_update: record without id: ${Zn(r)}`), null;
4364
+ if (!Jo(n)) return ir(`jdb_update: path must be a string: ${String(n)}`), null;
4311
4365
  if ("" !== n && n.split("`").includes("")) return ir(`jdb_update: empty segment in path: '${n}'`), null;
4312
4366
  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);
4367
+ for (; (l = s.shift()) && !Zo(l) && a;) Bo(a) && (a = pl(null, a, e.hook, null, 0)), a = Gl(a, null, l, !1);
4314
4368
  if (!a || 0 !== s.length) return ir(`jdb_update: path not found in topic '${t}': '${n}'`), null;
4315
- if (Bo(a)) i = a;
4369
+ if (Yo(a)) i = a;
4316
4370
  else {
4317
4371
  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;
4372
+ if (i = pl(null, a, e.hook, null, 0), null == i) i = [], Lo(a, e.hook, i);
4373
+ else if (!Yo(i)) return ir(`jdb_update: the hook '${e.hook}' of '${n}' is not a list in topic '${t}'`), null;
4320
4374
  }
4321
- let u = Ml(i, e.hook, r.id, !1);
4375
+ let u = Gl(i, e.hook, r.id, !1);
4322
4376
  return u ? Do(u, r) : i.push(r), o;
4323
4377
  }, e.json2flat = function(e) {
4324
4378
  const t = {}, n = (e, r, o) => {
4325
- if (o > Xl) throw new Error("json2flat: deeper than 256");
4379
+ if (o > ti) throw new Error("json2flat: deeper than 256");
4326
4380
  if (null === e || "object" != typeof e || Array.isArray(e)) {
4327
4381
  if (Array.isArray(e) && e.length > 0) return void e.forEach((e, t) => {
4328
4382
  const l = `[${t}]`;
@@ -4332,20 +4386,20 @@ var gobjJs = function(e) {
4332
4386
  const t = Object.keys(e);
4333
4387
  if (t.length > 0) {
4334
4388
  for (const l of t) {
4335
- const t = ei(l);
4389
+ const t = ri(l);
4336
4390
  n(e[l], 0 === o ? t : r + "`" + t, o + 1);
4337
4391
  }
4338
4392
  return;
4339
4393
  }
4340
4394
  }
4341
- 0 !== o && il(t, r, e);
4395
+ 0 !== o && sl(t, r, e);
4342
4396
  };
4343
4397
  return null == e || n(e, "", 0), t;
4344
4398
  }, e.json_array_append = Fo, e.json_array_append_new = Mo, e.json_array_extend = function(e, t) {
4345
4399
  return t ? (Array.prototype.push.apply(e, t), e) : e;
4346
4400
  }, 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) {
4347
4401
  try {
4348
- let n = Gl(e);
4402
+ let n = Vl(e);
4349
4403
  switch (t) {
4350
4404
  case "header": return JSON.parse(n.header);
4351
4405
  case "signature": return JSON.parse(n.signature);
@@ -4354,98 +4408,98 @@ var gobjJs = function(e) {
4354
4408
  } catch (e) {
4355
4409
  return null;
4356
4410
  }
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);
4411
+ }, e.jwtDecode = Vl, e.kw_clone_by_keys = El, e.kw_clone_by_not_keys = Tl, e.kw_collect = function(e, t, n, r) {
4412
+ if (e && !Xo(e) && ir("GObj bad instanceof"), !t) return null;
4413
+ r || (r = vl);
4360
4414
  let o = [];
4361
- if (Bo(t)) for (let e = 0; e < t.length; e++) {
4415
+ if (Yo(t)) for (let e = 0; e < t.length; e++) {
4362
4416
  let l = t[e];
4363
4417
  r(l, n) && o.push(l);
4364
4418
  }
4365
4419
  else {
4366
- if (!Ko(t)) return ir("kw_select() BAD kw parameter"), null;
4420
+ if (!Bo(t)) return ir("kw_select() BAD kw parameter"), null;
4367
4421
  r(t, n) && o.push(t);
4368
4422
  }
4369
4423
  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;
4424
+ }, e.kw_delete = _l, e.kw_find_json_in_list = function(e, t, n, r) {
4425
+ if (!n || !Yo(t)) return r && ir("item NULL or kw_list is not a list"), -1;
4372
4426
  for (let e = 0; e < t.length; e++) if (Ro(n, t[e])) return e;
4373
4427
  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);
4428
+ }, 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) {
4429
+ e && !Xo(e) && ir("GObj bad instanceof");
4430
+ let l = ul(e, t, n, !1);
4377
4431
  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);
4432
+ 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);
4433
+ }, e.kw_get_local_storage_value = wl, e.kw_get_pointer = dl, e.kw_get_real = function(e, t, n, r, o) {
4434
+ e && !Xo(e) && ir("GObj bad instanceof");
4435
+ let l = ul(e, t, n, !1);
4382
4436
  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
4437
  if (void 0 === l) {
4384
4438
  if (s && t) {
4385
4439
  let o = Number(r);
4386
- return pl(e, t, n, o), o;
4440
+ return ml(e, t, n, o), o;
4387
4441
  }
4388
4442
  return i && (ir(`path not found: '${n}'`), $o(t)), Number(r);
4389
4443
  }
4390
4444
  let _;
4391
- if (Jo(l)) _ = l;
4445
+ if (qo(l)) _ = l;
4392
4446
  else {
4393
4447
  if (!u) return ir(`${e ? kt(e) + ": " : ""}path MUST BE a json real: '${n}'`), $o(t), Number(r);
4394
4448
  if (Ho(l)) _ = l ? 1 : 0;
4395
- else if (Yo(l)) _ = parseFloat(l), Number.isNaN(_) && (_ = 0);
4449
+ else if (Jo(l)) _ = parseFloat(l), Number.isNaN(_) && (_ = 0);
4396
4450
  else {
4397
4451
  if (null !== l) return ir(`${e ? kt(e) + ": " : ""}path MUST BE a simple json element: '${n}'`), $o(t), 0;
4398
4452
  _ = 0;
4399
4453
  }
4400
4454
  }
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);
4455
+ return a && _l(e, t, n), _;
4456
+ }, 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) {
4457
+ if (e && !Xo(e) && ir("GObj bad instanceof"), !t) return null;
4458
+ r || (r = vl);
4405
4459
  let o = [];
4406
- if (Bo(t)) for (let e = 0; e < t.length; e++) {
4460
+ if (Yo(t)) for (let e = 0; e < t.length; e++) {
4407
4461
  let l = t[e];
4408
4462
  r(l, n) && o.push(Ao(l));
4409
4463
  }
4410
4464
  else {
4411
- if (!Ko(t)) return ir("kw_select() BAD kw parameter"), null;
4465
+ if (!Bo(t)) return ir("kw_select() BAD kw parameter"), null;
4412
4466
  r(t, n) && o.push(Ao(t));
4413
4467
  }
4414
4468
  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");
4417
- let l = Al(e, t, n, r, o);
4469
+ }, e.kw_set_dict_value = ml, e.kw_set_local_storage_value = Nl, e.kw_set_subdict_value = hl, e.kwid_collect = Rl, e.kwid_find_one_record = function(e, t, n, r, o) {
4470
+ e && !Xo(e) && ir("GObj bad instanceof");
4471
+ let l = Rl(e, t, n, r, o);
4418
4472
  return l && 0 !== l.length ? l[0] : null;
4419
4473
  }, e.kwid_get_ids = function(e, t) {
4420
- if (e && !Qo(e) && ir("GObj bad instanceof"), !t) return [];
4474
+ if (e && !Xo(e) && ir("GObj bad instanceof"), !t) return [];
4421
4475
  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);
4476
+ if (Jo(t)) n.push(t);
4477
+ else if (Bo(t)) for (let e in t) Object.prototype.hasOwnProperty.call(t, e) && n.push(e);
4478
+ else Yo(t) && t.forEach(function(t) {
4479
+ if (Jo(t)) Zo(t) || n.push(t);
4480
+ else if (Bo(t)) {
4481
+ let r = gl(e, t, "id", 0, 0);
4428
4482
  r && n.push(r);
4429
4483
  }
4430
4484
  });
4431
4485
  return n;
4432
- }, e.kwid_match_id = $l, e.kwid_new_dict = function(e, t, n) {
4433
- e && !Qo(e) && ir("GObj bad instanceof");
4486
+ }, e.kwid_match_id = Al, e.kwid_new_dict = function(e, t, n) {
4487
+ e && !Xo(e) && ir("GObj bad instanceof");
4434
4488
  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);
4489
+ if (Zo(n) || (t = ul(e, t, n)), Bo(t)) r = t;
4490
+ else if (Yo(t)) for (let n = 0; n < t.length; n++) {
4491
+ let o = t[n], l = gl(e, o, "id", "", Un.KW_REQUIRED);
4492
+ Zo(l) || sl(r, l, o);
4439
4493
  }
4440
4494
  else ir(`${kt(e)} kwid_new_dict: data type unknown`);
4441
4495
  return r;
4442
4496
  }, 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)) {
4497
+ if (e && !Xo(e) && ir("GObj bad instanceof"), Zo(n) || (t = ul(e, t, n)), Yo(t)) return t;
4498
+ if (Bo(t)) {
4445
4499
  let n = [];
4446
4500
  for (let r of Object.keys(t)) {
4447
4501
  let o = t[r];
4448
- Ko(o) ? (o.id = r, n.push(o)) : ir(`${kt(e)} kwid_new_list: not a record: '${r}'`);
4502
+ Bo(o) ? (o.id = r, n.push(o)) : ir(`${kt(e)} kwid_new_list: not a record: '${r}'`);
4449
4503
  }
4450
4504
  return n;
4451
4505
  }
@@ -4453,16 +4507,16 @@ var gobjJs = function(e) {
4453
4507
  }, e.list2options = function(e, t, n) {
4454
4508
  t = t || "id", n = n || "value";
4455
4509
  let r = [];
4456
- if (Bo(e)) for (let o = 0; o < e.length; o++) {
4510
+ if (Yo(e)) for (let o = 0; o < e.length; o++) {
4457
4511
  let l = e[o];
4458
- if (Yo(l)) r.push({
4512
+ if (Jo(l)) r.push({
4459
4513
  id: e[o],
4460
4514
  value: e[o]
4461
4515
  });
4462
- else if (Ko(l)) {
4516
+ else if (Bo(l)) {
4463
4517
  let e = {};
4464
- if (ol(l, t)) {
4465
- if (!ol(l, n)) {
4518
+ if (ll(l, t)) {
4519
+ if (!ll(l, n)) {
4466
4520
  if (!(xo(l) > 0)) {
4467
4521
  ir("list2options(): object without field value: " + n);
4468
4522
  continue;
@@ -4480,7 +4534,7 @@ var gobjJs = function(e) {
4480
4534
  r.push(e);
4481
4535
  } else ir("list2options(): case1 not implemented");
4482
4536
  }
4483
- else if (Ko(e)) for (let t of Object.keys(e)) r.push({
4537
+ else if (Bo(e)) for (let t of Object.keys(e)) r.push({
4484
4538
  id: t,
4485
4539
  value: t
4486
4540
  });
@@ -4499,11 +4553,11 @@ var gobjJs = function(e) {
4499
4553
  }, r.send();
4500
4554
  }, e.log_debug = ar, e.log_error = ir, e.log_info = function(e, ...t) {
4501
4555
  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) {
4556
+ Vn && qn("info", n) && rr(Vn, "%c" + r + " INFO: " + String(n), "color:cyan"), zn("info", n, r);
4557
+ }, 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 = Zl, e.parseBoolean = el, e.parseSVG = function(e) {
4504
4558
  return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
4505
4559
  }, e.refresh_language = function(e, t) {
4506
- if (!zo(t)) return void ir("You must supply a translation function");
4560
+ if (!Qo(t)) return void ir("You must supply a translation function");
4507
4561
  e || (e = document);
4508
4562
  const n = (t) => {
4509
4563
  let n = [];
@@ -4527,22 +4581,22 @@ var gobjJs = function(e) {
4527
4581
  });
4528
4582
  }, e.register_c_ievent_cli = function() {
4529
4583
  return function(e) {
4530
- if (Ci) return ir(`GClass ALREADY created: ${e}`), -1;
4584
+ if (Li) return ir(`GClass ALREADY created: ${e}`), -1;
4531
4585
  const t = [
4532
4586
  ["ST_DISCONNECTED", [
4533
4587
  [
4534
4588
  "EV_ON_OPEN",
4535
- Yi,
4589
+ Hi,
4536
4590
  "ST_WAIT_IDENTITY_CARD_ACK"
4537
4591
  ],
4538
4592
  [
4539
4593
  "EV_ON_CLOSE",
4540
- Ji,
4594
+ zi,
4541
4595
  null
4542
4596
  ],
4543
4597
  [
4544
4598
  "EV_TIMEOUT",
4545
- Bi,
4599
+ qi,
4546
4600
  null
4547
4601
  ],
4548
4602
  [
@@ -4554,22 +4608,22 @@ var gobjJs = function(e) {
4554
4608
  ["ST_WAIT_IDENTITY_CARD_ACK", [
4555
4609
  [
4556
4610
  "EV_ON_MESSAGE",
4557
- Zi,
4611
+ ns,
4558
4612
  null
4559
4613
  ],
4560
4614
  [
4561
4615
  "EV_IDENTITY_CARD_ACK",
4562
- Xi,
4616
+ ts,
4563
4617
  null
4564
4618
  ],
4565
4619
  [
4566
4620
  "EV_ON_CLOSE",
4567
- Ji,
4621
+ zi,
4568
4622
  "ST_DISCONNECTED"
4569
4623
  ],
4570
4624
  [
4571
4625
  "EV_TIMEOUT",
4572
- Qi,
4626
+ es,
4573
4627
  null
4574
4628
  ],
4575
4629
  [
@@ -4581,22 +4635,22 @@ var gobjJs = function(e) {
4581
4635
  ["ST_SESSION", [
4582
4636
  [
4583
4637
  "EV_ON_MESSAGE",
4584
- Zi,
4638
+ ns,
4585
4639
  null
4586
4640
  ],
4587
4641
  [
4588
4642
  "EV_MT_STATS",
4589
- ts,
4643
+ os,
4590
4644
  null
4591
4645
  ],
4592
4646
  [
4593
4647
  "EV_MT_COMMAND",
4594
- ns,
4648
+ ls,
4595
4649
  null
4596
4650
  ],
4597
4651
  [
4598
4652
  "EV_ON_CLOSE",
4599
- Ji,
4653
+ zi,
4600
4654
  "ST_DISCONNECTED"
4601
4655
  ],
4602
4656
  [
@@ -4607,7 +4661,7 @@ var gobjJs = function(e) {
4607
4661
  ]],
4608
4662
  [null, null]
4609
4663
  ];
4610
- return (Ci = Ke(e, [
4664
+ return (Li = Ke(e, [
4611
4665
  ["EV_ON_MESSAGE", F.EVF_OUTPUT_EVENT],
4612
4666
  ["EV_IDENTITY_CARD_ACK", F.EVF_PUBLIC_EVENT],
4613
4667
  ["EV_ON_ID_NAK", F.EVF_OUTPUT_EVENT],
@@ -4618,36 +4672,36 @@ var gobjJs = function(e) {
4618
4672
  ["EV_ON_OPEN_ERROR", F.EVF_OUTPUT_EVENT | F.EVF_NO_WARN_SUBS],
4619
4673
  ["EV_TIMEOUT", 0],
4620
4674
  [null, 0]
4621
- ], t, rs, 0, Ai, ki, 0, 0, Ri, P.gcflag_no_check_output_events)) ? 0 : -1;
4675
+ ], t, is, 0, ki, Pi, 0, 0, Ci, P.gcflag_no_check_output_events)) ? 0 : -1;
4622
4676
  }("C_IEVENT_CLI");
4623
4677
  }, e.register_c_timer = function() {
4624
4678
  return function(e) {
4625
- if (ci) return ir(`GClass ALREADY created: ${e}`), -1;
4679
+ if (di) return ir(`GClass ALREADY created: ${e}`), -1;
4626
4680
  const t = [["ST_IDLE", [[
4627
4681
  "EV_TIMEOUT",
4628
- fi,
4682
+ bi,
4629
4683
  null
4630
4684
  ]]]];
4631
- return (ci = Ke(e, [
4685
+ return (di = Ke(e, [
4632
4686
  ["EV_TIMEOUT", F.EVF_OUTPUT_EVENT],
4633
4687
  ["EV_TIMEOUT_PERIODIC", F.EVF_OUTPUT_EVENT],
4634
4688
  [0, 0]
4635
- ], t, gi, 0, ui, _i, 0, 0, 0, P.gcflag_manual_start)) ? 0 : -1;
4689
+ ], t, pi, 0, fi, gi, 0, 0, 0, P.gcflag_manual_start)) ? 0 : -1;
4636
4690
  }("C_TIMER");
4637
4691
  }, e.register_c_yuno = function() {
4638
4692
  return function(e) {
4639
- if (vi) return ir(`GClass ALREADY created: ${e}`), -1;
4693
+ if (ji) return ir(`GClass ALREADY created: ${e}`), -1;
4640
4694
  const t = [["ST_IDLE", [[
4641
4695
  "EV_TIMEOUT_PERIODIC",
4642
- wi,
4696
+ Ai,
4643
4697
  null
4644
4698
  ]]]];
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;
4699
+ return (ji = Ke(e, [["EV_TIMEOUT_PERIODIC", F.EVF_OUTPUT_EVENT | F.EVF_NO_WARN_SUBS], [0, 0]], t, Ri, 0, Ei, Ti, 0, 0, 0, 0)) ? 0 : -1;
4646
4700
  }("C_YUNO");
4647
4701
  }, e.safeSrc = function(e) {
4648
4702
  if (!e) return "";
4649
4703
  const t = String(e).trim();
4650
- return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : Vl(t);
4704
+ return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : Wl(t);
4651
4705
  }, e.sdata_flag_t = A, e.send_http_json_post = function(e, t, n) {
4652
4706
  let r = new XMLHttpRequest();
4653
4707
  r.open("POST", e), r.setRequestHeader("Accept", "application/json"), r.setRequestHeader("Content-Type", "application/json"), r.onreadystatechange = function() {
@@ -4671,16 +4725,16 @@ var gobjJs = function(e) {
4671
4725
  }
4672
4726
  } else xn = e;
4673
4727
  }, 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;
4728
+ Yl = !!e;
4729
+ }, e.set_timeout = hi, e.set_timeout_periodic = yi, 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() {
4730
+ return Yl;
4677
4731
  }, e.strncmp = function(e, t, n) {
4678
4732
  var r = (e + "").substring(0, n), o = (t + "").substring(0, n);
4679
4733
  return r === o ? 0 : r > o ? 1 : -1;
4680
4734
  }, e.strs_in_list = function(e, t, n) {
4681
4735
  if (!e) return ir("ERROR: strs_in_list() list empty"), !1;
4682
4736
  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;
4737
+ for (let r = 0; r < t.length; r++) if (kl(e, t[r], n)) return !0;
4684
4738
  return !1;
4685
4739
  }, e.strstr = function(e, t, n) {
4686
4740
  var r;
@@ -4699,13 +4753,13 @@ var gobjJs = function(e) {
4699
4753
  placeholder: void 0,
4700
4754
  fkey: null
4701
4755
  };
4702
- if (Yo(t)) {
4756
+ if (Jo(t)) {
4703
4757
  let e = t.split(".");
4704
4758
  for (let t = 0; t < e.length; t++) {
4705
4759
  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) {
4760
+ if (kl(ai, r)) n.real_type || (n.real_type = r);
4761
+ else if (kl(_i, r)) n.type || (n.type = r);
4762
+ else if (kl(ui, r)) switch (r) {
4709
4763
  case "writable":
4710
4764
  n.is_writable = !0;
4711
4765
  break;
@@ -4717,7 +4771,7 @@ var gobjJs = function(e) {
4717
4771
  }
4718
4772
  }
4719
4773
  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);
4774
+ } else Bo(t) ? (n = ci(t), n.name || (n.name = e), n.header || (n.header = e)) : Yo(t) && (n.real_type = "array", n.enum_list = t);
4721
4775
  return n.type || (n.type = n.real_type), n;
4722
4776
  }, e.timeTracker = function(e = "Time Tracker", t = !1) {
4723
4777
  const n = e, r = performance.now();
@@ -4729,8 +4783,8 @@ var gobjJs = function(e) {
4729
4783
  total: a
4730
4784
  };
4731
4785
  } };
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)) {
4786
+ }, e.trace_json = _r, e.trace_json_masked = $o, e.trace_level_t = B, e.trace_msg = ur, e.treedb_decoder_fkey = si, e.treedb_decoder_hook = function(e, t) {
4787
+ if (Jo(t)) {
4734
4788
  if (-1 === t.indexOf("^")) {
4735
4789
  let n, r = e.hook;
4736
4790
  if (1 !== Vo(r)) return ir("bad hook 1"), ir(e), ir(t), null;
@@ -4751,17 +4805,17 @@ var gobjJs = function(e) {
4751
4805
  };
4752
4806
  }
4753
4807
  }
4754
- return Ko(t) ? {
4808
+ return Bo(t) ? {
4755
4809
  topic_name: t.topic_name,
4756
4810
  id: t.id
4757
4811
  } : (ir("bad hook 3"), ir(e), ir(t), null);
4758
4812
  }, e.treedb_encoder_fkey = function(e, t) {
4759
- let n = oi(e, t);
4813
+ let n = si(e, t);
4760
4814
  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)) {
4815
+ }, e.treedb_get_field_desc = ci, e.treedb_hook_data_size = function(e) {
4816
+ if (Yo(e) && 1 === xo(e)) {
4763
4817
  let t = e[0];
4764
- return ol(t, "size") ? t.size : 1;
4818
+ return ll(t, "size") ? t.size : 1;
4765
4819
  }
4766
4820
  return xo(e);
4767
4821
  }, e.vsprintf = function(e, t) {