@yuneta/gobj-js 7.7.0 → 7.7.2

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.
@@ -173,13 +173,13 @@ var O = class {
173
173
  constructor(e, t, n = 0, r = null, l = "", i = null, o = null, s = 0, a = null, u = null, _ = null) {
174
174
  this.type = e, this.name = t, this.alias = i, this.flag = n, this.default_value = r, this.header = o, this.fillspace = s, this.description = l, this.json_fn = a, this.schema = u, this.authpth = _;
175
175
  }
176
- }, v = () => new O(0, null), N = (e, t, n, r, l) => new O(e, t, n, r, l), w = (e, t, n, r, l, i) => new O(e, t, 0, null, i, n, null, 0, l, r, null), D = (e, t, n, r, l, i, o) => new O(e, t, n, null, o, r, null, 0, i, l, null), R = (e, t, n, r, l) => new O(e, t, n, r, l), j = (e, t, n, r, l, i) => new O(e, t, n, null, i, r, null, 0, null, l, null), $ = (e, t, n, r, l) => new O(e, t, n, null, l, null, null, 0, null, null, r), I = (e, t, n, r, l, i) => new O(e, t, n, null, i, null, r, l), A = class {
176
+ }, v = () => new O(0, null), N = (e, t, n, r, l) => new O(e, t, n, r, l), w = (e, t, n, r, l, i) => new O(e, t, 0, null, i, n, null, 0, l, r, null), D = (e, t, n, r, l, i, o) => new O(e, t, n, null, o, r, null, 0, i, l, null), R = (e, t, n, r, l) => new O(e, t, n, r, l), j = (e, t, n, r, l, i) => new O(e, t, n, null, i, r, null, 0, null, l, null), $ = (e, t, n, r, l) => new O(e, t, n, null, l, null, null, 0, null, null, r), I = (e, t, n, r, l, i) => new O(e, t, n, null, i, null, r, l), k = class {
177
177
  constructor(e, t, n, r, l, i, o, s, a) {
178
178
  this.gclass_name = e, this.dl_states = [], this.dl_events = [], this.gmt = t, this.lmt = n, this.attrs_table = r, this.priv = l, this.authz_table = i, this.command_table = o, this.s_user_trace_level = s, this.gclass_flag = Number(a) || 0, this.instances = 0, this.trace_level = 0, this.no_trace_level = 0, this.jn_trace_filter = null, this.fsm_checked = !1;
179
179
  }
180
- }, k = class {
180
+ }, A = class {
181
181
  constructor(e, t, n, r, l) {
182
- this.__refs__ = 0, this.gclass = t, this.parent = null, this.dl_children = [], this.dl_subscriptions = [], this.dl_subscribings = [], this.current_state = t.dl_states[0], this.last_state = null, this.obflag = 0, this.gobj_flag = Number(l) || 0, this.gobj_name = e, this.jn_attrs = null, this.jn_stats = {}, this.jn_user_data = {}, this.full_name = null, this.short_name = null, this.priv = mn(t.priv), this.running = !1, this.playing = !1, this.disabled = !1, this.bottom_gobj = null, this.trace_level = 0, this.no_trace_level = 0;
182
+ this.__refs__ = 0, this.gclass = t, this.parent = null, this.dl_children = [], this.dl_subscriptions = [], this.dl_subscribings = [], this.current_state = t.dl_states[0], this.last_state = null, this.obflag = 0, this.gobj_flag = Number(l) || 0, this.gobj_name = e, this.jn_attrs = null, this.jn_stats = {}, this.jn_user_data = {}, this.full_name = null, this.short_name = null, this.priv = En(t.priv), this.running = !1, this.playing = !1, this.disabled = !1, this.bottom_gobj = null, this.trace_level = 0, this.no_trace_level = 0;
183
183
  }
184
184
  }, L = Object.freeze({
185
185
  gcflag_manual_start: 1,
@@ -231,7 +231,7 @@ function Y() {
231
231
  return M;
232
232
  }
233
233
  function x(e) {
234
- Ln(e) && (e = JSON.stringify(e)), dn(" ".repeat(Math.max(0, 2 * T - 1)) + String(e));
234
+ Pn(e) && (e = JSON.stringify(e)), bn(" ".repeat(Math.max(0, 2 * T - 1)) + String(e));
235
235
  }
236
236
  function B(e, t, n, r, l, i, o) {
237
237
  u = t, _ = n, c = r, f = l, g = i, d = o;
@@ -244,7 +244,7 @@ function B(e, t, n, r, l, i, o) {
244
244
  }
245
245
  function J(e, t) {
246
246
  let n = {};
247
- if (!Pn(t)) return cn("sdata_desc MUST be an array"), pn(t), n;
247
+ if (!Un(t)) return fn("sdata_desc MUST be an array"), mn(t), n;
248
248
  for (let r = 0; r < t.length; r++) {
249
249
  const l = t[r];
250
250
  l.name && Q(e, n, l);
@@ -258,133 +258,133 @@ function Q(e, t, n) {
258
258
  r = String(l);
259
259
  break;
260
260
  case y.DTP_BOOLEAN:
261
- r = xn(l);
261
+ r = Bn(l);
262
262
  break;
263
263
  case y.DTP_INTEGER:
264
- r = parseInt(l), isNaN(r) && cn(`${Xe(e)}: attr NaN: ${n.name}`);
264
+ r = parseInt(l), isNaN(r) && fn(`${Xe(e)}: attr NaN: ${n.name}`);
265
265
  break;
266
266
  case y.DTP_REAL:
267
- r = Number(l), isNaN(r) && cn(`${Xe(e)}: attr NaN: ${n.name}`);
267
+ r = Number(l), isNaN(r) && fn(`${Xe(e)}: attr NaN: ${n.name}`);
268
268
  break;
269
269
  case y.DTP_LIST:
270
- if (Un(l)) try {
270
+ if (Cn(l)) try {
271
271
  r = JSON.parse(l);
272
272
  } catch (e) {
273
- cn(`JSON parse error: ${e.message}`);
273
+ fn(`JSON parse error: ${e.message}`);
274
274
  }
275
275
  else r = l;
276
- Pn(r) || (r = []);
276
+ Un(r) || (r = []);
277
277
  break;
278
278
  case y.DTP_DICT:
279
- if (Un(l)) try {
279
+ if (Cn(l)) try {
280
280
  r = JSON.parse(l);
281
281
  } catch (e) {
282
- cn(`JSON parse error: ${e.message}`);
282
+ fn(`JSON parse error: ${e.message}`);
283
283
  }
284
284
  else r = l;
285
- Ln(r) || (r = {});
285
+ Pn(r) || (r = {});
286
286
  break;
287
287
  case y.DTP_JSON:
288
- if (Un(l)) try {
288
+ if (Cn(l)) try {
289
289
  r = JSON.parse(l);
290
290
  } catch (e) {
291
- cn(`JSON parse error: ${e.message}`);
291
+ fn(`JSON parse error: ${e.message}`);
292
292
  }
293
293
  else r = l;
294
294
  break;
295
295
  case y.DTP_POINTER: r = l;
296
296
  }
297
- return void 0 === r && (cn(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
297
+ return void 0 === r && (fn(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
298
298
  }
299
299
  function q(e, t, n, r) {
300
300
  let l;
301
301
  switch (n.type) {
302
302
  case y.DTP_STRING:
303
303
  if (null == r) l = "";
304
- else if (Un(r)) l = String(r);
304
+ else if (Cn(r)) l = String(r);
305
305
  else {
306
306
  let e = JSON.stringify(r);
307
307
  e && (l = String(e));
308
308
  }
309
309
  break;
310
310
  case y.DTP_BOOLEAN:
311
- l = xn(r);
311
+ l = Bn(r);
312
312
  break;
313
313
  case y.DTP_INTEGER:
314
- l = parseInt(r), isNaN(l) && cn(`${Xe(e)}: attr NaN: ${n.name}`);
314
+ l = parseInt(r), isNaN(l) && fn(`${Xe(e)}: attr NaN: ${n.name}`);
315
315
  break;
316
316
  case y.DTP_REAL:
317
- l = Number(r), isNaN(l) && cn(`${Xe(e)}: attr NaN: ${n.name}`);
317
+ l = Number(r), isNaN(l) && fn(`${Xe(e)}: attr NaN: ${n.name}`);
318
318
  break;
319
319
  case y.DTP_LIST:
320
- if (Un(r)) try {
320
+ if (Cn(r)) try {
321
321
  l = JSON.parse(r);
322
322
  } catch (e) {
323
- cn(`JSON parse error: ${e.message}`);
323
+ fn(`JSON parse error: ${e.message}`);
324
324
  }
325
325
  else l = r;
326
- if (!Pn(l)) return cn(`attr must be an array: ${n.name}`), -1;
326
+ if (!Un(l)) return fn(`attr must be an array: ${n.name}`), -1;
327
327
  break;
328
328
  case y.DTP_DICT:
329
- if (Un(r)) try {
329
+ if (Cn(r)) try {
330
330
  l = JSON.parse(r);
331
331
  } catch (e) {
332
- cn(`JSON parse error: ${e.message}`);
332
+ fn(`JSON parse error: ${e.message}`);
333
333
  }
334
334
  else l = r;
335
- if (!Ln(l)) return cn(`attr must be an object: ${n.name}`), -1;
335
+ if (!Pn(l)) return fn(`attr must be an object: ${n.name}`), -1;
336
336
  break;
337
337
  case y.DTP_JSON:
338
- if (Un(r)) try {
338
+ if (Cn(r)) try {
339
339
  l = JSON.parse(r);
340
340
  } catch (e) {
341
- cn(`JSON parse error: ${e.message}`);
341
+ fn(`JSON parse error: ${e.message}`);
342
342
  }
343
343
  else l = r;
344
- if (!Pn(l) && !Ln(l)) return cn(`attr must be a json dict/list: ${n.name}`), -1;
344
+ if (!Un(l) && !Pn(l)) return fn(`attr must be a json dict/list: ${n.name}`), -1;
345
345
  break;
346
346
  case y.DTP_POINTER: l = r;
347
347
  }
348
- return void 0 === l && cn(`${Xe(e)}: attr undefined: ${n.name}`), t[n.name] = l, Ln(e.priv) && e.priv.hasOwnProperty(n.name) && (e.priv[n.name] = l), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
348
+ return void 0 === l && fn(`${Xe(e)}: attr undefined: ${n.name}`), t[n.name] = l, Pn(e.priv) && e.priv.hasOwnProperty(n.name) && (e.priv[n.name] = l), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
349
349
  }
350
350
  function z(e) {
351
351
  return e.jn_attrs;
352
352
  }
353
353
  function X(e, t, n) {
354
- return mt(e, t) ? z(e) : e && e.bottom_gobj ? X(e.bottom_gobj, t, n) : (n && cn(`GClass Attribute NOT FOUND: ${Xe(e)}, attr ${t}`), null);
354
+ return mt(e, t) ? z(e) : e && e.bottom_gobj ? X(e.bottom_gobj, t, n) : (n && fn(`GClass Attribute NOT FOUND: ${Xe(e)}, attr ${t}`), null);
355
355
  }
356
356
  function H(e, t, n) {
357
- if (!(e && e instanceof A)) return n && cn("gclass NULL"), null;
357
+ if (!(e && e instanceof k)) return n && fn("gclass NULL"), null;
358
358
  if (!t) return e.attrs_table;
359
359
  for (let n = 0; n < e.attrs_table.length; n++) {
360
360
  const r = e.attrs_table[n];
361
361
  if (r.name && r.name === t) return r;
362
362
  }
363
- return n && cn(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
363
+ return n && fn(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
364
364
  }
365
365
  function Z(e, t, n, r, l, i, o, s, a, u, _) {
366
- if (Yn(e)) return cn("gclass_name EMPTY"), null;
367
- if (e.includes("`") || e.includes("^") || e.includes(".")) return cn(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
368
- if (ue(e)) return cn(`GClass ALREADY exists: ${e}`), null;
369
- let c = new A(e, r, l, i, o, s, a, u, _);
366
+ if (xn(e)) return fn("gclass_name EMPTY"), null;
367
+ if (e.includes("`") || e.includes("^") || e.includes(".")) return fn(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
368
+ if (ue(e)) return fn(`GClass ALREADY exists: ${e}`), null;
369
+ let c = new k(e, r, l, i, o, s, a, u, _);
370
370
  (function(e, t) {
371
- e && e instanceof A ? t ? p[t] ? cn(`gclass ALREADY REGISTERED: ${t}`) : p[t] = e : cn("gclass_name undefined") : cn("gclass undefined");
371
+ e && e instanceof k ? t ? p[t] ? fn(`gclass ALREADY REGISTERED: ${t}`) : p[t] = e : fn("gclass_name undefined") : fn("gclass undefined");
372
372
  })(c, e);
373
373
  const f = n.length;
374
374
  for (let e = 0; e < f; e++) {
375
375
  let t = n[e][0], r = n[e][1];
376
- if (Yn(t)) continue;
376
+ if (xn(t)) continue;
377
377
  if (re(c, t) < 0) return ee(c), null;
378
378
  const l = r.length;
379
379
  for (let e = 0; e < l; e++) {
380
380
  let n = r[e][0], l = r[e][1], i = r[e][2];
381
- Yn(n) || le(c, t, n, l, i);
381
+ xn(n) || le(c, t, n, l, i);
382
382
  }
383
383
  }
384
384
  for (let e = 0; e < t.length; e++) {
385
385
  let n = t[e][0], r = t[e][1];
386
- if (!Yn(n)) {
387
- if (se(c, n)) return cn(`SMachine: event repeated in input_events: ${n}`), ee(c), null;
386
+ if (!xn(n)) {
387
+ if (se(c, n)) return fn(`SMachine: event repeated in input_events: ${n}`), ee(c), null;
388
388
  oe(c, n, r);
389
389
  }
390
390
  }
@@ -396,13 +396,13 @@ function Z(e, t, n, r, l, i, o, s, a, u, _) {
396
396
  }
397
397
  function ee(e) {
398
398
  let t;
399
- if (Un(e)) t = e;
399
+ if (Cn(e)) t = e;
400
400
  else {
401
- if (!(e instanceof A)) return cn("Cannot unregister gclass, type unknown"), -1;
401
+ if (!(e instanceof k)) return fn("Cannot unregister gclass, type unknown"), -1;
402
402
  t = e.gclass_name;
403
403
  }
404
404
  let n = p[t];
405
- return n ? n.instances > 0 ? (cn(`Cannot unregister gclass, instances in use: ${t}`), -1) : (delete p[t], 0) : (cn(`Cannot unregister gclass, not found: ${t}`), -1);
405
+ return n ? n.instances > 0 ? (fn(`Cannot unregister gclass, instances in use: ${t}`), -1) : (delete p[t], 0) : (fn(`Cannot unregister gclass, not found: ${t}`), -1);
406
406
  }
407
407
  function te(e, t) {
408
408
  const n = e.dl_states.length, r = e.dl_states;
@@ -421,22 +421,22 @@ function ne(e, t) {
421
421
  return null;
422
422
  }
423
423
  function re(e, t) {
424
- return e instanceof A ? te(e, t) ? (cn(`state already exists: ${t}`), -1) : (e.dl_states.push(new V(t)), 0) : (cn("Cannot add state, typeof not GClass"), -1);
424
+ return e instanceof k ? te(e, t) ? (fn(`state already exists: ${t}`), -1) : (e.dl_states.push(new V(t)), 0) : (fn("Cannot add state, typeof not GClass"), -1);
425
425
  }
426
426
  function le(e, t, n, r, l) {
427
- if (!(e instanceof A)) return cn("Cannot add state, typeof not GClass"), -1;
428
- if (Yn(t)) return cn("state_name EMPTY"), -1;
427
+ if (!(e instanceof k)) return fn("Cannot add state, typeof not GClass"), -1;
428
+ if (xn(t)) return fn("state_name EMPTY"), -1;
429
429
  let i = te(e, t);
430
- return i ? ne(i, n) ? (cn(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (i.dl_actions.push(new G(n, r, l)), 0) : (cn(`state not found: ${t}`), -1);
430
+ return i ? ne(i, n) ? (fn(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (i.dl_actions.push(new G(n, r, l)), 0) : (fn(`state not found: ${t}`), -1);
431
431
  }
432
432
  function ie(e, t, n) {
433
- Yn(t) || e.push(new W(t, n));
433
+ xn(t) || e.push(new W(t, n));
434
434
  }
435
435
  function oe(e, t, n) {
436
- return e instanceof A ? ie(e.dl_events, t, n) : (cn("Cannot add state, typeof not GClass"), -1);
436
+ return e instanceof k ? ie(e.dl_events, t, n) : (fn("Cannot add state, typeof not GClass"), -1);
437
437
  }
438
438
  function se(e, t) {
439
- if (!(e instanceof A)) return cn("Cannot add state, typeof not GClass"), 0;
439
+ if (!(e instanceof k)) return fn("Cannot add state, typeof not GClass"), 0;
440
440
  const n = e.dl_events.length, r = e.dl_events;
441
441
  for (let e = 0; e < n; e++) {
442
442
  let n = r[e];
@@ -445,25 +445,25 @@ function se(e, t) {
445
445
  return null;
446
446
  }
447
447
  function ae(e) {
448
- if (!(e instanceof A)) return cn("Cannot add state, typeof not GClass"), -1;
448
+ if (!(e instanceof k)) return fn("Cannot add state, typeof not GClass"), -1;
449
449
  let t = 0;
450
- An(e.dl_states) || (cn(`GClass without states: ${e.gclass_name}`), t += -1);
450
+ An(e.dl_states) || (fn(`GClass without states: ${e.gclass_name}`), t += -1);
451
451
  for (let n = 0; n < e.dl_states.length; n++) {
452
452
  let r = e.dl_states[n];
453
- if (!Yn(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
453
+ if (!xn(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
454
454
  let l = r.dl_actions[n];
455
- Yn(l.event_name) || (se(e, l.event_name) || (cn(`SMachine: state's event NOT in input_events: gclass ${e.gclass_name}, state ${r.state_name}, event ${l.event_name}`), t += -1), l.next_state && (te(e, l.next_state) || (cn(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${l.next_state}`), t += -1)));
455
+ xn(l.event_name) || (se(e, l.event_name) || (fn(`SMachine: state's event NOT in input_events: gclass ${e.gclass_name}, state ${r.state_name}, event ${l.event_name}`), t += -1), l.next_state && (te(e, l.next_state) || (fn(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${l.next_state}`), t += -1)));
456
456
  }
457
457
  }
458
458
  for (let n = 0; n < e.dl_events.length; n++) {
459
459
  let r = e.dl_events[n];
460
- if (!Yn(r.event_name) && (Cn(r.event_flag) || (cn(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & C.EVF_OUTPUT_EVENT))) {
460
+ if (!xn(r.event_name) && (Fn(r.event_flag) || (fn(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & C.EVF_OUTPUT_EVENT))) {
461
461
  let n = !1;
462
462
  for (let t = 0; t < e.dl_states.length; t++) {
463
463
  let l = e.dl_states[t];
464
- Yn(l.state_name) || ne(l, r.event_name) && (n = !0);
464
+ xn(l.state_name) || ne(l, r.event_name) && (n = !0);
465
465
  }
466
- n || (cn(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
466
+ n || (fn(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
467
467
  }
468
468
  }
469
469
  return t;
@@ -473,11 +473,11 @@ function ue(e, t) {
473
473
  try {
474
474
  n = p[e];
475
475
  } catch (e) {}
476
- return n || t && cn(`gclass not found: ${e}`), n;
476
+ return n || t && fn(`gclass not found: ${e}`), n;
477
477
  }
478
478
  function _e() {
479
479
  let e = [];
480
- for (const t of Object.keys(m)) Rn(e, t);
480
+ for (const t of Object.keys(m)) jn(e, t);
481
481
  return e;
482
482
  }
483
483
  function ce() {
@@ -486,69 +486,69 @@ function ce() {
486
486
  function fe(e, t) {
487
487
  e = e.toLowerCase();
488
488
  let n = m[e];
489
- return !n && t ? (cn(`gobj service not found: ${e}`), null) : n;
489
+ return !n && t ? (fn(`gobj service not found: ${e}`), null) : n;
490
490
  }
491
491
  function ge(e) {
492
492
  let t = qe(e);
493
- return t = t.toLowerCase(), m[t] && cn(`service ALREADY REGISTERED: ${t}. Will be UPDATED`), m[t] = e, 0;
493
+ return t = t.toLowerCase(), m[t] && fn(`service ALREADY REGISTERED: ${t}. Will be UPDATED`), m[t] = e, 0;
494
494
  }
495
495
  function de(e, t) {
496
- t.parent && cn(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
496
+ t.parent && fn(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
497
497
  }
498
498
  function be(e, t) {
499
- let n = al(e.dl_children, t);
500
- n >= 0 && (jn(e.dl_children, n), t.parent = null);
499
+ let n = ul(e.dl_children, t);
500
+ n >= 0 && ($n(e.dl_children, n), t.parent = null);
501
501
  }
502
502
  function pe(e, t) {
503
- return Ke(e) ? u ? u(e, t) : -1 : (cn(`${Xe(e)}: Only gobj services can load/save writable-persistent`), -1);
503
+ return Ke(e) ? u ? u(e, t) : -1 : (fn(`${Xe(e)}: Only gobj services can load/save writable-persistent`), -1);
504
504
  }
505
505
  function me(e, t) {
506
- return Ke(e) ? _ ? _(e, t) : -1 : (cn(`${Xe(e)}: Only gobj services can load/save writable-persistent`), -1);
506
+ return Ke(e) ? _ ? _(e, t) : -1 : (fn(`${Xe(e)}: Only gobj services can load/save writable-persistent`), -1);
507
507
  }
508
508
  function Ee(e, t) {
509
- return Ke(e) ? c ? c(e, t) : -1 : (cn(`${Xe(e)}: Only gobj services can load/save writable-persistent`), -1);
509
+ return Ke(e) ? c ? c(e, t) : -1 : (fn(`${Xe(e)}: Only gobj services can load/save writable-persistent`), -1);
510
510
  }
511
511
  function he(e, t) {
512
512
  return f ? f(e, t) : null;
513
513
  }
514
514
  function Te(e, t) {
515
- "__json_config_variables__" !== t && cn(`GClass Attribute NOT FOUND: ${Xe(e)}, attr ${t}`);
515
+ "__json_config_variables__" !== t && fn(`GClass Attribute NOT FOUND: ${Xe(e)}, attr ${t}`);
516
516
  }
517
517
  function ye(e, t, n) {
518
518
  let r = t;
519
519
  (function(e, t, n, r, l) {
520
- if (!e || !t) return cn("hsdata or kw NULL"), -1;
520
+ if (!e || !t) return fn("hsdata or kw NULL"), -1;
521
521
  let i = 0;
522
522
  for (const [o, s] of Object.entries(t)) {
523
523
  const t = H(l.gclass, o, !1);
524
- t ? (-1 === n || t.flag & n) && (t.flag & S.SDF_DEPRECATED && fn(`${Xe(l)}: Deprecated attribute used in gobj creation: ${o}`), i += q(l, e, t, s)) : r && (r(l, o), i--);
524
+ t ? (-1 === n || t.flag & n) && (t.flag & S.SDF_DEPRECATED && gn(`${Xe(l)}: Deprecated attribute used in gobj creation: ${o}`), i += q(l, e, t, s)) : r && (r(l, o), i--);
525
525
  }
526
526
  return i;
527
- })(z(e), r, -1, e.gclass.gclass_flag & L.gcflag_ignore_unknown_attrs ? 0 : Te, e) < 0 && (cn(`${Xe(e)} json2data() FAILED`), pn(r));
527
+ })(z(e), r, -1, e.gclass.gclass_flag & L.gcflag_ignore_unknown_attrs ? 0 : Te, e) < 0 && (fn(`${Xe(e)} json2data() FAILED`), mn(r));
528
528
  }
529
529
  function Se(e, n, r, l, i) {
530
530
  if (i & P.gobj_flag_yuno) {
531
- if (E) return cn("__yuno__ already created"), null;
531
+ if (E) return fn("__yuno__ already created"), null;
532
532
  i |= P.gobj_flag_service;
533
533
  } else {
534
- if (!l) return cn("gobj NEEDS a parent!"), null;
535
- if (!("string" == typeof l || l instanceof k)) return cn(`BAD TYPE of parent: ${l}`), null;
536
- if (Un(l) && !(l = fe(l))) return fn(`parent service not found: ${l}`), null;
534
+ if (!l) return fn("gobj NEEDS a parent!"), null;
535
+ if (!("string" == typeof l || l instanceof A)) return fn(`BAD TYPE of parent: ${l}`), null;
536
+ if (Cn(l) && !(l = fe(l))) return gn(`parent service not found: ${l}`), null;
537
537
  }
538
- if (i & P.gobj_flag_service && fe(e, !1)) return cn(`service ALREADY registered: ${n}^${e}`), null;
538
+ if (i & P.gobj_flag_service && fe(e, !1)) return fn(`service ALREADY registered: ${n}^${e}`), null;
539
539
  if (i & P.gobj_flag_default_service) {
540
- if (h) return cn(`default service ALREADY registered: ${n}^${e}`), null;
540
+ if (h) return fn(`default service ALREADY registered: ${n}^${e}`), null;
541
541
  i |= P.gobj_flag_service;
542
542
  }
543
- if (Yn(n)) return cn("gclass_name must be a string"), null;
543
+ if (xn(n)) return fn("gclass_name must be a string"), null;
544
544
  let o = ue(n, !1);
545
- if (!o) return cn(`GClass not registered: ${n}^${e}`), null;
546
- if (!Un(e)) return cn(`gobj_name must be a string: ${n}`), null;
547
- if (!Yn(e)) {
548
- if (e.includes("`")) return cn(`gobj_name cannot contain char ': ${n}^${e}`), null;
549
- if (e.includes("^")) return cn(`gobj_name cannot contain char ^: ${n}^${e}`), null;
545
+ if (!o) return fn(`GClass not registered: ${n}^${e}`), null;
546
+ if (!Cn(e)) return fn(`gobj_name must be a string: ${n}`), null;
547
+ if (!xn(e)) {
548
+ if (e.includes("`")) return fn(`gobj_name cannot contain char ': ${n}^${e}`), null;
549
+ if (e.includes("^")) return fn(`gobj_name cannot contain char ^: ${n}^${e}`), null;
550
550
  }
551
- let s = new k(e, o, r, l, i);
551
+ let s = new A(e, o, r, l, i);
552
552
  s.jn_attrs = J(s, o.attrs_table);
553
553
  for (const [e, t] of Object.entries(s.jn_attrs)) e in s.priv && (s.priv[e] = t);
554
554
  let a = E && Tt(E, "trace_creation");
@@ -573,15 +573,15 @@ function Re(e, t, n, r) {
573
573
  return Se(e, t, n, r, 0);
574
574
  }
575
575
  function je(e) {
576
- if (nt(e)) return void cn("gobj NULL or DESTROYED");
577
- e.__refs__ > 0 && cn(`${Xe(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.obflag |= U.obflag_destroying;
576
+ if (nt(e)) return void fn("gobj NULL or DESTROYED");
577
+ e.__refs__ > 0 && fn(`${Xe(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.obflag |= U.obflag_destroying;
578
578
  let n = E && Tt(E, "trace_creation");
579
579
  n && x(t("💔💔⏩ destroying: %s", He(e)));
580
580
  let r = Ze(e);
581
581
  r && r.gclass.gmt.mt_child_removed && (n && x(t("👦👦🔴 child_removed(%s): %s", He(r), Xe(e))), r.gclass.gmt.mt_child_removed(r, e)), e.gobj_flag & P.gobj_flag_service && function(e) {
582
582
  let t = qe(e);
583
- t = t.toLowerCase(), m[t] ? delete m[t] : cn(`"service NOT found in register": ${t}`);
584
- }(e), e.playing && (cn(`Destroying a PLAYING gobj: ${He(e)}`), Ve(e)), e.running && (cn(`Destroying a RUNNING gobj: ${He(e)}`), Pe(e)), Bt(e, e.dl_subscriptions, !0), Bt(e, e.dl_subscribings, !0), r && (be(r, e), et(e) && (rt(r) !== e || nt(r) || lt(r, null))), function(e) {
583
+ t = t.toLowerCase(), m[t] ? delete m[t] : fn(`"service NOT found in register": ${t}`);
584
+ }(e), e.playing && (fn(`Destroying a PLAYING gobj: ${He(e)}`), Ve(e)), e.running && (fn(`Destroying a RUNNING gobj: ${He(e)}`), Pe(e)), Bt(e, e.dl_subscriptions, !0), Bt(e, e.dl_subscribings, !0), r && (be(r, e), et(e) && (rt(r) !== e || nt(r) || lt(r, null))), function(e) {
585
585
  let t = e.dl_children.slice();
586
586
  for (let e = 0; e < t.length; e++) {
587
587
  let n = t[e];
@@ -590,9 +590,9 @@ function je(e) {
590
590
  }(e), e.obflag & U.obflag_created && e.gclass.gmt.mt_destroy && e.gclass.gmt.mt_destroy(e), n && x(t("💔💔⏪ destroyed: %s", He(e))), e.obflag |= U.obflag_destroyed, e.obflag & U.obflag_created && e.gclass.instances--;
591
591
  }
592
592
  function $e(e) {
593
- if (nt(e)) return cn("gobj NULL or DESTROYED"), -1;
594
- if (e.running) return cn(`${Xe(e)}: GObj ALREADY RUNNING`), -1;
595
- if (e.disabled) return cn(`${Xe(e)}: GObj DISABLED`), -1;
593
+ if (nt(e)) return fn("gobj NULL or DESTROYED"), -1;
594
+ if (e.running) return fn(`${Xe(e)}: GObj ALREADY RUNNING`), -1;
595
+ if (e.disabled) return fn(`${Xe(e)}: GObj DISABLED`), -1;
596
596
  E && Tt(E, "trace_start_stop") && x(t("⏺ ⏺ start: %s", He(e))), e.running = !0;
597
597
  let n = 0;
598
598
  return e.gclass.gmt.mt_start && (n = e.gclass.gmt.mt_start(e)), n;
@@ -600,19 +600,19 @@ function $e(e) {
600
600
  function Ie(e, t, n) {
601
601
  return e.gclass.gclass_flag & L.gcflag_manual_start || nt(e) || We(e) || Me(e) || $e(e), 0;
602
602
  }
603
- function Ae(e) {
604
- return nt(e) ? (cn("gobj NULL or DESTROYED"), -1) : ot(e, F.WALK_FIRST2LAST, Ie, 0, 0);
603
+ function ke(e) {
604
+ return nt(e) ? (fn("gobj NULL or DESTROYED"), -1) : ot(e, F.WALK_FIRST2LAST, Ie, 0, 0);
605
605
  }
606
- function ke(e, t, n) {
606
+ function Ae(e, t, n) {
607
607
  return e.gclass.gclass_flag & L.gcflag_manual_start || Me(e) ? 1 : (We(e) || $e(e), 0);
608
608
  }
609
609
  function Le(e) {
610
- return nt(e) ? (cn("gobj NULL or DESTROYED"), -1) : (E && Tt(E, "trace_start_stop") && x(t("⏺ ⏺ ⏺ ⏺ start_tree: %s", He(e))), e.gclass.gclass_flag & L.gcflag_manual_start || e.disabled ? 0 : (e.running || $e(e), st(e, F.WALK_TOP2BOTTOM, ke, 0, 0)));
610
+ return nt(e) ? (fn("gobj NULL or DESTROYED"), -1) : (E && Tt(E, "trace_start_stop") && x(t("⏺ ⏺ ⏺ ⏺ start_tree: %s", He(e))), e.gclass.gclass_flag & L.gcflag_manual_start || e.disabled ? 0 : (e.running || $e(e), st(e, F.WALK_TOP2BOTTOM, Ae, 0, 0)));
611
611
  }
612
612
  function Pe(e) {
613
- if (nt(e)) return cn("gobj NULL or DESTROYED"), -1;
614
- if (!e.running) return cn(`${Xe(e)}: GObj NOT RUNNING`), -1;
615
- e.playing && (fn(`${Xe(e)}: GObj stopping without previous pause`), Ve(e)), E && Tt(E, "trace_start_stop") && x(t("⏹ ⏹ stop: %s", He(e))), e.running = !1;
613
+ if (nt(e)) return fn("gobj NULL or DESTROYED"), -1;
614
+ if (!e.running) return fn(`${Xe(e)}: GObj NOT RUNNING`), -1;
615
+ e.playing && (gn(`${Xe(e)}: GObj stopping without previous pause`), Ve(e)), E && Tt(E, "trace_start_stop") && x(t("⏹ ⏹ stop: %s", He(e))), e.running = !1;
616
616
  let n = 0;
617
617
  return e.gclass.gmt.mt_stop && (n = e.gclass.gmt.mt_stop(e)), n;
618
618
  }
@@ -620,25 +620,25 @@ function Ue(e, t, n) {
620
620
  return We(e) && Pe(e), 0;
621
621
  }
622
622
  function Ce(e) {
623
- return nt(e) ? (cn("gobj NULL or DESTROYED"), -1) : ot(e, F.WALK_FIRST2LAST, Ue, 0, 0);
623
+ return nt(e) ? (fn("gobj NULL or DESTROYED"), -1) : ot(e, F.WALK_FIRST2LAST, Ue, 0, 0);
624
624
  }
625
625
  function Fe(e) {
626
- return nt(e) ? (cn("gobj NULL or DESTROYED"), -1) : (E && Tt(E, "trace_start_stop") && x(t("⏹ ⏹ ⏹ ⏹ stop_tree: %s", He(e))), We(e) && Pe(e), st(e, F.WALK_TOP2BOTTOM, Ue, 0, 0));
626
+ return nt(e) ? (fn("gobj NULL or DESTROYED"), -1) : (E && Tt(E, "trace_start_stop") && x(t("⏹ ⏹ ⏹ ⏹ stop_tree: %s", He(e))), We(e) && Pe(e), st(e, F.WALK_TOP2BOTTOM, Ue, 0, 0));
627
627
  }
628
628
  function Ge(e) {
629
- if (nt(e)) return cn(`gobj NULL or DESTROYED: ${Xe(e)}`), -1;
630
- if (e.playing) return cn(`${Xe(e)}: GObj ALREADY PLAYING`), -1;
631
- if (e.disabled) return cn(`${Xe(e)}: GObj DISABLED`), -1;
629
+ if (nt(e)) return fn(`gobj NULL or DESTROYED: ${Xe(e)}`), -1;
630
+ if (e.playing) return fn(`${Xe(e)}: GObj ALREADY PLAYING`), -1;
631
+ if (e.disabled) return fn(`${Xe(e)}: GObj DISABLED`), -1;
632
632
  if (!We(e)) {
633
- if (e.gclass.gclass_flag & L.gcflag_required_start_to_play) return cn(`${Xe(e)}: Cannot play, start not done`), -1;
634
- fn(`${Xe(e)}: GObj playing without previous start`), $e(e);
633
+ if (e.gclass.gclass_flag & L.gcflag_required_start_to_play) return fn(`${Xe(e)}: Cannot play, start not done`), -1;
634
+ gn(`${Xe(e)}: GObj playing without previous start`), $e(e);
635
635
  }
636
636
  E && Tt(E, "trace_start_stop") && x(t("⏯ ⏯ play: %s", He(e))), e.playing = !0;
637
637
  let n = 0;
638
638
  return e.gclass.gmt.mt_play && (n = e.gclass.gmt.mt_play(e), n < 0 && (e.playing = !1)), n;
639
639
  }
640
640
  function Ve(e) {
641
- return nt(e) ? (cn("gobj NULL or DESTROYED"), -1) : e.playing ? (E && Tt(E, "trace_start_stop") && x(t("⏸ ⏸ pause: %s", He(e))), e.playing = !1, e.gclass.gmt.mt_pause ? e.gclass.gmt.mt_pause(e) : 0) : (cn(`${Xe(e)}: GObj NOT PLAYING`), -1);
641
+ return nt(e) ? (fn("gobj NULL or DESTROYED"), -1) : e.playing ? (E && Tt(E, "trace_start_stop") && x(t("⏸ ⏸ pause: %s", He(e))), e.playing = !1, e.gclass.gmt.mt_pause ? e.gclass.gmt.mt_pause(e) : 0) : (fn(`${Xe(e)}: GObj NOT PLAYING`), -1);
642
642
  }
643
643
  function We(e) {
644
644
  return !nt(e) && e.running;
@@ -668,47 +668,47 @@ function Qe() {
668
668
  return e ? St(e, "yuno_id") : "";
669
669
  }
670
670
  function qe(e) {
671
- return Kn(e) ? e.gobj_name : (cn("gobj bad type"), null);
671
+ return Yn(e) ? e.gobj_name : (fn("gobj bad type"), null);
672
672
  }
673
673
  function ze(e) {
674
- return Kn(e) ? e.gclass.gclass_name : (cn("gobj NULL of bad type"), null);
674
+ return Yn(e) ? e.gclass.gclass_name : (fn("gobj NULL of bad type"), null);
675
675
  }
676
676
  function Xe(e) {
677
- return Kn(e) ? e.gclass.gclass_name + "^" + qe(e) : (cn("gobj bad type"), null);
677
+ return Yn(e) ? e.gclass.gclass_name + "^" + qe(e) : (fn("gobj bad type"), null);
678
678
  }
679
679
  function He(e) {
680
- if (!Kn(e)) return cn("gobj NULL of bad type"), null;
680
+ if (!Yn(e)) return fn("gobj NULL of bad type"), null;
681
681
  let t = Xe(e), n = Ze(e);
682
682
  for (; n;) t = Xe(n) + "`" + t, n = Ze(n);
683
683
  return t;
684
684
  }
685
685
  function Ze(e) {
686
- return Kn(e) ? e.parent : (cn("gobj NULL of bad type"), null);
686
+ return Yn(e) ? e.parent : (fn("gobj NULL of bad type"), null);
687
687
  }
688
688
  function et(e) {
689
- return Kn(e) ? !!(e.gobj_flag & P.gobj_flag_volatil) : (cn("gobj NULL of bad type"), null);
689
+ return Yn(e) ? !!(e.gobj_flag & P.gobj_flag_volatil) : (fn("gobj NULL of bad type"), null);
690
690
  }
691
691
  function tt(e) {
692
- return Kn(e) ? !!(e.gobj_flag & P.gobj_flag_pure_child) : (cn("gobj NULL of bad type"), null);
692
+ return Yn(e) ? !!(e.gobj_flag & P.gobj_flag_pure_child) : (fn("gobj NULL of bad type"), null);
693
693
  }
694
694
  function nt(e) {
695
- return !Kn(e) || !!(e.obflag & (U.obflag_destroyed | U.obflag_destroying));
695
+ return !Yn(e) || !!(e.obflag & (U.obflag_destroyed | U.obflag_destroying));
696
696
  }
697
697
  function rt(e) {
698
- return Kn(e) ? e.bottom_gobj : (cn("gobj NULL of bad type"), null);
698
+ return Yn(e) ? e.bottom_gobj : (fn("gobj NULL of bad type"), null);
699
699
  }
700
700
  function lt(e, t) {
701
- if (!Kn(e)) return cn("gobj NULL of bad type"), null;
702
- e.bottom_gobj && fn(`${Xe(e)}: bottom_gobj already set`), e.bottom_gobj = t;
701
+ if (!Yn(e)) return fn("gobj NULL of bad type"), null;
702
+ e.bottom_gobj && gn(`${Xe(e)}: bottom_gobj already set`), e.bottom_gobj = t;
703
703
  }
704
704
  function it(e, t, n) {
705
- return Kn(e) ? t ? H(e.gclass, t, n) : e.gclass.attrs_table : (cn("gobj NULL of bad type"), null);
705
+ return Yn(e) ? t ? H(e.gclass, t, n) : e.gclass.attrs_table : (fn("gobj NULL of bad type"), null);
706
706
  }
707
707
  function ot(e, t, n, r, l) {
708
- return nt(e) ? (cn("gobj NULL, destroying, or bad type"), 0) : at(e.dl_children, t, n, r, l);
708
+ return nt(e) ? (fn("gobj NULL, destroying, or bad type"), 0) : at(e.dl_children, t, n, r, l);
709
709
  }
710
710
  function st(e, t, n, r, l) {
711
- return nt(e) ? (cn("gobj NULL, destroying, or bad type"), 0) : _t(e.dl_children, t, n, r, l);
711
+ return nt(e) ? (fn("gobj NULL, destroying, or bad type"), 0) : _t(e.dl_children, t, n, r, l);
712
712
  }
713
713
  function at(e, t, n, r, l) {
714
714
  let i, o = [...e];
@@ -746,12 +746,12 @@ function _t(e, t, n, r, l) {
746
746
  return 0;
747
747
  }
748
748
  function ct(e, t) {
749
- if (Yn(t)) return null;
749
+ if (xn(t)) return null;
750
750
  const n = t.toLowerCase();
751
751
  return "__default_service__" === n ? h : "__yuno__" === n || "__root__" === n ? E : pt(E, t);
752
752
  }
753
753
  function ft(e, t) {
754
- if (!Kn(e)) return cn("gobj NULL of bad type"), !1;
754
+ if (!Yn(e)) return fn("gobj NULL of bad type"), !1;
755
755
  let n = t.__gclass_name__, r = t.__gobj_name__, l = t.__prefix_gobj_name__;
756
756
  t.__disabled__;
757
757
  let i = t.__state__;
@@ -767,7 +767,7 @@ function ft(e, t) {
767
767
  return !0;
768
768
  }
769
769
  function gt(e, t) {
770
- if (nt(e)) return cn("gobj NULL or DESTROYED"), null;
770
+ if (nt(e)) return fn("gobj NULL or DESTROYED"), null;
771
771
  const n = e.dl_children;
772
772
  for (let e = 0; e < n.length; e++) {
773
773
  const r = n[e];
@@ -776,7 +776,7 @@ function gt(e, t) {
776
776
  return null;
777
777
  }
778
778
  function dt(e, t) {
779
- if (nt(e)) return cn("gobj NULL or DESTROYED"), null;
779
+ if (nt(e)) return fn("gobj NULL or DESTROYED"), null;
780
780
  t = t || {};
781
781
  let n = [];
782
782
  const r = e.dl_children;
@@ -817,7 +817,7 @@ function pt(e, t) {
817
817
  return i ? (n.splice(0, 1), n = n.join("`"), pt(i, n)) : null;
818
818
  }
819
819
  function mt(e, t) {
820
- return !Yn(t) && !!H(e.gclass, t, !1);
820
+ return !xn(t) && !!H(e.gclass, t, !1);
821
821
  }
822
822
  function Et(e, t, n) {
823
823
  let r = e.jn_attrs;
@@ -825,7 +825,7 @@ function Et(e, t, n) {
825
825
  let n = r[t];
826
826
  return e.gclass.gmt.mt_reading ? e.gclass.gmt.mt_reading(e, t, n) : n;
827
827
  }
828
- return cn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
828
+ return fn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
829
829
  }
830
830
  function ht(e, t, n) {
831
831
  let r = {}, l = e.gclass.attrs_table;
@@ -833,41 +833,41 @@ function ht(e, t, n) {
833
833
  const i = l[n];
834
834
  if (i.name && (-1 === t || i.flag & t)) {
835
835
  let t;
836
- !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? t = On(e.jn_attrs, i.name) : (t = e.gclass.gmt.mt_reading(e, i.name), void 0 === t && (t = On(e.jn_attrs, i.name))), Nn(r, i.name, t);
836
+ !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? t = vn(e.jn_attrs, i.name) : (t = e.gclass.gmt.mt_reading(e, i.name), void 0 === t && (t = vn(e.jn_attrs, i.name))), wn(r, i.name, t);
837
837
  }
838
838
  }
839
839
  return r;
840
840
  }
841
841
  function Tt(e, t) {
842
842
  if (t) {
843
- if (0 === Qn(t, "__disabled__")) return Me(e);
844
- if (0 === Qn(t, "__running__")) return We(e);
845
- if (0 === Qn(t, "__playing__")) return Ye(e);
846
- if (0 === Qn(t, "__service__")) return Ke(e);
843
+ if (0 === qn(t, "__disabled__")) return Me(e);
844
+ if (0 === qn(t, "__running__")) return We(e);
845
+ if (0 === qn(t, "__playing__")) return Ye(e);
846
+ if (0 === qn(t, "__service__")) return Ke(e);
847
847
  }
848
848
  let n = X(e, t, !1);
849
- return n ? !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? On(n, t) : e.gclass.gmt.mt_reading(e, t) : (cn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
849
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? vn(n, t) : e.gclass.gmt.mt_reading(e, t) : (fn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
850
850
  }
851
851
  function yt(e, t) {
852
- t && Qn(t, "__trace_level__");
852
+ t && qn(t, "__trace_level__");
853
853
  let n = X(e, t, !1);
854
- return n ? !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? On(n, t) : e.gclass.gmt.mt_reading(e, t) : (cn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
854
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? vn(n, t) : e.gclass.gmt.mt_reading(e, t) : (fn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
855
855
  }
856
856
  function St(e, t) {
857
- if (t && 0 === Qn(t, "__state__")) return It(e);
857
+ if (t && 0 === qn(t, "__state__")) return It(e);
858
858
  let n = X(e, t, !1);
859
- return n ? !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? On(n, t) : e.gclass.gmt.mt_reading(e, t) : (cn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
859
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? vn(n, t) : e.gclass.gmt.mt_reading(e, t) : (fn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
860
860
  }
861
861
  function Ot(e, t) {
862
862
  let n = X(e, t, !1);
863
- return n ? !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? On(n, t) : e.gclass.gmt.mt_reading(e, t) : (cn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
863
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & U.obflag_destroyed ? vn(n, t) : e.gclass.gmt.mt_reading(e, t) : (fn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
864
864
  }
865
865
  function vt(e, n, r, l) {
866
- if (!Un(n)) return cn(t("gobj_write_attr(%s): path must be a string", Xe(e))), -1;
866
+ if (!Cn(n)) return fn(t("gobj_write_attr(%s): path must be a string", Xe(e))), -1;
867
867
  let i, o = e.jn_attrs, s = n.split("`");
868
868
  if (s.length <= 1) {
869
869
  let l = n;
870
- return l in o && o.hasOwnProperty(l) ? (o[l] = r, Ln(e.priv) && e.priv.hasOwnProperty(l) && (e.priv[l] = r), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, l), 0) : (cn(t("gobj_write_attr(%s): attr not found '%s'", Xe(e), l)), -1);
870
+ return l in o && o.hasOwnProperty(l) ? (o[l] = r, Pn(e.priv) && e.priv.hasOwnProperty(l) && (e.priv[l] = r), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, l), 0) : (fn(t("gobj_write_attr(%s): attr not found '%s'", Xe(e), l)), -1);
871
871
  }
872
872
  let a = s.length;
873
873
  for (let t = 0; t < a; t++) {
@@ -878,20 +878,20 @@ function vt(e, n, r, l) {
878
878
  continue;
879
879
  }
880
880
  let l = e.jn_attrs;
881
- if (i in l && l.hasOwnProperty(i)) return l[i] = r, Ln(e.priv) && e.priv.hasOwnProperty(i) && (e.priv[i] = r), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.mt_writing && e.mt_writing(e, i), 0;
881
+ if (i in l && l.hasOwnProperty(i)) return l[i] = r, Pn(e.priv) && e.priv.hasOwnProperty(i) && (e.priv[i] = r), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.mt_writing && e.mt_writing(e, i), 0;
882
882
  break;
883
883
  }
884
- return cn(t("gobj_write_attr(%s): attr not found '%s'", Xe(e), i)), -1;
884
+ return fn(t("gobj_write_attr(%s): attr not found '%s'", Xe(e), i)), -1;
885
885
  }
886
886
  function Nt(e) {
887
887
  return function(e, t, n) {
888
- if (nt(e)) return cn("gobj NULL or DESTROYED"), -1;
888
+ if (nt(e)) return fn("gobj NULL or DESTROYED"), -1;
889
889
  let r = e.gclass.attrs_table;
890
890
  for (let l = 0; l < r.length; l++) {
891
891
  const i = r[l];
892
892
  if (i.name && !(n && i.flag & n) && (-1 === t || i.flag & t)) {
893
893
  const t = Q(e, e.jn_attrs, i);
894
- Ln(e.priv) && e.priv.hasOwnProperty(i.name) && (e.priv[i.name] = t), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, i.name);
894
+ Pn(e.priv) && e.priv.hasOwnProperty(i.name) && (e.priv[i.name] = t), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, i.name);
895
895
  }
896
896
  }
897
897
  return 0;
@@ -907,30 +907,30 @@ function wt(e, t, n, r) {
907
907
  }
908
908
  function Dt(e, t, n) {
909
909
  let r = X(e, t, !1);
910
- return r ? (r[t] = xn(n), Ln(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (cn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
910
+ return r ? (r[t] = Bn(n), Pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (fn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
911
911
  }
912
912
  function Rt(e, t, n) {
913
913
  let r = X(e, t, !1);
914
- return r ? (r[t] = parseInt(n), Ln(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (cn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
914
+ return r ? (r[t] = parseInt(n), Pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (fn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
915
915
  }
916
916
  function jt(e, t, n) {
917
917
  let r = X(e, t, !1);
918
- return r ? (r[t] = String(n), Ln(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (cn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
918
+ return r ? (r[t] = String(n), Pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & U.obflag_created && !(e.obflag & U.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (fn(`${Xe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
919
919
  }
920
920
  function $t(e, t) {
921
- if (nt(e)) return cn("gobj NULL or DESTROYED"), null;
921
+ if (nt(e)) return fn("gobj NULL or DESTROYED"), null;
922
922
  if (e.current_state.state_name === t) return !1;
923
923
  let n = te(e.gclass, t);
924
- return n ? (e.last_state = e.current_state, e.current_state = n, !0) : (cn(`${Xe(e)}: state unknown, state ${t}`), !1);
924
+ return n ? (e.last_state = e.current_state, e.current_state = n, !0) : (fn(`${Xe(e)}: state unknown, state ${t}`), !1);
925
925
  }
926
926
  function It(e) {
927
- return Kn(e) ? e.current_state.state_name : (cn("hgobj NULL"), "");
927
+ return Yn(e) ? e.current_state.state_name : (fn("hgobj NULL"), "");
928
928
  }
929
- function At(e, n) {
930
- return nt(e) ? (cn("gobj NULL or DESTROYED"), null) : n instanceof k ? (e.parent && e.parent.mt_child_removed && e.parent.mt_child_removed(e.parent, e), e.parent && (be(e.parent, e), e.parent = null), de(n, e), n.mt_child_added && (E && Tt(E, "trace_creation") && dn(t("👦👦🔵 child_added(%s): %s", He(n), Xe(e))), n.mt_child_added(n, e)), 0) : (cn(`${Xe(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
929
+ function kt(e, n) {
930
+ return nt(e) ? (fn("gobj NULL or DESTROYED"), null) : n instanceof A ? (e.parent && e.parent.mt_child_removed && e.parent.mt_child_removed(e.parent, e), e.parent && (be(e.parent, e), e.parent = null), de(n, e), n.mt_child_added && (E && Tt(E, "trace_creation") && bn(t("👦👦🔵 child_added(%s): %s", He(n), Xe(e))), n.mt_child_added(n, e)), 0) : (fn(`${Xe(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
931
931
  }
932
- function kt(e, t, n) {
933
- if (!Kn(e)) return cn("gobj NULL of bad type"), null;
932
+ function At(e, t, n) {
933
+ if (!Yn(e)) return fn("gobj NULL of bad type"), null;
934
934
  let r = se(e.gclass, t);
935
935
  if (r) return r;
936
936
  if (n) {
@@ -943,11 +943,11 @@ function kt(e, t, n) {
943
943
  return null;
944
944
  }
945
945
  function Lt(e, t, n) {
946
- let r = kt(e, t, !1);
946
+ let r = At(e, t, !1);
947
947
  return !!r && !(n && !(r.event_flag & n));
948
948
  }
949
949
  function Pt(e, t, n) {
950
- let r = kt(e, t, !1);
950
+ let r = At(e, t, !1);
951
951
  return !!r && !(n && !(r.event_flag & n)) && !!(r.event_flag & C.EVF_OUTPUT_EVENT);
952
952
  }
953
953
  function Ut(e, t, n, r) {
@@ -956,28 +956,28 @@ function Ut(e, t, n, r) {
956
956
  }, 10);
957
957
  }
958
958
  function Ct(e, n, r, l) {
959
- if (!(e && e instanceof k)) return cn("gobj dst NULL"), -1;
960
- if (e.obflag & (U.obflag_destroyed | U.obflag_destroying)) return cn("gobj dst DESTROYED"), -1;
959
+ if (!(e && e instanceof A)) return fn("gobj dst NULL"), -1;
960
+ if (e.obflag & (U.obflag_destroyed | U.obflag_destroying)) return fn("gobj dst DESTROYED"), -1;
961
961
  let i = e.current_state;
962
- if (!i) return cn(`${Xe(e)}: current_state NULL`), -1;
962
+ if (!i) return fn(`${Xe(e)}: current_state NULL`), -1;
963
963
  let o = 0;
964
964
  o = E && yt(E, "tracing"), "C_TIMER" === ze(l) && (o = E && yt(E, "trace_timer")), T++;
965
965
  let s = ne(i, n);
966
- if (!s) return e.gclass.gmt.mt_inject_event ? (T--, o && (x(t("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", Xe(e), i.state_name, n || "", l && !l.running ? "!!" : "", Xe(l))), r && o > 1 && In(r) && pn(r)), e.gclass.gmt.mt_inject_event(e, n, r, l)) : (o && x(t("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", ze(e), qe(e), i.state_name, n || "", l && !l.running ? "!!" : "", ze(l), qe(l))), cn(`📛📛 Event NOT DEFINED in state 📛📛: ${Xe(e)}, ${i.state_name}, ${n}`), T--, -1);
966
+ if (!s) return e.gclass.gmt.mt_inject_event ? (T--, o && (x(t("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", Xe(e), i.state_name, n || "", l && !l.running ? "!!" : "", Xe(l))), r && o > 1 && kn(r) && mn(r)), e.gclass.gmt.mt_inject_event(e, n, r, l)) : (o && x(t("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", ze(e), qe(e), i.state_name, n || "", l && !l.running ? "!!" : "", ze(l), qe(l))), fn(`📛📛 Event NOT DEFINED in state 📛📛: ${Xe(e)}, ${i.state_name}, ${n}`), T--, -1);
967
967
  if (o) {
968
968
  if (1 === M) x(t("🔄 %s %s%s %s from %s%s", n || "", e.running ? "" : "!!", Xe(e), i.state_name, l && !l.running ? "!!" : "", Xe(l)));
969
969
  else {
970
970
  let r = "";
971
- s.action && (r = cl(s.action)), x(t("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", ze(e), qe(e), i.state_name, "", n || "", "", r, l && !l.running ? "!!" : "", ze(l), qe(l)));
971
+ s.action && (r = fl(s.action)), x(t("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", ze(e), qe(e), i.state_name, "", n || "", "", r, l && !l.running ? "!!" : "", ze(l), qe(l)));
972
972
  }
973
- r && o > 1 && In(r) && pn(r);
973
+ r && o > 1 && kn(r) && mn(r);
974
974
  }
975
975
  s.next_state && $t(e, s.next_state);
976
976
  let a = -1;
977
977
  try {
978
978
  s.action && (a = s.action(e, n, r, l));
979
979
  } finally {}
980
- return !o || 1 === M || e.obflag & U.obflag_destroyed || x(t("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", ze(e), qe(e), e.current_state.state_name, n || "", Cn(a) ? a : 0)), T--, a;
980
+ return !o || 1 === M || e.obflag & U.obflag_destroyed || x(t("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", ze(e), qe(e), e.current_state.state_name, n || "", Fn(a) ? a : 0)), T--, a;
981
981
  }
982
982
  var Ft = Object.freeze({
983
983
  __hard_subscription__: 1,
@@ -996,22 +996,22 @@ var Ft = Object.freeze({
996
996
  v()
997
997
  ];
998
998
  function Vt(e, t, n, r, l) {
999
- let i = ar(t, r, "__config__", null), o = ar(t, r, "__global__", null), s = ar(t, r, "__local__", null), a = ur(t, r, "__filter__", null), u = !0;
1000
- if (t && t !== sr(null, e, "publisher", null) && (u = !1), l && l !== sr(null, e, "subscriber", null) && (u = !1), n && n !== or(null, e, "event", "") && (u = !1), kn(i) > 0) {
1001
- let t = ar(null, e, "__config__", null);
1002
- kn(t) > 0 && hn(t, i) || (u = !1);
999
+ let i = ur(t, r, "__config__", null), o = ur(t, r, "__global__", null), s = ur(t, r, "__local__", null), a = _r(t, r, "__filter__", null), u = !0;
1000
+ if (t && t !== ar(null, e, "publisher", null) && (u = !1), l && l !== ar(null, e, "subscriber", null) && (u = !1), n && n !== sr(null, e, "event", "") && (u = !1), Ln(i) > 0) {
1001
+ let t = ur(null, e, "__config__", null);
1002
+ Ln(t) > 0 && Tn(t, i) || (u = !1);
1003
1003
  }
1004
- if (kn(o) > 0) {
1005
- let t = ar(null, e, "__global__", null);
1006
- kn(t) > 0 && hn(t, o) || (u = !1);
1004
+ if (Ln(o) > 0) {
1005
+ let t = ur(null, e, "__global__", null);
1006
+ Ln(t) > 0 && Tn(t, o) || (u = !1);
1007
1007
  }
1008
- if (kn(s) > 0) {
1009
- let t = ar(null, e, "__local__", null);
1010
- kn(t) > 0 && hn(t, s) || (u = !1);
1008
+ if (Ln(s) > 0) {
1009
+ let t = ur(null, e, "__local__", null);
1010
+ Ln(t) > 0 && Tn(t, s) || (u = !1);
1011
1011
  }
1012
- if (kn(a) > 0) {
1013
- let t = ur(null, e, "__filter__", null);
1014
- kn(t) > 0 && hn(t, a) || (u = !1);
1012
+ if (Ln(a) > 0) {
1013
+ let t = _r(null, e, "__filter__", null);
1014
+ Ln(t) > 0 && Tn(t, a) || (u = !1);
1015
1015
  }
1016
1016
  return u;
1017
1017
  }
@@ -1019,7 +1019,7 @@ function Wt(e, t, n, r, l) {
1019
1019
  let i = [];
1020
1020
  for (let o = 0; o < e.length; o++) {
1021
1021
  let s = e[o];
1022
- Vt(s, t, n, r, l) && Dn(i, s);
1022
+ Vt(s, t, n, r, l) && Rn(i, s);
1023
1023
  }
1024
1024
  return i;
1025
1025
  }
@@ -1028,15 +1028,15 @@ function Mt(e, t, n, r, l) {
1028
1028
  return -1;
1029
1029
  }
1030
1030
  function Kt(e, n, r, l) {
1031
- let i = sr(e, n, "publisher", null, Zt.KW_REQUIRED), o = sr(e, n, "subscriber", null, Zt.KW_REQUIRED), s = or(e, n, "event", "", Zt.KW_REQUIRED);
1032
- if (!!(lr(e, n, "subs_flag", null, Zt.KW_REQUIRED) & Ft.__hard_subscription__) && !r) return -1;
1033
- E && Tt(E, "trace_subscriptions") && (x(t("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", s || "", Xe(i), Xe(o))), pn(n)), i.obflag & U.obflag_destroyed || l || i.gclass.gmt.mt_subscription_deleted && i.gclass.gmt.mt_subscription_deleted(i, n);
1031
+ let i = ar(e, n, "publisher", null, Zt.KW_REQUIRED), o = ar(e, n, "subscriber", null, Zt.KW_REQUIRED), s = sr(e, n, "event", "", Zt.KW_REQUIRED);
1032
+ if (!!(ir(e, n, "subs_flag", null, Zt.KW_REQUIRED) & Ft.__hard_subscription__) && !r) return -1;
1033
+ E && Tt(E, "trace_subscriptions") && (x(t("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", s || "", Xe(i), Xe(o))), mn(n)), i.obflag & U.obflag_destroyed || l || i.gclass.gmt.mt_subscription_deleted && i.gclass.gmt.mt_subscription_deleted(i, n);
1034
1034
  let a = Mt(i.dl_subscriptions, i, s, n, o);
1035
- return a >= 0 ? jn(i.dl_subscriptions, a) : (cn(`${Xe(e)}: subscription in publisher not found`), pn(n)), a = Mt(o.dl_subscribings, i, s, n, o), a >= 0 ? jn(o.dl_subscribings, a) : (cn(`${Xe(e)}: subscription in subscriber not found`), pn(n)), 0;
1035
+ return a >= 0 ? $n(i.dl_subscriptions, a) : (fn(`${Xe(e)}: subscription in publisher not found`), mn(n)), a = Mt(o.dl_subscribings, i, s, n, o), a >= 0 ? $n(o.dl_subscribings, a) : (fn(`${Xe(e)}: subscription in subscriber not found`), mn(n)), 0;
1036
1036
  }
1037
1037
  function Yt(e, n, r, l) {
1038
- if (null == r && (r = {}), !e) return cn(`publisher NULL: ev ${n}`), 0;
1039
- if (!l) return cn(`subscriber NULL: ev ${n}`), 0;
1038
+ if (null == r && (r = {}), !e) return fn(`publisher NULL: ev ${n}`), 0;
1039
+ if (!l) return fn(`subscriber NULL: ev ${n}`), 0;
1040
1040
  const i = new Set([
1041
1041
  "__config__",
1042
1042
  "__global__",
@@ -1045,37 +1045,37 @@ function Yt(e, n, r, l) {
1045
1045
  "__service__"
1046
1046
  ]);
1047
1047
  if (Object.keys(r).forEach((t) => {
1048
- i.has(t) || cn(`${Xe(e)}: key ignored in subscription (key: ${t}, event: ${n})`);
1049
- }), Yn(n)) n = "";
1050
- else if (!(Pt(e, n, C.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & L.gcflag_no_check_output_events)) return cn(`event NOT in output event list: ${Xe(e)}, ${n}`), 0;
1048
+ i.has(t) || fn(`${Xe(e)}: key ignored in subscription (key: ${t}, event: ${n})`);
1049
+ }), xn(n)) n = "";
1050
+ else if (!(Pt(e, n, C.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & L.gcflag_no_check_output_events)) return fn(`event NOT in output event list: ${Xe(e)}, ${n}`), 0;
1051
1051
  let o = Wt(e.dl_subscriptions, e, n, r, l);
1052
- An(o) > 0 && (cn(`${Xe(e)}: ${An(o)} subscription(s) REPEATED, will be deleted and override`), pn(o, "subscription REPEATED"), Bt(e, o, !1));
1052
+ An(o) > 0 && (fn(`${Xe(e)}: ${An(o)} subscription(s) REPEATED, will be deleted and override`), mn(o, "subscription REPEATED"), Bt(e, o, !1));
1053
1053
  let s = function(e, t, n, r) {
1054
1054
  let l = J(e, Gt);
1055
- wn(l, "event", t), wn(l, "subscriber", r), wn(l, "publisher", e);
1055
+ Dn(l, "event", t), Dn(l, "subscriber", r), Dn(l, "publisher", e);
1056
1056
  let i = 0;
1057
1057
  if (n) {
1058
- let t = ar(e, n, "__config__", null), r = ar(e, n, "__global__", null), o = ar(e, n, "__local__", null), s = ur(e, n, "__filter__", null), a = or(e, n, "__service__", "");
1059
- if (kn(r) > 0 && wn(l, "__global__", mn(r)), kn(t) > 0) {
1060
- let n = mn(t);
1061
- if (wn(l, "__config__", n), er(n, "__hard_subscription__")) {
1062
- let t = rr(e, n, "__hard_subscription__", !1);
1063
- vn(n, "__hard_subscription__"), t && (i |= Ft.__hard_subscription__);
1058
+ let t = ur(e, n, "__config__", null), r = ur(e, n, "__global__", null), o = ur(e, n, "__local__", null), s = _r(e, n, "__filter__", null), a = sr(e, n, "__service__", "");
1059
+ if (Ln(r) > 0 && Dn(l, "__global__", En(r)), Ln(t) > 0) {
1060
+ let n = En(t);
1061
+ if (Dn(l, "__config__", n), tr(n, "__hard_subscription__")) {
1062
+ let t = lr(e, n, "__hard_subscription__", !1);
1063
+ Nn(n, "__hard_subscription__"), t && (i |= Ft.__hard_subscription__);
1064
1064
  }
1065
- if (er(n, "__own_event__")) {
1066
- let t = rr(e, n, "__own_event__", !1);
1067
- vn(n, "__own_event__"), t && (i |= Ft.__own_event__);
1065
+ if (tr(n, "__own_event__")) {
1066
+ let t = lr(e, n, "__own_event__", !1);
1067
+ Nn(n, "__own_event__"), t && (i |= Ft.__own_event__);
1068
1068
  }
1069
1069
  }
1070
- kn(o) > 0 && wn(l, "__local__", mn(o)), kn(s) > 0 && wn(l, "__filter__", mn(s)), Yn(a) || wn(l, "__service__", a);
1070
+ Ln(o) > 0 && Dn(l, "__local__", En(o)), Ln(s) > 0 && Dn(l, "__filter__", En(s)), xn(a) || Dn(l, "__service__", a);
1071
1071
  }
1072
- return wn(l, "subs_flag", i), l;
1072
+ return Dn(l, "subs_flag", i), l;
1073
1073
  }(e, n, r, l);
1074
- return s ? (Dn(e.dl_subscriptions, s), Dn(l.dl_subscribings, s), E && Tt(E, "trace_subscriptions") && (x(t("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", n || "", Xe(e), Xe(l))), r && pn(r)), e.gclass.gmt.mt_subscription_added && e.gclass.gmt.mt_subscription_added(e, s) < 0 && (Kt(e, s, !0, !0), s = 0), s) : (cn(`${Xe(e)}: _create_subscription() FAILED`), 0);
1074
+ return s ? (Rn(e.dl_subscriptions, s), Rn(l.dl_subscribings, s), E && Tt(E, "trace_subscriptions") && (x(t("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", n || "", Xe(e), Xe(l))), r && mn(r)), e.gclass.gmt.mt_subscription_added && e.gclass.gmt.mt_subscription_added(e, s) < 0 && (Kt(e, s, !0, !0), s = 0), s) : (fn(`${Xe(e)}: _create_subscription() FAILED`), 0);
1075
1075
  }
1076
1076
  function xt(e, t, n, r) {
1077
- if (null == n && (n = {}), !e) return cn(`publisher NULL: ev ${t}`), 0;
1078
- if (!r) return cn(`subscriber NULL: ev ${t}`), 0;
1077
+ if (null == n && (n = {}), !e) return fn(`publisher NULL: ev ${t}`), 0;
1078
+ if (!r) return fn(`subscriber NULL: ev ${t}`), 0;
1079
1079
  const l = new Set([
1080
1080
  "__config__",
1081
1081
  "__global__",
@@ -1084,15 +1084,15 @@ function xt(e, t, n, r) {
1084
1084
  "__service__"
1085
1085
  ]);
1086
1086
  if (Object.keys(n).forEach((n) => {
1087
- l.has(n) || cn(`${Xe(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
1088
- }), Yn(t)) t = "";
1089
- else if (!(Pt(e, t, C.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & L.gcflag_no_check_output_events)) return cn(`event NOT in output event list: ${Xe(e)}, ev ${t}`), 0;
1087
+ l.has(n) || fn(`${Xe(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
1088
+ }), xn(t)) t = "";
1089
+ else if (!(Pt(e, t, C.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & L.gcflag_no_check_output_events)) return fn(`event NOT in output event list: ${Xe(e)}, ev ${t}`), 0;
1090
1090
  let i = Wt(e.dl_subscriptions, e, t, n, r), o = 0;
1091
1091
  for (let t = 0; t < i.length; t++) {
1092
1092
  let n = i[t];
1093
1093
  Kt(e, n, !1, !1), o++;
1094
1094
  }
1095
- return o || (fn(`${Xe(e)}: No subscription found`), pn(n, "No subscription found")), 0;
1095
+ return o || (gn(`${Xe(e)}: No subscription found`), mn(n, "No subscription found")), 0;
1096
1096
  }
1097
1097
  function Bt(e, t, n) {
1098
1098
  let r = [...t];
@@ -1105,13 +1105,13 @@ function Jt(e, t, n, r) {
1105
1105
  function Qt(e) {
1106
1106
  let t = Jt(e, null, null, null);
1107
1107
  for (let n = 0; n < t.length; n++) {
1108
- let r = t[n], l = sr(e, r, "publisher", null, Zt.KW_REQUIRED), i = sr(e, r, "subscriber", null, Zt.KW_REQUIRED);
1109
- wn(r, "s_event", or(e, r, "event", "", Zt.KW_REQUIRED)), wn(r, "s_publisher", Xe(l)), wn(r, "s_subscriber", Xe(i));
1108
+ let r = t[n], l = ar(e, r, "publisher", null, Zt.KW_REQUIRED), i = ar(e, r, "subscriber", null, Zt.KW_REQUIRED);
1109
+ Dn(r, "s_event", sr(e, r, "event", "", Zt.KW_REQUIRED)), Dn(r, "s_publisher", Xe(l)), Dn(r, "s_subscriber", Xe(i));
1110
1110
  }
1111
1111
  let n = qt(e, 0, null, 0);
1112
1112
  for (let t = 0; t < n.length; t++) {
1113
- let r = n[t], l = sr(e, r, "publisher", null, Zt.KW_REQUIRED), i = sr(e, r, "subscriber", null, Zt.KW_REQUIRED);
1114
- wn(r, "s_event", or(e, r, "event", "", Zt.KW_REQUIRED)), wn(r, "s_publisher", Xe(l)), wn(r, "s_subscriber", Xe(i));
1113
+ let r = n[t], l = ar(e, r, "publisher", null, Zt.KW_REQUIRED), i = ar(e, r, "subscriber", null, Zt.KW_REQUIRED);
1114
+ Dn(r, "s_event", sr(e, r, "event", "", Zt.KW_REQUIRED)), Dn(r, "s_publisher", Xe(l)), Dn(r, "s_subscriber", Xe(i));
1115
1115
  }
1116
1116
  return {
1117
1117
  subscriptions: t,
@@ -1124,12 +1124,12 @@ function qt(e, t, n, r) {
1124
1124
  return Wt(e.dl_subscribings, r, t, n, e);
1125
1125
  }
1126
1126
  function zt(e, n, r) {
1127
- if (Ln(r) || (r = {}), !e || e.obflag & (U.obflag_destroyed | U.obflag_destroying)) return cn("gobj NULL or DESTROYED"), -1;
1128
- if (Yn(n)) return cn(`${Xe(e)}: event EMPTY`), -1;
1129
- let l = kt(e, n, !0);
1130
- if (!(l && l.event_flag & (C.EVF_SYSTEM_EVENT | C.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & L.gcflag_no_check_output_events)) return cn(`event NOT in output event list: ${Xe(e)}, ev ${n}`), -1;
1127
+ if (Pn(r) || (r = {}), !e || e.obflag & (U.obflag_destroyed | U.obflag_destroying)) return fn("gobj NULL or DESTROYED"), -1;
1128
+ if (xn(n)) return fn(`${Xe(e)}: event EMPTY`), -1;
1129
+ let l = At(e, n, !0);
1130
+ if (!(l && l.event_flag & (C.EVF_SYSTEM_EVENT | C.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & L.gcflag_no_check_output_events)) return fn(`event NOT in output event list: ${Xe(e)}, ev ${n}`), -1;
1131
1131
  let i = E && Tt(E, "trace_subscriptions");
1132
- if (i && (x(t("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", ze(e), qe(e), e.current_state.state_name, "", n || "", "")), pn(r)), e.gclass.gmt.mt_publish_event) {
1132
+ if (i && (x(t("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", ze(e), qe(e), e.current_state.state_name, "", n || "", "")), mn(r)), e.gclass.gmt.mt_publish_event) {
1133
1133
  let t = e.gclass.gmt.mt_publish_event(e, n, r);
1134
1134
  if (t <= 0) return t;
1135
1135
  }
@@ -1141,17 +1141,17 @@ function zt(e, n, r) {
1141
1141
  if (t < 0) break;
1142
1142
  if (0 === t) continue;
1143
1143
  }
1144
- let _ = sr(e, u, "subscriber", null, Zt.KW_REQUIRED);
1144
+ let _ = ar(e, u, "subscriber", null, Zt.KW_REQUIRED);
1145
1145
  if (!_ || nt(_)) continue;
1146
- let c = lr(e, u, "subs_flag", 0, Zt.KW_REQUIRED), f = or(e, u, "event", "", Zt.KW_REQUIRED);
1147
- if (Yn(f) || 0 === Qn(f, n)) {
1148
- ar(e, u, "__config__", null, 0);
1149
- let l = ar(e, u, "__global__", null, 0), o = ar(e, u, "__local__", null, 0), f = ur(e, u, "__filter__", null, 0), g = r, d = 1;
1150
- if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, n, g, _) : kn(f) > 0 && (d = dr(g, f), i && (x(t("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", d ? "👍" : "👎", n || "", Xe(_), Xe(e))), pn(f))), d < 0) break;
1146
+ let c = ir(e, u, "subs_flag", 0, Zt.KW_REQUIRED), f = sr(e, u, "event", "", Zt.KW_REQUIRED);
1147
+ if (xn(f) || 0 === qn(f, n)) {
1148
+ ur(e, u, "__config__", null, 0);
1149
+ let l = ur(e, u, "__global__", null, 0), o = ur(e, u, "__local__", null, 0), f = _r(e, u, "__filter__", null, 0), g = r, d = 1;
1150
+ if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, n, g, _) : Ln(f) > 0 && (d = br(g, f), i && (x(t("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", d ? "👍" : "👎", n || "", Xe(_), Xe(e))), mn(f))), d < 0) break;
1151
1151
  if (0 === d) continue;
1152
- let b = kt(_, n, !0);
1152
+ let b = At(_, n, !0);
1153
1153
  if (b && b.event_flag & C.EVF_SYSTEM_EVENT && !Lt(_, b.event_name, 0)) continue;
1154
- o && Zn(g, o), l && Tn(g, l), i && (x(t("🔝🔄 mach(%s%s), st: %s, ev: %s, from(%s%s)", _.running ? "" : "!!", Xe(_), It(_), n || "", e && !e.running ? "!!" : "", Xe(e))), pn(g));
1154
+ o && er(g, o), l && yn(g, l), i && (x(t("🔝🔄 mach(%s%s), st: %s, ev: %s, from(%s%s)", _.running ? "" : "!!", Xe(_), It(_), n || "", e && !e.running ? "!!" : "", Xe(e))), mn(g));
1155
1155
  let p = Ct(_, n, g, e);
1156
1156
  if (p < 0 && c & Ft.__own_event__) {
1157
1157
  s = -1;
@@ -1160,15 +1160,15 @@ function zt(e, n, r) {
1160
1160
  if (a += p, s++, nt(e)) break;
1161
1161
  }
1162
1162
  }
1163
- return s || l && l.event_flag & C.EVF_NO_WARN_SUBS || fn(`${Xe(e)}: Publish event WITHOUT subscribers, ev ${n}`), a;
1163
+ return s || l && l.event_flag & C.EVF_NO_WARN_SUBS || gn(`${Xe(e)}: Publish event WITHOUT subscribers, ev ${n}`), a;
1164
1164
  }
1165
1165
  function Xt(e, n, r, l) {
1166
- if (nt(e)) return cn("gobj NULL or DESTROYED"), -1;
1166
+ if (nt(e)) return fn("gobj NULL or DESTROYED"), -1;
1167
1167
  let o = E && yt(E, "tracing");
1168
- return o && (x(t("🌀🌀 mach(%s%s), cmd: %s, src: %s", We(e) ? "" : "!!", Xe(e), n, Xe(l))), o > 1 && pn(r)), e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, n, r, l) : e.gclass.command_table ? g ? g(e, n, r, l) : i(0, -1, t("%s: global command parser not available", Xe(e)), 0, 0) : i(0, -1, t("%s: command table not available", Xe(e)), 0, 0);
1168
+ return o && (x(t("🌀🌀 mach(%s%s), cmd: %s, src: %s", We(e) ? "" : "!!", Xe(e), n, Xe(l))), o > 1 && mn(r)), e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, n, r, l) : e.gclass.command_table ? g ? g(e, n, r, l) : i(0, -1, t("%s: global command parser not available", Xe(e)), 0, 0) : i(0, -1, t("%s: command table not available", Xe(e)), 0, 0);
1169
1169
  }
1170
1170
  function Ht(e, n, r, l) {
1171
- return nt(e) ? (cn("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, n, r, l) : d ? d(e, n, r, l) : s(0, -1, t("%s, stats parser not available", Xe(e)), 0, 0);
1171
+ return nt(e) ? (fn("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, n, r, l) : d ? d(e, n, r, l) : s(0, -1, t("%s, stats parser not available", Xe(e)), 0, 0);
1172
1172
  }
1173
1173
  var Zt = Object.freeze({
1174
1174
  KW_REQUIRED: 1,
@@ -1192,15 +1192,21 @@ var Zt = Object.freeze({
1192
1192
  function sn(e) {
1193
1193
  on = "function" == typeof e ? e : null;
1194
1194
  }
1195
- function an(e, t, n) {
1196
- if (on) try {
1197
- on(e, t, n);
1198
- } catch (e) {}
1195
+ var an = !1;
1196
+ function un(e, t, n) {
1197
+ if (on && !an) {
1198
+ an = !0;
1199
+ try {
1200
+ on(e, t, n);
1201
+ } catch (e) {} finally {
1202
+ an = !1;
1203
+ }
1204
+ }
1199
1205
  }
1200
- function un(e) {
1206
+ function _n(e) {
1201
1207
  e ? (tn = e, nn = e) : (tn = en.error, nn = en.warn);
1202
1208
  }
1203
- function _n(e) {
1209
+ function cn(e) {
1204
1210
  const t = Array.prototype.slice.call(arguments);
1205
1211
  let n = "";
1206
1212
  if ("string" == typeof e) {
@@ -1222,33 +1228,33 @@ function _n(e) {
1222
1228
  } else n = t.map((e) => "object" == typeof e ? JSON.stringify(e) : String(e)).join(" ");
1223
1229
  return n;
1224
1230
  }
1225
- function cn(e) {
1226
- let t = _n(e), n = ol();
1227
- tn && (tn === window.console.error ? tn("%c" + n + " ERROR: " + String(t), "color:red") : (window.console.error("%c" + n + " ERROR: " + String(t), "color:red"), tn(`${n} ERROR: ${String(t)}`))), an("error", t, n);
1228
- }
1229
1231
  function fn(e) {
1230
- let t = _n(e), n = ol();
1231
- nn && (nn === window.console.warn ? nn("%c" + n + " WARNING: " + String(t), "color:yellow") : (window.console.warn("%c" + n + " WARNING: " + String(t), "color:yellow"), nn(`${n} WARNING: ${String(t)}`))), an("warning", t, n);
1232
+ let t = cn(e), n = sl();
1233
+ tn && (tn === window.console.error ? tn("%c" + n + " ERROR: " + String(t), "color:red") : (window.console.error("%c" + n + " ERROR: " + String(t), "color:red"), tn(`${n} ERROR: ${String(t)}`))), un("error", t, n);
1232
1234
  }
1233
1235
  function gn(e) {
1234
- let t = _n(e), n = ol();
1235
- rn && rn("%c" + n + " INFO: " + String(t), "color:cyan"), an("info", t, n);
1236
+ let t = cn(e), n = sl();
1237
+ nn && (nn === window.console.warn ? nn("%c" + n + " WARNING: " + String(t), "color:yellow") : (window.console.warn("%c" + n + " WARNING: " + String(t), "color:yellow"), nn(`${n} WARNING: ${String(t)}`))), un("warning", t, n);
1236
1238
  }
1237
1239
  function dn(e) {
1238
- let t = _n(e), n = ol();
1239
- ln && ln("%c" + n + " DEBUG: " + String(t), "color:silver"), an("debug", t, n);
1240
+ let t = cn(e), n = sl();
1241
+ rn && rn("%c" + n + " INFO: " + String(t), "color:cyan"), un("info", t, n);
1240
1242
  }
1241
1243
  function bn(e) {
1242
- let t = _n(e), n = ol();
1243
- ln && ln("%c" + n + " MSG: " + String(t), "color:cyan"), an("msg", t, n);
1244
+ let t = cn(e), n = sl();
1245
+ ln && ln("%c" + n + " DEBUG: " + String(t), "color:silver"), un("debug", t, n);
1246
+ }
1247
+ function pn(e) {
1248
+ let t = cn(e), n = sl();
1249
+ ln && ln("%c" + n + " MSG: " + String(t), "color:cyan"), un("msg", t, n);
1244
1250
  }
1245
- function pn(e, t) {
1246
- t && window.console.warn("=====> " + t), window.console.dir(e), an("json", e, ol());
1251
+ function mn(e, t) {
1252
+ t && window.console.warn("=====> " + t), window.console.dir(e), un("json", e, sl());
1247
1253
  }
1248
- function mn(e) {
1254
+ function En(e) {
1249
1255
  return structuredClone(e);
1250
1256
  }
1251
- function En(...e) {
1257
+ function hn(...e) {
1252
1258
  const t = {};
1253
1259
  for (const n of e) {
1254
1260
  const e = structuredClone(n);
@@ -1256,14 +1262,14 @@ function En(...e) {
1256
1262
  }
1257
1263
  return t;
1258
1264
  }
1259
- function hn(e, t) {
1265
+ function Tn(e, t) {
1260
1266
  if (e === t) return !0;
1261
1267
  if (null === e || null === t) return e === t;
1262
1268
  if (typeof e != typeof t) return !1;
1263
1269
  if (Array.isArray(e) !== Array.isArray(t)) return !1;
1264
1270
  if (Array.isArray(e)) {
1265
1271
  if (e.length !== t.length) return !1;
1266
- for (let n = 0; n < e.length; n++) if (!hn(e[n], t[n])) return !1;
1272
+ for (let n = 0; n < e.length; n++) if (!Tn(e[n], t[n])) return !1;
1267
1273
  return !0;
1268
1274
  }
1269
1275
  if ("object" == typeof e) {
@@ -1271,269 +1277,269 @@ function hn(e, t) {
1271
1277
  if (n.length !== r.length) return !1;
1272
1278
  for (let l = 0; l < n.length; l++) {
1273
1279
  if (n[l] !== r[l]) return !1;
1274
- if (!hn(e[n[l]], t[r[l]])) return !1;
1280
+ if (!Tn(e[n[l]], t[r[l]])) return !1;
1275
1281
  }
1276
1282
  return !0;
1277
1283
  }
1278
1284
  return e === t;
1279
1285
  }
1280
- function Tn(e, t) {
1286
+ function yn(e, t) {
1281
1287
  if (!t) return e;
1282
1288
  for (let n of Object.keys(t)) e[n] = t[n];
1283
1289
  return e;
1284
1290
  }
1285
- function yn(e, t) {
1291
+ function Sn(e, t) {
1286
1292
  if (!t) return e;
1287
1293
  for (let n in t) t.hasOwnProperty(n) && e.hasOwnProperty(n) && (e[n] = t[n]);
1288
1294
  return e;
1289
1295
  }
1290
- function Sn(e, t) {
1296
+ function On(e, t) {
1291
1297
  if (!t) return e;
1292
1298
  for (let n in t) t.hasOwnProperty(n) && !e.hasOwnProperty(n) && (e[n] = t[n]);
1293
1299
  return e;
1294
1300
  }
1295
- function On(e, t) {
1301
+ function vn(e, t) {
1296
1302
  if (e && e.hasOwnProperty(t)) return e[t];
1297
1303
  }
1298
- function vn(e, t) {
1304
+ function Nn(e, t) {
1299
1305
  e && e.hasOwnProperty(t) && delete e[t];
1300
1306
  }
1301
- function Nn(e, t, n) {
1302
- e[t] = n;
1303
- }
1304
1307
  function wn(e, t, n) {
1305
1308
  e[t] = n;
1306
1309
  }
1307
- function Dn(e, t) {
1308
- e.push(t);
1310
+ function Dn(e, t, n) {
1311
+ e[t] = n;
1309
1312
  }
1310
1313
  function Rn(e, t) {
1311
1314
  e.push(t);
1312
1315
  }
1313
1316
  function jn(e, t) {
1314
- e.splice(t, 1);
1317
+ e.push(t);
1315
1318
  }
1316
1319
  function $n(e, t) {
1320
+ e.splice(t, 1);
1321
+ }
1322
+ function In(e, t) {
1317
1323
  return t ? (Array.prototype.push.apply(e, t), e) : e;
1318
1324
  }
1319
- function In(e) {
1320
- return Ln(e) ? Object.keys(e).length : 0;
1325
+ function kn(e) {
1326
+ return Pn(e) ? Object.keys(e).length : 0;
1321
1327
  }
1322
1328
  function An(e) {
1323
- return Pn(e) ? e.length : 0;
1324
- }
1325
- function kn(e) {
1326
- return Ln(e) ? Object.keys(e).length : Pn(e) ? e.length : Un(e) && e.length > 0 ? 1 : 0;
1329
+ return Un(e) ? e.length : 0;
1327
1330
  }
1328
1331
  function Ln(e) {
1329
- return null !== e && "object" == typeof e && !Array.isArray(e);
1332
+ return Pn(e) ? Object.keys(e).length : Un(e) ? e.length : Cn(e) && e.length > 0 ? 1 : 0;
1330
1333
  }
1331
1334
  function Pn(e) {
1332
- return Array.isArray(e);
1335
+ return null !== e && "object" == typeof e && !Array.isArray(e);
1333
1336
  }
1334
1337
  function Un(e) {
1335
- return "string" == typeof e;
1338
+ return Array.isArray(e);
1336
1339
  }
1337
1340
  function Cn(e) {
1338
- return "number" == typeof e && Number.isFinite(e);
1341
+ return "string" == typeof e;
1339
1342
  }
1340
1343
  function Fn(e) {
1341
- return "boolean" == typeof e;
1344
+ return "number" == typeof e && Number.isFinite(e);
1342
1345
  }
1343
1346
  function Gn(e) {
1344
- return null == e;
1347
+ return "boolean" == typeof e;
1345
1348
  }
1346
1349
  function Vn(e) {
1347
- if (Cn(e)) return !0;
1348
- if (!Un(e)) return !1;
1349
- const t = Number(e);
1350
- return !isNaN(t) && "" !== e.trim() && !isNaN(t);
1350
+ return null == e;
1351
1351
  }
1352
1352
  function Wn(e) {
1353
- return e instanceof Date && !isNaN(e);
1353
+ if (Fn(e)) return !0;
1354
+ if (!Cn(e)) return !1;
1355
+ const t = Number(e);
1356
+ return !isNaN(t) && "" !== e.trim() && !isNaN(t);
1354
1357
  }
1355
1358
  function Mn(e) {
1356
- return "function" == typeof e;
1359
+ return e instanceof Date && !isNaN(e);
1357
1360
  }
1358
1361
  function Kn(e) {
1359
- return e instanceof k;
1362
+ return "function" == typeof e;
1360
1363
  }
1361
1364
  function Yn(e) {
1362
- return !Un(e) || 0 === e.length;
1365
+ return e instanceof A;
1363
1366
  }
1364
1367
  function xn(e) {
1365
- return Cn(e) ? Boolean(e) : /^\s*(true|1|on)\s*$/i.test(e);
1368
+ return !Cn(e) || 0 === e.length;
1369
+ }
1370
+ function Bn(e) {
1371
+ return Fn(e) ? Boolean(e) : /^\s*(true|1|on)\s*$/i.test(e);
1366
1372
  }
1367
- function Bn(e, t, n) {
1373
+ function Jn(e, t, n) {
1368
1374
  var r = (e + "").substring(0, n), l = (t + "").substring(0, n);
1369
1375
  return r === l ? 0 : r > l ? 1 : -1;
1370
1376
  }
1371
- function Jn(e, t) {
1377
+ function Qn(e, t) {
1372
1378
  return e === t ? 0 : e > t ? 1 : -1;
1373
1379
  }
1374
- function Qn(e, t) {
1380
+ function qn(e, t) {
1375
1381
  let n = e.toLowerCase(), r = t.toLowerCase();
1376
1382
  return n === r ? 0 : n > r ? 1 : -1;
1377
1383
  }
1378
- function qn(e, t) {
1379
- if (Ln(e) || Ln(t) || Pn(e) || Pn(t)) return 0;
1380
- if (Cn(e) || Cn(t)) {
1384
+ function zn(e, t) {
1385
+ if (Pn(e) || Pn(t) || Un(e) || Un(t)) return 0;
1386
+ if (Fn(e) || Fn(t)) {
1381
1387
  let n = Number(e), r = Number(t);
1382
1388
  return n > r ? 1 : n < r ? -1 : 0;
1383
1389
  }
1384
- if (Fn(e) || Fn(t)) {
1390
+ if (Gn(e) || Gn(t)) {
1385
1391
  let n = Number(e), r = Number(t);
1386
1392
  return n > r ? 1 : n < r ? -1 : 0;
1387
1393
  }
1388
- return Jn(String(e), String(t));
1394
+ return Qn(String(e), String(t));
1389
1395
  }
1390
- function zn(e, t, n) {
1396
+ function Xn(e, t, n) {
1391
1397
  var r;
1392
1398
  return -1 !== (r = (e += "").indexOf(t)) && (n ? e.substring(0, r) : e.slice(r));
1393
1399
  }
1394
- function Xn(e) {
1395
- if (!Un(e)) return !1;
1400
+ function Hn(e) {
1401
+ if (!Cn(e)) return !1;
1396
1402
  let t;
1397
1403
  for (t = 0; t < e.length && "_" === e[t] && !(t > 2); t++);
1398
1404
  return 2 === t;
1399
1405
  }
1400
- function Hn(e) {
1401
- if (!Un(e)) return !1;
1406
+ function Zn(e) {
1407
+ if (!Cn(e)) return !1;
1402
1408
  let t;
1403
1409
  for (t = 0; t < e.length && "_" === e[t] && !(t > 2); t++);
1404
1410
  return 1 === t;
1405
1411
  }
1406
- function Zn(e, t) {
1407
- if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t) Zn(e, n);
1412
+ function er(e, t) {
1413
+ if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t) er(e, n);
1408
1414
  else "string" == typeof t && delete e[t];
1409
1415
  else for (const n of Object.keys(t)) delete e[n];
1410
1416
  }
1411
- function er(e, t) {
1417
+ function tr(e, t) {
1412
1418
  return !(!(t in e) || !e.hasOwnProperty(t));
1413
1419
  }
1414
- function tr(e, t, n, r) {
1415
- if (e && !Kn(e) && cn("GObj bad instanceof"), !Ln(t) && !Pn(t)) return cn(`${Xe(e)}: kw must be list or dict`), 0;
1416
- if (!Un(n)) return cn(`${Xe(e)}: path must be a string: ${String(n)}`), 0;
1420
+ function nr(e, t, n, r) {
1421
+ if (e && !Yn(e) && fn("GObj bad instanceof"), !Pn(t) && !Un(t)) return fn(`${Xe(e)}: kw must be list or dict`), 0;
1422
+ if (!Cn(n)) return fn(`${Xe(e)}: path must be a string: ${String(n)}`), 0;
1417
1423
  let l = n.split("`");
1418
1424
  if (l.length <= 1) return t[n];
1419
1425
  let i = l.length;
1420
- for (let o = 0; o < i; o++) if (void 0 === (t = t[l[o]])) return void (r && cn(`${Xe(e)}: path not found: ${String(n)}`));
1426
+ for (let o = 0; o < i; o++) if (void 0 === (t = t[l[o]])) return void (r && fn(`${Xe(e)}: path not found: ${String(n)}`));
1421
1427
  return t;
1422
1428
  }
1423
- function nr(e, t, n) {
1424
- e && !Kn(e) && cn("GObj bad instanceof");
1429
+ function rr(e, t, n) {
1430
+ e && !Yn(e) && fn("GObj bad instanceof");
1425
1431
  let [r, l] = function(e, t) {
1426
1432
  let n = e.lastIndexOf(t);
1427
1433
  return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
1428
1434
  }(n, "`");
1429
- return Yn(l) ? vn(t, n) : vn(tr(e, t, r, !0), l), 0;
1435
+ return xn(l) ? Nn(t, n) : Nn(nr(e, t, r, !0), l), 0;
1430
1436
  }
1431
- function rr(e, t, n, r, l) {
1432
- e && !Kn(e) && cn("GObj bad instanceof");
1433
- let i = tr(e, t, n, !1);
1437
+ function lr(e, t, n, r, l) {
1438
+ e && !Yn(e) && fn("GObj bad instanceof");
1439
+ let i = nr(e, t, n, !1);
1434
1440
  const o = l && l & Zt.KW_REQUIRED, s = l && l & Zt.KW_CREATE, a = l && l & Zt.KW_EXTRACT;
1435
1441
  if (void 0 === i) {
1436
1442
  if (s) {
1437
1443
  let l = Boolean(r);
1438
- return cr(e, t, n, l), l;
1444
+ return fr(e, t, n, l), l;
1439
1445
  }
1440
- return o && (cn(`path not found: '${n}'`), pn(t)), Boolean(r);
1446
+ return o && (fn(`path not found: '${n}'`), mn(t)), Boolean(r);
1441
1447
  }
1442
- return a && nr(e, t, n), Boolean(i);
1448
+ return a && rr(e, t, n), Boolean(i);
1443
1449
  }
1444
- function lr(e, t, n, r, l) {
1445
- e && !Kn(e) && cn("GObj bad instanceof");
1446
- let i = tr(e, t, n, !1);
1450
+ function ir(e, t, n, r, l) {
1451
+ e && !Yn(e) && fn("GObj bad instanceof");
1452
+ let i = nr(e, t, n, !1);
1447
1453
  const o = l && l & Zt.KW_REQUIRED, s = l && l & Zt.KW_CREATE, a = l && l & Zt.KW_EXTRACT;
1448
1454
  if (void 0 === i) {
1449
1455
  if (s) {
1450
1456
  let l = parseInt(r);
1451
- return cr(e, t, n, l), l;
1457
+ return fr(e, t, n, l), l;
1452
1458
  }
1453
- return o && (cn(`path not found: '${n}'`), pn(t)), parseInt(r);
1459
+ return o && (fn(`path not found: '${n}'`), mn(t)), parseInt(r);
1454
1460
  }
1455
- return a && nr(e, t, n), Cn(i) ? parseInt(i) : (o && (cn(`path value MUST BE a number: ${n}`), bn(t)), parseInt(r));
1461
+ return a && rr(e, t, n), Fn(i) ? parseInt(i) : (o && (fn(`path value MUST BE a number: ${n}`), pn(t)), parseInt(r));
1456
1462
  }
1457
- function ir(e, t, n, r, l) {
1458
- e && !Kn(e) && cn("GObj bad instanceof");
1459
- let i = tr(e, t, n, !1);
1463
+ function or(e, t, n, r, l) {
1464
+ e && !Yn(e) && fn("GObj bad instanceof");
1465
+ let i = nr(e, t, n, !1);
1460
1466
  const o = l && l & Zt.KW_REQUIRED, s = l && l & Zt.KW_CREATE, a = l && l & Zt.KW_EXTRACT;
1461
1467
  if (void 0 === i) {
1462
1468
  if (s) {
1463
1469
  let l = Number(r);
1464
- return cr(e, t, n, l), l;
1470
+ return fr(e, t, n, l), l;
1465
1471
  }
1466
- return o && (cn(`path not found: '${n}'`), pn(t)), Number(r);
1472
+ return o && (fn(`path not found: '${n}'`), mn(t)), Number(r);
1467
1473
  }
1468
- return a && nr(e, t, n), Cn(i) ? Number(i) : (o && (cn(`path value MUST BE a number: ${n}`), bn(t)), Number(r));
1474
+ return a && rr(e, t, n), Fn(i) ? Number(i) : (o && (fn(`path value MUST BE a number: ${n}`), pn(t)), Number(r));
1469
1475
  }
1470
- function or(e, t, n, r, l) {
1471
- e && !Kn(e) && cn("GObj bad instanceof");
1472
- let i = tr(e, t, n, !1);
1476
+ function sr(e, t, n, r, l) {
1477
+ e && !Yn(e) && fn("GObj bad instanceof");
1478
+ let i = nr(e, t, n, !1);
1473
1479
  const o = l && l & Zt.KW_REQUIRED, s = l && l & Zt.KW_CREATE, a = l && l & Zt.KW_EXTRACT;
1474
1480
  if (void 0 === i) {
1475
1481
  if (s) {
1476
1482
  let l = String(r);
1477
- return cr(e, t, n, l), l;
1483
+ return fr(e, t, n, l), l;
1478
1484
  }
1479
- return o && (cn(`path not found: '${n}'`), pn(t)), String(r);
1485
+ return o && (fn(`path not found: '${n}'`), mn(t)), String(r);
1480
1486
  }
1481
- return a && nr(e, t, n), Un(i) ? String(i) : (o && (cn(`${Xe(e)}: path value MUST BE a string: ${n}`), bn(t)), String(r));
1487
+ return a && rr(e, t, n), Cn(i) ? String(i) : (o && (fn(`${Xe(e)}: path value MUST BE a string: ${n}`), pn(t)), String(r));
1482
1488
  }
1483
- function sr(e, t, n, r, l) {
1484
- e && !Kn(e) && cn("GObj bad instanceof");
1485
- let i = tr(e, t, n, !1);
1489
+ function ar(e, t, n, r, l) {
1490
+ e && !Yn(e) && fn("GObj bad instanceof");
1491
+ let i = nr(e, t, n, !1);
1486
1492
  const o = l && l & Zt.KW_REQUIRED, s = l && l & Zt.KW_CREATE, a = l && l & Zt.KW_EXTRACT;
1487
1493
  if (void 0 === i) {
1488
1494
  if (s) {
1489
1495
  let l = r;
1490
- return cr(e, t, n, l), l;
1496
+ return fr(e, t, n, l), l;
1491
1497
  }
1492
- return o && (cn(`path not found: '${n}'`), pn(t)), r;
1498
+ return o && (fn(`path not found: '${n}'`), mn(t)), r;
1493
1499
  }
1494
- return a && nr(e, t, n), i;
1500
+ return a && rr(e, t, n), i;
1495
1501
  }
1496
- function ar(e, t, n, r, l) {
1497
- e && !Kn(e) && cn("GObj bad instanceof");
1498
- let i = tr(e, t, n, !1);
1502
+ function ur(e, t, n, r, l) {
1503
+ e && !Yn(e) && fn("GObj bad instanceof");
1504
+ let i = nr(e, t, n, !1);
1499
1505
  const o = l && l & Zt.KW_REQUIRED, s = l && l & Zt.KW_CREATE, a = l && l & Zt.KW_EXTRACT;
1500
1506
  if (void 0 === i) {
1501
1507
  if (s) {
1502
1508
  let l = Object(r);
1503
- return cr(e, t, n, l), l;
1509
+ return fr(e, t, n, l), l;
1504
1510
  }
1505
- return o && (cn(`path not found: '${n}'`), pn(t)), Object(r);
1511
+ return o && (fn(`path not found: '${n}'`), mn(t)), Object(r);
1506
1512
  }
1507
- return a && nr(e, t, n), Ln(i) ? Object(i) : (o && (cn(`path value MUST BE a dict: ${n}`), bn(t)), Object(r));
1513
+ return a && rr(e, t, n), Pn(i) ? Object(i) : (o && (fn(`path value MUST BE a dict: ${n}`), pn(t)), Object(r));
1508
1514
  }
1509
- function ur(e, t, n, r, l) {
1510
- e && !Kn(e) && cn("GObj bad instanceof");
1511
- let i = tr(e, t, n, !1);
1515
+ function _r(e, t, n, r, l) {
1516
+ e && !Yn(e) && fn("GObj bad instanceof");
1517
+ let i = nr(e, t, n, !1);
1512
1518
  const o = l && l & Zt.KW_REQUIRED, s = l && l & Zt.KW_CREATE, a = l && l & Zt.KW_EXTRACT;
1513
1519
  if (void 0 === i) {
1514
1520
  if (s) {
1515
1521
  let l = r;
1516
- return cr(e, t, n, l), l;
1522
+ return fr(e, t, n, l), l;
1517
1523
  }
1518
- return o && (cn(`path not found: '${n}'`), pn(t)), r;
1524
+ return o && (fn(`path not found: '${n}'`), mn(t)), r;
1519
1525
  }
1520
- return a && nr(e, t, n), i;
1526
+ return a && rr(e, t, n), i;
1521
1527
  }
1522
- function _r(e, t, n, r, l) {
1523
- e && !Kn(e) && cn("GObj bad instanceof");
1524
- let i = tr(e, t, n, !1);
1528
+ function cr(e, t, n, r, l) {
1529
+ e && !Yn(e) && fn("GObj bad instanceof");
1530
+ let i = nr(e, t, n, !1);
1525
1531
  const o = l && l & Zt.KW_REQUIRED, s = l && l & Zt.KW_CREATE, a = l && l & Zt.KW_EXTRACT;
1526
1532
  if (void 0 === i) {
1527
1533
  if (s) {
1528
1534
  let l = Array(r);
1529
- return cr(e, t, n, l), l;
1535
+ return fr(e, t, n, l), l;
1530
1536
  }
1531
- return o && (cn(`path not found: '${n}'`), pn(t)), Array(r);
1537
+ return o && (fn(`path not found: '${n}'`), mn(t)), Array(r);
1532
1538
  }
1533
- return a && nr(e, t, n), Pn(i) ? Array(i) : (o && (cn(`path value MUST BE an array: ${n}`), bn(t)), Array(r));
1539
+ return a && rr(e, t, n), Un(i) ? Array(i) : (o && (fn(`path value MUST BE an array: ${n}`), pn(t)), Array(r));
1534
1540
  }
1535
- function cr(e, t, n, r) {
1536
- if (e && !Kn(e) && cn("GObj bad instanceof"), !Ln(t)) return cn("kw is not an object"), -1;
1541
+ function fr(e, t, n, r) {
1542
+ if (e && !Yn(e) && fn("GObj bad instanceof"), !Pn(t)) return fn("kw is not an object"), -1;
1537
1543
  let l = n.split("`");
1538
1544
  if (l.length <= 1) return t[n] = r, 0;
1539
1545
  let i = l.length;
@@ -1543,34 +1549,34 @@ function cr(e, t, n, r) {
1543
1549
  }
1544
1550
  return 0;
1545
1551
  }
1546
- function fr(e, t, n, r, l) {
1547
- if (e && !Kn(e) && cn("GObj bad instanceof"), !Ln(t)) return cn("kw is not an object"), -1;
1548
- let i = ar(e, t, n, {}, !0);
1549
- return Ln(i) ? (i[r] = l, 0) : (cn("subdict is not an object"), -1);
1552
+ function gr(e, t, n, r, l) {
1553
+ if (e && !Yn(e) && fn("GObj bad instanceof"), !Pn(t)) return fn("kw is not an object"), -1;
1554
+ let i = ur(e, t, n, {}, !0);
1555
+ return Pn(i) ? (i[r] = l, 0) : (fn("subdict is not an object"), -1);
1550
1556
  }
1551
- function gr(e, n, r) {
1557
+ function dr(e, n, r) {
1552
1558
  let l = "", i = !1;
1553
- if (Pn(n)) {
1559
+ if (Un(n)) {
1554
1560
  i = !1;
1555
1561
  for (let o = 0; o < n.length; o++) {
1556
1562
  let s = n[o];
1557
- if (l = Yn(r) ? t("%s", r) : t("%s`%d", r, o), i = gr(e, s, l), i) break;
1563
+ if (l = xn(r) ? t("%s", r) : t("%s`%d", r, o), i = dr(e, s, l), i) break;
1558
1564
  }
1559
- } else if (Ln(n)) {
1565
+ } else if (Pn(n)) {
1560
1566
  i = !0;
1561
1567
  let o = Object.keys(n);
1562
1568
  for (let s = 0; s < o.length; s++) {
1563
1569
  let a = o[s], u = n[a];
1564
- if (l = Yn(r) ? t("%s", a) : t("%s`%s", r, a), Pn(u) || Ln(u)) {
1565
- if (i = gr(e, u, l), !i) break;
1570
+ if (l = xn(r) ? t("%s", a) : t("%s`%s", r, a), Un(u) || Pn(u)) {
1571
+ if (i = dr(e, u, l), !i) break;
1566
1572
  continue;
1567
1573
  }
1568
- let _ = ur(0, e, l, 0, 0);
1569
- if (_ || (_ = On(e, l)), !_) {
1574
+ let _ = _r(0, e, l, 0, 0);
1575
+ if (_ || (_ = vn(e, l)), !_) {
1570
1576
  i = !1;
1571
1577
  break;
1572
1578
  }
1573
- if (0 !== qn(_, u)) {
1579
+ if (0 !== zn(_, u)) {
1574
1580
  i = !1;
1575
1581
  break;
1576
1582
  }
@@ -1578,82 +1584,82 @@ function gr(e, n, r) {
1578
1584
  }
1579
1585
  return i;
1580
1586
  }
1581
- function dr(e, t) {
1582
- return 0 === kn(t) || gr(e, t, "");
1583
- }
1584
- function br(e, t, n, r) {
1585
- if (!n || !Pn(t)) return r && cn("item NULL or kw_list is not a list"), -1;
1586
- for (let e = 0; e < t.length; e++) if (hn(n, t[e])) return e;
1587
- return r && cn("item not found in this list"), -1;
1587
+ function br(e, t) {
1588
+ return 0 === Ln(t) || dr(e, t, "");
1588
1589
  }
1589
1590
  function pr(e, t, n, r) {
1590
- if (e && !Kn(e) && cn("GObj bad instanceof"), !t) return null;
1591
- r || (r = dr);
1591
+ if (!n || !Un(t)) return r && fn("item NULL or kw_list is not a list"), -1;
1592
+ for (let e = 0; e < t.length; e++) if (Tn(n, t[e])) return e;
1593
+ return r && fn("item not found in this list"), -1;
1594
+ }
1595
+ function mr(e, t, n, r) {
1596
+ if (e && !Yn(e) && fn("GObj bad instanceof"), !t) return null;
1597
+ r || (r = br);
1592
1598
  let l = [];
1593
- if (Pn(t)) for (let e = 0; e < t.length; e++) {
1599
+ if (Un(t)) for (let e = 0; e < t.length; e++) {
1594
1600
  let i = t[e];
1595
- r(i, n) && l.push(mn(i));
1601
+ r(i, n) && l.push(En(i));
1596
1602
  }
1597
1603
  else {
1598
- if (!Ln(t)) return cn("kw_select() BAD kw parameter"), null;
1599
- r(t, n) && l.push(mn(t));
1604
+ if (!Pn(t)) return fn("kw_select() BAD kw parameter"), null;
1605
+ r(t, n) && l.push(En(t));
1600
1606
  }
1601
1607
  return l;
1602
1608
  }
1603
- function mr(e, t, n, r) {
1604
- if (e && !Kn(e) && cn("GObj bad instanceof"), !t) return null;
1605
- r || (r = dr);
1609
+ function Er(e, t, n, r) {
1610
+ if (e && !Yn(e) && fn("GObj bad instanceof"), !t) return null;
1611
+ r || (r = br);
1606
1612
  let l = [];
1607
- if (Pn(t)) for (let e = 0; e < t.length; e++) {
1613
+ if (Un(t)) for (let e = 0; e < t.length; e++) {
1608
1614
  let i = t[e];
1609
1615
  r(i, n) && l.push(i);
1610
1616
  }
1611
1617
  else {
1612
- if (!Ln(t)) return cn("kw_select() BAD kw parameter"), null;
1618
+ if (!Pn(t)) return fn("kw_select() BAD kw parameter"), null;
1613
1619
  r(t, n) && l.push(t);
1614
1620
  }
1615
1621
  return l;
1616
1622
  }
1617
- function Er(e, t, n, r) {
1618
- e && !Kn(e) && cn("GObj bad instanceof");
1623
+ function hr(e, t, n, r) {
1624
+ e && !Yn(e) && fn("GObj bad instanceof");
1619
1625
  let l = {};
1620
- if (Un(n) && !Yn(n)) {
1626
+ if (Cn(n) && !xn(n)) {
1621
1627
  let i = n;
1622
- t.hasOwnProperty(i) ? l[i] = t[i] : r && cn(`${Xe(e)}: key not found: ${i}`);
1623
- } else if (Ln(n) && In(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? l[i] = t[i] : r && cn(`${Xe(e)}: key not found: ${i}`);
1628
+ t.hasOwnProperty(i) ? l[i] = t[i] : r && fn(`${Xe(e)}: key not found: ${i}`);
1629
+ } else if (Pn(n) && kn(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? l[i] = t[i] : r && fn(`${Xe(e)}: key not found: ${i}`);
1624
1630
  else {
1625
- if (!(Pn(n) && An(n) > 0)) return t;
1631
+ if (!(Un(n) && An(n) > 0)) return t;
1626
1632
  for (let i = 0; i < n.length; i++) {
1627
1633
  let o = n[i];
1628
- t.hasOwnProperty(o) ? l[o] = t[o] : r && cn(`${Xe(e)}: key not found: ${o}`);
1634
+ t.hasOwnProperty(o) ? l[o] = t[o] : r && fn(`${Xe(e)}: key not found: ${o}`);
1629
1635
  }
1630
1636
  }
1631
1637
  return l;
1632
1638
  }
1633
- function hr(e, t, n, r) {
1639
+ function Tr(e, t, n, r) {
1634
1640
  let l = {};
1635
- if (Tn(l, t), Un(n) && !Yn(n)) {
1641
+ if (yn(l, t), Cn(n) && !xn(n)) {
1636
1642
  let i = n;
1637
- ur(e, t, i, 0, 0) ? vn(l, i) : r && cn(`${Xe(e)}: key not found: ${i}`);
1638
- } else if (Ln(n) && In(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? vn(l, i) : r && cn(`${Xe(e)}: key not found: ${i}`);
1643
+ _r(e, t, i, 0, 0) ? Nn(l, i) : r && fn(`${Xe(e)}: key not found: ${i}`);
1644
+ } else if (Pn(n) && kn(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? Nn(l, i) : r && fn(`${Xe(e)}: key not found: ${i}`);
1639
1645
  else {
1640
- if (!(Pn(n) && An(n) > 0)) return {};
1646
+ if (!(Un(n) && An(n) > 0)) return {};
1641
1647
  for (let i = 0; i < n.length; i++) {
1642
1648
  let o = n[i];
1643
- t.hasOwnProperty(o) ? vn(l, o) : r && cn(`${Xe(e)}: key not found: ${o}`);
1649
+ t.hasOwnProperty(o) ? Nn(l, o) : r && fn(`${Xe(e)}: key not found: ${o}`);
1644
1650
  }
1645
1651
  }
1646
1652
  return l;
1647
1653
  }
1648
- function Tr(e, t, n = !1) {
1654
+ function yr(e, t, n = !1) {
1649
1655
  if ("undefined" != typeof window && window.localStorage) try {
1650
1656
  let r = window.localStorage.getItem(e);
1651
- return null === r ? (n && yr(e, t), t) : JSON.parse(r);
1657
+ return null === r ? (n && Sr(e, t), t) : JSON.parse(r);
1652
1658
  } catch (n) {
1653
1659
  return window.console.warn(`Error reading localStorage key "${e}":`, n), t;
1654
1660
  }
1655
1661
  }
1656
- function yr(e, t) {
1662
+ function Sr(e, t) {
1657
1663
  if ("undefined" != typeof window && window.localStorage) if (e && void 0 !== t) try {
1658
1664
  window.localStorage.setItem(e, JSON.stringify(t));
1659
1665
  } catch (t) {
@@ -1661,7 +1667,7 @@ function yr(e, t) {
1661
1667
  }
1662
1668
  else window.console.warn(`Invalid key or value for localStorage: key=${e}, value=${t}`);
1663
1669
  }
1664
- function Sr(e) {
1670
+ function Or(e) {
1665
1671
  if ("undefined" != typeof window && window.localStorage) if (e) try {
1666
1672
  window.localStorage.removeItem(e);
1667
1673
  } catch (t) {
@@ -1669,113 +1675,113 @@ function Sr(e) {
1669
1675
  }
1670
1676
  else window.console.warn(`Invalid key for localStorage removal: ${e}`);
1671
1677
  }
1672
- function Or(e, t) {
1673
- if (Gn(e) || Gn(t)) return !0;
1674
- if (Pn(e)) {
1678
+ function vr(e, t) {
1679
+ if (Vn(e) || Vn(t)) return !0;
1680
+ if (Un(e)) {
1675
1681
  if (0 === e.length) return !0;
1676
1682
  for (let n = 0; n < e.length; n++) if (e[n] === t) return !0;
1677
- } else if (Ln(e)) {
1683
+ } else if (Pn(e)) {
1678
1684
  if (0 === Object.keys(e).length) return !0;
1679
1685
  for (let n in e) if (n === t) return !0;
1680
- } else if (Un(e) && e === t) return !0;
1686
+ } else if (Cn(e) && e === t) return !0;
1681
1687
  return !1;
1682
1688
  }
1683
- function vr(e, t, n, r, l) {
1684
- if (e && !Kn(e) && cn("GObj bad instanceof"), !t) return null;
1685
- l || (l = dr);
1689
+ function Nr(e, t, n, r, l) {
1690
+ if (e && !Yn(e) && fn("GObj bad instanceof"), !t) return null;
1691
+ l || (l = br);
1686
1692
  let i = [];
1687
- if (Pn(t)) for (let o = 0; o < t.length; o++) {
1693
+ if (Un(t)) for (let o = 0; o < t.length; o++) {
1688
1694
  let s, a = t[o];
1689
- if (Ln(a)) s = or(e, a, "id", "", 0);
1695
+ if (Pn(a)) s = sr(e, a, "id", "", 0);
1690
1696
  else {
1691
- if (!Un(a)) continue;
1697
+ if (!Cn(a)) continue;
1692
1698
  s = a;
1693
1699
  }
1694
- Or(n, s) && l(a, r) && i.push(a);
1700
+ vr(n, s) && l(a, r) && i.push(a);
1695
1701
  }
1696
1702
  else {
1697
- if (!Ln(t)) return cn("kw_collect() BAD kw parameter"), null;
1703
+ if (!Pn(t)) return fn("kw_collect() BAD kw parameter"), null;
1698
1704
  for (let e of Object.keys(t)) {
1699
1705
  let o = t[e];
1700
- Or(n, e) && l(o, r) && i.push(o);
1706
+ vr(n, e) && l(o, r) && i.push(o);
1701
1707
  }
1702
1708
  }
1703
1709
  return i;
1704
1710
  }
1705
- function Nr(e, t, n) {
1706
- e && !Kn(e) && cn("GObj bad instanceof");
1711
+ function wr(e, t, n) {
1712
+ e && !Yn(e) && fn("GObj bad instanceof");
1707
1713
  let r = {};
1708
- if (Yn(n) || (t = tr(e, t, n)), Ln(t)) r = t;
1709
- else if (Pn(t)) for (let e = 0; e < t.length; e++) {
1710
- let n = t[e], l = or(n, "id", null, !1);
1711
- Yn(l) || (r[l] = n);
1714
+ if (xn(n) || (t = nr(e, t, n)), Pn(t)) r = t;
1715
+ else if (Un(t)) for (let e = 0; e < t.length; e++) {
1716
+ let n = t[e], l = sr(n, "id", null, !1);
1717
+ xn(l) || (r[l] = n);
1712
1718
  }
1713
- else cn(`${Xe(e)} kwid_new_dict: data type unknown`);
1719
+ else fn(`${Xe(e)} kwid_new_dict: data type unknown`);
1714
1720
  return r;
1715
1721
  }
1716
- function wr(e, t, n, r, l) {
1717
- e && !Kn(e) && cn("GObj bad instanceof");
1718
- let i = vr(e, t, n, r, l);
1722
+ function Dr(e, t, n, r, l) {
1723
+ e && !Yn(e) && fn("GObj bad instanceof");
1724
+ let i = Nr(e, t, n, r, l);
1719
1725
  return i.length > 0 ? i[0] : null;
1720
1726
  }
1721
- function Dr(e, t) {
1722
- if (e && !Kn(e) && cn("GObj bad instanceof"), !t) return [];
1727
+ function Rr(e, t) {
1728
+ if (e && !Yn(e) && fn("GObj bad instanceof"), !t) return [];
1723
1729
  let n = [];
1724
- if (Un(t)) n.push(t);
1725
- else if (Ln(t)) for (let e in t) t.hasOwnProperty(e) && n.push(e);
1726
- else Pn(t) && t.forEach(function(t) {
1727
- if (Un(t)) Yn(t) || n.push(t);
1728
- else if (Ln(t)) {
1729
- let r = or(e, t, "id", 0, 0);
1730
+ if (Cn(t)) n.push(t);
1731
+ else if (Pn(t)) for (let e in t) t.hasOwnProperty(e) && n.push(e);
1732
+ else Un(t) && t.forEach(function(t) {
1733
+ if (Cn(t)) xn(t) || n.push(t);
1734
+ else if (Pn(t)) {
1735
+ let r = sr(e, t, "id", 0, 0);
1730
1736
  r && n.push(r);
1731
1737
  }
1732
1738
  });
1733
1739
  return n;
1734
1740
  }
1735
- function Rr(e, t, n) {
1741
+ function jr(e, t, n) {
1736
1742
  t = t || "id", n = n || "value";
1737
1743
  let r = [];
1738
- if (Pn(e)) for (let l = 0; l < e.length; l++) {
1744
+ if (Un(e)) for (let l = 0; l < e.length; l++) {
1739
1745
  let i = e[l];
1740
- if (Un(i)) r.push({
1746
+ if (Cn(i)) r.push({
1741
1747
  id: e[l],
1742
1748
  value: e[l]
1743
1749
  });
1744
- else if (Ln(i)) {
1750
+ else if (Pn(i)) {
1745
1751
  let e = {};
1746
- if (er(i, t)) {
1747
- if (!er(i, n)) {
1748
- if (!(kn(i) > 0)) {
1749
- cn("list2options(): object without field value: " + n);
1752
+ if (tr(i, t)) {
1753
+ if (!tr(i, n)) {
1754
+ if (!(Ln(i) > 0)) {
1755
+ fn("list2options(): object without field value: " + n);
1750
1756
  continue;
1751
1757
  }
1752
1758
  n = Object.keys(i)[0];
1753
1759
  }
1754
1760
  e.id = i[t], e.value = i[n];
1755
1761
  } else {
1756
- if (!(kn(i) > 0)) {
1757
- cn("list2options(): object without field id: " + t);
1762
+ if (!(Ln(i) > 0)) {
1763
+ fn("list2options(): object without field id: " + t);
1758
1764
  continue;
1759
1765
  }
1760
1766
  t = Object.keys(i)[0], e.id = t, e.value = i[t];
1761
1767
  }
1762
1768
  r.push(e);
1763
- } else cn("list2options(): case1 not implemented");
1769
+ } else fn("list2options(): case1 not implemented");
1764
1770
  }
1765
- else if (Ln(e)) for (let t of Object.keys(e)) r.push({
1771
+ else if (Pn(e)) for (let t of Object.keys(e)) r.push({
1766
1772
  id: t,
1767
1773
  value: t
1768
1774
  });
1769
- else cn("list2options(): case2 not implemented");
1775
+ else fn("list2options(): case2 not implemented");
1770
1776
  return r;
1771
1777
  }
1772
- function jr(e, t) {
1778
+ function $r(e, t) {
1773
1779
  if (!e) return -1;
1774
1780
  for (let n = 0; n < e.length; n++) if (e[n] && e[n].id === t) return n;
1775
1781
  return -1;
1776
1782
  }
1777
- function $r(e, t, n) {
1778
- if (!e || !t) return cn("ERROR: str_in_list() list or str empty"), !1;
1783
+ function Ir(e, t, n) {
1784
+ if (!e || !t) return fn("ERROR: str_in_list() list or str empty"), !1;
1779
1785
  let r = e.length;
1780
1786
  if (n) {
1781
1787
  t = t.toLowerCase();
@@ -1786,17 +1792,17 @@ function $r(e, t, n) {
1786
1792
  } else for (let n = 0; n < r; n++) if (e[n] === t) return !0;
1787
1793
  return !1;
1788
1794
  }
1789
- function Ir(e, t, n) {
1790
- if (!e) return cn("ERROR: strs_in_list() list empty"), !1;
1791
- if (!t) return cn("ERROR: strs_in_list() str empty"), !1;
1792
- for (let r = 0; r < t.length; r++) if ($r(e, t[r], n)) return !0;
1795
+ function kr(e, t, n) {
1796
+ if (!e) return fn("ERROR: strs_in_list() list empty"), !1;
1797
+ if (!t) return fn("ERROR: strs_in_list() str empty"), !1;
1798
+ for (let r = 0; r < t.length; r++) if (Ir(e, t[r], n)) return !0;
1793
1799
  return !1;
1794
1800
  }
1795
1801
  function Ar(e, t) {
1796
1802
  for (let n = 0; n < e.length; n++) if (t === e[n]) return e.splice(n, 1), !0;
1797
1803
  return !1;
1798
1804
  }
1799
- function kr(e, t) {
1805
+ function Lr(e, t) {
1800
1806
  try {
1801
1807
  let n = e.__md_iev__;
1802
1808
  if (n) return n[t];
@@ -1804,53 +1810,53 @@ function kr(e, t) {
1804
1810
  return;
1805
1811
  }
1806
1812
  }
1807
- function Lr(e, t, n) {
1813
+ function Pr(e, t, n) {
1808
1814
  let r = e.__md_iev__;
1809
1815
  r || (r = {}, e.__md_iev__ = r), r[t] = n;
1810
1816
  }
1811
- function Pr(e, t, n, r) {
1812
- if (!Kn(e)) return cn("gobj is not a GObj"), null;
1817
+ function Ur(e, t, n, r) {
1818
+ if (!Yn(e)) return fn("gobj is not a GObj"), null;
1813
1819
  if (!t) return;
1814
- let l = kr(t, n);
1815
- l || (l = [], Lr(t, n, l));
1820
+ let l = Lr(t, n);
1821
+ l || (l = [], Pr(t, n, l));
1816
1822
  try {
1817
- Pn(l) && l.unshift(r);
1823
+ Un(l) && l.unshift(r);
1818
1824
  } catch (e) {
1819
- cn(e);
1825
+ fn(e);
1820
1826
  }
1821
1827
  }
1822
- function Ur(e, t, n, r) {
1823
- if (!Kn(e)) return cn("gobj is not a GObj"), null;
1824
- if (!Ln(t)) return cn("kw is not a dict"), null;
1825
- let l = kr(t, n);
1826
- return l ? 0 === l.length ? (r && cn(`stack empty: ${n}`), null) : l[0] : (r && cn(`stack NOT FOUND: ${n}`), null);
1828
+ function Cr(e, t, n, r) {
1829
+ if (!Yn(e)) return fn("gobj is not a GObj"), null;
1830
+ if (!Pn(t)) return fn("kw is not a dict"), null;
1831
+ let l = Lr(t, n);
1832
+ return l ? 0 === l.length ? (r && fn(`stack empty: ${n}`), null) : l[0] : (r && fn(`stack NOT FOUND: ${n}`), null);
1827
1833
  }
1828
- function Cr(e, t, n) {
1829
- return Yn(n) ? nr(e, t, "__md_iev__`__msg_type__") : fr(e, t, "__md_iev__", "__msg_type__", n), 0;
1834
+ function Fr(e, t, n) {
1835
+ return xn(n) ? rr(e, t, "__md_iev__`__msg_type__") : gr(e, t, "__md_iev__", "__msg_type__", n), 0;
1830
1836
  }
1831
- function Fr(e, t) {
1832
- return or(e, t, "__md_iev__`__msg_type__", "", 0);
1837
+ function Gr(e, t) {
1838
+ return sr(e, t, "__md_iev__`__msg_type__", "", 0);
1833
1839
  }
1834
- function Gr(e, t, n) {
1840
+ function Vr(e, t, n) {
1835
1841
  let r = new XMLHttpRequest();
1836
1842
  r.open("GET", e, !0), r.setRequestHeader("Accept", "application/json"), r.onreadystatechange = function() {
1837
1843
  if (4 === r.readyState) if (200 === r.status || 0 === (e = r).status && e.responseText && e.responseURL.startsWith("file:")) try {
1838
1844
  t(JSON.parse(r.responseText));
1839
1845
  } catch (e) {
1840
- n && (cn(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
1846
+ n && (fn(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
1841
1847
  }
1842
1848
  else n && n(r.status);
1843
1849
  var e;
1844
1850
  }, r.send();
1845
1851
  }
1846
- function Vr(e, t, n) {
1852
+ function Wr(e, t, n) {
1847
1853
  let r = new XMLHttpRequest();
1848
1854
  r.open("POST", e), r.setRequestHeader("Accept", "application/json"), r.setRequestHeader("Content-Type", "application/json"), r.onreadystatechange = function() {
1849
1855
  4 === r.readyState && n(r.status, r.responseText);
1850
1856
  }, r.send(t);
1851
1857
  }
1852
- function Wr(e, t, n) {
1853
- void 0 !== n && Un(n) || (n = "");
1858
+ function Mr(e, t, n) {
1859
+ void 0 !== n && Cn(n) || (n = "");
1854
1860
  for (let r of Object.keys(e)) {
1855
1861
  if (!e.hasOwnProperty(r)) continue;
1856
1862
  let l = (n.length ? "`" : "") + r;
@@ -1859,61 +1865,61 @@ function Wr(e, t, n) {
1859
1865
  r,
1860
1866
  e[r],
1861
1867
  n
1862
- ]), Ln(e[r]) && Wr(e[r], t, n), n = n.slice(0, -l.length);
1868
+ ]), Pn(e[r]) && Mr(e[r], t, n), n = n.slice(0, -l.length);
1863
1869
  }
1864
1870
  }
1865
- function Mr(e, t, n) {
1866
- n && (e = mn(e));
1867
- let r = ur(null, e, "type", [], 1);
1868
- or(null, e, "hook", "data", 1);
1869
- let l = ur(null, e, "schema", {}, 1), i = ur(null, e, "topics", {}, 1);
1870
- return Wr(l, function(e, t, n, l) {
1871
- "__" !== t.substring(0, 2) && ur(null, i, l, mn(r), 1);
1871
+ function Kr(e, t, n) {
1872
+ n && (e = En(e));
1873
+ let r = _r(null, e, "type", [], 1);
1874
+ sr(null, e, "hook", "data", 1);
1875
+ let l = _r(null, e, "schema", {}, 1), i = _r(null, e, "topics", {}, 1);
1876
+ return Mr(l, function(e, t, n, l) {
1877
+ "__" !== t.substring(0, 2) && _r(null, i, l, En(r), 1);
1872
1878
  }, t), e;
1873
1879
  }
1874
- function Kr(e, t, n, r) {
1875
- let l = ur(null, ur(null, e, "topics", null, 0), t, null, 0);
1876
- if (!l) return cn("jdb_update: topic not found: " + t), null;
1877
- if (Yn(r.id)) return cn("jdb_update: record without id: " + r), bn(r), null;
1880
+ function Yr(e, t, n, r) {
1881
+ let l = _r(null, _r(null, e, "topics", null, 0), t, null, 0);
1882
+ if (!l) return fn("jdb_update: topic not found: " + t), null;
1883
+ if (xn(r.id)) return fn("jdb_update: record without id: " + r), pn(r), null;
1878
1884
  let i, o = n.split("`"), s = l;
1879
- for (; (i = o.shift()) && !Yn(i) && s;) Ln(s) && (s = ur(null, s, e.hook, [], 1)), s = Qr(s, null, i, !1);
1880
- if (0 === o.length && s) if (Pn(s)) s.push(r);
1885
+ for (; (i = o.shift()) && !xn(i) && s;) Pn(s) && (s = _r(null, s, e.hook, [], 1)), s = qr(s, null, i, !1);
1886
+ if (0 === o.length && s) if (Un(s)) s.push(r);
1881
1887
  else if (s.id === r.id) Object.assign(s, r);
1882
1888
  else {
1883
- let t = ur(null, s, e.hook, [], 1), n = Qr(t, e.hook, r.id, !1);
1889
+ let t = _r(null, s, e.hook, [], 1), n = qr(t, e.hook, r.id, !1);
1884
1890
  n ? Object.assign(n, r) : t.push(r);
1885
1891
  }
1886
1892
  return l;
1887
1893
  }
1888
- function Yr(e, t, n, r) {
1889
- let l = ur(null, ur(null, e, "topics", null, 0), t, null, 0);
1890
- if (!l) return cn("jdb_delete: topic not found: " + t), null;
1891
- if (Yn(r.id)) return cn("jdb_delete: record without id: " + r), bn(r), null;
1894
+ function xr(e, t, n, r) {
1895
+ let l = _r(null, _r(null, e, "topics", null, 0), t, null, 0);
1896
+ if (!l) return fn("jdb_delete: topic not found: " + t), null;
1897
+ if (xn(r.id)) return fn("jdb_delete: record without id: " + r), pn(r), null;
1892
1898
  let i, o = n.split("`"), s = l;
1893
- for (; (i = o.shift()) && !Yn(i) && s;) Ln(s) && (s = ur(null, s, e.hook, null, 0)), s = Qr(s, null, i, !1);
1894
- if (0 === o.length && s) if (Pn(s)) {
1895
- let e = jr(s, r.id);
1899
+ for (; (i = o.shift()) && !xn(i) && s;) Pn(s) && (s = _r(null, s, e.hook, null, 0)), s = qr(s, null, i, !1);
1900
+ if (0 === o.length && s) if (Un(s)) {
1901
+ let e = $r(s, r.id);
1896
1902
  e >= 0 && s.splice(e, 1);
1897
1903
  } else {
1898
- let t = ur(null, s, e.hook, null, 0), n = jr(t, r.id);
1904
+ let t = _r(null, s, e.hook, null, 0), n = $r(t, r.id);
1899
1905
  n >= 0 && t.splice(n, 1);
1900
1906
  }
1901
1907
  return l;
1902
1908
  }
1903
- function xr(e, t) {
1904
- let n = ur(null, e, "topics", null, 0);
1905
- if (!n) return cn("jdb topics section not found"), bn(e), null;
1906
- return ur(null, n, t, null, 0) || (cn("jdb topic not found: " + t), bn(n), null);
1909
+ function Br(e, t) {
1910
+ let n = _r(null, e, "topics", null, 0);
1911
+ if (!n) return fn("jdb topics section not found"), pn(e), null;
1912
+ return _r(null, n, t, null, 0) || (fn("jdb topic not found: " + t), pn(n), null);
1907
1913
  }
1908
- function Br(e, t, n, r) {
1909
- let l = ur(null, ur(null, e, "topics", null, 0), t, null, 0);
1910
- return l ? (void 0 === r && (r = !0), Qr(l, e.hook, n, r)) : (cn("jdb_get: topic not found: " + t), null);
1914
+ function Jr(e, t, n, r) {
1915
+ let l = _r(null, _r(null, e, "topics", null, 0), t, null, 0);
1916
+ return l ? (void 0 === r && (r = !0), qr(l, e.hook, n, r)) : (fn("jdb_get: topic not found: " + t), null);
1911
1917
  }
1912
- function Jr(e, t, n) {
1913
- let r = ur(null, ur(null, e, "topics", null, 0), t, null, 0);
1914
- return r ? n < r.length ? r[n] : {} : (cn("jdb_get_by_idx: topic not found: " + t), null);
1918
+ function Qr(e, t, n) {
1919
+ let r = _r(null, _r(null, e, "topics", null, 0), t, null, 0);
1920
+ return r ? n < r.length ? r[n] : {} : (fn("jdb_get_by_idx: topic not found: " + t), null);
1915
1921
  }
1916
- function Qr(e, t, n, r) {
1922
+ function qr(e, t, n, r) {
1917
1923
  if (!e) return null;
1918
1924
  let l, i = e.length;
1919
1925
  for (l = 0; l < i; l++) {
@@ -1921,19 +1927,19 @@ function Qr(e, t, n, r) {
1921
1927
  if (i) {
1922
1928
  let e = i.id;
1923
1929
  if (e && e === n) return i;
1924
- if (r && er(i, t)) {
1925
- let e = Qr(i[t], t, n, r);
1930
+ if (r && tr(i, t)) {
1931
+ let e = qr(i[t], t, n, r);
1926
1932
  if (e) return e;
1927
1933
  }
1928
1934
  }
1929
1935
  }
1930
1936
  return null;
1931
1937
  }
1932
- function qr(e, t) {
1933
- let n = mn(e);
1934
- return yn(n, t), n;
1938
+ function zr(e, t) {
1939
+ let n = En(e);
1940
+ return Sn(n, t), n;
1935
1941
  }
1936
- function zr(e) {
1942
+ function Xr(e) {
1937
1943
  function t(e) {
1938
1944
  let t = e.replace(/-/g, "+").replace(/_/g, "/");
1939
1945
  switch (t.length % 4) {
@@ -1964,9 +1970,9 @@ function zr(e) {
1964
1970
  signature: t(n[2])
1965
1971
  };
1966
1972
  }
1967
- function Xr(e, t) {
1973
+ function Hr(e, t) {
1968
1974
  try {
1969
- let n = zr(e);
1975
+ let n = Xr(e);
1970
1976
  switch (t) {
1971
1977
  case "header": return JSON.parse(n.header);
1972
1978
  case "signature": return JSON.parse(n.signature);
@@ -1976,38 +1982,38 @@ function Xr(e, t) {
1976
1982
  return null;
1977
1983
  }
1978
1984
  }
1979
- function Hr(e) {
1985
+ function Zr(e) {
1980
1986
  return null == e ? "" : String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
1981
1987
  }
1982
- function Zr(e) {
1988
+ function el(e) {
1983
1989
  if (!e) return "";
1984
1990
  const t = String(e).trim();
1985
- return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : Hr(t);
1991
+ return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : Zr(t);
1986
1992
  }
1987
- function el(e) {
1993
+ function tl(e) {
1988
1994
  const t = document.createElement("template");
1989
1995
  return t.innerHTML = e.trim(), t.content.firstChild;
1990
1996
  }
1991
- function tl(e, t) {
1997
+ function nl(e, t) {
1992
1998
  let [n, r, l, i] = e;
1993
- if (!n) return void cn("Tag must be a valid HTML element.");
1999
+ if (!n) return void fn("Tag must be a valid HTML element.");
1994
2000
  let o = document.createElement(n), s = "";
1995
2001
  if (r && "object" == typeof r) for (let e of Object.keys(r)) if ("style" === e && "object" == typeof r[e]) {
1996
2002
  let t = "";
1997
2003
  for (const n of Object.keys(r[e])) t += `${n}: ${r[e][n]};`;
1998
2004
  o.style.cssText = t;
1999
2005
  } else "style" === e ? o.style.cssText = r[e] : "i18n" === e || "data-i18n" === e || "data_i18next" === e || "data-i18next" === e ? null !== r[e] && void 0 !== r[e] && (s = r[e], o.setAttribute("data-i18n", s)) : o.setAttribute(e, r[e]);
2000
- if (Un(l)) if (l = l.trim(), l.length > 0 && "<" === l[0]) o.appendChild(el(l));
2006
+ if (Cn(l)) if (l = l.trim(), l.length > 0 && "<" === l[0]) o.appendChild(tl(l));
2001
2007
  else if (t && s) o.textContent = t(s) || l;
2002
2008
  else o.textContent = l;
2003
- else if (Pn(l)) {
2004
- if (l.length > 0) if (Un(l[0])) o.appendChild(tl(l, t));
2005
- else for (let e of l) Array.isArray(e) && e.length > 0 ? o.appendChild(tl(e, t)) : e instanceof HTMLElement && o.appendChild(e);
2006
- } else l instanceof HTMLElement || l instanceof Text || l instanceof SVGElement ? o.appendChild(l) : null != l && (cn("content ignored"), pn(l));
2009
+ else if (Un(l)) {
2010
+ if (l.length > 0) if (Cn(l[0])) o.appendChild(nl(l, t));
2011
+ else for (let e of l) Array.isArray(e) && e.length > 0 ? o.appendChild(nl(e, t)) : e instanceof HTMLElement && o.appendChild(e);
2012
+ } else l instanceof HTMLElement || l instanceof Text || l instanceof SVGElement ? o.appendChild(l) : null != l && (fn("content ignored"), mn(l));
2007
2013
  if (i && "object" == typeof i) for (const e of Object.keys(i)) o.addEventListener(e, i[e]);
2008
2014
  return o;
2009
2015
  }
2010
- function nl(e) {
2016
+ function rl(e) {
2011
2017
  if (!e) return {
2012
2018
  top: 0,
2013
2019
  left: 0,
@@ -2027,11 +2033,11 @@ function nl(e) {
2027
2033
  bottom: t + o + l
2028
2034
  };
2029
2035
  }
2030
- function rl(e) {
2036
+ function ll(e) {
2031
2037
  return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
2032
2038
  }
2033
- function ll(e, t) {
2034
- Mn(t) ? (e || (e = document), e.querySelectorAll("[data-i18n]").forEach(function(e) {
2039
+ function il(e, t) {
2040
+ Kn(t) ? (e || (e = document), e.querySelectorAll("[data-i18n]").forEach(function(e) {
2035
2041
  let n = e.getAttribute("data-i18n");
2036
2042
  for (let r of e.childNodes) if (r.nodeType === Node.TEXT_NODE) {
2037
2043
  n || (n = r.nodeValue), r.nodeValue = t(n);
@@ -2043,43 +2049,43 @@ function ll(e, t) {
2043
2049
  }), e.querySelectorAll("[data-i18n-aria-label]").forEach(function(e) {
2044
2050
  let n = e.getAttribute("data-i18n-aria-label");
2045
2051
  n && e.setAttribute("aria-label", t(n));
2046
- })) : cn("You must supply a translation function");
2052
+ })) : fn("You must supply a translation function");
2047
2053
  }
2048
- function il(e = "Time Tracker", t = !1) {
2054
+ function ol(e = "Time Tracker", t = !1) {
2049
2055
  const n = e, r = performance.now();
2050
2056
  let l = r;
2051
- return t && fn(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", i = "") => {
2057
+ return t && gn(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", i = "") => {
2052
2058
  const o = performance.now(), s = (o - l) / 1e3, a = (o - r) / 1e3;
2053
- return t && fn(`--\x3e ${n} ${e} - partial: ${s} sec, total: ${a} sec, ${i}`), l = o, {
2059
+ return t && gn(`--\x3e ${n} ${e} - partial: ${s} sec, total: ${a} sec, ${i}`), l = o, {
2054
2060
  partial: s,
2055
2061
  total: a
2056
2062
  };
2057
2063
  } };
2058
2064
  }
2059
- function ol() {
2065
+ function sl() {
2060
2066
  const e = /* @__PURE__ */ new Date(), t = e.toISOString().slice(0, 19), n = String(e.getMilliseconds()).padStart(3, "0"), r = e.getTimezoneOffset();
2061
2067
  return `${t}.${n}${r > 0 ? "-" : "+"}${String(Math.abs(r) / 60).padStart(2, "0")}${String(Math.abs(r) % 60).padStart(2, "0")}`;
2062
2068
  }
2063
- function sl() {
2069
+ function al() {
2064
2070
  return Math.floor(Date.now() / 1e3);
2065
2071
  }
2066
- function al(e, t) {
2072
+ function ul(e, t) {
2067
2073
  if (!e) throw "ERROR: index_in_list() list empty";
2068
2074
  for (let n = 0; n < e.length; n++) if (t === e[n]) return n;
2069
2075
  return -1;
2070
2076
  }
2071
- function ul() {
2077
+ function _l() {
2072
2078
  let e = "";
2073
2079
  return "undefined" != typeof window && window.localStorage ? (e = window.localStorage.getItem("host_uuid"), !e && window.crypto?.randomUUID && (e = window.crypto.randomUUID(), window.localStorage.setItem("host_uuid", e))) : e = "undefined" != typeof globalThis && globalThis.crypto?.randomUUID ? globalThis.crypto.randomUUID() : "00000000-0000-0000-0000-000000000000", e;
2074
2080
  }
2075
- function _l(e) {
2081
+ function cl(e) {
2076
2082
  return e.replace(/[?# ^:]/g, "_");
2077
2083
  }
2078
- function cl(e) {
2084
+ function fl(e) {
2079
2085
  let t = null;
2080
2086
  return "function" != typeof e && "object" != typeof e || (t = ("" + e).match(/function\s*([\w\$]*)\s*\(/)), null !== t ? t[1] + "()" : "";
2081
2087
  }
2082
- function fl(e, t = 0, n = !1) {
2088
+ function gl(e, t = 0, n = !1) {
2083
2089
  let r = null, l = null, i = null;
2084
2090
  const o = (...o) => {
2085
2091
  i = this, l = o;
@@ -2094,45 +2100,45 @@ function fl(e, t = 0, n = !1) {
2094
2100
  clearTimeout(r), r = null, l = null, i = null;
2095
2101
  }, o;
2096
2102
  }
2097
- function gl(...e) {
2103
+ function dl(...e) {
2098
2104
  let t = "", n = 0;
2099
2105
  for (let r of e) null != r && "" !== r && (r = String(r), r = 0 === n ? r.replace(/\/+$/, "") : r.replace(/^\/+/, "").replace(/\/+$/, ""), "" !== r && (n > 0 && (t += "/"), t += r, n++));
2100
2106
  return t;
2101
2107
  }
2102
- function dl(e) {
2108
+ function bl(e) {
2103
2109
  return "persistent-attrs-" + Xe(e);
2104
2110
  }
2105
- function bl(e, t) {
2106
- let n = ht(e, S.SDF_PERSIST), r = Tr(dl(e), null, !1);
2107
- if (r && Ln(r)) {
2108
- let l = Er(e, r, t, !1);
2109
- l = Er(e, l, n, !1), wt(e, l, S.SDF_PERSIST);
2110
- }
2111
- }
2112
2111
  function pl(e, t) {
2113
- let n = Er(e, ht(e, S.SDF_PERSIST), t, !1), r = Tr(dl(e), null, !1);
2114
- r && Ln(r) && Sn(n, r), yr(dl(e), n);
2112
+ let n = ht(e, S.SDF_PERSIST), r = yr(bl(e), null, !1);
2113
+ if (r && Pn(r)) {
2114
+ let l = hr(e, r, t, !1);
2115
+ l = hr(e, l, n, !1), wt(e, l, S.SDF_PERSIST);
2116
+ }
2115
2117
  }
2116
2118
  function ml(e, t) {
2117
- let n = hr(e, Tr(dl(e), null, !1), t, !1);
2118
- 0 === In(n) ? Sr(dl(e)) : yr(dl(e), n);
2119
+ let n = hr(e, ht(e, S.SDF_PERSIST), t, !1), r = yr(bl(e), null, !1);
2120
+ r && Pn(r) && On(n, r), Sr(bl(e), n);
2119
2121
  }
2120
2122
  function El(e, t) {
2121
- let n = Tr(dl(e), null, !1), r = {};
2122
- return n && Ln(n) && (r = Er(e, n, t, !1)), r;
2123
+ let n = Tr(e, yr(bl(e), null, !1), t, !1);
2124
+ 0 === kn(n) ? Or(bl(e)) : Sr(bl(e), n);
2125
+ }
2126
+ function hl(e, t) {
2127
+ let n = yr(bl(e), null, !1), r = {};
2128
+ return n && Pn(n) && (r = hr(e, n, t, !1)), r;
2123
2129
  }
2124
- function hl(e) {
2125
- if (Pn(e) && 1 === kn(e)) {
2130
+ function Tl(e) {
2131
+ if (Un(e) && 1 === Ln(e)) {
2126
2132
  let t = e[0];
2127
- return er(t, "size") ? t.size : 1;
2133
+ return tr(t, "size") ? t.size : 1;
2128
2134
  }
2129
- return kn(e);
2135
+ return Ln(e);
2130
2136
  }
2131
- function Tl(e, t) {
2132
- if (Un(t)) {
2137
+ function yl(e, t) {
2138
+ if (Cn(t)) {
2133
2139
  if (-1 === t.indexOf("^")) {
2134
2140
  let n, r, l = e.fkey;
2135
- if (1 !== In(l)) return cn("bad fkey 1"), cn(e), cn(t), null;
2141
+ if (1 !== kn(l)) return fn("bad fkey 1"), fn(e), fn(t), null;
2136
2142
  for (const e of Object.keys(l)) {
2137
2143
  n = e, r = l[e];
2138
2144
  break;
@@ -2145,28 +2151,28 @@ function Tl(e, t) {
2145
2151
  }
2146
2152
  {
2147
2153
  let n = t.split("^");
2148
- return 3 !== n.length ? (cn("bad fkey 2"), cn(e), cn(t), null) : {
2154
+ return 3 !== n.length ? (fn("bad fkey 2"), fn(e), fn(t), null) : {
2149
2155
  topic_name: n[0],
2150
2156
  id: n[1],
2151
2157
  hook_name: n[2]
2152
2158
  };
2153
2159
  }
2154
2160
  }
2155
- return Ln(t) ? {
2161
+ return Pn(t) ? {
2156
2162
  topic_name: t.topic_name,
2157
2163
  id: t.id,
2158
2164
  hook_name: t.hook_name
2159
- } : (cn("bad fkey 3"), cn(e), cn(t), null);
2165
+ } : (fn("bad fkey 3"), fn(e), fn(t), null);
2160
2166
  }
2161
- function yl(e, t) {
2162
- let n = Tl(e, t);
2167
+ function Sl(e, t) {
2168
+ let n = yl(e, t);
2163
2169
  return n ? n.topic_name + "^" + n.id + "^" + n.hook_name : null;
2164
2170
  }
2165
- function Sl(e, t) {
2166
- if (Un(t)) {
2171
+ function Ol(e, t) {
2172
+ if (Cn(t)) {
2167
2173
  if (-1 === t.indexOf("^")) {
2168
2174
  let n, r = e.hook;
2169
- if (1 !== In(r)) return cn("bad hook 1"), cn(e), cn(t), null;
2175
+ if (1 !== kn(r)) return fn("bad hook 1"), fn(e), fn(t), null;
2170
2176
  for (let e of Object.keys(r)) {
2171
2177
  n = e, r[e];
2172
2178
  break;
@@ -2178,18 +2184,18 @@ function Sl(e, t) {
2178
2184
  }
2179
2185
  {
2180
2186
  let n = t.split("^");
2181
- return 2 !== n.length ? (cn("bad hook 2"), cn(e), cn(t), null) : {
2187
+ return 2 !== n.length ? (fn("bad hook 2"), fn(e), fn(t), null) : {
2182
2188
  topic_name: n[0],
2183
2189
  id: n[1]
2184
2190
  };
2185
2191
  }
2186
2192
  }
2187
- return Ln(t) ? {
2193
+ return Pn(t) ? {
2188
2194
  topic_name: t.topic_name,
2189
2195
  id: t.id
2190
- } : (cn("bad hook 3"), cn(e), cn(t), null);
2196
+ } : (fn("bad hook 3"), fn(e), fn(t), null);
2191
2197
  }
2192
- var Ol = [
2198
+ var vl = [
2193
2199
  "string",
2194
2200
  "integer",
2195
2201
  "object",
@@ -2199,7 +2205,7 @@ var Ol = [
2199
2205
  "real",
2200
2206
  "boolean",
2201
2207
  "blob"
2202
- ], vl = [
2208
+ ], Nl = [
2203
2209
  "persistent",
2204
2210
  "required",
2205
2211
  "notnull",
@@ -2211,7 +2217,7 @@ var Ol = [
2211
2217
  "stats",
2212
2218
  "rstats",
2213
2219
  "pstats"
2214
- ], Nl = [
2220
+ ], wl = [
2215
2221
  "hook",
2216
2222
  "fkey",
2217
2223
  "enum",
@@ -2237,7 +2243,7 @@ var Ol = [
2237
2243
  "coordinates",
2238
2244
  "gbuffer"
2239
2245
  ];
2240
- function wl(e) {
2246
+ function Dl(e) {
2241
2247
  let t = {
2242
2248
  name: e.id,
2243
2249
  header: e.header,
@@ -2254,7 +2260,7 @@ function wl(e) {
2254
2260
  if (!e.flag) return t;
2255
2261
  for (let n = 0; n < e.flag.length; n++) {
2256
2262
  let r = e.flag[n];
2257
- if ($r(Nl, r)) {
2263
+ if (Ir(wl, r)) {
2258
2264
  switch (r) {
2259
2265
  case "enum":
2260
2266
  t.enum_list = e.enum;
@@ -2265,7 +2271,7 @@ function wl(e) {
2265
2271
  case "table": t.enum_list = e.table;
2266
2272
  }
2267
2273
  t.type = r;
2268
- } else if ($r(vl, r)) switch (r) {
2274
+ } else if (Ir(Nl, r)) switch (r) {
2269
2275
  case "writable":
2270
2276
  t.is_writable = !0;
2271
2277
  break;
@@ -2278,7 +2284,7 @@ function wl(e) {
2278
2284
  }
2279
2285
  return t;
2280
2286
  }
2281
- function Dl(e, t) {
2287
+ function Rl(e, t) {
2282
2288
  let n = {
2283
2289
  name: e,
2284
2290
  header: e,
@@ -2291,13 +2297,13 @@ function Dl(e, t) {
2291
2297
  default_value: void 0,
2292
2298
  placeholder: void 0
2293
2299
  };
2294
- if (Un(t)) {
2300
+ if (Cn(t)) {
2295
2301
  let e = t.split(".");
2296
2302
  for (let t = 0; t < e.length; t++) {
2297
2303
  let r = e[t];
2298
- if ($r(Ol, r)) n.real_type || (n.real_type = r);
2299
- else if ($r(Nl, r)) n.type || (n.type = r);
2300
- else if ($r(vl, r)) switch (r) {
2304
+ if (Ir(vl, r)) n.real_type || (n.real_type = r);
2305
+ else if (Ir(wl, r)) n.type || (n.type = r);
2306
+ else if (Ir(Nl, r)) switch (r) {
2301
2307
  case "writable":
2302
2308
  n.is_writable = !0;
2303
2309
  break;
@@ -2309,32 +2315,32 @@ function Dl(e, t) {
2309
2315
  }
2310
2316
  }
2311
2317
  n.real_type || (n.real_type = "string");
2312
- } else Ln(t) ? (n = wl(t), n.name || (n.name = e), n.header || (n.header = e)) : Pn(t) && (n.real_type = "array", n.enum_list = t);
2318
+ } else Pn(t) ? (n = Dl(t), n.name || (n.name = e), n.header || (n.header = e)) : Un(t) && (n.real_type = "array", n.enum_list = t);
2313
2319
  return n.type || (n.type = n.real_type), n;
2314
2320
  }
2315
- function Rl(e, t) {
2321
+ function jl(e, t) {
2316
2322
  let n = {};
2317
2323
  return t || (t = {}), Object.entries(e).forEach(([e, r]) => {
2318
- n[e] = ur(null, t, e, ur(r, "default"));
2324
+ n[e] = _r(null, t, e, _r(r, "default"));
2319
2325
  }), n;
2320
2326
  }
2321
- var jl = [
2327
+ var $l = [
2322
2328
  N(y.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
2323
2329
  N(y.DTP_BOOLEAN, "periodic", 0, 0, "True for periodic timeouts"),
2324
2330
  N(y.DTP_INTEGER, "msec", 0, 0, "Timeout in milliseconds"),
2325
2331
  v()
2326
- ], $l = {
2332
+ ], Il = {
2327
2333
  periodic: !1,
2328
2334
  msec: 0,
2329
2335
  timer_id: -1
2330
- }, Il = null;
2336
+ }, kl = null;
2331
2337
  function Al(e, t, n, r) {
2332
2338
  let l = e.priv, i = l.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
2333
2339
  return tt(e) ? Ct(Ze(e), i, {}, e) : zt(e, i, {}), l.periodic && (l.timer_id = setTimeout(function() {
2334
2340
  Ct(e, "EV_TIMEOUT", {}, e);
2335
2341
  }, l.msec)), 0;
2336
2342
  }
2337
- var kl = {
2343
+ var Ll = {
2338
2344
  mt_create: function(e) {
2339
2345
  let t = e.priv;
2340
2346
  const n = Ot(e, "subscriber");
@@ -2359,31 +2365,31 @@ var kl = {
2359
2365
  },
2360
2366
  mt_destroy: function(e) {}
2361
2367
  };
2362
- function Ll() {
2368
+ function Pl() {
2363
2369
  return function(e) {
2364
- if (Il) return cn(`GClass ALREADY created: ${e}`), -1;
2370
+ if (kl) return fn(`GClass ALREADY created: ${e}`), -1;
2365
2371
  const t = [["ST_IDLE", [[
2366
2372
  "EV_TIMEOUT",
2367
2373
  Al,
2368
2374
  null
2369
2375
  ]]]];
2370
- return (Il = Z(e, [
2376
+ return (kl = Z(e, [
2371
2377
  ["EV_TIMEOUT", C.EVF_OUTPUT_EVENT],
2372
2378
  ["EV_TIMEOUT_PERIODIC", C.EVF_OUTPUT_EVENT],
2373
2379
  [0, 0]
2374
- ], t, kl, 0, jl, $l, 0, 0, 0, L.gcflag_manual_start)) ? 0 : -1;
2380
+ ], t, Ll, 0, $l, Il, 0, 0, 0, L.gcflag_manual_start)) ? 0 : -1;
2375
2381
  }("C_TIMER");
2376
2382
  }
2377
- function Pl(e, t) {
2378
- return e instanceof k ? "C_TIMER" !== ze(e) ? (cn("not C_TIMER GObj"), -1) : (Dt(e, "periodic", !1), void Rt(e, "msec", t)) : (cn("not GObj TYPE"), -1);
2379
- }
2380
2383
  function Ul(e, t) {
2381
- return e instanceof k ? "C_TIMER" !== ze(e) ? (cn("not C_TIMER GObj"), -1) : (Dt(e, "periodic", !0), void Rt(e, "msec", t)) : (cn("not GObj TYPE"), -1);
2384
+ return e instanceof A ? "C_TIMER" !== ze(e) ? (fn("not C_TIMER GObj"), -1) : (Dt(e, "periodic", !1), void Rt(e, "msec", t)) : (fn("not GObj TYPE"), -1);
2382
2385
  }
2383
- function Cl(e) {
2384
- return e instanceof k ? "C_TIMER" !== ze(e) ? (cn("not C_TIMER GObj"), -1) : void Rt(e, "msec", -1) : (cn("not GObj TYPE"), -1);
2386
+ function Cl(e, t) {
2387
+ return e instanceof A ? "C_TIMER" !== ze(e) ? (fn("not C_TIMER GObj"), -1) : (Dt(e, "periodic", !0), void Rt(e, "msec", t)) : (fn("not GObj TYPE"), -1);
2385
2388
  }
2386
- var Fl = [
2389
+ function Fl(e) {
2390
+ return e instanceof A ? "C_TIMER" !== ze(e) ? (fn("not C_TIMER GObj"), -1) : void Rt(e, "msec", -1) : (fn("not GObj TYPE"), -1);
2391
+ }
2392
+ var Gl = [
2387
2393
  N(y.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
2388
2394
  N(y.DTP_BOOLEAN, "browser_beforeunload", 0, !1, "Set true to refreshing browser"),
2389
2395
  N(y.DTP_STRING, "__username__", 0, "", "Username"),
@@ -2409,18 +2415,18 @@ var Fl = [
2409
2415
  N(y.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
2410
2416
  N(y.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
2411
2417
  v()
2412
- ], Gl = { gobj_timer: null }, Vl = null;
2413
- function Wl(e, t, n, r) {
2418
+ ], Vl = { gobj_timer: null }, Wl = null;
2419
+ function Ml(e, t, n, r) {
2414
2420
  return zt(e, t, n), 0;
2415
2421
  }
2416
- var Ml = {
2422
+ var Kl = {
2417
2423
  mt_create: function(e) {
2418
2424
  let t = e.priv;
2419
- jt(e, "start_date", ol()), jt(e, "node_uuid", ul()), e.priv.gobj_timer = De(qe(e), "C_TIMER", {}, e), t.periodic_timeout = Et(e, "periodic_timeout");
2425
+ jt(e, "start_date", sl()), jt(e, "node_uuid", _l()), e.priv.gobj_timer = De(qe(e), "C_TIMER", {}, e), t.periodic_timeout = Et(e, "periodic_timeout");
2420
2426
  },
2421
2427
  mt_writing: function(e, t) {},
2422
2428
  mt_start: function(e) {
2423
- return $e(e.priv.gobj_timer), Ul(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
2429
+ return $e(e.priv.gobj_timer), Cl(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
2424
2430
  },
2425
2431
  mt_stop: function(e) {
2426
2432
  return Pe(e.priv.gobj_timer), Ce(e), 0;
@@ -2434,18 +2440,18 @@ var Ml = {
2434
2440
  return Ve(ce()), 0;
2435
2441
  }
2436
2442
  };
2437
- function Kl() {
2443
+ function Yl() {
2438
2444
  return function(e) {
2439
- if (Vl) return cn(`GClass ALREADY created: ${e}`), -1;
2445
+ if (Wl) return fn(`GClass ALREADY created: ${e}`), -1;
2440
2446
  const t = [["ST_IDLE", [[
2441
2447
  "EV_TIMEOUT_PERIODIC",
2442
- Wl,
2448
+ Ml,
2443
2449
  null
2444
2450
  ]]]];
2445
- return (Vl = Z(e, [["EV_TIMEOUT_PERIODIC", C.EVF_OUTPUT_EVENT | C.EVF_NO_WARN_SUBS], [0, 0]], t, Ml, 0, Fl, Gl, 0, 0, 0, 0)) ? 0 : -1;
2451
+ return (Wl = Z(e, [["EV_TIMEOUT_PERIODIC", C.EVF_OUTPUT_EVENT | C.EVF_NO_WARN_SUBS], [0, 0]], t, Kl, 0, Gl, Vl, 0, 0, 0, 0)) ? 0 : -1;
2446
2452
  }("C_YUNO");
2447
2453
  }
2448
- var Yl = "ievent_gate_stack", xl = [
2454
+ var xl = "ievent_gate_stack", Bl = [
2449
2455
  N(y.DTP_STRING, "wanted_yuno_role", S.SDF_RD, "", "wanted yuno role"),
2450
2456
  N(y.DTP_STRING, "wanted_yuno_name", S.SDF_RD, "", "wanted yuno name"),
2451
2457
  N(y.DTP_STRING, "wanted_yuno_service", S.SDF_RD, "", "wanted yuno service"),
@@ -2460,7 +2466,7 @@ var Yl = "ievent_gate_stack", xl = [
2460
2466
  N(y.DTP_INTEGER, "timeout_idack", S.SDF_RD, "5000", "timeout waiting idAck"),
2461
2467
  N(y.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
2462
2468
  v()
2463
- ], Bl = {
2469
+ ], Jl = {
2464
2470
  url: null,
2465
2471
  remote_yuno_name: null,
2466
2472
  remote_yuno_role: null,
@@ -2469,16 +2475,16 @@ var Yl = "ievent_gate_stack", xl = [
2469
2475
  inform_on_close: !1,
2470
2476
  websocket: null,
2471
2477
  inside_on_open: !1
2472
- }, Jl = null;
2473
- function Ql(e) {
2474
- e.priv.websocket && cn("Websocket ALREADY setup");
2478
+ }, Ql = null;
2479
+ function ql(e) {
2480
+ e.priv.websocket && fn("Websocket ALREADY setup");
2475
2481
  const t = St(e, "url");
2476
2482
  let n;
2477
- dn(`====> Starting WebSocket to '${t}' (${Xe(e)})`);
2483
+ bn(`====> Starting WebSocket to '${t}' (${Xe(e)})`);
2478
2484
  try {
2479
2485
  n = new WebSocket(t);
2480
2486
  } catch (n) {
2481
- return cn(`${Xe(e)}: Cannot open WebSocket to '${t}', Error: ${n.message}`), null;
2487
+ return fn(`${Xe(e)}: Cannot open WebSocket to '${t}', Error: ${n.message}`), null;
2482
2488
  }
2483
2489
  return n ? (n.onopen = () => {
2484
2490
  Ct(e, "EV_ON_OPEN", { url: t }, e);
@@ -2488,65 +2494,66 @@ function Ql(e) {
2488
2494
  data: n.data
2489
2495
  }, e);
2490
2496
  }, n.onclose = (n) => {
2491
- nt(e) || (Tt(xe(), "browser_beforeunload") ? fn("Close websocket by unload page") : Ct(e, "EV_ON_CLOSE", {
2497
+ nt(e) || (Tt(xe(), "browser_beforeunload") ? gn("Close websocket by unload page") : Ct(e, "EV_ON_CLOSE", {
2492
2498
  url: t,
2493
2499
  e: n
2494
2500
  }, e));
2495
- }, n) : (cn(`${Xe(e)}: Failed to initialize WebSocket.`), null);
2501
+ }, n) : (fn(`${Xe(e)}: Failed to initialize WebSocket.`), null);
2496
2502
  }
2497
- function ql(e, t = 1e3, n = "") {
2503
+ function zl(e, t = 1e3, n = "") {
2498
2504
  let r = e.priv, l = r.websocket;
2499
2505
  if (r.websocket = null, l && l.readyState !== WebSocket.CLOSED && l.readyState !== WebSocket.CLOSING) {
2500
- dn(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
2506
+ bn(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
2501
2507
  try {
2502
2508
  l.close(t, n);
2503
2509
  } catch (e) {
2504
- cn("Error closing WebSocket:", e.message);
2510
+ fn("Error closing WebSocket:", e.message);
2505
2511
  }
2506
- } else fn("WebSocket is already closed or in the process of closing.");
2512
+ } else gn("WebSocket is already closed or in the process of closing.");
2507
2513
  }
2508
- function zl(e, t, n) {
2509
- let r = ol();
2514
+ function Xl(e, t, n) {
2515
+ let r = sl();
2510
2516
  try {
2511
- dn("\n" + r + " " + t + "\n"), pn(n);
2517
+ bn("\n" + r + " " + t + "\n"), mn(n);
2512
2518
  } catch (e) {
2513
- dn("ERROR in trace_inter_event: " + e);
2519
+ bn("ERROR in trace_inter_event: " + e);
2514
2520
  }
2515
2521
  }
2516
- var Xl = class {
2522
+ var Hl = class {
2517
2523
  constructor(e, t) {
2518
2524
  this.event = e, this.kw = t || {};
2519
2525
  }
2520
2526
  };
2521
- function Hl(e, t, n, r) {
2527
+ function Zl(e, t, n, r) {
2522
2528
  return function(e, t) {
2523
2529
  let n = e.priv, r = JSON.stringify(t);
2524
2530
  if (Tt(xe(), "trace_inter_event")) {
2525
2531
  let n = St(e, "url"), l = qe(xe()) + " ==> " + n, i = Et(xe(), "trace_ievent_callback");
2526
- i ? i(l, t, 1, r.length) : zl(0, l, t);
2532
+ i ? i(l, t, 1, r.length) : Xl(0, l, t);
2527
2533
  }
2534
+ if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return gn(`${Xe(e)}: send_iev(): websocket not open, message lost`), -1;
2528
2535
  try {
2529
2536
  n.websocket.send(r);
2530
2537
  } catch (t) {
2531
- cn(`${Xe(e)}: send_iev(): ${t}`);
2538
+ fn(`${Xe(e)}: send_iev(): ${t}`);
2532
2539
  }
2533
2540
  return 0;
2534
2541
  }(e, function(e, t) {
2535
- return Yn(e) ? (cn("iev_create() event NULL"), null) : new Xl(e, t);
2542
+ return xn(e) ? (fn("iev_create() event NULL"), null) : new Hl(e, t);
2536
2543
  }(t, n));
2537
2544
  }
2538
- function Zl(e, t, n) {
2539
- return Yn(n) && (n = St(e, "wanted_yuno_service")), {
2545
+ function ei(e, t, n) {
2546
+ return xn(n) && (n = St(e, "wanted_yuno_service")), {
2540
2547
  dst_yuno: St(e, "wanted_yuno_name"),
2541
2548
  dst_role: St(e, "wanted_yuno_role"),
2542
2549
  dst_service: n,
2543
2550
  src_yuno: Be(),
2544
2551
  src_role: Je(),
2545
2552
  src_service: t,
2546
- host: ul()
2553
+ host: _l()
2547
2554
  };
2548
2555
  }
2549
- function ei(e) {
2556
+ function ti(e) {
2550
2557
  let t = e.priv, n = Ye(xe()), r = St(xe(), "yuno_version"), l = St(xe(), "yuno_release"), i = St(xe(), "yuno_tag"), o = {
2551
2558
  yuno_role: Je(),
2552
2559
  yuno_id: Qe(),
@@ -2562,33 +2569,33 @@ function ei(e) {
2562
2569
  username: St(xe(), "__username__"),
2563
2570
  launch_id: 0,
2564
2571
  yuno_startdate: St(xe(), "start_date"),
2565
- id: ul(),
2572
+ id: _l(),
2566
2573
  user_agent: "undefined" != typeof window ? window.navigator.userAgent : "",
2567
2574
  language: "undefined" != typeof window ? window.navigator.language : "",
2568
2575
  required_services: Et(xe(), "required_services")
2569
2576
  };
2570
- return Pr(e, o, Yl, Zl(e, qe(Ze(e)), null)), Cr(e, o, "__identity__"), Pl(t.gobj_timer, yt(e, "timeout_idack")), Hl(e, "EV_IDENTITY_CARD", o);
2577
+ return Ur(e, o, xl, ei(e, qe(Ze(e)), null)), Fr(e, o, "__identity__"), Ul(t.gobj_timer, yt(e, "timeout_idack")), Zl(e, "EV_IDENTITY_CARD", o);
2571
2578
  }
2572
- function ti(e, t) {
2573
- if (Yn(t.event)) return -1;
2579
+ function ni(e, t) {
2580
+ if (xn(t.event)) return -1;
2574
2581
  let n = {}, r = t.__global__, l = t.__config__, i = t.__filter__, o = t.__service__, s = t.subscriber;
2575
- return l && (n.__config__ = l), r && (n.__global__ = r), i && (n.__filter__ = i), Pr(e, n, Yl, Zl(e, qe(s), o)), Cr(e, n, "__subscribing__"), Hl(e, t.event, n);
2576
- }
2577
- function ni(e, t, n, r) {
2578
- let l = e.priv;
2579
- return We(e) && (l.websocket = Ql(e)), 0;
2582
+ return l && (n.__config__ = l), r && (n.__global__ = r), i && (n.__filter__ = i), Ur(e, n, xl, ei(e, qe(s), o)), Fr(e, n, "__subscribing__"), Zl(e, t.event, n);
2580
2583
  }
2581
2584
  function ri(e, t, n, r) {
2582
- return dn("Websocket opened: " + e.priv.url), ei(e), 0;
2585
+ let l = e.priv;
2586
+ return We(e) && (l.websocket = ql(e)), 0;
2583
2587
  }
2584
2588
  function li(e, t, n, r) {
2589
+ return bn("Websocket opened: " + e.priv.url), ti(e), 0;
2590
+ }
2591
+ function ii(e, t, n, r) {
2585
2592
  let l = e.priv, i = n.e, o = n.url;
2586
- return un(), fn(`${Xe(e)}: WebSocket closed ${o} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), l.websocket && (l.websocket.onopen = null, l.websocket.onmessage = null, l.websocket.onerror = null, l.websocket.onclose = null, l.websocket = null), l.inform_on_close ? (l.inform_on_close = !1, zt(e, "EV_ON_CLOSE", {
2593
+ return _n(), gn(`${Xe(e)}: WebSocket closed ${o} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), l.websocket && (l.websocket.onopen = null, l.websocket.onmessage = null, l.websocket.onerror = null, l.websocket.onclose = null, l.websocket = null), l.inform_on_close ? (l.inform_on_close = !1, zt(e, "EV_ON_CLOSE", {
2587
2594
  url: o,
2588
2595
  remote_yuno_name: l.remote_yuno_name,
2589
2596
  remote_yuno_role: l.remote_yuno_role,
2590
2597
  remote_yuno_service: l.remote_yuno_service
2591
- })) : (fn(`${Xe(e)}: EV_ON_OPEN_ERROR cannot open ${o} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), zt(e, "EV_ON_OPEN_ERROR", {
2598
+ })) : (gn(`${Xe(e)}: EV_ON_OPEN_ERROR cannot open ${o} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), zt(e, "EV_ON_OPEN_ERROR", {
2592
2599
  url: o,
2593
2600
  remote_yuno_name: l.remote_yuno_name,
2594
2601
  remote_yuno_role: l.remote_yuno_role,
@@ -2596,19 +2603,19 @@ function li(e, t, n, r) {
2596
2603
  code: i.code,
2597
2604
  reason: i.reason,
2598
2605
  was_clean: i.wasClean
2599
- })), We(e) && Pl(l.gobj_timer, yt(e, "timeout_retry")), 0;
2600
- }
2601
- function ii(e, t, n, r) {
2602
- return ei(e), 0;
2606
+ })), We(e) && Ul(l.gobj_timer, yt(e, "timeout_retry")), 0;
2603
2607
  }
2604
2608
  function oi(e, t, n, r) {
2609
+ return ti(e), 0;
2610
+ }
2611
+ function si(e, t, n, r) {
2605
2612
  let l = e.priv;
2606
- Cl(l.gobj_timer);
2607
- let i = Ur(e, n, Yl, !0), o = or(e, i, "src_yuno", ""), s = or(e, i, "src_role", ""), a = or(e, i, "src_service", "");
2613
+ Fl(l.gobj_timer);
2614
+ let i = Cr(e, n, xl, !0), o = sr(e, i, "src_yuno", ""), s = sr(e, i, "src_role", ""), a = sr(e, i, "src_service", "");
2608
2615
  jt(e, "remote_yuno_name", o), jt(e, "remote_yuno_role", s), jt(e, "remote_yuno_service", a);
2609
- let u = lr(e, n, "result", -1, 0), _ = or(e, n, "comment", "", 0), c = or(e, n, "username", "", 0), f = ur(e, n, "services_roles", {});
2616
+ let u = ir(e, n, "result", -1, 0), _ = sr(e, n, "comment", "", 0), c = sr(e, n, "username", "", 0), f = _r(e, n, "services_roles", {});
2610
2617
  if (u < 0) {
2611
- ql(e);
2618
+ zl(e);
2612
2619
  let t = {
2613
2620
  url: St(e, "url"),
2614
2621
  result: u,
@@ -2633,61 +2640,61 @@ function oi(e, t, n, r) {
2633
2640
  }
2634
2641
  l.inside_on_open = !1, function(e) {
2635
2642
  let t = Jt(e, null, null, null);
2636
- for (let n = 0; n < t.length; n++) ti(e, t[n]);
2643
+ for (let n = 0; n < t.length; n++) ni(e, t[n]);
2637
2644
  }(e);
2638
2645
  }
2639
2646
  return 0;
2640
2647
  }
2641
- function si(e, t, n, r) {
2648
+ function ai(e, t, n, r) {
2642
2649
  let l = e.priv.url, i = function(e, t) {
2643
2650
  let n;
2644
2651
  try {
2645
2652
  n = JSON.parse(t);
2646
2653
  } catch (e) {
2647
- return cn("parsing inter_event json: " + e), null;
2654
+ return fn("parsing inter_event json: " + e), null;
2648
2655
  }
2649
- if (!(n instanceof Object)) return cn("parsing inter_event: websocket data not a json object"), null;
2656
+ if (!(n instanceof Object)) return fn("parsing inter_event: websocket data not a json object"), null;
2650
2657
  let r = n.event;
2651
- if (!r) return cn("parsing inter_event: no event"), null;
2652
- if ("string" != typeof r) return cn("parsing inter_event: event not a string"), null;
2658
+ if (!r) return fn("parsing inter_event: no event"), null;
2659
+ if ("string" != typeof r) return fn("parsing inter_event: event not a string"), null;
2653
2660
  let l = n.kw;
2654
2661
  return l ? l instanceof Object ? {
2655
2662
  event: r,
2656
2663
  kw: l || {}
2657
- } : (cn("parsing inter_event: kw not a json object"), null) : (cn("parsing inter_kw: no kw"), null);
2664
+ } : (fn("parsing inter_event: kw not a json object"), null) : (fn("parsing inter_kw: no kw"), null);
2658
2665
  }(0, n.data);
2659
2666
  if (Tt(xe(), "trace_inter_event")) {
2660
2667
  let e = qe(xe()) + " <== " + l, t = n.data.length, r = Et(xe(), "trace_ievent_callback");
2661
- r ? r(e, i, 2, t) : zl(0, e, i);
2668
+ r ? r(e, i, 2, t) : Xl(0, e, i);
2662
2669
  }
2663
2670
  let o = i.event, s = i.kw;
2664
2671
  if ("ST_SESSION" !== It(e)) {
2665
2672
  if (Lt(e, o, C.EVF_PUBLIC_EVENT)) {
2666
2673
  if (0 === Ct(e, o, s, e)) return 0;
2667
- } else cn(`${Xe(e)}: event UNKNOWN in not-session state ${o}`);
2668
- return ql(e), -1;
2674
+ } else fn(`${Xe(e)}: event UNKNOWN in not-session state ${o}`);
2675
+ return zl(e), -1;
2669
2676
  }
2670
2677
  i = null;
2671
- let a = Fr(e, s), u = Ur(e, s, Yl), _ = or(e, u, "dst_role", "");
2672
- if (_ !== Je()) return cn(`"It's not my role, dst_role: ${_}, my_role: ${Je()}`), 0;
2673
- let c = or(e, u, "dst_service", "");
2678
+ let a = Gr(e, s), u = Cr(e, s, xl), _ = sr(e, u, "dst_role", "");
2679
+ if (_ !== Je()) return fn(`"It's not my role, dst_role: ${_}, my_role: ${Je()}`), 0;
2680
+ let c = sr(e, u, "dst_service", "");
2674
2681
  if ("__subscribing__" === a) return -1;
2675
2682
  if ("__unsubscribing__" === a) return -1;
2676
2683
  if (Lt(e, o, C.EVF_PUBLIC_EVENT)) return Ct(e, o, s, e), 0;
2677
2684
  let f = fe(c, !0);
2678
2685
  if (f) {
2679
- if (!Lt(f, o, C.EVF_PUBLIC_EVENT)) return cn(`${Xe(e)}: Service found but no event or not public, service '${Xe(f)}', ev '${o}'`), -1;
2686
+ if (!Lt(f, o, C.EVF_PUBLIC_EVENT)) return fn(`${Xe(e)}: Service found but no event or not public, service '${Xe(f)}', ev '${o}'`), -1;
2680
2687
  Ct(f, o, s, e);
2681
2688
  } else tt(e) ? Ct(Ze(e), o, s, e) : zt(e, o, s);
2682
2689
  return 0;
2683
2690
  }
2684
- function ai(e, t, n, r) {
2691
+ function ui(e, t, n, r) {
2685
2692
  return 0;
2686
2693
  }
2687
- function ui(e, t, n, r) {
2694
+ function _i(e, t, n, r) {
2688
2695
  return 0;
2689
2696
  }
2690
- var _i = {
2697
+ var ci = {
2691
2698
  mt_create: function(e) {
2692
2699
  let t = e.priv;
2693
2700
  t.gobj_timer = De(qe(e), "C_TIMER", {}, e), t.url = St(e, "url"), t.remote_yuno_name = St(e, "remote_yuno_name"), t.remote_yuno_role = St(e, "remote_yuno_role"), t.remote_yuno_service = St(e, "remote_yuno_service"), jt(e, "wanted_yuno_name", t.remote_yuno_name), jt(e, "wanted_yuno_role", t.remote_yuno_role), jt(e, "wanted_yuno_service", t.remote_yuno_service);
@@ -2711,71 +2718,71 @@ var _i = {
2711
2718
  },
2712
2719
  mt_start: function(e) {
2713
2720
  let t = e.priv;
2714
- return $e(t.gobj_timer), t.websocket = Ql(e), 0;
2721
+ return $e(t.gobj_timer), t.websocket = ql(e), 0;
2715
2722
  },
2716
2723
  mt_stop: function(e) {
2717
2724
  let t = e.priv;
2718
- return Cl(t.gobj_timer), Pe(t.gobj_timer), t.websocket && ql(e), 0;
2725
+ return Fl(t.gobj_timer), Pe(t.gobj_timer), t.websocket && zl(e), 0;
2719
2726
  },
2720
2727
  mt_destroy: function(e) {},
2721
2728
  mt_stats: function(e, t, n, r) {
2722
- if ("ST_SESSION" !== It(e)) return cn("Not in session"), null;
2729
+ if ("ST_SESSION" !== It(e)) return fn("Not in session"), null;
2723
2730
  n || (n = {});
2724
- let l = Zl(e, qe(r), or(e, n, "service", null, 0)), i = ur(e, n, "__md_stats__", null, Zt.KW_EXTRACT);
2725
- return i || (i = {}), Pr(e, n, "stats_stack", {
2731
+ let l = ei(e, qe(r), sr(e, n, "service", null, 0)), i = _r(e, n, "__md_stats__", null, Zt.KW_EXTRACT);
2732
+ return i || (i = {}), Ur(e, n, "stats_stack", {
2726
2733
  stats: t,
2727
2734
  kw: i
2728
- }), Pr(e, n, Yl, l), n.__stats__ = t, Cr(e, n, "__stats__"), Hl(e, "EV_MT_STATS", n, r), null;
2735
+ }), Ur(e, n, xl, l), n.__stats__ = t, Fr(e, n, "__stats__"), Zl(e, "EV_MT_STATS", n, r), null;
2729
2736
  },
2730
2737
  mt_command_parser: function(e, t, n, r) {
2731
- if ("ST_SESSION" !== It(e)) return cn("Not in session"), null;
2738
+ if ("ST_SESSION" !== It(e)) return fn("Not in session"), null;
2732
2739
  n || (n = {});
2733
- let l = Zl(e, qe(r), or(e, n, "service", "", 0)), i = ur(e, n, "__md_command__", null, Zt.KW_EXTRACT);
2734
- return i || (i = {}), Pr(e, n, "command_stack", {
2740
+ let l = ei(e, qe(r), sr(e, n, "service", "", 0)), i = _r(e, n, "__md_command__", null, Zt.KW_EXTRACT);
2741
+ return i || (i = {}), Ur(e, n, "command_stack", {
2735
2742
  command: t,
2736
2743
  kw: i
2737
- }), Pr(e, n, Yl, l), n.__command__ = t, Cr(e, n, "__command__"), Hl(e, "EV_MT_COMMAND", n, r), null;
2744
+ }), Ur(e, n, xl, l), n.__command__ = t, Fr(e, n, "__command__"), Zl(e, "EV_MT_COMMAND", n, r), null;
2738
2745
  },
2739
2746
  mt_inject_event: function(e, t, n, r) {
2740
2747
  if ("ST_SESSION" !== It(e)) return window.console.error("Not in session"), -1;
2741
- if (n || (n = {}), Ur(e, n, Yl));
2748
+ if (n || (n = {}), Cr(e, n, xl));
2742
2749
  else {
2743
- let l = Zl(e, qe(r), or(e, n, "__service__", 0, 0));
2744
- vn(n, "__service__"), Pr(e, n, "__message__", t), Pr(e, n, Yl, l);
2750
+ let l = ei(e, qe(r), sr(e, n, "__service__", 0, 0));
2751
+ Nn(n, "__service__"), Ur(e, n, "__message__", t), Ur(e, n, xl, l);
2745
2752
  }
2746
- return Cr(e, n, "__message__"), Hl(e, t, n, r);
2753
+ return Fr(e, n, "__message__"), Zl(e, t, n, r);
2747
2754
  },
2748
2755
  mt_subscription_added: function(e, t) {
2749
2756
  let n = e.priv;
2750
- return "ST_SESSION" !== It(e) || n.inside_on_open ? 0 : ti(e, t);
2757
+ return "ST_SESSION" === It(e) && n.websocket ? n.inside_on_open ? 0 : ni(e, t) : 0;
2751
2758
  },
2752
2759
  mt_subscription_deleted: function(e, t) {
2753
2760
  let n = e.priv;
2754
- if ("ST_SESSION" !== It(e)) return 0;
2761
+ if ("ST_SESSION" !== It(e) || !n.websocket) return 0;
2755
2762
  if (n.inside_on_open) return 0;
2756
- if (Yn(t.event)) return 0;
2763
+ if (xn(t.event)) return 0;
2757
2764
  let r = {}, l = t.__global__, i = t.__config__, o = t.__filter__, s = t.__service__, a = t.subscriber;
2758
- return i && (r.__config__ = i), l && (r.__global__ = l), o && (r.__filter__ = o), Pr(e, r, Yl, Zl(e, qe(a), s)), Cr(e, r, "__unsubscribing__"), Hl(e, t.event, r, e);
2765
+ return i && (r.__config__ = i), l && (r.__global__ = l), o && (r.__filter__ = o), Ur(e, r, xl, ei(e, qe(a), s)), Fr(e, r, "__unsubscribing__"), Zl(e, t.event, r, e);
2759
2766
  }
2760
2767
  };
2761
- function ci() {
2768
+ function fi() {
2762
2769
  return function(e) {
2763
- if (Jl) return cn(`GClass ALREADY created: ${e}`), -1;
2770
+ if (Ql) return fn(`GClass ALREADY created: ${e}`), -1;
2764
2771
  const t = [
2765
2772
  ["ST_DISCONNECTED", [
2766
2773
  [
2767
2774
  "EV_ON_OPEN",
2768
- ri,
2775
+ li,
2769
2776
  "ST_WAIT_IDENTITY_CARD_ACK"
2770
2777
  ],
2771
2778
  [
2772
2779
  "EV_ON_CLOSE",
2773
- li,
2780
+ ii,
2774
2781
  null
2775
2782
  ],
2776
2783
  [
2777
2784
  "EV_TIMEOUT",
2778
- ni,
2785
+ ri,
2779
2786
  null
2780
2787
  ],
2781
2788
  [
@@ -2787,22 +2794,22 @@ function ci() {
2787
2794
  ["ST_WAIT_IDENTITY_CARD_ACK", [
2788
2795
  [
2789
2796
  "EV_ON_MESSAGE",
2790
- si,
2797
+ ai,
2791
2798
  null
2792
2799
  ],
2793
2800
  [
2794
2801
  "EV_IDENTITY_CARD_ACK",
2795
- oi,
2802
+ si,
2796
2803
  null
2797
2804
  ],
2798
2805
  [
2799
2806
  "EV_ON_CLOSE",
2800
- li,
2807
+ ii,
2801
2808
  "ST_DISCONNECTED"
2802
2809
  ],
2803
2810
  [
2804
2811
  "EV_TIMEOUT",
2805
- ii,
2812
+ oi,
2806
2813
  null
2807
2814
  ],
2808
2815
  [
@@ -2814,22 +2821,22 @@ function ci() {
2814
2821
  ["ST_SESSION", [
2815
2822
  [
2816
2823
  "EV_ON_MESSAGE",
2817
- si,
2824
+ ai,
2818
2825
  null
2819
2826
  ],
2820
2827
  [
2821
2828
  "EV_MT_STATS",
2822
- ai,
2829
+ ui,
2823
2830
  null
2824
2831
  ],
2825
2832
  [
2826
2833
  "EV_MT_COMMAND",
2827
- ui,
2834
+ _i,
2828
2835
  null
2829
2836
  ],
2830
2837
  [
2831
2838
  "EV_ON_CLOSE",
2832
- li,
2839
+ ii,
2833
2840
  "ST_DISCONNECTED"
2834
2841
  ],
2835
2842
  [
@@ -2840,7 +2847,7 @@ function ci() {
2840
2847
  ]],
2841
2848
  [null, null]
2842
2849
  ];
2843
- return (Jl = Z(e, [
2850
+ return (Ql = Z(e, [
2844
2851
  ["EV_ON_MESSAGE", C.EVF_OUTPUT_EVENT],
2845
2852
  ["EV_IDENTITY_CARD_ACK", C.EVF_PUBLIC_EVENT],
2846
2853
  ["EV_ON_ID_NAK", C.EVF_PUBLIC_EVENT | C.EVF_OUTPUT_EVENT],
@@ -2851,9 +2858,9 @@ function ci() {
2851
2858
  ["EV_ON_OPEN_ERROR", C.EVF_OUTPUT_EVENT | C.EVF_NO_WARN_SUBS],
2852
2859
  ["EV_TIMEOUT", 0],
2853
2860
  [null, 0]
2854
- ], t, _i, 0, xl, Bl, 0, 0, 0, L.gcflag_no_check_output_events)) ? 0 : -1;
2861
+ ], t, ci, 0, Bl, Jl, 0, 0, 0, L.gcflag_no_check_output_events)) ? 0 : -1;
2855
2862
  }("C_IEVENT_CLI");
2856
2863
  }
2857
- export { k as GObj, N as SDATA, j as SDATAAUTHZ, w as SDATACM, D as SDATACM2, I as SDATADF, R as SDATAPM, $ as SDATAPM0, v as SDATA_END, O as SDataDesc, a as YUNETA_VERSION, E as __yuno__, i as build_command_response, gl as build_path, s as build_stats_response, _l as clean_name, Cl as clear_timeout, qn as cmp_two_simple_json, l as command_parser, tl as createElement2, el as createOneHtml, qr as create_json_record, Rl as create_template_record, ol as current_timestamp, y as data_type_t, El as db_list_persistent_attrs, bl as db_load_persistent_attrs, ml as db_remove_persistent_attrs, pl as db_save_persistent_attrs, fl as debounce, Ar as delete_from_list, En as duplicate_objects, Yn as empty_string, Hr as escapeHtml, C as event_flag_t, le as gclass_add_ev_action, oe as gclass_add_event_type, re as gclass_add_state, ae as gclass_check_fsm, Z as gclass_create, se as gclass_event_type, ue as gclass_find_by_name, L as gclass_flag_t, ee as gclass_unregister, nl as getPositionRelativeToBody, cl as get_function_name, sl as get_now, rt as gobj_bottom_gobj, At as gobj_change_parent, $t as gobj_change_state, Xt as gobj_command, Re as gobj_create, Se as gobj_create2, Ne as gobj_create_default_service, De as gobj_create_pure_child, ve as gobj_create_service, we as gobj_create_volatil, Oe as gobj_create_yuno, It as gobj_current_state, ce as gobj_default_service, je as gobj_destroy, gt as gobj_find_child, ct as gobj_find_gobj, fe as gobj_find_service, qt as gobj_find_subscribings, Jt as gobj_find_subscriptions, P as gobj_flag_t, He as gobj_full_name, ze as gobj_gclass_name, mt as gobj_has_attr, Lt as gobj_has_event, Pt as gobj_has_output_event, z as gobj_hsdata, nt as gobj_is_destroying, Ye as gobj_is_playing, tt as gobj_is_pure_child, We as gobj_is_running, Ke as gobj_is_service, et as gobj_is_volatil, he as gobj_list_persistent_attrs, Qt as gobj_list_subscriptions, pe as gobj_load_persistent_attrs, dt as gobj_match_children, bt as gobj_match_children_tree, ft as gobj_match_gobj, qe as gobj_name, Ze as gobj_parent, Ve as gobj_pause, Ge as gobj_play, Ut as gobj_post_event, zt as gobj_publish_event, Et as gobj_read_attr, ht as gobj_read_attrs, Tt as gobj_read_bool_attr, yt as gobj_read_integer_attr, Ot as gobj_read_pointer_attr, St as gobj_read_str_attr, Ee as gobj_remove_persistent_attrs, Nt as gobj_reset_volatil_attrs, me as gobj_save_persistent_attrs, pt as gobj_search_path, Ct as gobj_send_event, _e as gobj_services, lt as gobj_set_bottom_gobj, K as gobj_set_trace_machine_format, Xe as gobj_short_name, $e as gobj_start, Ae as gobj_start_children, Le as gobj_start_tree, B as gobj_start_up, Ht as gobj_stats, Pe as gobj_stop, Ce as gobj_stop_children, Fe as gobj_stop_tree, Yt as gobj_subscribe_event, Y as gobj_trace_machine_format, xt as gobj_unsubscribe_event, Bt as gobj_unsubscribe_list, ot as gobj_walk_gobj_children, st as gobj_walk_gobj_children_tree, vt as gobj_write_attr, wt as gobj_write_attrs, Dt as gobj_write_bool_attr, Rt as gobj_write_integer_attr, jt as gobj_write_str_attr, xe as gobj_yuno, Qe as gobj_yuno_id, Be as gobj_yuno_name, Je as gobj_yuno_role, jr as id_index_in_obj_list, al as index_in_list, Pn as is_array, Fn as is_boolean, Wn as is_date, Mn as is_function, Kn as is_gobj, Xn as is_metadata_key, Gn as is_null, Cn as is_number, Ln as is_object, Hn as is_private_key, Vn as is_pure_number, Un as is_string, Yr as jdb_delete, Br as jdb_get, Jr as jdb_get_by_idx, xr as jdb_get_topic, Mr as jdb_init, Kr as jdb_update, Dn as json_array_append, Rn as json_array_append_new, $n as json_array_extend, jn as json_array_remove, An as json_array_size, mn as json_deep_copy, hn as json_is_identical, vn as json_object_del, On as json_object_get, Nn as json_object_set, wn as json_object_set_new, In as json_object_size, Tn as json_object_update, yn as json_object_update_existing, Sn as json_object_update_missing, kn as json_size, Xr as jwt2json, zr as jwtDecode, Er as kw_clone_by_keys, hr as kw_clone_by_not_keys, mr as kw_collect, nr as kw_delete, br as kw_find_json_in_list, tr as kw_find_path, Zt as kw_flag_t, rr as kw_get_bool, ar as kw_get_dict, ur as kw_get_dict_value, lr as kw_get_int, _r as kw_get_list, Tr as kw_get_local_storage_value, sr as kw_get_pointer, ir as kw_get_real, or as kw_get_str, er as kw_has_key, dr as kw_match_simple, Zn as kw_pop, Sr as kw_remove_local_storage_value, pr as kw_select, cr as kw_set_dict_value, yr as kw_set_local_storage_value, fr as kw_set_subdict_value, vr as kwid_collect, wr as kwid_find_one_record, Dr as kwid_get_ids, Or as kwid_match_id, Nr as kwid_new_dict, Rr as list2options, Gr as load_json_file, dn as log_debug, cn as log_error, gn as log_info, fn as log_warning, Fr as msg_iev_get_msg_type, Ur as msg_iev_get_stack, Pr as msg_iev_push_stack, kr as msg_iev_read_key, Cr as msg_iev_set_msg_type, Lr as msg_iev_write_key, ul as node_uuid, xn as parseBoolean, rl as parseSVG, ll as refresh_language, ci as register_c_ievent_cli, Ll as register_c_timer, Kl as register_c_yuno, Zr as safeSrc, S as sdata_flag_t, Vr as send_http_json_post, sn as set_log_callback, un as set_remote_log_functions, Pl as set_timeout, Ul as set_timeout_periodic, t as sprintf, o as stats_parser, $r as str_in_list, Qn as strcasecmp, Jn as strcmp, Bn as strncmp, Ir as strs_in_list, zn as strstr, Dl as template_get_field_desc, il as timeTracker, pn as trace_json, bn as trace_msg, Tl as treedb_decoder_fkey, Sl as treedb_decoder_hook, yl as treedb_encoder_fkey, wl as treedb_get_field_desc, hl as treedb_hook_data_size, n as vsprintf };
2864
+ export { A as GObj, N as SDATA, j as SDATAAUTHZ, w as SDATACM, D as SDATACM2, I as SDATADF, R as SDATAPM, $ as SDATAPM0, v as SDATA_END, O as SDataDesc, a as YUNETA_VERSION, E as __yuno__, i as build_command_response, dl as build_path, s as build_stats_response, cl as clean_name, Fl as clear_timeout, zn as cmp_two_simple_json, l as command_parser, nl as createElement2, tl as createOneHtml, zr as create_json_record, jl as create_template_record, sl as current_timestamp, y as data_type_t, hl as db_list_persistent_attrs, pl as db_load_persistent_attrs, El as db_remove_persistent_attrs, ml as db_save_persistent_attrs, gl as debounce, Ar as delete_from_list, hn as duplicate_objects, xn as empty_string, Zr as escapeHtml, C as event_flag_t, le as gclass_add_ev_action, oe as gclass_add_event_type, re as gclass_add_state, ae as gclass_check_fsm, Z as gclass_create, se as gclass_event_type, ue as gclass_find_by_name, L as gclass_flag_t, ee as gclass_unregister, rl as getPositionRelativeToBody, fl as get_function_name, al as get_now, rt as gobj_bottom_gobj, kt as gobj_change_parent, $t as gobj_change_state, Xt as gobj_command, Re as gobj_create, Se as gobj_create2, Ne as gobj_create_default_service, De as gobj_create_pure_child, ve as gobj_create_service, we as gobj_create_volatil, Oe as gobj_create_yuno, It as gobj_current_state, ce as gobj_default_service, je as gobj_destroy, gt as gobj_find_child, ct as gobj_find_gobj, fe as gobj_find_service, qt as gobj_find_subscribings, Jt as gobj_find_subscriptions, P as gobj_flag_t, He as gobj_full_name, ze as gobj_gclass_name, mt as gobj_has_attr, Lt as gobj_has_event, Pt as gobj_has_output_event, z as gobj_hsdata, nt as gobj_is_destroying, Ye as gobj_is_playing, tt as gobj_is_pure_child, We as gobj_is_running, Ke as gobj_is_service, et as gobj_is_volatil, he as gobj_list_persistent_attrs, Qt as gobj_list_subscriptions, pe as gobj_load_persistent_attrs, dt as gobj_match_children, bt as gobj_match_children_tree, ft as gobj_match_gobj, qe as gobj_name, Ze as gobj_parent, Ve as gobj_pause, Ge as gobj_play, Ut as gobj_post_event, zt as gobj_publish_event, Et as gobj_read_attr, ht as gobj_read_attrs, Tt as gobj_read_bool_attr, yt as gobj_read_integer_attr, Ot as gobj_read_pointer_attr, St as gobj_read_str_attr, Ee as gobj_remove_persistent_attrs, Nt as gobj_reset_volatil_attrs, me as gobj_save_persistent_attrs, pt as gobj_search_path, Ct as gobj_send_event, _e as gobj_services, lt as gobj_set_bottom_gobj, K as gobj_set_trace_machine_format, Xe as gobj_short_name, $e as gobj_start, ke as gobj_start_children, Le as gobj_start_tree, B as gobj_start_up, Ht as gobj_stats, Pe as gobj_stop, Ce as gobj_stop_children, Fe as gobj_stop_tree, Yt as gobj_subscribe_event, Y as gobj_trace_machine_format, xt as gobj_unsubscribe_event, Bt as gobj_unsubscribe_list, ot as gobj_walk_gobj_children, st as gobj_walk_gobj_children_tree, vt as gobj_write_attr, wt as gobj_write_attrs, Dt as gobj_write_bool_attr, Rt as gobj_write_integer_attr, jt as gobj_write_str_attr, xe as gobj_yuno, Qe as gobj_yuno_id, Be as gobj_yuno_name, Je as gobj_yuno_role, $r as id_index_in_obj_list, ul as index_in_list, Un as is_array, Gn as is_boolean, Mn as is_date, Kn as is_function, Yn as is_gobj, Hn as is_metadata_key, Vn as is_null, Fn as is_number, Pn as is_object, Zn as is_private_key, Wn as is_pure_number, Cn as is_string, xr as jdb_delete, Jr as jdb_get, Qr as jdb_get_by_idx, Br as jdb_get_topic, Kr as jdb_init, Yr as jdb_update, Rn as json_array_append, jn as json_array_append_new, In as json_array_extend, $n as json_array_remove, An as json_array_size, En as json_deep_copy, Tn as json_is_identical, Nn as json_object_del, vn as json_object_get, wn as json_object_set, Dn as json_object_set_new, kn as json_object_size, yn as json_object_update, Sn as json_object_update_existing, On as json_object_update_missing, Ln as json_size, Hr as jwt2json, Xr as jwtDecode, hr as kw_clone_by_keys, Tr as kw_clone_by_not_keys, Er as kw_collect, rr as kw_delete, pr as kw_find_json_in_list, nr as kw_find_path, Zt as kw_flag_t, lr as kw_get_bool, ur as kw_get_dict, _r as kw_get_dict_value, ir as kw_get_int, cr as kw_get_list, yr as kw_get_local_storage_value, ar as kw_get_pointer, or as kw_get_real, sr as kw_get_str, tr as kw_has_key, br as kw_match_simple, er as kw_pop, Or as kw_remove_local_storage_value, mr as kw_select, fr as kw_set_dict_value, Sr as kw_set_local_storage_value, gr as kw_set_subdict_value, Nr as kwid_collect, Dr as kwid_find_one_record, Rr as kwid_get_ids, vr as kwid_match_id, wr as kwid_new_dict, jr as list2options, Vr as load_json_file, bn as log_debug, fn as log_error, dn as log_info, gn as log_warning, Gr as msg_iev_get_msg_type, Cr as msg_iev_get_stack, Ur as msg_iev_push_stack, Lr as msg_iev_read_key, Fr as msg_iev_set_msg_type, Pr as msg_iev_write_key, _l as node_uuid, Bn as parseBoolean, ll as parseSVG, il as refresh_language, fi as register_c_ievent_cli, Pl as register_c_timer, Yl as register_c_yuno, el as safeSrc, S as sdata_flag_t, Wr as send_http_json_post, sn as set_log_callback, _n as set_remote_log_functions, Ul as set_timeout, Cl as set_timeout_periodic, t as sprintf, o as stats_parser, Ir as str_in_list, qn as strcasecmp, Qn as strcmp, Jn as strncmp, kr as strs_in_list, Xn as strstr, Rl as template_get_field_desc, ol as timeTracker, mn as trace_json, pn as trace_msg, yl as treedb_decoder_fkey, Ol as treedb_decoder_hook, Sl as treedb_encoder_fkey, Dl as treedb_get_field_desc, Tl as treedb_hook_data_size, n as vsprintf };
2858
2865
 
2859
2866
  //# sourceMappingURL=gobj-js.es.min.js.map