@yuneta/gobj-ui 1.0.1 → 1.0.3

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.
@@ -26,7 +26,7 @@ var __copyProps = (to, from, except, desc) => {
26
26
  }
27
27
  return to;
28
28
  };
29
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
29
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule || !__hasOwnProp.call(mod, "default") ? __defProp(target, "default", {
30
30
  value: mod,
31
31
  enumerable: true
32
32
  }) : target, mod));
@@ -874,9 +874,7 @@ function set_theme(gobj, theme) {
874
874
  case "dark":
875
875
  elm = document.querySelector("#theme-change i.theme-dark");
876
876
  break;
877
- default:
878
- elm = document.querySelector("#theme-change i.theme-light");
879
- break;
877
+ default: elm = document.querySelector("#theme-change i.theme-light");
880
878
  }
881
879
  document.documentElement.setAttribute("data-theme", theme);
882
880
  if (elm) elm.style.display = "flex";
@@ -892,7 +890,10 @@ function change_language(new_language) {
892
890
  i18next.default.changeLanguage(new_language);
893
891
  (0, _yuneta_gobj_js.refresh_language)(null, i18next.t);
894
892
  const iframe = document.getElementById("iframe-publi-page");
895
- if (iframe && iframe.contentWindow) (0, _yuneta_gobj_js.refresh_language)(iframe.contentDocument || iframe.contentWindow.document, i18next.t);
893
+ if (iframe && iframe.contentWindow) {
894
+ let iframeDocument = iframe.contentDocument || iframe.contentWindow.document;
895
+ (0, _yuneta_gobj_js.refresh_language)(iframeDocument, i18next.t);
896
+ }
896
897
  window.dispatchEvent(new Event("resize"));
897
898
  }
898
899
  /************************************************************
@@ -1041,7 +1042,8 @@ function get_login_html(logo_wide_svg) {
1041
1042
  function show_login_form(gobj) {
1042
1043
  let $element = document.getElementById("modal-login");
1043
1044
  if (!$element) {
1044
- $element = (0, _yuneta_gobj_js.createOneHtml)(get_login_html((0, _yuneta_gobj_js.gobj_read_attr)(gobj, "logo_wide_svg") || ""));
1045
+ let logo_wide_svg = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "logo_wide_svg") || "";
1046
+ $element = (0, _yuneta_gobj_js.createOneHtml)(get_login_html(logo_wide_svg));
1045
1047
  (0, _yuneta_gobj_js.refresh_language)($element, i18next.t);
1046
1048
  $element.addEventListener("click", function(event) {
1047
1049
  event.stopPropagation();
@@ -1242,9 +1244,7 @@ function display_volatil_modal({ title, msg, callback, type, x_close, buttons })
1242
1244
  background_color = "has-background-warning";
1243
1245
  break;
1244
1246
  case "error":
1245
- case "danger":
1246
- background_color = "has-background-danger";
1247
- break;
1247
+ case "danger": background_color = "has-background-danger";
1248
1248
  }
1249
1249
  let title_ = !title ? [] : [
1250
1250
  "p",
@@ -1490,14 +1490,16 @@ function resize_and_subscribe_to_system(gobj) {
1490
1490
  ************************************************/
1491
1491
  function ac_do_login(gobj, event, kw, src) {
1492
1492
  set_error_login_message(gobj, "");
1493
- (0, _yuneta_gobj_js.gobj_send_event)((0, _yuneta_gobj_js.gobj_find_service)("__login__", true), "EV_DO_LOGIN", kw, gobj);
1493
+ let __login__ = (0, _yuneta_gobj_js.gobj_find_service)("__login__", true);
1494
+ (0, _yuneta_gobj_js.gobj_send_event)(__login__, "EV_DO_LOGIN", kw, gobj);
1494
1495
  return 0;
1495
1496
  }
1496
1497
  /************************************************
1497
1498
  *
1498
1499
  ************************************************/
1499
1500
  function ac_do_logout(gobj, event, kw, src) {
1500
- (0, _yuneta_gobj_js.gobj_send_event)((0, _yuneta_gobj_js.gobj_find_service)("__login__", true), "EV_DO_LOGOUT", kw, gobj);
1501
+ let __login__ = (0, _yuneta_gobj_js.gobj_find_service)("__login__", true);
1502
+ (0, _yuneta_gobj_js.gobj_send_event)(__login__, "EV_DO_LOGOUT", kw, gobj);
1501
1503
  return 0;
1502
1504
  }
1503
1505
  function ac_do_recovery_password(gobj, event, kw, src) {
@@ -1586,9 +1588,7 @@ function ac_select_theme(gobj, event, kw, src) {
1586
1588
  case "dark":
1587
1589
  new_theme = "light";
1588
1590
  break;
1589
- default:
1590
- new_theme = "dark";
1591
- break;
1591
+ default: new_theme = "dark";
1592
1592
  }
1593
1593
  set_theme(gobj, new_theme);
1594
1594
  (0, _yuneta_gobj_js.kw_set_local_storage_value)("theme", new_theme);
@@ -1725,7 +1725,7 @@ function create_gclass$12(gclass_name) {
1725
1725
  null
1726
1726
  ]
1727
1727
  ]]];
1728
- __gclass__$12 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
1728
+ const event_types = [
1729
1729
  ["EV_LOGIN_ACCEPTED", 0],
1730
1730
  ["EV_LOGIN_DENIED", 0],
1731
1731
  ["EV_LOGIN_REFRESHED", 0],
@@ -1743,7 +1743,8 @@ function create_gclass$12(gclass_name) {
1743
1743
  ["EV_ON_CLOSE", 0],
1744
1744
  ["EV_DO_RECOVERY_PASSWORD", 0],
1745
1745
  ["EV_TIMEOUT", 0]
1746
- ], states, gmt$12, 0, attrs_table$12, PRIVATE_DATA$12, 0, 0, 0, 0);
1746
+ ];
1747
+ __gclass__$12 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, event_types, states, gmt$12, 0, attrs_table$12, PRIVATE_DATA$12, 0, 0, 0, 0);
1747
1748
  if (!__gclass__$12) return -1;
1748
1749
  return 0;
1749
1750
  }
@@ -1810,7 +1811,8 @@ var __gclass__$11 = null;
1810
1811
  function mt_create$11(gobj) {
1811
1812
  const subscriber = (0, _yuneta_gobj_js.gobj_read_pointer_attr)(gobj, "subscriber");
1812
1813
  if (subscriber) (0, _yuneta_gobj_js.gobj_subscribe_event)(gobj, null, {}, subscriber);
1813
- (0, _yuneta_gobj_js.gobj_write_attr)(gobj, "window_id", "window-" + (0, _yuneta_gobj_js.clean_name)((0, _yuneta_gobj_js.gobj_short_name)(gobj)));
1814
+ let window_id = "window-" + (0, _yuneta_gobj_js.clean_name)((0, _yuneta_gobj_js.gobj_short_name)(gobj));
1815
+ (0, _yuneta_gobj_js.gobj_write_attr)(gobj, "window_id", window_id);
1814
1816
  build_ui$8(gobj);
1815
1817
  let on_win_resize = function() {
1816
1818
  handleResize(gobj);
@@ -2383,7 +2385,7 @@ function create_gclass$11(gclass_name) {
2383
2385
  null
2384
2386
  ]
2385
2387
  ]]];
2386
- __gclass__$11 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
2388
+ const event_types = [
2387
2389
  ["EV_WINDOW_TO_CLOSE", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS],
2388
2390
  ["EV_WINDOW_MOVED", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS],
2389
2391
  ["EV_WINDOW_RESIZED", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS],
@@ -2391,7 +2393,8 @@ function create_gclass$11(gclass_name) {
2391
2393
  ["EV_REFRESH", 0],
2392
2394
  ["EV_SHOW", 0],
2393
2395
  ["EV_HIDE", 0]
2394
- ], states, gmt$11, 0, attrs_table$11, PRIVATE_DATA$11, 0, 0, 0, 0);
2396
+ ];
2397
+ __gclass__$11 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, event_types, states, gmt$11, 0, attrs_table$11, PRIVATE_DATA$11, 0, 0, 0, 0);
2395
2398
  if (!__gclass__$11) return -1;
2396
2399
  return 0;
2397
2400
  }
@@ -2499,7 +2502,8 @@ function mt_child_removed(gobj, child) {
2499
2502
  * Build UI
2500
2503
  ************************************************************/
2501
2504
  function build_ui$7(gobj) {
2502
- (0, _yuneta_gobj_js.gobj_write_attr)(gobj, "$container", (0, _yuneta_gobj_js.createElement2)([
2505
+ let tabs_style = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "tabs_style");
2506
+ let $container = (0, _yuneta_gobj_js.createElement2)([
2503
2507
  "div",
2504
2508
  {
2505
2509
  class: `yui_tabs`,
@@ -2511,7 +2515,7 @@ function build_ui$7(gobj) {
2511
2515
  [[
2512
2516
  "div",
2513
2517
  {
2514
- class: `tabs ${(0, _yuneta_gobj_js.gobj_read_attr)(gobj, "tabs_style")}`,
2518
+ class: `tabs ${tabs_style}`,
2515
2519
  style: ""
2516
2520
  },
2517
2521
  [["ul", {}]]
@@ -2524,7 +2528,8 @@ function build_ui$7(gobj) {
2524
2528
  },
2525
2529
  []
2526
2530
  ]]
2527
- ]));
2531
+ ]);
2532
+ (0, _yuneta_gobj_js.gobj_write_attr)(gobj, "$container", $container);
2528
2533
  }
2529
2534
  /************************************************************
2530
2535
  * Destroy UI
@@ -2744,7 +2749,8 @@ function mt_create$9(gobj) {
2744
2749
  let subscriber = (0, _yuneta_gobj_js.gobj_read_pointer_attr)(gobj, "subscriber");
2745
2750
  if (!subscriber) subscriber = (0, _yuneta_gobj_js.gobj_parent)(gobj);
2746
2751
  (0, _yuneta_gobj_js.gobj_subscribe_event)(gobj, null, {}, subscriber);
2747
- (0, _yuneta_gobj_js.gobj_write_attr)(gobj, "form_id", "form" + (0, _yuneta_gobj_js.clean_name)((0, _yuneta_gobj_js.gobj_name)(gobj)));
2752
+ let name = (0, _yuneta_gobj_js.clean_name)((0, _yuneta_gobj_js.gobj_name)(gobj));
2753
+ (0, _yuneta_gobj_js.gobj_write_attr)(gobj, "form_id", "form" + name);
2748
2754
  build_ui$6(gobj);
2749
2755
  }
2750
2756
  /************************************************************
@@ -2824,7 +2830,8 @@ function set_changed_stated(gobj, changed) {
2824
2830
  async function readClipboard$1(gobj) {
2825
2831
  try {
2826
2832
  const text = await navigator.clipboard.readText();
2827
- (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_PASTE_RECORD", JSON.parse(text), gobj);
2833
+ let kw = JSON.parse(text);
2834
+ (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_PASTE_RECORD", kw, gobj);
2828
2835
  } catch (error) {
2829
2836
  (0, _yuneta_gobj_js.log_error)(`Failed to read clipboard contents: ${error}`);
2830
2837
  }
@@ -3004,8 +3011,9 @@ function destroy_ui$6(gobj) {
3004
3011
  * Build form with bulma and createElement2
3005
3012
  ******************************************************************/
3006
3013
  function build_form(gobj) {
3014
+ let form_id = (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "form_id");
3007
3015
  let $form = (0, _yuneta_gobj_js.createElement2)(["form", {
3008
- id: (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "form_id"),
3016
+ id: form_id,
3009
3017
  class: "yui-form"
3010
3018
  }]);
3011
3019
  let template = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "template");
@@ -3101,7 +3109,6 @@ function build_form_field_conf(gobj, field_desc) {
3101
3109
  case "list":
3102
3110
  field_conf.tag = "select2";
3103
3111
  field_conf.options = field_desc.enum_list;
3104
- break;
3105
3112
  }
3106
3113
  break;
3107
3114
  case "hook": break;
@@ -3135,18 +3142,12 @@ function build_form_field_conf(gobj, field_desc) {
3135
3142
  case "time":
3136
3143
  field_conf.tag = "input";
3137
3144
  field_conf.inputType = "datetime-local";
3138
- switch (field_desc.real_type) {
3139
- case "string": break;
3140
- case "integer": break;
3141
- }
3145
+ field_desc.real_type;
3142
3146
  break;
3143
3147
  case "color":
3144
3148
  field_conf.tag = "input";
3145
3149
  field_conf.inputType = "color";
3146
- switch (field_desc.real_type) {
3147
- case "string": break;
3148
- case "integer": break;
3149
- }
3150
+ field_desc.real_type;
3150
3151
  break;
3151
3152
  case "email":
3152
3153
  field_conf.tag = "input";
@@ -3265,40 +3266,38 @@ function create_form_field(gobj, $form, prefix, field_desc, { tag, inputType, na
3265
3266
  ]]
3266
3267
  ]);
3267
3268
  break;
3268
- default:
3269
- $element = (0, _yuneta_gobj_js.createElement2)([
3269
+ default: $element = (0, _yuneta_gobj_js.createElement2)([
3270
+ "div",
3271
+ { class: "xfield field is-horizontal" },
3272
+ [[
3270
3273
  "div",
3271
- { class: "xfield field is-horizontal" },
3274
+ { class: "field-label is-normal" },
3275
+ [[
3276
+ "label",
3277
+ {
3278
+ class: "label ",
3279
+ i18n: label,
3280
+ for: name
3281
+ },
3282
+ label
3283
+ ]]
3284
+ ], [
3285
+ "div",
3286
+ { class: "field-body" },
3272
3287
  [[
3273
3288
  "div",
3274
- { class: "field-label is-normal" },
3289
+ { class: "field" },
3275
3290
  [[
3276
- "label",
3291
+ "div",
3277
3292
  {
3278
- class: "label ",
3279
- i18n: label,
3280
- for: name
3293
+ class: "xcontrol control",
3294
+ style: ""
3281
3295
  },
3282
- label
3283
- ]]
3284
- ], [
3285
- "div",
3286
- { class: "field-body" },
3287
- [[
3288
- "div",
3289
- { class: "field" },
3290
- [[
3291
- "div",
3292
- {
3293
- class: "xcontrol control",
3294
- style: ""
3295
- },
3296
- []
3297
- ]]
3296
+ []
3298
3297
  ]]
3299
3298
  ]]
3300
- ]);
3301
- break;
3299
+ ]]
3300
+ ]);
3302
3301
  }
3303
3302
  break;
3304
3303
  case "textarea":
@@ -3543,8 +3542,8 @@ function create_form_field(gobj, $form, prefix, field_desc, { tag, inputType, na
3543
3542
  $control.appendChild($extend);
3544
3543
  break;
3545
3544
  }
3546
- case "select":
3547
- $extend = (0, _yuneta_gobj_js.createElement2)([
3545
+ case "select": {
3546
+ let extend = [
3548
3547
  "div",
3549
3548
  { class: "select" },
3550
3549
  [
@@ -3559,11 +3558,13 @@ function create_form_field(gobj, $form, prefix, field_desc, { tag, inputType, na
3559
3558
  option
3560
3559
  ])
3561
3560
  ]
3562
- ]);
3561
+ ];
3562
+ $extend = (0, _yuneta_gobj_js.createElement2)(extend);
3563
3563
  $control.appendChild($extend);
3564
3564
  break;
3565
- case "select2":
3566
- $extend = (0, _yuneta_gobj_js.createElement2)([
3565
+ }
3566
+ case "select2": {
3567
+ let extend = [
3567
3568
  "select",
3568
3569
  {
3569
3570
  name,
@@ -3578,7 +3579,8 @@ function create_form_field(gobj, $form, prefix, field_desc, { tag, inputType, na
3578
3579
  },
3579
3580
  option
3580
3581
  ])
3581
- ]);
3582
+ ];
3583
+ $extend = (0, _yuneta_gobj_js.createElement2)(extend);
3582
3584
  $control.appendChild($extend);
3583
3585
  $extend.tom_select = new tom_select.default($extend, {
3584
3586
  allowEmptyOption: true,
@@ -3594,6 +3596,7 @@ function create_form_field(gobj, $form, prefix, field_desc, { tag, inputType, na
3594
3596
  (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_RECORD_CHANGED", {}, gobj);
3595
3597
  });
3596
3598
  break;
3599
+ }
3597
3600
  case "checkbox":
3598
3601
  $extend = (0, _yuneta_gobj_js.createElement2)([
3599
3602
  "label",
@@ -3605,15 +3608,17 @@ function create_form_field(gobj, $form, prefix, field_desc, { tag, inputType, na
3605
3608
  ]);
3606
3609
  $control.appendChild($extend);
3607
3610
  break;
3608
- case "radio":
3609
- $extend = (0, _yuneta_gobj_js.createOneHtml)(`
3611
+ case "radio": {
3612
+ let elm = `
3610
3613
  <label class="radio">
3611
3614
  <input type="radio" name="${name}">
3612
3615
  ${(0, i18next.t)(options)}
3613
3616
  </label>
3614
- `);
3617
+ `;
3618
+ $extend = (0, _yuneta_gobj_js.createOneHtml)(elm);
3615
3619
  $control.appendChild($extend);
3616
3620
  break;
3621
+ }
3617
3622
  case "jsoneditor": {
3618
3623
  let attrs = {
3619
3624
  class: "jsoneditor jse-theme-dark",
@@ -3707,9 +3712,7 @@ function create_coordinates(gobj, attrs) {
3707
3712
  case error.TIMEOUT:
3708
3713
  errorMsg = (0, i18next.t)("timed out");
3709
3714
  break;
3710
- default:
3711
- errorMsg = (0, i18next.t)("unknown error");
3712
- break;
3715
+ default: errorMsg = (0, i18next.t)("unknown error");
3713
3716
  }
3714
3717
  $input.classList.add("is-danger");
3715
3718
  let $h = $input.closest(".xcontrol").parentNode.querySelector(".help");
@@ -3724,7 +3727,7 @@ function create_coordinates(gobj, attrs) {
3724
3727
  $h.style.display = "block";
3725
3728
  }
3726
3729
  }
3727
- return (0, _yuneta_gobj_js.createElement2)([
3730
+ let extend = [
3728
3731
  "div",
3729
3732
  { class: "field is-flex is-align-items-center" },
3730
3733
  [[
@@ -3771,7 +3774,8 @@ function create_coordinates(gobj, attrs) {
3771
3774
  ]
3772
3775
  ]
3773
3776
  ]]
3774
- ]);
3777
+ ];
3778
+ return (0, _yuneta_gobj_js.createElement2)(extend);
3775
3779
  }
3776
3780
  /******************************************************************
3777
3781
  * Create tabulator
@@ -3795,10 +3799,11 @@ function create_tabulator$1(gobj, $extend, name, template) {
3795
3799
  tabulator_settings.columns = template2columns(gobj, columns, template, sub_elements);
3796
3800
  if (sub_elements.length > 0) tabulator_settings.rowFormatter = function(row) {
3797
3801
  for (let sub_element of sub_elements) {
3798
- let $extend = (0, _yuneta_gobj_js.createElement2)(["div", {
3802
+ let extend = ["div", {
3799
3803
  class: "yui-tabulator-table-nested pl-6 is-bordered is-striped",
3800
3804
  "name": sub_element.name
3801
- }]);
3805
+ }];
3806
+ let $extend = (0, _yuneta_gobj_js.createElement2)(extend);
3802
3807
  $extend.tabulator = create_tabulator$1(gobj, $extend, sub_element.name, sub_element.template);
3803
3808
  row.getElement().appendChild($extend);
3804
3809
  }
@@ -3886,9 +3891,10 @@ function template2columns(gobj, columns, template, sub_elements) {
3886
3891
  cellClick: function(evt, cell) {
3887
3892
  evt.stopPropagation();
3888
3893
  let $row = cell.getRow().getElement();
3894
+ let $extend = $row.querySelector(`[name="${field_desc.name}"]`);
3889
3895
  (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_ADD_TABLE_ROW", {
3890
3896
  $row,
3891
- $table: $row.querySelector(`[name="${field_desc.name}"]`),
3897
+ $table: $extend,
3892
3898
  record: {},
3893
3899
  loading: false
3894
3900
  }, gobj);
@@ -3903,9 +3909,7 @@ function template2columns(gobj, columns, template, sub_elements) {
3903
3909
  case "object":
3904
3910
  case "dict":
3905
3911
  case "array":
3906
- case "list":
3907
- column.editorParams.values = field_desc.enum_list;
3908
- break;
3912
+ case "list": column.editorParams.values = field_desc.enum_list;
3909
3913
  }
3910
3914
  break;
3911
3915
  case "hook": break;
@@ -3950,18 +3954,12 @@ function template2columns(gobj, columns, template, sub_elements) {
3950
3954
  verticalNavigation: "table",
3951
3955
  elementAttributes: { title: "slide bar to choose option" }
3952
3956
  };
3953
- switch (field_desc.real_type) {
3954
- case "string": break;
3955
- case "integer": break;
3956
- }
3957
+ field_desc.real_type;
3957
3958
  break;
3958
3959
  case "color":
3959
3960
  column.editor = "input";
3960
3961
  column.editorParams = {};
3961
- switch (field_desc.real_type) {
3962
- case "string": break;
3963
- case "integer": break;
3964
- }
3962
+ field_desc.real_type;
3965
3963
  break;
3966
3964
  case "email":
3967
3965
  column.editor = "input";
@@ -4057,9 +4055,7 @@ function get_form_values$1(gobj, $form) {
4057
4055
  const date = new Date($input.value);
4058
4056
  value = Math.floor(date.getTime() / 1e3);
4059
4057
  break;
4060
- default:
4061
- value = getInputValue($input);
4062
- break;
4058
+ default: value = getInputValue($input);
4063
4059
  }
4064
4060
  break;
4065
4061
  case "textarea":
@@ -4106,9 +4102,7 @@ function get_form_values$1(gobj, $form) {
4106
4102
  if ($input.tagName !== "INPUT") $input = $input.querySelector("input");
4107
4103
  value = getInputValue($input);
4108
4104
  break;
4109
- default:
4110
- (0, _yuneta_gobj_js.log_error)((0, _yuneta_gobj_js.sprintf)("%s: $form type unknown: '%s'", (0, _yuneta_gobj_js.gobj_short_name)(gobj), tag));
4111
- break;
4105
+ default: (0, _yuneta_gobj_js.log_error)((0, _yuneta_gobj_js.sprintf)("%s: $form type unknown: '%s'", (0, _yuneta_gobj_js.gobj_short_name)(gobj), tag));
4112
4106
  }
4113
4107
  value = form_value_2_treedb_value(gobj, field_desc, value);
4114
4108
  let path;
@@ -4123,14 +4117,16 @@ function get_form_values$1(gobj, $form) {
4123
4117
  ************************************************************/
4124
4118
  function clear_data$1(gobj, $form) {
4125
4119
  $form.querySelectorAll("input, select, textarea, .jsoneditor").forEach(($input) => {
4126
- if ($input.name !== "id") if ($input.classList.contains("jsoneditor")) {
4127
- let jsoneditor = $input.jsoneditor;
4128
- if (jsoneditor) jsoneditor.set({ text: "" });
4129
- } else if ($input.type === "checkbox") $input.checked = false;
4130
- else if ($input.type === "radio") $input.checked = false;
4131
- else if ($input.type === "datetime-local") $input.value = null;
4132
- else if ($input.type === "select-multiple") $input.tom_select.clear();
4133
- else $input.value = null;
4120
+ if ($input.name !== "id") {
4121
+ if ($input.classList.contains("jsoneditor")) {
4122
+ let jsoneditor = $input.jsoneditor;
4123
+ if (jsoneditor) jsoneditor.set({ text: "" });
4124
+ } else if ($input.type === "checkbox") $input.checked = false;
4125
+ else if ($input.type === "radio") $input.checked = false;
4126
+ else if ($input.type === "datetime-local") $input.value = null;
4127
+ else if ($input.type === "select-multiple") $input.tom_select.clear();
4128
+ else $input.value = null;
4129
+ }
4134
4130
  });
4135
4131
  $form.querySelectorAll(".yui-tabulator-table").forEach(($table) => {
4136
4132
  if ($table.tabulator.initialized) $table.tabulator.clearData();
@@ -4206,9 +4202,7 @@ function set_form_values$1(gobj, template, $form, record) {
4206
4202
  case "color":
4207
4203
  $input.value = convertColor(value);
4208
4204
  break;
4209
- default:
4210
- $input.value = value;
4211
- break;
4205
+ default: $input.value = value;
4212
4206
  }
4213
4207
  break;
4214
4208
  case "textarea":
@@ -4239,9 +4233,7 @@ function set_form_values$1(gobj, template, $form, record) {
4239
4233
  if ($input.tagName !== "INPUT") $input = $input.querySelector("input");
4240
4234
  $input.value = value;
4241
4235
  break;
4242
- default:
4243
- (0, _yuneta_gobj_js.log_error)((0, _yuneta_gobj_js.sprintf)("%s: $form type unknown: '%s'", (0, _yuneta_gobj_js.gobj_short_name)(gobj), tag));
4244
- break;
4236
+ default: (0, _yuneta_gobj_js.log_error)((0, _yuneta_gobj_js.sprintf)("%s: $form type unknown: '%s'", (0, _yuneta_gobj_js.gobj_short_name)(gobj), tag));
4245
4237
  }
4246
4238
  });
4247
4239
  return modified;
@@ -4330,9 +4322,7 @@ function treedb_value_2_form_value(gobj, field_desc, value) {
4330
4322
  }
4331
4323
  value = `${longitude}, ${latitude}`;
4332
4324
  break;
4333
- default:
4334
- (0, _yuneta_gobj_js.log_error)("treedb_value_2_form_value() type unknown: " + type);
4335
- break;
4325
+ default: (0, _yuneta_gobj_js.log_error)("treedb_value_2_form_value() type unknown: " + type);
4336
4326
  }
4337
4327
  return value;
4338
4328
  }
@@ -4363,9 +4353,7 @@ function form_value_2_treedb_value(gobj, field_desc, value) {
4363
4353
  case "integer":
4364
4354
  if (value && (0, _yuneta_gobj_js.is_date)(value)) value = value.getTime() / 1e3;
4365
4355
  break;
4366
- default:
4367
- (0, _yuneta_gobj_js.log_error)("incompatible type for time: " + real_type);
4368
- break;
4356
+ default: (0, _yuneta_gobj_js.log_error)("incompatible type for time: " + real_type);
4369
4357
  }
4370
4358
  break;
4371
4359
  case "date":
@@ -4426,9 +4414,7 @@ function form_value_2_treedb_value(gobj, field_desc, value) {
4426
4414
  "coordinates": [lnglat[0], lnglat[1]]
4427
4415
  } };
4428
4416
  break;
4429
- default:
4430
- (0, _yuneta_gobj_js.log_error)("form_value_2_treedb_value() type unknown: " + type);
4431
- break;
4417
+ default: (0, _yuneta_gobj_js.log_error)("form_value_2_treedb_value() type unknown: " + type);
4432
4418
  }
4433
4419
  return value;
4434
4420
  }
@@ -4463,7 +4449,8 @@ function ac_load_record(gobj, event, kw, src) {
4463
4449
  function ac_save_record(gobj, event, kw, src) {
4464
4450
  let $form = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "$container").querySelector("form");
4465
4451
  if (validate_form$1(gobj, $form)) {
4466
- (0, _yuneta_gobj_js.gobj_publish_event)(gobj, "EV_SAVE_RECORD", get_form_values$1(gobj, $form));
4452
+ let values = get_form_values$1(gobj, $form);
4453
+ (0, _yuneta_gobj_js.gobj_publish_event)(gobj, "EV_SAVE_RECORD", values);
4467
4454
  set_changed_stated(gobj, false);
4468
4455
  } else {
4469
4456
  kw.abort_close = true;
@@ -4669,7 +4656,7 @@ function create_gclass$9(gclass_name) {
4669
4656
  null
4670
4657
  ]
4671
4658
  ]]];
4672
- __gclass__$9 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
4659
+ const event_types = [
4673
4660
  ["EV_LOAD_RECORD", 0],
4674
4661
  ["EV_SAVE_RECORD", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT],
4675
4662
  ["EV_UNDO_RECORD", 0],
@@ -4685,7 +4672,8 @@ function create_gclass$9(gclass_name) {
4685
4672
  ["EV_SHOW", 0],
4686
4673
  ["EV_HIDE", 0],
4687
4674
  ["EV_TIMEOUT", 0]
4688
- ], states, gmt$9, 0, attrs_table$9, PRIVATE_DATA$9, 0, 0, 0, 0);
4675
+ ];
4676
+ __gclass__$9 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, event_types, states, gmt$9, 0, attrs_table$9, PRIVATE_DATA$9, 0, 0, 0, 0);
4689
4677
  if (!__gclass__$9) return -1;
4690
4678
  return 0;
4691
4679
  }
@@ -5162,7 +5150,6 @@ function set_menu_state(gobj, state) {
5162
5150
  $container.querySelectorAll(".menu-text, .menu-label").forEach((link) => {
5163
5151
  link.classList.add("is-hidden");
5164
5152
  });
5165
- break;
5166
5153
  }
5167
5154
  (0, _yuneta_gobj_js.gobj_write_attr)(gobj, "menu_state", state);
5168
5155
  }
@@ -5573,7 +5560,7 @@ function decod_coordinates(gobj, coordinates) {
5573
5560
  *
5574
5561
  ************************************************************/
5575
5562
  function get_coordinates(gobj, device) {
5576
- let coordinates = decod_coordinates(gobj, device.settings.coordinates);
5563
+ let coordinates = decod_coordinates(gobj, device.settings?.coordinates);
5577
5564
  if (coordinates.lng === 0 && coordinates.lat === 0) coordinates = decod_coordinates(gobj, device.coordinates);
5578
5565
  if (coordinates.lng === 0 && coordinates.lat === 0) {
5579
5566
  coordinates.lng = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "default_longitude");
@@ -5622,7 +5609,7 @@ function devices2geojson(gobj, devices) {
5622
5609
  id: device.id,
5623
5610
  name: device.name,
5624
5611
  image: device.image,
5625
- connected: device.connected,
5612
+ connected: !!device.connected,
5626
5613
  gobj_service_name: device.gobj_service_name
5627
5614
  }
5628
5615
  };
@@ -5850,14 +5837,16 @@ function xtouchStart(gobj, e) {
5850
5837
  function ac_edit_map(gobj, event, kw, src) {
5851
5838
  let priv = gobj.priv;
5852
5839
  const map = priv.xmap;
5853
- if ((0, _yuneta_gobj_js.kw_has_key)(kw, "enable_moving_markers")) if (kw.enable_moving_markers) {
5854
- map.on("mousedown", "unclustered-point", priv.xmouseDown);
5855
- map.on("touchstart", "unclustered-point", priv.xtouchStart);
5856
- map.off("click", "unclustered-point", priv.onClick);
5857
- } else {
5858
- map.off("mousedown", "unclustered-point", priv.xmouseDown);
5859
- map.off("touchstart", "unclustered-point", priv.xtouchStart);
5860
- map.on("click", "unclustered-point", priv.onClick);
5840
+ if ((0, _yuneta_gobj_js.kw_has_key)(kw, "enable_moving_markers")) {
5841
+ if (kw.enable_moving_markers) {
5842
+ map.on("mousedown", "unclustered-point", priv.xmouseDown);
5843
+ map.on("touchstart", "unclustered-point", priv.xtouchStart);
5844
+ map.off("click", "unclustered-point", priv.onClick);
5845
+ } else {
5846
+ map.off("mousedown", "unclustered-point", priv.xmouseDown);
5847
+ map.off("touchstart", "unclustered-point", priv.xtouchStart);
5848
+ map.on("click", "unclustered-point", priv.onClick);
5849
+ }
5861
5850
  }
5862
5851
  return 0;
5863
5852
  }
@@ -5899,11 +5888,9 @@ function ac_map_on_load(gobj, event, kw, src) {
5899
5888
  function ac_refresh$3(gobj, event, kw, src) {
5900
5889
  let priv = gobj.priv;
5901
5890
  let devices = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "devices");
5902
- let map = priv.xmap;
5903
- if (map.isStyleLoaded()) {
5904
- const geojson_data = devices2geojson(gobj, devices);
5905
- map.getSource("devices").setData(geojson_data);
5906
- }
5891
+ const source = priv.xmap.getSource("devices");
5892
+ if (!source) return 0;
5893
+ source.setData(devices2geojson(gobj, devices));
5907
5894
  return 0;
5908
5895
  }
5909
5896
  /************************************************************
@@ -6115,14 +6102,15 @@ function build_ui$5(gobj) {
6115
6102
  (0, _yuneta_gobj_js.gobj_write_bool_attr)(gobj, "$container", $container);
6116
6103
  (0, _yuneta_gobj_js.gobj_write_bool_attr)(gobj, "own_container", true);
6117
6104
  }
6118
- let uplot$2 = new uplot.default({
6105
+ let uPlot_options = {
6119
6106
  title: (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "title"),
6120
6107
  width: (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "width"),
6121
6108
  height: (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "height"),
6122
6109
  series: (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "series"),
6123
6110
  axes: (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "axes"),
6124
6111
  scales: (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "scales")
6125
- }, (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "data"), $container);
6112
+ };
6113
+ let uplot$2 = new uplot.default(uPlot_options, (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "data"), $container);
6126
6114
  (0, _yuneta_gobj_js.gobj_write_attr)(gobj, "uplot", uplot$2);
6127
6115
  let fixed_height = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "height");
6128
6116
  function fit_to_container() {
@@ -6177,11 +6165,13 @@ function ac_load_data$2(gobj, event, kw, src) {
6177
6165
  for (let idx = 1; idx < uplot$3.series.length; idx++) {
6178
6166
  let serie = uplot$3.series[idx];
6179
6167
  let value = kw[i][serie.id];
6180
- if ((0, _yuneta_gobj_js.is_string)(value)) if (value.toLowerCase() === "on") value = 1;
6181
- else if (value.toLowerCase() === "off") value = 0;
6182
- else {
6183
- (0, _yuneta_gobj_js.log_error)(`${(0, _yuneta_gobj_js.gobj_short_name)(gobj)} value not contemplated: '${value}'`);
6184
- value = 0;
6168
+ if ((0, _yuneta_gobj_js.is_string)(value)) {
6169
+ if (value.toLowerCase() === "on") value = 1;
6170
+ else if (value.toLowerCase() === "off") value = 0;
6171
+ else {
6172
+ (0, _yuneta_gobj_js.log_error)(`${(0, _yuneta_gobj_js.gobj_short_name)(gobj)} value not contemplated: '${value}'`);
6173
+ value = 0;
6174
+ }
6185
6175
  }
6186
6176
  data[idx].push(value);
6187
6177
  }
@@ -6534,6 +6524,7 @@ function mt_destroy$5(gobj) {
6534
6524
  ************************************************************/
6535
6525
  function build_ui$4(gobj) {
6536
6526
  let priv = gobj.priv;
6527
+ let $toolbar = make_toolbar$2(gobj);
6537
6528
  let $container = (0, _yuneta_gobj_js.createElement2)([
6538
6529
  "div",
6539
6530
  {
@@ -6543,7 +6534,7 @@ function build_ui$4(gobj) {
6543
6534
  [[
6544
6535
  "div",
6545
6536
  { class: "is-flex-grow-0 is-flex toolbar_yui_json_graph" },
6546
- make_toolbar$2(gobj)
6537
+ $toolbar
6547
6538
  ], [
6548
6539
  "div",
6549
6540
  {
@@ -6725,9 +6716,7 @@ function build_cell_html(key, value, type) {
6725
6716
  case "dict":
6726
6717
  display_value = `{${(0, _yuneta_gobj_js.json_object_size)(value)}}`;
6727
6718
  break;
6728
- default:
6729
- display_value = String(value);
6730
- break;
6719
+ default: display_value = String(value);
6731
6720
  }
6732
6721
  return `<span style="color:#1A1A1A">• ${(0, _yuneta_gobj_js.escapeHtml)(String(key))}: </span><span style="color:${color}">${display_value}</span>`;
6733
6722
  }
@@ -7147,7 +7136,7 @@ function create_gclass$5(gclass_name) {
7147
7136
  null
7148
7137
  ]
7149
7138
  ]]];
7150
- __gclass__$5 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
7139
+ const event_types = [
7151
7140
  ["EV_LOAD_DATA", 0],
7152
7141
  ["EV_REFRESH", 0],
7153
7142
  ["EV_ZOOM_IN", 0],
@@ -7159,7 +7148,8 @@ function create_gclass$5(gclass_name) {
7159
7148
  ["EV_SHOW", 0],
7160
7149
  ["EV_HIDE", 0],
7161
7150
  ["EV_JSON_ITEM_CLICKED", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT]
7162
- ], states, gmt$5, 0, attrs_table$5, PRIVATE_DATA$5, 0, 0, 0, 0);
7151
+ ];
7152
+ __gclass__$5 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, event_types, states, gmt$5, 0, attrs_table$5, PRIVATE_DATA$5, 0, 0, 0, 0);
7163
7153
  if (!__gclass__$5) return -1;
7164
7154
  return 0;
7165
7155
  }
@@ -7459,6 +7449,7 @@ function mt_destroy$4(gobj) {
7459
7449
  ************************************************************/
7460
7450
  function build_ui$3(gobj) {
7461
7451
  let priv = gobj.priv;
7452
+ let $toolbar = make_toolbar$1(gobj);
7462
7453
  let $container = (0, _yuneta_gobj_js.createElement2)([
7463
7454
  "div",
7464
7455
  {
@@ -7468,7 +7459,7 @@ function build_ui$3(gobj) {
7468
7459
  [[
7469
7460
  "div",
7470
7461
  { class: "is-flex-grow-0 is-flex toolbar_yui_gobj_tree" },
7471
- make_toolbar$1(gobj)
7462
+ $toolbar
7472
7463
  ], [
7473
7464
  "div",
7474
7465
  {
@@ -8853,7 +8844,7 @@ function cmd_get_topic_data$1(gobj, cmd, kw, src) {
8853
8844
  * Build UI
8854
8845
  ************************************************************/
8855
8846
  function build_ui$2(gobj) {
8856
- (0, _yuneta_gobj_js.gobj_write_attr)(gobj, "$container", (0, _yuneta_gobj_js.createElement2)([
8847
+ let $container = (0, _yuneta_gobj_js.createElement2)([
8857
8848
  "div",
8858
8849
  {
8859
8850
  class: `${(0, _yuneta_gobj_js.gobj_read_attr)(gobj, "treedb_name")}`,
@@ -8878,7 +8869,8 @@ function build_ui$2(gobj) {
8878
8869
  },
8879
8870
  []
8880
8871
  ]]
8881
- ]));
8872
+ ]);
8873
+ (0, _yuneta_gobj_js.gobj_write_attr)(gobj, "$container", $container);
8882
8874
  }
8883
8875
  /************************************************************
8884
8876
  * Destroy UI
@@ -8921,7 +8913,8 @@ function add_tab(gobj, gobj2, id, text, icon) {
8921
8913
  $a.addEventListener("click", function(ev) {
8922
8914
  ev.preventDefault();
8923
8915
  (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_SHOW", { href: id }, gobj);
8924
- (0, _yuneta_gobj_js.gobj_publish_event)(gobj, "EV_TOPIC_SELECTED", { topic: id.indexOf("?") >= 0 ? id.split("?")[1] : id });
8916
+ let topic = id.indexOf("?") >= 0 ? id.split("?")[1] : id;
8917
+ (0, _yuneta_gobj_js.gobj_publish_event)(gobj, "EV_TOPIC_SELECTED", { topic });
8925
8918
  });
8926
8919
  let $sub_container = $container.querySelector(".sub-container");
8927
8920
  let $child_content = (0, _yuneta_gobj_js.gobj_read_attr)(gobj2, "$container");
@@ -9113,7 +9106,10 @@ function ac_mt_command_answer$1(gobj, event, kw, src) {
9113
9106
  break;
9114
9107
  case "nodes":
9115
9108
  let topic_name = (0, _yuneta_gobj_js.kw_get_str)(gobj, kw_command, "topic_name", "", _yuneta_gobj_js.kw_flag_t.KW_REQUIRED);
9116
- if (result >= 0) (0, _yuneta_gobj_js.gobj_send_event)((0, _yuneta_gobj_js.gobj_find_child)(gobj, { __gobj_name__: `${(0, _yuneta_gobj_js.gobj_name)(gobj)}?${topic_name}` }), "EV_LOAD_NODES", data, gobj);
9109
+ if (result >= 0) {
9110
+ let gobj_topic_form = (0, _yuneta_gobj_js.gobj_find_child)(gobj, { __gobj_name__: `${(0, _yuneta_gobj_js.gobj_name)(gobj)}?${topic_name}` });
9111
+ (0, _yuneta_gobj_js.gobj_send_event)(gobj_topic_form, "EV_LOAD_NODES", data, gobj);
9112
+ }
9117
9113
  break;
9118
9114
  case "create-node":
9119
9115
  case "update-node":
@@ -9196,7 +9192,10 @@ function ac_treedb_node_created$1(gobj, event, kw, src) {
9196
9192
  let treedb_name = (0, _yuneta_gobj_js.kw_get_str)(gobj, kw, "treedb_name", "", 0);
9197
9193
  let topic_name = (0, _yuneta_gobj_js.kw_get_str)(gobj, kw, "topic_name", "", 0);
9198
9194
  let node = (0, _yuneta_gobj_js.kw_get_dict_value)(gobj, kw, "node", null, 0);
9199
- if (treedb_name === (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "treedb_name")) (0, _yuneta_gobj_js.gobj_send_event)(get_gobj_formtable(gobj, topic_name), "EV_LOAD_NODE_CREATED", [node], gobj);
9195
+ if (treedb_name === (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "treedb_name")) {
9196
+ let gobj_formtable = get_gobj_formtable(gobj, topic_name);
9197
+ (0, _yuneta_gobj_js.gobj_send_event)(gobj_formtable, "EV_LOAD_NODE_CREATED", [node], gobj);
9198
+ }
9200
9199
  return 0;
9201
9200
  }
9202
9201
  /********************************************
@@ -9206,7 +9205,10 @@ function ac_treedb_node_updated$1(gobj, event, kw, src) {
9206
9205
  let treedb_name = (0, _yuneta_gobj_js.kw_get_str)(gobj, kw, "treedb_name", "", 0);
9207
9206
  let topic_name = (0, _yuneta_gobj_js.kw_get_str)(gobj, kw, "topic_name", "", 0);
9208
9207
  let node = (0, _yuneta_gobj_js.kw_get_dict_value)(gobj, kw, "node", null, 0);
9209
- if (treedb_name === (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "treedb_name")) (0, _yuneta_gobj_js.gobj_send_event)(get_gobj_formtable(gobj, topic_name), "EV_LOAD_NODE_UPDATED", [node], gobj);
9208
+ if (treedb_name === (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "treedb_name")) {
9209
+ let gobj_formtable = get_gobj_formtable(gobj, topic_name);
9210
+ (0, _yuneta_gobj_js.gobj_send_event)(gobj_formtable, "EV_LOAD_NODE_UPDATED", [node], gobj);
9211
+ }
9210
9212
  return 0;
9211
9213
  }
9212
9214
  /********************************************
@@ -9216,7 +9218,10 @@ function ac_treedb_node_deleted$1(gobj, event, kw, src) {
9216
9218
  let treedb_name = (0, _yuneta_gobj_js.kw_get_str)(gobj, kw, "treedb_name", "", 0);
9217
9219
  let topic_name = (0, _yuneta_gobj_js.kw_get_str)(gobj, kw, "topic_name", "", 0);
9218
9220
  let node = (0, _yuneta_gobj_js.kw_get_dict_value)(gobj, kw, "node", null, 0);
9219
- if (treedb_name === (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "treedb_name")) (0, _yuneta_gobj_js.gobj_send_event)(get_gobj_formtable(gobj, topic_name), "EV_NODE_DELETED", [node], gobj);
9221
+ if (treedb_name === (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "treedb_name")) {
9222
+ let gobj_formtable = get_gobj_formtable(gobj, topic_name);
9223
+ (0, _yuneta_gobj_js.gobj_send_event)(gobj_formtable, "EV_NODE_DELETED", [node], gobj);
9224
+ }
9220
9225
  return 0;
9221
9226
  }
9222
9227
  /********************************************
@@ -9345,7 +9350,7 @@ function create_gclass$3(gclass_name) {
9345
9350
  null
9346
9351
  ]
9347
9352
  ]]];
9348
- __gclass__$3 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
9353
+ const event_types = [
9349
9354
  ["EV_MT_COMMAND_ANSWER", _yuneta_gobj_js.event_flag_t.EVF_PUBLIC_EVENT],
9350
9355
  ["EV_TREEDB_NODE_CREATED", _yuneta_gobj_js.event_flag_t.EVF_PUBLIC_EVENT],
9351
9356
  ["EV_TREEDB_NODE_UPDATED", _yuneta_gobj_js.event_flag_t.EVF_PUBLIC_EVENT],
@@ -9357,7 +9362,8 @@ function create_gclass$3(gclass_name) {
9357
9362
  ["EV_SHOW", 0],
9358
9363
  ["EV_HIDE", 0],
9359
9364
  ["EV_TOPIC_SELECTED", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS]
9360
- ], states, gmt$3, 0, attrs_table$3, PRIVATE_DATA$3, 0, 0, 0, 0);
9365
+ ];
9366
+ __gclass__$3 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, event_types, states, gmt$3, 0, attrs_table$3, PRIVATE_DATA$3, 0, 0, 0, 0);
9361
9367
  if (!__gclass__$3) return -1;
9362
9368
  return 0;
9363
9369
  }
@@ -9522,7 +9528,8 @@ function cmd_get_topic_data(gobj, cmd, kw, src) {
9522
9528
  async function readClipboard(gobj) {
9523
9529
  try {
9524
9530
  const text = await navigator.clipboard.readText();
9525
- (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_PASTE_ROWS", JSON.parse(text), gobj);
9531
+ let kw = JSON.parse(text);
9532
+ (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_PASTE_ROWS", kw, gobj);
9526
9533
  } catch (error) {
9527
9534
  (0, _yuneta_gobj_js.log_error)(`Failed to read clipboard contents: ${error}`);
9528
9535
  }
@@ -9744,6 +9751,7 @@ function build_ui$1(gobj) {
9744
9751
  ]);
9745
9752
  $view_toolbar.appendChild($refresh);
9746
9753
  }
9754
+ let table_id = (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "table_id");
9747
9755
  let $container = (0, _yuneta_gobj_js.createElement2)([
9748
9756
  "div",
9749
9757
  {
@@ -9754,7 +9762,7 @@ function build_ui$1(gobj) {
9754
9762
  class: "toolbar_tabulator_table m-1",
9755
9763
  style: "display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap;"
9756
9764
  }], ["div", {
9757
- id: `${(0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "table_id")}`,
9765
+ id: `${table_id}`,
9758
9766
  style: "margin-top:0px !important;"
9759
9767
  }]]
9760
9768
  ]);
@@ -9797,7 +9805,8 @@ function destroy_ui$1(gobj) {
9797
9805
  * columns); leave the rest on the flat shared key.
9798
9806
  ******************************************************************/
9799
9807
  function col_label(col, topic_name) {
9800
- return (0, i18next.t)(topic_name ? [topic_name + "." + col.id, col.id] : [col.id], { defaultValue: col.header || col.id });
9808
+ let keys = topic_name ? [topic_name + "." + col.id, col.id] : [col.id];
9809
+ return (0, i18next.t)(keys, { defaultValue: col.header || col.id });
9801
9810
  }
9802
9811
  /******************************************************************
9803
9812
  * Build table with Tabulator
@@ -9900,7 +9909,6 @@ function create_tabulator(gobj) {
9900
9909
  case "real":
9901
9910
  hozAlign = "right";
9902
9911
  sorter = "number";
9903
- break;
9904
9912
  }
9905
9913
  let colDef = {
9906
9914
  title: col_label(col, (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "topic_name")),
@@ -10029,9 +10037,7 @@ function transform__treedb_value_2_table_value(gobj, col, value, row, field) {
10029
10037
  case "object":
10030
10038
  case "dict":
10031
10039
  case "array":
10032
- case "list":
10033
- value = JSON.stringify(value);
10034
- break;
10040
+ case "list": value = JSON.stringify(value);
10035
10041
  }
10036
10042
  break;
10037
10043
  case "hook":
@@ -10048,14 +10054,16 @@ function transform__treedb_value_2_table_value(gobj, col, value, row, field) {
10048
10054
  break;
10049
10055
  case "fkey":
10050
10056
  let new_value = [];
10051
- if (value) if ((0, _yuneta_gobj_js.is_string)(value)) {
10052
- let fkey = (0, _yuneta_gobj_js.treedb_decoder_fkey)(col, value);
10053
- if (fkey) new_value.push(fkey.id);
10054
- } else if ((0, _yuneta_gobj_js.is_array)(value)) for (let i = 0; i < value.length; i++) {
10055
- let fkey = (0, _yuneta_gobj_js.treedb_decoder_fkey)(col, value[i]);
10056
- if (fkey) new_value.push(fkey.id);
10057
- }
10058
- else (0, _yuneta_gobj_js.log_error)("fkey type unsupported: " + JSON.stringify(value));
10057
+ if (value) {
10058
+ if ((0, _yuneta_gobj_js.is_string)(value)) {
10059
+ let fkey = (0, _yuneta_gobj_js.treedb_decoder_fkey)(col, value);
10060
+ if (fkey) new_value.push(fkey.id);
10061
+ } else if ((0, _yuneta_gobj_js.is_array)(value)) for (let i = 0; i < value.length; i++) {
10062
+ let fkey = (0, _yuneta_gobj_js.treedb_decoder_fkey)(col, value[i]);
10063
+ if (fkey) new_value.push(fkey.id);
10064
+ }
10065
+ else (0, _yuneta_gobj_js.log_error)("fkey type unsupported: " + JSON.stringify(value));
10066
+ }
10059
10067
  value = new_value.join(", ");
10060
10068
  break;
10061
10069
  case "now":
@@ -10076,14 +10084,11 @@ function transform__treedb_value_2_table_value(gobj, col, value, row, field) {
10076
10084
  second: "2-digit",
10077
10085
  hour12: true
10078
10086
  }).format(value) + "</span>";
10079
- break;
10080
10087
  }
10081
10088
  break;
10082
10089
  case "color": break;
10083
10090
  case "image": break;
10084
- default:
10085
- (0, _yuneta_gobj_js.log_error)(`transform__treedb_value_2_table_value() unhandled type '${field_desc.type}' (real_type='${field_desc.real_type}') for field '${field}', topic ${priv.topic_name}`);
10086
- break;
10091
+ default: (0, _yuneta_gobj_js.log_error)(`transform__treedb_value_2_table_value() unhandled type '${field_desc.type}' (real_type='${field_desc.real_type}') for field '${field}', topic ${priv.topic_name}`);
10087
10092
  }
10088
10093
  if (value !== null && value !== void 0 && typeof value === "object" && !(value instanceof Node)) {
10089
10094
  (0, _yuneta_gobj_js.log_error)(`transform__treedb_value_2_table_value() unexpected object value for field '${field}' (type='${field_desc.type}', real_type='${field_desc.real_type}'): ${JSON.stringify(value)}, topic ${priv.topic_name}`);
@@ -10096,8 +10101,9 @@ function transform__treedb_value_2_table_value(gobj, col, value, row, field) {
10096
10101
  ******************************************************************/
10097
10102
  function build_topic_form(gobj) {
10098
10103
  let desc = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "desc");
10104
+ let form_id = (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "form_id");
10099
10105
  let $form = (0, _yuneta_gobj_js.createElement2)(["form", {
10100
- id: (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "form_id"),
10106
+ id: form_id,
10101
10107
  class: "box p-3",
10102
10108
  novalidate: ""
10103
10109
  }]);
@@ -10186,18 +10192,12 @@ function transform__treedb_type_2_form_type(gobj, col) {
10186
10192
  case "time":
10187
10193
  tag = "input";
10188
10194
  inputType = "datetime-local";
10189
- switch (field_desc.real_type) {
10190
- case "string": break;
10191
- case "integer": break;
10192
- }
10195
+ field_desc.real_type;
10193
10196
  break;
10194
10197
  case "color":
10195
10198
  tag = "input";
10196
10199
  inputType = "color";
10197
- switch (field_desc.real_type) {
10198
- case "string": break;
10199
- case "integer": break;
10200
- }
10200
+ field_desc.real_type;
10201
10201
  break;
10202
10202
  case "email":
10203
10203
  tag = "input";
@@ -10234,9 +10234,7 @@ function transform__treedb_type_2_form_type(gobj, col) {
10234
10234
  case "object":
10235
10235
  case "dict":
10236
10236
  case "array":
10237
- case "list":
10238
- options = (0, _yuneta_gobj_js.list2options)(field_desc.enum_list, "id", "id");
10239
- break;
10237
+ case "list": options = (0, _yuneta_gobj_js.list2options)(field_desc.enum_list, "id", "id");
10240
10238
  }
10241
10239
  break;
10242
10240
  case "hook": break;
@@ -10247,11 +10245,8 @@ function transform__treedb_type_2_form_type(gobj, col) {
10247
10245
  case "object":
10248
10246
  case "dict":
10249
10247
  case "array":
10250
- case "list":
10251
- options = get_fkey_options(gobj, col);
10252
- break;
10248
+ case "list": options = get_fkey_options(gobj, col);
10253
10249
  }
10254
- break;
10255
10250
  }
10256
10251
  return [
10257
10252
  tag,
@@ -10411,7 +10406,7 @@ function create_html_field({ tag, inputType, name, label, placeholder, options,
10411
10406
  break;
10412
10407
  }
10413
10408
  case "select": {
10414
- let $extend = (0, _yuneta_gobj_js.createElement2)([
10409
+ let extend = [
10415
10410
  "div",
10416
10411
  { class: "select" },
10417
10412
  [
@@ -10426,7 +10421,8 @@ function create_html_field({ tag, inputType, name, label, placeholder, options,
10426
10421
  option.value
10427
10422
  ])
10428
10423
  ]
10429
- ]);
10424
+ ];
10425
+ let $extend = (0, _yuneta_gobj_js.createElement2)(extend);
10430
10426
  $control.appendChild($extend);
10431
10427
  $control.appendChild((0, _yuneta_gobj_js.createElement2)([
10432
10428
  "p",
@@ -10439,7 +10435,7 @@ function create_html_field({ tag, inputType, name, label, placeholder, options,
10439
10435
  break;
10440
10436
  }
10441
10437
  case "select2": {
10442
- let $extend = (0, _yuneta_gobj_js.createElement2)([
10438
+ let extend = [
10443
10439
  "select",
10444
10440
  {
10445
10441
  name,
@@ -10455,7 +10451,8 @@ function create_html_field({ tag, inputType, name, label, placeholder, options,
10455
10451
  },
10456
10452
  option.value
10457
10453
  ])
10458
- ]);
10454
+ ];
10455
+ let $extend = (0, _yuneta_gobj_js.createElement2)(extend);
10459
10456
  $control.appendChild($extend);
10460
10457
  $control.appendChild((0, _yuneta_gobj_js.createElement2)([
10461
10458
  "p",
@@ -10489,12 +10486,13 @@ function create_html_field({ tag, inputType, name, label, placeholder, options,
10489
10486
  }
10490
10487
  case "radio":
10491
10488
  for (const option of options) {
10492
- let $extend = (0, _yuneta_gobj_js.createOneHtml)(`
10489
+ let elm = `
10493
10490
  <label class="radio">
10494
10491
  <input type="radio" name="${name}">
10495
10492
  ${(0, i18next.t)(option)}
10496
10493
  </label>
10497
- `);
10494
+ `;
10495
+ let $extend = (0, _yuneta_gobj_js.createOneHtml)(elm);
10498
10496
  $control.appendChild($extend);
10499
10497
  }
10500
10498
  $control.appendChild((0, _yuneta_gobj_js.createElement2)([
@@ -10515,11 +10513,13 @@ function create_html_field({ tag, inputType, name, label, placeholder, options,
10515
10513
  ******************************************************************/
10516
10514
  function build_topic_modal(gobj) {
10517
10515
  const $form = build_topic_form(gobj);
10518
- let title = (0, i18next.t)((0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "topic_name"));
10516
+ let topic_name = (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "topic_name");
10517
+ let title = (0, i18next.t)(topic_name);
10518
+ let popup_id = (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "popup_id");
10519
10519
  let $element = (0, _yuneta_gobj_js.createElement2)([
10520
10520
  "div",
10521
10521
  {
10522
- id: (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "popup_id"),
10522
+ id: popup_id,
10523
10523
  class: "modal"
10524
10524
  },
10525
10525
  [[
@@ -10805,19 +10805,21 @@ function clear_validation(gobj, $form) {
10805
10805
  ************************************************************/
10806
10806
  function set_form_mode(gobj, $form, mode, index) {
10807
10807
  let desc = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "desc");
10808
- let is_rowid = (0, _yuneta_gobj_js.str_in_list)((0, _yuneta_gobj_js.kwid_find_one_record)(gobj, desc.cols, null, { "id": desc.pkey }).flag, "rowid");
10808
+ let col_pkey = (0, _yuneta_gobj_js.kwid_find_one_record)(gobj, desc.cols, null, { "id": desc.pkey });
10809
+ let is_rowid = (0, _yuneta_gobj_js.str_in_list)(col_pkey.flag, "rowid");
10809
10810
  let $id = $form.querySelector(`[name="${desc.pkey}"]`);
10810
- if ($id) if (mode === "update") {
10811
- $id.setAttribute("readonly", "readonly");
10812
- $id.removeAttribute("required");
10813
- } else if (is_rowid) {
10814
- $id.setAttribute("readonly", "readonly");
10815
- $id.removeAttribute("required");
10816
- } else {
10817
- $id.removeAttribute("readonly");
10818
- $id.setAttribute("required", "");
10819
- }
10820
- else (0, _yuneta_gobj_js.log_error)((0, _yuneta_gobj_js.sprintf)("%s: form without id field ('%s')", (0, _yuneta_gobj_js.gobj_short_name)(gobj), desc.pkey));
10811
+ if ($id) {
10812
+ if (mode === "update") {
10813
+ $id.setAttribute("readonly", "readonly");
10814
+ $id.removeAttribute("required");
10815
+ } else if (is_rowid) {
10816
+ $id.setAttribute("readonly", "readonly");
10817
+ $id.removeAttribute("required");
10818
+ } else {
10819
+ $id.removeAttribute("readonly");
10820
+ $id.setAttribute("required", "");
10821
+ }
10822
+ } else (0, _yuneta_gobj_js.log_error)((0, _yuneta_gobj_js.sprintf)("%s: form without id field ('%s')", (0, _yuneta_gobj_js.gobj_short_name)(gobj), desc.pkey));
10821
10823
  if (is_rowid) mode = "create";
10822
10824
  $form.__mode__ = mode;
10823
10825
  $form.__index__ = index;
@@ -10873,15 +10875,17 @@ function get_schema_col(gobj, id) {
10873
10875
  ************************************************************/
10874
10876
  function clear_data(gobj, $form) {
10875
10877
  $form.querySelectorAll("input, select, textarea, .jsoneditor").forEach((input) => {
10876
- if (input.name !== "id") if (input.classList.contains("jsoneditor")) {
10877
- let jsoneditor = input.jsoneditor;
10878
- if (jsoneditor) jsoneditor.set({ text: "" });
10879
- } else if (input.type === "checkbox") input.checked = false;
10880
- else if (input.type === "radio") input.checked = false;
10881
- else if (input.type === "datetime-local") input.value = null;
10882
- else if (input.multiple) {
10883
- if (input.tomselect) input.tomselect.clear();
10884
- } else input.value = null;
10878
+ if (input.name !== "id") {
10879
+ if (input.classList.contains("jsoneditor")) {
10880
+ let jsoneditor = input.jsoneditor;
10881
+ if (jsoneditor) jsoneditor.set({ text: "" });
10882
+ } else if (input.type === "checkbox") input.checked = false;
10883
+ else if (input.type === "radio") input.checked = false;
10884
+ else if (input.type === "datetime-local") input.value = null;
10885
+ else if (input.multiple) {
10886
+ if (input.tomselect) input.tomselect.clear();
10887
+ } else input.value = null;
10888
+ }
10885
10889
  });
10886
10890
  }
10887
10891
  /************************************************************
@@ -10967,7 +10971,6 @@ function set_form_values(gobj, form, values) {
10967
10971
  }
10968
10972
  element.value = value;
10969
10973
  (0, _yuneta_gobj_js.log_error)((0, _yuneta_gobj_js.sprintf)("%s: form type unknown: '%s'", (0, _yuneta_gobj_js.gobj_short_name)(gobj), element.type));
10970
- break;
10971
10974
  }
10972
10975
  }
10973
10976
  });
@@ -10996,13 +10999,7 @@ function transform__treedb_value_2_form_value(gobj, col, value) {
10996
10999
  value = { json: value };
10997
11000
  break;
10998
11001
  case "enum":
10999
- switch (field_desc.real_type) {
11000
- case "string": break;
11001
- case "object":
11002
- case "dict":
11003
- case "array":
11004
- case "list": break;
11005
- }
11002
+ field_desc.real_type;
11006
11003
  break;
11007
11004
  case "now":
11008
11005
  case "time":
@@ -11011,28 +11008,25 @@ function transform__treedb_value_2_form_value(gobj, col, value) {
11011
11008
  case "integer":
11012
11009
  value = parseInt(value) || 0;
11013
11010
  value = new Date(value);
11014
- break;
11015
11011
  }
11016
11012
  break;
11017
11013
  case "color":
11018
- switch (field_desc.real_type) {
11019
- case "string": break;
11020
- case "integer": break;
11021
- }
11014
+ field_desc.real_type;
11022
11015
  break;
11023
11016
  case "hook": break;
11024
11017
  case "fkey":
11025
11018
  let new_value = [];
11026
- if (value) if ((0, _yuneta_gobj_js.is_string)(value)) {
11027
- let fkey = (0, _yuneta_gobj_js.treedb_decoder_fkey)(col, value);
11028
- if (fkey) new_value.push(fkey.id);
11029
- } else if ((0, _yuneta_gobj_js.is_array)(value)) for (let i = 0; i < value.length; i++) {
11030
- let fkey = (0, _yuneta_gobj_js.treedb_decoder_fkey)(col, value[i]);
11031
- if (fkey) new_value.push(fkey.id);
11032
- }
11033
- else (0, _yuneta_gobj_js.log_error)("fkey type unsupported: " + JSON.stringify(value));
11019
+ if (value) {
11020
+ if ((0, _yuneta_gobj_js.is_string)(value)) {
11021
+ let fkey = (0, _yuneta_gobj_js.treedb_decoder_fkey)(col, value);
11022
+ if (fkey) new_value.push(fkey.id);
11023
+ } else if ((0, _yuneta_gobj_js.is_array)(value)) for (let i = 0; i < value.length; i++) {
11024
+ let fkey = (0, _yuneta_gobj_js.treedb_decoder_fkey)(col, value[i]);
11025
+ if (fkey) new_value.push(fkey.id);
11026
+ }
11027
+ else (0, _yuneta_gobj_js.log_error)("fkey type unsupported: " + JSON.stringify(value));
11028
+ }
11034
11029
  value = new_value;
11035
- break;
11036
11030
  }
11037
11031
  return value;
11038
11032
  }
@@ -11116,16 +11110,16 @@ function transform__form_value_2_treedb_value(gobj, col, value, operation) {
11116
11110
  case "enum":
11117
11111
  switch (field_desc.real_type) {
11118
11112
  case "string":
11119
- if ((0, _yuneta_gobj_js.is_array)(value)) if (value.length > 0) value = value[0];
11120
- else value = "";
11113
+ if ((0, _yuneta_gobj_js.is_array)(value)) {
11114
+ if (value.length > 0) value = value[0];
11115
+ else value = "";
11116
+ }
11121
11117
  break;
11122
11118
  case "object":
11123
11119
  case "dict":
11124
11120
  case "array":
11125
11121
  case "list": break;
11126
- default:
11127
- (0, _yuneta_gobj_js.log_error)("col type unknown 6: " + field_desc.real_type);
11128
- break;
11122
+ default: (0, _yuneta_gobj_js.log_error)("col type unknown 6: " + field_desc.real_type);
11129
11123
  }
11130
11124
  break;
11131
11125
  case "now":
@@ -11137,23 +11131,17 @@ function transform__form_value_2_treedb_value(gobj, col, value, operation) {
11137
11131
  case "integer":
11138
11132
  if (value && (0, _yuneta_gobj_js.is_date)(value)) value = value.getTime() / 1e3;
11139
11133
  break;
11140
- default:
11141
- (0, _yuneta_gobj_js.log_error)("col type unknown 7: " + field_desc.real_type);
11142
- break;
11134
+ default: (0, _yuneta_gobj_js.log_error)("col type unknown 7: " + field_desc.real_type);
11143
11135
  }
11144
11136
  break;
11145
11137
  case "color":
11146
11138
  switch (field_desc.real_type) {
11147
11139
  case "string": break;
11148
11140
  case "integer": break;
11149
- default:
11150
- (0, _yuneta_gobj_js.log_error)("col type unknown 7: " + field_desc.real_type);
11151
- break;
11141
+ default: (0, _yuneta_gobj_js.log_error)("col type unknown 7: " + field_desc.real_type);
11152
11142
  }
11153
11143
  break;
11154
- default:
11155
- (0, _yuneta_gobj_js.log_error)("col type unknown 8: " + field_desc.type);
11156
- break;
11144
+ default: (0, _yuneta_gobj_js.log_error)("col type unknown 8: " + field_desc.type);
11157
11145
  }
11158
11146
  return value;
11159
11147
  }
@@ -11207,9 +11195,7 @@ function build_fkey_ref(gobj, col, value) {
11207
11195
  refs[topic_name + "^" + v + "^" + hook] = true;
11208
11196
  break;
11209
11197
  case "array":
11210
- case "list":
11211
- refs.push(topic_name + "^" + v + "^" + hook);
11212
- break;
11198
+ case "list": refs.push(topic_name + "^" + v + "^" + hook);
11213
11199
  }
11214
11200
  } else if ((0, _yuneta_gobj_js.is_object)(v)) {
11215
11201
  let topic_name = v.topic_name;
@@ -11222,9 +11208,7 @@ function build_fkey_ref(gobj, col, value) {
11222
11208
  refs[topic_name + "^" + v.id + "^" + hook] = true;
11223
11209
  break;
11224
11210
  case "array":
11225
- case "list":
11226
- refs.push(topic_name + "^" + v.id + "^" + hook);
11227
- break;
11211
+ case "list": refs.push(topic_name + "^" + v.id + "^" + hook);
11228
11212
  }
11229
11213
  } else {
11230
11214
  (0, _yuneta_gobj_js.log_error)("Merde value1: " + v);
@@ -11319,8 +11303,10 @@ function ac_load_nodes(gobj, event, kw, src) {
11319
11303
  return -1;
11320
11304
  }
11321
11305
  let tabulator = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "tabulator");
11322
- if (tabulator) if (tabulator._ready) tabulator.setData(data);
11323
- else tabulator._pendingData = data;
11306
+ if (tabulator) {
11307
+ if (tabulator._ready) tabulator.setData(data);
11308
+ else tabulator._pendingData = data;
11309
+ }
11324
11310
  return 0;
11325
11311
  }
11326
11312
  /************************************************************
@@ -11429,9 +11415,7 @@ function ac_new_row(gobj, event, kw, src) {
11429
11415
  case "template":
11430
11416
  if (col.template) row[col.id] = col.template;
11431
11417
  break;
11432
- default:
11433
- if (field_desc.default_value !== void 0) row[col.id] = field_desc.default_value;
11434
- break;
11418
+ default: if (field_desc.default_value !== void 0) row[col.id] = field_desc.default_value;
11435
11419
  }
11436
11420
  }
11437
11421
  show_create_form(gobj, row);
@@ -11542,12 +11526,14 @@ function ac_select_rows(gobj, event, kw, src) {
11542
11526
  let $container = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "$container");
11543
11527
  let $button_delete_record = $container.querySelector(`.button-delete-record`);
11544
11528
  let $button_copy_record = $container.querySelector(`.button-copy-record`);
11545
- if ($button_delete_record) if (tabulator.getSelectedData().length && (0, _yuneta_gobj_js.gobj_read_bool_attr)(gobj, "editable")) {
11546
- $button_delete_record.removeAttribute("disabled");
11547
- $button_copy_record.removeAttribute("disabled");
11548
- } else {
11549
- $button_delete_record.setAttribute("disabled", true);
11550
- $button_copy_record.setAttribute("disabled", true);
11529
+ if ($button_delete_record) {
11530
+ if (tabulator.getSelectedData().length && (0, _yuneta_gobj_js.gobj_read_bool_attr)(gobj, "editable")) {
11531
+ $button_delete_record.removeAttribute("disabled");
11532
+ $button_copy_record.removeAttribute("disabled");
11533
+ } else {
11534
+ $button_delete_record.setAttribute("disabled", true);
11535
+ $button_copy_record.setAttribute("disabled", true);
11536
+ }
11551
11537
  }
11552
11538
  if ((0, _yuneta_gobj_js.gobj_read_bool_attr)(gobj, "broadcast_select_rows_event")) (0, _yuneta_gobj_js.gobj_publish_event)(gobj, event, kw);
11553
11539
  return 0;
@@ -11560,12 +11546,14 @@ function ac_unselect_rows(gobj, event, kw, src) {
11560
11546
  let $container = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "$container");
11561
11547
  let $button_delete_record = $container.querySelector(`.button-delete-record`);
11562
11548
  let $button_copy_record = $container.querySelector(`.button-copy-record`);
11563
- if ($button_delete_record) if (tabulator.getSelectedData().length && (0, _yuneta_gobj_js.gobj_read_bool_attr)(gobj, "editable")) {
11564
- $button_delete_record.removeAttribute("disabled");
11565
- $button_copy_record.removeAttribute("disabled");
11566
- } else {
11567
- $button_delete_record.setAttribute("disabled", true);
11568
- $button_copy_record.setAttribute("disabled", true);
11549
+ if ($button_delete_record) {
11550
+ if (tabulator.getSelectedData().length && (0, _yuneta_gobj_js.gobj_read_bool_attr)(gobj, "editable")) {
11551
+ $button_delete_record.removeAttribute("disabled");
11552
+ $button_copy_record.removeAttribute("disabled");
11553
+ } else {
11554
+ $button_delete_record.setAttribute("disabled", true);
11555
+ $button_copy_record.setAttribute("disabled", true);
11556
+ }
11569
11557
  }
11570
11558
  if ((0, _yuneta_gobj_js.gobj_read_bool_attr)(gobj, "broadcast_select_rows_event")) (0, _yuneta_gobj_js.gobj_publish_event)(gobj, event, kw);
11571
11559
  return 0;
@@ -11587,7 +11575,8 @@ function ac_change_locale(gobj, event, kw, src) {
11587
11575
  * };
11588
11576
  ************************************************************/
11589
11577
  function ac_show_hook_data$1(gobj, event, kw, src) {
11590
- let row = (0, _yuneta_gobj_js.kwid_find_one_record)(gobj, (0, _yuneta_gobj_js.gobj_command)((0, _yuneta_gobj_js.gobj_parent)(gobj), "get_topic_data", kw, gobj).data, kw.row_id, null);
11578
+ let webix = (0, _yuneta_gobj_js.gobj_command)((0, _yuneta_gobj_js.gobj_parent)(gobj), "get_topic_data", kw, gobj);
11579
+ let row = (0, _yuneta_gobj_js.kwid_find_one_record)(gobj, webix.data, kw.row_id, null);
11591
11580
  if (row) {
11592
11581
  let cell = row[kw.col_id];
11593
11582
  show_dropdown_popup_menu(gobj, kw.click_x, kw.click_y, cell);
@@ -11726,7 +11715,7 @@ function create_gclass$2(gclass_name) {
11726
11715
  null
11727
11716
  ]
11728
11717
  ]]];
11729
- __gclass__$2 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
11718
+ const event_types = [
11730
11719
  ["EV_LOAD_NODES", 0],
11731
11720
  ["EV_LOAD_NODE_CREATED", 0],
11732
11721
  ["EV_LOAD_NODE_UPDATED", 0],
@@ -11747,7 +11736,8 @@ function create_gclass$2(gclass_name) {
11747
11736
  ["EV_REFRESH_TOPIC", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT],
11748
11737
  ["EV_SHOW", 0],
11749
11738
  ["EV_HIDE", 0]
11750
- ], states, gmt$2, 0, attrs_table$2, PRIVATE_DATA$2, 0, 0, 0, 0);
11739
+ ];
11740
+ __gclass__$2 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, event_types, states, gmt$2, 0, attrs_table$2, PRIVATE_DATA$2, 0, 0, 0, 0);
11751
11741
  if (!__gclass__$2) return -1;
11752
11742
  return 0;
11753
11743
  }
@@ -11945,7 +11935,8 @@ function mt_create$1(gobj) {
11945
11935
  if (!priv.treedb_name) (0, _yuneta_gobj_js.log_error)(`${(0, _yuneta_gobj_js.gobj_name)(gobj)} -> treedb_name not configured`);
11946
11936
  let __yui_main__ = (0, _yuneta_gobj_js.gobj_find_service)("__yui_main__");
11947
11937
  if (__yui_main__) (0, _yuneta_gobj_js.gobj_subscribe_event)(__yui_main__, "EV_RESIZE", {}, gobj);
11948
- (0, _yuneta_gobj_js.gobj_write_attr)(gobj, "canvas_id", (0, _yuneta_gobj_js.clean_name)((0, _yuneta_gobj_js.gobj_name)(gobj)) + "-canvas");
11938
+ let canvas_id = (0, _yuneta_gobj_js.clean_name)((0, _yuneta_gobj_js.gobj_name)(gobj)) + "-canvas";
11939
+ (0, _yuneta_gobj_js.gobj_write_attr)(gobj, "canvas_id", canvas_id);
11949
11940
  let $container_canvas = build_ui(gobj).querySelector(`#${priv.canvas_id}`);
11950
11941
  priv.gobj_nodes_tree = (0, _yuneta_gobj_js.gobj_create_service)(`${(0, _yuneta_gobj_js.gobj_name)(gobj)}-g6`, "C_G6_NODES_TREE", {
11951
11942
  $container: $container_canvas,
@@ -11999,6 +11990,7 @@ function mt_destroy$1(gobj) {
11999
11990
  function build_ui(gobj) {
12000
11991
  let priv = gobj.priv;
12001
11992
  let padding = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "padding");
11993
+ let $toolbar = make_toolbar(gobj);
12002
11994
  let $container = (0, _yuneta_gobj_js.createElement2)([
12003
11995
  "div",
12004
11996
  {
@@ -12008,7 +12000,7 @@ function build_ui(gobj) {
12008
12000
  [[
12009
12001
  "div",
12010
12002
  { class: "is-flex-grow-0 is-flex is-align-items-center toolbar_yui_treedb_graph" },
12011
- make_toolbar(gobj)
12003
+ $toolbar
12012
12004
  ], [
12013
12005
  "div",
12014
12006
  {
@@ -12801,7 +12793,7 @@ function create_gclass$1(gclass_name) {
12801
12793
  null
12802
12794
  ]
12803
12795
  ]]];
12804
- __gclass__$1 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
12796
+ const event_types = [
12805
12797
  ["EV_MT_COMMAND_ANSWER", _yuneta_gobj_js.event_flag_t.EVF_PUBLIC_EVENT],
12806
12798
  ["EV_TREEDB_NODE_CREATED", _yuneta_gobj_js.event_flag_t.EVF_PUBLIC_EVENT],
12807
12799
  ["EV_TREEDB_NODE_UPDATED", _yuneta_gobj_js.event_flag_t.EVF_PUBLIC_EVENT],
@@ -12824,7 +12816,8 @@ function create_gclass$1(gclass_name) {
12824
12816
  ["EV_SHOW", 0],
12825
12817
  ["EV_HIDE", 0],
12826
12818
  ["EV_RESIZE", 0]
12827
- ], states, gmt$1, 0, attrs_table$1, PRIVATE_DATA$1, 0, 0, 0, 0);
12819
+ ];
12820
+ __gclass__$1 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, event_types, states, gmt$1, 0, attrs_table$1, PRIVATE_DATA$1, 0, 0, 0, 0);
12828
12821
  if (!__gclass__$1) return -1;
12829
12822
  return 0;
12830
12823
  }
@@ -13038,7 +13031,8 @@ function _slicedToArray(r, e) {
13038
13031
  return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
13039
13032
  }
13040
13033
  var eventemitter3_default = (/* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((exports, module) => {
13041
- var has = Object.prototype.hasOwnProperty, prefix = "~";
13034
+ var has = Object.prototype.hasOwnProperty;
13035
+ var prefix = "~";
13042
13036
  /**
13043
13037
  * Constructor to create a storage for our `EE` objects.
13044
13038
  * An `Events` instance is a plain object whose properties are event names.
@@ -16828,7 +16822,6 @@ function segmentToCubic(segment, params) {
16828
16822
  py
16829
16823
  ];
16830
16824
  return ["C"].concat(lineToCubic(px1, py1, px, py));
16831
- default:
16832
16825
  }
16833
16826
  return segment;
16834
16827
  }
@@ -16852,7 +16845,8 @@ function path2Curve(pathInput, needZCommandIndexes) {
16852
16845
  for (var i = 0; i < ii; i += 1) {
16853
16846
  if (path[i]) pathCommand = path[i][0];
16854
16847
  allPathCommands[i] = pathCommand;
16855
- path[i] = segmentToCubic(path[i], params);
16848
+ var curveSegment = segmentToCubic(path[i], params);
16849
+ path[i] = curveSegment;
16856
16850
  fixArc(path, allPathCommands, i);
16857
16851
  ii = path.length;
16858
16852
  if (pathCommand === "Z") zCommandIndexes.push(i);
@@ -16904,20 +16898,22 @@ function segmentLineFactory(x1, y1, x2, y2, distance) {
16904
16898
  x: 0,
16905
16899
  y: 0
16906
16900
  };
16907
- if (typeof distance === "number") if (distance <= 0) point = {
16908
- x: x1,
16909
- y: y1
16910
- };
16911
- else if (distance >= length) point = {
16912
- x: x2,
16913
- y: y2
16914
- };
16915
- else {
16916
- var _a = midPoint([x1, y1], [x2, y2], distance / length);
16917
- point = {
16918
- x: _a[0],
16919
- y: _a[1]
16901
+ if (typeof distance === "number") {
16902
+ if (distance <= 0) point = {
16903
+ x: x1,
16904
+ y: y1
16920
16905
  };
16906
+ else if (distance >= length) point = {
16907
+ x: x2,
16908
+ y: y2
16909
+ };
16910
+ else {
16911
+ var _a = midPoint([x1, y1], [x2, y2], distance / length);
16912
+ point = {
16913
+ x: _a[0],
16914
+ y: _a[1]
16915
+ };
16916
+ }
16921
16917
  }
16922
16918
  return {
16923
16919
  length,
@@ -18071,7 +18067,12 @@ var ClipSpaceNearZ = /*#__PURE__*/ function(ClipSpaceNearZ) {
18071
18067
  ClipSpaceNearZ[ClipSpaceNearZ["NEGATIVE_ONE"] = 1] = "NEGATIVE_ONE";
18072
18068
  return ClipSpaceNearZ;
18073
18069
  }({});
18074
- var addVec3 = add, copyVec3 = copy$3, maxVec3 = max$1, minVec3 = min, scaleVec3 = scale, subVec3 = sub;
18070
+ var addVec3 = add;
18071
+ var copyVec3 = copy$3;
18072
+ var maxVec3 = max$1;
18073
+ var minVec3 = min;
18074
+ var scaleVec3 = scale;
18075
+ var subVec3 = sub;
18075
18076
  /**
18076
18077
  * Axis-Aligned Bounding Box
18077
18078
  * 为了便于后续 Frustum Culling,通过查找表定义 p-vertex 和 n-vertex
@@ -18468,7 +18469,11 @@ var Rectangle = /*#__PURE__*/ function() {
18468
18469
  value: function toJSON() {}
18469
18470
  }], [{
18470
18471
  key: "fromRect",
18471
- value: function fromRect(rect) {
18472
+ value:
18473
+ /**
18474
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMRect/fromRect_static
18475
+ */
18476
+ function fromRect(rect) {
18472
18477
  return new Rectangle(rect.x, rect.y, rect.width, rect.height);
18473
18478
  }
18474
18479
  }, {
@@ -18558,14 +18563,15 @@ function getEulerFromMat4(out, m) {
18558
18563
  var z;
18559
18564
  var _mat4$getScaling2 = _slicedToArray(getScaling(create$3(), m), 3), sx = _mat4$getScaling2[0], sy = _mat4$getScaling2[1], sz = _mat4$getScaling2[2];
18560
18565
  var y = Math.asin(-m[2] / sx);
18561
- if (y < HALF_PI) if (y > -HALF_PI) {
18562
- x = Math.atan2(m[6] / sy, m[10] / sz);
18563
- z = Math.atan2(m[1] / sx, m[0] / sx);
18566
+ if (y < HALF_PI) {
18567
+ if (y > -HALF_PI) {
18568
+ x = Math.atan2(m[6] / sy, m[10] / sz);
18569
+ z = Math.atan2(m[1] / sx, m[0] / sx);
18570
+ } else {
18571
+ z = 0;
18572
+ x = -Math.atan2(m[4] / sy, m[5] / sy);
18573
+ }
18564
18574
  } else {
18565
- z = 0;
18566
- x = -Math.atan2(m[4] / sy, m[5] / sy);
18567
- }
18568
- else {
18569
18575
  z = 0;
18570
18576
  x = Math.atan2(m[4] / sy, m[5] / sy);
18571
18577
  }
@@ -18632,8 +18638,10 @@ function decompose(mat) {
18632
18638
  var row1y = mat[4];
18633
18639
  var scalingX = Math.sqrt(row0x * row0x + row0y * row0y);
18634
18640
  var scalingY = Math.sqrt(row1x * row1x + row1y * row1y);
18635
- if (row0x * row1y - row0y * row1x < 0) if (row0x < row1y) scalingX = -scalingX;
18636
- else scalingY = -scalingY;
18641
+ if (row0x * row1y - row0y * row1x < 0) {
18642
+ if (row0x < row1y) scalingX = -scalingX;
18643
+ else scalingY = -scalingY;
18644
+ }
18637
18645
  if (scalingX) {
18638
18646
  var invScalingX = 1 / scalingX;
18639
18647
  row0x *= invScalingX;
@@ -19607,9 +19615,10 @@ function updateLocalTransform(transform) {
19607
19615
  var hasRotation = localRotation[3] !== 1 || localRotation[0] !== 0 || localRotation[1] !== 0 || localRotation[2] !== 0;
19608
19616
  var hasScale = localScale[0] !== 1 || localScale[1] !== 1 || localScale[2] !== 1;
19609
19617
  var hasOrigin = origin[0] !== 0 || origin[1] !== 0 || origin[2] !== 0;
19610
- if (!hasRotation && !hasScale && !hasOrigin) if (hasPosition) fromTranslation(localTransform, localPosition);
19611
- else identity(localTransform);
19612
- else fromRotationTranslationScaleOrigin(localTransform, localRotation, localPosition, localScale, origin);
19618
+ if (!hasRotation && !hasScale && !hasOrigin) {
19619
+ if (hasPosition) fromTranslation(localTransform, localPosition);
19620
+ else identity(localTransform);
19621
+ } else fromRotationTranslationScaleOrigin(localTransform, localRotation, localPosition, localScale, origin);
19613
19622
  }
19614
19623
  transform.localDirtyFlag = false;
19615
19624
  }
@@ -19707,7 +19716,16 @@ function extend(parent, definition) {
19707
19716
  function Color() {}
19708
19717
  var darker = .7;
19709
19718
  var brighter = 1 / darker;
19710
- var reI = "\\s*([+-]?\\d+)\\s*", reN = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*", reP = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*", reHex = /^#([0-9a-f]{3,8})$/, reRgbInteger = new RegExp(`^rgb\\(${reI},${reI},${reI}\\)$`), reRgbPercent = new RegExp(`^rgb\\(${reP},${reP},${reP}\\)$`), reRgbaInteger = new RegExp(`^rgba\\(${reI},${reI},${reI},${reN}\\)$`), reRgbaPercent = new RegExp(`^rgba\\(${reP},${reP},${reP},${reN}\\)$`), reHslPercent = new RegExp(`^hsl\\(${reN},${reP},${reP}\\)$`), reHslaPercent = new RegExp(`^hsla\\(${reN},${reP},${reP},${reN}\\)$`);
19719
+ var reI = "\\s*([+-]?\\d+)\\s*";
19720
+ var reN = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*";
19721
+ var reP = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*";
19722
+ var reHex = /^#([0-9a-f]{3,8})$/;
19723
+ var reRgbInteger = new RegExp(`^rgb\\(${reI},${reI},${reI}\\)$`);
19724
+ var reRgbPercent = new RegExp(`^rgb\\(${reP},${reP},${reP}\\)$`);
19725
+ var reRgbaInteger = new RegExp(`^rgba\\(${reI},${reI},${reI},${reN}\\)$`);
19726
+ var reRgbaPercent = new RegExp(`^rgba\\(${reP},${reP},${reP},${reN}\\)$`);
19727
+ var reHslPercent = new RegExp(`^hsl\\(${reN},${reP},${reP}\\)$`);
19728
+ var reHslaPercent = new RegExp(`^hsla\\(${reN},${reP},${reP},${reN}\\)$`);
19711
19729
  var named = {
19712
19730
  aliceblue: 15792383,
19713
19731
  antiquewhite: 16444375,
@@ -20188,9 +20206,7 @@ var conversionToCanonicalUnitsScaleFactor = function conversionToCanonicalUnitsS
20188
20206
  case UnitType.kGradians:
20189
20207
  factor = .9;
20190
20208
  break;
20191
- case UnitType.kTurns:
20192
- factor = 360;
20193
- break;
20209
+ case UnitType.kTurns: factor = 360;
20194
20210
  }
20195
20211
  return factor;
20196
20212
  };
@@ -20364,9 +20380,10 @@ var CSSKeywordValue = /*#__PURE__*/ function(_CSSStyleValue) {
20364
20380
  var formatInfinityOrNaN = function formatInfinityOrNaN(number) {
20365
20381
  var suffix = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
20366
20382
  var result = "";
20367
- if (!Number.isFinite(number)) if (number > 0) result = "infinity";
20368
- else result = "-infinity";
20369
- else result = "NaN";
20383
+ if (!Number.isFinite(number)) {
20384
+ if (number > 0) result = "infinity";
20385
+ else result = "-infinity";
20386
+ } else result = "NaN";
20370
20387
  return result += suffix;
20371
20388
  };
20372
20389
  var toCanonicalUnit = function toCanonicalUnit(unit) {
@@ -20935,8 +20952,10 @@ var parseGradient = memoize(function(colorStr) {
20935
20952
  }
20936
20953
  } else if (type === "r") {
20937
20954
  var parsedRadialGradient = parseRadialGradient(colorStr);
20938
- if (parsedRadialGradient) if (isString(parsedRadialGradient)) colorStr = parsedRadialGradient;
20939
- else return [new CSSGradientValue(GradientType.RadialGradient, parsedRadialGradient)];
20955
+ if (parsedRadialGradient) {
20956
+ if (isString(parsedRadialGradient)) colorStr = parsedRadialGradient;
20957
+ else return [new CSSGradientValue(GradientType.RadialGradient, parsedRadialGradient)];
20958
+ }
20940
20959
  } else if (type === "p") return parsePattern(colorStr);
20941
20960
  }
20942
20961
  });
@@ -21353,7 +21372,6 @@ function getPathBBox(segments, lineWidth) {
21353
21372
  default:
21354
21373
  xArr.push(currentPoint[0]);
21355
21374
  yArr.push(currentPoint[1]);
21356
- break;
21357
21375
  }
21358
21376
  if (box$1) {
21359
21377
  segment.box = box$1;
@@ -21528,9 +21546,7 @@ function path2Segments(path) {
21528
21546
  startMovePoint = [params[1], params[2]];
21529
21547
  lastStartMovePointIndex = i;
21530
21548
  break;
21531
- case "A":
21532
- segment.arcParams = getArcParams(currentPoint, params);
21533
- break;
21549
+ case "A": segment.arcParams = getArcParams(currentPoint, params);
21534
21550
  }
21535
21551
  if (command === "Z") {
21536
21552
  currentPoint = startMovePoint;
@@ -22817,10 +22833,12 @@ var parseTransformOrigin = memoize(function(value) {
22817
22833
  if (isString(value)) {
22818
22834
  if (value === "text-anchor") return [getOrCreateUnitValue(0, "px"), getOrCreateUnitValue(0, "px")];
22819
22835
  var values = value.split(" ");
22820
- if (values.length === 1) if (values[0] === "top" || values[0] === "bottom") {
22821
- values[1] = values[0];
22822
- values[0] = "center";
22823
- } else values[1] = "center";
22836
+ if (values.length === 1) {
22837
+ if (values[0] === "top" || values[0] === "bottom") {
22838
+ values[1] = values[0];
22839
+ values[0] = "center";
22840
+ } else values[1] = "center";
22841
+ }
22824
22842
  if (values.length !== 2) return null;
22825
22843
  return [parseLengthOrPercentage(convertKeyword2Percent(values[0])), parseLengthOrPercentage(convertKeyword2Percent(values[1]))];
22826
22844
  }
@@ -23698,7 +23716,14 @@ var CSSPropertyLengthOrPercentage = /*#__PURE__*/ function() {
23698
23716
  }
23699
23717
  return _createClass(CSSPropertyLengthOrPercentage, [{
23700
23718
  key: "calculator",
23701
- value: function calculator(name, oldParsed, computed, object, runtime) {
23719
+ value:
23720
+ /**
23721
+ * according to parent's bounds
23722
+ *
23723
+ * @example
23724
+ * CSS.percent(50) -> CSS.px(0.5 * parent.width)
23725
+ */
23726
+ function calculator(name, oldParsed, computed, object, runtime) {
23702
23727
  if (isNumber(computed)) return computed;
23703
23728
  if (CSSUnitValue.isRelativeUnit(computed.unit)) {
23704
23729
  if (computed.unit === UnitType.kPercentage) return 0;
@@ -24615,7 +24640,19 @@ var FederatedEvent = /*#__PURE__*/ function() {
24615
24640
  return _createClass(FederatedEvent, [
24616
24641
  {
24617
24642
  key: "name",
24618
- get: function get() {
24643
+ get:
24644
+ /**
24645
+ * The type of event, supports the following:
24646
+ * * pointerdown
24647
+ * * touchstart
24648
+ * * mousedown
24649
+ * * rightdown
24650
+ * * ...
24651
+ */
24652
+ /**
24653
+ * @deprecated
24654
+ */
24655
+ function get() {
24619
24656
  return this.type;
24620
24657
  }
24621
24658
  },
@@ -24681,7 +24718,15 @@ var FederatedEvent = /*#__PURE__*/ function() {
24681
24718
  },
24682
24719
  {
24683
24720
  key: "composedPath",
24684
- value: function composedPath() {
24721
+ value:
24722
+ /**
24723
+ * The propagation path for this event
24724
+ * @see https://developer.mozilla.org/zh-CN/docs/Web/API/Event/composedPath
24725
+ *
24726
+ * So composedPath()[0] represents the original target.
24727
+ * @see https://polymer-library.polymer-project.org/3.0/docs/devguide/events#retargeting
24728
+ */
24729
+ function composedPath() {
24685
24730
  if (this.manager && (!this.path || this.path[0] !== this.target)) this.path = this.target ? this.manager.propagationPath(this.target) : [];
24686
24731
  return this.path;
24687
24732
  }
@@ -24713,7 +24758,12 @@ var FederatedEvent = /*#__PURE__*/ function() {
24713
24758
  },
24714
24759
  {
24715
24760
  key: "initEvent",
24716
- value: function initEvent() {}
24761
+ value:
24762
+ /**
24763
+ * added for compatibility with DOM Event,
24764
+ * deprecated props and methods
24765
+ */
24766
+ function initEvent() {}
24717
24767
  },
24718
24768
  {
24719
24769
  key: "initUIEvent",
@@ -24876,7 +24926,43 @@ var FederatedPointerEvent = /*#__PURE__*/ function(_FederatedMouseEvent) {
24876
24926
  return _createClass(FederatedPointerEvent, [
24877
24927
  {
24878
24928
  key: "getCoalescedEvents",
24879
- value: function getCoalescedEvents() {
24929
+ value:
24930
+ /**
24931
+ * The type of pointer that triggered the event.
24932
+ *
24933
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/pointerType
24934
+ */
24935
+ /**
24936
+ * Pressure applied by the pointing device during the event.
24937
+ *s
24938
+ * A Touch's force property will be represented by this value.
24939
+ *
24940
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/pressure
24941
+ */
24942
+ /**
24943
+ * Barrel pressure on a stylus pointer.
24944
+ *
24945
+ * @see https://w3c.github.io/pointerevents/#pointerevent-interface
24946
+ */
24947
+ /**
24948
+ * The angle, in degrees, between the pointer device and the screen.
24949
+ *
24950
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/tiltX
24951
+ */
24952
+ /**
24953
+ * The angle, in degrees, between the pointer device and the screen.
24954
+ *
24955
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/tiltY
24956
+ */
24957
+ /**
24958
+ * Twist of a stylus pointer.
24959
+ *
24960
+ * @see https://w3c.github.io/pointerevents/#pointerevent-interface
24961
+ */
24962
+ /**
24963
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/getCoalescedEvents
24964
+ */
24965
+ function getCoalescedEvents() {
24880
24966
  if (this.type === "pointermove" || this.type === "mousemove" || this.type === "touchmove") return [this];
24881
24967
  return [];
24882
24968
  }
@@ -24903,7 +24989,15 @@ var FederatedWheelEvent = /*#__PURE__*/ function(_FederatedMouseEvent) {
24903
24989
  _inherits(FederatedWheelEvent, _FederatedMouseEvent);
24904
24990
  return _createClass(FederatedWheelEvent, [{
24905
24991
  key: "clone",
24906
- value: function clone() {
24992
+ value:
24993
+ /**
24994
+ * The units of `deltaX`, `deltaY`, and `deltaZ`. This is one of `DOM_DELTA_LINE`,
24995
+ * `DOM_DELTA_PAGE`, `DOM_DELTA_PIXEL`.
24996
+ */
24997
+ /** Horizontal scroll amount */
24998
+ /** Vertical scroll amount */
24999
+ /** z-axis scroll amount. */
25000
+ function clone() {
24907
25001
  return this.manager.cloneWheelEvent(this);
24908
25002
  }
24909
25003
  }]);
@@ -24992,7 +25086,11 @@ var Node$1 = /*#__PURE__*/ function(_EventTarget) {
24992
25086
  return _createClass(Node, [
24993
25087
  {
24994
25088
  key: "textContent",
24995
- get: function get() {
25089
+ get:
25090
+ /**
25091
+ * @see https://developer.mozilla.org/zh-CN/docs/Web/API/Node/textContent
25092
+ */
25093
+ function get() {
24996
25094
  var out = "";
24997
25095
  if (this.nodeName === Shape.TEXT) out += this.style.text;
24998
25096
  var _iterator = _createForOfIteratorHelper(this.childNodes), _step;
@@ -25070,7 +25168,12 @@ var Node$1 = /*#__PURE__*/ function(_EventTarget) {
25070
25168
  },
25071
25169
  {
25072
25170
  key: "parent",
25073
- get: function get() {
25171
+ get:
25172
+ /**
25173
+ * @deprecated
25174
+ * @alias parentNode
25175
+ */
25176
+ function get() {
25074
25177
  return this.parentNode;
25075
25178
  }
25076
25179
  },
@@ -25140,7 +25243,12 @@ var Node$1 = /*#__PURE__*/ function(_EventTarget) {
25140
25243
  },
25141
25244
  {
25142
25245
  key: "contain",
25143
- value: function contain(other) {
25246
+ value:
25247
+ /**
25248
+ * @deprecated
25249
+ * @alias contains
25250
+ */
25251
+ function contain(other) {
25144
25252
  return this.contains(other);
25145
25253
  }
25146
25254
  },
@@ -25191,7 +25299,12 @@ var Node$1 = /*#__PURE__*/ function(_EventTarget) {
25191
25299
  return _createClass(EventTarget, [
25192
25300
  {
25193
25301
  key: "on",
25194
- value: function on(type, listener, options) {
25302
+ value:
25303
+ /**
25304
+ * @deprecated
25305
+ * @alias addEventListener
25306
+ */
25307
+ function on(type, listener, options) {
25195
25308
  this.addEventListener(type, listener, options);
25196
25309
  return this;
25197
25310
  }
@@ -25354,7 +25467,11 @@ var OffscreenCanvasCreator = /*#__PURE__*/ function() {
25354
25467
  }
25355
25468
  }], [{
25356
25469
  key: "createCanvas",
25357
- value: function createCanvas() {
25470
+ value:
25471
+ /**
25472
+ * @returns new canvas instance
25473
+ */
25474
+ function createCanvas() {
25358
25475
  try {
25359
25476
  return new window.OffscreenCanvas(0, 0);
25360
25477
  } catch (_unused2) {}
@@ -25977,10 +26094,12 @@ var DefaultSceneGraphService = /*#__PURE__*/ function() {
25977
26094
  var aabb = this.getTransformedGeometryBounds(element, render, existedAABB);
25978
26095
  element.childNodes.forEach(function(child) {
25979
26096
  var childBounds = _this.getBounds(child, render);
25980
- if (childBounds) if (!aabb) {
25981
- aabb = existedAABB || new AABB();
25982
- aabb.update(childBounds.center, childBounds.halfExtents);
25983
- } else aabb.add(childBounds);
26097
+ if (childBounds) {
26098
+ if (!aabb) {
26099
+ aabb = existedAABB || new AABB();
26100
+ aabb.update(childBounds.center, childBounds.halfExtents);
26101
+ } else aabb.add(childBounds);
26102
+ }
25984
26103
  });
25985
26104
  if (!aabb) aabb = new AABB();
25986
26105
  if (render) {
@@ -26187,12 +26306,14 @@ var DefaultSceneGraphService = /*#__PURE__*/ function() {
26187
26306
  var mutations = /* @__PURE__ */ new Set();
26188
26307
  canvas.getRoot().forEach(function(item) {
26189
26308
  (item.mutations || []).forEach(function(mutation) {
26190
- if (mutation.type === "attributes" && mutation._boundsChangeData) if (mutation._boundsChangeData.affectChildren) item.forEach(function(node) {
26191
- var newMutation = _objectSpread2({}, mutation);
26192
- newMutation.target = node;
26193
- mutations.add(newMutation);
26194
- });
26195
- else mutations.add(mutation);
26309
+ if (mutation.type === "attributes" && mutation._boundsChangeData) {
26310
+ if (mutation._boundsChangeData.affectChildren) item.forEach(function(node) {
26311
+ var newMutation = _objectSpread2({}, mutation);
26312
+ newMutation.target = node;
26313
+ mutations.add(newMutation);
26314
+ });
26315
+ else mutations.add(mutation);
26316
+ }
26196
26317
  });
26197
26318
  item.mutations = void 0;
26198
26319
  });
@@ -26367,7 +26488,15 @@ var TextService = /*#__PURE__*/ function() {
26367
26488
  return _createClass(TextService, [
26368
26489
  {
26369
26490
  key: "measureFont",
26370
- value: function measureFont(font, offscreenCanvas) {
26491
+ value:
26492
+ /**
26493
+ * A global cache for character widths, keyed by font string.
26494
+ * e.g. { '16px Arial': { 'a': 8, 'b': 9 } }
26495
+ */
26496
+ /**
26497
+ * Calculates the ascent, descent and fontSize of a given font-style.
26498
+ */
26499
+ function measureFont(font, offscreenCanvas) {
26371
26500
  if (this.fontMetricsCache[font]) return this.fontMetricsCache[font];
26372
26501
  var properties = {
26373
26502
  ascent: 0,
@@ -26865,7 +26994,18 @@ var Element$1 = /*#__PURE__*/ function(_Node) {
26865
26994
  return _createClass(Element, [
26866
26995
  {
26867
26996
  key: "dirty",
26868
- value: function dirty() {
26997
+ value:
26998
+ /**
26999
+ * Marks the element as dirty, indicating it needs re-rendering or relayout.
27000
+ *
27001
+ * @param styleFlag - Whether to update style state (default: true).
27002
+ * When true, sets `renderable.dirty` to true.
27003
+ * @param layoutFlag - Optional. When provided, updates layout-related dirty flags:
27004
+ * - `renderable.boundsDirty`
27005
+ * - `renderable.renderBoundsDirty`
27006
+ * - `geometry.dirty`
27007
+ */
27008
+ function dirty() {
26869
27009
  var styleFlag = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
26870
27010
  var layoutFlag = arguments.length > 1 ? arguments[1] : void 0;
26871
27011
  this.renderable.dirty = styleFlag;
@@ -26878,7 +27018,16 @@ var Element$1 = /*#__PURE__*/ function(_Node) {
26878
27018
  },
26879
27019
  {
26880
27020
  key: "className",
26881
- get: function get() {
27021
+ get:
27022
+ /**
27023
+ * used with `getElementById()`
27024
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/id
27025
+ */
27026
+ /**
27027
+ * used in `getElementsByClassName`
27028
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementsByClassName
27029
+ */
27030
+ function get() {
26882
27031
  return this.getAttribute("class") || "";
26883
27032
  },
26884
27033
  set: function set(className) {
@@ -26887,7 +27036,11 @@ var Element$1 = /*#__PURE__*/ function(_Node) {
26887
27036
  },
26888
27037
  {
26889
27038
  key: "classList",
26890
- get: function get() {
27039
+ get:
27040
+ /**
27041
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/classList
27042
+ */
27043
+ function get() {
26891
27044
  return this.className.split(" ").filter(function(c) {
26892
27045
  return c !== "";
26893
27046
  });
@@ -26961,8 +27114,10 @@ var Element$1 = /*#__PURE__*/ function(_Node) {
26961
27114
  var _this$ownerDocument;
26962
27115
  if (child.destroyed) throw new Error(ERROR_MSG_APPEND_DESTROYED_ELEMENT);
26963
27116
  runtime.sceneGraphService.attach(child, this, index);
26964
- if ((_this$ownerDocument = this.ownerDocument) !== null && _this$ownerDocument !== void 0 && _this$ownerDocument.defaultView) if (!isInFragment(this) && child.nodeName === Shape.FRAGMENT) this.ownerDocument.defaultView.mountFragment(child);
26965
- else this.ownerDocument.defaultView.mountChildren(child);
27117
+ if ((_this$ownerDocument = this.ownerDocument) !== null && _this$ownerDocument !== void 0 && _this$ownerDocument.defaultView) {
27118
+ if (!isInFragment(this) && child.nodeName === Shape.FRAGMENT) this.ownerDocument.defaultView.mountFragment(child);
27119
+ else this.ownerDocument.defaultView.mountChildren(child);
27120
+ }
26966
27121
  if (this.isMutationObserved) {
26967
27122
  insertedEvent.relatedNode = this;
26968
27123
  child.dispatchEvent(insertedEvent);
@@ -27228,13 +27383,22 @@ var Element$1 = /*#__PURE__*/ function(_Node) {
27228
27383
  },
27229
27384
  {
27230
27385
  key: "computedStyleMap",
27231
- value: function computedStyleMap() {
27386
+ value:
27387
+ /**
27388
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/computedStyleMap
27389
+ * eg. circle.computedStyleMap().get('fill');
27390
+ */
27391
+ function computedStyleMap() {
27232
27392
  return new Map(Object.entries(this.computedStyle));
27233
27393
  }
27234
27394
  },
27235
27395
  {
27236
27396
  key: "getAttributeNames",
27237
- value: function getAttributeNames() {
27397
+ value:
27398
+ /**
27399
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/getAttributeNames
27400
+ */
27401
+ function getAttributeNames() {
27238
27402
  return Object.keys(this.attributes);
27239
27403
  }
27240
27404
  },
@@ -27942,7 +28106,7 @@ var DisplayObject = /*#__PURE__*/ function(_Element) {
27942
28106
  }
27943
28107
  ]);
27944
28108
  }(Element$1);
27945
- DisplayObject.PARSED_STYLE_LIST = new Set([
28109
+ DisplayObject.PARSED_STYLE_LIST = /* @__PURE__ */ new Set([
27946
28110
  "class",
27947
28111
  "className",
27948
28112
  "clipPath",
@@ -28023,7 +28187,7 @@ var CustomElement = /*#__PURE__*/ function(_DisplayObject) {
28023
28187
  _inherits(CustomElement, _DisplayObject);
28024
28188
  return _createClass(CustomElement);
28025
28189
  }(DisplayObject);
28026
- CustomElement.PARSED_STYLE_LIST = new Set([
28190
+ CustomElement.PARSED_STYLE_LIST = /* @__PURE__ */ new Set([
28027
28191
  "class",
28028
28192
  "className",
28029
28193
  "clipPath",
@@ -28072,7 +28236,7 @@ var Fragment = /*#__PURE__*/ function(_DisplayObject) {
28072
28236
  _inherits(Fragment, _DisplayObject);
28073
28237
  return _createClass(Fragment);
28074
28238
  }(DisplayObject);
28075
- Fragment.PARSED_STYLE_LIST = new Set(["class", "className"]);
28239
+ Fragment.PARSED_STYLE_LIST = /* @__PURE__ */ new Set(["class", "className"]);
28076
28240
  /**
28077
28241
  * its attributes are inherited by its children.
28078
28242
  * @see https://developer.mozilla.org/zh-CN/docs/Web/SVG/Element/g
@@ -28092,7 +28256,7 @@ var Group = /*#__PURE__*/ function(_DisplayObject) {
28092
28256
  _inherits(Group, _DisplayObject);
28093
28257
  return _createClass(Group);
28094
28258
  }(DisplayObject);
28095
- Group.PARSED_STYLE_LIST = new Set([
28259
+ Group.PARSED_STYLE_LIST = /* @__PURE__ */ new Set([
28096
28260
  "class",
28097
28261
  "className",
28098
28262
  "clipPath",
@@ -29382,7 +29546,7 @@ var RefCountCache = /*#__PURE__*/ function() {
29382
29546
  if (this.cacheStore.has(key)) return false;
29383
29547
  this.cacheStore.set(key, {
29384
29548
  value: item,
29385
- counter: new Set([ref.entity])
29549
+ counter: /* @__PURE__ */ new Set([ref.entity])
29386
29550
  });
29387
29551
  this.onRefAdded(ref);
29388
29552
  return true;
@@ -29878,7 +30042,11 @@ var HTMLRenderingPlugin = /*#__PURE__*/ function() {
29878
30042
  return _createClass(HTMLRenderingPlugin, [
29879
30043
  {
29880
30044
  key: "joinTransformMatrix",
29881
- value: function joinTransformMatrix(matrix) {
30045
+ value:
30046
+ /**
30047
+ * ! The reason for adding `offset` is that the `transform-origin` coordinate system of DOM is the local coordinate system of the element, while the `transform-origin` coordinate system of canvas drawing is the local coordinate system of the element's parent element. At the same time, the `transform` attribute value of the DOM element does not include `transform-origin`.
30048
+ */
30049
+ function joinTransformMatrix(matrix) {
29882
30050
  var offset = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [
29883
30051
  0,
29884
30052
  0,
@@ -30077,18 +30245,20 @@ var HTMLRenderingPlugin = /*#__PURE__*/ function() {
30077
30245
  case "fill":
30078
30246
  var fill = object.parsedStyle.fill;
30079
30247
  var color = "";
30080
- if (isCSSRGB(fill)) if (fill.isNone) color = "transparent";
30081
- else color = object.getAttribute("fill");
30082
- else if (Array.isArray(fill)) color = object.getAttribute("fill");
30248
+ if (isCSSRGB(fill)) {
30249
+ if (fill.isNone) color = "transparent";
30250
+ else color = object.getAttribute("fill");
30251
+ } else if (Array.isArray(fill)) color = object.getAttribute("fill");
30083
30252
  else if (isPattern(fill));
30084
30253
  $el.style.background = color;
30085
30254
  break;
30086
30255
  case "stroke":
30087
30256
  var stroke = object.parsedStyle.stroke;
30088
30257
  var borderColor = "";
30089
- if (isCSSRGB(stroke)) if (stroke.isNone) borderColor = "transparent";
30090
- else borderColor = object.getAttribute("stroke");
30091
- else if (Array.isArray(stroke)) borderColor = object.getAttribute("stroke");
30258
+ if (isCSSRGB(stroke)) {
30259
+ if (stroke.isNone) borderColor = "transparent";
30260
+ else borderColor = object.getAttribute("stroke");
30261
+ } else if (Array.isArray(stroke)) borderColor = object.getAttribute("stroke");
30092
30262
  else if (isPattern(stroke));
30093
30263
  $el.style["border-color"] = borderColor;
30094
30264
  $el.style["border-style"] = "solid";
@@ -30527,10 +30697,10 @@ PERFORMANCE OF THIS SOFTWARE.
30527
30697
  return result;
30528
30698
  };
30529
30699
  var chars$2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
30530
- var lookup$2 = typeof Uint8Array === "undefined" ? [] : new Uint8Array(256);
30700
+ var lookup$2 = typeof Uint8Array === "undefined" ? [] : /* @__PURE__ */ new Uint8Array(256);
30531
30701
  for (var i$2 = 0; i$2 < chars$2.length; i$2++) lookup$2[chars$2.charCodeAt(i$2)] = i$2;
30532
30702
  var chars$1$1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
30533
- var lookup$1$1 = typeof Uint8Array === "undefined" ? [] : new Uint8Array(256);
30703
+ var lookup$1$1 = typeof Uint8Array === "undefined" ? [] : /* @__PURE__ */ new Uint8Array(256);
30534
30704
  for (var i$1$1 = 0; i$1$1 < chars$1$1.length; i$1$1++) lookup$1$1[chars$1$1.charCodeAt(i$1$1)] = i$1$1;
30535
30705
  var decode$1 = function(base64) {
30536
30706
  var bufferLength = base64.length * .75, len = base64.length, i, p = 0, encoded1, encoded2, encoded3, encoded4;
@@ -30668,7 +30838,7 @@ PERFORMANCE OF THIS SOFTWARE.
30668
30838
  return Trie;
30669
30839
  }();
30670
30840
  var chars$3 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
30671
- var lookup$3 = typeof Uint8Array === "undefined" ? [] : new Uint8Array(256);
30841
+ var lookup$3 = typeof Uint8Array === "undefined" ? [] : /* @__PURE__ */ new Uint8Array(256);
30672
30842
  for (var i$3 = 0; i$3 < chars$3.length; i$3++) lookup$3[chars$3.charCodeAt(i$3)] = i$3;
30673
30843
  var base64$1 = "KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA==";
30674
30844
  var LETTER_NUMBER_MODIFIER = 50;
@@ -30780,8 +30950,10 @@ PERFORMANCE OF THIS SOFTWARE.
30780
30950
  if (classType === CJ) return types.push(lineBreak === "strict" ? NS : ID);
30781
30951
  if (classType === SA) return types.push(AL);
30782
30952
  if (classType === AI) return types.push(AL);
30783
- if (classType === XX) if (codePoint >= 131072 && codePoint <= 196605 || codePoint >= 196608 && codePoint <= 262141) return types.push(ID);
30784
- else return types.push(AL);
30953
+ if (classType === XX) {
30954
+ if (codePoint >= 131072 && codePoint <= 196605 || codePoint >= 196608 && codePoint <= 262141) return types.push(ID);
30955
+ else return types.push(AL);
30956
+ }
30785
30957
  types.push(classType);
30786
30958
  });
30787
30959
  return [
@@ -31443,12 +31615,13 @@ PERFORMANCE OF THIS SOFTWARE.
31443
31615
  } else if (codePoint === QUOTATION_MARK || codePoint === APOSTROPHE || codePoint === LEFT_PARENTHESIS || isNonPrintableCodePoint(codePoint)) {
31444
31616
  this.consumeBadUrlRemnants();
31445
31617
  return BAD_URL_TOKEN;
31446
- } else if (codePoint === REVERSE_SOLIDUS) if (isValidEscape(codePoint, this.peekCodePoint(0))) value.push(this.consumeEscapedCodePoint());
31447
- else {
31448
- this.consumeBadUrlRemnants();
31449
- return BAD_URL_TOKEN;
31450
- }
31451
- else value.push(codePoint);
31618
+ } else if (codePoint === REVERSE_SOLIDUS) {
31619
+ if (isValidEscape(codePoint, this.peekCodePoint(0))) value.push(this.consumeEscapedCodePoint());
31620
+ else {
31621
+ this.consumeBadUrlRemnants();
31622
+ return BAD_URL_TOKEN;
31623
+ }
31624
+ } else value.push(codePoint);
31452
31625
  }
31453
31626
  };
31454
31627
  Tokenizer.prototype.consumeWhiteSpace = function() {
@@ -32192,15 +32365,13 @@ PERFORMANCE OF THIS SOFTWARE.
32192
32365
  ry = Math.max(Math.abs(y), Math.abs(y - height));
32193
32366
  }
32194
32367
  break;
32195
- case 3:
32196
- if (gradient.shape === 0) rx = ry = Math.max(distance(x, y), distance(x, y - height), distance(x - width, y), distance(x - width, y - height));
32197
- else if (gradient.shape === 1) {
32198
- var c = Math.max(Math.abs(y), Math.abs(y - height)) / Math.max(Math.abs(x), Math.abs(x - width));
32199
- var _b = findCorner(width, height, x, y, false), cx = _b[0], cy = _b[1];
32200
- rx = distance(cx - x, (cy - y) / c);
32201
- ry = c * rx;
32202
- }
32203
- break;
32368
+ case 3: if (gradient.shape === 0) rx = ry = Math.max(distance(x, y), distance(x, y - height), distance(x - width, y), distance(x - width, y - height));
32369
+ else if (gradient.shape === 1) {
32370
+ var c = Math.max(Math.abs(y), Math.abs(y - height)) / Math.max(Math.abs(x), Math.abs(x - width));
32371
+ var _b = findCorner(width, height, x, y, false), cx = _b[0], cy = _b[1];
32372
+ rx = distance(cx - x, (cy - y) / c);
32373
+ ry = c * rx;
32374
+ }
32204
32375
  }
32205
32376
  if (Array.isArray(gradient.size)) {
32206
32377
  rx = getAbsoluteValue(gradient.size[0], width);
@@ -33180,7 +33351,6 @@ PERFORMANCE OF THIS SOFTWARE.
33180
33351
  case 4:
33181
33352
  results.push(accumulator.join(" "));
33182
33353
  accumulator.length = 0;
33183
- break;
33184
33354
  }
33185
33355
  });
33186
33356
  if (accumulator.length) results.push(accumulator.join(" "));
@@ -33389,9 +33559,7 @@ PERFORMANCE OF THIS SOFTWARE.
33389
33559
  case "fill":
33390
33560
  layers.push(0);
33391
33561
  break;
33392
- case "markers":
33393
- layers.push(2);
33394
- break;
33562
+ case "markers": layers.push(2);
33395
33563
  }
33396
33564
  });
33397
33565
  DEFAULT_VALUE.forEach(function(value) {
@@ -33537,20 +33705,18 @@ PERFORMANCE OF THIS SOFTWARE.
33537
33705
  case 0: return descriptor.parse(context, parser.parseComponentValue());
33538
33706
  case 1: return descriptor.parse(context, parser.parseComponentValues());
33539
33707
  case 4: return parser.parseComponentValue();
33540
- case 3:
33541
- switch (descriptor.format) {
33542
- case "angle": return angle.parse(context, parser.parseComponentValue());
33543
- case "color": return color$1.parse(context, parser.parseComponentValue());
33544
- case "image": return image.parse(context, parser.parseComponentValue());
33545
- case "length":
33546
- var length_1 = parser.parseComponentValue();
33547
- return isLength(length_1) ? length_1 : ZERO_LENGTH;
33548
- case "length-percentage":
33549
- var value_1 = parser.parseComponentValue();
33550
- return isLengthPercentage(value_1) ? value_1 : ZERO_LENGTH;
33551
- case "time": return time.parse(context, parser.parseComponentValue());
33552
- }
33553
- break;
33708
+ case 3: switch (descriptor.format) {
33709
+ case "angle": return angle.parse(context, parser.parseComponentValue());
33710
+ case "color": return color$1.parse(context, parser.parseComponentValue());
33711
+ case "image": return image.parse(context, parser.parseComponentValue());
33712
+ case "length":
33713
+ var length_1 = parser.parseComponentValue();
33714
+ return isLength(length_1) ? length_1 : ZERO_LENGTH;
33715
+ case "length-percentage":
33716
+ var value_1 = parser.parseComponentValue();
33717
+ return isLengthPercentage(value_1) ? value_1 : ZERO_LENGTH;
33718
+ case "time": return time.parse(context, parser.parseComponentValue());
33719
+ }
33554
33720
  }
33555
33721
  };
33556
33722
  var elementDebuggerAttribute = "data-html2canvas-debug";
@@ -33588,7 +33754,7 @@ PERFORMANCE OF THIS SOFTWARE.
33588
33754
  }();
33589
33755
  var base64 = "AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA=";
33590
33756
  var chars$1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
33591
- var lookup$1 = typeof Uint8Array === "undefined" ? [] : new Uint8Array(256);
33757
+ var lookup$1 = typeof Uint8Array === "undefined" ? [] : /* @__PURE__ */ new Uint8Array(256);
33592
33758
  for (var i$1 = 0; i$1 < chars$1.length; i$1++) lookup$1[chars$1.charCodeAt(i$1)] = i$1;
33593
33759
  var decode = function(base64) {
33594
33760
  var bufferLength = base64.length * .75, len = base64.length, i, p = 0, encoded1, encoded2, encoded3, encoded4;
@@ -33726,7 +33892,7 @@ PERFORMANCE OF THIS SOFTWARE.
33726
33892
  return Trie;
33727
33893
  }();
33728
33894
  var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
33729
- var lookup = typeof Uint8Array === "undefined" ? [] : new Uint8Array(256);
33895
+ var lookup = typeof Uint8Array === "undefined" ? [] : /* @__PURE__ */ new Uint8Array(256);
33730
33896
  for (var i = 0; i < chars.length; i++) lookup[chars.charCodeAt(i)] = i;
33731
33897
  var Prepend = 1;
33732
33898
  var CR = 2;
@@ -34035,22 +34201,23 @@ PERFORMANCE OF THIS SOFTWARE.
34035
34201
  var textBounds = [];
34036
34202
  var offset = 0;
34037
34203
  textList.forEach(function(text) {
34038
- if (styles.textDecorationLine.length || text.trim().length > 0) if (FEATURES.SUPPORT_RANGE_BOUNDS) {
34039
- var clientRects = createRange(node, offset, text.length).getClientRects();
34040
- if (clientRects.length > 1) {
34041
- var subSegments = segmentGraphemes(text);
34042
- var subOffset_1 = 0;
34043
- subSegments.forEach(function(subSegment) {
34044
- textBounds.push(new TextBounds(subSegment, Bounds.fromDOMRectList(context, createRange(node, subOffset_1 + offset, subSegment.length).getClientRects())));
34045
- subOffset_1 += subSegment.length;
34046
- });
34047
- } else textBounds.push(new TextBounds(text, Bounds.fromDOMRectList(context, clientRects)));
34048
- } else {
34049
- var replacementNode = node.splitText(text.length);
34050
- textBounds.push(new TextBounds(text, getWrapperBounds(context, node)));
34051
- node = replacementNode;
34052
- }
34053
- else if (!FEATURES.SUPPORT_RANGE_BOUNDS) node = node.splitText(text.length);
34204
+ if (styles.textDecorationLine.length || text.trim().length > 0) {
34205
+ if (FEATURES.SUPPORT_RANGE_BOUNDS) {
34206
+ var clientRects = createRange(node, offset, text.length).getClientRects();
34207
+ if (clientRects.length > 1) {
34208
+ var subSegments = segmentGraphemes(text);
34209
+ var subOffset_1 = 0;
34210
+ subSegments.forEach(function(subSegment) {
34211
+ textBounds.push(new TextBounds(subSegment, Bounds.fromDOMRectList(context, createRange(node, subOffset_1 + offset, subSegment.length).getClientRects())));
34212
+ subOffset_1 += subSegment.length;
34213
+ });
34214
+ } else textBounds.push(new TextBounds(text, Bounds.fromDOMRectList(context, clientRects)));
34215
+ } else {
34216
+ var replacementNode = node.splitText(text.length);
34217
+ textBounds.push(new TextBounds(text, getWrapperBounds(context, node)));
34218
+ node = replacementNode;
34219
+ }
34220
+ } else if (!FEATURES.SUPPORT_RANGE_BOUNDS) node = node.splitText(text.length);
34054
34221
  offset += text.length;
34055
34222
  });
34056
34223
  return textBounds;
@@ -34255,9 +34422,7 @@ PERFORMANCE OF THIS SOFTWARE.
34255
34422
  case CHECKBOX:
34256
34423
  _this.styles.borderTopRightRadius = _this.styles.borderTopLeftRadius = _this.styles.borderBottomRightRadius = _this.styles.borderBottomLeftRadius = CHECKBOX_BORDER_RADIUS;
34257
34424
  break;
34258
- case RADIO:
34259
- _this.styles.borderTopRightRadius = _this.styles.borderTopLeftRadius = _this.styles.borderBottomRightRadius = _this.styles.borderBottomLeftRadius = RADIO_BORDER_RADIUS;
34260
- break;
34425
+ case RADIO: _this.styles.borderTopRightRadius = _this.styles.borderTopLeftRadius = _this.styles.borderBottomRightRadius = _this.styles.borderBottomLeftRadius = RADIO_BORDER_RADIUS;
34261
34426
  }
34262
34427
  return _this;
34263
34428
  }
@@ -34311,19 +34476,21 @@ PERFORMANCE OF THIS SOFTWARE.
34311
34476
  for (var childNode = node.firstChild, nextNode = void 0; childNode; childNode = nextNode) {
34312
34477
  nextNode = childNode.nextSibling;
34313
34478
  if (isTextNode(childNode) && childNode.data.trim().length > 0) parent.textNodes.push(new TextContainer(context, childNode, parent.styles));
34314
- else if (isElementNode(childNode)) if (isSlotElement(childNode) && childNode.assignedNodes) childNode.assignedNodes().forEach(function(childNode) {
34315
- return parseNodeTree(context, childNode, parent, root);
34316
- });
34317
- else {
34318
- var container = createContainer(context, childNode);
34319
- if (container.styles.isVisible()) {
34320
- if (createsRealStackingContext(childNode, container, root)) container.flags |= 4;
34321
- else if (createsStackingContext(container.styles)) container.flags |= 2;
34322
- if (LIST_OWNERS.indexOf(childNode.tagName) !== -1) container.flags |= 8;
34323
- parent.elements.push(container);
34324
- childNode.slot;
34325
- if (childNode.shadowRoot) parseNodeTree(context, childNode.shadowRoot, container, root);
34326
- else if (!isTextareaElement(childNode) && !isSVGElement(childNode) && !isSelectElement(childNode)) parseNodeTree(context, childNode, container, root);
34479
+ else if (isElementNode(childNode)) {
34480
+ if (isSlotElement(childNode) && childNode.assignedNodes) childNode.assignedNodes().forEach(function(childNode) {
34481
+ return parseNodeTree(context, childNode, parent, root);
34482
+ });
34483
+ else {
34484
+ var container = createContainer(context, childNode);
34485
+ if (container.styles.isVisible()) {
34486
+ if (createsRealStackingContext(childNode, container, root)) container.flags |= 4;
34487
+ else if (createsStackingContext(container.styles)) container.flags |= 2;
34488
+ if (LIST_OWNERS.indexOf(childNode.tagName) !== -1) container.flags |= 8;
34489
+ parent.elements.push(container);
34490
+ childNode.slot;
34491
+ if (childNode.shadowRoot) parseNodeTree(context, childNode.shadowRoot, container, root);
34492
+ else if (!isTextareaElement(childNode) && !isSVGElement(childNode) && !isSelectElement(childNode)) parseNodeTree(context, childNode, container, root);
34493
+ }
34327
34494
  }
34328
34495
  }
34329
34496
  }
@@ -34960,14 +35127,16 @@ PERFORMANCE OF THIS SOFTWARE.
34960
35127
  clonedCanvas.height = canvas.height;
34961
35128
  var ctx = canvas.getContext("2d");
34962
35129
  var clonedCtx = clonedCanvas.getContext("2d");
34963
- if (clonedCtx) if (!this.options.allowTaint && ctx) clonedCtx.putImageData(ctx.getImageData(0, 0, canvas.width, canvas.height), 0, 0);
34964
- else {
34965
- var gl = (_a = canvas.getContext("webgl2")) !== null && _a !== void 0 ? _a : canvas.getContext("webgl");
34966
- if (gl) {
34967
- var attribs = gl.getContextAttributes();
34968
- if ((attribs === null || attribs === void 0 ? void 0 : attribs.preserveDrawingBuffer) === false) this.context.logger.warn("Unable to clone WebGL context as it has preserveDrawingBuffer=false", canvas);
35130
+ if (clonedCtx) {
35131
+ if (!this.options.allowTaint && ctx) clonedCtx.putImageData(ctx.getImageData(0, 0, canvas.width, canvas.height), 0, 0);
35132
+ else {
35133
+ var gl = (_a = canvas.getContext("webgl2")) !== null && _a !== void 0 ? _a : canvas.getContext("webgl");
35134
+ if (gl) {
35135
+ var attribs = gl.getContextAttributes();
35136
+ if ((attribs === null || attribs === void 0 ? void 0 : attribs.preserveDrawingBuffer) === false) this.context.logger.warn("Unable to clone WebGL context as it has preserveDrawingBuffer=false", canvas);
35137
+ }
35138
+ clonedCtx.drawImage(canvas, 0, 0);
34969
35139
  }
34970
- clonedCtx.drawImage(canvas, 0, 0);
34971
35140
  }
34972
35141
  return clonedCanvas;
34973
35142
  } catch (e) {
@@ -35296,18 +35465,19 @@ PERFORMANCE OF THIS SOFTWARE.
35296
35465
  var responseType = FEATURES.SUPPORT_RESPONSE_TYPE ? "blob" : "text";
35297
35466
  var xhr = new XMLHttpRequest();
35298
35467
  xhr.onload = function() {
35299
- if (xhr.status === 200) if (responseType === "text") resolve(xhr.response);
35300
- else {
35301
- var reader_1 = new FileReader();
35302
- reader_1.addEventListener("load", function() {
35303
- return resolve(reader_1.result);
35304
- }, false);
35305
- reader_1.addEventListener("error", function(e) {
35306
- return reject(e);
35307
- }, false);
35308
- reader_1.readAsDataURL(xhr.response);
35309
- }
35310
- else reject("Failed to proxy resource " + key + " with status code " + xhr.status);
35468
+ if (xhr.status === 200) {
35469
+ if (responseType === "text") resolve(xhr.response);
35470
+ else {
35471
+ var reader_1 = new FileReader();
35472
+ reader_1.addEventListener("load", function() {
35473
+ return resolve(reader_1.result);
35474
+ }, false);
35475
+ reader_1.addEventListener("error", function(e) {
35476
+ return reject(e);
35477
+ }, false);
35478
+ reader_1.readAsDataURL(xhr.response);
35479
+ }
35480
+ } else reject("Failed to proxy resource " + key + " with status code " + xhr.status);
35311
35481
  };
35312
35482
  xhr.onerror = reject;
35313
35483
  var queryString = proxy.indexOf("?") > -1 ? "&" : "?";
@@ -36045,9 +36215,7 @@ PERFORMANCE OF THIS SOFTWARE.
36045
36215
  case 2:
36046
36216
  _this.ctx.fillRect(text.bounds.left, Math.round(text.bounds.top), text.bounds.width, 1);
36047
36217
  break;
36048
- case 3:
36049
- _this.ctx.fillRect(text.bounds.left, Math.ceil(text.bounds.top + middle), text.bounds.width, 1);
36050
- break;
36218
+ case 3: _this.ctx.fillRect(text.bounds.left, Math.ceil(text.bounds.top + middle), text.bounds.width, 1);
36051
36219
  }
36052
36220
  });
36053
36221
  }
@@ -36062,7 +36230,6 @@ PERFORMANCE OF THIS SOFTWARE.
36062
36230
  _this.ctx.strokeStyle = "";
36063
36231
  _this.ctx.lineWidth = 0;
36064
36232
  _this.ctx.lineJoin = "miter";
36065
- break;
36066
36233
  }
36067
36234
  });
36068
36235
  });
@@ -36200,9 +36367,7 @@ PERFORMANCE OF THIS SOFTWARE.
36200
36367
  case 1:
36201
36368
  x += bounds.width / 2;
36202
36369
  break;
36203
- case 2:
36204
- x += bounds.width;
36205
- break;
36370
+ case 2: x += bounds.width;
36206
36371
  }
36207
36372
  textBounds = bounds.add(x, 0, 0, -bounds.height / 2 + 1);
36208
36373
  this.ctx.save();
@@ -36717,8 +36882,10 @@ PERFORMANCE OF THIS SOFTWARE.
36717
36882
  maxSpace = (length - (numberOfDashes + 1) * dashLength) / numberOfDashes;
36718
36883
  spaceLength = maxSpace <= 0 || Math.abs(spaceLength - minSpace) < Math.abs(spaceLength - maxSpace) ? minSpace : maxSpace;
36719
36884
  }
36720
- if (useLineDash) if (style === 3) this.ctx.setLineDash([0, dashLength + spaceLength]);
36721
- else this.ctx.setLineDash([dashLength, spaceLength]);
36885
+ if (useLineDash) {
36886
+ if (style === 3) this.ctx.setLineDash([0, dashLength + spaceLength]);
36887
+ else this.ctx.setLineDash([dashLength, spaceLength]);
36888
+ }
36722
36889
  if (style === 3) {
36723
36890
  this.ctx.lineCap = "round";
36724
36891
  this.ctx.lineWidth = width;
@@ -36853,8 +37020,10 @@ PERFORMANCE OF THIS SOFTWARE.
36853
37020
  Logger.prototype.debug = function() {
36854
37021
  var args = [];
36855
37022
  for (var _i = 0; _i < arguments.length; _i++) args[_i] = arguments[_i];
36856
- if (this.enabled) if (typeof window !== "undefined" && window.console && typeof console.debug === "function") console.debug.apply(console, __spreadArray([this.id, this.getTime() + "ms"], args));
36857
- else this.info.apply(this, args);
37023
+ if (this.enabled) {
37024
+ if (typeof window !== "undefined" && window.console && typeof console.debug === "function") console.debug.apply(console, __spreadArray([this.id, this.getTime() + "ms"], args));
37025
+ else this.info.apply(this, args);
37026
+ }
36858
37027
  };
36859
37028
  Logger.prototype.getTime = function() {
36860
37029
  return Date.now() - this.start;
@@ -36869,14 +37038,18 @@ PERFORMANCE OF THIS SOFTWARE.
36869
37038
  Logger.prototype.warn = function() {
36870
37039
  var args = [];
36871
37040
  for (var _i = 0; _i < arguments.length; _i++) args[_i] = arguments[_i];
36872
- if (this.enabled) if (typeof window !== "undefined" && window.console && typeof console.warn === "function") console.warn.apply(console, __spreadArray([this.id, this.getTime() + "ms"], args));
36873
- else this.info.apply(this, args);
37041
+ if (this.enabled) {
37042
+ if (typeof window !== "undefined" && window.console && typeof console.warn === "function") console.warn.apply(console, __spreadArray([this.id, this.getTime() + "ms"], args));
37043
+ else this.info.apply(this, args);
37044
+ }
36874
37045
  };
36875
37046
  Logger.prototype.error = function() {
36876
37047
  var args = [];
36877
37048
  for (var _i = 0; _i < arguments.length; _i++) args[_i] = arguments[_i];
36878
- if (this.enabled) if (typeof window !== "undefined" && window.console && typeof console.error === "function") console.error.apply(console, __spreadArray([this.id, this.getTime() + "ms"], args));
36879
- else this.info.apply(this, args);
37049
+ if (this.enabled) {
37050
+ if (typeof window !== "undefined" && window.console && typeof console.error === "function") console.error.apply(console, __spreadArray([this.id, this.getTime() + "ms"], args));
37051
+ else this.info.apply(this, args);
37052
+ }
36880
37053
  };
36881
37054
  Logger.instances = {};
36882
37055
  return Logger;
@@ -37057,7 +37230,20 @@ var Animation = /*#__PURE__*/ function() {
37057
37230
  return _createClass(Animation, [
37058
37231
  {
37059
37232
  key: "pending",
37060
- get: function get() {
37233
+ get:
37234
+ /**
37235
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/effect
37236
+ */
37237
+ /**
37238
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/timeline
37239
+ */
37240
+ /**
37241
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/id
37242
+ */
37243
+ /**
37244
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/pending
37245
+ */
37246
+ function get() {
37061
37247
  return this._startTime === null && !this._paused && this.playbackRate !== 0 || this.currentTimePending;
37062
37248
  }
37063
37249
  },
@@ -37072,7 +37258,18 @@ var Animation = /*#__PURE__*/ function() {
37072
37258
  },
37073
37259
  {
37074
37260
  key: "ready",
37075
- get: function get() {
37261
+ get:
37262
+ /**
37263
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/ready
37264
+ * @example
37265
+ animation.pause();
37266
+ animation.ready.then(function() {
37267
+ // Displays 'running'
37268
+ alert(animation.playState);
37269
+ });
37270
+ animation.play();
37271
+ */
37272
+ function get() {
37076
37273
  var _this = this;
37077
37274
  if (!this.readyPromise) {
37078
37275
  if (this.timeline.animationsWithPromises.indexOf(this) === -1) this.timeline.animationsWithPromises.push(this);
@@ -38106,8 +38303,10 @@ function normalizeTimingInput(timingInput, forGroup) {
38106
38303
  return makeTiming(timingInput, forGroup);
38107
38304
  }
38108
38305
  function numericTimingToObject(timingInput) {
38109
- if (typeof timingInput === "number") if (isNaN(timingInput)) timingInput = { duration: "auto" };
38110
- else timingInput = { duration: timingInput };
38306
+ if (typeof timingInput === "number") {
38307
+ if (isNaN(timingInput)) timingInput = { duration: "auto" };
38308
+ else timingInput = { duration: timingInput };
38309
+ }
38111
38310
  return timingInput;
38112
38311
  }
38113
38312
  /**
@@ -38416,7 +38615,14 @@ runtime.CameraContribution = /* @__PURE__ */ function(_Camera) {
38416
38615
  return _createClass(AdvancedCamera, [
38417
38616
  {
38418
38617
  key: "rotate",
38419
- value: function rotate(azimuth, elevation, roll) {
38618
+ value:
38619
+ /**
38620
+ * Changes the azimuth and elevation with respect to the current camera axes
38621
+ * @param {Number} azimuth the relative azimuth
38622
+ * @param {Number} elevation the relative elevation
38623
+ * @param {Number} roll the relative roll
38624
+ */
38625
+ function rotate(azimuth, elevation, roll) {
38420
38626
  this.relElevation = getAngle(elevation);
38421
38627
  this.relAzimuth = getAngle(azimuth);
38422
38628
  this.relRoll = getAngle(roll);
@@ -38603,13 +38809,15 @@ var _excluded = [
38603
38809
  "endHead",
38604
38810
  "startHeadOffset",
38605
38811
  "endHeadOffset"
38606
- ], _excluded2 = [
38812
+ ];
38813
+ var _excluded2 = [
38607
38814
  "body",
38608
38815
  "startHead",
38609
38816
  "endHead",
38610
38817
  "startHeadOffset",
38611
38818
  "endHeadOffset"
38612
- ], _excluded3 = [
38819
+ ];
38820
+ var _excluded3 = [
38613
38821
  "body",
38614
38822
  "startHead",
38615
38823
  "endHead",
@@ -39891,18 +40099,20 @@ function configure_toolbar(gobj) {
39891
40099
  title: (0, i18next.t)("reset zoom")
39892
40100
  }
39893
40101
  ];
39894
- if ((0, _yuneta_gobj_js.gobj_read_bool_attr)(gobj, "with_fullscreen")) if (priv.is_fullscreen) items.push({
39895
- id: "g6-icon-fullscreen-exit",
39896
- value: "exit-fullscreen",
39897
- className: "EV_EXIT_FULLSCREEN",
39898
- title: (0, i18next.t)("exit full screen")
39899
- });
39900
- else items.push({
39901
- id: "g6-icon-fullscreen",
39902
- value: "request-fullscreen",
39903
- className: "EV_REQUEST_FULLSCREEN",
39904
- title: (0, i18next.t)("enter full screen")
39905
- });
40102
+ if ((0, _yuneta_gobj_js.gobj_read_bool_attr)(gobj, "with_fullscreen")) {
40103
+ if (priv.is_fullscreen) items.push({
40104
+ id: "g6-icon-fullscreen-exit",
40105
+ value: "exit-fullscreen",
40106
+ className: "EV_EXIT_FULLSCREEN",
40107
+ title: (0, i18next.t)("exit full screen")
40108
+ });
40109
+ else items.push({
40110
+ id: "g6-icon-fullscreen",
40111
+ value: "request-fullscreen",
40112
+ className: "EV_REQUEST_FULLSCREEN",
40113
+ title: (0, i18next.t)("enter full screen")
40114
+ });
40115
+ }
39906
40116
  return items;
39907
40117
  },
39908
40118
  onClick: (value) => {
@@ -39925,9 +40135,7 @@ function configure_toolbar(gobj) {
39925
40135
  case "request-fullscreen":
39926
40136
  (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_REQUEST_FULLSCREEN", {}, gobj);
39927
40137
  break;
39928
- case "exit-fullscreen":
39929
- (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_EXIT_FULLSCREEN", {}, gobj);
39930
- break;
40138
+ case "exit-fullscreen": (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_EXIT_FULLSCREEN", {}, gobj);
39931
40139
  }
39932
40140
  }
39933
40141
  });
@@ -39998,9 +40206,7 @@ function configure_toolbar_edit(gobj) {
39998
40206
  case "redo":
39999
40207
  (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_HISTORY_REDO", {}, gobj);
40000
40208
  break;
40001
- case "save":
40002
- (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_SAVE_GRAPH", {}, gobj);
40003
- break;
40209
+ case "save": (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_SAVE_GRAPH", {}, gobj);
40004
40210
  }
40005
40211
  }
40006
40212
  });
@@ -40041,9 +40247,7 @@ function configure_behaviour(gobj) {
40041
40247
  case "operation":
40042
40248
  priv.edit_mode = false;
40043
40249
  break;
40044
- default:
40045
- (0, _yuneta_gobj_js.log_error)(`operation mode unknown: ${operation_mode}`);
40046
- break;
40250
+ default: (0, _yuneta_gobj_js.log_error)(`operation mode unknown: ${operation_mode}`);
40047
40251
  }
40048
40252
  if (!priv.edit_mode) deselect_node(gobj);
40049
40253
  graph_write_behaviors(gobj, behaviors);
@@ -40078,9 +40282,7 @@ function calculate_hooks_fkeys_counter(desc) {
40078
40282
  case "hook":
40079
40283
  desc.hooks_counter++;
40080
40284
  break;
40081
- case "fkey":
40082
- desc.fkeys_counter++;
40083
- break;
40285
+ case "fkey": desc.fkeys_counter++;
40084
40286
  }
40085
40287
  }
40086
40288
  if (desc.hooks_counter === 0) desc.node_treedb_type = "child";
@@ -40120,7 +40322,6 @@ function build_ports(gobj, desc) {
40120
40322
  stroke: getStrokeColor(desc.color)
40121
40323
  };
40122
40324
  top_ports.push(port);
40123
- break;
40124
40325
  }
40125
40326
  }
40126
40327
  for (let i = 0; i < top_ports.length; i++) top_ports[i].placement = [.5, 0];
@@ -40315,13 +40516,15 @@ function collect_fkey_refs(desc, record) {
40315
40516
  let col = cols[i];
40316
40517
  if (!col.fkey) continue;
40317
40518
  let fkeys = record[col.id];
40318
- if (fkeys) if ((0, _yuneta_gobj_js.is_array)(fkeys)) for (let j = 0; j < fkeys.length; j++) {
40319
- let key = (0, _yuneta_gobj_js.treedb_encoder_fkey)(col, fkeys[j]);
40320
- if (key) refs.add(i + " " + key);
40321
- }
40322
- else {
40323
- let key = (0, _yuneta_gobj_js.treedb_encoder_fkey)(col, fkeys);
40324
- if (key) refs.add(i + " " + key);
40519
+ if (fkeys) {
40520
+ if ((0, _yuneta_gobj_js.is_array)(fkeys)) for (let j = 0; j < fkeys.length; j++) {
40521
+ let key = (0, _yuneta_gobj_js.treedb_encoder_fkey)(col, fkeys[j]);
40522
+ if (key) refs.add(i + " " + key);
40523
+ }
40524
+ else {
40525
+ let key = (0, _yuneta_gobj_js.treedb_encoder_fkey)(col, fkeys);
40526
+ if (key) refs.add(i + " " + key);
40527
+ }
40325
40528
  }
40326
40529
  }
40327
40530
  return refs;
@@ -40337,8 +40540,10 @@ function draw_links(gobj, desc, record, initial_load) {
40337
40540
  let col = cols[i];
40338
40541
  if (!col.fkey) continue;
40339
40542
  let fkeys = record[col.id];
40340
- if (fkeys) if ((0, _yuneta_gobj_js.is_array)(fkeys)) for (let j = 0; j < fkeys.length; j++) draw_link(gobj, topic_name, record_id, col, fkeys[j], initial_load);
40341
- else draw_link(gobj, topic_name, record_id, col, fkeys, initial_load);
40543
+ if (fkeys) {
40544
+ if ((0, _yuneta_gobj_js.is_array)(fkeys)) for (let j = 0; j < fkeys.length; j++) draw_link(gobj, topic_name, record_id, col, fkeys[j], initial_load);
40545
+ else draw_link(gobj, topic_name, record_id, col, fkeys, initial_load);
40546
+ }
40342
40547
  }
40343
40548
  }
40344
40549
  /************************************************************
@@ -40448,8 +40653,10 @@ function clear_links(gobj, desc, record, verbose) {
40448
40653
  let col = cols[i];
40449
40654
  if (!col.fkey) continue;
40450
40655
  let fkeys = record[col.id];
40451
- if (fkeys) if ((0, _yuneta_gobj_js.is_array)(fkeys)) for (let j = 0; j < fkeys.length; j++) clear_link(gobj, topic_name, record_id, col, fkeys[j], verbose);
40452
- else clear_link(gobj, topic_name, record_id, col, fkeys, verbose);
40656
+ if (fkeys) {
40657
+ if ((0, _yuneta_gobj_js.is_array)(fkeys)) for (let j = 0; j < fkeys.length; j++) clear_link(gobj, topic_name, record_id, col, fkeys[j], verbose);
40658
+ else clear_link(gobj, topic_name, record_id, col, fkeys, verbose);
40659
+ }
40453
40660
  }
40454
40661
  }
40455
40662
  /************************************************************
@@ -40546,7 +40753,7 @@ function save_geometry(gobj) {
40546
40753
  let origin = (0, _yuneta_gobj_js.gobj_read_str_attr)((0, _yuneta_gobj_js.gobj_yuno)(), "node_uuid");
40547
40754
  for (const [topic_name, properties] of Object.entries(priv._graph_properties)) {
40548
40755
  properties.__origin__ = origin;
40549
- (0, _yuneta_gobj_js.gobj_publish_event)(gobj, "EV_UPDATE_NODE", {
40756
+ let kw_update = {
40550
40757
  treedb_name: priv.treedb_name,
40551
40758
  topic_name: "__graphs__",
40552
40759
  record: {
@@ -40560,7 +40767,8 @@ function save_geometry(gobj) {
40560
40767
  autolink: false,
40561
40768
  create: true
40562
40769
  }
40563
- });
40770
+ };
40771
+ (0, _yuneta_gobj_js.gobj_publish_event)(gobj, "EV_UPDATE_NODE", kw_update);
40564
40772
  }
40565
40773
  }
40566
40774
  /************************************************************
@@ -40571,7 +40779,7 @@ function save_topic_graph_properties(gobj, topic_name) {
40571
40779
  let properties = priv._graph_properties[topic_name];
40572
40780
  if (!properties) return;
40573
40781
  properties.__origin__ = (0, _yuneta_gobj_js.gobj_read_str_attr)((0, _yuneta_gobj_js.gobj_yuno)(), "node_uuid");
40574
- (0, _yuneta_gobj_js.gobj_publish_event)(gobj, "EV_UPDATE_NODE", {
40782
+ let kw_update = {
40575
40783
  treedb_name: priv.treedb_name,
40576
40784
  topic_name: "__graphs__",
40577
40785
  record: {
@@ -40585,7 +40793,8 @@ function save_topic_graph_properties(gobj, topic_name) {
40585
40793
  autolink: false,
40586
40794
  create: true
40587
40795
  }
40588
- });
40796
+ };
40797
+ (0, _yuneta_gobj_js.gobj_publish_event)(gobj, "EV_UPDATE_NODE", kw_update);
40589
40798
  }
40590
40799
  /************************************************************
40591
40800
  * Pause/resume history recording.
@@ -40734,19 +40943,17 @@ function graph_add_plugin(gobj, plugin_key, options) {
40734
40943
  }
40735
40944
  plugin = graph_get_plugin(gobj, plugin_key);
40736
40945
  switch (plugin_key) {
40737
- case "history":
40738
- if (plugin) {
40739
- plugin.on(_antv_g6.HistoryEvent.CHANGE, () => {
40740
- update_history_buttons(gobj);
40741
- });
40742
- graph.updatePlugin({
40743
- key: plugin_key,
40744
- beforeAddCommand: () => {
40745
- return !priv._history_paused;
40746
- }
40747
- });
40748
- }
40749
- break;
40946
+ case "history": if (plugin) {
40947
+ plugin.on(_antv_g6.HistoryEvent.CHANGE, () => {
40948
+ update_history_buttons(gobj);
40949
+ });
40950
+ graph.updatePlugin({
40951
+ key: plugin_key,
40952
+ beforeAddCommand: () => {
40953
+ return !priv._history_paused;
40954
+ }
40955
+ });
40956
+ }
40750
40957
  }
40751
40958
  }
40752
40959
  function graph_remove_plugin(gobj, plugin_key) {
@@ -42785,9 +42992,7 @@ function handle_context_menu_click(gobj, value) {
42785
42992
  case "resize_all_ports":
42786
42993
  copy_size_to_ports(gobj, false);
42787
42994
  break;
42788
- case "resize_topic_ports":
42789
- copy_size_to_ports(gobj, true);
42790
- break;
42995
+ case "resize_topic_ports": copy_size_to_ports(gobj, true);
42791
42996
  }
42792
42997
  }
42793
42998
  /************************************************************
@@ -43561,7 +43766,7 @@ function create_gclass(gclass_name) {
43561
43766
  null
43562
43767
  ]
43563
43768
  ]]];
43564
- __gclass__ = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
43769
+ const event_types = [
43565
43770
  ["EV_DESCS", 0],
43566
43771
  ["EV_CLEAR_DATA", 0],
43567
43772
  ["EV_LOAD_DATA", 0],
@@ -43597,7 +43802,8 @@ function create_gclass(gclass_name) {
43597
43802
  ["EV_HIDE", 0],
43598
43803
  ["EV_RESIZE", 0],
43599
43804
  ["EV_THEME", 0]
43600
- ], states, gmt, 0, attrs_table, PRIVATE_DATA, 0, 0, 0, _yuneta_gobj_js.gclass_flag_t.gcflag_manual_start);
43805
+ ];
43806
+ __gclass__ = (0, _yuneta_gobj_js.gclass_create)(gclass_name, event_types, states, gmt, 0, attrs_table, PRIVATE_DATA, 0, 0, 0, _yuneta_gobj_js.gclass_flag_t.gcflag_manual_start);
43601
43807
  if (!__gclass__) return -1;
43602
43808
  return 0;
43603
43809
  }