@yuneta/gobj-js 7.16.5 → 7.16.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -325,7 +325,7 @@ function G(e, t) {
325
325
  return function(e) {
326
326
  for (const [t, n] of L) if (t === e) return n;
327
327
  return 0;
328
- }(String(e)) || (qt(`${t}: trace level NOT FOUND: ${e}`), 0);
328
+ }(String(e)) || (Ht(`${t}: trace level NOT FOUND: ${e}`), 0);
329
329
  }
330
330
  function V(e) {
331
331
  if (F) return 4294967295;
@@ -363,16 +363,16 @@ function J(e, t) {
363
363
  const n = M(e);
364
364
  return !!(n & C.TRACE_MACHINE || n & C.TRACE_TIMER_PERIODIC && "EV_TIMEOUT_PERIODIC" === t || n & C.TRACE_TIMER && "EV_TIMEOUT" === t);
365
365
  }
366
- function q(e, t) {
366
+ function H(e, t) {
367
367
  let n = {};
368
- if (!bn(t)) return qt("sdata_desc MUST be an array"), Xt(t), n;
368
+ if (!bn(t)) return Ht("sdata_desc MUST be an array"), Xt(t), n;
369
369
  for (let r = 0; r < t.length; r++) {
370
370
  const o = t[r];
371
- o.name && H(e, n, o);
371
+ o.name && q(e, n, o);
372
372
  }
373
373
  return n;
374
374
  }
375
- function H(e, t, n) {
375
+ function q(e, t, n) {
376
376
  let r, o = n.default_value;
377
377
  switch (n.type) {
378
378
  case E.DTP_STRING:
@@ -382,16 +382,16 @@ function H(e, t, n) {
382
382
  r = Sn(o);
383
383
  break;
384
384
  case E.DTP_INTEGER:
385
- r = parseInt(o), isNaN(r) && qt(`${Fe(e)}: attr NaN: ${n.name}`);
385
+ r = parseInt(o), isNaN(r) && Ht(`${Fe(e)}: attr NaN: ${n.name}`);
386
386
  break;
387
387
  case E.DTP_REAL:
388
- r = Number(o), isNaN(r) && qt(`${Fe(e)}: attr NaN: ${n.name}`);
388
+ r = Number(o), isNaN(r) && Ht(`${Fe(e)}: attr NaN: ${n.name}`);
389
389
  break;
390
390
  case E.DTP_LIST:
391
391
  if (mn(o)) try {
392
392
  r = JSON.parse(o);
393
393
  } catch (e) {
394
- qt(`JSON parse error: ${e.message}`);
394
+ Ht(`JSON parse error: ${e.message}`);
395
395
  }
396
396
  else r = o;
397
397
  bn(r) || (r = []);
@@ -400,7 +400,7 @@ function H(e, t, n) {
400
400
  if (mn(o)) try {
401
401
  r = JSON.parse(o);
402
402
  } catch (e) {
403
- qt(`JSON parse error: ${e.message}`);
403
+ Ht(`JSON parse error: ${e.message}`);
404
404
  }
405
405
  else r = o;
406
406
  dn(r) || (r = {});
@@ -409,13 +409,13 @@ function H(e, t, n) {
409
409
  if (mn(o)) try {
410
410
  r = JSON.parse(o);
411
411
  } catch (e) {
412
- qt(`JSON parse error: ${e.message}`);
412
+ Ht(`JSON parse error: ${e.message}`);
413
413
  }
414
414
  else r = o;
415
415
  break;
416
416
  case E.DTP_POINTER: r = o;
417
417
  }
418
- return void 0 === r && (qt(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
418
+ return void 0 === r && (Ht(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
419
419
  }
420
420
  function z(e, t, n, r) {
421
421
  let o;
@@ -432,64 +432,64 @@ function z(e, t, n, r) {
432
432
  o = Sn(r);
433
433
  break;
434
434
  case E.DTP_INTEGER:
435
- o = parseInt(r), isNaN(o) && qt(`${Fe(e)}: attr NaN: ${n.name}`);
435
+ o = parseInt(r), isNaN(o) && Ht(`${Fe(e)}: attr NaN: ${n.name}`);
436
436
  break;
437
437
  case E.DTP_REAL:
438
- o = Number(r), isNaN(o) && qt(`${Fe(e)}: attr NaN: ${n.name}`);
438
+ o = Number(r), isNaN(o) && Ht(`${Fe(e)}: attr NaN: ${n.name}`);
439
439
  break;
440
440
  case E.DTP_LIST:
441
441
  if (mn(r)) try {
442
442
  o = JSON.parse(r);
443
443
  } catch (e) {
444
- qt(`JSON parse error: ${e.message}`);
444
+ Ht(`JSON parse error: ${e.message}`);
445
445
  }
446
446
  else o = r;
447
- if (!bn(o)) return qt(`attr must be an array: ${n.name}`), -1;
447
+ if (!bn(o)) return Ht(`attr must be an array: ${n.name}`), -1;
448
448
  break;
449
449
  case E.DTP_DICT:
450
450
  if (mn(r)) try {
451
451
  o = JSON.parse(r);
452
452
  } catch (e) {
453
- qt(`JSON parse error: ${e.message}`);
453
+ Ht(`JSON parse error: ${e.message}`);
454
454
  }
455
455
  else o = r;
456
- if (!dn(o)) return qt(`attr must be an object: ${n.name}`), -1;
456
+ if (!dn(o)) return Ht(`attr must be an object: ${n.name}`), -1;
457
457
  break;
458
458
  case E.DTP_JSON:
459
459
  if (mn(r)) try {
460
460
  o = JSON.parse(r);
461
461
  } catch (e) {
462
- qt(`JSON parse error: ${e.message}`);
462
+ Ht(`JSON parse error: ${e.message}`);
463
463
  }
464
464
  else o = r;
465
- if (!bn(o) && !dn(o)) return qt(`attr must be a json dict/list: ${n.name}`), -1;
465
+ if (!bn(o) && !dn(o)) return Ht(`attr must be a json dict/list: ${n.name}`), -1;
466
466
  break;
467
467
  case E.DTP_POINTER: o = r;
468
468
  }
469
- return void 0 === o && qt(`${Fe(e)}: attr undefined: ${n.name}`), t[n.name] = o, dn(e.priv) && e.priv.hasOwnProperty(n.name) && (e.priv[n.name] = o), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
469
+ return void 0 === o && Ht(`${Fe(e)}: attr undefined: ${n.name}`), t[n.name] = o, dn(e.priv) && e.priv.hasOwnProperty(n.name) && (e.priv[n.name] = o), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
470
470
  }
471
471
  function Q(e) {
472
472
  return e.jn_attrs;
473
473
  }
474
474
  function X(e, t, n) {
475
- return rt(e, t) ? Q(e) : e && e.bottom_gobj ? X(e.bottom_gobj, t, n) : (n && qt(`GClass Attribute NOT FOUND: ${Fe(e)}, attr ${t}`), null);
475
+ return rt(e, t) ? Q(e) : e && e.bottom_gobj ? X(e.bottom_gobj, t, n) : (n && Ht(`GClass Attribute NOT FOUND: ${Fe(e)}, attr ${t}`), null);
476
476
  }
477
477
  function Z(e, t, n) {
478
- if (!(e && e instanceof v)) return n && qt("gclass NULL"), null;
478
+ if (!(e && e instanceof v)) return n && Ht("gclass NULL"), null;
479
479
  if (!t) return e.attrs_table;
480
480
  for (let n = 0; n < e.attrs_table.length; n++) {
481
481
  const r = e.attrs_table[n];
482
482
  if (r.name && r.name === t) return r;
483
483
  }
484
- return n && qt(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
484
+ return n && Ht(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
485
485
  }
486
486
  function ee(e, t, n, r, o, s, l, i, _, a, u) {
487
- if (vn(e)) return qt("gclass_name EMPTY"), null;
488
- if (e.includes("`") || e.includes("^") || e.includes(".")) return qt(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
489
- if (ue(e)) return qt(`GClass ALREADY exists: ${e}`), null;
487
+ if (vn(e)) return Ht("gclass_name EMPTY"), null;
488
+ if (e.includes("`") || e.includes("^") || e.includes(".")) return Ht(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
489
+ if (ue(e)) return Ht(`GClass ALREADY exists: ${e}`), null;
490
490
  let c = new v(e, r, o, s, l, i, _, a, u);
491
491
  (function(e, t) {
492
- e && e instanceof v ? t ? g[t] ? qt(`gclass ALREADY REGISTERED: ${t}`) : g[t] = e : qt("gclass_name undefined") : qt("gclass undefined");
492
+ e && e instanceof v ? t ? g[t] ? Ht(`gclass ALREADY REGISTERED: ${t}`) : g[t] = e : Ht("gclass_name undefined") : Ht("gclass undefined");
493
493
  })(c, e);
494
494
  const f = n.length;
495
495
  for (let e = 0; e < f; e++) {
@@ -505,7 +505,7 @@ function ee(e, t, n, r, o, s, l, i, _, a, u) {
505
505
  for (let e = 0; e < t.length; e++) {
506
506
  let n = t[e][0], r = t[e][1];
507
507
  if (!vn(n)) {
508
- if (_e(c, n)) return qt(`SMachine: event repeated in input_events: ${n}`), te(c), null;
508
+ if (_e(c, n)) return Ht(`SMachine: event repeated in input_events: ${n}`), te(c), null;
509
509
  ie(c, n, r);
510
510
  }
511
511
  }
@@ -519,11 +519,11 @@ function te(e) {
519
519
  let t;
520
520
  if (mn(e)) t = e;
521
521
  else {
522
- if (!(e instanceof v)) return qt("Cannot unregister gclass, type unknown"), -1;
522
+ if (!(e instanceof v)) return Ht("Cannot unregister gclass, type unknown"), -1;
523
523
  t = e.gclass_name;
524
524
  }
525
525
  let n = g[t];
526
- return n ? n.instances > 0 ? (qt(`Cannot unregister gclass, instances in use: ${t}`), -1) : (delete g[t], 0) : (qt(`Cannot unregister gclass, not found: ${t}`), -1);
526
+ return n ? n.instances > 0 ? (Ht(`Cannot unregister gclass, instances in use: ${t}`), -1) : (delete g[t], 0) : (Ht(`Cannot unregister gclass, not found: ${t}`), -1);
527
527
  }
528
528
  function ne(e, t) {
529
529
  const n = e.dl_states.length, r = e.dl_states;
@@ -542,22 +542,22 @@ function re(e, t) {
542
542
  return null;
543
543
  }
544
544
  function oe(e, t) {
545
- return e instanceof v ? ne(e, t) ? (qt(`state already exists: ${t}`), -1) : (e.dl_states.push(new A(t)), 0) : (qt("Cannot add state, typeof not GClass"), -1);
545
+ return e instanceof v ? ne(e, t) ? (Ht(`state already exists: ${t}`), -1) : (e.dl_states.push(new A(t)), 0) : (Ht("Cannot add state, typeof not GClass"), -1);
546
546
  }
547
547
  function se(e, t, n, r, o) {
548
- if (!(e instanceof v)) return qt("Cannot add state, typeof not GClass"), -1;
549
- if (vn(t)) return qt("state_name EMPTY"), -1;
548
+ if (!(e instanceof v)) return Ht("Cannot add state, typeof not GClass"), -1;
549
+ if (vn(t)) return Ht("state_name EMPTY"), -1;
550
550
  let s = ne(e, t);
551
- return s ? re(s, n) ? (qt(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (s.dl_actions.push(new D(n, r, o)), 0) : (qt(`state not found: ${t}`), -1);
551
+ return s ? re(s, n) ? (Ht(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (s.dl_actions.push(new D(n, r, o)), 0) : (Ht(`state not found: ${t}`), -1);
552
552
  }
553
553
  function le(e, t, n) {
554
554
  vn(t) || e.push(new k(t, n));
555
555
  }
556
556
  function ie(e, t, n) {
557
- return e instanceof v ? le(e.dl_events, t, n) : (qt("Cannot add state, typeof not GClass"), -1);
557
+ return e instanceof v ? le(e.dl_events, t, n) : (Ht("Cannot add state, typeof not GClass"), -1);
558
558
  }
559
559
  function _e(e, t) {
560
- if (!(e instanceof v)) return qt("Cannot add state, typeof not GClass"), 0;
560
+ if (!(e instanceof v)) return Ht("Cannot add state, typeof not GClass"), 0;
561
561
  const n = e.dl_events.length, r = e.dl_events;
562
562
  for (let e = 0; e < n; e++) {
563
563
  let n = r[e];
@@ -566,25 +566,25 @@ function _e(e, t) {
566
566
  return null;
567
567
  }
568
568
  function ae(e) {
569
- if (!(e instanceof v)) return qt("Cannot add state, typeof not GClass"), -1;
569
+ if (!(e instanceof v)) return Ht("Cannot add state, typeof not GClass"), -1;
570
570
  let t = 0;
571
- gn(e.dl_states) || (qt(`GClass without states: ${e.gclass_name}`), t += -1);
571
+ gn(e.dl_states) || (Ht(`GClass without states: ${e.gclass_name}`), t += -1);
572
572
  for (let n = 0; n < e.dl_states.length; n++) {
573
573
  let r = e.dl_states[n];
574
574
  if (!vn(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
575
575
  let o = r.dl_actions[n];
576
- vn(o.event_name) || (_e(e, o.event_name) || (qt(`SMachine: state's event NOT in input_events: gclass ${e.gclass_name}, state ${r.state_name}, event ${o.event_name}`), t += -1), o.next_state && (ne(e, o.next_state) || (qt(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${o.next_state}`), t += -1)));
576
+ vn(o.event_name) || (_e(e, o.event_name) || (Ht(`SMachine: state's event NOT in input_events: gclass ${e.gclass_name}, state ${r.state_name}, event ${o.event_name}`), t += -1), o.next_state && (ne(e, o.next_state) || (Ht(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${o.next_state}`), t += -1)));
577
577
  }
578
578
  }
579
579
  for (let n = 0; n < e.dl_events.length; n++) {
580
580
  let r = e.dl_events[n];
581
- if (!vn(r.event_name) && (En(r.event_flag) || (qt(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & R.EVF_OUTPUT_EVENT))) {
581
+ if (!vn(r.event_name) && (En(r.event_flag) || (Ht(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & R.EVF_OUTPUT_EVENT))) {
582
582
  let n = !1;
583
583
  for (let t = 0; t < e.dl_states.length; t++) {
584
584
  let o = e.dl_states[t];
585
585
  vn(o.state_name) || re(o, r.event_name) && (n = !0);
586
586
  }
587
- n || (qt(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
587
+ n || (Ht(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
588
588
  }
589
589
  }
590
590
  return t;
@@ -594,65 +594,65 @@ function ue(e, t) {
594
594
  try {
595
595
  n = g[e];
596
596
  } catch (e) {}
597
- return n || (t && qt(`gclass not found: ${e}`), null);
597
+ return n || (t && Ht(`gclass not found: ${e}`), null);
598
598
  }
599
599
  function ce() {
600
600
  return !b || b.obflag & w.obflag_destroyed ? null : b;
601
601
  }
602
602
  function fe(e, t) {
603
603
  e = e.toLowerCase();
604
- return p[e] || (t && qt(`gobj service not found: ${e}`), null);
604
+ return p[e] || (t && Ht(`gobj service not found: ${e}`), null);
605
605
  }
606
606
  function ge(e) {
607
607
  let t = Pe(e);
608
- return t = t.toLowerCase(), p[t] && qt(`service ALREADY REGISTERED: ${t}. Will be UPDATED`), p[t] = e, 0;
608
+ return t = t.toLowerCase(), p[t] && Ht(`service ALREADY REGISTERED: ${t}. Will be UPDATED`), p[t] = e, 0;
609
609
  }
610
610
  function pe(e, t) {
611
- t.parent && qt(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
611
+ t.parent && Ht(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
612
612
  }
613
613
  function de(e, t) {
614
614
  let n = ar(e.dl_children, t);
615
615
  n >= 0 && (cn(e.dl_children, n), t.parent = null);
616
616
  }
617
617
  function be(e, t) {
618
- "__json_config_variables__" !== t && qt(`GClass Attribute NOT FOUND: ${Fe(e)}, attr ${t}`);
618
+ "__json_config_variables__" !== t && Ht(`GClass Attribute NOT FOUND: ${Fe(e)}, attr ${t}`);
619
619
  }
620
620
  function me(e, t, n) {
621
621
  let r = t;
622
622
  (function(e, t, n, r, o) {
623
- if (!e || !t) return qt("hsdata or kw NULL"), -1;
623
+ if (!e || !t) return Ht("hsdata or kw NULL"), -1;
624
624
  let s = 0;
625
625
  for (const [l, i] of Object.entries(t)) {
626
626
  const t = Z(o.gclass, l, !1);
627
- t ? (-1 === n || t.flag & n) && (t.flag & T.SDF_DEPRECATED && Ht(`${Fe(o)}: Deprecated attribute used in gobj creation: ${l}`), s += z(o, e, t, i)) : r && (r(o, l), s--);
627
+ t ? (-1 === n || t.flag & n) && (t.flag & T.SDF_DEPRECATED && qt(`${Fe(o)}: Deprecated attribute used in gobj creation: ${l}`), s += z(o, e, t, i)) : r && (r(o, l), s--);
628
628
  }
629
629
  return s;
630
- })(Q(e), r, -1, e.gclass.gclass_flag & O.gcflag_ignore_unknown_attrs ? 0 : be, e) < 0 && (qt(`${Fe(e)} json2data() FAILED`), Xt(r));
630
+ })(Q(e), r, -1, e.gclass.gclass_flag & O.gcflag_ignore_unknown_attrs ? 0 : be, e) < 0 && (Ht(`${Fe(e)} json2data() FAILED`), Xt(r));
631
631
  }
632
632
  function Ee(e, n, r, o, s) {
633
633
  if (s & N.gobj_flag_yuno) {
634
- if (d) return qt("__yuno__ already created"), null;
634
+ if (d) return Ht("__yuno__ already created"), null;
635
635
  s |= N.gobj_flag_service;
636
636
  } else {
637
- if (!o) return qt("gobj NEEDS a parent!"), null;
638
- if (!("string" == typeof o || o instanceof S)) return qt(`BAD TYPE of parent: ${o}`), null;
639
- if (mn(o) && !(o = fe(o))) return Ht(`parent service not found: ${o}`), null;
637
+ if (!o) return Ht("gobj NEEDS a parent!"), null;
638
+ if (!("string" == typeof o || o instanceof S)) return Ht(`BAD TYPE of parent: ${o}`), null;
639
+ if (mn(o) && !(o = fe(o))) return qt(`parent service not found: ${o}`), null;
640
640
  }
641
- if (s & N.gobj_flag_service && fe(e, !1)) return qt(`service ALREADY registered: ${n}^${e}`), null;
641
+ if (s & N.gobj_flag_service && fe(e, !1)) return Ht(`service ALREADY registered: ${n}^${e}`), null;
642
642
  if (s & N.gobj_flag_default_service) {
643
- if (b) return qt(`default service ALREADY registered: ${n}^${e}`), null;
643
+ if (b) return Ht(`default service ALREADY registered: ${n}^${e}`), null;
644
644
  s |= N.gobj_flag_service;
645
645
  }
646
- if (vn(n)) return qt("gclass_name must be a string"), null;
646
+ if (vn(n)) return Ht("gclass_name must be a string"), null;
647
647
  let i = ue(n, !1);
648
- if (!i) return qt(`GClass not registered: ${n}^${e}`), null;
649
- if (!mn(e)) return qt(`gobj_name must be a string: ${n}`), null;
648
+ if (!i) return Ht(`GClass not registered: ${n}^${e}`), null;
649
+ if (!mn(e)) return Ht(`gobj_name must be a string: ${n}`), null;
650
650
  if (!vn(e)) {
651
- if (e.includes("`")) return qt(`gobj_name cannot contain char ': ${n}^${e}`), null;
652
- if (e.includes("^")) return qt(`gobj_name cannot contain char ^: ${n}^${e}`), null;
651
+ if (e.includes("`")) return Ht(`gobj_name cannot contain char ': ${n}^${e}`), null;
652
+ if (e.includes("^")) return Ht(`gobj_name cannot contain char ^: ${n}^${e}`), null;
653
653
  }
654
654
  let _ = new S(e, i, r, o, s);
655
- _.jn_attrs = q(_, i.attrs_table);
655
+ _.jn_attrs = H(_, i.attrs_table);
656
656
  for (const [e, t] of Object.entries(_.jn_attrs)) e in _.priv && (_.priv[e] = t);
657
657
  let a = K(_);
658
658
  return a && $(t("💙💙⏩ creating: %s^%s", i.gclass_name, e)), _.gobj_flag & N.gobj_flag_service && ge(_), _.gobj_flag & N.gobj_flag_yuno && (d = _), _.gobj_flag & N.gobj_flag_default_service && (b = _), _.gobj_flag & N.gobj_flag_yuno || pe(o, _), _.obflag |= w.obflag_created, _.gclass.instances++, me(_, r), _.gobj_flag & N.gobj_flag_service && l && l(_, null), _.gclass.gmt.mt_create2 ? _.gclass.gmt.mt_create2(_, r) : _.gclass.gmt.mt_create && _.gclass.gmt.mt_create(_), o && o.gclass.gmt.mt_child_added && (a && $(t("👦👦🔵 child_added(%s): %s", Ge(o), Fe(_))), o.gclass.gmt.mt_child_added(o, _)), a && $(t("💙💙⏪ created: %s", Ge(_))), _;
@@ -661,8 +661,8 @@ function Te(e, t, n, r) {
661
661
  return Ee(e, t, n, r, N.gobj_flag_pure_child);
662
662
  }
663
663
  function he(e) {
664
- if (Ke(e)) return void qt("gobj NULL or DESTROYED");
665
- e.__refs__ > 0 && qt(`${Fe(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.playing && (qt(`Destroying a PLAYING gobj: ${Ge(e)}`), Re(e)), e.running && (qt(`Destroying a RUNNING gobj: ${Ge(e)}`), Se(e)), e.obflag |= w.obflag_destroying, function(e) {
664
+ if (Ke(e)) return void Ht("gobj NULL or DESTROYED");
665
+ e.__refs__ > 0 && Ht(`${Fe(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.playing && (Ht(`Destroying a PLAYING gobj: ${Ge(e)}`), Re(e)), e.running && (Ht(`Destroying a RUNNING gobj: ${Ge(e)}`), Se(e)), e.obflag |= w.obflag_destroying, function(e) {
666
666
  if (0 === Tt.length) return;
667
667
  for (let t of Tt) t.src === e && (t.src = null);
668
668
  Tt = Tt.filter((t) => t.dst !== e);
@@ -672,7 +672,7 @@ function he(e) {
672
672
  let r = Ve(e);
673
673
  r && r.gclass.gmt.mt_child_removed && (n && $(t("👦👦🔴 child_removed(%s): %s", Ge(r), Fe(e))), r.gclass.gmt.mt_child_removed(r, e)), e.gobj_flag & N.gobj_flag_service && function(e) {
674
674
  let t = Pe(e);
675
- t = t.toLowerCase(), p[t] ? delete p[t] : qt(`"service NOT found in register": ${t}`);
675
+ t = t.toLowerCase(), p[t] ? delete p[t] : Ht(`"service NOT found in register": ${t}`);
676
676
  }(e), Dt(e, e.dl_subscriptions, !0), Dt(e, e.dl_subscribings, !0), r && (de(r, e), Me(e) && (Ye(r) !== e || Ke(r) || Be(r, null))), function(e) {
677
677
  let t = e.dl_children.slice();
678
678
  for (let e = 0; e < t.length; e++) {
@@ -682,9 +682,9 @@ function he(e) {
682
682
  }(e), e.obflag & w.obflag_created && e.gclass.gmt.mt_destroy && e.gclass.gmt.mt_destroy(e), n && $(t("💔💔⏪ destroyed: %s", Ge(e))), e.obflag |= w.obflag_destroyed, e.obflag & w.obflag_created && e.gclass.instances--;
683
683
  }
684
684
  function ye(e) {
685
- if (Ke(e)) return qt("gobj NULL or DESTROYED"), -1;
686
- if (e.running) return qt(`${Fe(e)}: GObj ALREADY RUNNING`), -1;
687
- if (e.disabled) return qt(`${Fe(e)}: GObj DISABLED`), -1;
685
+ if (Ke(e)) return Ht("gobj NULL or DESTROYED"), -1;
686
+ if (e.running) return Ht(`${Fe(e)}: GObj ALREADY RUNNING`), -1;
687
+ if (e.disabled) return Ht(`${Fe(e)}: GObj DISABLED`), -1;
688
688
  Y(e) && $(t("⏺ ⏺ start: %s", Ge(e))), e.running = !0;
689
689
  let n = 0;
690
690
  return e.gclass.gmt.mt_start && (n = e.gclass.gmt.mt_start(e)), n;
@@ -696,9 +696,9 @@ function ve(e, t, n) {
696
696
  return e.gclass.gclass_flag & O.gcflag_manual_start || De(e) ? 1 : (xe(e) || ye(e), 0);
697
697
  }
698
698
  function Se(e) {
699
- if (Ke(e)) return qt("gobj NULL or DESTROYED"), -1;
700
- if (!e.running) return qt(`${Fe(e)}: GObj NOT RUNNING`), -1;
701
- e.playing && (Ht(`${Fe(e)}: GObj stopping without previous pause`), Re(e)), Y(e) && $(t("⏹ ⏹ stop: %s", Ge(e))), e.running = !1;
699
+ if (Ke(e)) return Ht("gobj NULL or DESTROYED"), -1;
700
+ if (!e.running) return Ht(`${Fe(e)}: GObj NOT RUNNING`), -1;
701
+ e.playing && (qt(`${Fe(e)}: GObj stopping without previous pause`), Re(e)), Y(e) && $(t("⏹ ⏹ stop: %s", Ge(e))), e.running = !1;
702
702
  let n = 0;
703
703
  return e.gclass.gmt.mt_stop && (n = e.gclass.gmt.mt_stop(e)), n;
704
704
  }
@@ -706,22 +706,22 @@ function Oe(e, t, n) {
706
706
  return xe(e) && Se(e), 0;
707
707
  }
708
708
  function Ne(e) {
709
- return Ke(e) ? (qt("gobj NULL or DESTROYED"), -1) : qe(e, x.WALK_FIRST2LAST, Oe, 0, 0);
709
+ return Ke(e) ? (Ht("gobj NULL or DESTROYED"), -1) : He(e, x.WALK_FIRST2LAST, Oe, 0, 0);
710
710
  }
711
711
  function we(e) {
712
- if (Ke(e)) return qt(`gobj NULL or DESTROYED: ${Fe(e)}`), -1;
713
- if (e.playing) return qt(`${Fe(e)}: GObj ALREADY PLAYING`), -1;
714
- if (e.disabled) return qt(`${Fe(e)}: GObj DISABLED`), -1;
712
+ if (Ke(e)) return Ht(`gobj NULL or DESTROYED: ${Fe(e)}`), -1;
713
+ if (e.playing) return Ht(`${Fe(e)}: GObj ALREADY PLAYING`), -1;
714
+ if (e.disabled) return Ht(`${Fe(e)}: GObj DISABLED`), -1;
715
715
  if (!xe(e)) {
716
- if (e.gclass.gclass_flag & O.gcflag_required_start_to_play) return qt(`${Fe(e)}: Cannot play, start not done`), -1;
717
- Ht(`${Fe(e)}: GObj playing without previous start`), ye(e);
716
+ if (e.gclass.gclass_flag & O.gcflag_required_start_to_play) return Ht(`${Fe(e)}: Cannot play, start not done`), -1;
717
+ qt(`${Fe(e)}: GObj playing without previous start`), ye(e);
718
718
  }
719
719
  Y(e) && $(t("⏯ ⏯ play: %s", Ge(e))), e.playing = !0;
720
720
  let n = 0;
721
721
  return e.gclass.gmt.mt_play && (n = e.gclass.gmt.mt_play(e), (n < 0 || !1 === n) && (e.playing = !1)), n;
722
722
  }
723
723
  function Re(e) {
724
- return Ke(e) ? (qt("gobj NULL or DESTROYED"), -1) : e.playing ? (Y(e) && $(t("⏸ ⏸ pause: %s", Ge(e))), e.playing = !1, e.gclass.gmt.mt_pause ? e.gclass.gmt.mt_pause(e) : 0) : (qt(`${Fe(e)}: GObj NOT PLAYING`), -1);
724
+ return Ke(e) ? (Ht("gobj NULL or DESTROYED"), -1) : e.playing ? (Y(e) && $(t("⏸ ⏸ pause: %s", Ge(e))), e.playing = !1, e.gclass.gmt.mt_pause ? e.gclass.gmt.mt_pause(e) : 0) : (Ht(`${Fe(e)}: GObj NOT PLAYING`), -1);
725
725
  }
726
726
  function xe(e) {
727
727
  return !Ke(e) && e.running;
@@ -751,50 +751,50 @@ function Le() {
751
751
  return e ? _t(e, "yuno_id") : "";
752
752
  }
753
753
  function Pe(e) {
754
- return jn(e) ? e.gobj_name : (qt("gobj bad type"), null);
754
+ return jn(e) ? e.gobj_name : (Ht("gobj bad type"), null);
755
755
  }
756
756
  function Ue(e) {
757
- return jn(e) ? e.gclass.gclass_name : (qt("gobj NULL of bad type"), null);
757
+ return jn(e) ? e.gclass.gclass_name : (Ht("gobj NULL of bad type"), null);
758
758
  }
759
759
  function Fe(e) {
760
- return jn(e) ? e.gclass.gclass_name + "^" + Pe(e) : (qt("gobj bad type"), null);
760
+ return jn(e) ? e.gclass.gclass_name + "^" + Pe(e) : (Ht("gobj bad type"), null);
761
761
  }
762
762
  function Ge(e) {
763
- if (!jn(e)) return qt("gobj NULL of bad type"), null;
763
+ if (!jn(e)) return Ht("gobj NULL of bad type"), null;
764
764
  let t = Fe(e), n = Ve(e);
765
765
  for (; n;) t = Fe(n) + "`" + t, n = Ve(n);
766
766
  return t;
767
767
  }
768
768
  function Ve(e) {
769
- return jn(e) ? e.parent : (qt("gobj NULL of bad type"), null);
769
+ return jn(e) ? e.parent : (Ht("gobj NULL of bad type"), null);
770
770
  }
771
771
  function Me(e) {
772
- return jn(e) ? !!(e.gobj_flag & N.gobj_flag_volatil) : (qt("gobj NULL of bad type"), null);
772
+ return jn(e) ? !!(e.gobj_flag & N.gobj_flag_volatil) : (Ht("gobj NULL of bad type"), null);
773
773
  }
774
774
  function We(e) {
775
- return jn(e) ? !!(e.gobj_flag & N.gobj_flag_pure_child) : (qt("gobj NULL of bad type"), null);
775
+ return jn(e) ? !!(e.gobj_flag & N.gobj_flag_pure_child) : (Ht("gobj NULL of bad type"), null);
776
776
  }
777
777
  function Ke(e) {
778
778
  return !jn(e) || !!(e.obflag & (w.obflag_destroyed | w.obflag_destroying));
779
779
  }
780
780
  function Ye(e) {
781
- return jn(e) ? e.bottom_gobj : (qt("gobj NULL of bad type"), null);
781
+ return jn(e) ? e.bottom_gobj : (Ht("gobj NULL of bad type"), null);
782
782
  }
783
783
  function Be(e, t) {
784
- if (!jn(e)) return qt("gobj NULL of bad type"), null;
785
- e.bottom_gobj && Ht(`${Fe(e)}: bottom_gobj already set`), e.bottom_gobj = t;
784
+ if (!jn(e)) return Ht("gobj NULL of bad type"), null;
785
+ e.bottom_gobj && qt(`${Fe(e)}: bottom_gobj already set`), e.bottom_gobj = t;
786
786
  }
787
787
  function Je(e, t, n) {
788
- return jn(e) ? t ? Z(e.gclass, t, n) : e.gclass.attrs_table : (qt("gobj NULL of bad type"), null);
789
- }
790
- function qe(e, t, n, r, o) {
791
- return Ke(e) ? (qt("gobj NULL, destroying, or bad type"), 0) : Qe(e.dl_children, t, n, r, o);
788
+ return jn(e) ? t ? Z(e.gclass, t, n) : e.gclass.attrs_table : (Ht("gobj NULL of bad type"), null);
792
789
  }
793
790
  function He(e, t, n, r, o) {
794
- return Ke(e) ? (qt("gobj NULL, destroying, or bad type"), 0) : Ze(e.dl_children, t, n, r, o);
791
+ return Ke(e) ? (Ht("gobj NULL, destroying, or bad type"), 0) : Qe(e.dl_children, t, n, r, o);
792
+ }
793
+ function qe(e, t, n, r, o) {
794
+ return Ke(e) ? (Ht("gobj NULL, destroying, or bad type"), 0) : Ze(e.dl_children, t, n, r, o);
795
795
  }
796
796
  function ze(e) {
797
- return "number" == typeof e && isFinite(e) ? e : (null == e || qt(`walk callback must return a NUMBER (-1 stop, 0 descend, >0 skip children), got ${typeof e}: taken as 0`), 0);
797
+ return "number" == typeof e && isFinite(e) ? e : (null == e || Ht(`walk callback must return a NUMBER (-1 stop, 0 descend, >0 skip children), got ${typeof e}: taken as 0`), 0);
798
798
  }
799
799
  function Qe(e, t, n, r, o) {
800
800
  let s, l = [...e];
@@ -832,7 +832,7 @@ function Ze(e, t, n, r, o) {
832
832
  return 0;
833
833
  }
834
834
  function et(e, t) {
835
- if (!jn(e)) return qt("gobj NULL of bad type"), !1;
835
+ if (!jn(e)) return Ht("gobj NULL of bad type"), !1;
836
836
  let n = t.__gclass_name__, r = t.__gobj_name__, o = t.__prefix_gobj_name__;
837
837
  t.__disabled__;
838
838
  let s = t.__state__;
@@ -848,7 +848,7 @@ function et(e, t) {
848
848
  return !0;
849
849
  }
850
850
  function tt(e, t) {
851
- if (Ke(e)) return qt("gobj NULL or DESTROYED"), null;
851
+ if (Ke(e)) return Ht("gobj NULL or DESTROYED"), null;
852
852
  const n = e.dl_children;
853
853
  for (let e = 0; e < n.length; e++) {
854
854
  const r = n[e];
@@ -884,7 +884,7 @@ function ot(e, t, n) {
884
884
  let n = r[t];
885
885
  return e.gclass.gmt.mt_reading ? e.gclass.gmt.mt_reading(e, t, n) : n;
886
886
  }
887
- return qt(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
887
+ return Ht(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
888
888
  }
889
889
  function st(e, t, n) {
890
890
  let r = {}, o = e.gclass.attrs_table;
@@ -905,21 +905,21 @@ function lt(e, t) {
905
905
  if (0 === Nn(t, "__service__")) return Ae(e);
906
906
  }
907
907
  let n = X(e, t, !1);
908
- return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? on(n, t) : e.gclass.gmt.mt_reading(e, t) : (qt(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
908
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? on(n, t) : e.gclass.gmt.mt_reading(e, t) : (Ht(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
909
909
  }
910
910
  function it(e, t) {
911
911
  t && Nn(t, "__trace_level__");
912
912
  let n = X(e, t, !1);
913
- return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? on(n, t) : e.gclass.gmt.mt_reading(e, t) : (qt(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
913
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? on(n, t) : e.gclass.gmt.mt_reading(e, t) : (Ht(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
914
914
  }
915
915
  function _t(e, t) {
916
916
  if (t && 0 === Nn(t, "__state__")) return dt(e);
917
917
  let n = X(e, t, !1);
918
- return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? on(n, t) : e.gclass.gmt.mt_reading(e, t) : (qt(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
918
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? on(n, t) : e.gclass.gmt.mt_reading(e, t) : (Ht(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
919
919
  }
920
920
  function at(e, t) {
921
921
  let n = X(e, t, !1);
922
- return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? on(n, t) : e.gclass.gmt.mt_reading(e, t) : (qt(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
922
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? on(n, t) : e.gclass.gmt.mt_reading(e, t) : (Ht(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
923
923
  }
924
924
  function ut(e, t, n, r) {
925
925
  let o = Q(e), s = 0;
@@ -931,21 +931,21 @@ function ut(e, t, n, r) {
931
931
  }
932
932
  function ct(e, t, n) {
933
933
  let r = X(e, t, !1);
934
- return r ? (r[t] = Sn(n), dn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (qt(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
934
+ return r ? (r[t] = Sn(n), dn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Ht(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
935
935
  }
936
936
  function ft(e, t, n) {
937
937
  let r = X(e, t, !1);
938
- return r ? (r[t] = parseInt(n), dn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (qt(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
938
+ return r ? (r[t] = parseInt(n), dn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Ht(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
939
939
  }
940
940
  function gt(e, t, n) {
941
941
  let r = X(e, t, !1);
942
- return r ? (r[t] = String(n), dn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (qt(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
942
+ return r ? (r[t] = String(n), dn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Ht(`${Fe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
943
943
  }
944
944
  function pt(e, n) {
945
- if (Ke(e)) return qt("gobj NULL or DESTROYED"), null;
945
+ if (Ke(e)) return Ht("gobj NULL or DESTROYED"), null;
946
946
  if (e.current_state.state_name === n) return !1;
947
947
  let r = ne(e.gclass, n);
948
- if (!r) return qt(`${Fe(e)}: state unknown, state ${n}`), !1;
948
+ if (!r) return Ht(`${Fe(e)}: state unknown, state ${n}`), !1;
949
949
  e.last_state = e.current_state, e.current_state = r;
950
950
  let o = B(e, "EV_STATE_CHANGED"), s = !!function(e) {
951
951
  return V(e) & C.TRACE_STATES;
@@ -953,10 +953,10 @@ function pt(e, n) {
953
953
  return (o || s) && (1 === I || $(t("🔀🔀 mach(%s%s^%s), new st(%s), prev st(%s)", e.running ? "" : "!!", Ue(e), Pe(e), dt(e), e.last_state.state_name))), !0;
954
954
  }
955
955
  function dt(e) {
956
- return jn(e) ? e.current_state.state_name : (qt("hgobj NULL"), "");
956
+ return jn(e) ? e.current_state.state_name : (Ht("hgobj NULL"), "");
957
957
  }
958
958
  function bt(e, t, n) {
959
- if (!jn(e)) return qt("gobj NULL of bad type"), null;
959
+ if (!jn(e)) return Ht("gobj NULL of bad type"), null;
960
960
  let r = _e(e.gclass, t);
961
961
  if (r) return r;
962
962
  if (n) {
@@ -986,14 +986,14 @@ function yt() {
986
986
  return Tt.length > 0 && !ht && (ht = !0, setTimeout(yt, 0)), t;
987
987
  }
988
988
  function jt(e, n, r, o) {
989
- if (!(e && e instanceof S)) return qt("gobj dst NULL"), -1;
990
- if (e.obflag & (w.obflag_destroyed | w.obflag_destroying)) return qt("gobj dst DESTROYED"), -1;
989
+ if (!(e && e instanceof S)) return Ht("gobj dst NULL"), -1;
990
+ if (e.obflag & (w.obflag_destroyed | w.obflag_destroying)) return Ht("gobj dst DESTROYED"), -1;
991
991
  let s = e.current_state;
992
- if (!s) return qt(`${Fe(e)}: current_state NULL`), -1;
992
+ if (!s) return Ht(`${Fe(e)}: current_state NULL`), -1;
993
993
  let l = B(e, n) && !J(o, n);
994
994
  m++;
995
995
  let i = re(s, n);
996
- if (!i) return e.gclass.gmt.mt_inject_event ? (m--, l && ($(1 === I ? t("🔜 %s %s%s %s", n || "", e.running ? "" : "!!", Fe(e), s.state_name) : t("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", Fe(e), s.state_name, n || "", o && !o.running ? "!!" : "", Fe(o))), r && l > 1 && fn(r) && Xt(r)), e.gclass.gmt.mt_inject_event(e, n, r, o)) : (l && $(t("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Ue(e), Pe(e), s.state_name, n || "", o && !o.running ? "!!" : "", Ue(o), Pe(o))), qt(`📛📛 Event NOT DEFINED in state 📛📛: ${Fe(e)}, ${s.state_name}, ${n}`), m--, -1);
996
+ if (!i) return e.gclass.gmt.mt_inject_event ? (m--, l && ($(1 === I ? t("🔜 %s %s%s %s", n || "", e.running ? "" : "!!", Fe(e), s.state_name) : t("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", Fe(e), s.state_name, n || "", o && !o.running ? "!!" : "", Fe(o))), r && l > 1 && fn(r) && Xt(r)), e.gclass.gmt.mt_inject_event(e, n, r, o)) : (l && $(t("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Ue(e), Pe(e), s.state_name, n || "", o && !o.running ? "!!" : "", Ue(o), Pe(o))), Ht(`📛📛 Event NOT DEFINED in state 📛📛: ${Fe(e)}, ${s.state_name}, ${n}`), m--, -1);
997
997
  if (l) {
998
998
  if (1 === I) $(t("🔄 %s %s%s %s from %s%s", n || "", e.running ? "" : "!!", Fe(e), s.state_name, o && !o.running ? "!!" : "", Fe(o)));
999
999
  else {
@@ -1062,11 +1062,11 @@ function Rt(e, n, r, o) {
1062
1062
  if (!!(In(e, n, "subs_flag", null, $t.KW_REQUIRED) & vt.__hard_subscription__) && !r) return -1;
1063
1063
  d && lt(d, "trace_subscriptions") && ($(t("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", i || "", Fe(s), Fe(l))), Xt(n)), s.obflag & w.obflag_destroyed || o || s.gclass.gmt.mt_subscription_deleted && s.gclass.gmt.mt_subscription_deleted(s, n);
1064
1064
  let _ = wt(s.dl_subscriptions, s, i, n, l);
1065
- return _ >= 0 ? cn(s.dl_subscriptions, _) : (qt(`${Fe(e)}: subscription in publisher not found`), Xt(n)), _ = wt(l.dl_subscribings, s, i, n, l), _ >= 0 ? cn(l.dl_subscribings, _) : (qt(`${Fe(e)}: subscription in subscriber not found`), Xt(n)), 0;
1065
+ return _ >= 0 ? cn(s.dl_subscriptions, _) : (Ht(`${Fe(e)}: subscription in publisher not found`), Xt(n)), _ = wt(l.dl_subscribings, s, i, n, l), _ >= 0 ? cn(l.dl_subscribings, _) : (Ht(`${Fe(e)}: subscription in subscriber not found`), Xt(n)), 0;
1066
1066
  }
1067
1067
  function xt(e, n, r, o) {
1068
- if (null == r && (r = {}), !e) return qt(`publisher NULL: ev ${n}`), 0;
1069
- if (!o) return qt(`subscriber NULL: ev ${n}`), 0;
1068
+ if (null == r && (r = {}), !e) return Ht(`publisher NULL: ev ${n}`), 0;
1069
+ if (!o) return Ht(`subscriber NULL: ev ${n}`), 0;
1070
1070
  const s = /* @__PURE__ */ new Set([
1071
1071
  "__config__",
1072
1072
  "__global__",
@@ -1075,13 +1075,13 @@ function xt(e, n, r, o) {
1075
1075
  "__service__"
1076
1076
  ]);
1077
1077
  if (Object.keys(r).forEach((t) => {
1078
- s.has(t) || qt(`${Fe(e)}: key ignored in subscription (key: ${t}, event: ${n})`);
1078
+ s.has(t) || Ht(`${Fe(e)}: key ignored in subscription (key: ${t}, event: ${n})`);
1079
1079
  }), vn(n)) n = "";
1080
- else if (!(Et(e, n, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & O.gcflag_no_check_output_events)) return qt(`event NOT in output event list: ${Fe(e)}, ${n}`), 0;
1080
+ else if (!(Et(e, n, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & O.gcflag_no_check_output_events)) return Ht(`event NOT in output event list: ${Fe(e)}, ${n}`), 0;
1081
1081
  let l = Nt(e.dl_subscriptions, e, n, r, o);
1082
- gn(l) > 0 && (qt(`${Fe(e)}: ${gn(l)} subscription(s) REPEATED, will be deleted and override`), Xt(l, "subscription REPEATED"), Dt(e, l, !1));
1082
+ gn(l) > 0 && (Ht(`${Fe(e)}: ${gn(l)} subscription(s) REPEATED, will be deleted and override`), Xt(l, "subscription REPEATED"), Dt(e, l, !1));
1083
1083
  let i = function(e, t, n, r) {
1084
- let o = q(e, St);
1084
+ let o = H(e, St);
1085
1085
  _n(o, "event", t), _n(o, "subscriber", r), _n(o, "publisher", e);
1086
1086
  let s = 0;
1087
1087
  if (n) {
@@ -1101,7 +1101,7 @@ function xt(e, n, r, o) {
1101
1101
  }
1102
1102
  return _n(o, "subs_flag", s), o;
1103
1103
  }(e, n, r, o);
1104
- if (!i) return qt(`${Fe(e)}: _create_subscription() FAILED`), 0;
1104
+ if (!i) return Ht(`${Fe(e)}: _create_subscription() FAILED`), 0;
1105
1105
  if (an(e.dl_subscriptions, i), an(o.dl_subscribings, i), d && lt(d, "trace_subscriptions") && ($(t("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", n || "", Fe(e), Fe(o))), r && Xt(r)), e.gclass.gmt.mt_subscription_added) {
1106
1106
  let t = e.gclass.gmt.mt_subscription_added(e, i);
1107
1107
  (t < 0 || !1 === t) && (Rt(e, i, !0, !0), i = 0);
@@ -1120,10 +1120,10 @@ function kt(e, t, n, r) {
1120
1120
  return Nt(e.dl_subscribings, r, t, n, e);
1121
1121
  }
1122
1122
  function It(e, n, r) {
1123
- if (dn(r) || (r = {}), !e || e.obflag & (w.obflag_destroyed | w.obflag_destroying)) return qt("gobj NULL or DESTROYED"), -1;
1124
- if (vn(n)) return qt(`${Fe(e)}: event EMPTY`), -1;
1123
+ if (dn(r) || (r = {}), !e || e.obflag & (w.obflag_destroyed | w.obflag_destroying)) return Ht("gobj NULL or DESTROYED"), -1;
1124
+ if (vn(n)) return Ht(`${Fe(e)}: event EMPTY`), -1;
1125
1125
  let o = bt(e, n, !0);
1126
- if (!(o && o.event_flag & (R.EVF_SYSTEM_EVENT | R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & O.gcflag_no_check_output_events)) return qt(`event NOT in output event list: ${Fe(e)}, ev ${n}`), -1;
1126
+ if (!(o && o.event_flag & (R.EVF_SYSTEM_EVENT | R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & O.gcflag_no_check_output_events)) return Ht(`event NOT in output event list: ${Fe(e)}, ev ${n}`), -1;
1127
1127
  let s = d && lt(d, "trace_subscriptions");
1128
1128
  if (s && ($(1 === I ? t("🔝🔝 %s %s%s %s", n || "", e.running ? "" : "!!", Fe(e), e.current_state.state_name) : t("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Ue(e), Pe(e), e.current_state.state_name, "", n || "", "")), fn(r) && Xt(r)), e.gclass.gmt.mt_publish_event) {
1129
1129
  let t = e.gclass.gmt.mt_publish_event(e, n, r);
@@ -1156,7 +1156,7 @@ function It(e, n, r) {
1156
1156
  if (_ += b, i++, Ke(e)) break;
1157
1157
  }
1158
1158
  }
1159
- return i || o && o.event_flag & R.EVF_NO_WARN_SUBS || Ht(`${Fe(e)}: Publish event WITHOUT subscribers, ev ${n}`), _;
1159
+ return i || o && o.event_flag & R.EVF_NO_WARN_SUBS || qt(`${Fe(e)}: Publish event WITHOUT subscribers, ev ${n}`), _;
1160
1160
  }
1161
1161
  var $t = Object.freeze({
1162
1162
  KW_REQUIRED: 1,
@@ -1226,11 +1226,11 @@ function Jt(e) {
1226
1226
  } else n = t.map((e) => "object" == typeof e ? JSON.stringify(e) : String(e)).join(" ");
1227
1227
  return n;
1228
1228
  }
1229
- function qt(e) {
1229
+ function Ht(e) {
1230
1230
  let t = Jt(e), n = _r();
1231
1231
  Lt && (Lt === Ct.error ? Wt("error", t) && Lt("%c" + n + " ERROR: " + String(t), "color:red") : (Wt("error", t) && Ct.error("%c" + n + " ERROR: " + String(t), "color:red"), Lt(`${n} ERROR: ${String(t)}`))), Yt("error", t, n);
1232
1232
  }
1233
- function Ht(e) {
1233
+ function qt(e) {
1234
1234
  let t = Jt(e), n = _r();
1235
1235
  Pt && (Pt === Ct.warn ? Wt("warning", t) && Pt("%c" + n + " WARNING: " + String(t), "color:yellow") : (Wt("warning", t) && Ct.warn("%c" + n + " WARNING: " + String(t), "color:yellow"), Pt(`${n} WARNING: ${String(t)}`))), Yt("warning", t, n);
1236
1236
  }
@@ -1372,16 +1372,16 @@ function xn(e, t) {
1372
1372
  return !(!(t in e) || !e.hasOwnProperty(t));
1373
1373
  }
1374
1374
  function Dn(e, t, n, r) {
1375
- if (e && !jn(e) && qt("GObj bad instanceof"), !dn(t) && !bn(t)) return qt(`${Fe(e)}: kw must be list or dict`), 0;
1376
- if (!mn(n)) return qt(`${Fe(e)}: path must be a string: ${String(n)}`), 0;
1375
+ if (e && !jn(e) && Ht("GObj bad instanceof"), !dn(t) && !bn(t)) return Ht(`${Fe(e)}: kw must be list or dict`), 0;
1376
+ if (!mn(n)) return Ht(`${Fe(e)}: path must be a string: ${String(n)}`), 0;
1377
1377
  let o = n.split("`");
1378
1378
  if (o.length <= 1) return t[n];
1379
1379
  let s = o.length;
1380
- for (let l = 0; l < s; l++) if (void 0 === (t = t[o[l]])) return void (r && qt(`${Fe(e)}: path not found: ${String(n)}`));
1380
+ for (let l = 0; l < s; l++) if (void 0 === (t = t[o[l]])) return void (r && Ht(`${Fe(e)}: path not found: ${String(n)}`));
1381
1381
  return t;
1382
1382
  }
1383
1383
  function An(e, t, n) {
1384
- e && !jn(e) && qt("GObj bad instanceof");
1384
+ e && !jn(e) && Ht("GObj bad instanceof");
1385
1385
  let [r, o] = function(e, t) {
1386
1386
  let n = e.lastIndexOf(t);
1387
1387
  return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
@@ -1389,7 +1389,7 @@ function An(e, t, n) {
1389
1389
  return vn(o) ? sn(t, n) : sn(Dn(e, t, r, !0), o), 0;
1390
1390
  }
1391
1391
  function kn(e, t, n, r, o) {
1392
- e && !jn(e) && qt("GObj bad instanceof");
1392
+ e && !jn(e) && Ht("GObj bad instanceof");
1393
1393
  let s = Dn(e, t, n, !1);
1394
1394
  const l = o && o & $t.KW_REQUIRED, i = o && o & $t.KW_CREATE, _ = o && o & $t.KW_EXTRACT;
1395
1395
  if (void 0 === s) {
@@ -1397,12 +1397,12 @@ function kn(e, t, n, r, o) {
1397
1397
  let o = Boolean(r);
1398
1398
  return Un(e, t, n, o), o;
1399
1399
  }
1400
- return l && (qt(`path not found: '${n}'`), Xt(t)), Boolean(r);
1400
+ return l && (Ht(`path not found: '${n}'`), Xt(t)), Boolean(r);
1401
1401
  }
1402
1402
  return _ && An(e, t, n), Boolean(s);
1403
1403
  }
1404
1404
  function In(e, t, n, r, o) {
1405
- e && !jn(e) && qt("GObj bad instanceof");
1405
+ e && !jn(e) && Ht("GObj bad instanceof");
1406
1406
  let s = Dn(e, t, n, !1);
1407
1407
  const l = o && o & $t.KW_REQUIRED, i = o && o & $t.KW_CREATE, _ = o && o & $t.KW_EXTRACT;
1408
1408
  if (void 0 === s) {
@@ -1410,12 +1410,12 @@ function In(e, t, n, r, o) {
1410
1410
  let o = parseInt(r);
1411
1411
  return Un(e, t, n, o), o;
1412
1412
  }
1413
- return l && (qt(`path not found: '${n}'`), Xt(t)), parseInt(r);
1413
+ return l && (Ht(`path not found: '${n}'`), Xt(t)), parseInt(r);
1414
1414
  }
1415
- return _ && An(e, t, n), En(s) ? parseInt(s) : (l && (qt(`path value MUST BE a number: ${n}`), Qt(t)), parseInt(r));
1415
+ return _ && An(e, t, n), En(s) ? parseInt(s) : (l && (Ht(`path value MUST BE a number: ${n}`), Qt(t)), parseInt(r));
1416
1416
  }
1417
1417
  function $n(e, t, n, r, o) {
1418
- e && !jn(e) && qt("GObj bad instanceof");
1418
+ e && !jn(e) && Ht("GObj bad instanceof");
1419
1419
  let s = Dn(e, t, n, !1);
1420
1420
  const l = o && o & $t.KW_REQUIRED, i = o && o & $t.KW_CREATE, _ = o && o & $t.KW_EXTRACT;
1421
1421
  if (void 0 === s) {
@@ -1423,12 +1423,12 @@ function $n(e, t, n, r, o) {
1423
1423
  let o = String(r);
1424
1424
  return Un(e, t, n, o), o;
1425
1425
  }
1426
- return l && (qt(`path not found: '${n}'`), Xt(t)), String(r);
1426
+ return l && (Ht(`path not found: '${n}'`), Xt(t)), String(r);
1427
1427
  }
1428
- return _ && An(e, t, n), mn(s) ? String(s) : (l && (qt(`${Fe(e)}: path value MUST BE a string: ${n}`), Qt(t)), String(r));
1428
+ return _ && An(e, t, n), mn(s) ? String(s) : (l && (Ht(`${Fe(e)}: path value MUST BE a string: ${n}`), Qt(t)), String(r));
1429
1429
  }
1430
1430
  function Cn(e, t, n, r, o) {
1431
- e && !jn(e) && qt("GObj bad instanceof");
1431
+ e && !jn(e) && Ht("GObj bad instanceof");
1432
1432
  let s = Dn(e, t, n, !1);
1433
1433
  const l = o && o & $t.KW_REQUIRED, i = o && o & $t.KW_CREATE, _ = o && o & $t.KW_EXTRACT;
1434
1434
  if (void 0 === s) {
@@ -1436,12 +1436,12 @@ function Cn(e, t, n, r, o) {
1436
1436
  let o = r;
1437
1437
  return Un(e, t, n, o), o;
1438
1438
  }
1439
- return l && (qt(`path not found: '${n}'`), Xt(t)), r;
1439
+ return l && (Ht(`path not found: '${n}'`), Xt(t)), r;
1440
1440
  }
1441
1441
  return _ && An(e, t, n), s;
1442
1442
  }
1443
1443
  function Ln(e, t, n, r, o) {
1444
- e && !jn(e) && qt("GObj bad instanceof");
1444
+ e && !jn(e) && Ht("GObj bad instanceof");
1445
1445
  let s = Dn(e, t, n, !1);
1446
1446
  const l = o && o & $t.KW_REQUIRED, i = o && o & $t.KW_CREATE, _ = o && o & $t.KW_EXTRACT;
1447
1447
  if (void 0 === s) {
@@ -1449,12 +1449,12 @@ function Ln(e, t, n, r, o) {
1449
1449
  let o = Object(r);
1450
1450
  return Un(e, t, n, o), o;
1451
1451
  }
1452
- return l && (qt(`path not found: '${n}'`), Xt(t)), Object(r);
1452
+ return l && (Ht(`path not found: '${n}'`), Xt(t)), Object(r);
1453
1453
  }
1454
- return _ && An(e, t, n), dn(s) ? Object(s) : (l && (qt(`path value MUST BE a dict: ${n}`), Qt(t)), Object(r));
1454
+ return _ && An(e, t, n), dn(s) ? Object(s) : (l && (Ht(`path value MUST BE a dict: ${n}`), Qt(t)), Object(r));
1455
1455
  }
1456
1456
  function Pn(e, t, n, r, o) {
1457
- e && !jn(e) && qt("GObj bad instanceof");
1457
+ e && !jn(e) && Ht("GObj bad instanceof");
1458
1458
  let s = Dn(e, t, n, !1);
1459
1459
  const l = o && o & $t.KW_REQUIRED, i = o && o & $t.KW_CREATE, _ = o && o & $t.KW_EXTRACT;
1460
1460
  if (void 0 === s) {
@@ -1462,12 +1462,12 @@ function Pn(e, t, n, r, o) {
1462
1462
  let o = r;
1463
1463
  return Un(e, t, n, o), o;
1464
1464
  }
1465
- return l && (qt(`path not found: '${n}'`), Xt(t)), r;
1465
+ return l && (Ht(`path not found: '${n}'`), Xt(t)), r;
1466
1466
  }
1467
1467
  return _ && An(e, t, n), s;
1468
1468
  }
1469
1469
  function Un(e, t, n, r) {
1470
- if (e && !jn(e) && qt("GObj bad instanceof"), !dn(t)) return qt("kw is not an object"), -1;
1470
+ if (e && !jn(e) && Ht("GObj bad instanceof"), !dn(t)) return Ht("kw is not an object"), -1;
1471
1471
  let o = n.split("`");
1472
1472
  if (o.length <= 1) return t[n] = r, 0;
1473
1473
  let s = o.length;
@@ -1478,9 +1478,9 @@ function Un(e, t, n, r) {
1478
1478
  return 0;
1479
1479
  }
1480
1480
  function Fn(e, t, n, r, o) {
1481
- if (e && !jn(e) && qt("GObj bad instanceof"), !dn(t)) return qt("kw is not an object"), -1;
1481
+ if (e && !jn(e) && Ht("GObj bad instanceof"), !dn(t)) return Ht("kw is not an object"), -1;
1482
1482
  let s = Ln(e, t, n, {}, !0);
1483
- return dn(s) ? (s[r] = o, 0) : (qt("subdict is not an object"), -1);
1483
+ return dn(s) ? (s[r] = o, 0) : (Ht("subdict is not an object"), -1);
1484
1484
  }
1485
1485
  function Gn(e, n, r) {
1486
1486
  let o = "", s = !1;
@@ -1516,17 +1516,17 @@ function Vn(e, t) {
1516
1516
  return 0 === pn(t) || Gn(e, t, "");
1517
1517
  }
1518
1518
  function Mn(e, t, n, r) {
1519
- e && !jn(e) && qt("GObj bad instanceof");
1519
+ e && !jn(e) && Ht("GObj bad instanceof");
1520
1520
  let o = {};
1521
1521
  if (mn(n) && !vn(n)) {
1522
1522
  let s = n;
1523
- t.hasOwnProperty(s) ? o[s] = t[s] : r && qt(`${Fe(e)}: key not found: ${s}`);
1524
- } else if (dn(n) && fn(n) > 0) for (let s of Object.keys(n)) t.hasOwnProperty(s) ? o[s] = t[s] : r && qt(`${Fe(e)}: key not found: ${s}`);
1523
+ t.hasOwnProperty(s) ? o[s] = t[s] : r && Ht(`${Fe(e)}: key not found: ${s}`);
1524
+ } else if (dn(n) && fn(n) > 0) for (let s of Object.keys(n)) t.hasOwnProperty(s) ? o[s] = t[s] : r && Ht(`${Fe(e)}: key not found: ${s}`);
1525
1525
  else {
1526
1526
  if (!(bn(n) && gn(n) > 0)) return t;
1527
1527
  for (let s = 0; s < n.length; s++) {
1528
1528
  let l = n[s];
1529
- t.hasOwnProperty(l) ? o[l] = t[l] : r && qt(`${Fe(e)}: key not found: ${l}`);
1529
+ t.hasOwnProperty(l) ? o[l] = t[l] : r && Ht(`${Fe(e)}: key not found: ${l}`);
1530
1530
  }
1531
1531
  }
1532
1532
  return o;
@@ -1535,13 +1535,13 @@ function Wn(e, t, n, r) {
1535
1535
  let o = {};
1536
1536
  if (tn(o, t), mn(n) && !vn(n)) {
1537
1537
  let s = n;
1538
- Pn(e, t, s, 0, 0) ? sn(o, s) : r && qt(`${Fe(e)}: key not found: ${s}`);
1539
- } else if (dn(n) && fn(n) > 0) for (let s of Object.keys(n)) t.hasOwnProperty(s) ? sn(o, s) : r && qt(`${Fe(e)}: key not found: ${s}`);
1538
+ Pn(e, t, s, 0, 0) ? sn(o, s) : r && Ht(`${Fe(e)}: key not found: ${s}`);
1539
+ } else if (dn(n) && fn(n) > 0) for (let s of Object.keys(n)) t.hasOwnProperty(s) ? sn(o, s) : r && Ht(`${Fe(e)}: key not found: ${s}`);
1540
1540
  else {
1541
1541
  if (!(bn(n) && gn(n) > 0)) return {};
1542
1542
  for (let s = 0; s < n.length; s++) {
1543
1543
  let l = n[s];
1544
- t.hasOwnProperty(l) ? sn(o, l) : r && qt(`${Fe(e)}: key not found: ${l}`);
1544
+ t.hasOwnProperty(l) ? sn(o, l) : r && Ht(`${Fe(e)}: key not found: ${l}`);
1545
1545
  }
1546
1546
  }
1547
1547
  return o;
@@ -1556,11 +1556,11 @@ function Kn(e, t, n = !1) {
1556
1556
  }
1557
1557
  function Yn(e, t) {
1558
1558
  if ("undefined" == typeof window || !window.localStorage) return 0;
1559
- if (!e || void 0 === t) return qt(`kw_set_local_storage_value(): invalid key or value: key=${e}`), -1;
1559
+ if (!e || void 0 === t) return Ht(`kw_set_local_storage_value(): invalid key or value: key=${e}`), -1;
1560
1560
  try {
1561
1561
  return window.localStorage.setItem(e, JSON.stringify(t)), 0;
1562
1562
  } catch (t) {
1563
- return qt(`kw_set_local_storage_value(): cannot save "${e}" (storage full or blocked?): ${t && t.message ? t.message : t}`), -1;
1563
+ return Ht(`kw_set_local_storage_value(): cannot save "${e}" (storage full or blocked?): ${t && t.message ? t.message : t}`), -1;
1564
1564
  }
1565
1565
  }
1566
1566
  function Bn(e) {
@@ -1582,8 +1582,8 @@ function Jn(e, t) {
1582
1582
  } else if (mn(e) && e === t) return !0;
1583
1583
  return !1;
1584
1584
  }
1585
- function qn(e, t, n, r, o) {
1586
- if (e && !jn(e) && qt("GObj bad instanceof"), !t) return null;
1585
+ function Hn(e, t, n, r, o) {
1586
+ if (e && !jn(e) && Ht("GObj bad instanceof"), !t) return null;
1587
1587
  o || (o = Vn);
1588
1588
  let s = [];
1589
1589
  if (bn(t)) for (let l = 0; l < t.length; l++) {
@@ -1596,7 +1596,7 @@ function qn(e, t, n, r, o) {
1596
1596
  Jn(n, i) && o(_, r) && s.push(_);
1597
1597
  }
1598
1598
  else {
1599
- if (!dn(t)) return qt("kw_collect() BAD kw parameter"), null;
1599
+ if (!dn(t)) return Ht("kw_collect() BAD kw parameter"), null;
1600
1600
  for (let e of Object.keys(t)) {
1601
1601
  let l = t[e];
1602
1602
  Jn(n, e) && o(l, r) && s.push(l);
@@ -1604,13 +1604,13 @@ function qn(e, t, n, r, o) {
1604
1604
  }
1605
1605
  return s;
1606
1606
  }
1607
- function Hn(e, t) {
1607
+ function qn(e, t) {
1608
1608
  if (!e) return -1;
1609
1609
  for (let n = 0; n < e.length; n++) if (e[n] && e[n].id === t) return n;
1610
1610
  return -1;
1611
1611
  }
1612
1612
  function zn(e, t, n) {
1613
- if (!e || !t) return qt("ERROR: str_in_list() list or str empty"), !1;
1613
+ if (!e || !t) return Ht("ERROR: str_in_list() list or str empty"), !1;
1614
1614
  let r = e.length;
1615
1615
  if (n) {
1616
1616
  t = t.toLowerCase();
@@ -1634,21 +1634,21 @@ function Xn(e, t, n) {
1634
1634
  r || (r = {}, e.__md_iev__ = r), r[t] = n;
1635
1635
  }
1636
1636
  function Zn(e, t, n, r) {
1637
- if (!jn(e)) return qt("gobj is not a GObj"), null;
1637
+ if (!jn(e)) return Ht("gobj is not a GObj"), null;
1638
1638
  if (!t) return;
1639
1639
  let o = Qn(t, n);
1640
1640
  o || (o = [], Xn(t, n, o));
1641
1641
  try {
1642
1642
  bn(o) && o.unshift(r);
1643
1643
  } catch (e) {
1644
- qt(e);
1644
+ Ht(e);
1645
1645
  }
1646
1646
  }
1647
1647
  function er(e, t, n, r) {
1648
- if (!jn(e)) return qt("gobj is not a GObj"), null;
1649
- if (!dn(t)) return qt("kw is not a dict"), null;
1648
+ if (!jn(e)) return Ht("gobj is not a GObj"), null;
1649
+ if (!dn(t)) return Ht("kw is not a dict"), null;
1650
1650
  let o = Qn(t, n);
1651
- return o ? 0 === o.length ? (r && qt(`stack empty: ${n}`), null) : o[0] : (r && qt(`stack NOT FOUND: ${n}`), null);
1651
+ return o ? 0 === o.length ? (r && Ht(`stack empty: ${n}`), null) : o[0] : (r && Ht(`stack NOT FOUND: ${n}`), null);
1652
1652
  }
1653
1653
  function tr(e, t, n) {
1654
1654
  return vn(n) ? An(e, t, "__md_iev__`__msg_type__") : Fn(e, t, "__md_iev__", "__msg_type__", n), 0;
@@ -1776,7 +1776,7 @@ function Er(e, t) {
1776
1776
  if (mn(t)) {
1777
1777
  if (-1 === t.indexOf("^")) {
1778
1778
  let n, r, o = e.fkey;
1779
- if (1 !== fn(o)) return qt("bad fkey 1"), qt(e), qt(t), null;
1779
+ if (1 !== fn(o)) return Ht("bad fkey 1"), Ht(e), Ht(t), null;
1780
1780
  for (const e of Object.keys(o)) {
1781
1781
  n = e, r = o[e];
1782
1782
  break;
@@ -1789,7 +1789,7 @@ function Er(e, t) {
1789
1789
  }
1790
1790
  {
1791
1791
  let n = t.split("^");
1792
- return 3 !== n.length ? (qt("bad fkey 2"), qt(e), qt(t), null) : {
1792
+ return 3 !== n.length ? (Ht("bad fkey 2"), Ht(e), Ht(t), null) : {
1793
1793
  topic_name: n[0],
1794
1794
  id: n[1],
1795
1795
  hook_name: n[2]
@@ -1800,7 +1800,7 @@ function Er(e, t) {
1800
1800
  topic_name: t.topic_name,
1801
1801
  id: t.id,
1802
1802
  hook_name: t.hook_name
1803
- } : (qt("bad fkey 3"), qt(e), qt(t), null);
1803
+ } : (Ht("bad fkey 3"), Ht(e), Ht(t), null);
1804
1804
  }
1805
1805
  var Tr = [
1806
1806
  "string",
@@ -1941,13 +1941,13 @@ var wr = {
1941
1941
  mt_destroy: function(e) {}
1942
1942
  };
1943
1943
  function Rr(e, t) {
1944
- return e instanceof S ? "C_TIMER" !== Ue(e) ? (qt("not C_TIMER GObj"), -1) : (ct(e, "periodic", !1), void ft(e, "msec", t)) : (qt("not GObj TYPE"), -1);
1944
+ return e instanceof S ? "C_TIMER" !== Ue(e) ? (Ht("not C_TIMER GObj"), -1) : (ct(e, "periodic", !1), void ft(e, "msec", t)) : (Ht("not GObj TYPE"), -1);
1945
1945
  }
1946
1946
  function xr(e, t) {
1947
- return e instanceof S ? "C_TIMER" !== Ue(e) ? (qt("not C_TIMER GObj"), -1) : (ct(e, "periodic", !0), void ft(e, "msec", t)) : (qt("not GObj TYPE"), -1);
1947
+ return e instanceof S ? "C_TIMER" !== Ue(e) ? (Ht("not C_TIMER GObj"), -1) : (ct(e, "periodic", !0), void ft(e, "msec", t)) : (Ht("not GObj TYPE"), -1);
1948
1948
  }
1949
1949
  function Dr(e) {
1950
- return e instanceof S ? "C_TIMER" !== Ue(e) ? (qt("not C_TIMER GObj"), -1) : void ft(e, "msec", -1) : (qt("not GObj TYPE"), -1);
1950
+ return e instanceof S ? "C_TIMER" !== Ue(e) ? (Ht("not C_TIMER GObj"), -1) : void ft(e, "msec", -1) : (Ht("not GObj TYPE"), -1);
1951
1951
  }
1952
1952
  var Ar = [
1953
1953
  j(E.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
@@ -2029,14 +2029,14 @@ var Lr = "ievent_gate_stack", Pr = [
2029
2029
  retry_ms: 0
2030
2030
  }, Fr = null;
2031
2031
  function Gr(e) {
2032
- e.priv.websocket && qt("Websocket ALREADY setup");
2032
+ e.priv.websocket && Ht("Websocket ALREADY setup");
2033
2033
  const t = _t(e, "url");
2034
2034
  let n;
2035
2035
  zt(`====> Starting WebSocket to '${t}' (${Fe(e)})`);
2036
2036
  try {
2037
2037
  n = new WebSocket(t);
2038
2038
  } catch (n) {
2039
- return qt(`${Fe(e)}: Cannot open WebSocket to '${t}', Error: ${n.message}`), null;
2039
+ return Ht(`${Fe(e)}: Cannot open WebSocket to '${t}', Error: ${n.message}`), null;
2040
2040
  }
2041
2041
  return n ? (n.onopen = () => {
2042
2042
  jt(e, "EV_ON_OPEN", { url: t }, e);
@@ -2046,11 +2046,11 @@ function Gr(e) {
2046
2046
  data: n.data
2047
2047
  }, e);
2048
2048
  }, n.onclose = (n) => {
2049
- Ke(e) || (lt(Ie(), "browser_beforeunload") ? Ht("Close websocket by unload page") : jt(e, "EV_ON_CLOSE", {
2049
+ Ke(e) || (lt(Ie(), "browser_beforeunload") ? qt("Close websocket by unload page") : jt(e, "EV_ON_CLOSE", {
2050
2050
  url: t,
2051
2051
  e: n
2052
2052
  }, e));
2053
- }, n) : (qt(`${Fe(e)}: Failed to initialize WebSocket.`), null);
2053
+ }, n) : (Ht(`${Fe(e)}: Failed to initialize WebSocket.`), null);
2054
2054
  }
2055
2055
  function Vr(e, t = 1e3, n = "") {
2056
2056
  let r = e.priv, o = r.websocket;
@@ -2059,9 +2059,9 @@ function Vr(e, t = 1e3, n = "") {
2059
2059
  try {
2060
2060
  o.close(t, n);
2061
2061
  } catch (e) {
2062
- qt("Error closing WebSocket:", e.message);
2062
+ Ht("Error closing WebSocket:", e.message);
2063
2063
  }
2064
- } else Ht("WebSocket is already closed or in the process of closing.");
2064
+ } else qt("WebSocket is already closed or in the process of closing.");
2065
2065
  }
2066
2066
  function Mr(e, t, n) {
2067
2067
  let r = _r();
@@ -2083,15 +2083,15 @@ function Kr(e, t, n, r) {
2083
2083
  let n = _t(e, "url"), o = Pe(Ie()) + " ==> " + n, s = ot(Ie(), "trace_ievent_callback");
2084
2084
  s ? s(o, t, 1, r.length) : Mr(0, o, t);
2085
2085
  }
2086
- if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return Ht(`${Fe(e)}: send_iev(): websocket not open, message lost`), -1;
2086
+ if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return qt(`${Fe(e)}: send_iev(): websocket not open, message lost`), -1;
2087
2087
  try {
2088
2088
  n.websocket.send(r);
2089
2089
  } catch (t) {
2090
- qt(`${Fe(e)}: send_iev(): ${t}`);
2090
+ Ht(`${Fe(e)}: send_iev(): ${t}`);
2091
2091
  }
2092
2092
  return 0;
2093
2093
  }(e, function(e, t) {
2094
- return vn(e) ? (qt("iev_create() event NULL"), null) : new Wr(e, t);
2094
+ return vn(e) ? (Ht("iev_create() event NULL"), null) : new Wr(e, t);
2095
2095
  }(t, n));
2096
2096
  }
2097
2097
  function Yr(e, t, n) {
@@ -2136,21 +2136,21 @@ function Jr(e, t) {
2136
2136
  o && (n.__config__ = o), r && (n.__global__ = r), s && (n.__filter__ = s);
2137
2137
  return Zn(e, n, Lr, Yr(e, Pe(i), l)), tr(e, n, "__subscribing__"), Kr(e, t.event, n);
2138
2138
  }
2139
- function qr(e, t, n, r) {
2139
+ function Hr(e, t, n, r) {
2140
2140
  let o = e.priv;
2141
2141
  return xe(e) && (o.websocket = Gr(e)), 0;
2142
2142
  }
2143
- function Hr(e, t, n, r) {
2143
+ function qr(e, t, n, r) {
2144
2144
  return zt("Websocket opened: " + e.priv.url), Br(e), 0;
2145
2145
  }
2146
2146
  function zr(e, t, n, r) {
2147
2147
  let o = e.priv, s = n.e, l = n.url;
2148
- return Bt(), Ht(`${Fe(e)}: WebSocket closed ${l} (Code: ${s.code}, Reason: "${s.reason}", Clean: ${s.wasClean})`), o.websocket && (o.websocket.onopen = null, o.websocket.onmessage = null, o.websocket.onerror = null, o.websocket.onclose = null, o.websocket = null), o.inform_on_close ? (o.inform_on_close = !1, It(e, "EV_ON_CLOSE", {
2148
+ return Bt(), qt(`${Fe(e)}: WebSocket closed ${l} (Code: ${s.code}, Reason: "${s.reason}", Clean: ${s.wasClean})`), o.websocket && (o.websocket.onopen = null, o.websocket.onmessage = null, o.websocket.onerror = null, o.websocket.onclose = null, o.websocket = null), o.inform_on_close ? (o.inform_on_close = !1, It(e, "EV_ON_CLOSE", {
2149
2149
  url: l,
2150
2150
  remote_yuno_name: o.remote_yuno_name,
2151
2151
  remote_yuno_role: o.remote_yuno_role,
2152
2152
  remote_yuno_service: o.remote_yuno_service
2153
- })) : (Ht(`${Fe(e)}: EV_ON_OPEN_ERROR cannot open ${l} (Code: ${s.code}, Reason: "${s.reason}", Clean: ${s.wasClean})`), It(e, "EV_ON_OPEN_ERROR", {
2153
+ })) : (qt(`${Fe(e)}: EV_ON_OPEN_ERROR cannot open ${l} (Code: ${s.code}, Reason: "${s.reason}", Clean: ${s.wasClean})`), It(e, "EV_ON_OPEN_ERROR", {
2154
2154
  url: l,
2155
2155
  remote_yuno_name: o.remote_yuno_name,
2156
2156
  remote_yuno_role: o.remote_yuno_role,
@@ -2212,17 +2212,17 @@ function Zr(e, t, n, r) {
2212
2212
  try {
2213
2213
  n = JSON.parse(t);
2214
2214
  } catch (e) {
2215
- return qt("parsing inter_event json: " + e), null;
2215
+ return Ht("parsing inter_event json: " + e), null;
2216
2216
  }
2217
- if (!(n instanceof Object)) return qt("parsing inter_event: websocket data not a json object"), null;
2217
+ if (!(n instanceof Object)) return Ht("parsing inter_event: websocket data not a json object"), null;
2218
2218
  let r = n.event;
2219
- if (!r) return qt("parsing inter_event: no event"), null;
2220
- if ("string" != typeof r) return qt("parsing inter_event: event not a string"), null;
2219
+ if (!r) return Ht("parsing inter_event: no event"), null;
2220
+ if ("string" != typeof r) return Ht("parsing inter_event: event not a string"), null;
2221
2221
  let o = n.kw;
2222
2222
  return o ? o instanceof Object ? {
2223
2223
  event: r,
2224
2224
  kw: o || {}
2225
- } : (qt("parsing inter_event: kw not a json object"), null) : (qt("parsing inter_kw: no kw"), null);
2225
+ } : (Ht("parsing inter_event: kw not a json object"), null) : (Ht("parsing inter_kw: no kw"), null);
2226
2226
  }(0, n.data);
2227
2227
  if (lt(Ie(), "trace_inter_event")) {
2228
2228
  let e = Pe(Ie()) + " <== " + o, t = n.data.length, r = ot(Ie(), "trace_ievent_callback");
@@ -2232,19 +2232,19 @@ function Zr(e, t, n, r) {
2232
2232
  if ("ST_SESSION" !== dt(e)) {
2233
2233
  if (mt(e, l, R.EVF_PUBLIC_EVENT)) {
2234
2234
  if (!(jt(e, l, i, e) < 0)) return 0;
2235
- } else qt(`${Fe(e)}: event UNKNOWN in not-session state ${l}`);
2235
+ } else Ht(`${Fe(e)}: event UNKNOWN in not-session state ${l}`);
2236
2236
  return Vr(e), -1;
2237
2237
  }
2238
2238
  s = null;
2239
2239
  let _ = nr(e, i), a = er(e, i, Lr), u = $n(e, a, "dst_role", "");
2240
- if (u.toLowerCase() !== Ce().toLowerCase()) return qt(`"It's not my role, dst_role: ${u}, my_role: ${Ce()}`), 0;
2240
+ if (u.toLowerCase() !== Ce().toLowerCase()) return Ht(`"It's not my role, dst_role: ${u}, my_role: ${Ce()}`), 0;
2241
2241
  let c = $n(e, a, "dst_service", "");
2242
2242
  if ("__subscribing__" === _) return -1;
2243
2243
  if ("__unsubscribing__" === _) return -1;
2244
2244
  if (mt(e, l, R.EVF_PUBLIC_EVENT)) return jt(e, l, i, e), 0;
2245
2245
  if (!vn(c)) {
2246
2246
  let t = fe(c, !1);
2247
- return t ? mt(t, l, R.EVF_PUBLIC_EVENT) ? (jt(t, l, i, e), 0) : (qt(`${Fe(e)}: Service found but no event or not public, service '${Fe(t)}', ev '${l}'`), -1) : (Ht(`${Fe(e)}: event for a service that is gone, DROPPED: service '${c}', ev '${l}'`), 0);
2247
+ return t ? mt(t, l, R.EVF_PUBLIC_EVENT) ? (jt(t, l, i, e), 0) : (Ht(`${Fe(e)}: Service found but no event or not public, service '${Fe(t)}', ev '${l}'`), -1) : (qt(`${Fe(e)}: event for a service that is gone, DROPPED: service '${c}', ev '${l}'`), 0);
2248
2248
  }
2249
2249
  return We(e) ? jt(Ve(e), l, i, e) : It(e, l, i), 0;
2250
2250
  }
@@ -2286,7 +2286,7 @@ var no = {
2286
2286
  },
2287
2287
  mt_destroy: function(e) {},
2288
2288
  mt_stats: function(e, t, n, r) {
2289
- if ("ST_SESSION" !== dt(e)) return qt("Not in session"), null;
2289
+ if ("ST_SESSION" !== dt(e)) return Ht("Not in session"), null;
2290
2290
  n || (n = {});
2291
2291
  let o = Yr(e, Pe(r), $n(e, n, "service", null, 0)), s = Pn(e, n, "__md_stats__", null, $t.KW_EXTRACT);
2292
2292
  return s || (s = {}), Zn(e, n, "stats_stack", {
@@ -2295,7 +2295,7 @@ var no = {
2295
2295
  }), Zn(e, n, Lr, o), n.__stats__ = t, tr(e, n, "__stats__"), Kr(e, "EV_MT_STATS", n, r), null;
2296
2296
  },
2297
2297
  mt_command_parser: function(e, t, n, r) {
2298
- if ("ST_SESSION" !== dt(e)) return qt("Not in session"), null;
2298
+ if ("ST_SESSION" !== dt(e)) return Ht("Not in session"), null;
2299
2299
  n || (n = {});
2300
2300
  let o = Yr(e, Pe(r), $n(e, n, "service", "", 0)), s = Pn(e, n, "__md_command__", null, $t.KW_EXTRACT);
2301
2301
  return s || (s = {}), Zn(e, n, "command_stack", {
@@ -2339,7 +2339,7 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2339
2339
  return e.replace(/[?# ^:]/g, "_");
2340
2340
  }, exports.clear_timeout = Dr, exports.cmp_two_simple_json = wn, exports.command_parser = function(e, t, n, r) {}, exports.createElement2 = function e(t, n) {
2341
2341
  let [r, o, s, l] = t;
2342
- if (!r) return void qt("Tag must be a valid HTML element.");
2342
+ if (!r) return void Ht("Tag must be a valid HTML element.");
2343
2343
  let i = document.createElement(r), _ = "";
2344
2344
  if (o && "object" == typeof o) for (let e of Object.keys(o)) if ("style" === e && "object" == typeof o[e]) {
2345
2345
  let t = "";
@@ -2352,7 +2352,7 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2352
2352
  else if (bn(s)) {
2353
2353
  if (s.length > 0) if (mn(s[0])) i.appendChild(e(s, n));
2354
2354
  else for (let t of s) Array.isArray(t) && t.length > 0 ? i.appendChild(e(t, n)) : t instanceof HTMLElement && i.appendChild(t);
2355
- } else s instanceof HTMLElement || s instanceof Text || s instanceof SVGElement ? i.appendChild(s) : null != s && (qt("content ignored"), Xt(s));
2355
+ } else s instanceof HTMLElement || s instanceof Text || s instanceof SVGElement ? i.appendChild(s) : null != s && (Ht("content ignored"), Xt(s));
2356
2356
  if (l && "object" == typeof l) for (const e of Object.keys(l)) i.addEventListener(e, l[e]);
2357
2357
  return i;
2358
2358
  }, exports.createOneHtml = ir, exports.create_json_record = function(e, t) {
@@ -2490,9 +2490,9 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2490
2490
  }, exports.get_function_name = cr, exports.get_now = function() {
2491
2491
  return Math.floor(Date.now() / 1e3);
2492
2492
  }, exports.gobj_bottom_gobj = Ye, exports.gobj_change_parent = function(e, n) {
2493
- return Ke(e) ? (qt("gobj NULL or DESTROYED"), null) : n instanceof S ? (e.parent && e.parent.mt_child_removed && e.parent.mt_child_removed(e.parent, e), e.parent && (de(e.parent, e), e.parent = null), pe(n, e), n.mt_child_added && (K(e) && zt(t("👦👦🔵 child_added(%s): %s", Ge(n), Fe(e))), n.mt_child_added(n, e)), 0) : (qt(`${Fe(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
2493
+ return Ke(e) ? (Ht("gobj NULL or DESTROYED"), null) : n instanceof S ? (e.parent && e.parent.mt_child_removed && e.parent.mt_child_removed(e.parent, e), e.parent && (de(e.parent, e), e.parent = null), pe(n, e), n.mt_child_added && (K(e) && zt(t("👦👦🔵 child_added(%s): %s", Ge(n), Fe(e))), n.mt_child_added(n, e)), 0) : (Ht(`${Fe(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
2494
2494
  }, exports.gobj_change_state = pt, exports.gobj_command = function(e, n, o, s) {
2495
- if (Ke(e)) return qt("gobj NULL or DESTROYED"), -1;
2495
+ if (Ke(e)) return Ht("gobj NULL or DESTROYED"), -1;
2496
2496
  let l = d && it(d, "tracing");
2497
2497
  return l && ($(t("🌀🌀 mach(%s%s), cmd: %s, src: %s", xe(e) ? "" : "!!", Fe(e), n, Fe(s))), l > 1 && Xt(o)), e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, n, o, s) : e.gclass.command_table ? u ? u(e, n, o, s) : r(0, -1, t("%s: global command parser not available", Fe(e)), 0, 0) : r(0, -1, t("%s: command table not available", Fe(e)), 0, 0);
2498
2498
  }, exports.gobj_create = function(e, t, n, r) {
@@ -2531,9 +2531,9 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2531
2531
  total_subscribings: gn(n)
2532
2532
  };
2533
2533
  }, exports.gobj_load_persistent_attrs = function(e, t) {
2534
- return Ae(e) ? l ? l(e, t) : -1 : (qt(`${Fe(e)}: Only gobj services can load/save writable-persistent`), -1);
2534
+ return Ae(e) ? l ? l(e, t) : -1 : (Ht(`${Fe(e)}: Only gobj services can load/save writable-persistent`), -1);
2535
2535
  }, exports.gobj_match_children = function(e, t) {
2536
- if (Ke(e)) return qt("gobj NULL or DESTROYED"), null;
2536
+ if (Ke(e)) return Ht("gobj NULL or DESTROYED"), null;
2537
2537
  t = t || {};
2538
2538
  let n = [];
2539
2539
  const r = e.dl_children;
@@ -2553,16 +2553,16 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2553
2553
  }
2554
2554
  }(n, e), n;
2555
2555
  }, exports.gobj_match_gobj = et, exports.gobj_name = Pe, exports.gobj_parent = Ve, exports.gobj_pause = Re, exports.gobj_play = we, exports.gobj_post_event = function(e, n, r, o) {
2556
- return e && e instanceof S ? e.obflag & (w.obflag_destroyed | w.obflag_destroying) ? (qt(`gobj_post_event(): gobj dst DESTROYING, event ${n}`), -1) : vn(n) ? (qt("gobj_post_event(): event EMPTY"), -1) : mt(e, n, 0) ? Tt.length >= 1e4 ? (qt(`gobj_post_event(): too many posted events, this is NOT a work queue, event ${n}, pending ${Tt.length}`), -1) : (Tt.push({
2556
+ return e && e instanceof S ? e.obflag & (w.obflag_destroyed | w.obflag_destroying) ? (Ht(`gobj_post_event(): gobj dst DESTROYING, event ${n}`), -1) : vn(n) ? (Ht("gobj_post_event(): event EMPTY"), -1) : mt(e, n, 0) ? Tt.length >= 1e4 ? (Ht(`gobj_post_event(): too many posted events, this is NOT a work queue, event ${n}, pending ${Tt.length}`), -1) : (Tt.push({
2557
2557
  dst: e,
2558
2558
  event: n,
2559
2559
  kw: r,
2560
2560
  src: o
2561
- }), B(e, n) && !J(o, n) && $(t("📬 posted(%s%s), ev: %s, pending: %d", e.running ? "" : "!!", Fe(e), n, Tt.length)), ht || (ht = !0, setTimeout(yt, 0)), 0) : (qt(`gobj_post_event(): event NOT DEFINED in gclass ${Ue(e)}, event ${n}`), -1) : (qt(`gobj_post_event(): gobj dst NULL, event ${n}`), -1);
2561
+ }), B(e, n) && !J(o, n) && $(t("📬 posted(%s%s), ev: %s, pending: %d", e.running ? "" : "!!", Fe(e), n, Tt.length)), ht || (ht = !0, setTimeout(yt, 0)), 0) : (Ht(`gobj_post_event(): event NOT DEFINED in gclass ${Ue(e)}, event ${n}`), -1) : (Ht(`gobj_post_event(): gobj dst NULL, event ${n}`), -1);
2562
2562
  }, exports.gobj_posted_events_size = function() {
2563
2563
  return Tt.length;
2564
2564
  }, exports.gobj_publish_event = It, exports.gobj_read_attr = ot, exports.gobj_read_attrs = st, exports.gobj_read_bool_attr = lt, exports.gobj_read_integer_attr = it, exports.gobj_read_pointer_attr = at, exports.gobj_read_str_attr = _t, exports.gobj_remove_persistent_attrs = function(e, t) {
2565
- return Ae(e) ? _ ? _(e, t) : -1 : (qt(`${Fe(e)}: Only gobj services can load/save writable-persistent`), -1);
2565
+ return Ae(e) ? _ ? _(e, t) : -1 : (Ht(`${Fe(e)}: Only gobj services can load/save writable-persistent`), -1);
2566
2566
  }, exports.gobj_repr_global_trace_levels = function() {
2567
2567
  return L.map(([e, t, n]) => ({
2568
2568
  name: e,
@@ -2572,19 +2572,19 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2572
2572
  }));
2573
2573
  }, exports.gobj_reset_volatil_attrs = function(e) {
2574
2574
  return function(e, t, n) {
2575
- if (Ke(e)) return qt("gobj NULL or DESTROYED"), -1;
2575
+ if (Ke(e)) return Ht("gobj NULL or DESTROYED"), -1;
2576
2576
  let r = e.gclass.attrs_table;
2577
2577
  for (let o = 0; o < r.length; o++) {
2578
2578
  const s = r[o];
2579
2579
  if (s.name && !(n && s.flag & n) && (-1 === t || s.flag & t)) {
2580
- const t = H(e, e.jn_attrs, s);
2580
+ const t = q(e, e.jn_attrs, s);
2581
2581
  dn(e.priv) && e.priv.hasOwnProperty(s.name) && (e.priv[s.name] = t), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, s.name);
2582
2582
  }
2583
2583
  }
2584
2584
  return 0;
2585
2585
  }(e, T.SDF_VOLATIL, 0);
2586
2586
  }, exports.gobj_save_persistent_attrs = function(e, t) {
2587
- return Ae(e) ? i ? i(e, t) : -1 : (qt(`${Fe(e)}: Only gobj services can load/save writable-persistent`), -1);
2587
+ return Ae(e) ? i ? i(e, t) : -1 : (Ht(`${Fe(e)}: Only gobj services can load/save writable-persistent`), -1);
2588
2588
  }, exports.gobj_search_path = nt, exports.gobj_send_event = jt, exports.gobj_services = function() {
2589
2589
  let e = [];
2590
2590
  for (const t of Object.keys(p)) un(e, t);
@@ -2593,12 +2593,12 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2593
2593
  return F = Number(e) || 0, 0;
2594
2594
  }, exports.gobj_set_gclass_no_trace = function(e, t, n) {
2595
2595
  const r = mn(e) ? ue(e) : e;
2596
- if (!r) return qt(`gobj_set_gclass_no_trace: gclass NOT FOUND: ${e}`), -1;
2596
+ if (!r) return Ht(`gobj_set_gclass_no_trace: gclass NOT FOUND: ${e}`), -1;
2597
2597
  const o = G(t, "gobj_set_gclass_no_trace");
2598
2598
  return o ? (n ? r.no_trace_level |= o : r.no_trace_level &= ~o, 0) : -1;
2599
2599
  }, exports.gobj_set_gclass_trace = function(e, t, n) {
2600
2600
  const r = mn(e) ? ue(e) : e;
2601
- if (!r) return qt(`gobj_set_gclass_trace: gclass NOT FOUND: ${e}`), -1;
2601
+ if (!r) return Ht(`gobj_set_gclass_trace: gclass NOT FOUND: ${e}`), -1;
2602
2602
  const o = G(t, "gobj_set_gclass_trace");
2603
2603
  return o ? (n ? r.trace_level |= o : r.trace_level &= ~o, 0) : -1;
2604
2604
  }, exports.gobj_set_global_no_trace = function(e, t) {
@@ -2608,19 +2608,19 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2608
2608
  const n = G(e, "gobj_set_global_trace");
2609
2609
  return n ? (t ? P |= n : P &= ~n, 0) : -1;
2610
2610
  }, exports.gobj_set_gobj_no_trace = function(e, t, n) {
2611
- if (!e) return qt("gobj_set_gobj_no_trace: gobj NULL"), -1;
2611
+ if (!e) return Ht("gobj_set_gobj_no_trace: gobj NULL"), -1;
2612
2612
  const r = G(t, "gobj_set_gobj_no_trace");
2613
2613
  return r ? (n ? e.no_trace_level |= r : e.no_trace_level &= ~r, 0) : -1;
2614
2614
  }, exports.gobj_set_gobj_trace = function(e, t, n) {
2615
- if (!e) return qt("gobj_set_gobj_trace: gobj NULL"), -1;
2615
+ if (!e) return Ht("gobj_set_gobj_trace: gobj NULL"), -1;
2616
2616
  const r = G(t, "gobj_set_gobj_trace");
2617
2617
  return r ? (n ? e.trace_level |= r : e.trace_level &= ~r, 0) : -1;
2618
2618
  }, exports.gobj_set_trace_machine_format = function(e) {
2619
2619
  I = 1 === Number(e) ? 1 : 0;
2620
2620
  }, exports.gobj_short_name = Fe, exports.gobj_start = ye, exports.gobj_start_children = function(e) {
2621
- return Ke(e) ? (qt("gobj NULL or DESTROYED"), -1) : qe(e, x.WALK_FIRST2LAST, je, 0, 0);
2621
+ return Ke(e) ? (Ht("gobj NULL or DESTROYED"), -1) : He(e, x.WALK_FIRST2LAST, je, 0, 0);
2622
2622
  }, exports.gobj_start_tree = function(e) {
2623
- return Ke(e) ? (qt("gobj NULL or DESTROYED"), -1) : (Y(e) && $(t("⏺ ⏺ ⏺ ⏺ start_tree: %s", Ge(e))), e.gclass.gclass_flag & O.gcflag_manual_start || e.disabled ? 0 : (e.running || ye(e), He(e, x.WALK_TOP2BOTTOM, ve, 0, 0)));
2623
+ return Ke(e) ? (Ht("gobj NULL or DESTROYED"), -1) : (Y(e) && $(t("⏺ ⏺ ⏺ ⏺ start_tree: %s", Ge(e))), e.gclass.gclass_flag & O.gcflag_manual_start || e.disabled ? 0 : (e.running || ye(e), qe(e, x.WALK_TOP2BOTTOM, ve, 0, 0)));
2624
2624
  }, exports.gobj_start_up = function(e, t, n, r, o, s, g) {
2625
2625
  l = t, i = n, _ = r, a = o, u = s, c = g;
2626
2626
  const p = [["EV_STATE_CHANGED", R.EVF_SYSTEM_EVENT | R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS], [0, 0]];
@@ -2630,14 +2630,14 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2630
2630
  }
2631
2631
  return 0;
2632
2632
  }, exports.gobj_stats = function(e, n, r, s) {
2633
- return Ke(e) ? (qt("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, n, r, s) : c ? c(e, n, r, s) : o(0, -1, t("%s, stats parser not available", Fe(e)), 0, 0);
2633
+ return Ke(e) ? (Ht("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, n, r, s) : c ? c(e, n, r, s) : o(0, -1, t("%s, stats parser not available", Fe(e)), 0, 0);
2634
2634
  }, exports.gobj_stop = Se, exports.gobj_stop_children = Ne, exports.gobj_stop_tree = function(e) {
2635
- return Ke(e) ? (qt("gobj NULL or DESTROYED"), -1) : (Y(e) && $(t("⏹ ⏹ ⏹ ⏹ stop_tree: %s", Ge(e))), xe(e) && Se(e), He(e, x.WALK_TOP2BOTTOM, Oe, 0, 0));
2635
+ return Ke(e) ? (Ht("gobj NULL or DESTROYED"), -1) : (Y(e) && $(t("⏹ ⏹ ⏹ ⏹ stop_tree: %s", Ge(e))), xe(e) && Se(e), qe(e, x.WALK_TOP2BOTTOM, Oe, 0, 0));
2636
2636
  }, exports.gobj_subscribe_event = xt, exports.gobj_trace_level = V, exports.gobj_trace_machine_format = function() {
2637
2637
  return I;
2638
2638
  }, exports.gobj_trace_no_level = M, exports.gobj_unsubscribe_event = function(e, t, n, r) {
2639
- if (null == n && (n = {}), !e) return qt(`publisher NULL: ev ${t}`), 0;
2640
- if (!r) return qt(`subscriber NULL: ev ${t}`), 0;
2639
+ if (null == n && (n = {}), !e) return Ht(`publisher NULL: ev ${t}`), 0;
2640
+ if (!r) return Ht(`subscriber NULL: ev ${t}`), 0;
2641
2641
  const o = /* @__PURE__ */ new Set([
2642
2642
  "__config__",
2643
2643
  "__global__",
@@ -2646,21 +2646,21 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2646
2646
  "__service__"
2647
2647
  ]);
2648
2648
  if (Object.keys(n).forEach((n) => {
2649
- o.has(n) || qt(`${Fe(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
2649
+ o.has(n) || Ht(`${Fe(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
2650
2650
  }), vn(t)) t = "";
2651
- else if (!(Et(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & O.gcflag_no_check_output_events)) return qt(`event NOT in output event list: ${Fe(e)}, ev ${t}`), 0;
2651
+ else if (!(Et(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & O.gcflag_no_check_output_events)) return Ht(`event NOT in output event list: ${Fe(e)}, ev ${t}`), 0;
2652
2652
  let s = Nt(e.dl_subscriptions, e, t, n, r), l = 0;
2653
2653
  for (let t = 0; t < s.length; t++) {
2654
2654
  let n = s[t];
2655
2655
  Rt(e, n, !1, !1), l++;
2656
2656
  }
2657
- return l || (Ht(`${Fe(e)}: No subscription found`), Xt(n, "No subscription found")), 0;
2658
- }, exports.gobj_unsubscribe_list = Dt, exports.gobj_walk_gobj_children = qe, exports.gobj_walk_gobj_children_tree = He, exports.gobj_write_attr = function(e, n, r, o) {
2659
- if (!mn(n)) return qt(t("gobj_write_attr(%s): path must be a string", Fe(e))), -1;
2657
+ return l || (qt(`${Fe(e)}: No subscription found`), Xt(n, "No subscription found")), 0;
2658
+ }, exports.gobj_unsubscribe_list = Dt, exports.gobj_walk_gobj_children = He, exports.gobj_walk_gobj_children_tree = qe, exports.gobj_write_attr = function(e, n, r, o) {
2659
+ if (!mn(n)) return Ht(t("gobj_write_attr(%s): path must be a string", Fe(e))), -1;
2660
2660
  let s, l = e.jn_attrs, i = n.split("`");
2661
2661
  if (i.length <= 1) {
2662
2662
  let o = n;
2663
- return o in l && l.hasOwnProperty(o) ? (l[o] = r, dn(e.priv) && e.priv.hasOwnProperty(o) && (e.priv[o] = r), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o), 0) : (qt(t("gobj_write_attr(%s): attr not found '%s'", Fe(e), o)), -1);
2663
+ return o in l && l.hasOwnProperty(o) ? (l[o] = r, dn(e.priv) && e.priv.hasOwnProperty(o) && (e.priv[o] = r), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o), 0) : (Ht(t("gobj_write_attr(%s): attr not found '%s'", Fe(e), o)), -1);
2664
2664
  }
2665
2665
  let _ = i.length;
2666
2666
  for (let t = 0; t < _; t++) {
@@ -2674,8 +2674,8 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2674
2674
  if (s in o && o.hasOwnProperty(s)) return o[s] = r, dn(e.priv) && e.priv.hasOwnProperty(s) && (e.priv[s] = r), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.mt_writing && e.mt_writing(e, s), 0;
2675
2675
  break;
2676
2676
  }
2677
- return qt(t("gobj_write_attr(%s): attr not found '%s'", Fe(e), s)), -1;
2678
- }, exports.gobj_write_attrs = ut, exports.gobj_write_bool_attr = ct, exports.gobj_write_integer_attr = ft, exports.gobj_write_str_attr = gt, exports.gobj_yuno = Ie, exports.gobj_yuno_id = Le, exports.gobj_yuno_name = $e, exports.gobj_yuno_role = Ce, exports.id_index_in_obj_list = Hn, exports.index_in_list = ar, exports.is_array = bn, exports.is_boolean = Tn, exports.is_date = function(e) {
2677
+ return Ht(t("gobj_write_attr(%s): attr not found '%s'", Fe(e), s)), -1;
2678
+ }, exports.gobj_write_attrs = ut, exports.gobj_write_bool_attr = ct, exports.gobj_write_integer_attr = ft, exports.gobj_write_str_attr = gt, exports.gobj_yuno = Ie, exports.gobj_yuno_id = Le, exports.gobj_yuno_name = $e, exports.gobj_yuno_role = Ce, exports.id_index_in_obj_list = qn, exports.index_in_list = ar, exports.is_array = bn, exports.is_boolean = Tn, exports.is_date = function(e) {
2679
2679
  return e instanceof Date && !isNaN(e);
2680
2680
  }, exports.is_function = yn, exports.is_gobj = jn, exports.is_metadata_key = function(e) {
2681
2681
  if (!mn(e)) return !1;
@@ -2694,28 +2694,28 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2694
2694
  return !isNaN(t) && "" !== e.trim() && !isNaN(t);
2695
2695
  }, exports.is_string = mn, exports.jdb_delete = function(e, t, n, r) {
2696
2696
  let o = Pn(null, Pn(null, e, "topics", null, 0), t, null, 0);
2697
- if (!o) return qt("jdb_delete: topic not found: " + t), null;
2698
- if (vn(r.id)) return qt("jdb_delete: record without id: " + r), Qt(r), null;
2697
+ if (!o) return Ht("jdb_delete: topic not found: " + t), null;
2698
+ if (vn(r.id)) return Ht("jdb_delete: record without id: " + r), Qt(r), null;
2699
2699
  let s, l = n.split("`"), i = o;
2700
2700
  for (; (s = l.shift()) && !vn(s) && i;) dn(i) && (i = Pn(null, i, e.hook, null, 0)), i = or(i, null, s, !1);
2701
2701
  if (0 === l.length && i) if (bn(i)) {
2702
- let e = Hn(i, r.id);
2702
+ let e = qn(i, r.id);
2703
2703
  e >= 0 && i.splice(e, 1);
2704
2704
  } else {
2705
- let t = Pn(null, i, e.hook, null, 0), n = Hn(t, r.id);
2705
+ let t = Pn(null, i, e.hook, null, 0), n = qn(t, r.id);
2706
2706
  n >= 0 && t.splice(n, 1);
2707
2707
  }
2708
2708
  return o;
2709
2709
  }, exports.jdb_get = function(e, t, n, r) {
2710
2710
  let o = Pn(null, Pn(null, e, "topics", null, 0), t, null, 0);
2711
- return o ? (void 0 === r && (r = !0), or(o, e.hook, n, r)) : (qt("jdb_get: topic not found: " + t), null);
2711
+ return o ? (void 0 === r && (r = !0), or(o, e.hook, n, r)) : (Ht("jdb_get: topic not found: " + t), null);
2712
2712
  }, exports.jdb_get_by_idx = function(e, t, n) {
2713
2713
  let r = Pn(null, Pn(null, e, "topics", null, 0), t, null, 0);
2714
- return r ? n < r.length ? r[n] : {} : (qt("jdb_get_by_idx: topic not found: " + t), null);
2714
+ return r ? n < r.length ? r[n] : {} : (Ht("jdb_get_by_idx: topic not found: " + t), null);
2715
2715
  }, exports.jdb_get_topic = function(e, t) {
2716
2716
  let n = Pn(null, e, "topics", null, 0);
2717
- if (!n) return qt("jdb topics section not found"), Qt(e), null;
2718
- return Pn(null, n, t, null, 0) || (qt("jdb topic not found: " + t), Qt(n), null);
2717
+ if (!n) return Ht("jdb topics section not found"), Qt(e), null;
2718
+ return Pn(null, n, t, null, 0) || (Ht("jdb topic not found: " + t), Qt(n), null);
2719
2719
  }, exports.jdb_init = function(e, t, n) {
2720
2720
  n && (e = Zt(e));
2721
2721
  let r = Pn(null, e, "type", [], 1);
@@ -2726,8 +2726,8 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2726
2726
  }, t), e;
2727
2727
  }, exports.jdb_update = function(e, t, n, r) {
2728
2728
  let o = Pn(null, Pn(null, e, "topics", null, 0), t, null, 0);
2729
- if (!o) return qt("jdb_update: topic not found: " + t), null;
2730
- if (vn(r.id)) return qt("jdb_update: record without id: " + r), Qt(r), null;
2729
+ if (!o) return Ht("jdb_update: topic not found: " + t), null;
2730
+ if (vn(r.id)) return Ht("jdb_update: record without id: " + r), Qt(r), null;
2731
2731
  let s, l = n.split("`"), i = o;
2732
2732
  for (; (s = l.shift()) && !vn(s) && i;) dn(i) && (i = Pn(null, i, e.hook, [], 1)), i = or(i, null, s, !1);
2733
2733
  if (0 === l.length && i) if (bn(i)) i.push(r);
@@ -2772,7 +2772,7 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2772
2772
  return null;
2773
2773
  }
2774
2774
  }, exports.jwtDecode = sr, exports.kw_clone_by_keys = Mn, exports.kw_clone_by_not_keys = Wn, exports.kw_collect = function(e, t, n, r) {
2775
- if (e && !jn(e) && qt("GObj bad instanceof"), !t) return null;
2775
+ if (e && !jn(e) && Ht("GObj bad instanceof"), !t) return null;
2776
2776
  r || (r = Vn);
2777
2777
  let o = [];
2778
2778
  if (bn(t)) for (let e = 0; e < t.length; e++) {
@@ -2780,16 +2780,16 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2780
2780
  r(s, n) && o.push(s);
2781
2781
  }
2782
2782
  else {
2783
- if (!dn(t)) return qt("kw_select() BAD kw parameter"), null;
2783
+ if (!dn(t)) return Ht("kw_select() BAD kw parameter"), null;
2784
2784
  r(t, n) && o.push(t);
2785
2785
  }
2786
2786
  return o;
2787
2787
  }, exports.kw_delete = An, exports.kw_find_json_in_list = function(e, t, n, r) {
2788
- if (!n || !bn(t)) return r && qt("item NULL or kw_list is not a list"), -1;
2788
+ if (!n || !bn(t)) return r && Ht("item NULL or kw_list is not a list"), -1;
2789
2789
  for (let e = 0; e < t.length; e++) if (en(n, t[e])) return e;
2790
- return r && qt("item not found in this list"), -1;
2790
+ return r && Ht("item not found in this list"), -1;
2791
2791
  }, exports.kw_find_path = Dn, exports.kw_flag_t = $t, exports.kw_get_bool = kn, exports.kw_get_dict = Ln, exports.kw_get_dict_value = Pn, exports.kw_get_int = In, exports.kw_get_list = function(e, t, n, r, o) {
2792
- e && !jn(e) && qt("GObj bad instanceof");
2792
+ e && !jn(e) && Ht("GObj bad instanceof");
2793
2793
  let s = Dn(e, t, n, !1);
2794
2794
  const l = o && o & $t.KW_REQUIRED, i = o && o & $t.KW_CREATE, _ = o && o & $t.KW_EXTRACT;
2795
2795
  if (void 0 === s) {
@@ -2797,11 +2797,11 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2797
2797
  let o = Array(r);
2798
2798
  return Un(e, t, n, o), o;
2799
2799
  }
2800
- return l && (qt(`path not found: '${n}'`), Xt(t)), Array(r);
2800
+ return l && (Ht(`path not found: '${n}'`), Xt(t)), Array(r);
2801
2801
  }
2802
- return _ && An(e, t, n), bn(s) ? Array(s) : (l && (qt(`path value MUST BE an array: ${n}`), Qt(t)), Array(r));
2802
+ return _ && An(e, t, n), bn(s) ? Array(s) : (l && (Ht(`path value MUST BE an array: ${n}`), Qt(t)), Array(r));
2803
2803
  }, exports.kw_get_local_storage_value = Kn, exports.kw_get_pointer = Cn, exports.kw_get_real = function(e, t, n, r, o) {
2804
- e && !jn(e) && qt("GObj bad instanceof");
2804
+ e && !jn(e) && Ht("GObj bad instanceof");
2805
2805
  let s = Dn(e, t, n, !1);
2806
2806
  const l = o && o & $t.KW_REQUIRED, i = o && o & $t.KW_CREATE, _ = o && o & $t.KW_EXTRACT;
2807
2807
  if (void 0 === s) {
@@ -2809,11 +2809,11 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2809
2809
  let o = Number(r);
2810
2810
  return Un(e, t, n, o), o;
2811
2811
  }
2812
- return l && (qt(`path not found: '${n}'`), Xt(t)), Number(r);
2812
+ return l && (Ht(`path not found: '${n}'`), Xt(t)), Number(r);
2813
2813
  }
2814
- return _ && An(e, t, n), En(s) ? Number(s) : (l && (qt(`path value MUST BE a number: ${n}`), Qt(t)), Number(r));
2814
+ return _ && An(e, t, n), En(s) ? Number(s) : (l && (Ht(`path value MUST BE a number: ${n}`), Qt(t)), Number(r));
2815
2815
  }, exports.kw_get_str = $n, exports.kw_has_key = xn, exports.kw_match_simple = Vn, exports.kw_pop = Rn, exports.kw_remove_local_storage_value = Bn, exports.kw_select = function(e, t, n, r) {
2816
- if (e && !jn(e) && qt("GObj bad instanceof"), !t) return null;
2816
+ if (e && !jn(e) && Ht("GObj bad instanceof"), !t) return null;
2817
2817
  r || (r = Vn);
2818
2818
  let o = [];
2819
2819
  if (bn(t)) for (let e = 0; e < t.length; e++) {
@@ -2821,16 +2821,16 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2821
2821
  r(s, n) && o.push(Zt(s));
2822
2822
  }
2823
2823
  else {
2824
- if (!dn(t)) return qt("kw_select() BAD kw parameter"), null;
2824
+ if (!dn(t)) return Ht("kw_select() BAD kw parameter"), null;
2825
2825
  r(t, n) && o.push(Zt(t));
2826
2826
  }
2827
2827
  return o;
2828
- }, exports.kw_set_dict_value = Un, exports.kw_set_local_storage_value = Yn, exports.kw_set_subdict_value = Fn, exports.kwid_collect = qn, exports.kwid_find_one_record = function(e, t, n, r, o) {
2829
- e && !jn(e) && qt("GObj bad instanceof");
2830
- let s = qn(e, t, n, r, o);
2828
+ }, exports.kw_set_dict_value = Un, exports.kw_set_local_storage_value = Yn, exports.kw_set_subdict_value = Fn, exports.kwid_collect = Hn, exports.kwid_find_one_record = function(e, t, n, r, o) {
2829
+ e && !jn(e) && Ht("GObj bad instanceof");
2830
+ let s = Hn(e, t, n, r, o);
2831
2831
  return s.length > 0 ? s[0] : null;
2832
2832
  }, exports.kwid_get_ids = function(e, t) {
2833
- if (e && !jn(e) && qt("GObj bad instanceof"), !t) return [];
2833
+ if (e && !jn(e) && Ht("GObj bad instanceof"), !t) return [];
2834
2834
  let n = [];
2835
2835
  if (mn(t)) n.push(t);
2836
2836
  else if (dn(t)) for (let e in t) t.hasOwnProperty(e) && n.push(e);
@@ -2843,14 +2843,14 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2843
2843
  });
2844
2844
  return n;
2845
2845
  }, exports.kwid_match_id = Jn, exports.kwid_new_dict = function(e, t, n) {
2846
- e && !jn(e) && qt("GObj bad instanceof");
2846
+ e && !jn(e) && Ht("GObj bad instanceof");
2847
2847
  let r = {};
2848
2848
  if (vn(n) || (t = Dn(e, t, n)), dn(t)) r = t;
2849
2849
  else if (bn(t)) for (let n = 0; n < t.length; n++) {
2850
2850
  let o = t[n], s = $n(e, o, "id", "", 0);
2851
2851
  vn(s) || (r[s] = o);
2852
2852
  }
2853
- else qt(`${Fe(e)} kwid_new_dict: data type unknown`);
2853
+ else Ht(`${Fe(e)} kwid_new_dict: data type unknown`);
2854
2854
  return r;
2855
2855
  }, exports.list2options = function(e, t, n) {
2856
2856
  t = t || "id", n = n || "value";
@@ -2866,7 +2866,7 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2866
2866
  if (xn(s, t)) {
2867
2867
  if (!xn(s, n)) {
2868
2868
  if (!(pn(s) > 0)) {
2869
- qt("list2options(): object without field value: " + n);
2869
+ Ht("list2options(): object without field value: " + n);
2870
2870
  continue;
2871
2871
  }
2872
2872
  n = Object.keys(s)[0];
@@ -2874,19 +2874,19 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2874
2874
  e.id = s[t], e.value = s[n];
2875
2875
  } else {
2876
2876
  if (!(pn(s) > 0)) {
2877
- qt("list2options(): object without field id: " + t);
2877
+ Ht("list2options(): object without field id: " + t);
2878
2878
  continue;
2879
2879
  }
2880
2880
  t = Object.keys(s)[0], e.id = t, e.value = s[t];
2881
2881
  }
2882
2882
  r.push(e);
2883
- } else qt("list2options(): case1 not implemented");
2883
+ } else Ht("list2options(): case1 not implemented");
2884
2884
  }
2885
2885
  else if (dn(e)) for (let t of Object.keys(e)) r.push({
2886
2886
  id: t,
2887
2887
  value: t
2888
2888
  });
2889
- else qt("list2options(): case2 not implemented");
2889
+ else Ht("list2options(): case2 not implemented");
2890
2890
  return r;
2891
2891
  }, exports.load_json_file = function(e, t, n) {
2892
2892
  let r = new XMLHttpRequest();
@@ -2894,41 +2894,47 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2894
2894
  if (4 === r.readyState) if (200 === r.status || 0 === (e = r).status && e.responseText && e.responseURL.startsWith("file:")) try {
2895
2895
  t(JSON.parse(r.responseText));
2896
2896
  } catch (e) {
2897
- n && (qt(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
2897
+ n && (Ht(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
2898
2898
  }
2899
2899
  else n && n(r.status);
2900
2900
  var e;
2901
2901
  }, r.send();
2902
- }, exports.log_debug = zt, exports.log_error = qt, exports.log_info = function(e) {
2902
+ }, exports.log_debug = zt, exports.log_error = Ht, exports.log_info = function(e) {
2903
2903
  let t = Jt(e), n = _r();
2904
2904
  Ut && Wt("info", t) && Ut("%c" + n + " INFO: " + String(t), "color:cyan"), Yt("info", t, n);
2905
- }, exports.log_warning = Ht, exports.msg_iev_get_msg_type = nr, exports.msg_iev_get_stack = er, exports.msg_iev_push_stack = Zn, exports.msg_iev_read_key = Qn, exports.msg_iev_set_msg_type = tr, exports.msg_iev_write_key = Xn, exports.node_uuid = ur, exports.parseBoolean = Sn, exports.parseSVG = function(e) {
2905
+ }, exports.log_warning = qt, exports.msg_iev_get_msg_type = nr, exports.msg_iev_get_stack = er, exports.msg_iev_push_stack = Zn, exports.msg_iev_read_key = Qn, exports.msg_iev_set_msg_type = tr, exports.msg_iev_write_key = Xn, exports.node_uuid = ur, exports.parseBoolean = Sn, exports.parseSVG = function(e) {
2906
2906
  return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
2907
2907
  }, exports.refresh_language = function(e, t) {
2908
- yn(t) ? (e || (e = document), e.querySelectorAll("[data-i18n]").forEach(function(e) {
2908
+ if (!yn(t)) return void Ht("You must supply a translation function");
2909
+ e || (e = document);
2910
+ const n = (t) => {
2911
+ let n = [];
2912
+ return "function" == typeof e.matches && e.matches(t) && n.push(e), n.push(...e.querySelectorAll(t)), n;
2913
+ };
2914
+ n("[data-i18n]").forEach(function(e) {
2909
2915
  let n = e.getAttribute("data-i18n");
2910
2916
  for (let r of e.childNodes) if (r.nodeType === Node.TEXT_NODE) {
2911
2917
  n || (n = r.nodeValue), r.nodeValue = t(n);
2912
2918
  break;
2913
2919
  }
2914
- }), e.querySelectorAll("[data-i18n-title]").forEach(function(e) {
2920
+ }), n("[data-i18n-title]").forEach(function(e) {
2915
2921
  let n = e.getAttribute("data-i18n-title");
2916
2922
  n && e.setAttribute("title", t(n));
2917
- }), e.querySelectorAll("[data-i18n-aria-label]").forEach(function(e) {
2923
+ }), n("[data-i18n-aria-label]").forEach(function(e) {
2918
2924
  let n = e.getAttribute("data-i18n-aria-label");
2919
2925
  n && e.setAttribute("aria-label", t(n));
2920
- }), e.querySelectorAll("[data-i18n-placeholder]").forEach(function(e) {
2926
+ }), n("[data-i18n-placeholder]").forEach(function(e) {
2921
2927
  let n = e.getAttribute("data-i18n-placeholder");
2922
2928
  n && e.setAttribute("placeholder", t(n));
2923
- })) : qt("You must supply a translation function");
2929
+ });
2924
2930
  }, exports.register_c_ievent_cli = function() {
2925
2931
  return function(e) {
2926
- if (Fr) return qt(`GClass ALREADY created: ${e}`), -1;
2932
+ if (Fr) return Ht(`GClass ALREADY created: ${e}`), -1;
2927
2933
  const t = [
2928
2934
  ["ST_DISCONNECTED", [
2929
2935
  [
2930
2936
  "EV_ON_OPEN",
2931
- Hr,
2937
+ qr,
2932
2938
  "ST_WAIT_IDENTITY_CARD_ACK"
2933
2939
  ],
2934
2940
  [
@@ -2938,7 +2944,7 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2938
2944
  ],
2939
2945
  [
2940
2946
  "EV_TIMEOUT",
2941
- qr,
2947
+ Hr,
2942
2948
  null
2943
2949
  ],
2944
2950
  [
@@ -3018,7 +3024,7 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
3018
3024
  }("C_IEVENT_CLI");
3019
3025
  }, exports.register_c_timer = function() {
3020
3026
  return function(e) {
3021
- if (Or) return qt(`GClass ALREADY created: ${e}`), -1;
3027
+ if (Or) return Ht(`GClass ALREADY created: ${e}`), -1;
3022
3028
  const t = [["ST_IDLE", [[
3023
3029
  "EV_TIMEOUT",
3024
3030
  Nr,
@@ -3032,7 +3038,7 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
3032
3038
  }("C_TIMER");
3033
3039
  }, exports.register_c_yuno = function() {
3034
3040
  return function(e) {
3035
- if (Ir) return qt(`GClass ALREADY created: ${e}`), -1;
3041
+ if (Ir) return Ht(`GClass ALREADY created: ${e}`), -1;
3036
3042
  const t = [["ST_IDLE", [[
3037
3043
  "EV_TIMEOUT_PERIODIC",
3038
3044
  $r,
@@ -3059,8 +3065,8 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
3059
3065
  var r = (e + "").substring(0, n), o = (t + "").substring(0, n);
3060
3066
  return r === o ? 0 : r > o ? 1 : -1;
3061
3067
  }, exports.strs_in_list = function(e, t, n) {
3062
- if (!e) return qt("ERROR: strs_in_list() list empty"), !1;
3063
- if (!t) return qt("ERROR: strs_in_list() str empty"), !1;
3068
+ if (!e) return Ht("ERROR: strs_in_list() list empty"), !1;
3069
+ if (!t) return Ht("ERROR: strs_in_list() str empty"), !1;
3064
3070
  for (let r = 0; r < t.length; r++) if (zn(e, t[r], n)) return !0;
3065
3071
  return !1;
3066
3072
  }, exports.strstr = function(e, t, n) {
@@ -3103,9 +3109,9 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
3103
3109
  }, exports.timeTracker = function(e = "Time Tracker", t = !1) {
3104
3110
  const n = e, r = performance.now();
3105
3111
  let o = r;
3106
- return t && Ht(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", s = "") => {
3112
+ return t && qt(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", s = "") => {
3107
3113
  const l = performance.now(), i = (l - o) / 1e3, _ = (l - r) / 1e3;
3108
- return t && Ht(`--\x3e ${n} ${e} - partial: ${i} sec, total: ${_} sec, ${s}`), o = l, {
3114
+ return t && qt(`--\x3e ${n} ${e} - partial: ${i} sec, total: ${_} sec, ${s}`), o = l, {
3109
3115
  partial: i,
3110
3116
  total: _
3111
3117
  };
@@ -3114,7 +3120,7 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
3114
3120
  if (mn(t)) {
3115
3121
  if (-1 === t.indexOf("^")) {
3116
3122
  let n, r = e.hook;
3117
- if (1 !== fn(r)) return qt("bad hook 1"), qt(e), qt(t), null;
3123
+ if (1 !== fn(r)) return Ht("bad hook 1"), Ht(e), Ht(t), null;
3118
3124
  for (let e of Object.keys(r)) {
3119
3125
  n = e, r[e];
3120
3126
  break;
@@ -3126,7 +3132,7 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
3126
3132
  }
3127
3133
  {
3128
3134
  let n = t.split("^");
3129
- return 2 !== n.length ? (qt("bad hook 2"), qt(e), qt(t), null) : {
3135
+ return 2 !== n.length ? (Ht("bad hook 2"), Ht(e), Ht(t), null) : {
3130
3136
  topic_name: n[0],
3131
3137
  id: n[1]
3132
3138
  };
@@ -3135,7 +3141,7 @@ exports.GObj = S, exports.SDATA = j, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
3135
3141
  return dn(t) ? {
3136
3142
  topic_name: t.topic_name,
3137
3143
  id: t.id
3138
- } : (qt("bad hook 3"), qt(e), qt(t), null);
3144
+ } : (Ht("bad hook 3"), Ht(e), Ht(t), null);
3139
3145
  }, exports.treedb_encoder_fkey = function(e, t) {
3140
3146
  let n = Er(e, t);
3141
3147
  return n ? n.topic_name + "^" + n.id + "^" + n.hook_name : null;