@finsemble/finsemble-core 6.1.4 → 6.1.5

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.
Files changed (107) hide show
  1. package/.mocharc.js +12 -12
  2. package/.nycrc.json +7 -7
  3. package/README.md +24 -24
  4. package/assets/fonts/LICENSE.txt +202 -202
  5. package/configs/core/config.json +214 -214
  6. package/configs/core/securityPolicies.json +24 -24
  7. package/configs/core/services.json +233 -233
  8. package/configs/schemas/README.md +1 -1
  9. package/configs/schemas/fileBasedSchemas/appdConfigFile.schema.json +5 -5
  10. package/configs/schemas/fileBasedSchemas/applicationConfigFile.schema.json +5 -5
  11. package/configs/schemas/fileBasedSchemas/componentsFile.schema.json +5 -5
  12. package/configs/schemas/fileBasedSchemas/coreConfigFile.schema.json +5 -5
  13. package/configs/schemas/fileBasedSchemas/dashbarFile.schema.json +5 -5
  14. package/configs/schemas/fileBasedSchemas/manifestFile.schema.json +5 -5
  15. package/configs/schemas/fileBasedSchemas/securityPoliciesFile.schema.json +5 -5
  16. package/configs/schemas/fileBasedSchemas/servicesFile.schema.json +5 -5
  17. package/configs/schemas/fileBasedSchemas/uiComponentsFile.schema.json +5 -5
  18. package/configs/schemas/fileBasedSchemas/workspacesFile.schema.json +5 -5
  19. package/configs/schemas/finsemble.schema.json +4006 -4006
  20. package/dist/FSBL.js +1 -1
  21. package/dist/clients/Interop/FinsembleDesktopAgent.md +154 -154
  22. package/dist/clients/Interop/tsconfig.json +7 -7
  23. package/dist/clients/Startup/README.md +28 -28
  24. package/dist/clients/dragAndDropAssets/dragAndDropScrim.css +54 -54
  25. package/dist/clients/dragAndDropAssets/ff-delete-circle.svg +10 -10
  26. package/dist/clients/dragAndDropAssets/ff-share.svg +13 -13
  27. package/dist/components/system/notification/ff-close.svg +14 -14
  28. package/dist/components/system/notification/finsemble_logo_white.svg +15 -15
  29. package/dist/components/system/notification/notification.html +155 -155
  30. package/dist/configs/core/config.json +214 -214
  31. package/dist/configs/core/securityPolicies.json +24 -24
  32. package/dist/configs/core/services.json +233 -233
  33. package/dist/configs/schemas/README.md +1 -1
  34. package/dist/configs/schemas/fileBasedSchemas/appdConfigFile.schema.json +5 -5
  35. package/dist/configs/schemas/fileBasedSchemas/applicationConfigFile.schema.json +5 -5
  36. package/dist/configs/schemas/fileBasedSchemas/componentsFile.schema.json +5 -5
  37. package/dist/configs/schemas/fileBasedSchemas/coreConfigFile.schema.json +5 -5
  38. package/dist/configs/schemas/fileBasedSchemas/dashbarFile.schema.json +5 -5
  39. package/dist/configs/schemas/fileBasedSchemas/manifestFile.schema.json +5 -5
  40. package/dist/configs/schemas/fileBasedSchemas/securityPoliciesFile.schema.json +5 -5
  41. package/dist/configs/schemas/fileBasedSchemas/servicesFile.schema.json +5 -5
  42. package/dist/configs/schemas/fileBasedSchemas/uiComponentsFile.schema.json +5 -5
  43. package/dist/configs/schemas/fileBasedSchemas/workspacesFile.schema.json +5 -5
  44. package/dist/configs/schemas/finsemble.schema.json +4006 -4006
  45. package/dist/finsemble-javascript-adapter.js +1 -1
  46. package/dist/index.js +1 -1
  47. package/dist/javascript-adapter-example-app.html +37 -37
  48. package/dist/services/Interop/DevTools.tsx +71 -71
  49. package/dist/services/Interop/Interop.html +15 -15
  50. package/dist/services/Interop/InteropService.js +1 -1
  51. package/dist/services/Interop/InteropService.md +148 -148
  52. package/dist/services/Interop/InteropServiceUI.css +12 -12
  53. package/dist/services/Interop/InteropServiceUI.js +1 -1
  54. package/dist/services/Interop/InteropServiceUI.tsx +39 -39
  55. package/dist/services/Interop/devtoolsEnhancer.tsx +63 -63
  56. package/dist/services/Interop/tsconfig.json +7 -7
  57. package/dist/services/ServiceTemplate.md +39 -39
  58. package/dist/services/assimilation/assimilation.html +18 -18
  59. package/dist/services/assimilation/assimilationService.js +1 -1
  60. package/dist/services/authentication/authentication.html +17 -17
  61. package/dist/services/authentication/authenticationService.js +1 -1
  62. package/dist/services/authentication/dialogSignOn.html +199 -199
  63. package/dist/services/config/config.html +17 -17
  64. package/dist/services/config/configService.js +1 -1
  65. package/dist/services/dataStore/dataStore.html +18 -18
  66. package/dist/services/dataStore/dataStoreService.js +1 -1
  67. package/dist/services/hotkeys/hotkeys.html +18 -18
  68. package/dist/services/hotkeys/hotkeysService.js +1 -1
  69. package/dist/services/linker/linker.html +18 -18
  70. package/dist/services/linker/linkerService.js +1 -1
  71. package/dist/services/logger/logger.html +18 -18
  72. package/dist/services/logger/loggerService.js +1 -1
  73. package/dist/services/logger/loggerUI.js +1 -1
  74. package/dist/services/logger/src/app.css +860 -860
  75. package/dist/services/logger/src/components/Views/Logs/rightPanel/consoleView.css +379 -379
  76. package/dist/services/logger/src/components/objectInspector/README.md +1 -1
  77. package/dist/services/notification/notification.html +11 -11
  78. package/dist/services/notification/notificationService.js +1 -1
  79. package/dist/services/preferences/preferencesService.js +1 -1
  80. package/dist/services/router/router.html +18 -18
  81. package/dist/services/router/routerService.js +1 -1
  82. package/dist/services/search/search.html +17 -17
  83. package/dist/services/search/searchService.js +1 -1
  84. package/dist/services/storage/adapters/instrumentedIndexedDBAdapter.js +1 -1
  85. package/dist/services/storage/storage.html +17 -17
  86. package/dist/services/storage/storageService.js +1 -1
  87. package/dist/services/systemManager/bootTasks/testTasks/_aReadMe.md +119 -119
  88. package/dist/services/systemManager/systemManager.html +24 -24
  89. package/dist/services/systemManager/systemManager.js +1 -1
  90. package/dist/services/window/Docking/GroupRequirements.md +18 -18
  91. package/dist/services/window/Splintering/SplinterAgentSlave.html +13 -13
  92. package/dist/services/window/Splintering/SplinterAgentSlave.js +1 -1
  93. package/dist/services/window/Splintering/Splintering.md +118 -118
  94. package/dist/services/window/StackedWindowManager/StackRequirements.md +23 -23
  95. package/dist/services/window/WindowBehaviorRequirements.md +25 -25
  96. package/dist/services/window/windowService.html +10 -10
  97. package/dist/services/window/windowService.js +1 -1
  98. package/dist/services/workspace/dev-docs/importExportFormat.md +51 -51
  99. package/dist/services/workspace/dev-docs/remotelyPersistedWorkspaces.md +62 -62
  100. package/dist/services/workspace/workspace.html +18 -18
  101. package/dist/services/workspace/workspace.schema.json +48 -48
  102. package/dist/services/workspace/workspaceService.js +1 -1
  103. package/package.json +1 -1
  104. package/tsconfig.json +23 -23
  105. package/types/index.d.ts +40 -55
  106. package/types/index.tsbuildinfo +1 -1
  107. package/types.tsconfig.json +15 -15
@@ -1,2 +1,2 @@
1
1
  /*! For license information please see instrumentedIndexedDBAdapter.js.LICENSE.txt */
2
- !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(self,(function(){return(()=>{var e={57664:(e,t,n)=>{"use strict";function r(e,...t){return(...n)=>e(...t,...n)}function i(e){return function(...t){var n=t.pop();return e.call(this,t,n)}}n.r(t),n.d(t,{default:()=>ht,apply:()=>r,applyEach:()=>R,applyEachSeries:()=>D,asyncify:()=>l,auto:()=>P,autoInject:()=>F,cargo:()=>q,cargoQueue:()=>G,compose:()=>K,concat:()=>Z,concatLimit:()=>J,concatSeries:()=>X,constant:()=>ee,detect:()=>ne,detectLimit:()=>re,detectSeries:()=>ie,dir:()=>se,doUntil:()=>ae,doWhilst:()=>ue,each:()=>le,eachLimit:()=>fe,eachOf:()=>L,eachOfLimit:()=>C,eachOfSeries:()=>O,eachSeries:()=>de,ensureAsync:()=>pe,every:()=>he,everyLimit:()=>ge,everySeries:()=>me,filter:()=>_e,filterLimit:()=>Se,filterSeries:()=>we,forever:()=>Ee,groupBy:()=>Ae,groupByLimit:()=>Ce,groupBySeries:()=>Ie,log:()=>Le,map:()=>T,mapLimit:()=>Y,mapSeries:()=>k,mapValues:()=>Re,mapValuesLimit:()=>Te,mapValuesSeries:()=>Oe,memoize:()=>ke,nextTick:()=>De,parallel:()=>xe,parallelLimit:()=>Pe,priorityQueue:()=>$e,queue:()=>Me,race:()=>Fe,reduce:()=>z,reduceRight:()=>Ue,reflect:()=>Ve,reflectAll:()=>He,reject:()=>Ge,rejectLimit:()=>ze,rejectSeries:()=>Qe,retry:()=>Ye,retryable:()=>Ze,seq:()=>Q,series:()=>Xe,setImmediate:()=>c,some:()=>et,someLimit:()=>tt,someSeries:()=>nt,sortBy:()=>rt,timeout:()=>it,times:()=>st,timesLimit:()=>ot,timesSeries:()=>ut,transform:()=>at,tryEach:()=>ct,unmemoize:()=>lt,until:()=>dt,waterfall:()=>pt,whilst:()=>ft,all:()=>he,allLimit:()=>ge,allSeries:()=>me,any:()=>et,anyLimit:()=>tt,anySeries:()=>nt,find:()=>ne,findLimit:()=>re,findSeries:()=>ie,flatMap:()=>Z,flatMapLimit:()=>J,flatMapSeries:()=>X,forEach:()=>le,forEachSeries:()=>de,forEachLimit:()=>fe,forEachOf:()=>L,forEachOfSeries:()=>O,forEachOfLimit:()=>C,inject:()=>z,foldl:()=>z,foldr:()=>Ue,select:()=>_e,selectLimit:()=>Se,selectSeries:()=>we,wrapSync:()=>l,during:()=>ft,doDuring:()=>ue});var o="function"==typeof setImmediate&&setImmediate,s="object"==typeof process&&"function"==typeof process.nextTick;function u(e){setTimeout(e,0)}function a(e){return(t,...n)=>e((()=>t(...n)))}var c=a(o?setImmediate:s?process.nextTick:u);function l(e){return p(e)?function(...t){const n=t.pop();return f(e.apply(this,t),n)}:i((function(t,n){var r;try{r=e.apply(this,t)}catch(e){return n(e)}if(r&&"function"==typeof r.then)return f(r,n);n(null,r)}))}function f(e,t){return e.then((e=>{d(t,null,e)}),(e=>{d(t,e&&e.message?e:new Error(e))}))}function d(e,t,n){try{e(t,n)}catch(e){c((e=>{throw e}),e)}}function p(e){return"AsyncFunction"===e[Symbol.toStringTag]}function h(e){if("function"!=typeof e)throw new Error("expected a function");return p(e)?l(e):e}function g(e,t=e.length){if(!t)throw new Error("arity is undefined");return function(...n){return"function"==typeof n[t-1]?e.apply(this,n):new Promise(((r,i)=>{n[t-1]=(e,...t)=>{if(e)return i(e);r(t.length>1?t:t[0])},e.apply(this,n)}))}}function m(e){return function(t,...n){return g((function(r){var i=this;return e(t,((e,t)=>{h(e).apply(i,n.concat(t))}),r)}))}}function y(e,t,n,r){t=t||[];var i=[],o=0,s=h(n);return e(t,((e,t,n)=>{var r=o++;s(e,((e,t)=>{i[r]=t,n(e)}))}),(e=>{r(e,i)}))}function v(e){return e&&"number"==typeof e.length&&e.length>=0&&e.length%1==0}const b={};function _(e){function t(...t){if(null!==e){var n=e;e=null,n.apply(this,t)}}return Object.assign(t,e),t}function S(e){return function(...t){if(null===e)throw new Error("Callback was already called.");var n=e;e=null,n.apply(this,t)}}function w(e,t,n,r){let i=!1,o=!1,s=!1,u=0,a=0;function c(){u>=t||s||i||(s=!0,e.next().then((({value:e,done:t})=>{if(!o&&!i){if(s=!1,t)return i=!0,void(u<=0&&r(null));u++,n(e,a,l),a++,c()}})).catch(f))}function l(e,t){if(u-=1,!o)return e?f(e):!1===e?(i=!0,void(o=!0)):t===b||i&&u<=0?(i=!0,r(null)):void c()}function f(e){o||(s=!1,i=!0,r(e))}c()}var E=e=>(t,n,r)=>{if(r=_(r),e<=0)throw new RangeError("concurrency limit cannot be less than 1");if(!t)return r(null);if("AsyncGenerator"===t[Symbol.toStringTag])return w(t,e,n,r);if(function(e){return"function"==typeof e[Symbol.asyncIterator]}(t))return w(t[Symbol.asyncIterator](),e,n,r);var i=function(e){if(v(e))return function(e){var t=-1,n=e.length;return function(){return++t<n?{value:e[t],key:t}:null}}(e);var t,n,r,i,o=function(e){return e[Symbol.iterator]&&e[Symbol.iterator]()}(e);return o?function(e){var t=-1;return function(){var n=e.next();return n.done?null:(t++,{value:n.value,key:t})}}(o):(n=(t=e)?Object.keys(t):[],r=-1,i=n.length,function(){var e=n[++r];return r<i?{value:t[e],key:e}:null})}(t),o=!1,s=!1,u=0,a=!1;function c(e,t){if(!s)if(u-=1,e)o=!0,r(e);else if(!1===e)o=!0,s=!0;else{if(t===b||o&&u<=0)return o=!0,r(null);a||l()}}function l(){for(a=!0;u<e&&!o;){var t=i();if(null===t)return o=!0,void(u<=0&&r(null));u+=1,n(t.value,t.key,S(c))}a=!1}l()},C=g((function(e,t,n,r){return E(t)(e,h(n),r)}),4);function A(e,t,n){n=_(n);var r=0,i=0,{length:o}=e,s=!1;function u(e,t){!1===e&&(s=!0),!0!==s&&(e?n(e):++i!==o&&t!==b||n(null))}for(0===o&&n(null);r<o;r++)t(e[r],r,S(u))}function I(e,t,n){return C(e,1/0,t,n)}var L=g((function(e,t,n){return(v(e)?A:I)(e,h(t),n)}),3),T=g((function(e,t,n){return y(L,e,t,n)}),3),R=m(T),O=g((function(e,t,n){return C(e,1,t,n)}),3),k=g((function(e,t,n){return y(O,e,t,n)}),3),D=m(k);const N=Symbol("promiseCallback");function x(){let e,t;function n(n,...r){if(n)return t(n);e(r.length>1?r:r[0])}return n[N]=new Promise(((n,r)=>{e=n,t=r})),n}function P(e,t,n){"number"!=typeof t&&(n=t,t=null),n=_(n||x());var r=Object.keys(e).length;if(!r)return n(null);t||(t=r);var i={},o=0,s=!1,u=!1,a=Object.create(null),c=[],l=[],f={};function d(e,t){c.push((()=>function(e,t){if(!u){var r=S(((t,...r)=>{if(o--,!1!==t)if(r.length<2&&([r]=r),t){var c={};if(Object.keys(i).forEach((e=>{c[e]=i[e]})),c[e]=r,u=!0,a=Object.create(null),s)return;n(t,c)}else i[e]=r,(a[e]||[]).forEach((e=>e())),p();else s=!0}));o++;var c=h(t[t.length-1]);t.length>1?c(i,r):c(r)}}(e,t)))}function p(){if(!s){if(0===c.length&&0===o)return n(null,i);for(;c.length&&o<t;)c.shift()()}}function g(t){var n=[];return Object.keys(e).forEach((r=>{const i=e[r];Array.isArray(i)&&i.indexOf(t)>=0&&n.push(r)})),n}return Object.keys(e).forEach((t=>{var n=e[t];if(!Array.isArray(n))return d(t,[n]),void l.push(t);var r=n.slice(0,n.length-1),i=r.length;if(0===i)return d(t,n),void l.push(t);f[t]=i,r.forEach((o=>{if(!e[o])throw new Error("async.auto task `"+t+"` has a non-existent dependency `"+o+"` in "+r.join(", "));var s,u;(u=a[s=o])||(u=a[s]=[]),u.push((()=>{0==--i&&d(t,n)}))}))})),function(){for(var e=0;l.length;)e++,g(l.pop()).forEach((e=>{0==--f[e]&&l.push(e)}));if(e!==r)throw new Error("async.auto cannot execute tasks due to a recursive dependency")}(),p(),n[N]}var M=/^(?:async\s+)?(?:function)?\s*\w*\s*\(\s*([^)]+)\s*\)(?:\s*{)/,B=/^(?:async\s+)?\(?\s*([^)=]+)\s*\)?(?:\s*=>)/,W=/,/,j=/(=.+)?(\s*)$/,$=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm;function F(e,t){var n={};return Object.keys(e).forEach((t=>{var r,i=e[t],o=p(i),s=!o&&1===i.length||o&&0===i.length;if(Array.isArray(i))r=[...i],i=r.pop(),n[t]=r.concat(r.length>0?u:i);else if(s)n[t]=i;else{if(r=function(e){const t=e.toString().replace($,"");let n=t.match(M);if(n||(n=t.match(B)),!n)throw new Error("could not parse args in autoInject\nSource:\n"+t);let[,r]=n;return r.replace(/\s/g,"").split(W).map((e=>e.replace(j,"").trim()))}(i),0===i.length&&!o&&0===r.length)throw new Error("autoInject task functions require explicit parameters.");o||r.pop(),n[t]=r.concat(u)}function u(e,t){var n=r.map((t=>e[t]));n.push(t),h(i)(...n)}})),P(n,t)}class U{constructor(){this.head=this.tail=null,this.length=0}removeLink(e){return e.prev?e.prev.next=e.next:this.head=e.next,e.next?e.next.prev=e.prev:this.tail=e.prev,e.prev=e.next=null,this.length-=1,e}empty(){for(;this.head;)this.shift();return this}insertAfter(e,t){t.prev=e,t.next=e.next,e.next?e.next.prev=t:this.tail=t,e.next=t,this.length+=1}insertBefore(e,t){t.prev=e.prev,t.next=e,e.prev?e.prev.next=t:this.head=t,e.prev=t,this.length+=1}unshift(e){this.head?this.insertBefore(this.head,e):V(this,e)}push(e){this.tail?this.insertAfter(this.tail,e):V(this,e)}shift(){return this.head&&this.removeLink(this.head)}pop(){return this.tail&&this.removeLink(this.tail)}toArray(){return[...this]}*[Symbol.iterator](){for(var e=this.head;e;)yield e.data,e=e.next}remove(e){for(var t=this.head;t;){var{next:n}=t;e(t)&&this.removeLink(t),t=n}return this}}function V(e,t){e.length=1,e.head=e.tail=t}function H(e,t,n){if(null==t)t=1;else if(0===t)throw new RangeError("Concurrency must not be zero");var r=h(e),i=0,o=[];const s={error:[],drain:[],saturated:[],unsaturated:[],empty:[]};function u(e,t){return e?t?void(s[e]=s[e].filter((e=>e!==t))):s[e]=[]:Object.keys(s).forEach((e=>s[e]=[]))}function a(e,...t){s[e].forEach((e=>e(...t)))}var l=!1;function f(e,t,n,r){if(null!=r&&"function"!=typeof r)throw new Error("task callback must be a function");var i,o;function s(e,...t){return e?n?o(e):i():t.length<=1?i(t[0]):void i(t)}y.started=!0;var u={data:e,callback:n?s:r||s};if(t?y._tasks.unshift(u):y._tasks.push(u),l||(l=!0,c((()=>{l=!1,y.process()}))),n||!r)return new Promise(((e,t)=>{i=e,o=t}))}function d(e){return function(t,...n){i-=1;for(var r=0,s=e.length;r<s;r++){var u=e[r],c=o.indexOf(u);0===c?o.shift():c>0&&o.splice(c,1),u.callback(t,...n),null!=t&&a("error",t,u.data)}i<=y.concurrency-y.buffer&&a("unsaturated"),y.idle()&&a("drain"),y.process()}}function p(e){return!(0!==e.length||!y.idle()||(c((()=>a("drain"))),0))}const g=e=>t=>{if(!t)return new Promise(((t,n)=>{!function(e,r){const i=(...r)=>{u(e,i),((e,r)=>{if(e)return n(e);t(r)})(...r)};s[e].push(i)}(e)}));u(e),function(e,t){s[e].push(t)}(e,t)};var m=!1,y={_tasks:new U,*[Symbol.iterator](){yield*y._tasks[Symbol.iterator]()},concurrency:t,payload:n,buffer:t/4,started:!1,paused:!1,push(e,t){if(Array.isArray(e)){if(p(e))return;return e.map((e=>f(e,!1,!1,t)))}return f(e,!1,!1,t)},pushAsync(e,t){if(Array.isArray(e)){if(p(e))return;return e.map((e=>f(e,!1,!0,t)))}return f(e,!1,!0,t)},kill(){u(),y._tasks.empty()},unshift(e,t){if(Array.isArray(e)){if(p(e))return;return e.map((e=>f(e,!0,!1,t)))}return f(e,!0,!1,t)},unshiftAsync(e,t){if(Array.isArray(e)){if(p(e))return;return e.map((e=>f(e,!0,!0,t)))}return f(e,!0,!0,t)},remove(e){y._tasks.remove(e)},process(){if(!m){for(m=!0;!y.paused&&i<y.concurrency&&y._tasks.length;){var e=[],t=[],n=y._tasks.length;y.payload&&(n=Math.min(n,y.payload));for(var s=0;s<n;s++){var u=y._tasks.shift();e.push(u),o.push(u),t.push(u.data)}i+=1,0===y._tasks.length&&a("empty"),i===y.concurrency&&a("saturated");var c=S(d(e));r(t,c)}m=!1}},length:()=>y._tasks.length,running:()=>i,workersList:()=>o,idle:()=>y._tasks.length+i===0,pause(){y.paused=!0},resume(){!1!==y.paused&&(y.paused=!1,c(y.process))}};return Object.defineProperties(y,{saturated:{writable:!1,value:g("saturated")},unsaturated:{writable:!1,value:g("unsaturated")},empty:{writable:!1,value:g("empty")},drain:{writable:!1,value:g("drain")},error:{writable:!1,value:g("error")}}),y}function q(e,t){return H(e,1,t)}function G(e,t,n){return H(e,t,n)}var z=g((function(e,t,n,r){r=_(r);var i=h(n);return O(e,((e,n,r)=>{i(t,e,((e,n)=>{t=n,r(e)}))}),(e=>r(e,t)))}),4);function Q(...e){var t=e.map(h);return function(...e){var n=this,r=e[e.length-1];return"function"==typeof r?e.pop():r=x(),z(t,e,((e,t,r)=>{t.apply(n,e.concat(((e,...t)=>{r(e,t)})))}),((e,t)=>r(e,...t))),r[N]}}function K(...e){return Q(...e.reverse())}var Y=g((function(e,t,n,r){return y(E(t),e,n,r)}),4),J=g((function(e,t,n,r){var i=h(n);return Y(e,t,((e,t)=>{i(e,((e,...n)=>e?t(e):t(e,n)))}),((e,t)=>{for(var n=[],i=0;i<t.length;i++)t[i]&&(n=n.concat(...t[i]));return r(e,n)}))}),4),Z=g((function(e,t,n){return J(e,1/0,t,n)}),3),X=g((function(e,t,n){return J(e,1,t,n)}),3);function ee(...e){return function(...t){return t.pop()(null,...e)}}function te(e,t){return(n,r,i,o)=>{var s,u=!1;const a=h(i);n(r,((n,r,i)=>{a(n,((r,o)=>r||!1===r?i(r):e(o)&&!s?(u=!0,s=t(!0,n),i(null,b)):void i()))}),(e=>{if(e)return o(e);o(null,u?s:t(!1))}))}}var ne=g((function(e,t,n){return te((e=>e),((e,t)=>t))(L,e,t,n)}),3),re=g((function(e,t,n,r){return te((e=>e),((e,t)=>t))(E(t),e,n,r)}),4),ie=g((function(e,t,n){return te((e=>e),((e,t)=>t))(E(1),e,t,n)}),3);function oe(e){return(t,...n)=>h(t)(...n,((t,...n)=>{"object"==typeof console&&(t?console.error&&console.error(t):console[e]&&n.forEach((t=>console[e](t))))}))}var se=oe("dir"),ue=g((function(e,t,n){n=S(n);var r,i=h(e),o=h(t);function s(e,...t){if(e)return n(e);!1!==e&&(r=t,o(...t,u))}function u(e,t){return e?n(e):!1!==e?t?void i(s):n(null,...r):void 0}return u(null,!0)}),3);function ae(e,t,n){const r=h(t);return ue(e,((...e)=>{const t=e.pop();r(...e,((e,n)=>t(e,!n)))}),n)}function ce(e){return(t,n,r)=>e(t,r)}var le=g((function(e,t,n){return L(e,ce(h(t)),n)}),3),fe=g((function(e,t,n,r){return E(t)(e,ce(h(n)),r)}),4),de=g((function(e,t,n){return fe(e,1,t,n)}),3);function pe(e){return p(e)?e:function(...t){var n=t.pop(),r=!0;t.push(((...e)=>{r?c((()=>n(...e))):n(...e)})),e.apply(this,t),r=!1}}var he=g((function(e,t,n){return te((e=>!e),(e=>!e))(L,e,t,n)}),3),ge=g((function(e,t,n,r){return te((e=>!e),(e=>!e))(E(t),e,n,r)}),4),me=g((function(e,t,n){return te((e=>!e),(e=>!e))(O,e,t,n)}),3);function ye(e,t,n,r){var i=new Array(t.length);e(t,((e,t,r)=>{n(e,((e,n)=>{i[t]=!!n,r(e)}))}),(e=>{if(e)return r(e);for(var n=[],o=0;o<t.length;o++)i[o]&&n.push(t[o]);r(null,n)}))}function ve(e,t,n,r){var i=[];e(t,((e,t,r)=>{n(e,((n,o)=>{if(n)return r(n);o&&i.push({index:t,value:e}),r(n)}))}),(e=>{if(e)return r(e);r(null,i.sort(((e,t)=>e.index-t.index)).map((e=>e.value)))}))}function be(e,t,n,r){return(v(t)?ye:ve)(e,t,h(n),r)}var _e=g((function(e,t,n){return be(L,e,t,n)}),3),Se=g((function(e,t,n,r){return be(E(t),e,n,r)}),4),we=g((function(e,t,n){return be(O,e,t,n)}),3),Ee=g((function(e,t){var n=S(t),r=h(pe(e));return function e(t){if(t)return n(t);!1!==t&&r(e)}()}),2),Ce=g((function(e,t,n,r){var i=h(n);return Y(e,t,((e,t)=>{i(e,((n,r)=>n?t(n):t(n,{key:r,val:e})))}),((e,t)=>{for(var n={},{hasOwnProperty:i}=Object.prototype,o=0;o<t.length;o++)if(t[o]){var{key:s}=t[o],{val:u}=t[o];i.call(n,s)?n[s].push(u):n[s]=[u]}return r(e,n)}))}),4);function Ae(e,t,n){return Ce(e,1/0,t,n)}function Ie(e,t,n){return Ce(e,1,t,n)}var Le=oe("log"),Te=g((function(e,t,n,r){r=_(r);var i={},o=h(n);return E(t)(e,((e,t,n)=>{o(e,t,((e,r)=>{if(e)return n(e);i[t]=r,n(e)}))}),(e=>r(e,i)))}),4);function Re(e,t,n){return Te(e,1/0,t,n)}function Oe(e,t,n){return Te(e,1,t,n)}function ke(e,t=(e=>e)){var n=Object.create(null),r=Object.create(null),o=h(e),s=i(((e,i)=>{var s=t(...e);s in n?c((()=>i(null,...n[s]))):s in r?r[s].push(i):(r[s]=[i],o(...e,((e,...t)=>{e||(n[s]=t);var i=r[s];delete r[s];for(var o=0,u=i.length;o<u;o++)i[o](e,...t)})))}));return s.memo=n,s.unmemoized=e,s}var De=a(s?process.nextTick:o?setImmediate:u),Ne=g(((e,t,n)=>{var r=v(t)?[]:{};e(t,((e,t,n)=>{h(e)(((e,...i)=>{i.length<2&&([i]=i),r[t]=i,n(e)}))}),(e=>n(e,r)))}),3);function xe(e,t){return Ne(L,e,t)}function Pe(e,t,n){return Ne(E(t),e,n)}function Me(e,t){var n=h(e);return H(((e,t)=>{n(e[0],t)}),t,1)}class Be{constructor(){this.heap=[],this.pushCount=Number.MIN_SAFE_INTEGER}get length(){return this.heap.length}empty(){return this.heap=[],this}percUp(e){let t;for(;e>0&&je(this.heap[e],this.heap[t=We(e)]);){let n=this.heap[e];this.heap[e]=this.heap[t],this.heap[t]=n,e=t}}percDown(e){let t;for(;(t=1+(e<<1))<this.heap.length&&(t+1<this.heap.length&&je(this.heap[t+1],this.heap[t])&&(t+=1),!je(this.heap[e],this.heap[t]));){let n=this.heap[e];this.heap[e]=this.heap[t],this.heap[t]=n,e=t}}push(e){e.pushCount=++this.pushCount,this.heap.push(e),this.percUp(this.heap.length-1)}unshift(e){return this.heap.push(e)}shift(){let[e]=this.heap;return this.heap[0]=this.heap[this.heap.length-1],this.heap.pop(),this.percDown(0),e}toArray(){return[...this]}*[Symbol.iterator](){for(let e=0;e<this.heap.length;e++)yield this.heap[e].data}remove(e){let t=0;for(let n=0;n<this.heap.length;n++)e(this.heap[n])||(this.heap[t]=this.heap[n],t++);this.heap.splice(t);for(let e=We(this.heap.length-1);e>=0;e--)this.percDown(e);return this}}function We(e){return(e+1>>1)-1}function je(e,t){return e.priority!==t.priority?e.priority<t.priority:e.pushCount<t.pushCount}function $e(e,t){var n=Me(e,t);return n._tasks=new Be,n.push=function(e,t=0,r=(()=>{})){if("function"!=typeof r)throw new Error("task callback must be a function");if(n.started=!0,Array.isArray(e)||(e=[e]),0===e.length&&n.idle())return c((()=>n.drain()));for(var i=0,o=e.length;i<o;i++){var s={data:e[i],priority:t,callback:r};n._tasks.push(s)}c(n.process)},delete n.unshift,n}var Fe=g((function(e,t){if(t=_(t),!Array.isArray(e))return t(new TypeError("First argument to race must be an array of functions"));if(!e.length)return t();for(var n=0,r=e.length;n<r;n++)h(e[n])(t)}),2);function Ue(e,t,n,r){var i=[...e].reverse();return z(i,t,n,r)}function Ve(e){var t=h(e);return i((function(e,n){return e.push(((e,...t)=>{let r={};if(e&&(r.error=e),t.length>0){var i=t;t.length<=1&&([i]=t),r.value=i}n(null,r)})),t.apply(this,e)}))}function He(e){var t;return Array.isArray(e)?t=e.map(Ve):(t={},Object.keys(e).forEach((n=>{t[n]=Ve.call(this,e[n])}))),t}function qe(e,t,n,r){const i=h(n);return be(e,t,((e,t)=>{i(e,((e,n)=>{t(e,!n)}))}),r)}var Ge=g((function(e,t,n){return qe(L,e,t,n)}),3),ze=g((function(e,t,n,r){return qe(E(t),e,n,r)}),4),Qe=g((function(e,t,n){return qe(O,e,t,n)}),3);function Ke(e){return function(){return e}}function Ye(e,t,n){var r={times:5,intervalFunc:Ke(0)};if(arguments.length<3&&"function"==typeof e?(n=t||x(),t=e):(Je(r,e),n=n||x()),"function"!=typeof t)throw new Error("Invalid arguments for async.retry");var i=h(t),o=1;function s(){i(((e,...t)=>{!1!==e&&(e&&o++<r.times&&("function"!=typeof r.errorFilter||r.errorFilter(e))?setTimeout(s,r.intervalFunc(o-1)):n(e,...t))}))}return s(),n[N]}function Je(e,t){if("object"==typeof t)e.times=+t.times||5,e.intervalFunc="function"==typeof t.interval?t.interval:Ke(+t.interval||0),e.errorFilter=t.errorFilter;else{if("number"!=typeof t&&"string"!=typeof t)throw new Error("Invalid arguments for async.retry");e.times=+t||5}}function Ze(e,t){t||(t=e,e=null);let n=e&&e.arity||t.length;p(t)&&(n+=1);var r=h(t);return i(((t,i)=>{function o(e){r(...t,e)}return(t.length<n-1||null==i)&&(t.push(i),i=x()),e?Ye(e,o,i):Ye(o,i),i[N]}))}function Xe(e,t){return Ne(O,e,t)}var et=g((function(e,t,n){return te(Boolean,(e=>e))(L,e,t,n)}),3),tt=g((function(e,t,n,r){return te(Boolean,(e=>e))(E(t),e,n,r)}),4),nt=g((function(e,t,n){return te(Boolean,(e=>e))(O,e,t,n)}),3),rt=g((function(e,t,n){var r=h(t);return T(e,((e,t)=>{r(e,((n,r)=>{if(n)return t(n);t(n,{value:e,criteria:r})}))}),((e,t)=>{if(e)return n(e);n(null,t.sort(i).map((e=>e.value)))}));function i(e,t){var n=e.criteria,r=t.criteria;return n<r?-1:n>r?1:0}}),3);function it(e,t,n){var r=h(e);return i(((i,o)=>{var s,u=!1;i.push(((...e)=>{u||(o(...e),clearTimeout(s))})),s=setTimeout((function(){var t=e.name||"anonymous",r=new Error('Callback function "'+t+'" timed out.');r.code="ETIMEDOUT",n&&(r.info=n),u=!0,o(r)}),t),r(...i)}))}function ot(e,t,n,r){var i=h(n);return Y(function(e){for(var t=Array(e);e--;)t[e]=e;return t}(e),t,i,r)}function st(e,t,n){return ot(e,1/0,t,n)}function ut(e,t,n){return ot(e,1,t,n)}function at(e,t,n,r){arguments.length<=3&&"function"==typeof t&&(r=n,n=t,t=Array.isArray(e)?[]:{}),r=_(r||x());var i=h(n);return L(e,((e,n,r)=>{i(t,e,n,r)}),(e=>r(e,t))),r[N]}var ct=g((function(e,t){var n,r=null;return de(e,((e,t)=>{h(e)(((e,...i)=>{if(!1===e)return t(e);i.length<2?[n]=i:n=i,r=e,t(e?null:{})}))}),(()=>t(r,n)))}));function lt(e){return(...t)=>(e.unmemoized||e)(...t)}var ft=g((function(e,t,n){n=S(n);var r=h(t),i=h(e),o=[];function s(e,...t){if(e)return n(e);o=t,!1!==e&&i(u)}function u(e,t){return e?n(e):!1!==e?t?void r(s):n(null,...o):void 0}return i(u)}),3);function dt(e,t,n){const r=h(e);return ft((e=>r(((t,n)=>e(t,!n)))),t,n)}var pt=g((function(e,t){if(t=_(t),!Array.isArray(e))return t(new Error("First argument to waterfall must be an array of functions"));if(!e.length)return t();var n=0;function r(t){h(e[n++])(...t,S(i))}function i(i,...o){if(!1!==i)return i||n===e.length?t(i,...o):void r(o)}r([])}));const ht={apply:r,applyEach:R,applyEachSeries:D,asyncify:l,auto:P,autoInject:F,cargo:q,cargoQueue:G,compose:K,concat:Z,concatLimit:J,concatSeries:X,constant:ee,detect:ne,detectLimit:re,detectSeries:ie,dir:se,doUntil:ae,doWhilst:ue,each:le,eachLimit:fe,eachOf:L,eachOfLimit:C,eachOfSeries:O,eachSeries:de,ensureAsync:pe,every:he,everyLimit:ge,everySeries:me,filter:_e,filterLimit:Se,filterSeries:we,forever:Ee,groupBy:Ae,groupByLimit:Ce,groupBySeries:Ie,log:Le,map:T,mapLimit:Y,mapSeries:k,mapValues:Re,mapValuesLimit:Te,mapValuesSeries:Oe,memoize:ke,nextTick:De,parallel:xe,parallelLimit:Pe,priorityQueue:$e,queue:Me,race:Fe,reduce:z,reduceRight:Ue,reflect:Ve,reflectAll:He,reject:Ge,rejectLimit:ze,rejectSeries:Qe,retry:Ye,retryable:Ze,seq:Q,series:Xe,setImmediate:c,some:et,someLimit:tt,someSeries:nt,sortBy:rt,timeout:it,times:st,timesLimit:ot,timesSeries:ut,transform:at,tryEach:ct,unmemoize:lt,until:dt,waterfall:pt,whilst:ft,all:he,allLimit:ge,allSeries:me,any:et,anyLimit:tt,anySeries:nt,find:ne,findLimit:re,findSeries:ie,flatMap:Z,flatMapLimit:J,flatMapSeries:X,forEach:le,forEachSeries:de,forEachLimit:fe,forEachOf:L,forEachOfSeries:O,forEachOfLimit:C,inject:z,foldl:z,foldr:Ue,select:_e,selectLimit:Se,selectSeries:we,wrapSync:l,during:ft,doDuring:ue}},33998:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConfigUtilInstance=void 0;var r=s(n(72551)),i=n(51742),o=s(n(53059));function s(e){return e&&e.__esModule?e:{default:e}}const u=new function(){const e=this;this.resolveConfigVariables=function(e,t){let n=0,i=0,o=!0;function s(e){const t=e.split(/[/\\:?=&\s]/);for(let n=0;n<t.length;n++)if("$"===t[n][0]){const i=t[n].substring(1);let s=u(i);if(void 0!==s){const u=e.replace(t[n],s);r.default.system.verbose("forceObjectsToLogger","ConfigUtil.resolveConfigVariables:resolveString configString",t[n],i,s,"old value=",e,"value=",u),o=!0,e=u}}return e}function u(t){let n=e[t];return void 0===n&&(e.custom?(n=e.custom[t],void 0===n&&r.default.system.warn("ConfigUtil.resolveString",`Missing [${t}] variable from finsemble.custom configuration object`)):r.default.system.error("ConfigUtil.resolveString",`Missing "custom" node from finsemble configuration - unable to get variable resoution for variable: ${t}`)),n}function a(e,t,n){r.default.system.verbose("forceObjectsToLogger","resolveArray","pass",t,"recursionLevel",n,"configArray:",e);for(let r=0;r<e.length;r++){const i=e[r];"string"==typeof i&&i.indexOf("$")>-1?e[r]=s(i):i instanceof Array?a(i,t,n+1):"object"==typeof i&&c(i,t,n+1)}}function c(e,t,n){e=e||{},r.default.system.verbose("forceObjectsToLogger","ConfigUtil.resolveConfigVariables:resolveObject","pass",t,"recursionLevel",n,"configObject:",e),Object.keys(e).forEach((r=>{const i=e[r];"string"==typeof i&&i.indexOf("$")>-1?e[r]=s(i):i instanceof Array?a(i,t,n+1):"object"==typeof i&&c(i,t,n+1)}))}for(;o&&i++<100;)o=!1,c(t,++n,1);i>=100&&r.default.system.error("forceObjectsToLogger","resolveConfigVariables exceeded maximum passes so continuing -- probably a recursive macro definitions. Look in this config for unresolved macro variables",e)},this.getExpandedRawManifest=function(t,n){function o(t,s,u){r.default.system.debug("forceObjectsToLogger","ConfigUtil.getExpandedRawManifest:getRawManifest",s,u),s.getManifest((n=>{r.default.system.debug("forceObjectsToLogger","ConfigUtil.getExpandedRawManifest:getExpandedRawManifest: manifest retrieved. Pre-variable resolution",n),e.resolveConfigVariables(n.finsemble,n.finsemble),r.default.system.debug("forceObjectsToLogger","ConfigUtil.getExpandedRawManifest:getExpandedRawManifest:Complete. post-variable resolution",n),t(n)}),(e=>{e&&(r.default.system.error("ConfigUtil.getExpandedRawManifest:application.getManifest:err",e),n&&n()),s.getParentUuid((e=>{const n=i.System.Application.wrap(e);r.default.system.debug("forceObjectsToLogger","uuid",e,"parentApplication",n),u<10?o(t,n,++u):t("could not find manifest in parent applications")}))}))}r.default.system.debug("ConfigUtil.getExpandedRawManifest starting"),i.System.ready((()=>{const e=i.System.Application.getCurrent();o(t,e,1)}))},this.readConfigFile=function(e,t){r.default.system.debug(`fetching ${e}`),fetch(e,{credentials:"include",cache:"no-cache"}).then((e=>e.json())).catch((n=>{t(`Failure importing ${e}: ${n}`,null)})).then((e=>{t(null,e)}))},this.getInitialManifest=function(t){i.System.ready((()=>{i.System.Application.getCurrent().getManifest((n=>{n.finsemble=n.finsemble||{},e.resolveConfigVariables(n.finsemble,n.finsemble),n.finsemble.applicationRoot||r.default.system.error("FATAL ERROR: applicationRoot was not defined in manifest file.");const i=`${n.finsemble.moduleRoot}/configs/core/config.json`;e.readConfigFile(i,((o,s)=>{o?r.default.system.error(`ConfigUtil.getInitialManifest:getCoreConfig:failed importing into finsemble config. $moduleRoot=${n.finsemble.moduleRoot}; Full Path=${i}`,o):(Object.keys(s).forEach((e=>{if("importConfig"===e){n.finsemble.importConfig=n.finsemble.importConfig||[];for(let e=0;e<s.importConfig.length;e++)n.finsemble.importConfig.unshift(s.importConfig[e])}else if("importThirdPartyConfig"===e){n.finsemble.importThirdPartyConfig=n.finsemble.importThirdPartyConfig||[];for(let e=0;e<s.importThirdPartyConfig.length;e++)n.finsemble.importThirdPartyConfig.unshift(s.importThirdPartyConfig[e])}else n.finsemble[e]=s[e]})),e.resolveConfigVariables(n.finsemble,n.finsemble),r.default.system.debug("forceObjectsToLogger","ConfigUtil.getInitialManifest:getCoreConfig:Initial Manifest after variables Resolved",n)),t(n)}))}))}))},this.promptAndSaveJSONToLocalFile=function(e,t){r.default.system.debug("saveJSONToLocalFile",e,t);const n=JSON.stringify(t,null,"\t"),i=`data:application/json;charset=utf-8,${encodeURIComponent(n)}`,o=`${e}.json`,s=document.createElement("a");s.setAttribute("href",i),s.setAttribute("download",o),s.click()},this.configFormatForExport=function(e,t){r.default.system.debug("configFormatForExport starting",e,t);let n=o.default.cloneDeep(t);if("raw"===e);else if("all"===e)delete n.importConfig,delete n.comment;else if("application"===e)delete n.importConfig,delete n.comment,delete n.system,delete n.services;else if("workspace"===e)n={workspace:n};else if("workspaceTemplate"===e){const e={};e[n.name]=n,n={workspaceTemplates:e}}else"services"===e?n=n.services:"components"===e&&(n=n.components);return n},this.getDefault=function(e,t,n){let r=n;if(e){try{const n=t.split(".");let i=e;for(let e=1;e<n.length;e++)i=i[n[e]];r=i}catch(e){r=n}void 0===r&&(r=n)}return r},this.getFile=async function(e,t=Function.prototype){r.default.system.debug(`fetching import ${e}`);let n=null;return await fetch(e,{credentials:"include",cache:"no-cache"}).then((e=>e.json())).catch((n=>{t(`failure importing ${e}: ${n}`,null)})).then((e=>{t(null,e),n=e})),n}};t.ConfigUtilInstance=u},21014:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=new function(){let e=3;this.diagLevel=function(){return e},this.setDiagLevel=function(t){e=t},this.validationEnabled=function(){return e>=4}};t.default=n},73699:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=u(n(72551)),i=n(33998),o=n(51742),s=u(n(5020));function u(e){return e&&e.__esModule?e:{default:e}}let a=null;var c=new function(){const e={},t={};let u=null;this.getDefaultTemplateURL=function(e){u?setTimeout((()=>{e(u)}),0):(a||(a=n(70010).default),a.getValue({field:"finsemble"},((t,n)=>{u=i.ConfigUtilInstance.getDefault(n,"finsemble.notificationURL",`${n.moduleRoot}/components/system/notification/notification.html`),e(u)})))},this.alert=function(e,t,n,r,i){const o=this;i&&i.url?this.alertInternal(e,t,n,r,i,i.url):this.getDefaultTemplateURL((s=>{o.alertInternal(e,t,n,r,i,s)}))},this.alertInternal=function(n,i,u,a,c,l){let f=!1;const d=`UserNotification.alert.${u}`,p=(c=c||{}).duration||864e5;switch(i){case"ONCE-SINCE-STARTUP":d in e?f=!1:(f=!0,e[d]=!0);break;case"MAX-COUNT":{let e=0;const n=c.maxCount||1;d in t&&(e=t[d]),t[d]=++e,e<=n&&(f=!0);break}default:f=!0}if(r.default.log("UserNotification.alert",n,f,i,u,a,c),f){const e={url:l,message:a,timeout:p};s.default.systemLog({notification:!0},`Notification: ${a}`),new o.System.Notification(e)}}};t.default=c},13712:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,i=(r=n(21014))&&r.__esModule?r:{default:r},o=new function(){function e(e,t,n){const r=function(){try{throw Error("")}catch(e){return e}}(),i=r.stack.split("\n")[5],o=i.indexOf("at "),s=i.slice(o+2,i.length),u=r.stack.split("\n")[6],a=u.indexOf("at "),c=u.slice(a+2,u.length);console.warn(`parameter validation failed: parameter ${e} is of type '${typeof t}' but should be of type '${n}' in${s} called by${c}`)}this.args=function(){let t=!0;if(i.default.validationEnabled()){const n=arguments.length;if((n+1)%2!=0)for(let r=0;r<n;r+=2){let n=!1;const i=arguments[r];let o=arguments[r+1];if("="===o.slice(-1)&&(o=o.slice(0,-1),n=!0),typeof i!==o&&!(n&&void 0===i||void 0!==i&&"any"===o)){e(r/2+1,i,o),t=!1;break}}else console.warn(`validate.args requires even number of parameters: ${JSON.stringify(arguments)}`)}return t},this.args2=function(){let t=!0;if(i.default.validationEnabled()){const n=arguments.length;if((n+1)%3!=0)for(let r=0;r<n;r+=3){let n=!1;const i=arguments[r],o=arguments[r+1];let s=arguments[r+2];if("="===s.slice(-1)&&(s=s.slice(0,-1),n=!0),typeof o!==s&&!(n&&void 0===o||void 0!==o&&"any"===s)){e(i,o,s),t=!1;break}}else console.warn(`validate.args requires even number of parameters: ${JSON.stringify(arguments)}`)}return t}};t.default=o},16769:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(e){if(e)try{n.g.adapterReceiver?n.g.adapterReceiver.loaded(e[0],this):console.error("Global Adapter Receiver not found on the global object. Fatal error.")}catch(e){console.error("BaseStorage constructor",e)}this.setBaseName=function(e){this.baseName=e},this.setUser=function(e){this.userName=e},this.save=function(){console.warn("Save method not fulfilled in the active storage model.")},this.get=function(){console.warn("Get method not fulfilled in the active storage model.")},this.keys=function(){console.warn("Keys method not fulfilled in the active storage model.")},this.delete=function(){console.warn("Delete method not fulfilled in the active storage model.")},this.clearCache=function(){console.warn("Clear cache method not fulfilled in the active storage model.")},this.empty=function(){console.warn("Empty method not fulfilled in the active storage model.")},this.getMultiple=function(){},this.getCombinedKey=function(e,t){return`${e.baseName}:${e.userName}:${t.topic}:${t.key}`},this.getKeyPreface=function(e,t){let n=`${e.baseName}:${e.userName}:${t.topic}:`;return"keyPrefix"in t&&(n+=t.keyPrefix),n}}},78658:(e,t,n)=>{"use strict";var r=o(n(16769)),i=o(n(72551));function o(e){return e&&e.__esModule?e:{default:e}}i.default.start();let s=!1;IDBKeyRange.forPrefix=e=>{const t=(e=>{let t=e.length;for(;t>0;){const n=e.substring(0,t-1),r=e.charCodeAt(t-1);if(65535!==r)return n+String.fromCharCode(r+1);e=n,--t}return[]})(e);return void 0===t?IDBKeyRange.lowerBound(e):IDBKeyRange.bound(e,t,!1,!0)};const u=function(e){r.default.call(this,arguments),this.db,this.queue=[],i.default.system.log("InstrumentedIndexedDBAdapter init"),console.log("InstrumentedIndexedDBAdapter init");const t=window.indexedDB.open("finsemble",1);t.onupgradeneeded=e=>{this.db=e.target.result,this.db.createObjectStore("fsbl",{keyPath:"key"}).transaction.oncomplete=()=>{i.default.system.debug("InstrumentedIndexedDBAdapter object store created"),console.debug("InstrumentedIndexedDBAdapter object store created"),this.releaseQueue()}},t.onsuccess=e=>{i.default.system.log("InstrumentedIndexedDBAdapter initialized successfully"),console.log("InstrumentedIndexedDBAdapter initialized successfully"),this.initialSimulateErrorMode(),this.db=e.target.result,this.releaseQueue()},t.onerror=e=>{i.default.system.error("InstrumentedIndexedDBAdapter DB connection initialization failed, Error: ",e),console.error("InstrumentedIndexedDBAdapter DB connection initialization failed, Error: ",e)},this.getKeyPreface=e=>{const t="keyPrefix"in e?e.keyPrefix:"";return`${this.getUserPreface()}:${e.topic}:${t}`},this.getUserPreface=()=>`${this.baseName}:${this.userName}`,this.releaseQueue=()=>{for(s=!0,i.default.system.log(`InstrumentedIndexedDBAdapter.releaseQueue: ${this.queue.length} commands`),console.log(`InstrumentedIndexedDBAdapter.releaseQueue: ${this.queue.length} commands`);this.queue.length;){const e=this.queue.shift();this[e.method].apply(this,e.args)}},this.clearCache=(e,t)=>{if(!s)return i.default.system.debug("queuing","clearCache",[e,t]),console.debug("queuing","clearCache",[e,t]),void this.queue.push({method:"clearCache",args:[e,t]});const n=this.getUserPreface(this);i.default.system.log(`InstrumentedIndexedDBAdapter.clearCache for userPreface=${n}`),console.log(`InstrumentedIndexedDBAdapter.clearCache for userPreface=${n}`);const r=IDBKeyRange.forPrefix(n),o=this.db.transaction(["fsbl"],"readwrite").objectStore("fsbl").delete(r);o.onsuccess=()=>{i.default.system.log(`InstrumentedIndexedDBAdapter.clearCache Success: userPreface=${n}`),console.log(`InstrumentedIndexedDBAdapter.clearCache Success: userPreface=${n}`),t(null,{status:"success"})},o.onerror=e=>{i.default.system.error("InstrumentedIndexedDBAdapter.clearCache failed Error",e,`userPreface=${n}`),console.error("InstrumentedIndexedDBAdapter.clearCache failed Error",e,`userPreface=${n}`),t(e,{status:"failed"})}},this.delete=async(e,t)=>{switch(await this.randomDelay(),this.simulateErrorMode){case 0:break;case 1:return i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.delete: error mode is ${this.simulateErrorMode}`),t("simulated error",{status:"failed"});case 2:return void i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.delete: error mode is ${this.simulateErrorMode}`)}if(!s)return i.default.system.debug("queuing","delete",[e,t]),console.debug("queuing","delete",[e,t]),void this.queue.push({method:"delete",args:[e,t]});const n=this.getCombinedKey(this,e);i.default.system.debug(`InstrumentedIndexedDBAdapter.delete for key=${n}`),console.debug(`InstrumentedIndexedDBAdapter.delete for key=${n}`);const r=this.db.transaction(["fsbl"],"readwrite").objectStore("fsbl").delete(n);r.onsuccess=()=>{i.default.system.debug(`InstrumentedIndexedDBAdapter.delete key=${n}, Success`),console.debug(`InstrumentedIndexedDBAdapter.delete key=${n}, Success`),t(null,{status:"success"})},r.onerror=e=>{i.default.system.error(`InstrumentedIndexedDBAdapter.delete key=${n}, Error`,e),console.error(`InstrumentedIndexedDBAdapter.delete key=${n}, Error`,e),t(e,{status:"failed"})}},this.empty=e=>{if(!s)return i.default.system.debug("queuing","empty",[e]),console.debug("queuing","empty",[e]),void this.queue.push({method:"empty",args:[e]});i.default.system.log("InstrumentedIndexedDBAdapter.empty"),console.log("InstrumentedIndexedDBAdapter.empty");const t=this.db.transaction(["fsbl"],"readwrite").objectStore("fsbl").clear();t.onerror=t=>(i.default.system.error("InstrumentedIndexedDBAdapter.empty failed Error",t),console.error("InstrumentedIndexedDBAdapter.empty failed Error",t),e(t,{status:"failed"})),t.onsuccess=()=>{i.default.system.log("InstrumentedIndexedDBAdapter.empty Success"),console.log("InstrumentedIndexedDBAdapter.empty Success"),e()}},this.randomDelay=()=>{if(this.delayUpperBoundInMilliseconds>0){let e=this.delayUpperBoundInMilliseconds-this.delayLowerBoundInMilliseconds,t=Math.floor(Math.random()*e)+this.delayLowerBoundInMilliseconds;return i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.randomDelay: ${t} millisecond delay added`),console.debug(`QAData: InstrumentedIndexedDBAdapter.randomDelay: ${t} millisecond delay added`),new Promise((e=>setTimeout(e,t)))}return Promise.resolve()},this.get=async(e,t)=>{switch(await this.randomDelay(),this.simulateErrorMode){case 0:break;case 1:return i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.get: error mode is ${this.simulateErrorMode}`),i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.get: error mode is ${this.simulateErrorMode}`),t("simulated error",{status:"failed"});case 2:return i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.get: error mode is ${this.simulateErrorMode}`),void console.debug(`QAData: InstrumentedIndexedDBAdapter.get: error mode is ${this.simulateErrorMode}`)}if(!s)return i.default.system.debug("queuing","get",[e,t]),console.debug("queuing","get",[e,t]),void this.queue.push({method:"get",args:[e,t]});i.default.system.debug("InstrumentedIndexedDBAdapter.get, params: ",e),console.debug("InstrumentedIndexedDBAdapter.get, params: ",e);const n=this.getCombinedKey(this,e),r=this.db.transaction(["fsbl"],"readwrite").objectStore("fsbl").get(n);r.onsuccess=e=>{let r;e.target.result&&(r=e.target.result.value),i.default.system.debug(`InstrumentedIndexedDBAdapter.get for key=${n} data=`,r),console.debug(`InstrumentedIndexedDBAdapter.get for key=${n} data=`,r),t(null,r)},r.onerror=e=>{i.default.system.error(`InstrumentedIndexedDBAdapter.get key=${n}, Error`,e),console.error(`InstrumentedIndexedDBAdapter.get key=${n}, Error`,e),t(e,{status:"failed"})}},this.keys=(e,t)=>{if(!s)return i.default.system.debug("queuing","keys",[e,t]),console.debug("queuing","keys",[e,t]),void this.queue.push({method:"keys",args:[e,t]});const n=this.getKeyPreface(e),r=IDBKeyRange.forPrefix(n),o=this.db.transaction(["fsbl"],"readwrite").objectStore("fsbl").getAllKeys(r);o.onsuccess=e=>{const r=(e.target.result?e.target.result:[]).map((e=>e.replace(n,"")));i.default.system.debug(`InstrumentedIndexedDBAdapter.keys for keyPreface=${n} keys=`,r),console.debug(`InstrumentedIndexedDBAdapter.get keys keyPreface=${n} keys=`,r),t(null,r)},o.onerror=e=>{i.default.system.error(`Failed to retrieve InstrumentedIndexedDBAdapter.keys keyPreface=${n}, Error`,e),console.error(`Failed to retrieve InstrumentedIndexedDBAdapter.keys keyPreface=${n}, Error`,e),t(e,{status:"failed"})}},this.save=async(e,t)=>{switch(await this.randomDelay(),this.simulateErrorMode){case 0:break;case 1:return i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.save: error mode is ${this.simulateErrorMode}`),console.debug(`QAData: InstrumentedIndexedDBAdapter.save: error mode is ${this.simulateErrorMode}`),t("simulated error",{status:"failed"});case 2:return i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.save: error mode is ${this.simulateErrorMode}`),void console.debug(`QAData: InstrumentedIndexedDBAdapter.save: error mode is ${this.simulateErrorMode}`)}if(!s)return i.default.system.debug("queuing","save",[e,t]),console.debug("queuing","save",[e,t]),void this.queue.push({method:"save",args:[e,t]});i.default.system.debug("InstrumentedIndexedDBAdapter.save, params: ",e),console.debug("InstrumentedIndexedDBAdapter.save, params: ",e);const n=this.getCombinedKey(this,e),r=this.db.transaction(["fsbl"],"readwrite").objectStore("fsbl").put({key:n,value:e.value});r.onsuccess=()=>{i.default.system.debug("InstrumentedIndexedDBAdapter.save Request Succeeded"),console.debug("InstrumentedIndexedDBAdapter.save Request Succeeded"),t(null,{status:"success"})},r.onerror=e=>{i.default.system.error("InstrumentedIndexedDBAdapter.save Request Failed: ",e),console.error("InstrumentedIndexedDBAdapter.save Request Failed: ",e),t(e,{status:"failed"})}},this.initialSimulateErrorMode=()=>{this.simulateErrorMode=JSON.parse(localStorage.getItem("finsembleErrorMode")),this.delayLowerBoundInMilliseconds=JSON.parse(localStorage.getItem("finsembleDelayLowerBoundInMilliseconds")),this.delayUpperBoundInMilliseconds=JSON.parse(localStorage.getItem("finsembleDelayUpperBoundInMilliseconds")),i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.initialSimulateErrorMode: errorMode ${this.simulateErrorMode} lowerDelay ${this.delayLowerBoundInMilliseconds} upperDelay ${this.delayUpperBoundInMilliseconds}`),console.log(`QAData: InstrumentedIndexedDBAdapter.initialSimulateErrorMode: errorMode ${this.simulateErrorMode} lowerDelay ${this.delayLowerBoundInMilliseconds} upperDelay ${this.delayUpperBoundInMilliseconds}`)},this.setRandomDelayBounds=(e,t)=>{i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.setRandomDelayBounds: lower ${e} upper ${t}`),console.debug(`QAData: InstrumentedIndexedDBAdapter.setRandomDelayBounds: lower ${e} upper ${t}`),this.delayLowerBoundInMilliseconds=e,this.delayUpperBoundInMilliseconds=t,localStorage.setItem("finsembleDelayLowerBoundInMilliseconds",JSON.stringify(e)),localStorage.setItem("finsembleDelayUpperBoundInMilliseconds",JSON.stringify(t))},this.setErrorMode=e=>{i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.setErrorMode: mode ${e}`),console.debug(`QAData: InstrumentedIndexedDBAdapter.setErrorMode: mode ${e}`),this.simulateErrorMode=e,localStorage.setItem("finsembleErrorMode",JSON.stringify(e))},this.clearErrorMode=()=>{i.default.system.debug("QAData: InstrumentedIndexedDBAdapter.clearErrorMode"),console.debug("QAData: InstrumentedIndexedDBAdapter.clearErrorMode"),this.setErrorMode(0)}};u.prototype=new r.default,new u("InstrumentedIndexedDBAdapter"),e.exports=u},5939:e=>{"use strict";var t,n="object"==typeof Reflect?Reflect:null,r=n&&"function"==typeof n.apply?n.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};t=n&&"function"==typeof n.ownKeys?n.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var i=Number.isNaN||function(e){return e!=e};function o(){o.init.call(this)}e.exports=o,e.exports.once=function(e,t){return new Promise((function(n,r){function i(n){e.removeListener(t,o),r(n)}function o(){"function"==typeof e.removeListener&&e.removeListener("error",i),n([].slice.call(arguments))}g(e,t,o,{once:!0}),"error"!==t&&function(e,t,n){"function"==typeof e.on&&g(e,"error",t,{once:!0})}(e,i)}))},o.EventEmitter=o,o.prototype._events=void 0,o.prototype._eventsCount=0,o.prototype._maxListeners=void 0;var s=10;function u(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function a(e){return void 0===e._maxListeners?o.defaultMaxListeners:e._maxListeners}function c(e,t,n,r){var i,o,s,c;if(u(n),void 0===(o=e._events)?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),o=e._events),s=o[t]),void 0===s)s=o[t]=n,++e._eventsCount;else if("function"==typeof s?s=o[t]=r?[n,s]:[s,n]:r?s.unshift(n):s.push(n),(i=a(e))>0&&s.length>i&&!s.warned){s.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=t,l.count=s.length,c=l,console&&console.warn&&console.warn(c)}return e}function l(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function f(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=l.bind(r);return i.listener=n,r.wrapFn=i,i}function d(e,t,n){var r=e._events;if(void 0===r)return[];var i=r[t];return void 0===i?[]:"function"==typeof i?n?[i.listener||i]:[i]:n?function(e){for(var t=new Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(i):h(i,i.length)}function p(e){var t=this._events;if(void 0!==t){var n=t[e];if("function"==typeof n)return 1;if(void 0!==n)return n.length}return 0}function h(e,t){for(var n=new Array(t),r=0;r<t;++r)n[r]=e[r];return n}function g(e,t,n,r){if("function"==typeof e.on)r.once?e.once(t,n):e.on(t,n);else{if("function"!=typeof e.addEventListener)throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e);e.addEventListener(t,(function i(o){r.once&&e.removeEventListener(t,i),n(o)}))}}Object.defineProperty(o,"defaultMaxListeners",{enumerable:!0,get:function(){return s},set:function(e){if("number"!=typeof e||e<0||i(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");s=e}}),o.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},o.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||i(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},o.prototype.getMaxListeners=function(){return a(this)},o.prototype.emit=function(e){for(var t=[],n=1;n<arguments.length;n++)t.push(arguments[n]);var i="error"===e,o=this._events;if(void 0!==o)i=i&&void 0===o.error;else if(!i)return!1;if(i){var s;if(t.length>0&&(s=t[0]),s instanceof Error)throw s;var u=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw u.context=s,u}var a=o[e];if(void 0===a)return!1;if("function"==typeof a)r(a,this,t);else{var c=a.length,l=h(a,c);for(n=0;n<c;++n)r(l[n],this,t)}return!0},o.prototype.addListener=function(e,t){return c(this,e,t,!1)},o.prototype.on=o.prototype.addListener,o.prototype.prependListener=function(e,t){return c(this,e,t,!0)},o.prototype.once=function(e,t){return u(t),this.on(e,f(this,e,t)),this},o.prototype.prependOnceListener=function(e,t){return u(t),this.prependListener(e,f(this,e,t)),this},o.prototype.removeListener=function(e,t){var n,r,i,o,s;if(u(t),void 0===(r=this._events))return this;if(void 0===(n=r[e]))return this;if(n===t||n.listener===t)0==--this._eventsCount?this._events=Object.create(null):(delete r[e],r.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!=typeof n){for(i=-1,o=n.length-1;o>=0;o--)if(n[o]===t||n[o].listener===t){s=n[o].listener,i=o;break}if(i<0)return this;0===i?n.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(n,i),1===n.length&&(r[e]=n[0]),void 0!==r.removeListener&&this.emit("removeListener",e,s||t)}return this},o.prototype.off=o.prototype.removeListener,o.prototype.removeAllListeners=function(e){var t,n,r;if(void 0===(n=this._events))return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[e]&&(0==--this._eventsCount?this._events=Object.create(null):delete n[e]),this;if(0===arguments.length){var i,o=Object.keys(n);for(r=0;r<o.length;++r)"removeListener"!==(i=o[r])&&this.removeAllListeners(i);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(t=n[e]))this.removeListener(e,t);else if(void 0!==t)for(r=t.length-1;r>=0;r--)this.removeListener(e,t[r]);return this},o.prototype.listeners=function(e){return d(this,e,!0)},o.prototype.rawListeners=function(e){return d(this,e,!1)},o.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):p.call(e,t)},o.prototype.listenerCount=p,o.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},44937:(e,t,n)=>{var r=n(158).Symbol;e.exports=r},20194:(e,t,n)=>{var r=n(44937),i=n(15401),o=n(92445),s=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":s&&s in Object(e)?i(e):o(e)}},12383:(e,t,n)=>{var r=n(38725),i=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(i,""):e}},14528:(e,t,n)=>{var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=r},15401:(e,t,n)=>{var r=n(44937),i=Object.prototype,o=i.hasOwnProperty,s=i.toString,u=r?r.toStringTag:void 0;e.exports=function(e){var t=o.call(e,u),n=e[u];try{e[u]=void 0;var r=!0}catch(e){}var i=s.call(e);return r&&(t?e[u]=n:delete e[u]),i}},92445:e=>{var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},158:(e,t,n)=>{var r=n(14528),i="object"==typeof self&&self&&self.Object===Object&&self,o=r||i||Function("return this")();e.exports=o},38725:e=>{var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},76897:(e,t,n)=>{var r=n(23619),i=n(98253),o=n(95053),s=Math.max,u=Math.min;e.exports=function(e,t,n){var a,c,l,f,d,p,h=0,g=!1,m=!1,y=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function v(t){var n=a,r=c;return a=c=void 0,h=t,f=e.apply(r,n)}function b(e){return h=e,d=setTimeout(S,t),g?v(e):f}function _(e){var n=e-p;return void 0===p||n>=t||n<0||m&&e-h>=l}function S(){var e=i();if(_(e))return w(e);d=setTimeout(S,function(e){var n=t-(e-p);return m?u(n,l-(e-h)):n}(e))}function w(e){return d=void 0,y&&a?v(e):(a=c=void 0,f)}function E(){var e=i(),n=_(e);if(a=arguments,c=this,p=e,n){if(void 0===d)return b(p);if(m)return clearTimeout(d),d=setTimeout(S,t),v(p)}return void 0===d&&(d=setTimeout(S,t)),f}return t=o(t)||0,r(n)&&(g=!!n.leading,l=(m="maxWait"in n)?s(o(n.maxWait)||0,t):l,y="trailing"in n?!!n.trailing:y),E.cancel=function(){void 0!==d&&clearTimeout(d),h=0,a=p=c=d=void 0},E.flush=function(){return void 0===d?f:w(i())},E}},23619:e=>{e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},81653:e=>{e.exports=function(e){return null!=e&&"object"==typeof e}},81878:(e,t,n)=>{var r=n(20194),i=n(81653);e.exports=function(e){return"symbol"==typeof e||i(e)&&"[object Symbol]"==r(e)}},53059:function(e,t,n){var r;e=n.nmd(e),function(){var i,o="Expected a function",s="__lodash_hash_undefined__",u="__lodash_placeholder__",a=32,c=128,l=1/0,f=9007199254740991,d=NaN,p=4294967295,h=[["ary",c],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",a],["partialRight",64],["rearg",256]],g="[object Arguments]",m="[object Array]",y="[object Boolean]",v="[object Date]",b="[object Error]",_="[object Function]",S="[object GeneratorFunction]",w="[object Map]",E="[object Number]",C="[object Object]",A="[object Promise]",I="[object RegExp]",L="[object Set]",T="[object String]",R="[object Symbol]",O="[object WeakMap]",k="[object ArrayBuffer]",D="[object DataView]",N="[object Float32Array]",x="[object Float64Array]",P="[object Int8Array]",M="[object Int16Array]",B="[object Int32Array]",W="[object Uint8Array]",j="[object Uint8ClampedArray]",$="[object Uint16Array]",F="[object Uint32Array]",U=/\b__p \+= '';/g,V=/\b(__p \+=) '' \+/g,H=/(__e\(.*?\)|\b__t\)) \+\n'';/g,q=/&(?:amp|lt|gt|quot|#39);/g,G=/[&<>"']/g,z=RegExp(q.source),Q=RegExp(G.source),K=/<%-([\s\S]+?)%>/g,Y=/<%([\s\S]+?)%>/g,J=/<%=([\s\S]+?)%>/g,Z=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,X=/^\w*$/,ee=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,te=/[\\^$.*+?()[\]{}|]/g,ne=RegExp(te.source),re=/^\s+/,ie=/\s/,oe=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,se=/\{\n\/\* \[wrapped with (.+)\] \*/,ue=/,? & /,ae=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ce=/[()=,{}\[\]\/\s]/,le=/\\(\\)?/g,fe=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,de=/\w*$/,pe=/^[-+]0x[0-9a-f]+$/i,he=/^0b[01]+$/i,ge=/^\[object .+?Constructor\]$/,me=/^0o[0-7]+$/i,ye=/^(?:0|[1-9]\d*)$/,ve=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,be=/($^)/,_e=/['\n\r\u2028\u2029\\]/g,Se="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",we="a-z\\xdf-\\xf6\\xf8-\\xff",Ee="A-Z\\xc0-\\xd6\\xd8-\\xde",Ce="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ae="["+Ce+"]",Ie="["+Se+"]",Le="\\d+",Te="["+we+"]",Re="[^\\ud800-\\udfff"+Ce+Le+"\\u2700-\\u27bf"+we+Ee+"]",Oe="\\ud83c[\\udffb-\\udfff]",ke="[^\\ud800-\\udfff]",De="(?:\\ud83c[\\udde6-\\uddff]){2}",Ne="[\\ud800-\\udbff][\\udc00-\\udfff]",xe="["+Ee+"]",Pe="(?:"+Te+"|"+Re+")",Me="(?:"+xe+"|"+Re+")",Be="(?:['’](?:d|ll|m|re|s|t|ve))?",We="(?:['’](?:D|LL|M|RE|S|T|VE))?",je="(?:"+Ie+"|"+Oe+")?",$e="[\\ufe0e\\ufe0f]?",Fe=$e+je+"(?:\\u200d(?:"+[ke,De,Ne].join("|")+")"+$e+je+")*",Ue="(?:"+["[\\u2700-\\u27bf]",De,Ne].join("|")+")"+Fe,Ve="(?:"+[ke+Ie+"?",Ie,De,Ne,"[\\ud800-\\udfff]"].join("|")+")",He=RegExp("['’]","g"),qe=RegExp(Ie,"g"),Ge=RegExp(Oe+"(?="+Oe+")|"+Ve+Fe,"g"),ze=RegExp([xe+"?"+Te+"+"+Be+"(?="+[Ae,xe,"$"].join("|")+")",Me+"+"+We+"(?="+[Ae,xe+Pe,"$"].join("|")+")",xe+"?"+Pe+"+"+Be,xe+"+"+We,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Le,Ue].join("|"),"g"),Qe=RegExp("[\\u200d\\ud800-\\udfff"+Se+"\\ufe0e\\ufe0f]"),Ke=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Ye=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Je=-1,Ze={};Ze[N]=Ze[x]=Ze[P]=Ze[M]=Ze[B]=Ze[W]=Ze[j]=Ze[$]=Ze[F]=!0,Ze[g]=Ze[m]=Ze[k]=Ze[y]=Ze[D]=Ze[v]=Ze[b]=Ze[_]=Ze[w]=Ze[E]=Ze[C]=Ze[I]=Ze[L]=Ze[T]=Ze[O]=!1;var Xe={};Xe[g]=Xe[m]=Xe[k]=Xe[D]=Xe[y]=Xe[v]=Xe[N]=Xe[x]=Xe[P]=Xe[M]=Xe[B]=Xe[w]=Xe[E]=Xe[C]=Xe[I]=Xe[L]=Xe[T]=Xe[R]=Xe[W]=Xe[j]=Xe[$]=Xe[F]=!0,Xe[b]=Xe[_]=Xe[O]=!1;var et={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},tt=parseFloat,nt=parseInt,rt="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,it="object"==typeof self&&self&&self.Object===Object&&self,ot=rt||it||Function("return this")(),st=t&&!t.nodeType&&t,ut=st&&e&&!e.nodeType&&e,at=ut&&ut.exports===st,ct=at&&rt.process,lt=function(){try{return ut&&ut.require&&ut.require("util").types||ct&&ct.binding&&ct.binding("util")}catch(e){}}(),ft=lt&&lt.isArrayBuffer,dt=lt&&lt.isDate,pt=lt&&lt.isMap,ht=lt&&lt.isRegExp,gt=lt&&lt.isSet,mt=lt&&lt.isTypedArray;function yt(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function vt(e,t,n,r){for(var i=-1,o=null==e?0:e.length;++i<o;){var s=e[i];t(r,s,n(s),e)}return r}function bt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}function _t(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function St(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function wt(e,t){for(var n=-1,r=null==e?0:e.length,i=0,o=[];++n<r;){var s=e[n];t(s,n,e)&&(o[i++]=s)}return o}function Et(e,t){return!(null==e||!e.length)&&Nt(e,t,0)>-1}function Ct(e,t,n){for(var r=-1,i=null==e?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}function At(e,t){for(var n=-1,r=null==e?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}function It(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}function Lt(e,t,n,r){var i=-1,o=null==e?0:e.length;for(r&&o&&(n=e[++i]);++i<o;)n=t(n,e[i],i,e);return n}function Tt(e,t,n,r){var i=null==e?0:e.length;for(r&&i&&(n=e[--i]);i--;)n=t(n,e[i],i,e);return n}function Rt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var Ot=Bt("length");function kt(e,t,n){var r;return n(e,(function(e,n,i){if(t(e,n,i))return r=n,!1})),r}function Dt(e,t,n,r){for(var i=e.length,o=n+(r?1:-1);r?o--:++o<i;)if(t(e[o],o,e))return o;return-1}function Nt(e,t,n){return t==t?function(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}(e,t,n):Dt(e,Pt,n)}function xt(e,t,n,r){for(var i=n-1,o=e.length;++i<o;)if(r(e[i],t))return i;return-1}function Pt(e){return e!=e}function Mt(e,t){var n=null==e?0:e.length;return n?$t(e,t)/n:d}function Bt(e){return function(t){return null==t?i:t[e]}}function Wt(e){return function(t){return null==e?i:e[t]}}function jt(e,t,n,r,i){return i(e,(function(e,i,o){n=r?(r=!1,e):t(n,e,i,o)})),n}function $t(e,t){for(var n,r=-1,o=e.length;++r<o;){var s=t(e[r]);s!==i&&(n=n===i?s:n+s)}return n}function Ft(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function Ut(e){return e?e.slice(0,un(e)+1).replace(re,""):e}function Vt(e){return function(t){return e(t)}}function Ht(e,t){return At(t,(function(t){return e[t]}))}function qt(e,t){return e.has(t)}function Gt(e,t){for(var n=-1,r=e.length;++n<r&&Nt(t,e[n],0)>-1;);return n}function zt(e,t){for(var n=e.length;n--&&Nt(t,e[n],0)>-1;);return n}function Qt(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}var Kt=Wt({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),Yt=Wt({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function Jt(e){return"\\"+et[e]}function Zt(e){return Qe.test(e)}function Xt(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function en(e,t){return function(n){return e(t(n))}}function tn(e,t){for(var n=-1,r=e.length,i=0,o=[];++n<r;){var s=e[n];s!==t&&s!==u||(e[n]=u,o[i++]=n)}return o}function nn(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}function rn(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=[e,e]})),n}function on(e){return Zt(e)?function(e){for(var t=Ge.lastIndex=0;Ge.test(e);)++t;return t}(e):Ot(e)}function sn(e){return Zt(e)?function(e){return e.match(Ge)||[]}(e):function(e){return e.split("")}(e)}function un(e){for(var t=e.length;t--&&ie.test(e.charAt(t)););return t}var an=Wt({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),cn=function e(t){var n,r=(t=null==t?ot:cn.defaults(ot.Object(),t,cn.pick(ot,Ye))).Array,ie=t.Date,Se=t.Error,we=t.Function,Ee=t.Math,Ce=t.Object,Ae=t.RegExp,Ie=t.String,Le=t.TypeError,Te=r.prototype,Re=we.prototype,Oe=Ce.prototype,ke=t["__core-js_shared__"],De=Re.toString,Ne=Oe.hasOwnProperty,xe=0,Pe=(n=/[^.]+$/.exec(ke&&ke.keys&&ke.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Me=Oe.toString,Be=De.call(Ce),We=ot._,je=Ae("^"+De.call(Ne).replace(te,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),$e=at?t.Buffer:i,Fe=t.Symbol,Ue=t.Uint8Array,Ve=$e?$e.allocUnsafe:i,Ge=en(Ce.getPrototypeOf,Ce),Qe=Ce.create,et=Oe.propertyIsEnumerable,rt=Te.splice,it=Fe?Fe.isConcatSpreadable:i,st=Fe?Fe.iterator:i,ut=Fe?Fe.toStringTag:i,ct=function(){try{var e=co(Ce,"defineProperty");return e({},"",{}),e}catch(e){}}(),lt=t.clearTimeout!==ot.clearTimeout&&t.clearTimeout,Ot=ie&&ie.now!==ot.Date.now&&ie.now,Wt=t.setTimeout!==ot.setTimeout&&t.setTimeout,ln=Ee.ceil,fn=Ee.floor,dn=Ce.getOwnPropertySymbols,pn=$e?$e.isBuffer:i,hn=t.isFinite,gn=Te.join,mn=en(Ce.keys,Ce),yn=Ee.max,vn=Ee.min,bn=ie.now,_n=t.parseInt,Sn=Ee.random,wn=Te.reverse,En=co(t,"DataView"),Cn=co(t,"Map"),An=co(t,"Promise"),In=co(t,"Set"),Ln=co(t,"WeakMap"),Tn=co(Ce,"create"),Rn=Ln&&new Ln,On={},kn=jo(En),Dn=jo(Cn),Nn=jo(An),xn=jo(In),Pn=jo(Ln),Mn=Fe?Fe.prototype:i,Bn=Mn?Mn.valueOf:i,Wn=Mn?Mn.toString:i;function jn(e){if(nu(e)&&!qs(e)&&!(e instanceof Vn)){if(e instanceof Un)return e;if(Ne.call(e,"__wrapped__"))return $o(e)}return new Un(e)}var $n=function(){function e(){}return function(t){if(!tu(t))return{};if(Qe)return Qe(t);e.prototype=t;var n=new e;return e.prototype=i,n}}();function Fn(){}function Un(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=i}function Vn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=p,this.__views__=[]}function Hn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function qn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Gn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function zn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Gn;++t<n;)this.add(e[t])}function Qn(e){var t=this.__data__=new qn(e);this.size=t.size}function Kn(e,t){var n=qs(e),r=!n&&Hs(e),i=!n&&!r&&Ks(e),o=!n&&!r&&!i&&lu(e),s=n||r||i||o,u=s?Ft(e.length,Ie):[],a=u.length;for(var c in e)!t&&!Ne.call(e,c)||s&&("length"==c||i&&("offset"==c||"parent"==c)||o&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||yo(c,a))||u.push(c);return u}function Yn(e){var t=e.length;return t?e[Gr(0,t-1)]:i}function Jn(e,t){return xo(Li(e),sr(t,0,e.length))}function Zn(e){return xo(Li(e))}function Xn(e,t,n){(n!==i&&!Fs(e[t],n)||n===i&&!(t in e))&&ir(e,t,n)}function er(e,t,n){var r=e[t];Ne.call(e,t)&&Fs(r,n)&&(n!==i||t in e)||ir(e,t,n)}function tr(e,t){for(var n=e.length;n--;)if(Fs(e[n][0],t))return n;return-1}function nr(e,t,n,r){return fr(e,(function(e,i,o){t(r,e,n(e),o)})),r}function rr(e,t){return e&&Ti(t,Du(t),e)}function ir(e,t,n){"__proto__"==t&&ct?ct(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function or(e,t){for(var n=-1,o=t.length,s=r(o),u=null==e;++n<o;)s[n]=u?i:Lu(e,t[n]);return s}function sr(e,t,n){return e==e&&(n!==i&&(e=e<=n?e:n),t!==i&&(e=e>=t?e:t)),e}function ur(e,t,n,r,o,s){var u,a=1&t,c=2&t,l=4&t;if(n&&(u=o?n(e,r,o,s):n(e)),u!==i)return u;if(!tu(e))return e;var f=qs(e);if(f){if(u=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&Ne.call(e,"index")&&(n.index=e.index,n.input=e.input),n}(e),!a)return Li(e,u)}else{var d=po(e),p=d==_||d==S;if(Ks(e))return Si(e,a);if(d==C||d==g||p&&!o){if(u=c||p?{}:go(e),!a)return c?function(e,t){return Ti(e,fo(e),t)}(e,function(e,t){return e&&Ti(t,Nu(t),e)}(u,e)):function(e,t){return Ti(e,lo(e),t)}(e,rr(u,e))}else{if(!Xe[d])return o?e:{};u=function(e,t,n){var r,i=e.constructor;switch(t){case k:return wi(e);case y:case v:return new i(+e);case D:return function(e,t){var n=t?wi(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case N:case x:case P:case M:case B:case W:case j:case $:case F:return Ei(e,n);case w:return new i;case E:case T:return new i(e);case I:return function(e){var t=new e.constructor(e.source,de.exec(e));return t.lastIndex=e.lastIndex,t}(e);case L:return new i;case R:return r=e,Bn?Ce(Bn.call(r)):{}}}(e,d,a)}}s||(s=new Qn);var h=s.get(e);if(h)return h;s.set(e,u),uu(e)?e.forEach((function(r){u.add(ur(r,t,n,r,e,s))})):ru(e)&&e.forEach((function(r,i){u.set(i,ur(r,t,n,i,e,s))}));var m=f?i:(l?c?no:to:c?Nu:Du)(e);return bt(m||e,(function(r,i){m&&(r=e[i=r]),er(u,i,ur(r,t,n,i,e,s))})),u}function ar(e,t,n){var r=n.length;if(null==e)return!r;for(e=Ce(e);r--;){var o=n[r],s=t[o],u=e[o];if(u===i&&!(o in e)||!s(u))return!1}return!0}function cr(e,t,n){if("function"!=typeof e)throw new Le(o);return Oo((function(){e.apply(i,n)}),t)}function lr(e,t,n,r){var i=-1,o=Et,s=!0,u=e.length,a=[],c=t.length;if(!u)return a;n&&(t=At(t,Vt(n))),r?(o=Ct,s=!1):t.length>=200&&(o=qt,s=!1,t=new zn(t));e:for(;++i<u;){var l=e[i],f=null==n?l:n(l);if(l=r||0!==l?l:0,s&&f==f){for(var d=c;d--;)if(t[d]===f)continue e;a.push(l)}else o(t,f,r)||a.push(l)}return a}jn.templateSettings={escape:K,evaluate:Y,interpolate:J,variable:"",imports:{_:jn}},jn.prototype=Fn.prototype,jn.prototype.constructor=jn,Un.prototype=$n(Fn.prototype),Un.prototype.constructor=Un,Vn.prototype=$n(Fn.prototype),Vn.prototype.constructor=Vn,Hn.prototype.clear=function(){this.__data__=Tn?Tn(null):{},this.size=0},Hn.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Hn.prototype.get=function(e){var t=this.__data__;if(Tn){var n=t[e];return n===s?i:n}return Ne.call(t,e)?t[e]:i},Hn.prototype.has=function(e){var t=this.__data__;return Tn?t[e]!==i:Ne.call(t,e)},Hn.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Tn&&t===i?s:t,this},qn.prototype.clear=function(){this.__data__=[],this.size=0},qn.prototype.delete=function(e){var t=this.__data__,n=tr(t,e);return!(n<0||(n==t.length-1?t.pop():rt.call(t,n,1),--this.size,0))},qn.prototype.get=function(e){var t=this.__data__,n=tr(t,e);return n<0?i:t[n][1]},qn.prototype.has=function(e){return tr(this.__data__,e)>-1},qn.prototype.set=function(e,t){var n=this.__data__,r=tr(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Gn.prototype.clear=function(){this.size=0,this.__data__={hash:new Hn,map:new(Cn||qn),string:new Hn}},Gn.prototype.delete=function(e){var t=uo(this,e).delete(e);return this.size-=t?1:0,t},Gn.prototype.get=function(e){return uo(this,e).get(e)},Gn.prototype.has=function(e){return uo(this,e).has(e)},Gn.prototype.set=function(e,t){var n=uo(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},zn.prototype.add=zn.prototype.push=function(e){return this.__data__.set(e,s),this},zn.prototype.has=function(e){return this.__data__.has(e)},Qn.prototype.clear=function(){this.__data__=new qn,this.size=0},Qn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Qn.prototype.get=function(e){return this.__data__.get(e)},Qn.prototype.has=function(e){return this.__data__.has(e)},Qn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof qn){var r=n.__data__;if(!Cn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Gn(r)}return n.set(e,t),this.size=n.size,this};var fr=ki(br),dr=ki(_r,!0);function pr(e,t){var n=!0;return fr(e,(function(e,r,i){return n=!!t(e,r,i)})),n}function hr(e,t,n){for(var r=-1,o=e.length;++r<o;){var s=e[r],u=t(s);if(null!=u&&(a===i?u==u&&!cu(u):n(u,a)))var a=u,c=s}return c}function gr(e,t){var n=[];return fr(e,(function(e,r,i){t(e,r,i)&&n.push(e)})),n}function mr(e,t,n,r,i){var o=-1,s=e.length;for(n||(n=mo),i||(i=[]);++o<s;){var u=e[o];t>0&&n(u)?t>1?mr(u,t-1,n,r,i):It(i,u):r||(i[i.length]=u)}return i}var yr=Di(),vr=Di(!0);function br(e,t){return e&&yr(e,t,Du)}function _r(e,t){return e&&vr(e,t,Du)}function Sr(e,t){return wt(t,(function(t){return Zs(e[t])}))}function wr(e,t){for(var n=0,r=(t=yi(t,e)).length;null!=e&&n<r;)e=e[Wo(t[n++])];return n&&n==r?e:i}function Er(e,t,n){var r=t(e);return qs(e)?r:It(r,n(e))}function Cr(e){return null==e?e===i?"[object Undefined]":"[object Null]":ut&&ut in Ce(e)?function(e){var t=Ne.call(e,ut),n=e[ut];try{e[ut]=i;var r=!0}catch(e){}var o=Me.call(e);return r&&(t?e[ut]=n:delete e[ut]),o}(e):function(e){return Me.call(e)}(e)}function Ar(e,t){return e>t}function Ir(e,t){return null!=e&&Ne.call(e,t)}function Lr(e,t){return null!=e&&t in Ce(e)}function Tr(e,t,n){for(var o=n?Ct:Et,s=e[0].length,u=e.length,a=u,c=r(u),l=1/0,f=[];a--;){var d=e[a];a&&t&&(d=At(d,Vt(t))),l=vn(d.length,l),c[a]=!n&&(t||s>=120&&d.length>=120)?new zn(a&&d):i}d=e[0];var p=-1,h=c[0];e:for(;++p<s&&f.length<l;){var g=d[p],m=t?t(g):g;if(g=n||0!==g?g:0,!(h?qt(h,m):o(f,m,n))){for(a=u;--a;){var y=c[a];if(!(y?qt(y,m):o(e[a],m,n)))continue e}h&&h.push(m),f.push(g)}}return f}function Rr(e,t,n){var r=null==(e=Io(e,t=yi(t,e)))?e:e[Wo(Jo(t))];return null==r?i:yt(r,e,n)}function Or(e){return nu(e)&&Cr(e)==g}function kr(e,t,n,r,o){return e===t||(null==e||null==t||!nu(e)&&!nu(t)?e!=e&&t!=t:function(e,t,n,r,o,s){var u=qs(e),a=qs(t),c=u?m:po(e),l=a?m:po(t),f=(c=c==g?C:c)==C,d=(l=l==g?C:l)==C,p=c==l;if(p&&Ks(e)){if(!Ks(t))return!1;u=!0,f=!1}if(p&&!f)return s||(s=new Qn),u||lu(e)?Xi(e,t,n,r,o,s):function(e,t,n,r,i,o,s){switch(n){case D:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case k:return!(e.byteLength!=t.byteLength||!o(new Ue(e),new Ue(t)));case y:case v:case E:return Fs(+e,+t);case b:return e.name==t.name&&e.message==t.message;case I:case T:return e==t+"";case w:var u=Xt;case L:var a=1&r;if(u||(u=nn),e.size!=t.size&&!a)return!1;var c=s.get(e);if(c)return c==t;r|=2,s.set(e,t);var l=Xi(u(e),u(t),r,i,o,s);return s.delete(e),l;case R:if(Bn)return Bn.call(e)==Bn.call(t)}return!1}(e,t,c,n,r,o,s);if(!(1&n)){var h=f&&Ne.call(e,"__wrapped__"),_=d&&Ne.call(t,"__wrapped__");if(h||_){var S=h?e.value():e,A=_?t.value():t;return s||(s=new Qn),o(S,A,n,r,s)}}return!!p&&(s||(s=new Qn),function(e,t,n,r,o,s){var u=1&n,a=to(e),c=a.length;if(c!=to(t).length&&!u)return!1;for(var l=c;l--;){var f=a[l];if(!(u?f in t:Ne.call(t,f)))return!1}var d=s.get(e),p=s.get(t);if(d&&p)return d==t&&p==e;var h=!0;s.set(e,t),s.set(t,e);for(var g=u;++l<c;){var m=e[f=a[l]],y=t[f];if(r)var v=u?r(y,m,f,t,e,s):r(m,y,f,e,t,s);if(!(v===i?m===y||o(m,y,n,r,s):v)){h=!1;break}g||(g="constructor"==f)}if(h&&!g){var b=e.constructor,_=t.constructor;b==_||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof _&&_ instanceof _||(h=!1)}return s.delete(e),s.delete(t),h}(e,t,n,r,o,s))}(e,t,n,r,kr,o))}function Dr(e,t,n,r){var o=n.length,s=o,u=!r;if(null==e)return!s;for(e=Ce(e);o--;){var a=n[o];if(u&&a[2]?a[1]!==e[a[0]]:!(a[0]in e))return!1}for(;++o<s;){var c=(a=n[o])[0],l=e[c],f=a[1];if(u&&a[2]){if(l===i&&!(c in e))return!1}else{var d=new Qn;if(r)var p=r(l,f,c,e,t,d);if(!(p===i?kr(f,l,3,r,d):p))return!1}}return!0}function Nr(e){return!(!tu(e)||(t=e,Pe&&Pe in t))&&(Zs(e)?je:ge).test(jo(e));var t}function xr(e){return"function"==typeof e?e:null==e?ia:"object"==typeof e?qs(e)?jr(e[0],e[1]):Wr(e):pa(e)}function Pr(e){if(!wo(e))return mn(e);var t=[];for(var n in Ce(e))Ne.call(e,n)&&"constructor"!=n&&t.push(n);return t}function Mr(e,t){return e<t}function Br(e,t){var n=-1,i=zs(e)?r(e.length):[];return fr(e,(function(e,r,o){i[++n]=t(e,r,o)})),i}function Wr(e){var t=ao(e);return 1==t.length&&t[0][2]?Co(t[0][0],t[0][1]):function(n){return n===e||Dr(n,e,t)}}function jr(e,t){return bo(e)&&Eo(t)?Co(Wo(e),t):function(n){var r=Lu(n,e);return r===i&&r===t?Tu(n,e):kr(t,r,3)}}function $r(e,t,n,r,o){e!==t&&yr(t,(function(s,u){if(o||(o=new Qn),tu(s))!function(e,t,n,r,o,s,u){var a=To(e,n),c=To(t,n),l=u.get(c);if(l)Xn(e,n,l);else{var f=s?s(a,c,n+"",e,t,u):i,d=f===i;if(d){var p=qs(c),h=!p&&Ks(c),g=!p&&!h&&lu(c);f=c,p||h||g?qs(a)?f=a:Qs(a)?f=Li(a):h?(d=!1,f=Si(c,!0)):g?(d=!1,f=Ei(c,!0)):f=[]:ou(c)||Hs(c)?(f=a,Hs(a)?f=vu(a):tu(a)&&!Zs(a)||(f=go(c))):d=!1}d&&(u.set(c,f),o(f,c,r,s,u),u.delete(c)),Xn(e,n,f)}}(e,t,u,n,$r,r,o);else{var a=r?r(To(e,u),s,u+"",e,t,o):i;a===i&&(a=s),Xn(e,u,a)}}),Nu)}function Fr(e,t){var n=e.length;if(n)return yo(t+=t<0?n:0,n)?e[t]:i}function Ur(e,t,n){t=t.length?At(t,(function(e){return qs(e)?function(t){return wr(t,1===e.length?e[0]:e)}:e})):[ia];var r=-1;return t=At(t,Vt(so())),function(e,t){var r=e.length;for(e.sort((function(e,t){return function(e,t,n){for(var r=-1,i=e.criteria,o=t.criteria,s=i.length,u=n.length;++r<s;){var a=Ci(i[r],o[r]);if(a)return r>=u?a:a*("desc"==n[r]?-1:1)}return e.index-t.index}(e,t,n)}));r--;)e[r]=e[r].value;return e}(Br(e,(function(e,n,i){return{criteria:At(t,(function(t){return t(e)})),index:++r,value:e}})))}function Vr(e,t,n){for(var r=-1,i=t.length,o={};++r<i;){var s=t[r],u=wr(e,s);n(u,s)&&Jr(o,yi(s,e),u)}return o}function Hr(e,t,n,r){var i=r?xt:Nt,o=-1,s=t.length,u=e;for(e===t&&(t=Li(t)),n&&(u=At(e,Vt(n)));++o<s;)for(var a=0,c=t[o],l=n?n(c):c;(a=i(u,l,a,r))>-1;)u!==e&&rt.call(u,a,1),rt.call(e,a,1);return e}function qr(e,t){for(var n=e?t.length:0,r=n-1;n--;){var i=t[n];if(n==r||i!==o){var o=i;yo(i)?rt.call(e,i,1):ci(e,i)}}return e}function Gr(e,t){return e+fn(Sn()*(t-e+1))}function zr(e,t){var n="";if(!e||t<1||t>f)return n;do{t%2&&(n+=e),(t=fn(t/2))&&(e+=e)}while(t);return n}function Qr(e,t){return ko(Ao(e,t,ia),e+"")}function Kr(e){return Yn(Fu(e))}function Yr(e,t){var n=Fu(e);return xo(n,sr(t,0,n.length))}function Jr(e,t,n,r){if(!tu(e))return e;for(var o=-1,s=(t=yi(t,e)).length,u=s-1,a=e;null!=a&&++o<s;){var c=Wo(t[o]),l=n;if("__proto__"===c||"constructor"===c||"prototype"===c)return e;if(o!=u){var f=a[c];(l=r?r(f,c,a):i)===i&&(l=tu(f)?f:yo(t[o+1])?[]:{})}er(a,c,l),a=a[c]}return e}var Zr=Rn?function(e,t){return Rn.set(e,t),e}:ia,Xr=ct?function(e,t){return ct(e,"toString",{configurable:!0,enumerable:!1,value:ta(t),writable:!0})}:ia;function ei(e){return xo(Fu(e))}function ti(e,t,n){var i=-1,o=e.length;t<0&&(t=-t>o?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var s=r(o);++i<o;)s[i]=e[i+t];return s}function ni(e,t){var n;return fr(e,(function(e,r,i){return!(n=t(e,r,i))})),!!n}function ri(e,t,n){var r=0,i=null==e?r:e.length;if("number"==typeof t&&t==t&&i<=2147483647){for(;r<i;){var o=r+i>>>1,s=e[o];null!==s&&!cu(s)&&(n?s<=t:s<t)?r=o+1:i=o}return i}return ii(e,t,ia,n)}function ii(e,t,n,r){var o=0,s=null==e?0:e.length;if(0===s)return 0;for(var u=(t=n(t))!=t,a=null===t,c=cu(t),l=t===i;o<s;){var f=fn((o+s)/2),d=n(e[f]),p=d!==i,h=null===d,g=d==d,m=cu(d);if(u)var y=r||g;else y=l?g&&(r||p):a?g&&p&&(r||!h):c?g&&p&&!h&&(r||!m):!h&&!m&&(r?d<=t:d<t);y?o=f+1:s=f}return vn(s,4294967294)}function oi(e,t){for(var n=-1,r=e.length,i=0,o=[];++n<r;){var s=e[n],u=t?t(s):s;if(!n||!Fs(u,a)){var a=u;o[i++]=0===s?0:s}}return o}function si(e){return"number"==typeof e?e:cu(e)?d:+e}function ui(e){if("string"==typeof e)return e;if(qs(e))return At(e,ui)+"";if(cu(e))return Wn?Wn.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ai(e,t,n){var r=-1,i=Et,o=e.length,s=!0,u=[],a=u;if(n)s=!1,i=Ct;else if(o>=200){var c=t?null:zi(e);if(c)return nn(c);s=!1,i=qt,a=new zn}else a=t?[]:u;e:for(;++r<o;){var l=e[r],f=t?t(l):l;if(l=n||0!==l?l:0,s&&f==f){for(var d=a.length;d--;)if(a[d]===f)continue e;t&&a.push(f),u.push(l)}else i(a,f,n)||(a!==u&&a.push(f),u.push(l))}return u}function ci(e,t){return null==(e=Io(e,t=yi(t,e)))||delete e[Wo(Jo(t))]}function li(e,t,n,r){return Jr(e,t,n(wr(e,t)),r)}function fi(e,t,n,r){for(var i=e.length,o=r?i:-1;(r?o--:++o<i)&&t(e[o],o,e););return n?ti(e,r?0:o,r?o+1:i):ti(e,r?o+1:0,r?i:o)}function di(e,t){var n=e;return n instanceof Vn&&(n=n.value()),Lt(t,(function(e,t){return t.func.apply(t.thisArg,It([e],t.args))}),n)}function pi(e,t,n){var i=e.length;if(i<2)return i?ai(e[0]):[];for(var o=-1,s=r(i);++o<i;)for(var u=e[o],a=-1;++a<i;)a!=o&&(s[o]=lr(s[o]||u,e[a],t,n));return ai(mr(s,1),t,n)}function hi(e,t,n){for(var r=-1,o=e.length,s=t.length,u={};++r<o;){var a=r<s?t[r]:i;n(u,e[r],a)}return u}function gi(e){return Qs(e)?e:[]}function mi(e){return"function"==typeof e?e:ia}function yi(e,t){return qs(e)?e:bo(e,t)?[e]:Bo(bu(e))}var vi=Qr;function bi(e,t,n){var r=e.length;return n=n===i?r:n,!t&&n>=r?e:ti(e,t,n)}var _i=lt||function(e){return ot.clearTimeout(e)};function Si(e,t){if(t)return e.slice();var n=e.length,r=Ve?Ve(n):new e.constructor(n);return e.copy(r),r}function wi(e){var t=new e.constructor(e.byteLength);return new Ue(t).set(new Ue(e)),t}function Ei(e,t){var n=t?wi(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function Ci(e,t){if(e!==t){var n=e!==i,r=null===e,o=e==e,s=cu(e),u=t!==i,a=null===t,c=t==t,l=cu(t);if(!a&&!l&&!s&&e>t||s&&u&&c&&!a&&!l||r&&u&&c||!n&&c||!o)return 1;if(!r&&!s&&!l&&e<t||l&&n&&o&&!r&&!s||a&&n&&o||!u&&o||!c)return-1}return 0}function Ai(e,t,n,i){for(var o=-1,s=e.length,u=n.length,a=-1,c=t.length,l=yn(s-u,0),f=r(c+l),d=!i;++a<c;)f[a]=t[a];for(;++o<u;)(d||o<s)&&(f[n[o]]=e[o]);for(;l--;)f[a++]=e[o++];return f}function Ii(e,t,n,i){for(var o=-1,s=e.length,u=-1,a=n.length,c=-1,l=t.length,f=yn(s-a,0),d=r(f+l),p=!i;++o<f;)d[o]=e[o];for(var h=o;++c<l;)d[h+c]=t[c];for(;++u<a;)(p||o<s)&&(d[h+n[u]]=e[o++]);return d}function Li(e,t){var n=-1,i=e.length;for(t||(t=r(i));++n<i;)t[n]=e[n];return t}function Ti(e,t,n,r){var o=!n;n||(n={});for(var s=-1,u=t.length;++s<u;){var a=t[s],c=r?r(n[a],e[a],a,n,e):i;c===i&&(c=e[a]),o?ir(n,a,c):er(n,a,c)}return n}function Ri(e,t){return function(n,r){var i=qs(n)?vt:nr,o=t?t():{};return i(n,e,so(r,2),o)}}function Oi(e){return Qr((function(t,n){var r=-1,o=n.length,s=o>1?n[o-1]:i,u=o>2?n[2]:i;for(s=e.length>3&&"function"==typeof s?(o--,s):i,u&&vo(n[0],n[1],u)&&(s=o<3?i:s,o=1),t=Ce(t);++r<o;){var a=n[r];a&&e(t,a,r,s)}return t}))}function ki(e,t){return function(n,r){if(null==n)return n;if(!zs(n))return e(n,r);for(var i=n.length,o=t?i:-1,s=Ce(n);(t?o--:++o<i)&&!1!==r(s[o],o,s););return n}}function Di(e){return function(t,n,r){for(var i=-1,o=Ce(t),s=r(t),u=s.length;u--;){var a=s[e?u:++i];if(!1===n(o[a],a,o))break}return t}}function Ni(e){return function(t){var n=Zt(t=bu(t))?sn(t):i,r=n?n[0]:t.charAt(0),o=n?bi(n,1).join(""):t.slice(1);return r[e]()+o}}function xi(e){return function(t){return Lt(Zu(Hu(t).replace(He,"")),e,"")}}function Pi(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=$n(e.prototype),r=e.apply(n,t);return tu(r)?r:n}}function Mi(e){return function(t,n,r){var o=Ce(t);if(!zs(t)){var s=so(n,3);t=Du(t),n=function(e){return s(o[e],e,o)}}var u=e(t,n,r);return u>-1?o[s?t[u]:u]:i}}function Bi(e){return eo((function(t){var n=t.length,r=n,s=Un.prototype.thru;for(e&&t.reverse();r--;){var u=t[r];if("function"!=typeof u)throw new Le(o);if(s&&!a&&"wrapper"==io(u))var a=new Un([],!0)}for(r=a?r:n;++r<n;){var c=io(u=t[r]),l="wrapper"==c?ro(u):i;a=l&&_o(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?a[io(l[0])].apply(a,l[3]):1==u.length&&_o(u)?a[c]():a.thru(u)}return function(){var e=arguments,r=e[0];if(a&&1==e.length&&qs(r))return a.plant(r).value();for(var i=0,o=n?t[i].apply(this,e):r;++i<n;)o=t[i].call(this,o);return o}}))}function Wi(e,t,n,o,s,u,a,l,f,d){var p=t&c,h=1&t,g=2&t,m=24&t,y=512&t,v=g?i:Pi(e);return function i(){for(var c=arguments.length,b=r(c),_=c;_--;)b[_]=arguments[_];if(m)var S=oo(i),w=Qt(b,S);if(o&&(b=Ai(b,o,s,m)),u&&(b=Ii(b,u,a,m)),c-=w,m&&c<d){var E=tn(b,S);return qi(e,t,Wi,i.placeholder,n,b,E,l,f,d-c)}var C=h?n:this,A=g?C[e]:e;return c=b.length,l?b=Lo(b,l):y&&c>1&&b.reverse(),p&&f<c&&(b.length=f),this&&this!==ot&&this instanceof i&&(A=v||Pi(A)),A.apply(C,b)}}function ji(e,t){return function(n,r){return function(e,t,n,r){return br(e,(function(e,i,o){t(r,n(e),i,o)})),r}(n,e,t(r),{})}}function $i(e,t){return function(n,r){var o;if(n===i&&r===i)return t;if(n!==i&&(o=n),r!==i){if(o===i)return r;"string"==typeof n||"string"==typeof r?(n=ui(n),r=ui(r)):(n=si(n),r=si(r)),o=e(n,r)}return o}}function Fi(e){return eo((function(t){return t=At(t,Vt(so())),Qr((function(n){var r=this;return e(t,(function(e){return yt(e,r,n)}))}))}))}function Ui(e,t){var n=(t=t===i?" ":ui(t)).length;if(n<2)return n?zr(t,e):t;var r=zr(t,ln(e/on(t)));return Zt(t)?bi(sn(r),0,e).join(""):r.slice(0,e)}function Vi(e){return function(t,n,o){return o&&"number"!=typeof o&&vo(t,n,o)&&(n=o=i),t=hu(t),n===i?(n=t,t=0):n=hu(n),function(e,t,n,i){for(var o=-1,s=yn(ln((t-e)/(n||1)),0),u=r(s);s--;)u[i?s:++o]=e,e+=n;return u}(t,n,o=o===i?t<n?1:-1:hu(o),e)}}function Hi(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=yu(t),n=yu(n)),e(t,n)}}function qi(e,t,n,r,o,s,u,c,l,f){var d=8&t;t|=d?a:64,4&(t&=~(d?64:a))||(t&=-4);var p=[e,t,o,d?s:i,d?u:i,d?i:s,d?i:u,c,l,f],h=n.apply(i,p);return _o(e)&&Ro(h,p),h.placeholder=r,Do(h,e,t)}function Gi(e){var t=Ee[e];return function(e,n){if(e=yu(e),(n=null==n?0:vn(gu(n),292))&&hn(e)){var r=(bu(e)+"e").split("e");return+((r=(bu(t(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}var zi=In&&1/nn(new In([,-0]))[1]==l?function(e){return new In(e)}:ca;function Qi(e){return function(t){var n=po(t);return n==w?Xt(t):n==L?rn(t):function(e,t){return At(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Ki(e,t,n,s,l,f,d,p){var h=2&t;if(!h&&"function"!=typeof e)throw new Le(o);var g=s?s.length:0;if(g||(t&=-97,s=l=i),d=d===i?d:yn(gu(d),0),p=p===i?p:gu(p),g-=l?l.length:0,64&t){var m=s,y=l;s=l=i}var v=h?i:ro(e),b=[e,t,n,s,l,m,y,f,d,p];if(v&&function(e,t){var n=e[1],r=t[1],i=n|r,o=i<131,s=r==c&&8==n||r==c&&256==n&&e[7].length<=t[8]||384==r&&t[7].length<=t[8]&&8==n;if(!o&&!s)return e;1&r&&(e[2]=t[2],i|=1&n?0:4);var a=t[3];if(a){var l=e[3];e[3]=l?Ai(l,a,t[4]):a,e[4]=l?tn(e[3],u):t[4]}(a=t[5])&&(l=e[5],e[5]=l?Ii(l,a,t[6]):a,e[6]=l?tn(e[5],u):t[6]),(a=t[7])&&(e[7]=a),r&c&&(e[8]=null==e[8]?t[8]:vn(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=i}(b,v),e=b[0],t=b[1],n=b[2],s=b[3],l=b[4],!(p=b[9]=b[9]===i?h?0:e.length:yn(b[9]-g,0))&&24&t&&(t&=-25),t&&1!=t)_=8==t||16==t?function(e,t,n){var o=Pi(e);return function s(){for(var u=arguments.length,a=r(u),c=u,l=oo(s);c--;)a[c]=arguments[c];var f=u<3&&a[0]!==l&&a[u-1]!==l?[]:tn(a,l);return(u-=f.length)<n?qi(e,t,Wi,s.placeholder,i,a,f,i,i,n-u):yt(this&&this!==ot&&this instanceof s?o:e,this,a)}}(e,t,p):t!=a&&33!=t||l.length?Wi.apply(i,b):function(e,t,n,i){var o=1&t,s=Pi(e);return function t(){for(var u=-1,a=arguments.length,c=-1,l=i.length,f=r(l+a),d=this&&this!==ot&&this instanceof t?s:e;++c<l;)f[c]=i[c];for(;a--;)f[c++]=arguments[++u];return yt(d,o?n:this,f)}}(e,t,n,s);else var _=function(e,t,n){var r=1&t,i=Pi(e);return function t(){return(this&&this!==ot&&this instanceof t?i:e).apply(r?n:this,arguments)}}(e,t,n);return Do((v?Zr:Ro)(_,b),e,t)}function Yi(e,t,n,r){return e===i||Fs(e,Oe[n])&&!Ne.call(r,n)?t:e}function Ji(e,t,n,r,o,s){return tu(e)&&tu(t)&&(s.set(t,e),$r(e,t,i,Ji,s),s.delete(t)),e}function Zi(e){return ou(e)?i:e}function Xi(e,t,n,r,o,s){var u=1&n,a=e.length,c=t.length;if(a!=c&&!(u&&c>a))return!1;var l=s.get(e),f=s.get(t);if(l&&f)return l==t&&f==e;var d=-1,p=!0,h=2&n?new zn:i;for(s.set(e,t),s.set(t,e);++d<a;){var g=e[d],m=t[d];if(r)var y=u?r(m,g,d,t,e,s):r(g,m,d,e,t,s);if(y!==i){if(y)continue;p=!1;break}if(h){if(!Rt(t,(function(e,t){if(!qt(h,t)&&(g===e||o(g,e,n,r,s)))return h.push(t)}))){p=!1;break}}else if(g!==m&&!o(g,m,n,r,s)){p=!1;break}}return s.delete(e),s.delete(t),p}function eo(e){return ko(Ao(e,i,Go),e+"")}function to(e){return Er(e,Du,lo)}function no(e){return Er(e,Nu,fo)}var ro=Rn?function(e){return Rn.get(e)}:ca;function io(e){for(var t=e.name+"",n=On[t],r=Ne.call(On,t)?n.length:0;r--;){var i=n[r],o=i.func;if(null==o||o==e)return i.name}return t}function oo(e){return(Ne.call(jn,"placeholder")?jn:e).placeholder}function so(){var e=jn.iteratee||oa;return e=e===oa?xr:e,arguments.length?e(arguments[0],arguments[1]):e}function uo(e,t){var n,r,i=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?i["string"==typeof t?"string":"hash"]:i.map}function ao(e){for(var t=Du(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,Eo(i)]}return t}function co(e,t){var n=function(e,t){return null==e?i:e[t]}(e,t);return Nr(n)?n:i}var lo=dn?function(e){return null==e?[]:(e=Ce(e),wt(dn(e),(function(t){return et.call(e,t)})))}:ma,fo=dn?function(e){for(var t=[];e;)It(t,lo(e)),e=Ge(e);return t}:ma,po=Cr;function ho(e,t,n){for(var r=-1,i=(t=yi(t,e)).length,o=!1;++r<i;){var s=Wo(t[r]);if(!(o=null!=e&&n(e,s)))break;e=e[s]}return o||++r!=i?o:!!(i=null==e?0:e.length)&&eu(i)&&yo(s,i)&&(qs(e)||Hs(e))}function go(e){return"function"!=typeof e.constructor||wo(e)?{}:$n(Ge(e))}function mo(e){return qs(e)||Hs(e)||!!(it&&e&&e[it])}function yo(e,t){var n=typeof e;return!!(t=null==t?f:t)&&("number"==n||"symbol"!=n&&ye.test(e))&&e>-1&&e%1==0&&e<t}function vo(e,t,n){if(!tu(n))return!1;var r=typeof t;return!!("number"==r?zs(n)&&yo(t,n.length):"string"==r&&t in n)&&Fs(n[t],e)}function bo(e,t){if(qs(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!cu(e))||X.test(e)||!Z.test(e)||null!=t&&e in Ce(t)}function _o(e){var t=io(e),n=jn[t];if("function"!=typeof n||!(t in Vn.prototype))return!1;if(e===n)return!0;var r=ro(n);return!!r&&e===r[0]}(En&&po(new En(new ArrayBuffer(1)))!=D||Cn&&po(new Cn)!=w||An&&po(An.resolve())!=A||In&&po(new In)!=L||Ln&&po(new Ln)!=O)&&(po=function(e){var t=Cr(e),n=t==C?e.constructor:i,r=n?jo(n):"";if(r)switch(r){case kn:return D;case Dn:return w;case Nn:return A;case xn:return L;case Pn:return O}return t});var So=ke?Zs:ya;function wo(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Oe)}function Eo(e){return e==e&&!tu(e)}function Co(e,t){return function(n){return null!=n&&n[e]===t&&(t!==i||e in Ce(n))}}function Ao(e,t,n){return t=yn(t===i?e.length-1:t,0),function(){for(var i=arguments,o=-1,s=yn(i.length-t,0),u=r(s);++o<s;)u[o]=i[t+o];o=-1;for(var a=r(t+1);++o<t;)a[o]=i[o];return a[t]=n(u),yt(e,this,a)}}function Io(e,t){return t.length<2?e:wr(e,ti(t,0,-1))}function Lo(e,t){for(var n=e.length,r=vn(t.length,n),o=Li(e);r--;){var s=t[r];e[r]=yo(s,n)?o[s]:i}return e}function To(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Ro=No(Zr),Oo=Wt||function(e,t){return ot.setTimeout(e,t)},ko=No(Xr);function Do(e,t,n){var r=t+"";return ko(e,function(e,t){var n=t.length;if(!n)return e;var r=n-1;return t[r]=(n>1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(oe,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return bt(h,(function(n){var r="_."+n[0];t&n[1]&&!Et(e,r)&&e.push(r)})),e.sort()}(function(e){var t=e.match(se);return t?t[1].split(ue):[]}(r),n)))}function No(e){var t=0,n=0;return function(){var r=bn(),o=16-(r-n);if(n=r,o>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(i,arguments)}}function xo(e,t){var n=-1,r=e.length,o=r-1;for(t=t===i?r:t;++n<t;){var s=Gr(n,o),u=e[s];e[s]=e[n],e[n]=u}return e.length=t,e}var Po,Mo,Bo=(Po=Ps((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ee,(function(e,n,r,i){t.push(r?i.replace(le,"$1"):n||e)})),t}),(function(e){return 500===Mo.size&&Mo.clear(),e})),Mo=Po.cache,Po);function Wo(e){if("string"==typeof e||cu(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function jo(e){if(null!=e){try{return De.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function $o(e){if(e instanceof Vn)return e.clone();var t=new Un(e.__wrapped__,e.__chain__);return t.__actions__=Li(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Fo=Qr((function(e,t){return Qs(e)?lr(e,mr(t,1,Qs,!0)):[]})),Uo=Qr((function(e,t){var n=Jo(t);return Qs(n)&&(n=i),Qs(e)?lr(e,mr(t,1,Qs,!0),so(n,2)):[]})),Vo=Qr((function(e,t){var n=Jo(t);return Qs(n)&&(n=i),Qs(e)?lr(e,mr(t,1,Qs,!0),i,n):[]}));function Ho(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:gu(n);return i<0&&(i=yn(r+i,0)),Dt(e,so(t,3),i)}function qo(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var o=r-1;return n!==i&&(o=gu(n),o=n<0?yn(r+o,0):vn(o,r-1)),Dt(e,so(t,3),o,!0)}function Go(e){return null!=e&&e.length?mr(e,1):[]}function zo(e){return e&&e.length?e[0]:i}var Qo=Qr((function(e){var t=At(e,gi);return t.length&&t[0]===e[0]?Tr(t):[]})),Ko=Qr((function(e){var t=Jo(e),n=At(e,gi);return t===Jo(n)?t=i:n.pop(),n.length&&n[0]===e[0]?Tr(n,so(t,2)):[]})),Yo=Qr((function(e){var t=Jo(e),n=At(e,gi);return(t="function"==typeof t?t:i)&&n.pop(),n.length&&n[0]===e[0]?Tr(n,i,t):[]}));function Jo(e){var t=null==e?0:e.length;return t?e[t-1]:i}var Zo=Qr(Xo);function Xo(e,t){return e&&e.length&&t&&t.length?Hr(e,t):e}var es=eo((function(e,t){var n=null==e?0:e.length,r=or(e,t);return qr(e,At(t,(function(e){return yo(e,n)?+e:e})).sort(Ci)),r}));function ts(e){return null==e?e:wn.call(e)}var ns=Qr((function(e){return ai(mr(e,1,Qs,!0))})),rs=Qr((function(e){var t=Jo(e);return Qs(t)&&(t=i),ai(mr(e,1,Qs,!0),so(t,2))})),is=Qr((function(e){var t=Jo(e);return t="function"==typeof t?t:i,ai(mr(e,1,Qs,!0),i,t)}));function os(e){if(!e||!e.length)return[];var t=0;return e=wt(e,(function(e){if(Qs(e))return t=yn(e.length,t),!0})),Ft(t,(function(t){return At(e,Bt(t))}))}function ss(e,t){if(!e||!e.length)return[];var n=os(e);return null==t?n:At(n,(function(e){return yt(t,i,e)}))}var us=Qr((function(e,t){return Qs(e)?lr(e,t):[]})),as=Qr((function(e){return pi(wt(e,Qs))})),cs=Qr((function(e){var t=Jo(e);return Qs(t)&&(t=i),pi(wt(e,Qs),so(t,2))})),ls=Qr((function(e){var t=Jo(e);return t="function"==typeof t?t:i,pi(wt(e,Qs),i,t)})),fs=Qr(os),ds=Qr((function(e){var t=e.length,n=t>1?e[t-1]:i;return n="function"==typeof n?(e.pop(),n):i,ss(e,n)}));function ps(e){var t=jn(e);return t.__chain__=!0,t}function hs(e,t){return t(e)}var gs=eo((function(e){var t=e.length,n=t?e[0]:0,r=this.__wrapped__,o=function(t){return or(t,e)};return!(t>1||this.__actions__.length)&&r instanceof Vn&&yo(n)?((r=r.slice(n,+n+(t?1:0))).__actions__.push({func:hs,args:[o],thisArg:i}),new Un(r,this.__chain__).thru((function(e){return t&&!e.length&&e.push(i),e}))):this.thru(o)})),ms=Ri((function(e,t,n){Ne.call(e,n)?++e[n]:ir(e,n,1)})),ys=Mi(Ho),vs=Mi(qo);function bs(e,t){return(qs(e)?bt:fr)(e,so(t,3))}function _s(e,t){return(qs(e)?_t:dr)(e,so(t,3))}var Ss=Ri((function(e,t,n){Ne.call(e,n)?e[n].push(t):ir(e,n,[t])})),ws=Qr((function(e,t,n){var i=-1,o="function"==typeof t,s=zs(e)?r(e.length):[];return fr(e,(function(e){s[++i]=o?yt(t,e,n):Rr(e,t,n)})),s})),Es=Ri((function(e,t,n){ir(e,n,t)}));function Cs(e,t){return(qs(e)?At:Br)(e,so(t,3))}var As=Ri((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]})),Is=Qr((function(e,t){if(null==e)return[];var n=t.length;return n>1&&vo(e,t[0],t[1])?t=[]:n>2&&vo(t[0],t[1],t[2])&&(t=[t[0]]),Ur(e,mr(t,1),[])})),Ls=Ot||function(){return ot.Date.now()};function Ts(e,t,n){return t=n?i:t,t=e&&null==t?e.length:t,Ki(e,c,i,i,i,i,t)}function Rs(e,t){var n;if("function"!=typeof t)throw new Le(o);return e=gu(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=i),n}}var Os=Qr((function(e,t,n){var r=1;if(n.length){var i=tn(n,oo(Os));r|=a}return Ki(e,r,t,n,i)})),ks=Qr((function(e,t,n){var r=3;if(n.length){var i=tn(n,oo(ks));r|=a}return Ki(t,r,e,n,i)}));function Ds(e,t,n){var r,s,u,a,c,l,f=0,d=!1,p=!1,h=!0;if("function"!=typeof e)throw new Le(o);function g(t){var n=r,o=s;return r=s=i,f=t,a=e.apply(o,n)}function m(e){return f=e,c=Oo(v,t),d?g(e):a}function y(e){var n=e-l;return l===i||n>=t||n<0||p&&e-f>=u}function v(){var e=Ls();if(y(e))return b(e);c=Oo(v,function(e){var n=t-(e-l);return p?vn(n,u-(e-f)):n}(e))}function b(e){return c=i,h&&r?g(e):(r=s=i,a)}function _(){var e=Ls(),n=y(e);if(r=arguments,s=this,l=e,n){if(c===i)return m(l);if(p)return _i(c),c=Oo(v,t),g(l)}return c===i&&(c=Oo(v,t)),a}return t=yu(t)||0,tu(n)&&(d=!!n.leading,u=(p="maxWait"in n)?yn(yu(n.maxWait)||0,t):u,h="trailing"in n?!!n.trailing:h),_.cancel=function(){c!==i&&_i(c),f=0,r=l=s=c=i},_.flush=function(){return c===i?a:b(Ls())},_}var Ns=Qr((function(e,t){return cr(e,1,t)})),xs=Qr((function(e,t,n){return cr(e,yu(t)||0,n)}));function Ps(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Le(o);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var s=e.apply(this,r);return n.cache=o.set(i,s)||o,s};return n.cache=new(Ps.Cache||Gn),n}function Ms(e){if("function"!=typeof e)throw new Le(o);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ps.Cache=Gn;var Bs=vi((function(e,t){var n=(t=1==t.length&&qs(t[0])?At(t[0],Vt(so())):At(mr(t,1),Vt(so()))).length;return Qr((function(r){for(var i=-1,o=vn(r.length,n);++i<o;)r[i]=t[i].call(this,r[i]);return yt(e,this,r)}))})),Ws=Qr((function(e,t){var n=tn(t,oo(Ws));return Ki(e,a,i,t,n)})),js=Qr((function(e,t){var n=tn(t,oo(js));return Ki(e,64,i,t,n)})),$s=eo((function(e,t){return Ki(e,256,i,i,i,t)}));function Fs(e,t){return e===t||e!=e&&t!=t}var Us=Hi(Ar),Vs=Hi((function(e,t){return e>=t})),Hs=Or(function(){return arguments}())?Or:function(e){return nu(e)&&Ne.call(e,"callee")&&!et.call(e,"callee")},qs=r.isArray,Gs=ft?Vt(ft):function(e){return nu(e)&&Cr(e)==k};function zs(e){return null!=e&&eu(e.length)&&!Zs(e)}function Qs(e){return nu(e)&&zs(e)}var Ks=pn||ya,Ys=dt?Vt(dt):function(e){return nu(e)&&Cr(e)==v};function Js(e){if(!nu(e))return!1;var t=Cr(e);return t==b||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!ou(e)}function Zs(e){if(!tu(e))return!1;var t=Cr(e);return t==_||t==S||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Xs(e){return"number"==typeof e&&e==gu(e)}function eu(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=f}function tu(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function nu(e){return null!=e&&"object"==typeof e}var ru=pt?Vt(pt):function(e){return nu(e)&&po(e)==w};function iu(e){return"number"==typeof e||nu(e)&&Cr(e)==E}function ou(e){if(!nu(e)||Cr(e)!=C)return!1;var t=Ge(e);if(null===t)return!0;var n=Ne.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&De.call(n)==Be}var su=ht?Vt(ht):function(e){return nu(e)&&Cr(e)==I},uu=gt?Vt(gt):function(e){return nu(e)&&po(e)==L};function au(e){return"string"==typeof e||!qs(e)&&nu(e)&&Cr(e)==T}function cu(e){return"symbol"==typeof e||nu(e)&&Cr(e)==R}var lu=mt?Vt(mt):function(e){return nu(e)&&eu(e.length)&&!!Ze[Cr(e)]},fu=Hi(Mr),du=Hi((function(e,t){return e<=t}));function pu(e){if(!e)return[];if(zs(e))return au(e)?sn(e):Li(e);if(st&&e[st])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[st]());var t=po(e);return(t==w?Xt:t==L?nn:Fu)(e)}function hu(e){return e?(e=yu(e))===l||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function gu(e){var t=hu(e),n=t%1;return t==t?n?t-n:t:0}function mu(e){return e?sr(gu(e),0,p):0}function yu(e){if("number"==typeof e)return e;if(cu(e))return d;if(tu(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=tu(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Ut(e);var n=he.test(e);return n||me.test(e)?nt(e.slice(2),n?2:8):pe.test(e)?d:+e}function vu(e){return Ti(e,Nu(e))}function bu(e){return null==e?"":ui(e)}var _u=Oi((function(e,t){if(wo(t)||zs(t))Ti(t,Du(t),e);else for(var n in t)Ne.call(t,n)&&er(e,n,t[n])})),Su=Oi((function(e,t){Ti(t,Nu(t),e)})),wu=Oi((function(e,t,n,r){Ti(t,Nu(t),e,r)})),Eu=Oi((function(e,t,n,r){Ti(t,Du(t),e,r)})),Cu=eo(or),Au=Qr((function(e,t){e=Ce(e);var n=-1,r=t.length,o=r>2?t[2]:i;for(o&&vo(t[0],t[1],o)&&(r=1);++n<r;)for(var s=t[n],u=Nu(s),a=-1,c=u.length;++a<c;){var l=u[a],f=e[l];(f===i||Fs(f,Oe[l])&&!Ne.call(e,l))&&(e[l]=s[l])}return e})),Iu=Qr((function(e){return e.push(i,Ji),yt(Pu,i,e)}));function Lu(e,t,n){var r=null==e?i:wr(e,t);return r===i?n:r}function Tu(e,t){return null!=e&&ho(e,t,Lr)}var Ru=ji((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Me.call(t)),e[t]=n}),ta(ia)),Ou=ji((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Me.call(t)),Ne.call(e,t)?e[t].push(n):e[t]=[n]}),so),ku=Qr(Rr);function Du(e){return zs(e)?Kn(e):Pr(e)}function Nu(e){return zs(e)?Kn(e,!0):function(e){if(!tu(e))return function(e){var t=[];if(null!=e)for(var n in Ce(e))t.push(n);return t}(e);var t=wo(e),n=[];for(var r in e)("constructor"!=r||!t&&Ne.call(e,r))&&n.push(r);return n}(e)}var xu=Oi((function(e,t,n){$r(e,t,n)})),Pu=Oi((function(e,t,n,r){$r(e,t,n,r)})),Mu=eo((function(e,t){var n={};if(null==e)return n;var r=!1;t=At(t,(function(t){return t=yi(t,e),r||(r=t.length>1),t})),Ti(e,no(e),n),r&&(n=ur(n,7,Zi));for(var i=t.length;i--;)ci(n,t[i]);return n})),Bu=eo((function(e,t){return null==e?{}:function(e,t){return Vr(e,t,(function(t,n){return Tu(e,n)}))}(e,t)}));function Wu(e,t){if(null==e)return{};var n=At(no(e),(function(e){return[e]}));return t=so(t),Vr(e,n,(function(e,n){return t(e,n[0])}))}var ju=Qi(Du),$u=Qi(Nu);function Fu(e){return null==e?[]:Ht(e,Du(e))}var Uu=xi((function(e,t,n){return t=t.toLowerCase(),e+(n?Vu(t):t)}));function Vu(e){return Ju(bu(e).toLowerCase())}function Hu(e){return(e=bu(e))&&e.replace(ve,Kt).replace(qe,"")}var qu=xi((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),Gu=xi((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),zu=Ni("toLowerCase"),Qu=xi((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()})),Ku=xi((function(e,t,n){return e+(n?" ":"")+Ju(t)})),Yu=xi((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),Ju=Ni("toUpperCase");function Zu(e,t,n){return e=bu(e),(t=n?i:t)===i?function(e){return Ke.test(e)}(e)?function(e){return e.match(ze)||[]}(e):function(e){return e.match(ae)||[]}(e):e.match(t)||[]}var Xu=Qr((function(e,t){try{return yt(e,i,t)}catch(e){return Js(e)?e:new Se(e)}})),ea=eo((function(e,t){return bt(t,(function(t){t=Wo(t),ir(e,t,Os(e[t],e))})),e}));function ta(e){return function(){return e}}var na=Bi(),ra=Bi(!0);function ia(e){return e}function oa(e){return xr("function"==typeof e?e:ur(e,1))}var sa=Qr((function(e,t){return function(n){return Rr(n,e,t)}})),ua=Qr((function(e,t){return function(n){return Rr(e,n,t)}}));function aa(e,t,n){var r=Du(t),i=Sr(t,r);null!=n||tu(t)&&(i.length||!r.length)||(n=t,t=e,e=this,i=Sr(t,Du(t)));var o=!(tu(n)&&"chain"in n&&!n.chain),s=Zs(e);return bt(i,(function(n){var r=t[n];e[n]=r,s&&(e.prototype[n]=function(){var t=this.__chain__;if(o||t){var n=e(this.__wrapped__),i=n.__actions__=Li(this.__actions__);return i.push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,It([this.value()],arguments))})})),e}function ca(){}var la=Fi(At),fa=Fi(St),da=Fi(Rt);function pa(e){return bo(e)?Bt(Wo(e)):function(e){return function(t){return wr(t,e)}}(e)}var ha=Vi(),ga=Vi(!0);function ma(){return[]}function ya(){return!1}var va,ba=$i((function(e,t){return e+t}),0),_a=Gi("ceil"),Sa=$i((function(e,t){return e/t}),1),wa=Gi("floor"),Ea=$i((function(e,t){return e*t}),1),Ca=Gi("round"),Aa=$i((function(e,t){return e-t}),0);return jn.after=function(e,t){if("function"!=typeof t)throw new Le(o);return e=gu(e),function(){if(--e<1)return t.apply(this,arguments)}},jn.ary=Ts,jn.assign=_u,jn.assignIn=Su,jn.assignInWith=wu,jn.assignWith=Eu,jn.at=Cu,jn.before=Rs,jn.bind=Os,jn.bindAll=ea,jn.bindKey=ks,jn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return qs(e)?e:[e]},jn.chain=ps,jn.chunk=function(e,t,n){t=(n?vo(e,t,n):t===i)?1:yn(gu(t),0);var o=null==e?0:e.length;if(!o||t<1)return[];for(var s=0,u=0,a=r(ln(o/t));s<o;)a[u++]=ti(e,s,s+=t);return a},jn.compact=function(e){for(var t=-1,n=null==e?0:e.length,r=0,i=[];++t<n;){var o=e[t];o&&(i[r++]=o)}return i},jn.concat=function(){var e=arguments.length;if(!e)return[];for(var t=r(e-1),n=arguments[0],i=e;i--;)t[i-1]=arguments[i];return It(qs(n)?Li(n):[n],mr(t,1))},jn.cond=function(e){var t=null==e?0:e.length,n=so();return e=t?At(e,(function(e){if("function"!=typeof e[1])throw new Le(o);return[n(e[0]),e[1]]})):[],Qr((function(n){for(var r=-1;++r<t;){var i=e[r];if(yt(i[0],this,n))return yt(i[1],this,n)}}))},jn.conforms=function(e){return function(e){var t=Du(e);return function(n){return ar(n,e,t)}}(ur(e,1))},jn.constant=ta,jn.countBy=ms,jn.create=function(e,t){var n=$n(e);return null==t?n:rr(n,t)},jn.curry=function e(t,n,r){var o=Ki(t,8,i,i,i,i,i,n=r?i:n);return o.placeholder=e.placeholder,o},jn.curryRight=function e(t,n,r){var o=Ki(t,16,i,i,i,i,i,n=r?i:n);return o.placeholder=e.placeholder,o},jn.debounce=Ds,jn.defaults=Au,jn.defaultsDeep=Iu,jn.defer=Ns,jn.delay=xs,jn.difference=Fo,jn.differenceBy=Uo,jn.differenceWith=Vo,jn.drop=function(e,t,n){var r=null==e?0:e.length;return r?ti(e,(t=n||t===i?1:gu(t))<0?0:t,r):[]},jn.dropRight=function(e,t,n){var r=null==e?0:e.length;return r?ti(e,0,(t=r-(t=n||t===i?1:gu(t)))<0?0:t):[]},jn.dropRightWhile=function(e,t){return e&&e.length?fi(e,so(t,3),!0,!0):[]},jn.dropWhile=function(e,t){return e&&e.length?fi(e,so(t,3),!0):[]},jn.fill=function(e,t,n,r){var o=null==e?0:e.length;return o?(n&&"number"!=typeof n&&vo(e,t,n)&&(n=0,r=o),function(e,t,n,r){var o=e.length;for((n=gu(n))<0&&(n=-n>o?0:o+n),(r=r===i||r>o?o:gu(r))<0&&(r+=o),r=n>r?0:mu(r);n<r;)e[n++]=t;return e}(e,t,n,r)):[]},jn.filter=function(e,t){return(qs(e)?wt:gr)(e,so(t,3))},jn.flatMap=function(e,t){return mr(Cs(e,t),1)},jn.flatMapDeep=function(e,t){return mr(Cs(e,t),l)},jn.flatMapDepth=function(e,t,n){return n=n===i?1:gu(n),mr(Cs(e,t),n)},jn.flatten=Go,jn.flattenDeep=function(e){return null!=e&&e.length?mr(e,l):[]},jn.flattenDepth=function(e,t){return null!=e&&e.length?mr(e,t=t===i?1:gu(t)):[]},jn.flip=function(e){return Ki(e,512)},jn.flow=na,jn.flowRight=ra,jn.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,r={};++t<n;){var i=e[t];r[i[0]]=i[1]}return r},jn.functions=function(e){return null==e?[]:Sr(e,Du(e))},jn.functionsIn=function(e){return null==e?[]:Sr(e,Nu(e))},jn.groupBy=Ss,jn.initial=function(e){return null!=e&&e.length?ti(e,0,-1):[]},jn.intersection=Qo,jn.intersectionBy=Ko,jn.intersectionWith=Yo,jn.invert=Ru,jn.invertBy=Ou,jn.invokeMap=ws,jn.iteratee=oa,jn.keyBy=Es,jn.keys=Du,jn.keysIn=Nu,jn.map=Cs,jn.mapKeys=function(e,t){var n={};return t=so(t,3),br(e,(function(e,r,i){ir(n,t(e,r,i),e)})),n},jn.mapValues=function(e,t){var n={};return t=so(t,3),br(e,(function(e,r,i){ir(n,r,t(e,r,i))})),n},jn.matches=function(e){return Wr(ur(e,1))},jn.matchesProperty=function(e,t){return jr(e,ur(t,1))},jn.memoize=Ps,jn.merge=xu,jn.mergeWith=Pu,jn.method=sa,jn.methodOf=ua,jn.mixin=aa,jn.negate=Ms,jn.nthArg=function(e){return e=gu(e),Qr((function(t){return Fr(t,e)}))},jn.omit=Mu,jn.omitBy=function(e,t){return Wu(e,Ms(so(t)))},jn.once=function(e){return Rs(2,e)},jn.orderBy=function(e,t,n,r){return null==e?[]:(qs(t)||(t=null==t?[]:[t]),qs(n=r?i:n)||(n=null==n?[]:[n]),Ur(e,t,n))},jn.over=la,jn.overArgs=Bs,jn.overEvery=fa,jn.overSome=da,jn.partial=Ws,jn.partialRight=js,jn.partition=As,jn.pick=Bu,jn.pickBy=Wu,jn.property=pa,jn.propertyOf=function(e){return function(t){return null==e?i:wr(e,t)}},jn.pull=Zo,jn.pullAll=Xo,jn.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Hr(e,t,so(n,2)):e},jn.pullAllWith=function(e,t,n){return e&&e.length&&t&&t.length?Hr(e,t,i,n):e},jn.pullAt=es,jn.range=ha,jn.rangeRight=ga,jn.rearg=$s,jn.reject=function(e,t){return(qs(e)?wt:gr)(e,Ms(so(t,3)))},jn.remove=function(e,t){var n=[];if(!e||!e.length)return n;var r=-1,i=[],o=e.length;for(t=so(t,3);++r<o;){var s=e[r];t(s,r,e)&&(n.push(s),i.push(r))}return qr(e,i),n},jn.rest=function(e,t){if("function"!=typeof e)throw new Le(o);return Qr(e,t=t===i?t:gu(t))},jn.reverse=ts,jn.sampleSize=function(e,t,n){return t=(n?vo(e,t,n):t===i)?1:gu(t),(qs(e)?Jn:Yr)(e,t)},jn.set=function(e,t,n){return null==e?e:Jr(e,t,n)},jn.setWith=function(e,t,n,r){return r="function"==typeof r?r:i,null==e?e:Jr(e,t,n,r)},jn.shuffle=function(e){return(qs(e)?Zn:ei)(e)},jn.slice=function(e,t,n){var r=null==e?0:e.length;return r?(n&&"number"!=typeof n&&vo(e,t,n)?(t=0,n=r):(t=null==t?0:gu(t),n=n===i?r:gu(n)),ti(e,t,n)):[]},jn.sortBy=Is,jn.sortedUniq=function(e){return e&&e.length?oi(e):[]},jn.sortedUniqBy=function(e,t){return e&&e.length?oi(e,so(t,2)):[]},jn.split=function(e,t,n){return n&&"number"!=typeof n&&vo(e,t,n)&&(t=n=i),(n=n===i?p:n>>>0)?(e=bu(e))&&("string"==typeof t||null!=t&&!su(t))&&!(t=ui(t))&&Zt(e)?bi(sn(e),0,n):e.split(t,n):[]},jn.spread=function(e,t){if("function"!=typeof e)throw new Le(o);return t=null==t?0:yn(gu(t),0),Qr((function(n){var r=n[t],i=bi(n,0,t);return r&&It(i,r),yt(e,this,i)}))},jn.tail=function(e){var t=null==e?0:e.length;return t?ti(e,1,t):[]},jn.take=function(e,t,n){return e&&e.length?ti(e,0,(t=n||t===i?1:gu(t))<0?0:t):[]},jn.takeRight=function(e,t,n){var r=null==e?0:e.length;return r?ti(e,(t=r-(t=n||t===i?1:gu(t)))<0?0:t,r):[]},jn.takeRightWhile=function(e,t){return e&&e.length?fi(e,so(t,3),!1,!0):[]},jn.takeWhile=function(e,t){return e&&e.length?fi(e,so(t,3)):[]},jn.tap=function(e,t){return t(e),e},jn.throttle=function(e,t,n){var r=!0,i=!0;if("function"!=typeof e)throw new Le(o);return tu(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),Ds(e,t,{leading:r,maxWait:t,trailing:i})},jn.thru=hs,jn.toArray=pu,jn.toPairs=ju,jn.toPairsIn=$u,jn.toPath=function(e){return qs(e)?At(e,Wo):cu(e)?[e]:Li(Bo(bu(e)))},jn.toPlainObject=vu,jn.transform=function(e,t,n){var r=qs(e),i=r||Ks(e)||lu(e);if(t=so(t,4),null==n){var o=e&&e.constructor;n=i?r?new o:[]:tu(e)&&Zs(o)?$n(Ge(e)):{}}return(i?bt:br)(e,(function(e,r,i){return t(n,e,r,i)})),n},jn.unary=function(e){return Ts(e,1)},jn.union=ns,jn.unionBy=rs,jn.unionWith=is,jn.uniq=function(e){return e&&e.length?ai(e):[]},jn.uniqBy=function(e,t){return e&&e.length?ai(e,so(t,2)):[]},jn.uniqWith=function(e,t){return t="function"==typeof t?t:i,e&&e.length?ai(e,i,t):[]},jn.unset=function(e,t){return null==e||ci(e,t)},jn.unzip=os,jn.unzipWith=ss,jn.update=function(e,t,n){return null==e?e:li(e,t,mi(n))},jn.updateWith=function(e,t,n,r){return r="function"==typeof r?r:i,null==e?e:li(e,t,mi(n),r)},jn.values=Fu,jn.valuesIn=function(e){return null==e?[]:Ht(e,Nu(e))},jn.without=us,jn.words=Zu,jn.wrap=function(e,t){return Ws(mi(t),e)},jn.xor=as,jn.xorBy=cs,jn.xorWith=ls,jn.zip=fs,jn.zipObject=function(e,t){return hi(e||[],t||[],er)},jn.zipObjectDeep=function(e,t){return hi(e||[],t||[],Jr)},jn.zipWith=ds,jn.entries=ju,jn.entriesIn=$u,jn.extend=Su,jn.extendWith=wu,aa(jn,jn),jn.add=ba,jn.attempt=Xu,jn.camelCase=Uu,jn.capitalize=Vu,jn.ceil=_a,jn.clamp=function(e,t,n){return n===i&&(n=t,t=i),n!==i&&(n=(n=yu(n))==n?n:0),t!==i&&(t=(t=yu(t))==t?t:0),sr(yu(e),t,n)},jn.clone=function(e){return ur(e,4)},jn.cloneDeep=function(e){return ur(e,5)},jn.cloneDeepWith=function(e,t){return ur(e,5,t="function"==typeof t?t:i)},jn.cloneWith=function(e,t){return ur(e,4,t="function"==typeof t?t:i)},jn.conformsTo=function(e,t){return null==t||ar(e,t,Du(t))},jn.deburr=Hu,jn.defaultTo=function(e,t){return null==e||e!=e?t:e},jn.divide=Sa,jn.endsWith=function(e,t,n){e=bu(e),t=ui(t);var r=e.length,o=n=n===i?r:sr(gu(n),0,r);return(n-=t.length)>=0&&e.slice(n,o)==t},jn.eq=Fs,jn.escape=function(e){return(e=bu(e))&&Q.test(e)?e.replace(G,Yt):e},jn.escapeRegExp=function(e){return(e=bu(e))&&ne.test(e)?e.replace(te,"\\$&"):e},jn.every=function(e,t,n){var r=qs(e)?St:pr;return n&&vo(e,t,n)&&(t=i),r(e,so(t,3))},jn.find=ys,jn.findIndex=Ho,jn.findKey=function(e,t){return kt(e,so(t,3),br)},jn.findLast=vs,jn.findLastIndex=qo,jn.findLastKey=function(e,t){return kt(e,so(t,3),_r)},jn.floor=wa,jn.forEach=bs,jn.forEachRight=_s,jn.forIn=function(e,t){return null==e?e:yr(e,so(t,3),Nu)},jn.forInRight=function(e,t){return null==e?e:vr(e,so(t,3),Nu)},jn.forOwn=function(e,t){return e&&br(e,so(t,3))},jn.forOwnRight=function(e,t){return e&&_r(e,so(t,3))},jn.get=Lu,jn.gt=Us,jn.gte=Vs,jn.has=function(e,t){return null!=e&&ho(e,t,Ir)},jn.hasIn=Tu,jn.head=zo,jn.identity=ia,jn.includes=function(e,t,n,r){e=zs(e)?e:Fu(e),n=n&&!r?gu(n):0;var i=e.length;return n<0&&(n=yn(i+n,0)),au(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&Nt(e,t,n)>-1},jn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:gu(n);return i<0&&(i=yn(r+i,0)),Nt(e,t,i)},jn.inRange=function(e,t,n){return t=hu(t),n===i?(n=t,t=0):n=hu(n),function(e,t,n){return e>=vn(t,n)&&e<yn(t,n)}(e=yu(e),t,n)},jn.invoke=ku,jn.isArguments=Hs,jn.isArray=qs,jn.isArrayBuffer=Gs,jn.isArrayLike=zs,jn.isArrayLikeObject=Qs,jn.isBoolean=function(e){return!0===e||!1===e||nu(e)&&Cr(e)==y},jn.isBuffer=Ks,jn.isDate=Ys,jn.isElement=function(e){return nu(e)&&1===e.nodeType&&!ou(e)},jn.isEmpty=function(e){if(null==e)return!0;if(zs(e)&&(qs(e)||"string"==typeof e||"function"==typeof e.splice||Ks(e)||lu(e)||Hs(e)))return!e.length;var t=po(e);if(t==w||t==L)return!e.size;if(wo(e))return!Pr(e).length;for(var n in e)if(Ne.call(e,n))return!1;return!0},jn.isEqual=function(e,t){return kr(e,t)},jn.isEqualWith=function(e,t,n){var r=(n="function"==typeof n?n:i)?n(e,t):i;return r===i?kr(e,t,i,n):!!r},jn.isError=Js,jn.isFinite=function(e){return"number"==typeof e&&hn(e)},jn.isFunction=Zs,jn.isInteger=Xs,jn.isLength=eu,jn.isMap=ru,jn.isMatch=function(e,t){return e===t||Dr(e,t,ao(t))},jn.isMatchWith=function(e,t,n){return n="function"==typeof n?n:i,Dr(e,t,ao(t),n)},jn.isNaN=function(e){return iu(e)&&e!=+e},jn.isNative=function(e){if(So(e))throw new Se("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Nr(e)},jn.isNil=function(e){return null==e},jn.isNull=function(e){return null===e},jn.isNumber=iu,jn.isObject=tu,jn.isObjectLike=nu,jn.isPlainObject=ou,jn.isRegExp=su,jn.isSafeInteger=function(e){return Xs(e)&&e>=-9007199254740991&&e<=f},jn.isSet=uu,jn.isString=au,jn.isSymbol=cu,jn.isTypedArray=lu,jn.isUndefined=function(e){return e===i},jn.isWeakMap=function(e){return nu(e)&&po(e)==O},jn.isWeakSet=function(e){return nu(e)&&"[object WeakSet]"==Cr(e)},jn.join=function(e,t){return null==e?"":gn.call(e,t)},jn.kebabCase=qu,jn.last=Jo,jn.lastIndexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var o=r;return n!==i&&(o=(o=gu(n))<0?yn(r+o,0):vn(o,r-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,o):Dt(e,Pt,o,!0)},jn.lowerCase=Gu,jn.lowerFirst=zu,jn.lt=fu,jn.lte=du,jn.max=function(e){return e&&e.length?hr(e,ia,Ar):i},jn.maxBy=function(e,t){return e&&e.length?hr(e,so(t,2),Ar):i},jn.mean=function(e){return Mt(e,ia)},jn.meanBy=function(e,t){return Mt(e,so(t,2))},jn.min=function(e){return e&&e.length?hr(e,ia,Mr):i},jn.minBy=function(e,t){return e&&e.length?hr(e,so(t,2),Mr):i},jn.stubArray=ma,jn.stubFalse=ya,jn.stubObject=function(){return{}},jn.stubString=function(){return""},jn.stubTrue=function(){return!0},jn.multiply=Ea,jn.nth=function(e,t){return e&&e.length?Fr(e,gu(t)):i},jn.noConflict=function(){return ot._===this&&(ot._=We),this},jn.noop=ca,jn.now=Ls,jn.pad=function(e,t,n){e=bu(e);var r=(t=gu(t))?on(e):0;if(!t||r>=t)return e;var i=(t-r)/2;return Ui(fn(i),n)+e+Ui(ln(i),n)},jn.padEnd=function(e,t,n){e=bu(e);var r=(t=gu(t))?on(e):0;return t&&r<t?e+Ui(t-r,n):e},jn.padStart=function(e,t,n){e=bu(e);var r=(t=gu(t))?on(e):0;return t&&r<t?Ui(t-r,n)+e:e},jn.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),_n(bu(e).replace(re,""),t||0)},jn.random=function(e,t,n){if(n&&"boolean"!=typeof n&&vo(e,t,n)&&(t=n=i),n===i&&("boolean"==typeof t?(n=t,t=i):"boolean"==typeof e&&(n=e,e=i)),e===i&&t===i?(e=0,t=1):(e=hu(e),t===i?(t=e,e=0):t=hu(t)),e>t){var r=e;e=t,t=r}if(n||e%1||t%1){var o=Sn();return vn(e+o*(t-e+tt("1e-"+((o+"").length-1))),t)}return Gr(e,t)},jn.reduce=function(e,t,n){var r=qs(e)?Lt:jt,i=arguments.length<3;return r(e,so(t,4),n,i,fr)},jn.reduceRight=function(e,t,n){var r=qs(e)?Tt:jt,i=arguments.length<3;return r(e,so(t,4),n,i,dr)},jn.repeat=function(e,t,n){return t=(n?vo(e,t,n):t===i)?1:gu(t),zr(bu(e),t)},jn.replace=function(){var e=arguments,t=bu(e[0]);return e.length<3?t:t.replace(e[1],e[2])},jn.result=function(e,t,n){var r=-1,o=(t=yi(t,e)).length;for(o||(o=1,e=i);++r<o;){var s=null==e?i:e[Wo(t[r])];s===i&&(r=o,s=n),e=Zs(s)?s.call(e):s}return e},jn.round=Ca,jn.runInContext=e,jn.sample=function(e){return(qs(e)?Yn:Kr)(e)},jn.size=function(e){if(null==e)return 0;if(zs(e))return au(e)?on(e):e.length;var t=po(e);return t==w||t==L?e.size:Pr(e).length},jn.snakeCase=Qu,jn.some=function(e,t,n){var r=qs(e)?Rt:ni;return n&&vo(e,t,n)&&(t=i),r(e,so(t,3))},jn.sortedIndex=function(e,t){return ri(e,t)},jn.sortedIndexBy=function(e,t,n){return ii(e,t,so(n,2))},jn.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var r=ri(e,t);if(r<n&&Fs(e[r],t))return r}return-1},jn.sortedLastIndex=function(e,t){return ri(e,t,!0)},jn.sortedLastIndexBy=function(e,t,n){return ii(e,t,so(n,2),!0)},jn.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var n=ri(e,t,!0)-1;if(Fs(e[n],t))return n}return-1},jn.startCase=Ku,jn.startsWith=function(e,t,n){return e=bu(e),n=null==n?0:sr(gu(n),0,e.length),t=ui(t),e.slice(n,n+t.length)==t},jn.subtract=Aa,jn.sum=function(e){return e&&e.length?$t(e,ia):0},jn.sumBy=function(e,t){return e&&e.length?$t(e,so(t,2)):0},jn.template=function(e,t,n){var r=jn.templateSettings;n&&vo(e,t,n)&&(t=i),e=bu(e),t=wu({},t,r,Yi);var o,s,u=wu({},t.imports,r.imports,Yi),a=Du(u),c=Ht(u,a),l=0,f=t.interpolate||be,d="__p += '",p=Ae((t.escape||be).source+"|"+f.source+"|"+(f===J?fe:be).source+"|"+(t.evaluate||be).source+"|$","g"),h="//# sourceURL="+(Ne.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Je+"]")+"\n";e.replace(p,(function(t,n,r,i,u,a){return r||(r=i),d+=e.slice(l,a).replace(_e,Jt),n&&(o=!0,d+="' +\n__e("+n+") +\n'"),u&&(s=!0,d+="';\n"+u+";\n__p += '"),r&&(d+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),l=a+t.length,t})),d+="';\n";var g=Ne.call(t,"variable")&&t.variable;if(g){if(ce.test(g))throw new Se("Invalid `variable` option passed into `_.template`")}else d="with (obj) {\n"+d+"\n}\n";d=(s?d.replace(U,""):d).replace(V,"$1").replace(H,"$1;"),d="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(o?", __e = _.escape":"")+(s?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+d+"return __p\n}";var m=Xu((function(){return we(a,h+"return "+d).apply(i,c)}));if(m.source=d,Js(m))throw m;return m},jn.times=function(e,t){if((e=gu(e))<1||e>f)return[];var n=p,r=vn(e,p);t=so(t),e-=p;for(var i=Ft(r,t);++n<e;)t(n);return i},jn.toFinite=hu,jn.toInteger=gu,jn.toLength=mu,jn.toLower=function(e){return bu(e).toLowerCase()},jn.toNumber=yu,jn.toSafeInteger=function(e){return e?sr(gu(e),-9007199254740991,f):0===e?e:0},jn.toString=bu,jn.toUpper=function(e){return bu(e).toUpperCase()},jn.trim=function(e,t,n){if((e=bu(e))&&(n||t===i))return Ut(e);if(!e||!(t=ui(t)))return e;var r=sn(e),o=sn(t);return bi(r,Gt(r,o),zt(r,o)+1).join("")},jn.trimEnd=function(e,t,n){if((e=bu(e))&&(n||t===i))return e.slice(0,un(e)+1);if(!e||!(t=ui(t)))return e;var r=sn(e);return bi(r,0,zt(r,sn(t))+1).join("")},jn.trimStart=function(e,t,n){if((e=bu(e))&&(n||t===i))return e.replace(re,"");if(!e||!(t=ui(t)))return e;var r=sn(e);return bi(r,Gt(r,sn(t))).join("")},jn.truncate=function(e,t){var n=30,r="...";if(tu(t)){var o="separator"in t?t.separator:o;n="length"in t?gu(t.length):n,r="omission"in t?ui(t.omission):r}var s=(e=bu(e)).length;if(Zt(e)){var u=sn(e);s=u.length}if(n>=s)return e;var a=n-on(r);if(a<1)return r;var c=u?bi(u,0,a).join(""):e.slice(0,a);if(o===i)return c+r;if(u&&(a+=c.length-a),su(o)){if(e.slice(a).search(o)){var l,f=c;for(o.global||(o=Ae(o.source,bu(de.exec(o))+"g")),o.lastIndex=0;l=o.exec(f);)var d=l.index;c=c.slice(0,d===i?a:d)}}else if(e.indexOf(ui(o),a)!=a){var p=c.lastIndexOf(o);p>-1&&(c=c.slice(0,p))}return c+r},jn.unescape=function(e){return(e=bu(e))&&z.test(e)?e.replace(q,an):e},jn.uniqueId=function(e){var t=++xe;return bu(e)+t},jn.upperCase=Yu,jn.upperFirst=Ju,jn.each=bs,jn.eachRight=_s,jn.first=zo,aa(jn,(va={},br(jn,(function(e,t){Ne.call(jn.prototype,t)||(va[t]=e)})),va),{chain:!1}),jn.VERSION="4.17.21",bt(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){jn[e].placeholder=jn})),bt(["drop","take"],(function(e,t){Vn.prototype[e]=function(n){n=n===i?1:yn(gu(n),0);var r=this.__filtered__&&!t?new Vn(this):this.clone();return r.__filtered__?r.__takeCount__=vn(n,r.__takeCount__):r.__views__.push({size:vn(n,p),type:e+(r.__dir__<0?"Right":"")}),r},Vn.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),bt(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=1==n||3==n;Vn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:so(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),bt(["head","last"],(function(e,t){var n="take"+(t?"Right":"");Vn.prototype[e]=function(){return this[n](1).value()[0]}})),bt(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");Vn.prototype[e]=function(){return this.__filtered__?new Vn(this):this[n](1)}})),Vn.prototype.compact=function(){return this.filter(ia)},Vn.prototype.find=function(e){return this.filter(e).head()},Vn.prototype.findLast=function(e){return this.reverse().find(e)},Vn.prototype.invokeMap=Qr((function(e,t){return"function"==typeof e?new Vn(this):this.map((function(n){return Rr(n,e,t)}))})),Vn.prototype.reject=function(e){return this.filter(Ms(so(e)))},Vn.prototype.slice=function(e,t){e=gu(e);var n=this;return n.__filtered__&&(e>0||t<0)?new Vn(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==i&&(n=(t=gu(t))<0?n.dropRight(-t):n.take(t-e)),n)},Vn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Vn.prototype.toArray=function(){return this.take(p)},br(Vn.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),o=jn[r?"take"+("last"==t?"Right":""):t],s=r||/^find/.test(t);o&&(jn.prototype[t]=function(){var t=this.__wrapped__,u=r?[1]:arguments,a=t instanceof Vn,c=u[0],l=a||qs(t),f=function(e){var t=o.apply(jn,It([e],u));return r&&d?t[0]:t};l&&n&&"function"==typeof c&&1!=c.length&&(a=l=!1);var d=this.__chain__,p=!!this.__actions__.length,h=s&&!d,g=a&&!p;if(!s&&l){t=g?t:new Vn(this);var m=e.apply(t,u);return m.__actions__.push({func:hs,args:[f],thisArg:i}),new Un(m,d)}return h&&g?e.apply(this,u):(m=this.thru(f),h?r?m.value()[0]:m.value():m)})})),bt(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Te[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);jn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var i=this.value();return t.apply(qs(i)?i:[],e)}return this[n]((function(n){return t.apply(qs(n)?n:[],e)}))}})),br(Vn.prototype,(function(e,t){var n=jn[t];if(n){var r=n.name+"";Ne.call(On,r)||(On[r]=[]),On[r].push({name:t,func:n})}})),On[Wi(i,2).name]=[{name:"wrapper",func:i}],Vn.prototype.clone=function(){var e=new Vn(this.__wrapped__);return e.__actions__=Li(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Li(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Li(this.__views__),e},Vn.prototype.reverse=function(){if(this.__filtered__){var e=new Vn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Vn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=qs(e),r=t<0,i=n?e.length:0,o=function(e,t,n){for(var r=-1,i=n.length;++r<i;){var o=n[r],s=o.size;switch(o.type){case"drop":e+=s;break;case"dropRight":t-=s;break;case"take":t=vn(t,e+s);break;case"takeRight":e=yn(e,t-s)}}return{start:e,end:t}}(0,i,this.__views__),s=o.start,u=o.end,a=u-s,c=r?u:s-1,l=this.__iteratees__,f=l.length,d=0,p=vn(a,this.__takeCount__);if(!n||!r&&i==a&&p==a)return di(e,this.__actions__);var h=[];e:for(;a--&&d<p;){for(var g=-1,m=e[c+=t];++g<f;){var y=l[g],v=y.iteratee,b=y.type,_=v(m);if(2==b)m=_;else if(!_){if(1==b)continue e;break e}}h[d++]=m}return h},jn.prototype.at=gs,jn.prototype.chain=function(){return ps(this)},jn.prototype.commit=function(){return new Un(this.value(),this.__chain__)},jn.prototype.next=function(){this.__values__===i&&(this.__values__=pu(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?i:this.__values__[this.__index__++]}},jn.prototype.plant=function(e){for(var t,n=this;n instanceof Fn;){var r=$o(n);r.__index__=0,r.__values__=i,t?o.__wrapped__=r:t=r;var o=r;n=n.__wrapped__}return o.__wrapped__=e,t},jn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Vn){var t=e;return this.__actions__.length&&(t=new Vn(this)),(t=t.reverse()).__actions__.push({func:hs,args:[ts],thisArg:i}),new Un(t,this.__chain__)}return this.thru(ts)},jn.prototype.toJSON=jn.prototype.valueOf=jn.prototype.value=function(){return di(this.__wrapped__,this.__actions__)},jn.prototype.first=jn.prototype.head,st&&(jn.prototype[st]=function(){return this}),jn}();ot._=cn,(r=function(){return cn}.call(t,n,t,e))===i||(e.exports=r)}.call(this)},98253:(e,t,n)=>{var r=n(158);e.exports=function(){return r.Date.now()}},38172:(e,t,n)=>{var r=n(76897),i=n(23619);e.exports=function(e,t,n){var o=!0,s=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return i(n)&&(o="leading"in n?!!n.leading:o,s="trailing"in n?!!n.trailing:s),r(e,t,{leading:o,maxWait:t,trailing:s})}},95053:(e,t,n)=>{var r=n(12383),i=n(23619),o=n(81878),s=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,a=/^0o[0-7]+$/i,c=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(o(e))return NaN;if(i(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=i(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=u.test(e);return n||a.test(e)?c(e.slice(2),n?2:8):s.test(e)?NaN:+e}},50586:(e,t,n)=>{var r=n(36589),i=n(22708),o=i;o.v1=r,o.v4=i,e.exports=o},98726:e=>{for(var t=[],n=0;n<256;++n)t[n]=(n+256).toString(16).substr(1);e.exports=function(e,n){var r=n||0,i=t;return i[e[r++]]+i[e[r++]]+i[e[r++]]+i[e[r++]]+"-"+i[e[r++]]+i[e[r++]]+"-"+i[e[r++]]+i[e[r++]]+"-"+i[e[r++]]+i[e[r++]]+"-"+i[e[r++]]+i[e[r++]]+i[e[r++]]+i[e[r++]]+i[e[r++]]+i[e[r++]]}},76338:(e,t,n)=>{var r,i=n.g.crypto||n.g.msCrypto;if(i&&i.getRandomValues){var o=new Uint8Array(16);r=function(){return i.getRandomValues(o),o}}if(!r){var s=new Array(16);r=function(){for(var e,t=0;t<16;t++)0==(3&t)&&(e=4294967296*Math.random()),s[t]=e>>>((3&t)<<3)&255;return s}}e.exports=r},36589:(e,t,n)=>{var r=n(76338),i=n(98726),o=r(),s=[1|o[0],o[1],o[2],o[3],o[4],o[5]],u=16383&(o[6]<<8|o[7]),a=0,c=0;e.exports=function(e,t,n){var r=t&&n||0,o=t||[],l=void 0!==(e=e||{}).clockseq?e.clockseq:u,f=void 0!==e.msecs?e.msecs:(new Date).getTime(),d=void 0!==e.nsecs?e.nsecs:c+1,p=f-a+(d-c)/1e4;if(p<0&&void 0===e.clockseq&&(l=l+1&16383),(p<0||f>a)&&void 0===e.nsecs&&(d=0),d>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");a=f,c=d,u=l;var h=(1e4*(268435455&(f+=122192928e5))+d)%4294967296;o[r++]=h>>>24&255,o[r++]=h>>>16&255,o[r++]=h>>>8&255,o[r++]=255&h;var g=f/4294967296*1e4&268435455;o[r++]=g>>>8&255,o[r++]=255&g,o[r++]=g>>>24&15|16,o[r++]=g>>>16&255,o[r++]=l>>>8|128,o[r++]=255&l;for(var m=e.node||s,y=0;y<6;++y)o[r+y]=m[y];return t||i(o)}},22708:(e,t,n)=>{var r=n(76338),i=n(98726);e.exports=function(e,t,n){var o=t&&n||0;"string"==typeof e&&(t="binary"==e?new Array(16):null,e=null);var s=(e=e||{}).random||(e.rng||r)();if(s[6]=15&s[6]|64,s[8]=63&s[8]|128,t)for(var u=0;u<16;++u)t[o+u]=s[u];return t||i(s)}},81298:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AnonymousAuthenticationToken=t.HEARTBEAT_INTERVAL=t.HEARTBEAT_CHANNEL=t.INTENT_RESOLVER_CHANNEL=t.SERVER_CHANNEL=t.GLOBAL_CHANNEL=t.errorAsString=t.mmRemove=t.concatNoDups=t.mmAdd=void 0,t.mmAdd=function(e,t,n){return(e[t]||[]).concat([n])},t.concatNoDups=function(e,t){const n=Array.isArray(t)?t:[t],r=e?n.concat(e):n;return Array.from(new Set(r))},t.mmRemove=function(e,t,n){return(e[t]||[]).filter((e=>e===n))},t.errorAsString=function(e){return e?.message??e??null},t.GLOBAL_CHANNEL="global",t.SERVER_CHANNEL="FSBL.FDC3.Interop.Server",t.INTENT_RESOLVER_CHANNEL="FSBL.FDC3.intent.resolver",t.HEARTBEAT_CHANNEL="FSBL.FDC3.Interop.Server",t.HEARTBEAT_INTERVAL=4e3,t.AnonymousAuthenticationToken={authenticationKeyType:"unauthenticated",meta:{name:"Anonymous app"}}},16925:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Startup=void 0;const r=n(81298),i=n(6192),o=n(50586),s=n(4971);class u{constructor(){this.isReady=!1,this.onReadyListeners=[],this.currentStartupData={authenticationToken:r.AnonymousAuthenticationToken,windowName:`Unknown window-${o.v4()}`}}static getInstance(){return u.instance?u.instance:u.instance=s.singleton("Startup",u)}getStartupData(){return this.currentStartupData}setStartupData(e){this.currentStartupData=e}onReady(e){return new Promise((t=>{this.isReady?(e&&setTimeout(e,0),t()):this.onReadyListeners.push((()=>{e&&e(),t()}))}))}ready(){this.isReady=!0,this.onReadyListeners.forEach((e=>{e()})),i.Globals.dispatchEvent&&i.Globals.dispatchEvent(new Event("FSBLReady"))}}t.Startup=u,u.instance=null},72669:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t._BaseClient=void 0;const i=r(n(39319)),o=r(n(72551)),s=n(51742),u=n(13854);t._BaseClient=class{constructor(e){this.status="offline",this.startupTime=0,this.initialized=!1,this.startupDependencies={services:[],clients:[]},this.finsembleWindow=null,this.windowName="",this.clientReadyQueue=[],this.processClientReadyQueue=()=>{for(const e of this.clientReadyQueue)e();this.clientReadyQueue=[]},this.onReady=e=>{this.clientReadyQueue.push(e),"online"===this.status&&this.processClientReadyQueue()},this.setClientOnline=()=>{this.status="online";const e=`STARTUP:CLIENT ONLINE:${this.finWindow?.name}:${this.name}`;this.startupTime=window.performance.now()-this.startupTime;const t=()=>{this.logger.system.debug(e),this.processClientReadyQueue(),u.FSBLDependencyManagerSingleton.setClientOnline(this.name)};this._onReady?this._onReady(t):t()},this.initialize=(e=Function.prototype)=>{this.initialized||(this.initialized=!0,this.startupTime=performance.now(),this.finWindow=s.System.Window.getCurrent(),this.windowName=this.finWindow.name,this.logger.system.debug("Baseclient Init Router Ready",this.name),u.FSBLDependencyManagerSingleton.startup.waitFor(this.startupDependencies,(()=>{e(),this.setClientOnline()})))},this.onClose=e=>{e&&e()},this.name=e.name,this._onReady=e.onReady,this.startupDependencies=e.startupDependencies||{services:[],clients:[]},this.logger=o.default,this.routerClient=i.default}}},70010:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(57664),o=r(n(13712)),s=n(72669),u=r(n(5020)),a=r(n(72551));class c extends s._BaseClient{constructor(e){super(e),this.listeners=[],this.changeSub=e=>{this.subs||(this.subs={}),this.subs[e]||(this.routerClient.query("configService.addListener",e,(t=>{t&&a.default.system.error("Error adding listener to config service",t),this.routerClient.subscribe(e,this.handleChanges)})),this.subs[e]=!0)},this.handleChanges=(e,t)=>{e&&a.default.system.error(e),t.data.field||(t.data.field=null);const n=t.data.storeData?t.data.storeData:t.data.value;this.triggerListeners(t.data.field?t.data.field:"configService",n)},this.triggerListeners=(e,t)=>{if(this.listeners[e])for(let n=0;n<this.listeners[e].length;n++)"function"==typeof this.listeners[e][n]?this.listeners[e][n](null,{field:e,value:t}):a.default.system.warn("ConfigClient:triggerListeners: listener is not a function",e)},this.set=(e,t)=>{a.default.system.debug("ConfigClient.Set",e),"function"==typeof e?(t=e,o.default.args(t,"function"),e={}):o.default.args(e,"object",t,"function"),this.routerClient.query("config.set",e,((e,n)=>{t(e,n?n.data:null)}))},this.processAndSet=this.processAndSet.bind(this),this.getValue=this.getValue.bind(this),this.getValues=this.getValues.bind(this),this.setValue=this.setValue.bind(this),this.setValues=this.setValues.bind(this),this.removeValue=this.removeValue.bind(this),this.removeValues=this.removeValues.bind(this),this.addListener=this.addListener.bind(this),this.addListeners=this.addListeners.bind(this),this.removeListener=this.removeListener.bind(this),this.removeListeners=this.removeListeners.bind(this),this.setPreference=this.setPreference.bind(this),this.getPreferences=this.getPreferences.bind(this),this.unsetPreference=this.unsetPreference.bind(this)}getValue(e,t=Function.prototype){return"string"==typeof e&&(e={field:e}),new Promise(((n,r)=>{if(!e.field){const e="no field provided";return r(e),t(e)}this.routerClient.query("configService.getValue",{field:e.field},((e,i)=>e?(r(e),t(e)):(n({err:e,data:i.data}),t(e,i.data))))}))}getValues(e,t=Function.prototype){return"function"==typeof e&&(t=e,e=null),e&&!Array.isArray(e)?this.getValue(e,t):new Promise((n=>{this.routerClient.query("configService.getValues",{fields:e},((e,r)=>e?t(e):(n({err:e,data:r.data}),t(e,r.data))))}))}setValue(e,t){const n={field:e.field,value:e.value};return this.routerClient.query("configService.setValue",n,(e=>t?t(e):null))}setValues(e,t){return e?Array.isArray(e)?this.routerClient.query("configService.setValues",e,(e=>t?t(e):null)):a.default.system.error("ConfigClient.SetValues. Params must be an array"):a.default.system.error("ConfigClient.SetValues. No params given")}removeValue(e,t=Function.prototype){if(void 0!==e){if(e.field||"string"!=typeof e)return t("no field provided");e={field:e}}return e.value=null,this.setValue(e,t)}removeValues(e,t=Function.prototype){if(!Array.isArray(e))return t("The passed in parameter needs to be an array");i.map(e,this.removeValue,((e,n)=>t(e,n)))}addListener(e,t,n){let r=null;"function"==typeof e&&(t=e,e={field:r}),({field:r}=e);const i="configService"+(r?`.${r}`:"");return this.listeners[i]?this.listeners[i].push(t):this.listeners[i]=[t],this.changeSub(i),n?n():null}addListeners(e,t,n){if(!Array.isArray(e))return this.addListener({field:e.field},t,n);for(let n=0;n<e.length;n++){let i=null;const o=e[n];var r;"string"==typeof o?i=o:o.field&&(({field:i}=o),r=o.listener);const s="configService"+(i?`.${i}`:"");r||t&&"function"==typeof t&&(r=t),this.listeners[s]?this.listeners[s].push(r):this.listeners[s]=[r],this.changeSub(s)}return n?n():null}removeListener(e,t,n){let r=null;"function"==typeof e&&(n=t,t=e,e={field:r}),({field:r}=e);const i=this.name+(r?`.${r}`:"");if(this.listeners[i])for(let e=0;e<this.listeners[i].length;e++)if(this.listeners[i][e]===t)return this.listeners[i].pop(e),n?n(null,!0):null;return n?n(null,!1):null}removeListeners(e,t,n){if(!Array.isArray(e))return"function"==typeof e?this.removeListener({},e,n):e.field&&this.removeListener(e,t,n),n?.("missing fields");let r=0;for(let n=0;n<e.length;n++){let o=null;const s=e[n];var i;"string"==typeof s?o=s:s.field&&(({field:o}=s),i=e[n].listener);const u="configService"+(o?`.${o}`:"");if(!i){if(!t||"function"!=typeof t)continue;i=t}for(let e=0;e<this.listeners[u].length;e++)this.listeners[u][e]===i&&(this.listeners[u].pop(n),r++)}return r<e.length?n?.("All listeners could not be found",!1):n?n(null,!0):null}get(e,t){a.default.system.debug("ConfigClient.Get",e),a.default.system.deprecated("This functionality has been deprecated. It will be removed in a future Finsemble release. Use getValue instead.",e),1===arguments.length?(t=e,o.default.args(t,"function"),e={}):o.default.args(e,"object",t,"function"),this.routerClient.query("config.get",e,((e,n)=>{t(e,n?n.data:null)}))}processAndSet(e,t){if(a.default.system.debug("ConfigClient.processAndSet",e),o.default.args(e,"object",t,"function=")&&o.default.args2("params.newConfig",e.newConfig,"object","params.overwrite",e.overwrite,"boolean=","params.replace",e.replace,"boolean="),!e.overwrite&&e.replace){const e="cannot use replace option unless overwrite is also true";a.default.system.warn("ConfigClient.processAndSet:",e),t&&t(e,null)}else this.routerClient.query("config.processAndSet",e,((e,n)=>{t&&t(e,n?n.data:null)}))}setPreference(e,t){this.routerClient.query("PreferencesService.setPreference",e,((e,n)=>{t&&t(e,n?n.data:null)}))}async getPreferences(e){await u.default.waitForStartup("preferencesService"),this.routerClient.query("PreferencesService.getPreferences",{},((t,n)=>{a.default.system.debug("ConfigClient.getPreferences response",n),e&&e(t,n?n.data:null)}))}async unsetPreference(e,t){a.default.system.debug("ConfigClient.unsetPreference",e),this.routerClient.query("PreferencesService.unsetPreference",e,((e,n)=>{t&&t(e,n?n.data:null)}))}}const l=new c({startupDependencies:{services:["configService"]},onReady(e){e&&e()},name:"configClient"});t.default=l},75729:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LocalLogger=void 0;const{debug:n,warn:r,log:i,error:o}=console,s=()=>{},u=s,a={warn:r,info:s,log:i,debug:n,error:o,verbose:u,deprecated:o},c={Error:!0,Warn:!0,Info:!0,Log:!0,Debug:!0,Verbose:!0,LocalOnly:!1},l={console:{Error:!0,Warn:!0,Info:!0,Log:!0,Debug:!0},dev:c,system:c,perf:c};function f(e){return"logger.service.logMessages"===e}t.LocalLogger=class{constructor(){this.start=()=>{},this.isLogMessage=f,this.setting=()=>l,this.callStack=()=>function(){const{stack:e}=function(){try{throw Error("")}catch(e){return e}}(),t=("\n",4,e.split("\n",4).join("\n").length);return`Log Stack: \n${e.substring(t).substr(1)}`}(),this.unregisterClient=()=>{},this.setRouterClient=()=>{},this.warn=r,this.info=s,this.log=i,this.debug=n,this.error=o,this.verbose=u,this.system=a,this.perf=a,this.deprecated=o}}},72551:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Logger=t.LoggerConstructor=void 0;const r=n(51742),i=n(75729),o=n(16925),s={Error:!0,Warn:!0,Info:!0,Log:!0,Debug:!0,Verbose:!1,LocalOnly:!1},u={Error:!0,Warn:!0,Info:!0,Log:!0,Debug:!0},a=n(38172);t.LoggerConstructor=function(e){const i=this;let c;i.RouterClient=e&&e.RouterClient;let l=!1,f=!1;const d=i;let p,h,g=0,m=0;this.startupTime=0;let y=[];if("undefined"==typeof window)return;let v=r.System.Window.getCurrent().name;window.top!==window&&(v=`${v}.Frame`),this.onLogStateChangeCallback=[];let b={console:u,dev:s,system:s,perf:s};function _(e,t,n){this.category=e,!c&&r.System.isBrowserView()&&(c=r.System.getViewId()),this.logClientName=c?`${v}: view-${c}`:v,this.logType=t,this.logData=n,this.logTimestamp=window.performance.timing.navigationStart+window.performance.now()+g}function S(e,t){e&&e.dev&&(b=e,i.onLogStateChangeCallback.forEach((t=>{t(e)}))),function(e){d.system.debug("Logger updateQueueBasedOnState",e,g,"QUEUE LENGTH",y.length,b);const t=[];for(let n=0,{length:r}=y;n<r;n++)if(b[y[n].category][y[n].logType]&&!b[y[n].category].LocalOnly)e&&(y[n].logTimestamp=y[n].logTimestamp+g),t.push(y[n]);else if(b[y[n].category][y[n].logType]&&b[y[n].category].LocalOnly){const e=y[n];console.log(e.category,e.logType,e.logTimestamp-window.performance.timing.navigationStart,e.logData,"(Previously queued!)")}y=t}(t)}function w(){const{stack:e}=function(){try{throw Error("")}catch(e){return e}}(),t=("\n",4,e.split("\n",4).join("\n").length);return`Log Stack: \n${e.substring(t).substr(1)}`}this.onStateChanged=e=>{-1===this.onLogStateChangeCallback.indexOf(e)&&this.onLogStateChangeCallback.push(e)},this.setClientName=function(e){console.error("logger.setClientName() is deprecated"),v=e},this.getClientName=function(){return console.error("logger.getClientName() is deprecated"),v},this.clearMessageList=function(){y=[]},this.callStack=function(){return w()},this.setting=function(){return b};const E=console.error,C=console.warn,A=console.info,I=console.log,L=console.debug;function T(e){return e.reduce(((e,t)=>e.concat(Array.isArray(t)?T(t):t)),[])}function R(e,t){try{e.apply(console,T(t))}catch(e){(t=[]).push(w())}}let O=()=>{y.length>0&&(i.RouterClient.transmit("logger.service.logMessages",y),d.clearMessageList())};function k(e,n,r){let i,o=!1,s=!0;"forceObjectsToLogger"===r[0]&&(o=!0,s=!1,r.splice(0,1)),r=r.map((e=>s&&function(e){const t=[],n=[e];let r=0,i=0;for(;n.length&&i<1e3;){i++;const e=n.pop();if("boolean"==typeof e)r+=4;else if("string"==typeof e)r+=2*e.length;else if("number"==typeof e)r+=8;else if("object"==typeof e&&-1===t.indexOf(e)){t.push(e);for(const t in e)n.push(e[t])}}return r}(e)>5e4?(R(A,["Message too large to send to the logger.",r]),"Log argument greater than 50KB. Check local Console to see output of the object."):e));try{for(let e=0;e<r.length;e++)r[e]instanceof Error&&(r[e]=r[e].toString());i=new _(e,n,JSON.stringify(r))}catch(t){r.splice(0,r.length),r.push(w()),i=new _(e,n,`*** Logging Error: ${JSON.stringify(r)}`)}o||!function(e){return!0===e.logData.includes("Finsemble.heartbeat")}(i)?function(e){if(y.length<2e4)y.push(e);else{console.error("Logging Queue Overflowed! Dumping queue here then continuing.",y.length);let e,n=0;for(;e=y.shift();)console.log("Message "+n++,e);t.Logger.system.error("Logging Queue Overflowed! Dumping queue in client then continuing.")}}(i):++m<=5&&R(A,[`"Filtered Logger Message (${m} of first 5 shown)`,i]),f&&O()}function D(){const{windowName:e}=o.Startup.getInstance().getStartupData();v=e,window.top!==window&&(v=`${v}.Frame`);const t=`finsemble.logger.client.${v}`;!c&&r.System.isBrowserView()&&(c=r.System.getViewId()),d.system.debug("logger.service.registering",v),r.System.Window.getCurrent().getOptions((n=>{const r=n?.customData?.component?.centralLoggerNamePrefix;i.RouterClient.query("logger.service.register",{clientName:v,clientChannel:t,windowName:e,viewId:c,centralLoggerNamePrefix:r},((e,t)=>{if(e)setTimeout(D,750);else{for(const e of y)e.viewId=c;f=!0,d.system.debug("logger.service.registered"),p=t.data,"routerService"!==v?(g=h,S(p,!0)):S(p,!1),k("system","Debug",["Logger Registered"]),O()}}))})),i.RouterClient.addListener(t,((e,t)=>{d.system.debug("logger.client.setLogState",t.data),p=t.data,S(p,!1)}))}O=a(O,"routerService"===v?100:250,{leading:!1}),this.error=function(){const e=Array.prototype.slice.call(arguments);e.push(w()),b.dev.Error&&!b.dev.LocalOnly&&k("dev","Error",e),e.unshift(`dev error (${window.performance.now()}):`),R(E,e)},this.warn=function(){if(b.dev.Warn){const e=Array.prototype.slice.call(arguments);e.push(w()),b.dev.Warn&&!b.dev.LocalOnly&&k("dev","Warn",e),b.dev.Warn&&b.dev.LocalOnly&&(e.unshift(`dev warn (${window.performance.now()}):`),R(C,e))}},this.info=function(){if(b.dev.Info){const e=Array.prototype.slice.call(arguments);b.dev.Info&&!b.dev.LocalOnly&&k("dev","Info",e),b.dev.Info&&b.dev.LocalOnly&&(e.unshift(`dev info (${window.performance.now()}):`),R(A,e))}},this.log=function(){if(b.dev.Log){const e=Array.prototype.slice.call(arguments);b.dev.Log&&!b.dev.LocalOnly&&k("dev","Log",e),b.dev.Log&&b.dev.LocalOnly&&(e.unshift(`dev log (${window.performance.now()}):`),R(I,e))}},this.debug=function(){if(b.dev.Debug){const e=Array.prototype.slice.call(arguments);b.dev.Debug&&!b.dev.LocalOnly&&k("dev","Debug",e),b.dev.Debug&&b.dev.LocalOnly&&(e.unshift(`dev debug (${window.performance.now()}):`),R(L,e))}},this.verbose=function(){if(b.dev.Verbose){const e=Array.prototype.slice.call(arguments);b.dev.Verbose&&!b.dev.LocalOnly&&k("dev","Verbose",e),b.dev.Verbose&&b.dev.LocalOnly&&(e.unshift(`dev verbose (${window.performance.now()}):`),R(L,e))}},this.deprecated=this.error,this.system={},this.system.error=function(){const e=Array.prototype.slice.call(arguments);e.push(w()),b.system.Error&&!b.system.LocalOnly&&k("system","Error",e),e.unshift(`system error (${window.performance.now()}):`),R(E,e)},this.system.warn=function(){if(b.system.Warn){const e=Array.prototype.slice.call(arguments);e.push(w()),b.system.Warn&&!b.system.LocalOnly&&k("system","Warn",e),b.system.Warn&&b.system.LocalOnly&&(e.unshift(`system warn (${window.performance.now()}):`),R(C,e))}},this.system.info=function(){if(b.system.Info){const e=Array.prototype.slice.call(arguments);b.system.Info&&!b.system.LocalOnly&&k("system","Info",e),b.system.Info&&b.system.LocalOnly&&(e.unshift(`system info (${window.performance.now()}):`),R(A,e))}},this.system.log=function(){if(b.system.Log){const e=Array.prototype.slice.call(arguments);b.system.Log&&!b.system.LocalOnly&&k("system","Log",e),b.system.Log&&b.system.LocalOnly&&(e.unshift(`system log (${window.performance.now()}):`),R(I,e))}},this.system.debug=function(){if(b.system.Debug){const e=Array.prototype.slice.call(arguments);b.system.Debug&&!b.system.LocalOnly&&k("system","Debug",e),b.system.Debug&&b.system.LocalOnly&&(e.unshift(`system debug (${window.performance.now()}):`),R(L,e))}},this.system.verbose=function(){if(b.system.Verbose){var e=Array.prototype.slice.call(arguments);b.system.Verbose&&!b.system.LocalOnly&&k("system","Verbose",e),b.system.Verbose&&b.system.LocalOnly&&((e=Array.prototype.slice.call(arguments)).unshift(`system log (${window.performance.now()}):`),R(L,e))}},this.system.deprecated=this.system.error,this.perf={},this.perf.error=function(){const e=Array.prototype.slice.call(arguments);e.push(w()),b.perf.Error&&!b.perf.LocalOnly&&k("perf","Error",e),e.unshift(`perf error (${window.performance.now()}):`),R(E,e)},this.perf.warn=function(){if(b.perf.Warn){const e=Array.prototype.slice.call(arguments);e.push(w()),b.perf.Warn&&!b.perf.LocalOnly&&k("perf","Warn",e),b.perf.Warn&&b.perf.LocalOnly&&(e.unshift(`perf warn (${window.performance.now()}):`),R(C,e))}},this.perf.info=function(){if(b.perf.Info){const e=Array.prototype.slice.call(arguments);b.perf.Info&&!b.perf.LocalOnly&&k("perf","Info",e),b.perf.Info&&b.perf.LocalOnly&&(e.unshift(`perf info (${window.performance.now()}):`),R(A,e))}},this.perf.log=function(){if(b.perf.Log){const e=Array.prototype.slice.call(arguments);b.perf.Log&&!b.perf.LocalOnly&&k("perf","Log",e),b.perf.Log&&b.perf.LocalOnly&&(e.unshift(`perf log (${window.performance.now()}):`),R(I,e))}},this.perf.debug=function(){if(b.perf.Debug){const e=Array.prototype.slice.call(arguments);b.perf.Debug&&!b.perf.LocalOnly&&k("perf","Debug",e),b.perf.Debug&&b.perf.LocalOnly&&(e.unshift(`perf debug (${window.performance.now()}):`),R(L,e))}},this.perf.verbose=function(){if(b.perf.Verbose){const e=Array.prototype.slice.call(arguments);b.perf.Verbose&&!b.perf.LocalOnly&&k("perf","Verbose",e),b.perf.Verbose&&b.perf.LocalOnly&&(e.unshift(`perf verbose (${window.performance.now()}):`),R(L,e))}},this.perf.deprecated=this.perf.error,this.unregisterClient=function(e=null,t=Function.prototype){d.system.debug("logger.service.unregister",v,e,c),O();const n=e||{clientName:v,viewId:c};i.RouterClient.query("logger.service.unregister",n,t)},this.isLogMessage=function(e){return"logger.service.logMessages"===e},this.status="offline",this.setRouterClient=e=>{this.RouterClient=e},this.start=function(){let e;this.startupTime=performance.now(),i.RouterClient||(console.log("No instance of the RouterClient found for this instance of the Logger. Dynamically requiring it."),i.RouterClient=n(39319).default);const t=()=>{e=i.RouterClient.subscribe("Finsemble.Service.State.loggerService",((t,n)=>{"ready"===n.data.state&&(i.status="online",d.system.debug("Logger onReady",v),i.RouterClient.calibrateTimeWithRouterService((e=>{h=e,l||(i.startupTime=performance.now()-i.startupTime,D(),l=!0)})),i.RouterClient.unsubscribe(e))}))};"routerService"===window.name?i.RouterClient.query("logger.service.register",{},(e=>{e?setTimeout(t,750):t()})):i.RouterClient.onReady(t),r.System.isBrowserView()&&window.addEventListener("beforeunload",(()=>{i.unregisterClient()}))}},t.Logger="undefined"!=typeof window?new t.LoggerConstructor:new i.LocalLogger,t.default=t.Logger},40568:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.RouterClientConstructor=void 0;const i=r(n(82369)),o=r(n(13712)),s=r(n(73699)),u=n(51742),a=n(72551),c=n(6192),l=n(75729),f=n(50586),d=[];let p=a.Logger;function h(e,t={}){if(null===e||"object"!=typeof e)return e;if(e.constructor==Date||e.constructor==RegExp||e.constructor==Function||e.constructor==String||e.constructor==Number||e.constructor==Boolean)return new e.constructor(e);t=t||new e.constructor;for(const n in e)t[n]=void 0===t[n]?h(e[n],null):t[n];return t}t.RouterClientConstructor=function(){let e,t;const n={},r={},a={},g={},m={},y={},v={},b={},_={},S={};let w,E=null,C=!1;const A=[];function I(){this.header={origin:w,type:"initialHandshake"}}function L(e,t){this.header={origin:w,type:"timeCalibration"},this.clientBaseTime=e,this.serviceBaseTime=t}function T(e){this.header={origin:w,type:"addListener",channel:e}}function R(e,t,n){this.header={origin:w,type:"transmit",channel:e},this.data=t,this.options=n}function O(e){this.header={origin:w,type:"removeListener",channel:e}}function k(e){this.header={origin:w,type:"addResponder",channel:e}}function D(e,t,n){this.header={origin:w,type:"query",queryID:e,channel:t},this.data=n}function N(e,t,n){this.header={origin:w,type:"queryResponse",queryID:e,error:t},this.data=n}function x(e){this.header={origin:w,type:"removeResponder",channel:e}}function P(e,t){this.header={origin:w,type:"subscribe",subscribeID:e,topic:t}}function M(e,t){this.header={origin:w,type:"unsubscribe",subscribeID:e,topic:t}}function B(e,t){this.header={origin:w,type:"publish",topic:e},this.data=t}function W(e,t,n,r){this.header={origin:w,type:"notify",subscribeID:e,topic:t,error:n},this.data=r}function j(e,t,n){this.header={origin:w,type:"addPubSubResponder",topic:e,handleOnServer:n},this.data=t}function $(e){this.header={origin:w,type:"removePubSubResponder",topic:e}}function F(e){E?E.send(e):(p.system.info("RouterClient: Queuing message since router initialization not complete",e),d.push(e))}function U(){return this.header.origin===this.header.lastClient}function V(e,t){p.system.info("RouterClient: outgoing query response","CHANNEL",this.header.channel,"RESPONSE DATA",t,"QUERY ID",this.header.queryID),F(new N(this.header.queryID,e,t))}function H(e,t){const n=e[t.header.channel];void 0===n?p.system.warn(`RouterClient: no query responder define on channel ${t.header.channel} incoming from ${t.header.origin}`,t):t.header.error?(p.system.warn("RouterClient: queryResponder error",t),n(t.header.error,null),delete e[t.header.channel]):(t.originatedHere=U,t.sendQueryResponse=V.bind(t),p.system.info("RouterClient: incoming query","CHANNEL",t.header.channel,"FROM",t.header.origin,"QUERY MESSAGE",t),n(null,t))}function q(e,t){if(e)p.system.warn("RouterClient: income publish rejected by pubsub responder",e,t);else{g[this.header.topic]=t;const n=y[this.header.topic];if(void 0!==n)for(let r=0;r<n.length;r++)p.system.info("RouterClient: sending pubsub notify","TOPIC",this.header.topic,"NOTIFY DATA",t),F(new W(n[r],this.header.topic,e,t))}}function G(e,t){var n,r,i;(function(e){let t=!1;return void 0===e&&(t=!0),t})(t)||F(new W(this.header.subscribeID,this.header.topic,e,t)),e?p.system.warn("RouterClient: incoming subscription rejected by pubsub responder","TOPIC",this.header.topic,"MESSAGE",this):(n=y,r=this.header.topic,i=this.header.subscribeID,r in n?n[r].push(i):n[r]=[i],p.system.info("RouterClient: incoming subscription added","TOPIC",this.header.topic,"MESSAGE",this))}function z(){!function(e,t,n){let r=!1;if(t in e){const i=y[t];for(let o=0;o<i.length;o++)if(n===i[o]){i.splice(o,1),0===i.length&&delete e[t],r=!0,p.system.info("RouterClient: PubSub removeListener","TOPIC",t,"FROM",n);break}}r||p.system.warn(`RouterClient: tried to remove non-existent listener on ${t} from ${JSON.stringify(n)}`)}(y,this.header.topic,this.header.subscribeID)}function Q(i){switch(p.system.verbose("Incoming Message Type",i.header.type,i),i.header.type){case"transmit":!function(e,t){const n=e[t.header.channel]||[],r=[];if(Array.isArray(n)&&0!==n.length){t.originatedHere=U,n.forEach((e=>{r.push(e)}));for(let e=0;e<r.length;e++)p.isLogMessage(t.header.channel)||p.system.info("RouterClient: incoming transmit","CHANNEL",t.header.channel,"FROM",t.header.origin,"MESSAGE",t),r[e](null,t)}else p.system.warn(`RouterClient: no listener for incoming transmit on channel ${t.header.channel} from ${t.header.origin}`,t)}(n,i);break;case"query":H(r,i);break;case"queryResponse":!function(e,t){const n=e[t.header.queryID];void 0===n?p.system.warn("RouterClient: no handler for incoming query response","QUERY ID",t.header.queryID):(function(e,t){const n=e[t];void 0!==n&&clearTimeout(n)}(S,t.header.queryID),t.header.error?(p.system.debug("RouterClient: incoming queryResponse error",t.header,"QUERY ID",t.header.queryID),n(t.header.error,t)):(p.system.info("RouterClient: incoming query response","RESPONSE MESSAGE",t,"QUERY ID",t.header.queryID),n(null,t)),delete e[t.header.queryID])}(_,i);break;case"notify":!function(e,t){const n=e[t.header.subscribeID];void 0===n?p.system.warn("RouterClient: no subscription handler defined for incoming notify for subscriberID",t.header.subscribeID,t):t.header.error?(p.system.info("RouterClient: incoming PubSub notify error for subscriberID","SUBSCRIBER ID",t.header.subscribeID,"NOTIFY MESSAGE",t),n(t.header.error,t)):(t.originatedHere=U,p.system.info("RouterClient: incoming PubSub notify","SUBSCRIBER ID",t.header.subscribeID,"NOTIFY MESSAGE",t),n(null,t))}(v,i);break;case"publish":!function(e){let t=a[e.header.topic];if(void 0===t)for(const n in m)if(m[n].test(e.header.topic)){t=a[n];break}void 0===t?p.system.warn("RouterClient: no pubsub responder defined for incoming publish","TOPIC",e.header.topic,"PUBLISH MESSAGE",e):(e.sendNotifyToAllSubscribers=q,t.publishCallback?(p.system.info("RouterClient: incoming PubSub publish callback invoked","TOPIC",e.header.topic,"PUBLISH MESSAGE",e),t.publishCallback(null,e)):(p.system.info("RouterClient: incoming PubSub publish","TOPIC",e.header.topic,"PUBLISH MESSAGE",e),e.sendNotifyToAllSubscribers(null,e.data)))}(i);break;case"subscribe":!function(e){p.system.info("RouterClient: PubSub subscribe","TOPIC",e.header.topic);let t=a[e.header.topic];if(void 0===t)for(const n in m)if(m[n].test(e.header.topic)){t=a[n];let r=g[e.header.topic];void 0===r&&(r=g[n]),g[e.header.topic]=r;break}void 0===t?p.system.warn("RouterClient: no pubsub responder defined for incoming subscribe",e):e.header.error?p.system.warn(`RouterClient: pubsub error received from router service: ${JSON.stringify(e.header.error)}`):(e.sendNotifyToSubscriber=G,t.subscribeCallback?(e.data=g[e.header.topic],t.subscribeCallback(null,e)):e.sendNotifyToSubscriber(null,g[e.header.topic]))}(i);break;case"unsubscribe":!function(e){let t=a[e.header.topic];if(void 0===t)for(const n in m)if(m[n].test(e.header.topic)){t=a[n];break}void 0===t?p.system.warn("RouterClient: no pubsub responder defined for incoming unsubscribe","TOPIC",e.header.topic,"UNSUBSCRIBE MESSAGE",e):(e.removeSubscriber=z,t.unsubscribeCallback?(p.system.info("RouterClient: incoming unsubscribe callback","TOPIC",e.header.topic,"UNSUBSCRIBE MESSAGE",e),t.unsubscribeCallback(null,e)):(p.system.info("RouterClient: incoming unsubscribe","TOPIC",e.header.topic,"UNSUBSCRIBE MESSAGE",e),e.removeSubscriber()))}(i);break;case"timeCalibration":const o=()=>{t?t(i):setTimeout((()=>{o()}),10)};o();break;case"initialHandshakeResponse":e()}}function K(e,t){t.header.lastClient=w,t.header.incomingTransportInfo=e,Q(t)}this.startupTime=0,this.notificationURL="";const Y=(t,n,r)=>{let o,u;p.system.debug(`Name of transport to establish: ${n}`),this.notificationURL=t.notificationURL;let a,c,l,f,h=!1,g=0;const m=t=>{u=0,p.system.debug("WINDOW LIFECYCLE:STARTUP:RouterClient:transport ready","TRANSPORT OBJECT",t),E=t,e=f,l(),o=setInterval(l,200)};a=e=>{p.system.error("RouterClientError",e)};const y=()=>{p.system.debug("WINDOW LIFECYCLE:STARTUP:RouterClient:getClientTransport","ROUTER PARAMS:",t),i.default.getTransport(t,n,K,w,"RouterService").then(m).catch(a)};c=()=>{if(clearInterval(o),g++,g<=3)p.system.error("WINDOW LIFECYCLE:STARTUP:RouterClient: failure to connect to router service. Retrying...",g,t),y();else{const e="A cross domain transport has failed to connect. Cross domain components may not work. Please contact your administrator.";p.system.error(e,t),s.default.alert("dev","ONCE-SINCE-STARTUP","FSBL-Internal-Transport-Failure",e,{url:this.notificationURL})}},l=()=>{p.system.debug("WINDOW LIFECYCLE:STARTUP:RouterClient: sendHandshake",u),F(new I),u++>50&&c()},f=()=>{if(!h){if(p.system.debug(`WINDOW LIFECYCLE:STARTUP:RouterClient connected: Starting ${w} with transport ${E.identifier()}`),h=!0,clearInterval(o),d)for(let e=0;e<d.length;e++){p.system.debug("RouterClient: firing queued msg");const t=d[e];E.send(t)}r&&r()}},y()};function J(){return`${w}.${f.v4()}`}function Z(e,t){let n=!1;return void 0!==e[t]&&(delete e[t],n=!0),n}this.calibrateTimeWithRouterService=function(e){let n,r=0,i=1/0;t=function(t){r++,r>5?function(t){let r=0;for(let e=1;e<5;e++){const o=t.clientBaseTime[e-1],s=t.clientBaseTime[e]-o,u=t.serviceBaseTime[e-1]-(o+s/2);s<i&&(i=s,n=u),r+=u,p.system.debug("calibrationCalculation Intermediate Values","lastRRT",s,"lastOffset",u,"fastestOffset",n,"fastestRRT",i)}r/=4,p.system.debug("RouterClient calibrationCalculation","Average Offset",r,"Chosen FastestOffset",n,t),e(n)}(t):(t.clientBaseTime.push(c.Globals.performance.timing.navigationStart+c.Globals.performance.now()),F(new L(t.clientBaseTime,t.serviceBaseTime)))},t(new L([],[]))},this.onReady=e=>new Promise((t=>{o.default.args(e,"function");const n=()=>{e&&e(),t()};C?n():A.push(n)})),this.addListener=function(e,t){p.system.info("RouterClient.addListener","CHANNEL",e),o.default.args(e,"string",t,"function"),function(e,t,n){let r=!1;const i=e[t];return void 0===i||0===i.length?(e[t]=[n],r=!0):i.push(n),r}(n,e,t)&&F(new T(e))},this.transmit=function(e,t,n={suppressWarnings:!1}){p.isLogMessage(e)||p.system.info("RouterClient.transmit","TO CHANNEL",e,"EVENT",t),o.default.args(e,"string",t,"any"),F(new R(e,t,n))},this.removeListener=function(e,t){p.system.info("RouterClient.removeListener","CHANNEL",e,"EVENT HANDLER",t),o.default.args(e,"string",t,"function"),function(e,t,n){let r=!1;const i=e[t];if(void 0!==i){const e=i.indexOf(n);e>-1?(i.splice(e,1),0===i.length&&(r=!0)):p.system.warn(`no listener defined for channel: ${t}`)}return r}(n,e,t)&&F(new O(e))},this.addResponder=(e,t)=>{if(p.system.info("RouterClient.addResponder","CHANNEL",e),o.default.args(e,"string",t,"function"),function(e,t,n){let r=!1;return void 0===e[t]&&(e[t]=n,r=!0),r}(r,e,t))F(new k(e));else{const n=`RouterClient.addResponder: Responder already locally defined for channel ${e}`;p.system.warn(n),t(n,null)}},this.query=(e,t,n,r)=>{const i=`${J()}.${e}`,s=window.performance.timing.navigationStart+window.performance.now(),u=window.performance.timing.navigationStart,a=window.performance.now();return p.system.info("RouterClient.query","RESPONDER CHANNEL",e,"QUERY EVENT",t,"PARAMS",n,"QUERY ID",i,{timestamp:s,navstart:u,timenow:a}),r||(r=n,n={timeout:2e4}),o.default.args(e,"string",t,"any=",n,"object=",r,"function"),n=n||{},o.default.args2("params.timeout",n.timeout,"number"),new Promise((function(o){_[i]=(c,l)=>{o({err:c,response:l}),"function"==typeof r?r(c,l):p.system.warn("No response event handler passed to RouterClient.query","RESPONDER CHANNEL",e,"QUERY EVENT",t,"PARAMS",n,"QUERY ID",i,{timestamp:s,navstart:u,timenow:a})},c.Globals.runningInFSBLUnitTest||function(e,t,n,r){r>0&&(e[t]=setTimeout((()=>{p.system.warn(`RouterClient: timeout waiting on query response on channel ${n} for queryID ${t} on timer ${e[t]} timeout=${r}`)}),r))}(S,i,e,n.timeout),F(new D(i,e,t))}))},this.removeResponder=e=>{p.system.info("RouterClient.removeResponder","RESPONDER CHANNEL",e),o.default.args(e,"string"),Z(r,e)&&F(new x(e))},this.addPubSubResponder=(e,t,n,r)=>{let i,s;p.system.info("RouterClient.addPubSubResponder","TOPIC",e,"INITIAL STATE",t,"PARAMS",n),o.default.args(e,"any",t,"object=",n,"object="),n=n||{},o.default.args2("params.subscribeCallback",n.subscribeCallback,"function=","params.publishCallback",n.publishCallback,"function=")&&o.default.args2("params.unsubscribeCallback",n.unsubscribeCallback,"function="),void 0===n.subscribeCallback&&void 0===n.publishCallback&&void 0===n.unsubscribeCallback?(t=t||{},F(new j(e.toString(),t,!0)),s="success"):!function(e,t,n,r){let i=!1;return void 0===a[e.toString()]&&(e instanceof RegExp&&(m[e.toString()]=e,p.system.info(`RouterClient: PubSub RegEx added for topic ${e.toString()}`)),a[e.toString()]={subscribeCallback:t,publishCallback:n,unsubscribeCallback:r},i=!0),i}(e,n.subscribeCallback,n.publishCallback,n.unsubscribeCallback)?(i=`RouterClient.addPubSubResponder: Responder already locally defined for topic ${e}`,p.system.error(i)):(t=t||{},g[e.toString()]=h(t),F(new j(e.toString(),t,!1)),s="success"),r&&r(i,s)},this.removePubSubResponder=e=>{p.system.info("RouterClient.removePubSubResponder","TOPIC",e),o.default.args(e,"any"),Z(a,e)?(delete g[e.toString()],delete m[e.toString()],F(new $(e))):p.system.warn(`RouterClient.removePubSubResponder failed: Could not find responder for topic ${e}`)},this.subscribe=(e,t)=>{p.system.info("RouterClient.subscribe","TOPIC",e),o.default.args(e,"string",t,"function");const n=J();return function(e,t,n,r){e[t]=n,b[t]=r}(v,n,t,e),F(new P(n,e)),{subscribeID:n,topic:e}},this.publish=(e,t)=>{p.system.info("RouterClient.publish","TOPIC",e,"EVENT",t),o.default.args(e,"string",t,"any"),F(new B(e,t))},this.unsubscribe=e=>{p.system.info("RouterClient.unsubscribe","SUBSCRIBE ID",e),o.default.args(e,"object")&&o.default.args2("subscribeIDStruct.subscribeID",e.subscribeID,"string"),!function(e,t){let n=!1;return void 0!==e[t]&&(delete e[t],n=!0),n}(v,e.subscribeID)?p.system.warn(`RouterClient.unsubscribe: Could not find subscribeID for topic ${e.topic}`):F(new M(e.subscribeID,e.topic))},this.trustedMessage=function(e){let t=!0;return p.system.debug("RouterClient.trustedMessage header",e.header),"SharedWorker"===e.header.originIncomingTransportInfo.transportID&&(t=!0),t},this.disconnectAll=function(){p.system.info("RouterClient.disconnectAll");for(const e in n)p.system.debug(`RouterClient.disconnectAll is removing listener on ${e}`),F(new O(e)),delete n[e];for(const e in r)p.system.debug(`RouterClient.disconnectAll is removing responder on ${e}`),F(new x(e)),delete r[e];for(const e in a)p.system.debug(`RouterClient.disconnectAll is removing pubsub responder on ${e}`),F(new $(e)),delete a[e.toString()],delete g[e.toString()],delete m[e.toString()];for(const e in v){const t=b[e];p.system.debug(`RouterClient.disconnectAll is removing subscriber on ${t}`),F(new M(e,t)),delete v[e],delete b[e]}},this.start=e=>new Promise((async t=>{if(this.started){const e="RouterClient.start() called twice. Ignoring second call.";return p.warn(e),t(e)}this.started=!0,p=new l.LocalLogger,"loggerService"===u.System.Window.getCurrent().name&&(p=new l.LocalLogger),w=`RouterClient.${e.windowName}.${f.v4()}`;const n=`"RouterClient Check: connecting new client for ${w}`;p.system.debug(n),console.debug(n),Y(e,e.transportName,(()=>{!function(){for(p.system.debug("WINDOW LIFECYCLE:STARTUP:RouterClient Ready"),C=!0;A.length>0;)p.system.debug("WINDOW LIFECYCLE:STARTUP:RouterClient parentReady invoked"),A.shift()()}(),t(null)}))})),this.stop=()=>{this.disconnectAll(),i.default.close(),this.started=!1}}},39319:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RouterConnectionInstance=t.RouterConnectionSingleton=void 0;const r=n(40568),i=n(72551),o=n(4971);t.RouterConnectionSingleton=o.singleton("RouterClient",r.RouterClientConstructor),i.Logger.setRouterClient(t.RouterConnectionSingleton);var s=n(40568);Object.defineProperty(t,"RouterConnectionInstance",{enumerable:!0,get:function(){return s.RouterClientConstructor}}),t.default=t.RouterConnectionSingleton},6192:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Globals=void 0,t.Globals="undefined"==typeof window?n.g:window},4971:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.singleton=void 0,t.singleton=(e,t)=>{const r=Symbol.for(`com.finsemble.singleton.${e}`);return Object.getOwnPropertySymbols(n.g).indexOf(r)>-1||(n.g[r]=new t),n.g[r]}},78379:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.MOVE_REASON=t.LAUNCHER_SERVICE=t.HEARTBEAT_TIMEOUT_CHANNEL=t.COMPONENT_STATE_STORAGE_TOPIC=t.WINDOW_SERVICE_REQUESTS=t.WORKSPACE=t.WINDOW=t.INTERRUPTIBLE_EVENTS=t.EVENT_INTERRUPT_CHANNEL=t.DOCKING=t.SERVICE_STOP_CHANNEL=t.SERVICE_START_CHANNEL=t.WINDOWSTATE=t.SERVICES_STATE_CHANNEL=t.CLIENT_SERVER_MAPPING=t.SERVICE_QUERY_READY_CHANNEL=t.SERVICE_CLOSED_CHANNEL=t.SERVICE_CLOSING_CHANNEL=t.SERVICE_READY_CHANNEL=t.SERVICE_INITIALIZING_CHANNEL=t.APPLICATION_STATE_CHANNEL=t.WRAPPERS=void 0,t.WRAPPERS={EVENTS:["title-changed","bringToFront","setBounds","alwaysOnTop","setOpacity"]},t.APPLICATION_STATE_CHANNEL="Finsemble.Application.State",t.SERVICE_INITIALIZING_CHANNEL="Finsemble.ServiceManager.serviceInitializing",t.SERVICE_READY_CHANNEL="Finsemble.ServiceManager.serviceReady",t.SERVICE_CLOSING_CHANNEL="Finsemble.ServiceManager.serviceClosing",t.SERVICE_CLOSED_CHANNEL="Finsemble.ServiceManager.serviceClosed",t.SERVICE_QUERY_READY_CHANNEL=e=>`Finsemble.ServiceManager.queryReady.${e}`,t.CLIENT_SERVER_MAPPING=e=>({authenticationClient:"authenticationService",configClient:"configService",distributedStoreClient:"dataStoreService",hotkeysClient:"hotkeysService",linkerClient:"linkerService",logger:"loggerService",searchClient:"searchService",storageClient:"storageService",windowClient:"windowService",workspaceClient:"workspaceService"}[e]),t.SERVICES_STATE_CHANNEL="Finsemble.State.Services",(n=t.WINDOWSTATE||(t.WINDOWSTATE={}))[n.NORMAL=0]="NORMAL",n[n.MINIMIZED_WAS_NORMAL=1]="MINIMIZED_WAS_NORMAL",n[n.MAXIMIZED=2]="MAXIMIZED",n[n.MINIMIZED_WAS_MAXIMIZED=3]="MINIMIZED_WAS_MAXIMIZED",n[n.TRANSITIONING=4]="TRANSITIONING",t.SERVICE_START_CHANNEL="Finsemble.Service.Start",t.SERVICE_STOP_CHANNEL="Finsemble.Service.Stop",t.DOCKING={GROUP_UPDATE:"DockingService.groupUpdate",WORKSPACE_GROUP_UPDATE:"Finsemble.WorkspaceService.groupUpdate",REQUEST_PUBLISH:"DockingService.requestGroupDataPublish"},t.EVENT_INTERRUPT_CHANNEL="Finsemble.Event.Interrupt",t.INTERRUPTIBLE_EVENTS=["close-requested","closed","close-complete","_container-close-handlers"],t.WINDOW={DELAYABLE_EVENTS:["close-requested","closed","close-complete","_container-close-handlers"],CANCELABLE_EVENTS:["close-requested"]},t.WORKSPACE={DELAYABLE_EVENTS:["load-requested","close-requested","save-requested"],CANCELABLE_EVENTS:["close-requested"],CLEAN_SHUTDOWN:"Finsemble.Workspace.cleanShutdown",UPDATE_PUBSUB:"Finsemble.WorkspaceService.update",STORAGE_TOPIC:"finsemble.workspace",CACHE_STORAGE_TOPIC:"finsemble.workspace.cache",ALL_WORKSPACES:"finsemble.allWorkspaces",ACTIVE_WORKSPACE:"activeWorkspace",LAST_USED_WORKSPACE_TOPIC:"finsemble",LAST_USED_WORKSPACE_NAME:"finsemble.lastUsedWorkspace.name",LAST_USED_WORKSPACE:"finsemble.lastUsedWorkspace",INITIAL_WORKSPACE_PREFERENCE:"finsemble.initialWorkspace",PUBLISH_REASONS:{INIT:"workspace:initialization",LOAD_DATA_RETRIEVED:"workspace:load:dataRetrieved",LOAD_FINISHED:"workspace:load:finished",WINDOW_REMOVED:"window:remove",WINDOW_ADDED:"window:add",LOAD_STARTED:"workspace:load:start",WORKSPACE_REMOVED:"Workspace:remove",WORKSPACE_RENAMED:"rename",SWITCHTO_TERMINATED:"workspace:switchTo:terminated",NEW_WORKSPACE:"new workspace",SAVE_AS:"APPLICATION LIFECYCLE:WORKSPACE LIFECYCLE:SaveAs:Workspace:Save As"},API_CHANNELS:{NEW_WORKSPACE:"Finsemble.Workspace.NewWorkspace",SAVE:"Finsemble.Workspace.Save",RENAME:"Finsemble.Workspace.Rename",SAVE_AS:"Finsemble.Workspace.SaveAs",SWITCH_TO:"Finsemble.Workspace.SwitchTo",IMPORT:"Finsemble.Workspace.Import",EXPORT:"Finsemble.Workspace.Export",REMOVE:"Finsemble.Workspace.Remove",SAVE_GLOBAL_DATA:"Finsemble.Workspace.SaveGlobalData",SAVE_VIEW_DATA:"Finsemble.Workspace.SaveViewData",GET_GLOBAL_DATA:"Finsemble.Workspace.GetGlobalData",GET_VIEW_DATA:"Finsemble.Workspace.GetViewData",GET_WORKSPACES:"Finsemble.Workspace.GetWorkspaces",GET_WORKSPACE_NAMES:"Finsemble.Workspace.GetWorkspaceNames",SET_WORKSPACE_ORDER:"Finsemble.Workspace.SetWorkspaceOrder",GET_ACTIVE_WORKSPACE:"Finsemble.Workspace.GetActiveWorkspace",GET_ACTIVE_WORKSPACE_DIRTY:"Finsemble.Workspace.GetActiveWorkspaceDirty",GET_TEMPLATES:"Finsemble.Workspace.GetTemplates",IMPORT_TEMPLATE:"Finsemble.Workspace.ImportTemplate",EXPORT_TEMPLATE:"Finsemble.Workspace.ExportTemplate",REMOVE_TEMPLATE:"Finsemble.Workspace.RemoveTemplate",SET_WINDOW_STATE:"Finsemble.Workspace.SetWindowData",GET_WINDOW_STATE:"Finsemble.Workspace.GetWindowData",ADD_WINDOW:"WorkspaceService.addWindow",REMOVE_WINDOW:"WorkspaceService.removeWindow"},DEFAULT_WINDOW_PROPS:["name","componentType","windowType","alwaysOnTop","autoShow","minWidth","minHeight","maxWidth","maxHeight","resizable","maximizable","minimizable","opacity","windowState","left","top","width","height","right","bottom","defaultLeft","defaultTop","defaultWidth","defaultHeight","defaultRight","defaultBottom","monitorInfo","icon","cachedBounds","showTaskbarIcon","isEvergreen","compositeComponentData"],ADDITIONAL_WINDOW_PROPS:{WebWindow:["url","fullscreen","frame","backgroundColor","transparent","waitForPageLoad","affinity","appUUID"],NativeWindow:["path","alias","arguments","argumentsAsQueryString","isWPF"],StackedWindow:["childWindowIdentifiers","visibleWindowIdentifier","bounds"]}},t.WINDOW_SERVICE_REQUESTS={REMOTE_FOCUS:"WindowService.remoteFocus",SET_ALWAYS_ON_TOP:"WindowService-Request-setAlwaysOnTop",IS_ALWAYS_ON_TOP:"WindowService-Request-isAlwaysOnTop"},t.COMPONENT_STATE_STORAGE_TOPIC="finsemble.componentStateStorage",t.HEARTBEAT_TIMEOUT_CHANNEL="Finsemble.WindowService.HeartbeatTimeout",t.LAUNCHER_SERVICE={WINDOW_CLOSED:"LauncherService.WindowClosed"},t.MOVE_REASON={AERO_KEY:"aero_key",SYSTEM_RESTORED:"system_restored"}},13854:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FSBLDependencyManagerSingleton=t.FSBLDependencyManager=void 0;const i=n(5939),o=r(n(39319)),s=n(78379),u=r(n(5020)),a=r(n(72551));class c extends i.EventEmitter{constructor(e){super(),this.callback=e.callback,this.dependencies=e.dependencies,this.startupTimer=null,this.setStartupTimer=this.setStartupTimer.bind(this),this.clearStartupTimer=this.clearStartupTimer.bind(this)}clearStartupTimer(){this.startupTimer&&clearTimeout(this.startupTimer),delete this.startupTimer}setStartupTimer(){const e=this;this.startupTimer=+setTimeout((()=>{e.emit("timeout")}),1e4)}}function l(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(e=>{const t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}))}class f{constructor(){this.servicesAreAllOnline={},this.clientsAreAllOnline={},this.onlineClients=[],this.dependencies={},this.startupTimers={},this.startupTimerFired=!1,this.bindCorrectContext()}waitFor(e,t){const n=l();e.clients||(e.clients=[]),e.clients.length&&(e.clients=e.clients.map((e=>e.charAt(0).toLowerCase()+e.slice(1))));const r=new c({dependencies:e,callback:t});return r.setStartupTimer(),r.on("timeout",(()=>{this.onDependencyTimeout(r)})),this.dependencies[n]=r,this.checkDependencies(),r}onDependencyTimeout(e){const t=this.getOfflineClients();let n="APPLICATION LIFECYCLE:STARTUP:Dependency not online after 10 seconds.";t.length&&(n=`${n} Waiting for these clients: ${t.join(", ")}.`),e.emit("err",n)}checkDependencies(){for(const e in this.dependencies){const t=this.dependencies[e],{dependencies:n,callback:r}=t;(!n.clients.length||this.clientsAreAllOnline[e]||(this.clientsAreAllOnline[e]=this.checkClients(n.clients),this.clientsAreAllOnline[e]))&&(delete this.dependencies[e],t.clearStartupTimer(),r&&r())}}getOfflineClients(){let e=[];for(const t in this.dependencies){const{dependencies:n}=this.dependencies[t];e=e.concat(n.clients.filter((e=>!this.onlineClients.includes(e))))}return e.filter(((t,n)=>e.indexOf(t)===n))}checkClients(e){return e.every((e=>this.onlineClients.includes(e)))}setClientOnline(e){this.onlineClients.includes(e)||(this.onlineClients.push(e),this.checkDependencies())}getOnlineClients(){return this.onlineClients}bindCorrectContext(){this.checkDependencies=this.checkDependencies.bind(this),this.checkClients=this.checkClients.bind(this),this.getOfflineClients=this.getOfflineClients.bind(this),this.onDependencyTimeout=this.onDependencyTimeout.bind(this),this.waitFor=this.waitFor.bind(this)}}class d{constructor(){this.offlineServices=[],this.dependencies={},this.checkDependencies=this.checkDependencies.bind(this)}waitFor(e,t){a.default.system.debug("DependencyManager:waitFor",e),e.services||(e.services=[]);const n=l();this.dependencies[n]={dependencies:e,callback:t}}checkDependencies(){if(console.debug("checkDependencies",this.dependencies),Object.keys(this.dependencies))for(const e in this.dependencies){const{dependencies:t,callback:n}=this.dependencies[e];(a.default.system.debug("DependencyManager:checkDependency",t.services,this.offlineServices),!t.services.length||this.checkServices(t.services))&&(console.debug("checkDependencies callback"),delete this.dependencies[e],n&&n())}}checkServices(e){return e.every((e=>this.offlineServices.includes(e)))}setServiceOffline(e){a.default.system.debug("setServiceOffline",e),console.debug("setServiceOffline",e),this.offlineServices.push(e),this.checkDependencies()}}class p extends i.EventEmitter{constructor(){super(),this.startup=new f,this.shutdown=new d,this.RouterClient=o.default,this.AuthorizationCompleted=!1,this.bindCorrectContext(),this.onAuthorizationCompleted(this.startup.checkDependencies),o.default.onReady(this.listenForServices)}bindCorrectContext(){this.listenForServices=this.listenForServices.bind(this),this.onAuthorizationCompleted=this.onAuthorizationCompleted.bind(this)}setClientOnline(e){this.startup.setClientOnline(e)}onServiceStateChange(e){Object.keys(e).forEach((t=>{const{state:n}=e[t];"closed"===n&&this.shutdown.setServiceOffline(t)}))}listenForServices(){a.default.system.debug("DependencyManager:listenForServices before wait"),u.default.waitForBootStage("kernel","stageEntered",(()=>{a.default.system.debug("DependencyManager:listenForServices after wait"),this.RouterClient.subscribe(s.SERVICES_STATE_CHANNEL,((e,t)=>{a.default.system.debug("DependencyManager:listenForServices SERVICES_STATE_CHANNEL",t.data),this.onServiceStateChange(t.data)})),this.RouterClient.addListener(s.SERVICE_CLOSED_CHANNEL,((e,t)=>{a.default.system.debug("DependencyManager:listenForServices SERVICE_CLOSED_CHANNEL",t.data);const n={};n[t.data.name]={state:"closed"},this.onServiceStateChange(n)})),this.RouterClient.subscribe(s.APPLICATION_STATE_CHANNEL,((e,t)=>{switch(t.data.state){case"authenticated":case"ready":break;case"closing":this.shutdown.checkDependencies()}}))}))}onAuthorizationCompleted(e){this.AuthorizationCompleted?e():this.addListener("AuthorizationCompleted",e)}}t.FSBLDependencyManager=p,t.FSBLDependencyManagerSingleton=new p,t.default=t.FSBLDependencyManagerSingleton},82369:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(72551)),o=n(51742),s={activeTransports:{},liveTransport:null,addTransport(e,t){this.activeTransports[e]=t,i.default.system.log(`RouterTransport ${e} added to activeTransports`)},getActiveTransports(e){const t=[];function n(e){-1===t.indexOf(e)&&t.push(e)}return o.System.InterApplicationBus&&n("IPCBus"),n("FinsembleTransport"),SharedWorker&&n("SharedWorker"),n(e.sameDomainTransport),n(e.crossDomainTransport),i.default.system.log("getActiveTransports",t),t},getTransport:(e,t,n,r,i)=>new Promise(((o,u)=>{const a=s.activeTransports[t];a?s.liveTransport=new a(e,n,r,i,(e=>{o(e)})):u(`unknown router transport name: ${t}`)})),close(){s.liveTransport&&(s.liveTransport.close(),s.liveTransport=null)}},u=function(e,t,n,r,o){let s;const u=this;this.send=function(e,t){1===arguments.length?(t=arguments[0],e=null):(e=arguments[0],t=arguments[1]),i.default.system.verbose("SharedWorkerTransport Outgoing Transport",t);try{s.port.postMessage([e,t])}catch(e){i.default.system.error(`SharedWorkerTransport: post message failed: ${JSON.stringify(e)}`,"Probable cause is sending illegal data type (e.g. function).")}},this.identifier=function(){return"SharedWorker"};const a=e.transportSettings.SharedWorker&&e.transportSettings.SharedWorker.workerPath?e.transportSettings.SharedWorker.workerPath:`${e.routerDomainRoot}/common/routerSharedWorker.js`;i.default.system.log(`SharedWorker Transport Initializing for ${n} using ${a}`),console.log(`SharedWorker Transport Initializing for ${n} using ${a}`),s=new SharedWorker(a,{name:"Finsemble",credentials:"include"}),s.port.onmessage=function(e){const n=e.data[0],r=e.data[1],o={transportID:u.identifier(),port:n};i.default.system.verbose("SharedWorkerTransport Incoming Transport",o,"Message",r),t(o,r)},s.onerror=function(e){i.default.system.error(`SharedWorkerTransport Transport Error${JSON.stringify(e)}`)},s.port.start(),"RouterService"===n&&s.port.postMessage({data:"connect",source:"RouterService"}),this.close=()=>{s.port.close()},o(this)},a=function(e,t,n,r,s){const{uuid:u}=o.System.Application.getCurrent(),a=this;this.send=function(e,t){let n;1===arguments.length?(n=r,t=arguments[0]):(n=e.name,t=arguments[1]),i.default.system.verbose("IPCTransport Outgoing Transport",u,n,"Message",t),o.System.InterApplicationBus.publish(n,t,(()=>{}),(()=>{}))},this.identifier=function(){return"IPCBus"},i.default.system.log(`IPCBus Transport Initializing for ${n}`),console.log(`IPCBus Transport Initializing for ${n}`);const c=o.System.InterApplicationBus.subscribe("*",n,(function(e,n){const r={transportID:a.identifier(),senderUuid:n,name:e.header.origin};i.default.system.verbose("IPCTransport Incoming Transport",r,"Message",e),t(r,e)}),(()=>{}),(function(e){i.default.system.error(`IPCBus Subscribe Failure: ${e}`)}));this.close=()=>{o.System.InterApplicationBus.unsubscribe(c)},s(this)},c=function(e,t,n,r,o){const s=`${e?.transportSettings?.FinsembleTransport?.serverAddress??e?.transportSettings?.serverAddress??"ws://127.0.0.1:3376"}/router`,u=this;let a;function c(){i.default.system.error(`FinsembleTransport Connection Timeout for ${n}`),o(u)}function l(){i.default.system.log(`FinsembleTransport Transport Initializing for ${n} using ${s}`),console.log(`FinsembleTransport Transport Initializing for ${n} using ${s}`),s.startsWith("ws:")||s.startsWith("wss:")||console.error(`Illegal WebSocket address "${s}" (Missing ws:// or wss:// ?)`),a=new WebSocket(s);const e=setTimeout(c,3e3);a.addEventListener("open",(()=>{clearTimeout(e),i.default.system.log("FinsembleTransport Connected to Server"),console.log("FinsembleTransport Connected to Server"),a.addEventListener("message",(e=>{const r=JSON.parse(e.data);("RouterService"===n&&"ROUTER_SERVICE"==r.dest||n===r.message.client)&&function(e){const n={transportID:u.identifier(),client:e.clientMessage.header.origin};i.default.system.verbose("FinsembleTransport Incoming Transport",n,"Message",e),t(n,e.clientMessage)}(r.message)})),o(u)}))}this.send=function(e,t){let n,r;1===arguments.length?(n="ROUTER_SERVICE",r={clientMessage:t=arguments[0]}):(n="ROUTER_CLIENT",t=arguments[1],r={client:e.client,clientMessage:t}),i.default.system.verbose("FinsembleTransport Outgoing Transport",n,"NewMessage",r),a.readyState===WebSocket.OPEN&&a.send(JSON.stringify({dest:n,message:r})),a.readyState===WebSocket.CONNECTING&&a.addEventListener("open",(()=>{a.send(JSON.stringify({dest:n,message:r}))})),a.readyState===WebSocket.CLOSED&&(l(),a.addEventListener("open",(()=>{a.send(JSON.stringify({dest:n,message:r}))}))),a.readyState===WebSocket.CLOSING&&(a.onclose=()=>{l(),a.addEventListener("open",(()=>{a.send(JSON.stringify({dest:n,message:r}))}))})},this.identifier=function(){return"FinsembleTransport"},this.close=()=>{a.close()},l()};s.addTransport("SharedWorker",u),s.addTransport("IPCBus",a),s.addTransport("FinsembleTransport",c),t.default=s},51742:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.System=void 0;const r=n(16925);class i{constructor(e,t,n){return new fin.desktop.Window(e,t)}static get getCurrent(){return fin.desktop.Window.getCurrent}static get wrap(){return fin.desktop.Window.wrap}}class o{constructor(e,t,n){t&&t()}static getCurrent(){const{windowName:e}=r.Startup.getInstance().getStartupData();return{name:e,uuid:`${e}-uuid`,getOptions:e=>{e&&e({})},addEventListener:()=>{},updateOptions:()=>{},close:()=>{},startMovingWindow:()=>{},stopMovingWindow:()=>{},isShowing:()=>{},bringToFront:()=>{},show:()=>{},hide:()=>{},setTaskbarIcon:()=>{}}}static wrap(){return{}}}class s{constructor(e,t,n){return new fin.desktop.Application(e,t)}static get getCurrent(){return fin.desktop.Application.getCurrent}static get wrap(){return fin.desktop.Application.wrap}}class u{constructor(e){new fin.desktop.Notification(e)}}class a{constructor(){return new fin.desktop.System.Clipboard}static get writeText(){return fin.desktop.System.Clipboard.writeText}static get writeHTML(){return fin.desktop.System.Clipboard.writeHTML}static get writeRTF(){return fin.desktop.System.Clipboard.writeRTF}static get readText(){return fin.desktop.System.Clipboard.readText}static get readHTML(){return fin.desktop.System.Clipboard.readHTML}static get readRTF(){return fin.desktop.System.Clipboard.readRTF}}class c{static isFreestanding(){return"undefined"==typeof fin}static get Application(){return s}static get Window(){return c.isFreestanding()?o:i}static get Notification(){return u}static get Clipboard(){return a}static async getMousePosition(e=Function.prototype){return new Promise(((t,n)=>{fin.desktop.System.getMousePosition((n=>{(n.left||0===n.left)&&(n.x=n.left),(n.top||0===n.top)&&(n.y=n.top),e(null,n),t(n)}),(t=>{e(t,null),n(t)}))}))}static getSDServerInfo(e=Function.prototype){return new Promise((t=>{fin.desktop.System.getSDServerInfo((n=>{t(n),e(n)}))}))}static getMonitorInfo(e=Function.prototype){return new Promise((t=>{fin.desktop.System.getMonitorInfo((n=>{t(n),e(n)}))}))}static container(){return"undefined"==typeof fin?"freestanding":fin.container?fin.container:"FEA"}static isBrowserView(){return!c.isFreestanding()&&fin.isBrowserView()}static getViewId(){return fin.getViewId()}static hasBrowserView(){return!c.isFreestanding()&&fin.hasBrowserView()}static get fin(){return fin||{}}static ready(e){return new Promise((t=>{fin.desktop.main((()=>{e&&e(),t()}))}))}static getHostSpecs(e=Function.prototype){return new Promise((t=>{fin.desktop.System.getHostSpecs((n=>{t(n),e(n)}))}))}static get InterApplicationBus(){return fin.desktop.InterApplicationBus}static get launchExternalProcess(){return fin.desktop.System.launchExternalProcess}static get terminateExternalProcess(){return fin.desktop.System.terminateExternalProcess}static get getAllApplications(){return fin.desktop.System.getAllApplications}static get exit(){return fin.desktop.System.exit}static get clearCache(){return fin.desktop.System.clearCache}static get showDeveloperTools(){return fin.desktop.System.showDeveloperTools}static get getRuntimeInfo(){return fin.desktop.System.getRuntimeInfo}static get addEventListener(){return c.isFreestanding()?window.addEventListener:fin.desktop.System.addEventListener}static get addSelectClientCertificateListener(){return fin.desktop.System.addSelectClientCertificateListener}static get addCertificateErrorListener(){return fin.desktop.System.addCertificateErrorListener}static get getVersion(){return fin.desktop.System.getVersion}static get getUpdateAvailable(){return fin.desktop.System.getUpdateAvailable}static get openUrlWithBrowser(){return fin.desktop.System.openUrlWithBrowser}static get getAllWindows(){return fin.desktop.System.getAllWindows}static get getProcessList(){return fin.desktop.System.getProcessList}static get getProtocolString(){return fin.desktop.System.getProtocolString}static get hideSplashScreen(){return fin.desktop.System.hideSplashScreen}static startupApplicationHandshake(){fin.desktop.System.startupApplicationHandshake&&fin.desktop.System.startupApplicationHandshake()}static closeApplication(e,t=Function.prototype){return new Promise((n=>{let r,i=!1;const o=()=>{i||(console.log("Attempting to terminate",e.uuid),e.terminate((()=>{t(),n()}),(()=>{i||(i=!0,clearInterval(r),console.log("force closing ",e.uuid),e.terminate())})))};r=setInterval(o,2e3),console.log("closing ",e.uuid),e.close(!1,(()=>{console.log("app.close: successfully closed",e.uuid),i=!0,clearInterval(r),t(),n()}),o)}))}}t.System=c},5020:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(39319)),o=r(n(72551)),s=n(56188),u=n(33509),a=n(95269),c=new class{publishBootStatus(e,t,n){console.log("publishStartingStatus",e,n),o.default.system.debug("publishBootStatus",e,t,n),i.default.publish(a.statusChannel(e),{name:e,type:t,state:n})}waitForBootStage(e,t,n=Function.prototype){return new Promise(((r,a)=>{o.default.system.debug("SystemManagerClient.waitForBootStage entry",e,t);const c=s.ALL_BOOT_STAGES.indexOf(e);"microkernel"===e&&"stageEntered"===t&&o.default.system.error("Cannot wait on `stageEntered` for microkernel because router isn't up yet. So will instead wait for microkernal stage complete.");const l=i.default.subscribe(u.STAGE_CHANNEL,((u,f)=>{if(o.default.system.debug("SystemManagerClient.waitForBootStage new stage",f.data.stage,l),u)o.default.system.error("SystemManagerClient.waitForBootStage subscribe error",u),n(u),a(u);else if(-1===c)u="illegal stage argument",o.default.system.debug("SystemManagerClient.waitForBootStage subscribe error",u,e),n(u),a(u);else{const u=s.ALL_BOOT_STAGES.indexOf(f.data.stage);o.default.system.debug("SystemManagerClient.waitForBootStage new stage",f.data,l),"stageEntered"===t&&u+1>=c?(o.default.system.debug("SystemManagerClient.waitForBootStage stageEntered",e,l,n.name),n(),r(),i.default.unsubscribe(l)):"stageCompleted"===t&&u>=c?(o.default.system.debug("SystemManagerClient.waitForBootStage completed",e,l),n(),r(),i.default.unsubscribe(l)):o.default.system.debug(`SystemManagerClient.waitForBootStage else currentStageIndex=${u} stageIndex=${c} `,u,c,e,l)}}))}))}waitForStartup(e,t=Function.prototype){return new Promise(((n,r)=>{o.default.system.debug(`SystemManagerClient.waitForStartup.${e}`,e);const s=i.default.subscribe(a.statusChannel(e),((u,a)=>{o.default.system.debug("SystemManagerClient.waitForStartup subscribe",e,u,a),u?(o.default.system.error("SystemManagerClient.waitForStartup subscribe error",u),t(u),r()):a.data.name===e&&"completed"===a.data.state&&(o.default.system.debug("SystemManagerClient.waitForStartup completed",e),t(),n(),i.default.unsubscribe(s))}))}))}publishCheckpointState(e,t,n){console.log("publishCheckpoint",e,t,n,a.checkpointChannel(e,t)),o.default.system.debug("publishCheckpoint",e,t,n,a.checkpointChannel(e,t)),i.default.publish(a.checkpointChannel(e,t),{windowName:e,checkpointName:t,state:n})}showSystemLog(){o.default.system.debug("SystemManagerClient.showSystemLog"),i.default.transmit(u.SHOW_SYSLOG_CHANNEL,!0)}systemLog(e,t){o.default.system.debug("SystemManagerClient.systemLog",e,t),i.default.transmit(u.SYSLOG_CHANNEL,{params:e,logMessage:t})}};t.default=c},33509:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CHECKPOINT_CHANNEL_BASE=t.STAGE_CHANNEL=t.STATUS_CHANNEL_BASE=t.SHOW_SYSLOG_CHANNEL=t.SYSLOG_CHANNEL=t.CRITICAL_BOOT_STAGES=t.ALL_BOOT_STAGES=void 0,t.ALL_BOOT_STAGES=["microkernel","kernel","authentication","preuser","earlyuser","user"],t.CRITICAL_BOOT_STAGES=["microkernel","kernel","authentication"],t.SYSLOG_CHANNEL="systemManager.systemlog",t.SHOW_SYSLOG_CHANNEL="systemManager.showSystemlog",t.STATUS_CHANNEL_BASE="systemManager.boot.status",t.STAGE_CHANNEL="systemManager.boot.stage",t.CHECKPOINT_CHANNEL_BASE="systemManager.checkpoint"},56188:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BootReadyItem=t.BootConfigElement=t.ALL_BOOT_STAGES=void 0,t.ALL_BOOT_STAGES=["microkernel","kernel","authentication","preuser","earlyuser","user"],t.BootConfigElement=class{},t.BootReadyItem=class{constructor(e,t,n){this.name=e,this.type=t,this.config=n}}},95269:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.checkpointChannel=t.statusChannel=t.killOldApplications=void 0;const r=n(51742),i=n(33509);t.killOldApplications=function(e){return new Promise((async t=>{r.System.getAllApplications((async n=>{if(n)for(let t=0;t<n.length;t++){const i=n[t];if(i.uuid?.endsWith(`-${e}`)){const e=r.System.Application.wrap(i.uuid);await r.System.closeApplication(e)}}console.log("killOldApplications: finished closing old apps"),t()}))}))},t.statusChannel=function(e){return`${i.STATUS_CHANNEL_BASE}.${e}`},t.checkpointChannel=function(e,t){return`${i.CHECKPOINT_CHANNEL_BASE}.${e}.${t}`}}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={id:r,loaded:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var r=n(78658);return r.default})()}));
2
+ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(self,(function(){return(()=>{var e={57664:(e,t,n)=>{"use strict";function r(e,...t){return(...n)=>e(...t,...n)}function i(e){return function(...t){var n=t.pop();return e.call(this,t,n)}}n.r(t),n.d(t,{default:()=>ht,apply:()=>r,applyEach:()=>R,applyEachSeries:()=>D,asyncify:()=>l,auto:()=>P,autoInject:()=>F,cargo:()=>q,cargoQueue:()=>G,compose:()=>K,concat:()=>Z,concatLimit:()=>J,concatSeries:()=>X,constant:()=>ee,detect:()=>ne,detectLimit:()=>re,detectSeries:()=>ie,dir:()=>se,doUntil:()=>ae,doWhilst:()=>ue,each:()=>le,eachLimit:()=>fe,eachOf:()=>L,eachOfLimit:()=>C,eachOfSeries:()=>O,eachSeries:()=>de,ensureAsync:()=>pe,every:()=>he,everyLimit:()=>ge,everySeries:()=>me,filter:()=>_e,filterLimit:()=>Se,filterSeries:()=>we,forever:()=>Ee,groupBy:()=>Ae,groupByLimit:()=>Ce,groupBySeries:()=>Ie,log:()=>Le,map:()=>T,mapLimit:()=>Y,mapSeries:()=>k,mapValues:()=>Re,mapValuesLimit:()=>Te,mapValuesSeries:()=>Oe,memoize:()=>ke,nextTick:()=>De,parallel:()=>xe,parallelLimit:()=>Pe,priorityQueue:()=>$e,queue:()=>Me,race:()=>Fe,reduce:()=>z,reduceRight:()=>Ue,reflect:()=>Ve,reflectAll:()=>He,reject:()=>Ge,rejectLimit:()=>ze,rejectSeries:()=>Qe,retry:()=>Ye,retryable:()=>Ze,seq:()=>Q,series:()=>Xe,setImmediate:()=>c,some:()=>et,someLimit:()=>tt,someSeries:()=>nt,sortBy:()=>rt,timeout:()=>it,times:()=>st,timesLimit:()=>ot,timesSeries:()=>ut,transform:()=>at,tryEach:()=>ct,unmemoize:()=>lt,until:()=>dt,waterfall:()=>pt,whilst:()=>ft,all:()=>he,allLimit:()=>ge,allSeries:()=>me,any:()=>et,anyLimit:()=>tt,anySeries:()=>nt,find:()=>ne,findLimit:()=>re,findSeries:()=>ie,flatMap:()=>Z,flatMapLimit:()=>J,flatMapSeries:()=>X,forEach:()=>le,forEachSeries:()=>de,forEachLimit:()=>fe,forEachOf:()=>L,forEachOfSeries:()=>O,forEachOfLimit:()=>C,inject:()=>z,foldl:()=>z,foldr:()=>Ue,select:()=>_e,selectLimit:()=>Se,selectSeries:()=>we,wrapSync:()=>l,during:()=>ft,doDuring:()=>ue});var o="function"==typeof setImmediate&&setImmediate,s="object"==typeof process&&"function"==typeof process.nextTick;function u(e){setTimeout(e,0)}function a(e){return(t,...n)=>e((()=>t(...n)))}var c=a(o?setImmediate:s?process.nextTick:u);function l(e){return p(e)?function(...t){const n=t.pop();return f(e.apply(this,t),n)}:i((function(t,n){var r;try{r=e.apply(this,t)}catch(e){return n(e)}if(r&&"function"==typeof r.then)return f(r,n);n(null,r)}))}function f(e,t){return e.then((e=>{d(t,null,e)}),(e=>{d(t,e&&e.message?e:new Error(e))}))}function d(e,t,n){try{e(t,n)}catch(e){c((e=>{throw e}),e)}}function p(e){return"AsyncFunction"===e[Symbol.toStringTag]}function h(e){if("function"!=typeof e)throw new Error("expected a function");return p(e)?l(e):e}function g(e,t=e.length){if(!t)throw new Error("arity is undefined");return function(...n){return"function"==typeof n[t-1]?e.apply(this,n):new Promise(((r,i)=>{n[t-1]=(e,...t)=>{if(e)return i(e);r(t.length>1?t:t[0])},e.apply(this,n)}))}}function m(e){return function(t,...n){return g((function(r){var i=this;return e(t,((e,t)=>{h(e).apply(i,n.concat(t))}),r)}))}}function y(e,t,n,r){t=t||[];var i=[],o=0,s=h(n);return e(t,((e,t,n)=>{var r=o++;s(e,((e,t)=>{i[r]=t,n(e)}))}),(e=>{r(e,i)}))}function v(e){return e&&"number"==typeof e.length&&e.length>=0&&e.length%1==0}const b={};function _(e){function t(...t){if(null!==e){var n=e;e=null,n.apply(this,t)}}return Object.assign(t,e),t}function S(e){return function(...t){if(null===e)throw new Error("Callback was already called.");var n=e;e=null,n.apply(this,t)}}function w(e,t,n,r){let i=!1,o=!1,s=!1,u=0,a=0;function c(){u>=t||s||i||(s=!0,e.next().then((({value:e,done:t})=>{if(!o&&!i){if(s=!1,t)return i=!0,void(u<=0&&r(null));u++,n(e,a,l),a++,c()}})).catch(f))}function l(e,t){if(u-=1,!o)return e?f(e):!1===e?(i=!0,void(o=!0)):t===b||i&&u<=0?(i=!0,r(null)):void c()}function f(e){o||(s=!1,i=!0,r(e))}c()}var E=e=>(t,n,r)=>{if(r=_(r),e<=0)throw new RangeError("concurrency limit cannot be less than 1");if(!t)return r(null);if("AsyncGenerator"===t[Symbol.toStringTag])return w(t,e,n,r);if(function(e){return"function"==typeof e[Symbol.asyncIterator]}(t))return w(t[Symbol.asyncIterator](),e,n,r);var i=function(e){if(v(e))return function(e){var t=-1,n=e.length;return function(){return++t<n?{value:e[t],key:t}:null}}(e);var t,n,r,i,o=function(e){return e[Symbol.iterator]&&e[Symbol.iterator]()}(e);return o?function(e){var t=-1;return function(){var n=e.next();return n.done?null:(t++,{value:n.value,key:t})}}(o):(n=(t=e)?Object.keys(t):[],r=-1,i=n.length,function(){var e=n[++r];return r<i?{value:t[e],key:e}:null})}(t),o=!1,s=!1,u=0,a=!1;function c(e,t){if(!s)if(u-=1,e)o=!0,r(e);else if(!1===e)o=!0,s=!0;else{if(t===b||o&&u<=0)return o=!0,r(null);a||l()}}function l(){for(a=!0;u<e&&!o;){var t=i();if(null===t)return o=!0,void(u<=0&&r(null));u+=1,n(t.value,t.key,S(c))}a=!1}l()},C=g((function(e,t,n,r){return E(t)(e,h(n),r)}),4);function A(e,t,n){n=_(n);var r=0,i=0,{length:o}=e,s=!1;function u(e,t){!1===e&&(s=!0),!0!==s&&(e?n(e):++i!==o&&t!==b||n(null))}for(0===o&&n(null);r<o;r++)t(e[r],r,S(u))}function I(e,t,n){return C(e,1/0,t,n)}var L=g((function(e,t,n){return(v(e)?A:I)(e,h(t),n)}),3),T=g((function(e,t,n){return y(L,e,t,n)}),3),R=m(T),O=g((function(e,t,n){return C(e,1,t,n)}),3),k=g((function(e,t,n){return y(O,e,t,n)}),3),D=m(k);const N=Symbol("promiseCallback");function x(){let e,t;function n(n,...r){if(n)return t(n);e(r.length>1?r:r[0])}return n[N]=new Promise(((n,r)=>{e=n,t=r})),n}function P(e,t,n){"number"!=typeof t&&(n=t,t=null),n=_(n||x());var r=Object.keys(e).length;if(!r)return n(null);t||(t=r);var i={},o=0,s=!1,u=!1,a=Object.create(null),c=[],l=[],f={};function d(e,t){c.push((()=>function(e,t){if(!u){var r=S(((t,...r)=>{if(o--,!1!==t)if(r.length<2&&([r]=r),t){var c={};if(Object.keys(i).forEach((e=>{c[e]=i[e]})),c[e]=r,u=!0,a=Object.create(null),s)return;n(t,c)}else i[e]=r,(a[e]||[]).forEach((e=>e())),p();else s=!0}));o++;var c=h(t[t.length-1]);t.length>1?c(i,r):c(r)}}(e,t)))}function p(){if(!s){if(0===c.length&&0===o)return n(null,i);for(;c.length&&o<t;)c.shift()()}}function g(t){var n=[];return Object.keys(e).forEach((r=>{const i=e[r];Array.isArray(i)&&i.indexOf(t)>=0&&n.push(r)})),n}return Object.keys(e).forEach((t=>{var n=e[t];if(!Array.isArray(n))return d(t,[n]),void l.push(t);var r=n.slice(0,n.length-1),i=r.length;if(0===i)return d(t,n),void l.push(t);f[t]=i,r.forEach((o=>{if(!e[o])throw new Error("async.auto task `"+t+"` has a non-existent dependency `"+o+"` in "+r.join(", "));var s,u;(u=a[s=o])||(u=a[s]=[]),u.push((()=>{0==--i&&d(t,n)}))}))})),function(){for(var e=0;l.length;)e++,g(l.pop()).forEach((e=>{0==--f[e]&&l.push(e)}));if(e!==r)throw new Error("async.auto cannot execute tasks due to a recursive dependency")}(),p(),n[N]}var M=/^(?:async\s+)?(?:function)?\s*\w*\s*\(\s*([^)]+)\s*\)(?:\s*{)/,B=/^(?:async\s+)?\(?\s*([^)=]+)\s*\)?(?:\s*=>)/,W=/,/,j=/(=.+)?(\s*)$/,$=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm;function F(e,t){var n={};return Object.keys(e).forEach((t=>{var r,i=e[t],o=p(i),s=!o&&1===i.length||o&&0===i.length;if(Array.isArray(i))r=[...i],i=r.pop(),n[t]=r.concat(r.length>0?u:i);else if(s)n[t]=i;else{if(r=function(e){const t=e.toString().replace($,"");let n=t.match(M);if(n||(n=t.match(B)),!n)throw new Error("could not parse args in autoInject\nSource:\n"+t);let[,r]=n;return r.replace(/\s/g,"").split(W).map((e=>e.replace(j,"").trim()))}(i),0===i.length&&!o&&0===r.length)throw new Error("autoInject task functions require explicit parameters.");o||r.pop(),n[t]=r.concat(u)}function u(e,t){var n=r.map((t=>e[t]));n.push(t),h(i)(...n)}})),P(n,t)}class U{constructor(){this.head=this.tail=null,this.length=0}removeLink(e){return e.prev?e.prev.next=e.next:this.head=e.next,e.next?e.next.prev=e.prev:this.tail=e.prev,e.prev=e.next=null,this.length-=1,e}empty(){for(;this.head;)this.shift();return this}insertAfter(e,t){t.prev=e,t.next=e.next,e.next?e.next.prev=t:this.tail=t,e.next=t,this.length+=1}insertBefore(e,t){t.prev=e.prev,t.next=e,e.prev?e.prev.next=t:this.head=t,e.prev=t,this.length+=1}unshift(e){this.head?this.insertBefore(this.head,e):V(this,e)}push(e){this.tail?this.insertAfter(this.tail,e):V(this,e)}shift(){return this.head&&this.removeLink(this.head)}pop(){return this.tail&&this.removeLink(this.tail)}toArray(){return[...this]}*[Symbol.iterator](){for(var e=this.head;e;)yield e.data,e=e.next}remove(e){for(var t=this.head;t;){var{next:n}=t;e(t)&&this.removeLink(t),t=n}return this}}function V(e,t){e.length=1,e.head=e.tail=t}function H(e,t,n){if(null==t)t=1;else if(0===t)throw new RangeError("Concurrency must not be zero");var r=h(e),i=0,o=[];const s={error:[],drain:[],saturated:[],unsaturated:[],empty:[]};function u(e,t){return e?t?void(s[e]=s[e].filter((e=>e!==t))):s[e]=[]:Object.keys(s).forEach((e=>s[e]=[]))}function a(e,...t){s[e].forEach((e=>e(...t)))}var l=!1;function f(e,t,n,r){if(null!=r&&"function"!=typeof r)throw new Error("task callback must be a function");var i,o;function s(e,...t){return e?n?o(e):i():t.length<=1?i(t[0]):void i(t)}y.started=!0;var u={data:e,callback:n?s:r||s};if(t?y._tasks.unshift(u):y._tasks.push(u),l||(l=!0,c((()=>{l=!1,y.process()}))),n||!r)return new Promise(((e,t)=>{i=e,o=t}))}function d(e){return function(t,...n){i-=1;for(var r=0,s=e.length;r<s;r++){var u=e[r],c=o.indexOf(u);0===c?o.shift():c>0&&o.splice(c,1),u.callback(t,...n),null!=t&&a("error",t,u.data)}i<=y.concurrency-y.buffer&&a("unsaturated"),y.idle()&&a("drain"),y.process()}}function p(e){return!(0!==e.length||!y.idle()||(c((()=>a("drain"))),0))}const g=e=>t=>{if(!t)return new Promise(((t,n)=>{!function(e,r){const i=(...r)=>{u(e,i),((e,r)=>{if(e)return n(e);t(r)})(...r)};s[e].push(i)}(e)}));u(e),function(e,t){s[e].push(t)}(e,t)};var m=!1,y={_tasks:new U,*[Symbol.iterator](){yield*y._tasks[Symbol.iterator]()},concurrency:t,payload:n,buffer:t/4,started:!1,paused:!1,push(e,t){if(Array.isArray(e)){if(p(e))return;return e.map((e=>f(e,!1,!1,t)))}return f(e,!1,!1,t)},pushAsync(e,t){if(Array.isArray(e)){if(p(e))return;return e.map((e=>f(e,!1,!0,t)))}return f(e,!1,!0,t)},kill(){u(),y._tasks.empty()},unshift(e,t){if(Array.isArray(e)){if(p(e))return;return e.map((e=>f(e,!0,!1,t)))}return f(e,!0,!1,t)},unshiftAsync(e,t){if(Array.isArray(e)){if(p(e))return;return e.map((e=>f(e,!0,!0,t)))}return f(e,!0,!0,t)},remove(e){y._tasks.remove(e)},process(){if(!m){for(m=!0;!y.paused&&i<y.concurrency&&y._tasks.length;){var e=[],t=[],n=y._tasks.length;y.payload&&(n=Math.min(n,y.payload));for(var s=0;s<n;s++){var u=y._tasks.shift();e.push(u),o.push(u),t.push(u.data)}i+=1,0===y._tasks.length&&a("empty"),i===y.concurrency&&a("saturated");var c=S(d(e));r(t,c)}m=!1}},length:()=>y._tasks.length,running:()=>i,workersList:()=>o,idle:()=>y._tasks.length+i===0,pause(){y.paused=!0},resume(){!1!==y.paused&&(y.paused=!1,c(y.process))}};return Object.defineProperties(y,{saturated:{writable:!1,value:g("saturated")},unsaturated:{writable:!1,value:g("unsaturated")},empty:{writable:!1,value:g("empty")},drain:{writable:!1,value:g("drain")},error:{writable:!1,value:g("error")}}),y}function q(e,t){return H(e,1,t)}function G(e,t,n){return H(e,t,n)}var z=g((function(e,t,n,r){r=_(r);var i=h(n);return O(e,((e,n,r)=>{i(t,e,((e,n)=>{t=n,r(e)}))}),(e=>r(e,t)))}),4);function Q(...e){var t=e.map(h);return function(...e){var n=this,r=e[e.length-1];return"function"==typeof r?e.pop():r=x(),z(t,e,((e,t,r)=>{t.apply(n,e.concat(((e,...t)=>{r(e,t)})))}),((e,t)=>r(e,...t))),r[N]}}function K(...e){return Q(...e.reverse())}var Y=g((function(e,t,n,r){return y(E(t),e,n,r)}),4),J=g((function(e,t,n,r){var i=h(n);return Y(e,t,((e,t)=>{i(e,((e,...n)=>e?t(e):t(e,n)))}),((e,t)=>{for(var n=[],i=0;i<t.length;i++)t[i]&&(n=n.concat(...t[i]));return r(e,n)}))}),4),Z=g((function(e,t,n){return J(e,1/0,t,n)}),3),X=g((function(e,t,n){return J(e,1,t,n)}),3);function ee(...e){return function(...t){return t.pop()(null,...e)}}function te(e,t){return(n,r,i,o)=>{var s,u=!1;const a=h(i);n(r,((n,r,i)=>{a(n,((r,o)=>r||!1===r?i(r):e(o)&&!s?(u=!0,s=t(!0,n),i(null,b)):void i()))}),(e=>{if(e)return o(e);o(null,u?s:t(!1))}))}}var ne=g((function(e,t,n){return te((e=>e),((e,t)=>t))(L,e,t,n)}),3),re=g((function(e,t,n,r){return te((e=>e),((e,t)=>t))(E(t),e,n,r)}),4),ie=g((function(e,t,n){return te((e=>e),((e,t)=>t))(E(1),e,t,n)}),3);function oe(e){return(t,...n)=>h(t)(...n,((t,...n)=>{"object"==typeof console&&(t?console.error&&console.error(t):console[e]&&n.forEach((t=>console[e](t))))}))}var se=oe("dir"),ue=g((function(e,t,n){n=S(n);var r,i=h(e),o=h(t);function s(e,...t){if(e)return n(e);!1!==e&&(r=t,o(...t,u))}function u(e,t){return e?n(e):!1!==e?t?void i(s):n(null,...r):void 0}return u(null,!0)}),3);function ae(e,t,n){const r=h(t);return ue(e,((...e)=>{const t=e.pop();r(...e,((e,n)=>t(e,!n)))}),n)}function ce(e){return(t,n,r)=>e(t,r)}var le=g((function(e,t,n){return L(e,ce(h(t)),n)}),3),fe=g((function(e,t,n,r){return E(t)(e,ce(h(n)),r)}),4),de=g((function(e,t,n){return fe(e,1,t,n)}),3);function pe(e){return p(e)?e:function(...t){var n=t.pop(),r=!0;t.push(((...e)=>{r?c((()=>n(...e))):n(...e)})),e.apply(this,t),r=!1}}var he=g((function(e,t,n){return te((e=>!e),(e=>!e))(L,e,t,n)}),3),ge=g((function(e,t,n,r){return te((e=>!e),(e=>!e))(E(t),e,n,r)}),4),me=g((function(e,t,n){return te((e=>!e),(e=>!e))(O,e,t,n)}),3);function ye(e,t,n,r){var i=new Array(t.length);e(t,((e,t,r)=>{n(e,((e,n)=>{i[t]=!!n,r(e)}))}),(e=>{if(e)return r(e);for(var n=[],o=0;o<t.length;o++)i[o]&&n.push(t[o]);r(null,n)}))}function ve(e,t,n,r){var i=[];e(t,((e,t,r)=>{n(e,((n,o)=>{if(n)return r(n);o&&i.push({index:t,value:e}),r(n)}))}),(e=>{if(e)return r(e);r(null,i.sort(((e,t)=>e.index-t.index)).map((e=>e.value)))}))}function be(e,t,n,r){return(v(t)?ye:ve)(e,t,h(n),r)}var _e=g((function(e,t,n){return be(L,e,t,n)}),3),Se=g((function(e,t,n,r){return be(E(t),e,n,r)}),4),we=g((function(e,t,n){return be(O,e,t,n)}),3),Ee=g((function(e,t){var n=S(t),r=h(pe(e));return function e(t){if(t)return n(t);!1!==t&&r(e)}()}),2),Ce=g((function(e,t,n,r){var i=h(n);return Y(e,t,((e,t)=>{i(e,((n,r)=>n?t(n):t(n,{key:r,val:e})))}),((e,t)=>{for(var n={},{hasOwnProperty:i}=Object.prototype,o=0;o<t.length;o++)if(t[o]){var{key:s}=t[o],{val:u}=t[o];i.call(n,s)?n[s].push(u):n[s]=[u]}return r(e,n)}))}),4);function Ae(e,t,n){return Ce(e,1/0,t,n)}function Ie(e,t,n){return Ce(e,1,t,n)}var Le=oe("log"),Te=g((function(e,t,n,r){r=_(r);var i={},o=h(n);return E(t)(e,((e,t,n)=>{o(e,t,((e,r)=>{if(e)return n(e);i[t]=r,n(e)}))}),(e=>r(e,i)))}),4);function Re(e,t,n){return Te(e,1/0,t,n)}function Oe(e,t,n){return Te(e,1,t,n)}function ke(e,t=(e=>e)){var n=Object.create(null),r=Object.create(null),o=h(e),s=i(((e,i)=>{var s=t(...e);s in n?c((()=>i(null,...n[s]))):s in r?r[s].push(i):(r[s]=[i],o(...e,((e,...t)=>{e||(n[s]=t);var i=r[s];delete r[s];for(var o=0,u=i.length;o<u;o++)i[o](e,...t)})))}));return s.memo=n,s.unmemoized=e,s}var De=a(s?process.nextTick:o?setImmediate:u),Ne=g(((e,t,n)=>{var r=v(t)?[]:{};e(t,((e,t,n)=>{h(e)(((e,...i)=>{i.length<2&&([i]=i),r[t]=i,n(e)}))}),(e=>n(e,r)))}),3);function xe(e,t){return Ne(L,e,t)}function Pe(e,t,n){return Ne(E(t),e,n)}function Me(e,t){var n=h(e);return H(((e,t)=>{n(e[0],t)}),t,1)}class Be{constructor(){this.heap=[],this.pushCount=Number.MIN_SAFE_INTEGER}get length(){return this.heap.length}empty(){return this.heap=[],this}percUp(e){let t;for(;e>0&&je(this.heap[e],this.heap[t=We(e)]);){let n=this.heap[e];this.heap[e]=this.heap[t],this.heap[t]=n,e=t}}percDown(e){let t;for(;(t=1+(e<<1))<this.heap.length&&(t+1<this.heap.length&&je(this.heap[t+1],this.heap[t])&&(t+=1),!je(this.heap[e],this.heap[t]));){let n=this.heap[e];this.heap[e]=this.heap[t],this.heap[t]=n,e=t}}push(e){e.pushCount=++this.pushCount,this.heap.push(e),this.percUp(this.heap.length-1)}unshift(e){return this.heap.push(e)}shift(){let[e]=this.heap;return this.heap[0]=this.heap[this.heap.length-1],this.heap.pop(),this.percDown(0),e}toArray(){return[...this]}*[Symbol.iterator](){for(let e=0;e<this.heap.length;e++)yield this.heap[e].data}remove(e){let t=0;for(let n=0;n<this.heap.length;n++)e(this.heap[n])||(this.heap[t]=this.heap[n],t++);this.heap.splice(t);for(let e=We(this.heap.length-1);e>=0;e--)this.percDown(e);return this}}function We(e){return(e+1>>1)-1}function je(e,t){return e.priority!==t.priority?e.priority<t.priority:e.pushCount<t.pushCount}function $e(e,t){var n=Me(e,t);return n._tasks=new Be,n.push=function(e,t=0,r=(()=>{})){if("function"!=typeof r)throw new Error("task callback must be a function");if(n.started=!0,Array.isArray(e)||(e=[e]),0===e.length&&n.idle())return c((()=>n.drain()));for(var i=0,o=e.length;i<o;i++){var s={data:e[i],priority:t,callback:r};n._tasks.push(s)}c(n.process)},delete n.unshift,n}var Fe=g((function(e,t){if(t=_(t),!Array.isArray(e))return t(new TypeError("First argument to race must be an array of functions"));if(!e.length)return t();for(var n=0,r=e.length;n<r;n++)h(e[n])(t)}),2);function Ue(e,t,n,r){var i=[...e].reverse();return z(i,t,n,r)}function Ve(e){var t=h(e);return i((function(e,n){return e.push(((e,...t)=>{let r={};if(e&&(r.error=e),t.length>0){var i=t;t.length<=1&&([i]=t),r.value=i}n(null,r)})),t.apply(this,e)}))}function He(e){var t;return Array.isArray(e)?t=e.map(Ve):(t={},Object.keys(e).forEach((n=>{t[n]=Ve.call(this,e[n])}))),t}function qe(e,t,n,r){const i=h(n);return be(e,t,((e,t)=>{i(e,((e,n)=>{t(e,!n)}))}),r)}var Ge=g((function(e,t,n){return qe(L,e,t,n)}),3),ze=g((function(e,t,n,r){return qe(E(t),e,n,r)}),4),Qe=g((function(e,t,n){return qe(O,e,t,n)}),3);function Ke(e){return function(){return e}}function Ye(e,t,n){var r={times:5,intervalFunc:Ke(0)};if(arguments.length<3&&"function"==typeof e?(n=t||x(),t=e):(Je(r,e),n=n||x()),"function"!=typeof t)throw new Error("Invalid arguments for async.retry");var i=h(t),o=1;function s(){i(((e,...t)=>{!1!==e&&(e&&o++<r.times&&("function"!=typeof r.errorFilter||r.errorFilter(e))?setTimeout(s,r.intervalFunc(o-1)):n(e,...t))}))}return s(),n[N]}function Je(e,t){if("object"==typeof t)e.times=+t.times||5,e.intervalFunc="function"==typeof t.interval?t.interval:Ke(+t.interval||0),e.errorFilter=t.errorFilter;else{if("number"!=typeof t&&"string"!=typeof t)throw new Error("Invalid arguments for async.retry");e.times=+t||5}}function Ze(e,t){t||(t=e,e=null);let n=e&&e.arity||t.length;p(t)&&(n+=1);var r=h(t);return i(((t,i)=>{function o(e){r(...t,e)}return(t.length<n-1||null==i)&&(t.push(i),i=x()),e?Ye(e,o,i):Ye(o,i),i[N]}))}function Xe(e,t){return Ne(O,e,t)}var et=g((function(e,t,n){return te(Boolean,(e=>e))(L,e,t,n)}),3),tt=g((function(e,t,n,r){return te(Boolean,(e=>e))(E(t),e,n,r)}),4),nt=g((function(e,t,n){return te(Boolean,(e=>e))(O,e,t,n)}),3),rt=g((function(e,t,n){var r=h(t);return T(e,((e,t)=>{r(e,((n,r)=>{if(n)return t(n);t(n,{value:e,criteria:r})}))}),((e,t)=>{if(e)return n(e);n(null,t.sort(i).map((e=>e.value)))}));function i(e,t){var n=e.criteria,r=t.criteria;return n<r?-1:n>r?1:0}}),3);function it(e,t,n){var r=h(e);return i(((i,o)=>{var s,u=!1;i.push(((...e)=>{u||(o(...e),clearTimeout(s))})),s=setTimeout((function(){var t=e.name||"anonymous",r=new Error('Callback function "'+t+'" timed out.');r.code="ETIMEDOUT",n&&(r.info=n),u=!0,o(r)}),t),r(...i)}))}function ot(e,t,n,r){var i=h(n);return Y(function(e){for(var t=Array(e);e--;)t[e]=e;return t}(e),t,i,r)}function st(e,t,n){return ot(e,1/0,t,n)}function ut(e,t,n){return ot(e,1,t,n)}function at(e,t,n,r){arguments.length<=3&&"function"==typeof t&&(r=n,n=t,t=Array.isArray(e)?[]:{}),r=_(r||x());var i=h(n);return L(e,((e,n,r)=>{i(t,e,n,r)}),(e=>r(e,t))),r[N]}var ct=g((function(e,t){var n,r=null;return de(e,((e,t)=>{h(e)(((e,...i)=>{if(!1===e)return t(e);i.length<2?[n]=i:n=i,r=e,t(e?null:{})}))}),(()=>t(r,n)))}));function lt(e){return(...t)=>(e.unmemoized||e)(...t)}var ft=g((function(e,t,n){n=S(n);var r=h(t),i=h(e),o=[];function s(e,...t){if(e)return n(e);o=t,!1!==e&&i(u)}function u(e,t){return e?n(e):!1!==e?t?void r(s):n(null,...o):void 0}return i(u)}),3);function dt(e,t,n){const r=h(e);return ft((e=>r(((t,n)=>e(t,!n)))),t,n)}var pt=g((function(e,t){if(t=_(t),!Array.isArray(e))return t(new Error("First argument to waterfall must be an array of functions"));if(!e.length)return t();var n=0;function r(t){h(e[n++])(...t,S(i))}function i(i,...o){if(!1!==i)return i||n===e.length?t(i,...o):void r(o)}r([])}));const ht={apply:r,applyEach:R,applyEachSeries:D,asyncify:l,auto:P,autoInject:F,cargo:q,cargoQueue:G,compose:K,concat:Z,concatLimit:J,concatSeries:X,constant:ee,detect:ne,detectLimit:re,detectSeries:ie,dir:se,doUntil:ae,doWhilst:ue,each:le,eachLimit:fe,eachOf:L,eachOfLimit:C,eachOfSeries:O,eachSeries:de,ensureAsync:pe,every:he,everyLimit:ge,everySeries:me,filter:_e,filterLimit:Se,filterSeries:we,forever:Ee,groupBy:Ae,groupByLimit:Ce,groupBySeries:Ie,log:Le,map:T,mapLimit:Y,mapSeries:k,mapValues:Re,mapValuesLimit:Te,mapValuesSeries:Oe,memoize:ke,nextTick:De,parallel:xe,parallelLimit:Pe,priorityQueue:$e,queue:Me,race:Fe,reduce:z,reduceRight:Ue,reflect:Ve,reflectAll:He,reject:Ge,rejectLimit:ze,rejectSeries:Qe,retry:Ye,retryable:Ze,seq:Q,series:Xe,setImmediate:c,some:et,someLimit:tt,someSeries:nt,sortBy:rt,timeout:it,times:st,timesLimit:ot,timesSeries:ut,transform:at,tryEach:ct,unmemoize:lt,until:dt,waterfall:pt,whilst:ft,all:he,allLimit:ge,allSeries:me,any:et,anyLimit:tt,anySeries:nt,find:ne,findLimit:re,findSeries:ie,flatMap:Z,flatMapLimit:J,flatMapSeries:X,forEach:le,forEachSeries:de,forEachLimit:fe,forEachOf:L,forEachOfSeries:O,forEachOfLimit:C,inject:z,foldl:z,foldr:Ue,select:_e,selectLimit:Se,selectSeries:we,wrapSync:l,during:ft,doDuring:ue}},33998:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConfigUtilInstance=void 0;var r=s(n(72551)),i=n(51742),o=s(n(53059));function s(e){return e&&e.__esModule?e:{default:e}}const u=new function(){const e=this;this.resolveConfigVariables=function(e,t){let n=0,i=0,o=!0;function s(e){const t=e.split(/[/\\:?=&\s]/);for(let n=0;n<t.length;n++)if("$"===t[n][0]){const i=t[n].substring(1);let s=u(i);if(void 0!==s){const u=e.replace(t[n],s);r.default.system.verbose("forceObjectsToLogger","ConfigUtil.resolveConfigVariables:resolveString configString",t[n],i,s,"old value=",e,"value=",u),o=!0,e=u}}return e}function u(t){let n=e[t];return void 0===n&&(e.custom?(n=e.custom[t],void 0===n&&r.default.system.warn("ConfigUtil.resolveString",`Missing [${t}] variable from finsemble.custom configuration object`)):r.default.system.error("ConfigUtil.resolveString",`Missing "custom" node from finsemble configuration - unable to get variable resoution for variable: ${t}`)),n}function a(e,t,n){r.default.system.verbose("forceObjectsToLogger","resolveArray","pass",t,"recursionLevel",n,"configArray:",e);for(let r=0;r<e.length;r++){const i=e[r];"string"==typeof i&&i.indexOf("$")>-1?e[r]=s(i):i instanceof Array?a(i,t,n+1):"object"==typeof i&&c(i,t,n+1)}}function c(e,t,n){e=e||{},r.default.system.verbose("forceObjectsToLogger","ConfigUtil.resolveConfigVariables:resolveObject","pass",t,"recursionLevel",n,"configObject:",e),Object.keys(e).forEach((r=>{const i=e[r];"string"==typeof i&&i.indexOf("$")>-1?e[r]=s(i):i instanceof Array?a(i,t,n+1):"object"==typeof i&&c(i,t,n+1)}))}for(;o&&i++<100;)o=!1,c(t,++n,1);i>=100&&r.default.system.error("forceObjectsToLogger","resolveConfigVariables exceeded maximum passes so continuing -- probably a recursive macro definitions. Look in this config for unresolved macro variables",e)},this.getExpandedRawManifest=function(t,n){function o(t,s,u){r.default.system.debug("forceObjectsToLogger","ConfigUtil.getExpandedRawManifest:getRawManifest",s,u),s.getManifest((n=>{r.default.system.debug("forceObjectsToLogger","ConfigUtil.getExpandedRawManifest:getExpandedRawManifest: manifest retrieved. Pre-variable resolution",n),e.resolveConfigVariables(n.finsemble,n.finsemble),r.default.system.debug("forceObjectsToLogger","ConfigUtil.getExpandedRawManifest:getExpandedRawManifest:Complete. post-variable resolution",n),t(n)}),(e=>{e&&(r.default.system.error("ConfigUtil.getExpandedRawManifest:application.getManifest:err",e),n&&n()),s.getParentUuid((e=>{const n=i.System.Application.wrap(e);r.default.system.debug("forceObjectsToLogger","uuid",e,"parentApplication",n),u<10?o(t,n,++u):t("could not find manifest in parent applications")}))}))}r.default.system.debug("ConfigUtil.getExpandedRawManifest starting"),i.System.ready((()=>{const e=i.System.Application.getCurrent();o(t,e,1)}))},this.readConfigFile=function(e,t){r.default.system.debug(`fetching ${e}`),fetch(e,{credentials:"include",cache:"no-cache"}).then((e=>e.json())).catch((n=>{t(`Failure importing ${e}: ${n}`,null)})).then((e=>{t(null,e)}))},this.getInitialManifest=function(t){i.System.ready((()=>{i.System.Application.getCurrent().getManifest((n=>{n.finsemble=n.finsemble||{},e.resolveConfigVariables(n.finsemble,n.finsemble),n.finsemble.applicationRoot||r.default.system.error("FATAL ERROR: applicationRoot was not defined in manifest file.");const i=`${n.finsemble.moduleRoot}/configs/core/config.json`;e.readConfigFile(i,((o,s)=>{o?r.default.system.error(`ConfigUtil.getInitialManifest:getCoreConfig:failed importing into finsemble config. $moduleRoot=${n.finsemble.moduleRoot}; Full Path=${i}`,o):(Object.keys(s).forEach((e=>{if("importConfig"===e){n.finsemble.importConfig=n.finsemble.importConfig||[];for(let e=0;e<s.importConfig.length;e++)n.finsemble.importConfig.unshift(s.importConfig[e])}else if("importThirdPartyConfig"===e){n.finsemble.importThirdPartyConfig=n.finsemble.importThirdPartyConfig||[];for(let e=0;e<s.importThirdPartyConfig.length;e++)n.finsemble.importThirdPartyConfig.unshift(s.importThirdPartyConfig[e])}else n.finsemble[e]=s[e]})),e.resolveConfigVariables(n.finsemble,n.finsemble),r.default.system.debug("forceObjectsToLogger","ConfigUtil.getInitialManifest:getCoreConfig:Initial Manifest after variables Resolved",n)),t(n)}))}))}))},this.promptAndSaveJSONToLocalFile=function(e,t){r.default.system.debug("saveJSONToLocalFile",e,t);const n=JSON.stringify(t,null,"\t"),i=`data:application/json;charset=utf-8,${encodeURIComponent(n)}`,o=`${e}.json`,s=document.createElement("a");s.setAttribute("href",i),s.setAttribute("download",o),s.click()},this.configFormatForExport=function(e,t){r.default.system.debug("configFormatForExport starting",e,t);let n=o.default.cloneDeep(t);if("raw"===e);else if("all"===e)delete n.importConfig,delete n.comment;else if("application"===e)delete n.importConfig,delete n.comment,delete n.system,delete n.services;else if("workspace"===e)n={workspace:n};else if("workspaceTemplate"===e){const e={};e[n.name]=n,n={workspaceTemplates:e}}else"services"===e?n=n.services:"components"===e&&(n=n.components);return n},this.getDefault=function(e,t,n){let r=n;if(e){try{const n=t.split(".");let i=e;for(let e=1;e<n.length;e++)i=i[n[e]];r=i}catch(e){r=n}void 0===r&&(r=n)}return r},this.getFile=async function(e,t=Function.prototype){r.default.system.debug(`fetching import ${e}`);let n=null;return await fetch(e,{credentials:"include",cache:"no-cache"}).then((e=>e.json())).catch((n=>{t(`failure importing ${e}: ${n}`,null)})).then((e=>{t(null,e),n=e})),n}};t.ConfigUtilInstance=u},21014:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=new function(){let e=3;this.diagLevel=function(){return e},this.setDiagLevel=function(t){e=t},this.validationEnabled=function(){return e>=4}};t.default=n},73699:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=u(n(72551)),i=n(33998),o=n(51742),s=u(n(5020));function u(e){return e&&e.__esModule?e:{default:e}}let a=null;var c=new function(){const e={},t={};let u=null;this.getDefaultTemplateURL=function(e){u?setTimeout((()=>{e(u)}),0):(a||(a=n(70010).default),a.getValue({field:"finsemble"},((t,n)=>{u=i.ConfigUtilInstance.getDefault(n,"finsemble.notificationURL",`${n.moduleRoot}/components/system/notification/notification.html`),e(u)})))},this.alert=function(e,t,n,r,i){const o=this;i&&i.url?this.alertInternal(e,t,n,r,i,i.url):this.getDefaultTemplateURL((s=>{o.alertInternal(e,t,n,r,i,s)}))},this.alertInternal=function(n,i,u,a,c,l){let f=!1;const d=`UserNotification.alert.${u}`,p=(c=c||{}).duration||864e5;switch(i){case"ONCE-SINCE-STARTUP":d in e?f=!1:(f=!0,e[d]=!0);break;case"MAX-COUNT":{let e=0;const n=c.maxCount||1;d in t&&(e=t[d]),t[d]=++e,e<=n&&(f=!0);break}default:f=!0}if(r.default.log("UserNotification.alert",n,f,i,u,a,c),f){const e={url:l,message:a,timeout:p};s.default.systemLog({notification:!0},`Notification: ${a}`),new o.System.Notification(e)}}};t.default=c},13712:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,i=(r=n(21014))&&r.__esModule?r:{default:r},o=new function(){function e(e,t,n){const r=function(){try{throw Error("")}catch(e){return e}}(),i=r.stack.split("\n")[5],o=i.indexOf("at "),s=i.slice(o+2,i.length),u=r.stack.split("\n")[6],a=u.indexOf("at "),c=u.slice(a+2,u.length);console.warn(`parameter validation failed: parameter ${e} is of type '${typeof t}' but should be of type '${n}' in${s} called by${c}`)}this.args=function(){let t=!0;if(i.default.validationEnabled()){const n=arguments.length;if((n+1)%2!=0)for(let r=0;r<n;r+=2){let n=!1;const i=arguments[r];let o=arguments[r+1];if("="===o.slice(-1)&&(o=o.slice(0,-1),n=!0),typeof i!==o&&!(n&&void 0===i||void 0!==i&&"any"===o)){e(r/2+1,i,o),t=!1;break}}else console.warn(`validate.args requires even number of parameters: ${JSON.stringify(arguments)}`)}return t},this.args2=function(){let t=!0;if(i.default.validationEnabled()){const n=arguments.length;if((n+1)%3!=0)for(let r=0;r<n;r+=3){let n=!1;const i=arguments[r],o=arguments[r+1];let s=arguments[r+2];if("="===s.slice(-1)&&(s=s.slice(0,-1),n=!0),typeof o!==s&&!(n&&void 0===o||void 0!==o&&"any"===s)){e(i,o,s),t=!1;break}}else console.warn(`validate.args requires even number of parameters: ${JSON.stringify(arguments)}`)}return t}};t.default=o},16769:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(e){if(e)try{n.g.adapterReceiver?n.g.adapterReceiver.loaded(e[0],this):console.error("Global Adapter Receiver not found on the global object. Fatal error.")}catch(e){console.error("BaseStorage constructor",e)}this.setBaseName=function(e){this.baseName=e},this.setUser=function(e){this.userName=e},this.save=function(){console.warn("Save method not fulfilled in the active storage model.")},this.get=function(){console.warn("Get method not fulfilled in the active storage model.")},this.keys=function(){console.warn("Keys method not fulfilled in the active storage model.")},this.delete=function(){console.warn("Delete method not fulfilled in the active storage model.")},this.clearCache=function(){console.warn("Clear cache method not fulfilled in the active storage model.")},this.empty=function(){console.warn("Empty method not fulfilled in the active storage model.")},this.getMultiple=function(){},this.getCombinedKey=function(e,t){return`${e.baseName}:${e.userName}:${t.topic}:${t.key}`},this.getKeyPreface=function(e,t){let n=`${e.baseName}:${e.userName}:${t.topic}:`;return"keyPrefix"in t&&(n+=t.keyPrefix),n}}},78658:(e,t,n)=>{"use strict";var r=o(n(16769)),i=o(n(72551));function o(e){return e&&e.__esModule?e:{default:e}}i.default.start();let s=!1;IDBKeyRange.forPrefix=e=>{const t=(e=>{let t=e.length;for(;t>0;){const n=e.substring(0,t-1),r=e.charCodeAt(t-1);if(65535!==r)return n+String.fromCharCode(r+1);e=n,--t}return[]})(e);return void 0===t?IDBKeyRange.lowerBound(e):IDBKeyRange.bound(e,t,!1,!0)};const u=function(e){r.default.call(this,arguments),this.db,this.queue=[],i.default.system.log("InstrumentedIndexedDBAdapter init"),console.log("InstrumentedIndexedDBAdapter init");const t=window.indexedDB.open("finsemble",1);t.onupgradeneeded=e=>{this.db=e.target.result,this.db.createObjectStore("fsbl",{keyPath:"key"}).transaction.oncomplete=()=>{i.default.system.debug("InstrumentedIndexedDBAdapter object store created"),console.debug("InstrumentedIndexedDBAdapter object store created"),this.releaseQueue()}},t.onsuccess=e=>{i.default.system.log("InstrumentedIndexedDBAdapter initialized successfully"),console.log("InstrumentedIndexedDBAdapter initialized successfully"),this.initialSimulateErrorMode(),this.db=e.target.result,this.releaseQueue()},t.onerror=e=>{i.default.system.error("InstrumentedIndexedDBAdapter DB connection initialization failed, Error: ",e),console.error("InstrumentedIndexedDBAdapter DB connection initialization failed, Error: ",e)},this.getKeyPreface=e=>{const t="keyPrefix"in e?e.keyPrefix:"";return`${this.getUserPreface()}:${e.topic}:${t}`},this.getUserPreface=()=>`${this.baseName}:${this.userName}`,this.releaseQueue=()=>{for(s=!0,i.default.system.log(`InstrumentedIndexedDBAdapter.releaseQueue: ${this.queue.length} commands`),console.log(`InstrumentedIndexedDBAdapter.releaseQueue: ${this.queue.length} commands`);this.queue.length;){const e=this.queue.shift();this[e.method].apply(this,e.args)}},this.clearCache=(e,t)=>{if(!s)return i.default.system.debug("queuing","clearCache",[e,t]),console.debug("queuing","clearCache",[e,t]),void this.queue.push({method:"clearCache",args:[e,t]});const n=this.getUserPreface(this);i.default.system.log(`InstrumentedIndexedDBAdapter.clearCache for userPreface=${n}`),console.log(`InstrumentedIndexedDBAdapter.clearCache for userPreface=${n}`);const r=IDBKeyRange.forPrefix(n),o=this.db.transaction(["fsbl"],"readwrite").objectStore("fsbl").delete(r);o.onsuccess=()=>{i.default.system.log(`InstrumentedIndexedDBAdapter.clearCache Success: userPreface=${n}`),console.log(`InstrumentedIndexedDBAdapter.clearCache Success: userPreface=${n}`),t(null,{status:"success"})},o.onerror=e=>{i.default.system.error("InstrumentedIndexedDBAdapter.clearCache failed Error",e,`userPreface=${n}`),console.error("InstrumentedIndexedDBAdapter.clearCache failed Error",e,`userPreface=${n}`),t(e,{status:"failed"})}},this.delete=async(e,t)=>{switch(await this.randomDelay(),this.simulateErrorMode){case 0:break;case 1:return i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.delete: error mode is ${this.simulateErrorMode}`),t("simulated error",{status:"failed"});case 2:return void i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.delete: error mode is ${this.simulateErrorMode}`)}if(!s)return i.default.system.debug("queuing","delete",[e,t]),console.debug("queuing","delete",[e,t]),void this.queue.push({method:"delete",args:[e,t]});const n=this.getCombinedKey(this,e);i.default.system.debug(`InstrumentedIndexedDBAdapter.delete for key=${n}`),console.debug(`InstrumentedIndexedDBAdapter.delete for key=${n}`);const r=this.db.transaction(["fsbl"],"readwrite").objectStore("fsbl").delete(n);r.onsuccess=()=>{i.default.system.debug(`InstrumentedIndexedDBAdapter.delete key=${n}, Success`),console.debug(`InstrumentedIndexedDBAdapter.delete key=${n}, Success`),t(null,{status:"success"})},r.onerror=e=>{i.default.system.error(`InstrumentedIndexedDBAdapter.delete key=${n}, Error`,e),console.error(`InstrumentedIndexedDBAdapter.delete key=${n}, Error`,e),t(e,{status:"failed"})}},this.empty=e=>{if(!s)return i.default.system.debug("queuing","empty",[e]),console.debug("queuing","empty",[e]),void this.queue.push({method:"empty",args:[e]});i.default.system.log("InstrumentedIndexedDBAdapter.empty"),console.log("InstrumentedIndexedDBAdapter.empty");const t=this.db.transaction(["fsbl"],"readwrite").objectStore("fsbl").clear();t.onerror=t=>(i.default.system.error("InstrumentedIndexedDBAdapter.empty failed Error",t),console.error("InstrumentedIndexedDBAdapter.empty failed Error",t),e(t,{status:"failed"})),t.onsuccess=()=>{i.default.system.log("InstrumentedIndexedDBAdapter.empty Success"),console.log("InstrumentedIndexedDBAdapter.empty Success"),e()}},this.randomDelay=()=>{if(this.delayUpperBoundInMilliseconds>0){let e=this.delayUpperBoundInMilliseconds-this.delayLowerBoundInMilliseconds,t=Math.floor(Math.random()*e)+this.delayLowerBoundInMilliseconds;return i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.randomDelay: ${t} millisecond delay added`),console.debug(`QAData: InstrumentedIndexedDBAdapter.randomDelay: ${t} millisecond delay added`),new Promise((e=>setTimeout(e,t)))}return Promise.resolve()},this.get=async(e,t)=>{switch(await this.randomDelay(),this.simulateErrorMode){case 0:break;case 1:return i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.get: error mode is ${this.simulateErrorMode}`),i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.get: error mode is ${this.simulateErrorMode}`),t("simulated error",{status:"failed"});case 2:return i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.get: error mode is ${this.simulateErrorMode}`),void console.debug(`QAData: InstrumentedIndexedDBAdapter.get: error mode is ${this.simulateErrorMode}`)}if(!s)return i.default.system.debug("queuing","get",[e,t]),console.debug("queuing","get",[e,t]),void this.queue.push({method:"get",args:[e,t]});i.default.system.debug("InstrumentedIndexedDBAdapter.get, params: ",e),console.debug("InstrumentedIndexedDBAdapter.get, params: ",e);const n=this.getCombinedKey(this,e),r=this.db.transaction(["fsbl"],"readwrite").objectStore("fsbl").get(n);r.onsuccess=e=>{let r;e.target.result&&(r=e.target.result.value),i.default.system.debug(`InstrumentedIndexedDBAdapter.get for key=${n} data=`,r),console.debug(`InstrumentedIndexedDBAdapter.get for key=${n} data=`,r),t(null,r)},r.onerror=e=>{i.default.system.error(`InstrumentedIndexedDBAdapter.get key=${n}, Error`,e),console.error(`InstrumentedIndexedDBAdapter.get key=${n}, Error`,e),t(e,{status:"failed"})}},this.keys=(e,t)=>{if(!s)return i.default.system.debug("queuing","keys",[e,t]),console.debug("queuing","keys",[e,t]),void this.queue.push({method:"keys",args:[e,t]});const n=this.getKeyPreface(e),r=IDBKeyRange.forPrefix(n),o=this.db.transaction(["fsbl"],"readwrite").objectStore("fsbl").getAllKeys(r);o.onsuccess=e=>{const r=(e.target.result?e.target.result:[]).map((e=>e.replace(n,"")));i.default.system.debug(`InstrumentedIndexedDBAdapter.keys for keyPreface=${n} keys=`,r),console.debug(`InstrumentedIndexedDBAdapter.get keys keyPreface=${n} keys=`,r),t(null,r)},o.onerror=e=>{i.default.system.error(`Failed to retrieve InstrumentedIndexedDBAdapter.keys keyPreface=${n}, Error`,e),console.error(`Failed to retrieve InstrumentedIndexedDBAdapter.keys keyPreface=${n}, Error`,e),t(e,{status:"failed"})}},this.save=async(e,t)=>{switch(await this.randomDelay(),this.simulateErrorMode){case 0:break;case 1:return i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.save: error mode is ${this.simulateErrorMode}`),console.debug(`QAData: InstrumentedIndexedDBAdapter.save: error mode is ${this.simulateErrorMode}`),t("simulated error",{status:"failed"});case 2:return i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.save: error mode is ${this.simulateErrorMode}`),void console.debug(`QAData: InstrumentedIndexedDBAdapter.save: error mode is ${this.simulateErrorMode}`)}if(!s)return i.default.system.debug("queuing","save",[e,t]),console.debug("queuing","save",[e,t]),void this.queue.push({method:"save",args:[e,t]});i.default.system.debug("InstrumentedIndexedDBAdapter.save, params: ",e),console.debug("InstrumentedIndexedDBAdapter.save, params: ",e);const n=this.getCombinedKey(this,e),r=this.db.transaction(["fsbl"],"readwrite").objectStore("fsbl").put({key:n,value:e.value});r.onsuccess=()=>{i.default.system.debug("InstrumentedIndexedDBAdapter.save Request Succeeded"),console.debug("InstrumentedIndexedDBAdapter.save Request Succeeded"),t(null,{status:"success"})},r.onerror=e=>{i.default.system.error("InstrumentedIndexedDBAdapter.save Request Failed: ",e),console.error("InstrumentedIndexedDBAdapter.save Request Failed: ",e),t(e,{status:"failed"})}},this.initialSimulateErrorMode=()=>{this.simulateErrorMode=JSON.parse(localStorage.getItem("finsembleErrorMode")),this.delayLowerBoundInMilliseconds=JSON.parse(localStorage.getItem("finsembleDelayLowerBoundInMilliseconds")),this.delayUpperBoundInMilliseconds=JSON.parse(localStorage.getItem("finsembleDelayUpperBoundInMilliseconds")),i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.initialSimulateErrorMode: errorMode ${this.simulateErrorMode} lowerDelay ${this.delayLowerBoundInMilliseconds} upperDelay ${this.delayUpperBoundInMilliseconds}`),console.log(`QAData: InstrumentedIndexedDBAdapter.initialSimulateErrorMode: errorMode ${this.simulateErrorMode} lowerDelay ${this.delayLowerBoundInMilliseconds} upperDelay ${this.delayUpperBoundInMilliseconds}`)},this.setRandomDelayBounds=(e,t)=>{i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.setRandomDelayBounds: lower ${e} upper ${t}`),console.debug(`QAData: InstrumentedIndexedDBAdapter.setRandomDelayBounds: lower ${e} upper ${t}`),this.delayLowerBoundInMilliseconds=e,this.delayUpperBoundInMilliseconds=t,localStorage.setItem("finsembleDelayLowerBoundInMilliseconds",JSON.stringify(e)),localStorage.setItem("finsembleDelayUpperBoundInMilliseconds",JSON.stringify(t))},this.setErrorMode=e=>{i.default.system.debug(`QAData: InstrumentedIndexedDBAdapter.setErrorMode: mode ${e}`),console.debug(`QAData: InstrumentedIndexedDBAdapter.setErrorMode: mode ${e}`),this.simulateErrorMode=e,localStorage.setItem("finsembleErrorMode",JSON.stringify(e))},this.clearErrorMode=()=>{i.default.system.debug("QAData: InstrumentedIndexedDBAdapter.clearErrorMode"),console.debug("QAData: InstrumentedIndexedDBAdapter.clearErrorMode"),this.setErrorMode(0)}};u.prototype=new r.default,new u("InstrumentedIndexedDBAdapter"),e.exports=u},5939:e=>{"use strict";var t,n="object"==typeof Reflect?Reflect:null,r=n&&"function"==typeof n.apply?n.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};t=n&&"function"==typeof n.ownKeys?n.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var i=Number.isNaN||function(e){return e!=e};function o(){o.init.call(this)}e.exports=o,e.exports.once=function(e,t){return new Promise((function(n,r){function i(n){e.removeListener(t,o),r(n)}function o(){"function"==typeof e.removeListener&&e.removeListener("error",i),n([].slice.call(arguments))}g(e,t,o,{once:!0}),"error"!==t&&function(e,t,n){"function"==typeof e.on&&g(e,"error",t,{once:!0})}(e,i)}))},o.EventEmitter=o,o.prototype._events=void 0,o.prototype._eventsCount=0,o.prototype._maxListeners=void 0;var s=10;function u(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function a(e){return void 0===e._maxListeners?o.defaultMaxListeners:e._maxListeners}function c(e,t,n,r){var i,o,s,c;if(u(n),void 0===(o=e._events)?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),o=e._events),s=o[t]),void 0===s)s=o[t]=n,++e._eventsCount;else if("function"==typeof s?s=o[t]=r?[n,s]:[s,n]:r?s.unshift(n):s.push(n),(i=a(e))>0&&s.length>i&&!s.warned){s.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=t,l.count=s.length,c=l,console&&console.warn&&console.warn(c)}return e}function l(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function f(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=l.bind(r);return i.listener=n,r.wrapFn=i,i}function d(e,t,n){var r=e._events;if(void 0===r)return[];var i=r[t];return void 0===i?[]:"function"==typeof i?n?[i.listener||i]:[i]:n?function(e){for(var t=new Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(i):h(i,i.length)}function p(e){var t=this._events;if(void 0!==t){var n=t[e];if("function"==typeof n)return 1;if(void 0!==n)return n.length}return 0}function h(e,t){for(var n=new Array(t),r=0;r<t;++r)n[r]=e[r];return n}function g(e,t,n,r){if("function"==typeof e.on)r.once?e.once(t,n):e.on(t,n);else{if("function"!=typeof e.addEventListener)throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e);e.addEventListener(t,(function i(o){r.once&&e.removeEventListener(t,i),n(o)}))}}Object.defineProperty(o,"defaultMaxListeners",{enumerable:!0,get:function(){return s},set:function(e){if("number"!=typeof e||e<0||i(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");s=e}}),o.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},o.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||i(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},o.prototype.getMaxListeners=function(){return a(this)},o.prototype.emit=function(e){for(var t=[],n=1;n<arguments.length;n++)t.push(arguments[n]);var i="error"===e,o=this._events;if(void 0!==o)i=i&&void 0===o.error;else if(!i)return!1;if(i){var s;if(t.length>0&&(s=t[0]),s instanceof Error)throw s;var u=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw u.context=s,u}var a=o[e];if(void 0===a)return!1;if("function"==typeof a)r(a,this,t);else{var c=a.length,l=h(a,c);for(n=0;n<c;++n)r(l[n],this,t)}return!0},o.prototype.addListener=function(e,t){return c(this,e,t,!1)},o.prototype.on=o.prototype.addListener,o.prototype.prependListener=function(e,t){return c(this,e,t,!0)},o.prototype.once=function(e,t){return u(t),this.on(e,f(this,e,t)),this},o.prototype.prependOnceListener=function(e,t){return u(t),this.prependListener(e,f(this,e,t)),this},o.prototype.removeListener=function(e,t){var n,r,i,o,s;if(u(t),void 0===(r=this._events))return this;if(void 0===(n=r[e]))return this;if(n===t||n.listener===t)0==--this._eventsCount?this._events=Object.create(null):(delete r[e],r.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!=typeof n){for(i=-1,o=n.length-1;o>=0;o--)if(n[o]===t||n[o].listener===t){s=n[o].listener,i=o;break}if(i<0)return this;0===i?n.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(n,i),1===n.length&&(r[e]=n[0]),void 0!==r.removeListener&&this.emit("removeListener",e,s||t)}return this},o.prototype.off=o.prototype.removeListener,o.prototype.removeAllListeners=function(e){var t,n,r;if(void 0===(n=this._events))return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[e]&&(0==--this._eventsCount?this._events=Object.create(null):delete n[e]),this;if(0===arguments.length){var i,o=Object.keys(n);for(r=0;r<o.length;++r)"removeListener"!==(i=o[r])&&this.removeAllListeners(i);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(t=n[e]))this.removeListener(e,t);else if(void 0!==t)for(r=t.length-1;r>=0;r--)this.removeListener(e,t[r]);return this},o.prototype.listeners=function(e){return d(this,e,!0)},o.prototype.rawListeners=function(e){return d(this,e,!1)},o.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):p.call(e,t)},o.prototype.listenerCount=p,o.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},44937:(e,t,n)=>{var r=n(158).Symbol;e.exports=r},20194:(e,t,n)=>{var r=n(44937),i=n(15401),o=n(92445),s=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":s&&s in Object(e)?i(e):o(e)}},12383:(e,t,n)=>{var r=n(38725),i=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(i,""):e}},14528:(e,t,n)=>{var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=r},15401:(e,t,n)=>{var r=n(44937),i=Object.prototype,o=i.hasOwnProperty,s=i.toString,u=r?r.toStringTag:void 0;e.exports=function(e){var t=o.call(e,u),n=e[u];try{e[u]=void 0;var r=!0}catch(e){}var i=s.call(e);return r&&(t?e[u]=n:delete e[u]),i}},92445:e=>{var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},158:(e,t,n)=>{var r=n(14528),i="object"==typeof self&&self&&self.Object===Object&&self,o=r||i||Function("return this")();e.exports=o},38725:e=>{var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},76897:(e,t,n)=>{var r=n(23619),i=n(98253),o=n(95053),s=Math.max,u=Math.min;e.exports=function(e,t,n){var a,c,l,f,d,p,h=0,g=!1,m=!1,y=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function v(t){var n=a,r=c;return a=c=void 0,h=t,f=e.apply(r,n)}function b(e){return h=e,d=setTimeout(S,t),g?v(e):f}function _(e){var n=e-p;return void 0===p||n>=t||n<0||m&&e-h>=l}function S(){var e=i();if(_(e))return w(e);d=setTimeout(S,function(e){var n=t-(e-p);return m?u(n,l-(e-h)):n}(e))}function w(e){return d=void 0,y&&a?v(e):(a=c=void 0,f)}function E(){var e=i(),n=_(e);if(a=arguments,c=this,p=e,n){if(void 0===d)return b(p);if(m)return clearTimeout(d),d=setTimeout(S,t),v(p)}return void 0===d&&(d=setTimeout(S,t)),f}return t=o(t)||0,r(n)&&(g=!!n.leading,l=(m="maxWait"in n)?s(o(n.maxWait)||0,t):l,y="trailing"in n?!!n.trailing:y),E.cancel=function(){void 0!==d&&clearTimeout(d),h=0,a=p=c=d=void 0},E.flush=function(){return void 0===d?f:w(i())},E}},23619:e=>{e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},81653:e=>{e.exports=function(e){return null!=e&&"object"==typeof e}},81878:(e,t,n)=>{var r=n(20194),i=n(81653);e.exports=function(e){return"symbol"==typeof e||i(e)&&"[object Symbol]"==r(e)}},53059:function(e,t,n){var r;e=n.nmd(e),function(){var i,o="Expected a function",s="__lodash_hash_undefined__",u="__lodash_placeholder__",a=32,c=128,l=1/0,f=9007199254740991,d=NaN,p=4294967295,h=[["ary",c],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",a],["partialRight",64],["rearg",256]],g="[object Arguments]",m="[object Array]",y="[object Boolean]",v="[object Date]",b="[object Error]",_="[object Function]",S="[object GeneratorFunction]",w="[object Map]",E="[object Number]",C="[object Object]",A="[object Promise]",I="[object RegExp]",L="[object Set]",T="[object String]",R="[object Symbol]",O="[object WeakMap]",k="[object ArrayBuffer]",D="[object DataView]",N="[object Float32Array]",x="[object Float64Array]",P="[object Int8Array]",M="[object Int16Array]",B="[object Int32Array]",W="[object Uint8Array]",j="[object Uint8ClampedArray]",$="[object Uint16Array]",F="[object Uint32Array]",U=/\b__p \+= '';/g,V=/\b(__p \+=) '' \+/g,H=/(__e\(.*?\)|\b__t\)) \+\n'';/g,q=/&(?:amp|lt|gt|quot|#39);/g,G=/[&<>"']/g,z=RegExp(q.source),Q=RegExp(G.source),K=/<%-([\s\S]+?)%>/g,Y=/<%([\s\S]+?)%>/g,J=/<%=([\s\S]+?)%>/g,Z=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,X=/^\w*$/,ee=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,te=/[\\^$.*+?()[\]{}|]/g,ne=RegExp(te.source),re=/^\s+/,ie=/\s/,oe=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,se=/\{\n\/\* \[wrapped with (.+)\] \*/,ue=/,? & /,ae=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ce=/[()=,{}\[\]\/\s]/,le=/\\(\\)?/g,fe=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,de=/\w*$/,pe=/^[-+]0x[0-9a-f]+$/i,he=/^0b[01]+$/i,ge=/^\[object .+?Constructor\]$/,me=/^0o[0-7]+$/i,ye=/^(?:0|[1-9]\d*)$/,ve=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,be=/($^)/,_e=/['\n\r\u2028\u2029\\]/g,Se="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",we="a-z\\xdf-\\xf6\\xf8-\\xff",Ee="A-Z\\xc0-\\xd6\\xd8-\\xde",Ce="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ae="["+Ce+"]",Ie="["+Se+"]",Le="\\d+",Te="["+we+"]",Re="[^\\ud800-\\udfff"+Ce+Le+"\\u2700-\\u27bf"+we+Ee+"]",Oe="\\ud83c[\\udffb-\\udfff]",ke="[^\\ud800-\\udfff]",De="(?:\\ud83c[\\udde6-\\uddff]){2}",Ne="[\\ud800-\\udbff][\\udc00-\\udfff]",xe="["+Ee+"]",Pe="(?:"+Te+"|"+Re+")",Me="(?:"+xe+"|"+Re+")",Be="(?:['’](?:d|ll|m|re|s|t|ve))?",We="(?:['’](?:D|LL|M|RE|S|T|VE))?",je="(?:"+Ie+"|"+Oe+")?",$e="[\\ufe0e\\ufe0f]?",Fe=$e+je+"(?:\\u200d(?:"+[ke,De,Ne].join("|")+")"+$e+je+")*",Ue="(?:"+["[\\u2700-\\u27bf]",De,Ne].join("|")+")"+Fe,Ve="(?:"+[ke+Ie+"?",Ie,De,Ne,"[\\ud800-\\udfff]"].join("|")+")",He=RegExp("['’]","g"),qe=RegExp(Ie,"g"),Ge=RegExp(Oe+"(?="+Oe+")|"+Ve+Fe,"g"),ze=RegExp([xe+"?"+Te+"+"+Be+"(?="+[Ae,xe,"$"].join("|")+")",Me+"+"+We+"(?="+[Ae,xe+Pe,"$"].join("|")+")",xe+"?"+Pe+"+"+Be,xe+"+"+We,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Le,Ue].join("|"),"g"),Qe=RegExp("[\\u200d\\ud800-\\udfff"+Se+"\\ufe0e\\ufe0f]"),Ke=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Ye=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Je=-1,Ze={};Ze[N]=Ze[x]=Ze[P]=Ze[M]=Ze[B]=Ze[W]=Ze[j]=Ze[$]=Ze[F]=!0,Ze[g]=Ze[m]=Ze[k]=Ze[y]=Ze[D]=Ze[v]=Ze[b]=Ze[_]=Ze[w]=Ze[E]=Ze[C]=Ze[I]=Ze[L]=Ze[T]=Ze[O]=!1;var Xe={};Xe[g]=Xe[m]=Xe[k]=Xe[D]=Xe[y]=Xe[v]=Xe[N]=Xe[x]=Xe[P]=Xe[M]=Xe[B]=Xe[w]=Xe[E]=Xe[C]=Xe[I]=Xe[L]=Xe[T]=Xe[R]=Xe[W]=Xe[j]=Xe[$]=Xe[F]=!0,Xe[b]=Xe[_]=Xe[O]=!1;var et={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},tt=parseFloat,nt=parseInt,rt="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,it="object"==typeof self&&self&&self.Object===Object&&self,ot=rt||it||Function("return this")(),st=t&&!t.nodeType&&t,ut=st&&e&&!e.nodeType&&e,at=ut&&ut.exports===st,ct=at&&rt.process,lt=function(){try{return ut&&ut.require&&ut.require("util").types||ct&&ct.binding&&ct.binding("util")}catch(e){}}(),ft=lt&&lt.isArrayBuffer,dt=lt&&lt.isDate,pt=lt&&lt.isMap,ht=lt&&lt.isRegExp,gt=lt&&lt.isSet,mt=lt&&lt.isTypedArray;function yt(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function vt(e,t,n,r){for(var i=-1,o=null==e?0:e.length;++i<o;){var s=e[i];t(r,s,n(s),e)}return r}function bt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}function _t(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function St(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function wt(e,t){for(var n=-1,r=null==e?0:e.length,i=0,o=[];++n<r;){var s=e[n];t(s,n,e)&&(o[i++]=s)}return o}function Et(e,t){return!(null==e||!e.length)&&Nt(e,t,0)>-1}function Ct(e,t,n){for(var r=-1,i=null==e?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}function At(e,t){for(var n=-1,r=null==e?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}function It(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}function Lt(e,t,n,r){var i=-1,o=null==e?0:e.length;for(r&&o&&(n=e[++i]);++i<o;)n=t(n,e[i],i,e);return n}function Tt(e,t,n,r){var i=null==e?0:e.length;for(r&&i&&(n=e[--i]);i--;)n=t(n,e[i],i,e);return n}function Rt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var Ot=Bt("length");function kt(e,t,n){var r;return n(e,(function(e,n,i){if(t(e,n,i))return r=n,!1})),r}function Dt(e,t,n,r){for(var i=e.length,o=n+(r?1:-1);r?o--:++o<i;)if(t(e[o],o,e))return o;return-1}function Nt(e,t,n){return t==t?function(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}(e,t,n):Dt(e,Pt,n)}function xt(e,t,n,r){for(var i=n-1,o=e.length;++i<o;)if(r(e[i],t))return i;return-1}function Pt(e){return e!=e}function Mt(e,t){var n=null==e?0:e.length;return n?$t(e,t)/n:d}function Bt(e){return function(t){return null==t?i:t[e]}}function Wt(e){return function(t){return null==e?i:e[t]}}function jt(e,t,n,r,i){return i(e,(function(e,i,o){n=r?(r=!1,e):t(n,e,i,o)})),n}function $t(e,t){for(var n,r=-1,o=e.length;++r<o;){var s=t(e[r]);s!==i&&(n=n===i?s:n+s)}return n}function Ft(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function Ut(e){return e?e.slice(0,un(e)+1).replace(re,""):e}function Vt(e){return function(t){return e(t)}}function Ht(e,t){return At(t,(function(t){return e[t]}))}function qt(e,t){return e.has(t)}function Gt(e,t){for(var n=-1,r=e.length;++n<r&&Nt(t,e[n],0)>-1;);return n}function zt(e,t){for(var n=e.length;n--&&Nt(t,e[n],0)>-1;);return n}function Qt(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}var Kt=Wt({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),Yt=Wt({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function Jt(e){return"\\"+et[e]}function Zt(e){return Qe.test(e)}function Xt(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function en(e,t){return function(n){return e(t(n))}}function tn(e,t){for(var n=-1,r=e.length,i=0,o=[];++n<r;){var s=e[n];s!==t&&s!==u||(e[n]=u,o[i++]=n)}return o}function nn(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}function rn(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=[e,e]})),n}function on(e){return Zt(e)?function(e){for(var t=Ge.lastIndex=0;Ge.test(e);)++t;return t}(e):Ot(e)}function sn(e){return Zt(e)?function(e){return e.match(Ge)||[]}(e):function(e){return e.split("")}(e)}function un(e){for(var t=e.length;t--&&ie.test(e.charAt(t)););return t}var an=Wt({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),cn=function e(t){var n,r=(t=null==t?ot:cn.defaults(ot.Object(),t,cn.pick(ot,Ye))).Array,ie=t.Date,Se=t.Error,we=t.Function,Ee=t.Math,Ce=t.Object,Ae=t.RegExp,Ie=t.String,Le=t.TypeError,Te=r.prototype,Re=we.prototype,Oe=Ce.prototype,ke=t["__core-js_shared__"],De=Re.toString,Ne=Oe.hasOwnProperty,xe=0,Pe=(n=/[^.]+$/.exec(ke&&ke.keys&&ke.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Me=Oe.toString,Be=De.call(Ce),We=ot._,je=Ae("^"+De.call(Ne).replace(te,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),$e=at?t.Buffer:i,Fe=t.Symbol,Ue=t.Uint8Array,Ve=$e?$e.allocUnsafe:i,Ge=en(Ce.getPrototypeOf,Ce),Qe=Ce.create,et=Oe.propertyIsEnumerable,rt=Te.splice,it=Fe?Fe.isConcatSpreadable:i,st=Fe?Fe.iterator:i,ut=Fe?Fe.toStringTag:i,ct=function(){try{var e=co(Ce,"defineProperty");return e({},"",{}),e}catch(e){}}(),lt=t.clearTimeout!==ot.clearTimeout&&t.clearTimeout,Ot=ie&&ie.now!==ot.Date.now&&ie.now,Wt=t.setTimeout!==ot.setTimeout&&t.setTimeout,ln=Ee.ceil,fn=Ee.floor,dn=Ce.getOwnPropertySymbols,pn=$e?$e.isBuffer:i,hn=t.isFinite,gn=Te.join,mn=en(Ce.keys,Ce),yn=Ee.max,vn=Ee.min,bn=ie.now,_n=t.parseInt,Sn=Ee.random,wn=Te.reverse,En=co(t,"DataView"),Cn=co(t,"Map"),An=co(t,"Promise"),In=co(t,"Set"),Ln=co(t,"WeakMap"),Tn=co(Ce,"create"),Rn=Ln&&new Ln,On={},kn=jo(En),Dn=jo(Cn),Nn=jo(An),xn=jo(In),Pn=jo(Ln),Mn=Fe?Fe.prototype:i,Bn=Mn?Mn.valueOf:i,Wn=Mn?Mn.toString:i;function jn(e){if(nu(e)&&!qs(e)&&!(e instanceof Vn)){if(e instanceof Un)return e;if(Ne.call(e,"__wrapped__"))return $o(e)}return new Un(e)}var $n=function(){function e(){}return function(t){if(!tu(t))return{};if(Qe)return Qe(t);e.prototype=t;var n=new e;return e.prototype=i,n}}();function Fn(){}function Un(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=i}function Vn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=p,this.__views__=[]}function Hn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function qn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Gn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function zn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Gn;++t<n;)this.add(e[t])}function Qn(e){var t=this.__data__=new qn(e);this.size=t.size}function Kn(e,t){var n=qs(e),r=!n&&Hs(e),i=!n&&!r&&Ks(e),o=!n&&!r&&!i&&lu(e),s=n||r||i||o,u=s?Ft(e.length,Ie):[],a=u.length;for(var c in e)!t&&!Ne.call(e,c)||s&&("length"==c||i&&("offset"==c||"parent"==c)||o&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||yo(c,a))||u.push(c);return u}function Yn(e){var t=e.length;return t?e[Gr(0,t-1)]:i}function Jn(e,t){return xo(Li(e),sr(t,0,e.length))}function Zn(e){return xo(Li(e))}function Xn(e,t,n){(n!==i&&!Fs(e[t],n)||n===i&&!(t in e))&&ir(e,t,n)}function er(e,t,n){var r=e[t];Ne.call(e,t)&&Fs(r,n)&&(n!==i||t in e)||ir(e,t,n)}function tr(e,t){for(var n=e.length;n--;)if(Fs(e[n][0],t))return n;return-1}function nr(e,t,n,r){return fr(e,(function(e,i,o){t(r,e,n(e),o)})),r}function rr(e,t){return e&&Ti(t,Du(t),e)}function ir(e,t,n){"__proto__"==t&&ct?ct(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function or(e,t){for(var n=-1,o=t.length,s=r(o),u=null==e;++n<o;)s[n]=u?i:Lu(e,t[n]);return s}function sr(e,t,n){return e==e&&(n!==i&&(e=e<=n?e:n),t!==i&&(e=e>=t?e:t)),e}function ur(e,t,n,r,o,s){var u,a=1&t,c=2&t,l=4&t;if(n&&(u=o?n(e,r,o,s):n(e)),u!==i)return u;if(!tu(e))return e;var f=qs(e);if(f){if(u=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&Ne.call(e,"index")&&(n.index=e.index,n.input=e.input),n}(e),!a)return Li(e,u)}else{var d=po(e),p=d==_||d==S;if(Ks(e))return Si(e,a);if(d==C||d==g||p&&!o){if(u=c||p?{}:go(e),!a)return c?function(e,t){return Ti(e,fo(e),t)}(e,function(e,t){return e&&Ti(t,Nu(t),e)}(u,e)):function(e,t){return Ti(e,lo(e),t)}(e,rr(u,e))}else{if(!Xe[d])return o?e:{};u=function(e,t,n){var r,i=e.constructor;switch(t){case k:return wi(e);case y:case v:return new i(+e);case D:return function(e,t){var n=t?wi(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case N:case x:case P:case M:case B:case W:case j:case $:case F:return Ei(e,n);case w:return new i;case E:case T:return new i(e);case I:return function(e){var t=new e.constructor(e.source,de.exec(e));return t.lastIndex=e.lastIndex,t}(e);case L:return new i;case R:return r=e,Bn?Ce(Bn.call(r)):{}}}(e,d,a)}}s||(s=new Qn);var h=s.get(e);if(h)return h;s.set(e,u),uu(e)?e.forEach((function(r){u.add(ur(r,t,n,r,e,s))})):ru(e)&&e.forEach((function(r,i){u.set(i,ur(r,t,n,i,e,s))}));var m=f?i:(l?c?no:to:c?Nu:Du)(e);return bt(m||e,(function(r,i){m&&(r=e[i=r]),er(u,i,ur(r,t,n,i,e,s))})),u}function ar(e,t,n){var r=n.length;if(null==e)return!r;for(e=Ce(e);r--;){var o=n[r],s=t[o],u=e[o];if(u===i&&!(o in e)||!s(u))return!1}return!0}function cr(e,t,n){if("function"!=typeof e)throw new Le(o);return Oo((function(){e.apply(i,n)}),t)}function lr(e,t,n,r){var i=-1,o=Et,s=!0,u=e.length,a=[],c=t.length;if(!u)return a;n&&(t=At(t,Vt(n))),r?(o=Ct,s=!1):t.length>=200&&(o=qt,s=!1,t=new zn(t));e:for(;++i<u;){var l=e[i],f=null==n?l:n(l);if(l=r||0!==l?l:0,s&&f==f){for(var d=c;d--;)if(t[d]===f)continue e;a.push(l)}else o(t,f,r)||a.push(l)}return a}jn.templateSettings={escape:K,evaluate:Y,interpolate:J,variable:"",imports:{_:jn}},jn.prototype=Fn.prototype,jn.prototype.constructor=jn,Un.prototype=$n(Fn.prototype),Un.prototype.constructor=Un,Vn.prototype=$n(Fn.prototype),Vn.prototype.constructor=Vn,Hn.prototype.clear=function(){this.__data__=Tn?Tn(null):{},this.size=0},Hn.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Hn.prototype.get=function(e){var t=this.__data__;if(Tn){var n=t[e];return n===s?i:n}return Ne.call(t,e)?t[e]:i},Hn.prototype.has=function(e){var t=this.__data__;return Tn?t[e]!==i:Ne.call(t,e)},Hn.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Tn&&t===i?s:t,this},qn.prototype.clear=function(){this.__data__=[],this.size=0},qn.prototype.delete=function(e){var t=this.__data__,n=tr(t,e);return!(n<0||(n==t.length-1?t.pop():rt.call(t,n,1),--this.size,0))},qn.prototype.get=function(e){var t=this.__data__,n=tr(t,e);return n<0?i:t[n][1]},qn.prototype.has=function(e){return tr(this.__data__,e)>-1},qn.prototype.set=function(e,t){var n=this.__data__,r=tr(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Gn.prototype.clear=function(){this.size=0,this.__data__={hash:new Hn,map:new(Cn||qn),string:new Hn}},Gn.prototype.delete=function(e){var t=uo(this,e).delete(e);return this.size-=t?1:0,t},Gn.prototype.get=function(e){return uo(this,e).get(e)},Gn.prototype.has=function(e){return uo(this,e).has(e)},Gn.prototype.set=function(e,t){var n=uo(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},zn.prototype.add=zn.prototype.push=function(e){return this.__data__.set(e,s),this},zn.prototype.has=function(e){return this.__data__.has(e)},Qn.prototype.clear=function(){this.__data__=new qn,this.size=0},Qn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Qn.prototype.get=function(e){return this.__data__.get(e)},Qn.prototype.has=function(e){return this.__data__.has(e)},Qn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof qn){var r=n.__data__;if(!Cn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Gn(r)}return n.set(e,t),this.size=n.size,this};var fr=ki(br),dr=ki(_r,!0);function pr(e,t){var n=!0;return fr(e,(function(e,r,i){return n=!!t(e,r,i)})),n}function hr(e,t,n){for(var r=-1,o=e.length;++r<o;){var s=e[r],u=t(s);if(null!=u&&(a===i?u==u&&!cu(u):n(u,a)))var a=u,c=s}return c}function gr(e,t){var n=[];return fr(e,(function(e,r,i){t(e,r,i)&&n.push(e)})),n}function mr(e,t,n,r,i){var o=-1,s=e.length;for(n||(n=mo),i||(i=[]);++o<s;){var u=e[o];t>0&&n(u)?t>1?mr(u,t-1,n,r,i):It(i,u):r||(i[i.length]=u)}return i}var yr=Di(),vr=Di(!0);function br(e,t){return e&&yr(e,t,Du)}function _r(e,t){return e&&vr(e,t,Du)}function Sr(e,t){return wt(t,(function(t){return Zs(e[t])}))}function wr(e,t){for(var n=0,r=(t=yi(t,e)).length;null!=e&&n<r;)e=e[Wo(t[n++])];return n&&n==r?e:i}function Er(e,t,n){var r=t(e);return qs(e)?r:It(r,n(e))}function Cr(e){return null==e?e===i?"[object Undefined]":"[object Null]":ut&&ut in Ce(e)?function(e){var t=Ne.call(e,ut),n=e[ut];try{e[ut]=i;var r=!0}catch(e){}var o=Me.call(e);return r&&(t?e[ut]=n:delete e[ut]),o}(e):function(e){return Me.call(e)}(e)}function Ar(e,t){return e>t}function Ir(e,t){return null!=e&&Ne.call(e,t)}function Lr(e,t){return null!=e&&t in Ce(e)}function Tr(e,t,n){for(var o=n?Ct:Et,s=e[0].length,u=e.length,a=u,c=r(u),l=1/0,f=[];a--;){var d=e[a];a&&t&&(d=At(d,Vt(t))),l=vn(d.length,l),c[a]=!n&&(t||s>=120&&d.length>=120)?new zn(a&&d):i}d=e[0];var p=-1,h=c[0];e:for(;++p<s&&f.length<l;){var g=d[p],m=t?t(g):g;if(g=n||0!==g?g:0,!(h?qt(h,m):o(f,m,n))){for(a=u;--a;){var y=c[a];if(!(y?qt(y,m):o(e[a],m,n)))continue e}h&&h.push(m),f.push(g)}}return f}function Rr(e,t,n){var r=null==(e=Io(e,t=yi(t,e)))?e:e[Wo(Jo(t))];return null==r?i:yt(r,e,n)}function Or(e){return nu(e)&&Cr(e)==g}function kr(e,t,n,r,o){return e===t||(null==e||null==t||!nu(e)&&!nu(t)?e!=e&&t!=t:function(e,t,n,r,o,s){var u=qs(e),a=qs(t),c=u?m:po(e),l=a?m:po(t),f=(c=c==g?C:c)==C,d=(l=l==g?C:l)==C,p=c==l;if(p&&Ks(e)){if(!Ks(t))return!1;u=!0,f=!1}if(p&&!f)return s||(s=new Qn),u||lu(e)?Xi(e,t,n,r,o,s):function(e,t,n,r,i,o,s){switch(n){case D:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case k:return!(e.byteLength!=t.byteLength||!o(new Ue(e),new Ue(t)));case y:case v:case E:return Fs(+e,+t);case b:return e.name==t.name&&e.message==t.message;case I:case T:return e==t+"";case w:var u=Xt;case L:var a=1&r;if(u||(u=nn),e.size!=t.size&&!a)return!1;var c=s.get(e);if(c)return c==t;r|=2,s.set(e,t);var l=Xi(u(e),u(t),r,i,o,s);return s.delete(e),l;case R:if(Bn)return Bn.call(e)==Bn.call(t)}return!1}(e,t,c,n,r,o,s);if(!(1&n)){var h=f&&Ne.call(e,"__wrapped__"),_=d&&Ne.call(t,"__wrapped__");if(h||_){var S=h?e.value():e,A=_?t.value():t;return s||(s=new Qn),o(S,A,n,r,s)}}return!!p&&(s||(s=new Qn),function(e,t,n,r,o,s){var u=1&n,a=to(e),c=a.length;if(c!=to(t).length&&!u)return!1;for(var l=c;l--;){var f=a[l];if(!(u?f in t:Ne.call(t,f)))return!1}var d=s.get(e),p=s.get(t);if(d&&p)return d==t&&p==e;var h=!0;s.set(e,t),s.set(t,e);for(var g=u;++l<c;){var m=e[f=a[l]],y=t[f];if(r)var v=u?r(y,m,f,t,e,s):r(m,y,f,e,t,s);if(!(v===i?m===y||o(m,y,n,r,s):v)){h=!1;break}g||(g="constructor"==f)}if(h&&!g){var b=e.constructor,_=t.constructor;b==_||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof _&&_ instanceof _||(h=!1)}return s.delete(e),s.delete(t),h}(e,t,n,r,o,s))}(e,t,n,r,kr,o))}function Dr(e,t,n,r){var o=n.length,s=o,u=!r;if(null==e)return!s;for(e=Ce(e);o--;){var a=n[o];if(u&&a[2]?a[1]!==e[a[0]]:!(a[0]in e))return!1}for(;++o<s;){var c=(a=n[o])[0],l=e[c],f=a[1];if(u&&a[2]){if(l===i&&!(c in e))return!1}else{var d=new Qn;if(r)var p=r(l,f,c,e,t,d);if(!(p===i?kr(f,l,3,r,d):p))return!1}}return!0}function Nr(e){return!(!tu(e)||(t=e,Pe&&Pe in t))&&(Zs(e)?je:ge).test(jo(e));var t}function xr(e){return"function"==typeof e?e:null==e?ia:"object"==typeof e?qs(e)?jr(e[0],e[1]):Wr(e):pa(e)}function Pr(e){if(!wo(e))return mn(e);var t=[];for(var n in Ce(e))Ne.call(e,n)&&"constructor"!=n&&t.push(n);return t}function Mr(e,t){return e<t}function Br(e,t){var n=-1,i=zs(e)?r(e.length):[];return fr(e,(function(e,r,o){i[++n]=t(e,r,o)})),i}function Wr(e){var t=ao(e);return 1==t.length&&t[0][2]?Co(t[0][0],t[0][1]):function(n){return n===e||Dr(n,e,t)}}function jr(e,t){return bo(e)&&Eo(t)?Co(Wo(e),t):function(n){var r=Lu(n,e);return r===i&&r===t?Tu(n,e):kr(t,r,3)}}function $r(e,t,n,r,o){e!==t&&yr(t,(function(s,u){if(o||(o=new Qn),tu(s))!function(e,t,n,r,o,s,u){var a=To(e,n),c=To(t,n),l=u.get(c);if(l)Xn(e,n,l);else{var f=s?s(a,c,n+"",e,t,u):i,d=f===i;if(d){var p=qs(c),h=!p&&Ks(c),g=!p&&!h&&lu(c);f=c,p||h||g?qs(a)?f=a:Qs(a)?f=Li(a):h?(d=!1,f=Si(c,!0)):g?(d=!1,f=Ei(c,!0)):f=[]:ou(c)||Hs(c)?(f=a,Hs(a)?f=vu(a):tu(a)&&!Zs(a)||(f=go(c))):d=!1}d&&(u.set(c,f),o(f,c,r,s,u),u.delete(c)),Xn(e,n,f)}}(e,t,u,n,$r,r,o);else{var a=r?r(To(e,u),s,u+"",e,t,o):i;a===i&&(a=s),Xn(e,u,a)}}),Nu)}function Fr(e,t){var n=e.length;if(n)return yo(t+=t<0?n:0,n)?e[t]:i}function Ur(e,t,n){t=t.length?At(t,(function(e){return qs(e)?function(t){return wr(t,1===e.length?e[0]:e)}:e})):[ia];var r=-1;return t=At(t,Vt(so())),function(e,t){var r=e.length;for(e.sort((function(e,t){return function(e,t,n){for(var r=-1,i=e.criteria,o=t.criteria,s=i.length,u=n.length;++r<s;){var a=Ci(i[r],o[r]);if(a)return r>=u?a:a*("desc"==n[r]?-1:1)}return e.index-t.index}(e,t,n)}));r--;)e[r]=e[r].value;return e}(Br(e,(function(e,n,i){return{criteria:At(t,(function(t){return t(e)})),index:++r,value:e}})))}function Vr(e,t,n){for(var r=-1,i=t.length,o={};++r<i;){var s=t[r],u=wr(e,s);n(u,s)&&Jr(o,yi(s,e),u)}return o}function Hr(e,t,n,r){var i=r?xt:Nt,o=-1,s=t.length,u=e;for(e===t&&(t=Li(t)),n&&(u=At(e,Vt(n)));++o<s;)for(var a=0,c=t[o],l=n?n(c):c;(a=i(u,l,a,r))>-1;)u!==e&&rt.call(u,a,1),rt.call(e,a,1);return e}function qr(e,t){for(var n=e?t.length:0,r=n-1;n--;){var i=t[n];if(n==r||i!==o){var o=i;yo(i)?rt.call(e,i,1):ci(e,i)}}return e}function Gr(e,t){return e+fn(Sn()*(t-e+1))}function zr(e,t){var n="";if(!e||t<1||t>f)return n;do{t%2&&(n+=e),(t=fn(t/2))&&(e+=e)}while(t);return n}function Qr(e,t){return ko(Ao(e,t,ia),e+"")}function Kr(e){return Yn(Fu(e))}function Yr(e,t){var n=Fu(e);return xo(n,sr(t,0,n.length))}function Jr(e,t,n,r){if(!tu(e))return e;for(var o=-1,s=(t=yi(t,e)).length,u=s-1,a=e;null!=a&&++o<s;){var c=Wo(t[o]),l=n;if("__proto__"===c||"constructor"===c||"prototype"===c)return e;if(o!=u){var f=a[c];(l=r?r(f,c,a):i)===i&&(l=tu(f)?f:yo(t[o+1])?[]:{})}er(a,c,l),a=a[c]}return e}var Zr=Rn?function(e,t){return Rn.set(e,t),e}:ia,Xr=ct?function(e,t){return ct(e,"toString",{configurable:!0,enumerable:!1,value:ta(t),writable:!0})}:ia;function ei(e){return xo(Fu(e))}function ti(e,t,n){var i=-1,o=e.length;t<0&&(t=-t>o?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var s=r(o);++i<o;)s[i]=e[i+t];return s}function ni(e,t){var n;return fr(e,(function(e,r,i){return!(n=t(e,r,i))})),!!n}function ri(e,t,n){var r=0,i=null==e?r:e.length;if("number"==typeof t&&t==t&&i<=2147483647){for(;r<i;){var o=r+i>>>1,s=e[o];null!==s&&!cu(s)&&(n?s<=t:s<t)?r=o+1:i=o}return i}return ii(e,t,ia,n)}function ii(e,t,n,r){var o=0,s=null==e?0:e.length;if(0===s)return 0;for(var u=(t=n(t))!=t,a=null===t,c=cu(t),l=t===i;o<s;){var f=fn((o+s)/2),d=n(e[f]),p=d!==i,h=null===d,g=d==d,m=cu(d);if(u)var y=r||g;else y=l?g&&(r||p):a?g&&p&&(r||!h):c?g&&p&&!h&&(r||!m):!h&&!m&&(r?d<=t:d<t);y?o=f+1:s=f}return vn(s,4294967294)}function oi(e,t){for(var n=-1,r=e.length,i=0,o=[];++n<r;){var s=e[n],u=t?t(s):s;if(!n||!Fs(u,a)){var a=u;o[i++]=0===s?0:s}}return o}function si(e){return"number"==typeof e?e:cu(e)?d:+e}function ui(e){if("string"==typeof e)return e;if(qs(e))return At(e,ui)+"";if(cu(e))return Wn?Wn.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ai(e,t,n){var r=-1,i=Et,o=e.length,s=!0,u=[],a=u;if(n)s=!1,i=Ct;else if(o>=200){var c=t?null:zi(e);if(c)return nn(c);s=!1,i=qt,a=new zn}else a=t?[]:u;e:for(;++r<o;){var l=e[r],f=t?t(l):l;if(l=n||0!==l?l:0,s&&f==f){for(var d=a.length;d--;)if(a[d]===f)continue e;t&&a.push(f),u.push(l)}else i(a,f,n)||(a!==u&&a.push(f),u.push(l))}return u}function ci(e,t){return null==(e=Io(e,t=yi(t,e)))||delete e[Wo(Jo(t))]}function li(e,t,n,r){return Jr(e,t,n(wr(e,t)),r)}function fi(e,t,n,r){for(var i=e.length,o=r?i:-1;(r?o--:++o<i)&&t(e[o],o,e););return n?ti(e,r?0:o,r?o+1:i):ti(e,r?o+1:0,r?i:o)}function di(e,t){var n=e;return n instanceof Vn&&(n=n.value()),Lt(t,(function(e,t){return t.func.apply(t.thisArg,It([e],t.args))}),n)}function pi(e,t,n){var i=e.length;if(i<2)return i?ai(e[0]):[];for(var o=-1,s=r(i);++o<i;)for(var u=e[o],a=-1;++a<i;)a!=o&&(s[o]=lr(s[o]||u,e[a],t,n));return ai(mr(s,1),t,n)}function hi(e,t,n){for(var r=-1,o=e.length,s=t.length,u={};++r<o;){var a=r<s?t[r]:i;n(u,e[r],a)}return u}function gi(e){return Qs(e)?e:[]}function mi(e){return"function"==typeof e?e:ia}function yi(e,t){return qs(e)?e:bo(e,t)?[e]:Bo(bu(e))}var vi=Qr;function bi(e,t,n){var r=e.length;return n=n===i?r:n,!t&&n>=r?e:ti(e,t,n)}var _i=lt||function(e){return ot.clearTimeout(e)};function Si(e,t){if(t)return e.slice();var n=e.length,r=Ve?Ve(n):new e.constructor(n);return e.copy(r),r}function wi(e){var t=new e.constructor(e.byteLength);return new Ue(t).set(new Ue(e)),t}function Ei(e,t){var n=t?wi(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function Ci(e,t){if(e!==t){var n=e!==i,r=null===e,o=e==e,s=cu(e),u=t!==i,a=null===t,c=t==t,l=cu(t);if(!a&&!l&&!s&&e>t||s&&u&&c&&!a&&!l||r&&u&&c||!n&&c||!o)return 1;if(!r&&!s&&!l&&e<t||l&&n&&o&&!r&&!s||a&&n&&o||!u&&o||!c)return-1}return 0}function Ai(e,t,n,i){for(var o=-1,s=e.length,u=n.length,a=-1,c=t.length,l=yn(s-u,0),f=r(c+l),d=!i;++a<c;)f[a]=t[a];for(;++o<u;)(d||o<s)&&(f[n[o]]=e[o]);for(;l--;)f[a++]=e[o++];return f}function Ii(e,t,n,i){for(var o=-1,s=e.length,u=-1,a=n.length,c=-1,l=t.length,f=yn(s-a,0),d=r(f+l),p=!i;++o<f;)d[o]=e[o];for(var h=o;++c<l;)d[h+c]=t[c];for(;++u<a;)(p||o<s)&&(d[h+n[u]]=e[o++]);return d}function Li(e,t){var n=-1,i=e.length;for(t||(t=r(i));++n<i;)t[n]=e[n];return t}function Ti(e,t,n,r){var o=!n;n||(n={});for(var s=-1,u=t.length;++s<u;){var a=t[s],c=r?r(n[a],e[a],a,n,e):i;c===i&&(c=e[a]),o?ir(n,a,c):er(n,a,c)}return n}function Ri(e,t){return function(n,r){var i=qs(n)?vt:nr,o=t?t():{};return i(n,e,so(r,2),o)}}function Oi(e){return Qr((function(t,n){var r=-1,o=n.length,s=o>1?n[o-1]:i,u=o>2?n[2]:i;for(s=e.length>3&&"function"==typeof s?(o--,s):i,u&&vo(n[0],n[1],u)&&(s=o<3?i:s,o=1),t=Ce(t);++r<o;){var a=n[r];a&&e(t,a,r,s)}return t}))}function ki(e,t){return function(n,r){if(null==n)return n;if(!zs(n))return e(n,r);for(var i=n.length,o=t?i:-1,s=Ce(n);(t?o--:++o<i)&&!1!==r(s[o],o,s););return n}}function Di(e){return function(t,n,r){for(var i=-1,o=Ce(t),s=r(t),u=s.length;u--;){var a=s[e?u:++i];if(!1===n(o[a],a,o))break}return t}}function Ni(e){return function(t){var n=Zt(t=bu(t))?sn(t):i,r=n?n[0]:t.charAt(0),o=n?bi(n,1).join(""):t.slice(1);return r[e]()+o}}function xi(e){return function(t){return Lt(Zu(Hu(t).replace(He,"")),e,"")}}function Pi(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=$n(e.prototype),r=e.apply(n,t);return tu(r)?r:n}}function Mi(e){return function(t,n,r){var o=Ce(t);if(!zs(t)){var s=so(n,3);t=Du(t),n=function(e){return s(o[e],e,o)}}var u=e(t,n,r);return u>-1?o[s?t[u]:u]:i}}function Bi(e){return eo((function(t){var n=t.length,r=n,s=Un.prototype.thru;for(e&&t.reverse();r--;){var u=t[r];if("function"!=typeof u)throw new Le(o);if(s&&!a&&"wrapper"==io(u))var a=new Un([],!0)}for(r=a?r:n;++r<n;){var c=io(u=t[r]),l="wrapper"==c?ro(u):i;a=l&&_o(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?a[io(l[0])].apply(a,l[3]):1==u.length&&_o(u)?a[c]():a.thru(u)}return function(){var e=arguments,r=e[0];if(a&&1==e.length&&qs(r))return a.plant(r).value();for(var i=0,o=n?t[i].apply(this,e):r;++i<n;)o=t[i].call(this,o);return o}}))}function Wi(e,t,n,o,s,u,a,l,f,d){var p=t&c,h=1&t,g=2&t,m=24&t,y=512&t,v=g?i:Pi(e);return function i(){for(var c=arguments.length,b=r(c),_=c;_--;)b[_]=arguments[_];if(m)var S=oo(i),w=Qt(b,S);if(o&&(b=Ai(b,o,s,m)),u&&(b=Ii(b,u,a,m)),c-=w,m&&c<d){var E=tn(b,S);return qi(e,t,Wi,i.placeholder,n,b,E,l,f,d-c)}var C=h?n:this,A=g?C[e]:e;return c=b.length,l?b=Lo(b,l):y&&c>1&&b.reverse(),p&&f<c&&(b.length=f),this&&this!==ot&&this instanceof i&&(A=v||Pi(A)),A.apply(C,b)}}function ji(e,t){return function(n,r){return function(e,t,n,r){return br(e,(function(e,i,o){t(r,n(e),i,o)})),r}(n,e,t(r),{})}}function $i(e,t){return function(n,r){var o;if(n===i&&r===i)return t;if(n!==i&&(o=n),r!==i){if(o===i)return r;"string"==typeof n||"string"==typeof r?(n=ui(n),r=ui(r)):(n=si(n),r=si(r)),o=e(n,r)}return o}}function Fi(e){return eo((function(t){return t=At(t,Vt(so())),Qr((function(n){var r=this;return e(t,(function(e){return yt(e,r,n)}))}))}))}function Ui(e,t){var n=(t=t===i?" ":ui(t)).length;if(n<2)return n?zr(t,e):t;var r=zr(t,ln(e/on(t)));return Zt(t)?bi(sn(r),0,e).join(""):r.slice(0,e)}function Vi(e){return function(t,n,o){return o&&"number"!=typeof o&&vo(t,n,o)&&(n=o=i),t=hu(t),n===i?(n=t,t=0):n=hu(n),function(e,t,n,i){for(var o=-1,s=yn(ln((t-e)/(n||1)),0),u=r(s);s--;)u[i?s:++o]=e,e+=n;return u}(t,n,o=o===i?t<n?1:-1:hu(o),e)}}function Hi(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=yu(t),n=yu(n)),e(t,n)}}function qi(e,t,n,r,o,s,u,c,l,f){var d=8&t;t|=d?a:64,4&(t&=~(d?64:a))||(t&=-4);var p=[e,t,o,d?s:i,d?u:i,d?i:s,d?i:u,c,l,f],h=n.apply(i,p);return _o(e)&&Ro(h,p),h.placeholder=r,Do(h,e,t)}function Gi(e){var t=Ee[e];return function(e,n){if(e=yu(e),(n=null==n?0:vn(gu(n),292))&&hn(e)){var r=(bu(e)+"e").split("e");return+((r=(bu(t(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}var zi=In&&1/nn(new In([,-0]))[1]==l?function(e){return new In(e)}:ca;function Qi(e){return function(t){var n=po(t);return n==w?Xt(t):n==L?rn(t):function(e,t){return At(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Ki(e,t,n,s,l,f,d,p){var h=2&t;if(!h&&"function"!=typeof e)throw new Le(o);var g=s?s.length:0;if(g||(t&=-97,s=l=i),d=d===i?d:yn(gu(d),0),p=p===i?p:gu(p),g-=l?l.length:0,64&t){var m=s,y=l;s=l=i}var v=h?i:ro(e),b=[e,t,n,s,l,m,y,f,d,p];if(v&&function(e,t){var n=e[1],r=t[1],i=n|r,o=i<131,s=r==c&&8==n||r==c&&256==n&&e[7].length<=t[8]||384==r&&t[7].length<=t[8]&&8==n;if(!o&&!s)return e;1&r&&(e[2]=t[2],i|=1&n?0:4);var a=t[3];if(a){var l=e[3];e[3]=l?Ai(l,a,t[4]):a,e[4]=l?tn(e[3],u):t[4]}(a=t[5])&&(l=e[5],e[5]=l?Ii(l,a,t[6]):a,e[6]=l?tn(e[5],u):t[6]),(a=t[7])&&(e[7]=a),r&c&&(e[8]=null==e[8]?t[8]:vn(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=i}(b,v),e=b[0],t=b[1],n=b[2],s=b[3],l=b[4],!(p=b[9]=b[9]===i?h?0:e.length:yn(b[9]-g,0))&&24&t&&(t&=-25),t&&1!=t)_=8==t||16==t?function(e,t,n){var o=Pi(e);return function s(){for(var u=arguments.length,a=r(u),c=u,l=oo(s);c--;)a[c]=arguments[c];var f=u<3&&a[0]!==l&&a[u-1]!==l?[]:tn(a,l);return(u-=f.length)<n?qi(e,t,Wi,s.placeholder,i,a,f,i,i,n-u):yt(this&&this!==ot&&this instanceof s?o:e,this,a)}}(e,t,p):t!=a&&33!=t||l.length?Wi.apply(i,b):function(e,t,n,i){var o=1&t,s=Pi(e);return function t(){for(var u=-1,a=arguments.length,c=-1,l=i.length,f=r(l+a),d=this&&this!==ot&&this instanceof t?s:e;++c<l;)f[c]=i[c];for(;a--;)f[c++]=arguments[++u];return yt(d,o?n:this,f)}}(e,t,n,s);else var _=function(e,t,n){var r=1&t,i=Pi(e);return function t(){return(this&&this!==ot&&this instanceof t?i:e).apply(r?n:this,arguments)}}(e,t,n);return Do((v?Zr:Ro)(_,b),e,t)}function Yi(e,t,n,r){return e===i||Fs(e,Oe[n])&&!Ne.call(r,n)?t:e}function Ji(e,t,n,r,o,s){return tu(e)&&tu(t)&&(s.set(t,e),$r(e,t,i,Ji,s),s.delete(t)),e}function Zi(e){return ou(e)?i:e}function Xi(e,t,n,r,o,s){var u=1&n,a=e.length,c=t.length;if(a!=c&&!(u&&c>a))return!1;var l=s.get(e),f=s.get(t);if(l&&f)return l==t&&f==e;var d=-1,p=!0,h=2&n?new zn:i;for(s.set(e,t),s.set(t,e);++d<a;){var g=e[d],m=t[d];if(r)var y=u?r(m,g,d,t,e,s):r(g,m,d,e,t,s);if(y!==i){if(y)continue;p=!1;break}if(h){if(!Rt(t,(function(e,t){if(!qt(h,t)&&(g===e||o(g,e,n,r,s)))return h.push(t)}))){p=!1;break}}else if(g!==m&&!o(g,m,n,r,s)){p=!1;break}}return s.delete(e),s.delete(t),p}function eo(e){return ko(Ao(e,i,Go),e+"")}function to(e){return Er(e,Du,lo)}function no(e){return Er(e,Nu,fo)}var ro=Rn?function(e){return Rn.get(e)}:ca;function io(e){for(var t=e.name+"",n=On[t],r=Ne.call(On,t)?n.length:0;r--;){var i=n[r],o=i.func;if(null==o||o==e)return i.name}return t}function oo(e){return(Ne.call(jn,"placeholder")?jn:e).placeholder}function so(){var e=jn.iteratee||oa;return e=e===oa?xr:e,arguments.length?e(arguments[0],arguments[1]):e}function uo(e,t){var n,r,i=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?i["string"==typeof t?"string":"hash"]:i.map}function ao(e){for(var t=Du(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,Eo(i)]}return t}function co(e,t){var n=function(e,t){return null==e?i:e[t]}(e,t);return Nr(n)?n:i}var lo=dn?function(e){return null==e?[]:(e=Ce(e),wt(dn(e),(function(t){return et.call(e,t)})))}:ma,fo=dn?function(e){for(var t=[];e;)It(t,lo(e)),e=Ge(e);return t}:ma,po=Cr;function ho(e,t,n){for(var r=-1,i=(t=yi(t,e)).length,o=!1;++r<i;){var s=Wo(t[r]);if(!(o=null!=e&&n(e,s)))break;e=e[s]}return o||++r!=i?o:!!(i=null==e?0:e.length)&&eu(i)&&yo(s,i)&&(qs(e)||Hs(e))}function go(e){return"function"!=typeof e.constructor||wo(e)?{}:$n(Ge(e))}function mo(e){return qs(e)||Hs(e)||!!(it&&e&&e[it])}function yo(e,t){var n=typeof e;return!!(t=null==t?f:t)&&("number"==n||"symbol"!=n&&ye.test(e))&&e>-1&&e%1==0&&e<t}function vo(e,t,n){if(!tu(n))return!1;var r=typeof t;return!!("number"==r?zs(n)&&yo(t,n.length):"string"==r&&t in n)&&Fs(n[t],e)}function bo(e,t){if(qs(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!cu(e))||X.test(e)||!Z.test(e)||null!=t&&e in Ce(t)}function _o(e){var t=io(e),n=jn[t];if("function"!=typeof n||!(t in Vn.prototype))return!1;if(e===n)return!0;var r=ro(n);return!!r&&e===r[0]}(En&&po(new En(new ArrayBuffer(1)))!=D||Cn&&po(new Cn)!=w||An&&po(An.resolve())!=A||In&&po(new In)!=L||Ln&&po(new Ln)!=O)&&(po=function(e){var t=Cr(e),n=t==C?e.constructor:i,r=n?jo(n):"";if(r)switch(r){case kn:return D;case Dn:return w;case Nn:return A;case xn:return L;case Pn:return O}return t});var So=ke?Zs:ya;function wo(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Oe)}function Eo(e){return e==e&&!tu(e)}function Co(e,t){return function(n){return null!=n&&n[e]===t&&(t!==i||e in Ce(n))}}function Ao(e,t,n){return t=yn(t===i?e.length-1:t,0),function(){for(var i=arguments,o=-1,s=yn(i.length-t,0),u=r(s);++o<s;)u[o]=i[t+o];o=-1;for(var a=r(t+1);++o<t;)a[o]=i[o];return a[t]=n(u),yt(e,this,a)}}function Io(e,t){return t.length<2?e:wr(e,ti(t,0,-1))}function Lo(e,t){for(var n=e.length,r=vn(t.length,n),o=Li(e);r--;){var s=t[r];e[r]=yo(s,n)?o[s]:i}return e}function To(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Ro=No(Zr),Oo=Wt||function(e,t){return ot.setTimeout(e,t)},ko=No(Xr);function Do(e,t,n){var r=t+"";return ko(e,function(e,t){var n=t.length;if(!n)return e;var r=n-1;return t[r]=(n>1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(oe,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return bt(h,(function(n){var r="_."+n[0];t&n[1]&&!Et(e,r)&&e.push(r)})),e.sort()}(function(e){var t=e.match(se);return t?t[1].split(ue):[]}(r),n)))}function No(e){var t=0,n=0;return function(){var r=bn(),o=16-(r-n);if(n=r,o>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(i,arguments)}}function xo(e,t){var n=-1,r=e.length,o=r-1;for(t=t===i?r:t;++n<t;){var s=Gr(n,o),u=e[s];e[s]=e[n],e[n]=u}return e.length=t,e}var Po,Mo,Bo=(Po=Ps((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ee,(function(e,n,r,i){t.push(r?i.replace(le,"$1"):n||e)})),t}),(function(e){return 500===Mo.size&&Mo.clear(),e})),Mo=Po.cache,Po);function Wo(e){if("string"==typeof e||cu(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function jo(e){if(null!=e){try{return De.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function $o(e){if(e instanceof Vn)return e.clone();var t=new Un(e.__wrapped__,e.__chain__);return t.__actions__=Li(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Fo=Qr((function(e,t){return Qs(e)?lr(e,mr(t,1,Qs,!0)):[]})),Uo=Qr((function(e,t){var n=Jo(t);return Qs(n)&&(n=i),Qs(e)?lr(e,mr(t,1,Qs,!0),so(n,2)):[]})),Vo=Qr((function(e,t){var n=Jo(t);return Qs(n)&&(n=i),Qs(e)?lr(e,mr(t,1,Qs,!0),i,n):[]}));function Ho(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:gu(n);return i<0&&(i=yn(r+i,0)),Dt(e,so(t,3),i)}function qo(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var o=r-1;return n!==i&&(o=gu(n),o=n<0?yn(r+o,0):vn(o,r-1)),Dt(e,so(t,3),o,!0)}function Go(e){return null!=e&&e.length?mr(e,1):[]}function zo(e){return e&&e.length?e[0]:i}var Qo=Qr((function(e){var t=At(e,gi);return t.length&&t[0]===e[0]?Tr(t):[]})),Ko=Qr((function(e){var t=Jo(e),n=At(e,gi);return t===Jo(n)?t=i:n.pop(),n.length&&n[0]===e[0]?Tr(n,so(t,2)):[]})),Yo=Qr((function(e){var t=Jo(e),n=At(e,gi);return(t="function"==typeof t?t:i)&&n.pop(),n.length&&n[0]===e[0]?Tr(n,i,t):[]}));function Jo(e){var t=null==e?0:e.length;return t?e[t-1]:i}var Zo=Qr(Xo);function Xo(e,t){return e&&e.length&&t&&t.length?Hr(e,t):e}var es=eo((function(e,t){var n=null==e?0:e.length,r=or(e,t);return qr(e,At(t,(function(e){return yo(e,n)?+e:e})).sort(Ci)),r}));function ts(e){return null==e?e:wn.call(e)}var ns=Qr((function(e){return ai(mr(e,1,Qs,!0))})),rs=Qr((function(e){var t=Jo(e);return Qs(t)&&(t=i),ai(mr(e,1,Qs,!0),so(t,2))})),is=Qr((function(e){var t=Jo(e);return t="function"==typeof t?t:i,ai(mr(e,1,Qs,!0),i,t)}));function os(e){if(!e||!e.length)return[];var t=0;return e=wt(e,(function(e){if(Qs(e))return t=yn(e.length,t),!0})),Ft(t,(function(t){return At(e,Bt(t))}))}function ss(e,t){if(!e||!e.length)return[];var n=os(e);return null==t?n:At(n,(function(e){return yt(t,i,e)}))}var us=Qr((function(e,t){return Qs(e)?lr(e,t):[]})),as=Qr((function(e){return pi(wt(e,Qs))})),cs=Qr((function(e){var t=Jo(e);return Qs(t)&&(t=i),pi(wt(e,Qs),so(t,2))})),ls=Qr((function(e){var t=Jo(e);return t="function"==typeof t?t:i,pi(wt(e,Qs),i,t)})),fs=Qr(os),ds=Qr((function(e){var t=e.length,n=t>1?e[t-1]:i;return n="function"==typeof n?(e.pop(),n):i,ss(e,n)}));function ps(e){var t=jn(e);return t.__chain__=!0,t}function hs(e,t){return t(e)}var gs=eo((function(e){var t=e.length,n=t?e[0]:0,r=this.__wrapped__,o=function(t){return or(t,e)};return!(t>1||this.__actions__.length)&&r instanceof Vn&&yo(n)?((r=r.slice(n,+n+(t?1:0))).__actions__.push({func:hs,args:[o],thisArg:i}),new Un(r,this.__chain__).thru((function(e){return t&&!e.length&&e.push(i),e}))):this.thru(o)})),ms=Ri((function(e,t,n){Ne.call(e,n)?++e[n]:ir(e,n,1)})),ys=Mi(Ho),vs=Mi(qo);function bs(e,t){return(qs(e)?bt:fr)(e,so(t,3))}function _s(e,t){return(qs(e)?_t:dr)(e,so(t,3))}var Ss=Ri((function(e,t,n){Ne.call(e,n)?e[n].push(t):ir(e,n,[t])})),ws=Qr((function(e,t,n){var i=-1,o="function"==typeof t,s=zs(e)?r(e.length):[];return fr(e,(function(e){s[++i]=o?yt(t,e,n):Rr(e,t,n)})),s})),Es=Ri((function(e,t,n){ir(e,n,t)}));function Cs(e,t){return(qs(e)?At:Br)(e,so(t,3))}var As=Ri((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]})),Is=Qr((function(e,t){if(null==e)return[];var n=t.length;return n>1&&vo(e,t[0],t[1])?t=[]:n>2&&vo(t[0],t[1],t[2])&&(t=[t[0]]),Ur(e,mr(t,1),[])})),Ls=Ot||function(){return ot.Date.now()};function Ts(e,t,n){return t=n?i:t,t=e&&null==t?e.length:t,Ki(e,c,i,i,i,i,t)}function Rs(e,t){var n;if("function"!=typeof t)throw new Le(o);return e=gu(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=i),n}}var Os=Qr((function(e,t,n){var r=1;if(n.length){var i=tn(n,oo(Os));r|=a}return Ki(e,r,t,n,i)})),ks=Qr((function(e,t,n){var r=3;if(n.length){var i=tn(n,oo(ks));r|=a}return Ki(t,r,e,n,i)}));function Ds(e,t,n){var r,s,u,a,c,l,f=0,d=!1,p=!1,h=!0;if("function"!=typeof e)throw new Le(o);function g(t){var n=r,o=s;return r=s=i,f=t,a=e.apply(o,n)}function m(e){return f=e,c=Oo(v,t),d?g(e):a}function y(e){var n=e-l;return l===i||n>=t||n<0||p&&e-f>=u}function v(){var e=Ls();if(y(e))return b(e);c=Oo(v,function(e){var n=t-(e-l);return p?vn(n,u-(e-f)):n}(e))}function b(e){return c=i,h&&r?g(e):(r=s=i,a)}function _(){var e=Ls(),n=y(e);if(r=arguments,s=this,l=e,n){if(c===i)return m(l);if(p)return _i(c),c=Oo(v,t),g(l)}return c===i&&(c=Oo(v,t)),a}return t=yu(t)||0,tu(n)&&(d=!!n.leading,u=(p="maxWait"in n)?yn(yu(n.maxWait)||0,t):u,h="trailing"in n?!!n.trailing:h),_.cancel=function(){c!==i&&_i(c),f=0,r=l=s=c=i},_.flush=function(){return c===i?a:b(Ls())},_}var Ns=Qr((function(e,t){return cr(e,1,t)})),xs=Qr((function(e,t,n){return cr(e,yu(t)||0,n)}));function Ps(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Le(o);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var s=e.apply(this,r);return n.cache=o.set(i,s)||o,s};return n.cache=new(Ps.Cache||Gn),n}function Ms(e){if("function"!=typeof e)throw new Le(o);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ps.Cache=Gn;var Bs=vi((function(e,t){var n=(t=1==t.length&&qs(t[0])?At(t[0],Vt(so())):At(mr(t,1),Vt(so()))).length;return Qr((function(r){for(var i=-1,o=vn(r.length,n);++i<o;)r[i]=t[i].call(this,r[i]);return yt(e,this,r)}))})),Ws=Qr((function(e,t){var n=tn(t,oo(Ws));return Ki(e,a,i,t,n)})),js=Qr((function(e,t){var n=tn(t,oo(js));return Ki(e,64,i,t,n)})),$s=eo((function(e,t){return Ki(e,256,i,i,i,t)}));function Fs(e,t){return e===t||e!=e&&t!=t}var Us=Hi(Ar),Vs=Hi((function(e,t){return e>=t})),Hs=Or(function(){return arguments}())?Or:function(e){return nu(e)&&Ne.call(e,"callee")&&!et.call(e,"callee")},qs=r.isArray,Gs=ft?Vt(ft):function(e){return nu(e)&&Cr(e)==k};function zs(e){return null!=e&&eu(e.length)&&!Zs(e)}function Qs(e){return nu(e)&&zs(e)}var Ks=pn||ya,Ys=dt?Vt(dt):function(e){return nu(e)&&Cr(e)==v};function Js(e){if(!nu(e))return!1;var t=Cr(e);return t==b||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!ou(e)}function Zs(e){if(!tu(e))return!1;var t=Cr(e);return t==_||t==S||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Xs(e){return"number"==typeof e&&e==gu(e)}function eu(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=f}function tu(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function nu(e){return null!=e&&"object"==typeof e}var ru=pt?Vt(pt):function(e){return nu(e)&&po(e)==w};function iu(e){return"number"==typeof e||nu(e)&&Cr(e)==E}function ou(e){if(!nu(e)||Cr(e)!=C)return!1;var t=Ge(e);if(null===t)return!0;var n=Ne.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&De.call(n)==Be}var su=ht?Vt(ht):function(e){return nu(e)&&Cr(e)==I},uu=gt?Vt(gt):function(e){return nu(e)&&po(e)==L};function au(e){return"string"==typeof e||!qs(e)&&nu(e)&&Cr(e)==T}function cu(e){return"symbol"==typeof e||nu(e)&&Cr(e)==R}var lu=mt?Vt(mt):function(e){return nu(e)&&eu(e.length)&&!!Ze[Cr(e)]},fu=Hi(Mr),du=Hi((function(e,t){return e<=t}));function pu(e){if(!e)return[];if(zs(e))return au(e)?sn(e):Li(e);if(st&&e[st])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[st]());var t=po(e);return(t==w?Xt:t==L?nn:Fu)(e)}function hu(e){return e?(e=yu(e))===l||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function gu(e){var t=hu(e),n=t%1;return t==t?n?t-n:t:0}function mu(e){return e?sr(gu(e),0,p):0}function yu(e){if("number"==typeof e)return e;if(cu(e))return d;if(tu(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=tu(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Ut(e);var n=he.test(e);return n||me.test(e)?nt(e.slice(2),n?2:8):pe.test(e)?d:+e}function vu(e){return Ti(e,Nu(e))}function bu(e){return null==e?"":ui(e)}var _u=Oi((function(e,t){if(wo(t)||zs(t))Ti(t,Du(t),e);else for(var n in t)Ne.call(t,n)&&er(e,n,t[n])})),Su=Oi((function(e,t){Ti(t,Nu(t),e)})),wu=Oi((function(e,t,n,r){Ti(t,Nu(t),e,r)})),Eu=Oi((function(e,t,n,r){Ti(t,Du(t),e,r)})),Cu=eo(or),Au=Qr((function(e,t){e=Ce(e);var n=-1,r=t.length,o=r>2?t[2]:i;for(o&&vo(t[0],t[1],o)&&(r=1);++n<r;)for(var s=t[n],u=Nu(s),a=-1,c=u.length;++a<c;){var l=u[a],f=e[l];(f===i||Fs(f,Oe[l])&&!Ne.call(e,l))&&(e[l]=s[l])}return e})),Iu=Qr((function(e){return e.push(i,Ji),yt(Pu,i,e)}));function Lu(e,t,n){var r=null==e?i:wr(e,t);return r===i?n:r}function Tu(e,t){return null!=e&&ho(e,t,Lr)}var Ru=ji((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Me.call(t)),e[t]=n}),ta(ia)),Ou=ji((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Me.call(t)),Ne.call(e,t)?e[t].push(n):e[t]=[n]}),so),ku=Qr(Rr);function Du(e){return zs(e)?Kn(e):Pr(e)}function Nu(e){return zs(e)?Kn(e,!0):function(e){if(!tu(e))return function(e){var t=[];if(null!=e)for(var n in Ce(e))t.push(n);return t}(e);var t=wo(e),n=[];for(var r in e)("constructor"!=r||!t&&Ne.call(e,r))&&n.push(r);return n}(e)}var xu=Oi((function(e,t,n){$r(e,t,n)})),Pu=Oi((function(e,t,n,r){$r(e,t,n,r)})),Mu=eo((function(e,t){var n={};if(null==e)return n;var r=!1;t=At(t,(function(t){return t=yi(t,e),r||(r=t.length>1),t})),Ti(e,no(e),n),r&&(n=ur(n,7,Zi));for(var i=t.length;i--;)ci(n,t[i]);return n})),Bu=eo((function(e,t){return null==e?{}:function(e,t){return Vr(e,t,(function(t,n){return Tu(e,n)}))}(e,t)}));function Wu(e,t){if(null==e)return{};var n=At(no(e),(function(e){return[e]}));return t=so(t),Vr(e,n,(function(e,n){return t(e,n[0])}))}var ju=Qi(Du),$u=Qi(Nu);function Fu(e){return null==e?[]:Ht(e,Du(e))}var Uu=xi((function(e,t,n){return t=t.toLowerCase(),e+(n?Vu(t):t)}));function Vu(e){return Ju(bu(e).toLowerCase())}function Hu(e){return(e=bu(e))&&e.replace(ve,Kt).replace(qe,"")}var qu=xi((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),Gu=xi((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),zu=Ni("toLowerCase"),Qu=xi((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()})),Ku=xi((function(e,t,n){return e+(n?" ":"")+Ju(t)})),Yu=xi((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),Ju=Ni("toUpperCase");function Zu(e,t,n){return e=bu(e),(t=n?i:t)===i?function(e){return Ke.test(e)}(e)?function(e){return e.match(ze)||[]}(e):function(e){return e.match(ae)||[]}(e):e.match(t)||[]}var Xu=Qr((function(e,t){try{return yt(e,i,t)}catch(e){return Js(e)?e:new Se(e)}})),ea=eo((function(e,t){return bt(t,(function(t){t=Wo(t),ir(e,t,Os(e[t],e))})),e}));function ta(e){return function(){return e}}var na=Bi(),ra=Bi(!0);function ia(e){return e}function oa(e){return xr("function"==typeof e?e:ur(e,1))}var sa=Qr((function(e,t){return function(n){return Rr(n,e,t)}})),ua=Qr((function(e,t){return function(n){return Rr(e,n,t)}}));function aa(e,t,n){var r=Du(t),i=Sr(t,r);null!=n||tu(t)&&(i.length||!r.length)||(n=t,t=e,e=this,i=Sr(t,Du(t)));var o=!(tu(n)&&"chain"in n&&!n.chain),s=Zs(e);return bt(i,(function(n){var r=t[n];e[n]=r,s&&(e.prototype[n]=function(){var t=this.__chain__;if(o||t){var n=e(this.__wrapped__),i=n.__actions__=Li(this.__actions__);return i.push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,It([this.value()],arguments))})})),e}function ca(){}var la=Fi(At),fa=Fi(St),da=Fi(Rt);function pa(e){return bo(e)?Bt(Wo(e)):function(e){return function(t){return wr(t,e)}}(e)}var ha=Vi(),ga=Vi(!0);function ma(){return[]}function ya(){return!1}var va,ba=$i((function(e,t){return e+t}),0),_a=Gi("ceil"),Sa=$i((function(e,t){return e/t}),1),wa=Gi("floor"),Ea=$i((function(e,t){return e*t}),1),Ca=Gi("round"),Aa=$i((function(e,t){return e-t}),0);return jn.after=function(e,t){if("function"!=typeof t)throw new Le(o);return e=gu(e),function(){if(--e<1)return t.apply(this,arguments)}},jn.ary=Ts,jn.assign=_u,jn.assignIn=Su,jn.assignInWith=wu,jn.assignWith=Eu,jn.at=Cu,jn.before=Rs,jn.bind=Os,jn.bindAll=ea,jn.bindKey=ks,jn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return qs(e)?e:[e]},jn.chain=ps,jn.chunk=function(e,t,n){t=(n?vo(e,t,n):t===i)?1:yn(gu(t),0);var o=null==e?0:e.length;if(!o||t<1)return[];for(var s=0,u=0,a=r(ln(o/t));s<o;)a[u++]=ti(e,s,s+=t);return a},jn.compact=function(e){for(var t=-1,n=null==e?0:e.length,r=0,i=[];++t<n;){var o=e[t];o&&(i[r++]=o)}return i},jn.concat=function(){var e=arguments.length;if(!e)return[];for(var t=r(e-1),n=arguments[0],i=e;i--;)t[i-1]=arguments[i];return It(qs(n)?Li(n):[n],mr(t,1))},jn.cond=function(e){var t=null==e?0:e.length,n=so();return e=t?At(e,(function(e){if("function"!=typeof e[1])throw new Le(o);return[n(e[0]),e[1]]})):[],Qr((function(n){for(var r=-1;++r<t;){var i=e[r];if(yt(i[0],this,n))return yt(i[1],this,n)}}))},jn.conforms=function(e){return function(e){var t=Du(e);return function(n){return ar(n,e,t)}}(ur(e,1))},jn.constant=ta,jn.countBy=ms,jn.create=function(e,t){var n=$n(e);return null==t?n:rr(n,t)},jn.curry=function e(t,n,r){var o=Ki(t,8,i,i,i,i,i,n=r?i:n);return o.placeholder=e.placeholder,o},jn.curryRight=function e(t,n,r){var o=Ki(t,16,i,i,i,i,i,n=r?i:n);return o.placeholder=e.placeholder,o},jn.debounce=Ds,jn.defaults=Au,jn.defaultsDeep=Iu,jn.defer=Ns,jn.delay=xs,jn.difference=Fo,jn.differenceBy=Uo,jn.differenceWith=Vo,jn.drop=function(e,t,n){var r=null==e?0:e.length;return r?ti(e,(t=n||t===i?1:gu(t))<0?0:t,r):[]},jn.dropRight=function(e,t,n){var r=null==e?0:e.length;return r?ti(e,0,(t=r-(t=n||t===i?1:gu(t)))<0?0:t):[]},jn.dropRightWhile=function(e,t){return e&&e.length?fi(e,so(t,3),!0,!0):[]},jn.dropWhile=function(e,t){return e&&e.length?fi(e,so(t,3),!0):[]},jn.fill=function(e,t,n,r){var o=null==e?0:e.length;return o?(n&&"number"!=typeof n&&vo(e,t,n)&&(n=0,r=o),function(e,t,n,r){var o=e.length;for((n=gu(n))<0&&(n=-n>o?0:o+n),(r=r===i||r>o?o:gu(r))<0&&(r+=o),r=n>r?0:mu(r);n<r;)e[n++]=t;return e}(e,t,n,r)):[]},jn.filter=function(e,t){return(qs(e)?wt:gr)(e,so(t,3))},jn.flatMap=function(e,t){return mr(Cs(e,t),1)},jn.flatMapDeep=function(e,t){return mr(Cs(e,t),l)},jn.flatMapDepth=function(e,t,n){return n=n===i?1:gu(n),mr(Cs(e,t),n)},jn.flatten=Go,jn.flattenDeep=function(e){return null!=e&&e.length?mr(e,l):[]},jn.flattenDepth=function(e,t){return null!=e&&e.length?mr(e,t=t===i?1:gu(t)):[]},jn.flip=function(e){return Ki(e,512)},jn.flow=na,jn.flowRight=ra,jn.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,r={};++t<n;){var i=e[t];r[i[0]]=i[1]}return r},jn.functions=function(e){return null==e?[]:Sr(e,Du(e))},jn.functionsIn=function(e){return null==e?[]:Sr(e,Nu(e))},jn.groupBy=Ss,jn.initial=function(e){return null!=e&&e.length?ti(e,0,-1):[]},jn.intersection=Qo,jn.intersectionBy=Ko,jn.intersectionWith=Yo,jn.invert=Ru,jn.invertBy=Ou,jn.invokeMap=ws,jn.iteratee=oa,jn.keyBy=Es,jn.keys=Du,jn.keysIn=Nu,jn.map=Cs,jn.mapKeys=function(e,t){var n={};return t=so(t,3),br(e,(function(e,r,i){ir(n,t(e,r,i),e)})),n},jn.mapValues=function(e,t){var n={};return t=so(t,3),br(e,(function(e,r,i){ir(n,r,t(e,r,i))})),n},jn.matches=function(e){return Wr(ur(e,1))},jn.matchesProperty=function(e,t){return jr(e,ur(t,1))},jn.memoize=Ps,jn.merge=xu,jn.mergeWith=Pu,jn.method=sa,jn.methodOf=ua,jn.mixin=aa,jn.negate=Ms,jn.nthArg=function(e){return e=gu(e),Qr((function(t){return Fr(t,e)}))},jn.omit=Mu,jn.omitBy=function(e,t){return Wu(e,Ms(so(t)))},jn.once=function(e){return Rs(2,e)},jn.orderBy=function(e,t,n,r){return null==e?[]:(qs(t)||(t=null==t?[]:[t]),qs(n=r?i:n)||(n=null==n?[]:[n]),Ur(e,t,n))},jn.over=la,jn.overArgs=Bs,jn.overEvery=fa,jn.overSome=da,jn.partial=Ws,jn.partialRight=js,jn.partition=As,jn.pick=Bu,jn.pickBy=Wu,jn.property=pa,jn.propertyOf=function(e){return function(t){return null==e?i:wr(e,t)}},jn.pull=Zo,jn.pullAll=Xo,jn.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Hr(e,t,so(n,2)):e},jn.pullAllWith=function(e,t,n){return e&&e.length&&t&&t.length?Hr(e,t,i,n):e},jn.pullAt=es,jn.range=ha,jn.rangeRight=ga,jn.rearg=$s,jn.reject=function(e,t){return(qs(e)?wt:gr)(e,Ms(so(t,3)))},jn.remove=function(e,t){var n=[];if(!e||!e.length)return n;var r=-1,i=[],o=e.length;for(t=so(t,3);++r<o;){var s=e[r];t(s,r,e)&&(n.push(s),i.push(r))}return qr(e,i),n},jn.rest=function(e,t){if("function"!=typeof e)throw new Le(o);return Qr(e,t=t===i?t:gu(t))},jn.reverse=ts,jn.sampleSize=function(e,t,n){return t=(n?vo(e,t,n):t===i)?1:gu(t),(qs(e)?Jn:Yr)(e,t)},jn.set=function(e,t,n){return null==e?e:Jr(e,t,n)},jn.setWith=function(e,t,n,r){return r="function"==typeof r?r:i,null==e?e:Jr(e,t,n,r)},jn.shuffle=function(e){return(qs(e)?Zn:ei)(e)},jn.slice=function(e,t,n){var r=null==e?0:e.length;return r?(n&&"number"!=typeof n&&vo(e,t,n)?(t=0,n=r):(t=null==t?0:gu(t),n=n===i?r:gu(n)),ti(e,t,n)):[]},jn.sortBy=Is,jn.sortedUniq=function(e){return e&&e.length?oi(e):[]},jn.sortedUniqBy=function(e,t){return e&&e.length?oi(e,so(t,2)):[]},jn.split=function(e,t,n){return n&&"number"!=typeof n&&vo(e,t,n)&&(t=n=i),(n=n===i?p:n>>>0)?(e=bu(e))&&("string"==typeof t||null!=t&&!su(t))&&!(t=ui(t))&&Zt(e)?bi(sn(e),0,n):e.split(t,n):[]},jn.spread=function(e,t){if("function"!=typeof e)throw new Le(o);return t=null==t?0:yn(gu(t),0),Qr((function(n){var r=n[t],i=bi(n,0,t);return r&&It(i,r),yt(e,this,i)}))},jn.tail=function(e){var t=null==e?0:e.length;return t?ti(e,1,t):[]},jn.take=function(e,t,n){return e&&e.length?ti(e,0,(t=n||t===i?1:gu(t))<0?0:t):[]},jn.takeRight=function(e,t,n){var r=null==e?0:e.length;return r?ti(e,(t=r-(t=n||t===i?1:gu(t)))<0?0:t,r):[]},jn.takeRightWhile=function(e,t){return e&&e.length?fi(e,so(t,3),!1,!0):[]},jn.takeWhile=function(e,t){return e&&e.length?fi(e,so(t,3)):[]},jn.tap=function(e,t){return t(e),e},jn.throttle=function(e,t,n){var r=!0,i=!0;if("function"!=typeof e)throw new Le(o);return tu(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),Ds(e,t,{leading:r,maxWait:t,trailing:i})},jn.thru=hs,jn.toArray=pu,jn.toPairs=ju,jn.toPairsIn=$u,jn.toPath=function(e){return qs(e)?At(e,Wo):cu(e)?[e]:Li(Bo(bu(e)))},jn.toPlainObject=vu,jn.transform=function(e,t,n){var r=qs(e),i=r||Ks(e)||lu(e);if(t=so(t,4),null==n){var o=e&&e.constructor;n=i?r?new o:[]:tu(e)&&Zs(o)?$n(Ge(e)):{}}return(i?bt:br)(e,(function(e,r,i){return t(n,e,r,i)})),n},jn.unary=function(e){return Ts(e,1)},jn.union=ns,jn.unionBy=rs,jn.unionWith=is,jn.uniq=function(e){return e&&e.length?ai(e):[]},jn.uniqBy=function(e,t){return e&&e.length?ai(e,so(t,2)):[]},jn.uniqWith=function(e,t){return t="function"==typeof t?t:i,e&&e.length?ai(e,i,t):[]},jn.unset=function(e,t){return null==e||ci(e,t)},jn.unzip=os,jn.unzipWith=ss,jn.update=function(e,t,n){return null==e?e:li(e,t,mi(n))},jn.updateWith=function(e,t,n,r){return r="function"==typeof r?r:i,null==e?e:li(e,t,mi(n),r)},jn.values=Fu,jn.valuesIn=function(e){return null==e?[]:Ht(e,Nu(e))},jn.without=us,jn.words=Zu,jn.wrap=function(e,t){return Ws(mi(t),e)},jn.xor=as,jn.xorBy=cs,jn.xorWith=ls,jn.zip=fs,jn.zipObject=function(e,t){return hi(e||[],t||[],er)},jn.zipObjectDeep=function(e,t){return hi(e||[],t||[],Jr)},jn.zipWith=ds,jn.entries=ju,jn.entriesIn=$u,jn.extend=Su,jn.extendWith=wu,aa(jn,jn),jn.add=ba,jn.attempt=Xu,jn.camelCase=Uu,jn.capitalize=Vu,jn.ceil=_a,jn.clamp=function(e,t,n){return n===i&&(n=t,t=i),n!==i&&(n=(n=yu(n))==n?n:0),t!==i&&(t=(t=yu(t))==t?t:0),sr(yu(e),t,n)},jn.clone=function(e){return ur(e,4)},jn.cloneDeep=function(e){return ur(e,5)},jn.cloneDeepWith=function(e,t){return ur(e,5,t="function"==typeof t?t:i)},jn.cloneWith=function(e,t){return ur(e,4,t="function"==typeof t?t:i)},jn.conformsTo=function(e,t){return null==t||ar(e,t,Du(t))},jn.deburr=Hu,jn.defaultTo=function(e,t){return null==e||e!=e?t:e},jn.divide=Sa,jn.endsWith=function(e,t,n){e=bu(e),t=ui(t);var r=e.length,o=n=n===i?r:sr(gu(n),0,r);return(n-=t.length)>=0&&e.slice(n,o)==t},jn.eq=Fs,jn.escape=function(e){return(e=bu(e))&&Q.test(e)?e.replace(G,Yt):e},jn.escapeRegExp=function(e){return(e=bu(e))&&ne.test(e)?e.replace(te,"\\$&"):e},jn.every=function(e,t,n){var r=qs(e)?St:pr;return n&&vo(e,t,n)&&(t=i),r(e,so(t,3))},jn.find=ys,jn.findIndex=Ho,jn.findKey=function(e,t){return kt(e,so(t,3),br)},jn.findLast=vs,jn.findLastIndex=qo,jn.findLastKey=function(e,t){return kt(e,so(t,3),_r)},jn.floor=wa,jn.forEach=bs,jn.forEachRight=_s,jn.forIn=function(e,t){return null==e?e:yr(e,so(t,3),Nu)},jn.forInRight=function(e,t){return null==e?e:vr(e,so(t,3),Nu)},jn.forOwn=function(e,t){return e&&br(e,so(t,3))},jn.forOwnRight=function(e,t){return e&&_r(e,so(t,3))},jn.get=Lu,jn.gt=Us,jn.gte=Vs,jn.has=function(e,t){return null!=e&&ho(e,t,Ir)},jn.hasIn=Tu,jn.head=zo,jn.identity=ia,jn.includes=function(e,t,n,r){e=zs(e)?e:Fu(e),n=n&&!r?gu(n):0;var i=e.length;return n<0&&(n=yn(i+n,0)),au(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&Nt(e,t,n)>-1},jn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:gu(n);return i<0&&(i=yn(r+i,0)),Nt(e,t,i)},jn.inRange=function(e,t,n){return t=hu(t),n===i?(n=t,t=0):n=hu(n),function(e,t,n){return e>=vn(t,n)&&e<yn(t,n)}(e=yu(e),t,n)},jn.invoke=ku,jn.isArguments=Hs,jn.isArray=qs,jn.isArrayBuffer=Gs,jn.isArrayLike=zs,jn.isArrayLikeObject=Qs,jn.isBoolean=function(e){return!0===e||!1===e||nu(e)&&Cr(e)==y},jn.isBuffer=Ks,jn.isDate=Ys,jn.isElement=function(e){return nu(e)&&1===e.nodeType&&!ou(e)},jn.isEmpty=function(e){if(null==e)return!0;if(zs(e)&&(qs(e)||"string"==typeof e||"function"==typeof e.splice||Ks(e)||lu(e)||Hs(e)))return!e.length;var t=po(e);if(t==w||t==L)return!e.size;if(wo(e))return!Pr(e).length;for(var n in e)if(Ne.call(e,n))return!1;return!0},jn.isEqual=function(e,t){return kr(e,t)},jn.isEqualWith=function(e,t,n){var r=(n="function"==typeof n?n:i)?n(e,t):i;return r===i?kr(e,t,i,n):!!r},jn.isError=Js,jn.isFinite=function(e){return"number"==typeof e&&hn(e)},jn.isFunction=Zs,jn.isInteger=Xs,jn.isLength=eu,jn.isMap=ru,jn.isMatch=function(e,t){return e===t||Dr(e,t,ao(t))},jn.isMatchWith=function(e,t,n){return n="function"==typeof n?n:i,Dr(e,t,ao(t),n)},jn.isNaN=function(e){return iu(e)&&e!=+e},jn.isNative=function(e){if(So(e))throw new Se("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Nr(e)},jn.isNil=function(e){return null==e},jn.isNull=function(e){return null===e},jn.isNumber=iu,jn.isObject=tu,jn.isObjectLike=nu,jn.isPlainObject=ou,jn.isRegExp=su,jn.isSafeInteger=function(e){return Xs(e)&&e>=-9007199254740991&&e<=f},jn.isSet=uu,jn.isString=au,jn.isSymbol=cu,jn.isTypedArray=lu,jn.isUndefined=function(e){return e===i},jn.isWeakMap=function(e){return nu(e)&&po(e)==O},jn.isWeakSet=function(e){return nu(e)&&"[object WeakSet]"==Cr(e)},jn.join=function(e,t){return null==e?"":gn.call(e,t)},jn.kebabCase=qu,jn.last=Jo,jn.lastIndexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var o=r;return n!==i&&(o=(o=gu(n))<0?yn(r+o,0):vn(o,r-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,o):Dt(e,Pt,o,!0)},jn.lowerCase=Gu,jn.lowerFirst=zu,jn.lt=fu,jn.lte=du,jn.max=function(e){return e&&e.length?hr(e,ia,Ar):i},jn.maxBy=function(e,t){return e&&e.length?hr(e,so(t,2),Ar):i},jn.mean=function(e){return Mt(e,ia)},jn.meanBy=function(e,t){return Mt(e,so(t,2))},jn.min=function(e){return e&&e.length?hr(e,ia,Mr):i},jn.minBy=function(e,t){return e&&e.length?hr(e,so(t,2),Mr):i},jn.stubArray=ma,jn.stubFalse=ya,jn.stubObject=function(){return{}},jn.stubString=function(){return""},jn.stubTrue=function(){return!0},jn.multiply=Ea,jn.nth=function(e,t){return e&&e.length?Fr(e,gu(t)):i},jn.noConflict=function(){return ot._===this&&(ot._=We),this},jn.noop=ca,jn.now=Ls,jn.pad=function(e,t,n){e=bu(e);var r=(t=gu(t))?on(e):0;if(!t||r>=t)return e;var i=(t-r)/2;return Ui(fn(i),n)+e+Ui(ln(i),n)},jn.padEnd=function(e,t,n){e=bu(e);var r=(t=gu(t))?on(e):0;return t&&r<t?e+Ui(t-r,n):e},jn.padStart=function(e,t,n){e=bu(e);var r=(t=gu(t))?on(e):0;return t&&r<t?Ui(t-r,n)+e:e},jn.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),_n(bu(e).replace(re,""),t||0)},jn.random=function(e,t,n){if(n&&"boolean"!=typeof n&&vo(e,t,n)&&(t=n=i),n===i&&("boolean"==typeof t?(n=t,t=i):"boolean"==typeof e&&(n=e,e=i)),e===i&&t===i?(e=0,t=1):(e=hu(e),t===i?(t=e,e=0):t=hu(t)),e>t){var r=e;e=t,t=r}if(n||e%1||t%1){var o=Sn();return vn(e+o*(t-e+tt("1e-"+((o+"").length-1))),t)}return Gr(e,t)},jn.reduce=function(e,t,n){var r=qs(e)?Lt:jt,i=arguments.length<3;return r(e,so(t,4),n,i,fr)},jn.reduceRight=function(e,t,n){var r=qs(e)?Tt:jt,i=arguments.length<3;return r(e,so(t,4),n,i,dr)},jn.repeat=function(e,t,n){return t=(n?vo(e,t,n):t===i)?1:gu(t),zr(bu(e),t)},jn.replace=function(){var e=arguments,t=bu(e[0]);return e.length<3?t:t.replace(e[1],e[2])},jn.result=function(e,t,n){var r=-1,o=(t=yi(t,e)).length;for(o||(o=1,e=i);++r<o;){var s=null==e?i:e[Wo(t[r])];s===i&&(r=o,s=n),e=Zs(s)?s.call(e):s}return e},jn.round=Ca,jn.runInContext=e,jn.sample=function(e){return(qs(e)?Yn:Kr)(e)},jn.size=function(e){if(null==e)return 0;if(zs(e))return au(e)?on(e):e.length;var t=po(e);return t==w||t==L?e.size:Pr(e).length},jn.snakeCase=Qu,jn.some=function(e,t,n){var r=qs(e)?Rt:ni;return n&&vo(e,t,n)&&(t=i),r(e,so(t,3))},jn.sortedIndex=function(e,t){return ri(e,t)},jn.sortedIndexBy=function(e,t,n){return ii(e,t,so(n,2))},jn.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var r=ri(e,t);if(r<n&&Fs(e[r],t))return r}return-1},jn.sortedLastIndex=function(e,t){return ri(e,t,!0)},jn.sortedLastIndexBy=function(e,t,n){return ii(e,t,so(n,2),!0)},jn.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var n=ri(e,t,!0)-1;if(Fs(e[n],t))return n}return-1},jn.startCase=Ku,jn.startsWith=function(e,t,n){return e=bu(e),n=null==n?0:sr(gu(n),0,e.length),t=ui(t),e.slice(n,n+t.length)==t},jn.subtract=Aa,jn.sum=function(e){return e&&e.length?$t(e,ia):0},jn.sumBy=function(e,t){return e&&e.length?$t(e,so(t,2)):0},jn.template=function(e,t,n){var r=jn.templateSettings;n&&vo(e,t,n)&&(t=i),e=bu(e),t=wu({},t,r,Yi);var o,s,u=wu({},t.imports,r.imports,Yi),a=Du(u),c=Ht(u,a),l=0,f=t.interpolate||be,d="__p += '",p=Ae((t.escape||be).source+"|"+f.source+"|"+(f===J?fe:be).source+"|"+(t.evaluate||be).source+"|$","g"),h="//# sourceURL="+(Ne.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Je+"]")+"\n";e.replace(p,(function(t,n,r,i,u,a){return r||(r=i),d+=e.slice(l,a).replace(_e,Jt),n&&(o=!0,d+="' +\n__e("+n+") +\n'"),u&&(s=!0,d+="';\n"+u+";\n__p += '"),r&&(d+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),l=a+t.length,t})),d+="';\n";var g=Ne.call(t,"variable")&&t.variable;if(g){if(ce.test(g))throw new Se("Invalid `variable` option passed into `_.template`")}else d="with (obj) {\n"+d+"\n}\n";d=(s?d.replace(U,""):d).replace(V,"$1").replace(H,"$1;"),d="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(o?", __e = _.escape":"")+(s?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+d+"return __p\n}";var m=Xu((function(){return we(a,h+"return "+d).apply(i,c)}));if(m.source=d,Js(m))throw m;return m},jn.times=function(e,t){if((e=gu(e))<1||e>f)return[];var n=p,r=vn(e,p);t=so(t),e-=p;for(var i=Ft(r,t);++n<e;)t(n);return i},jn.toFinite=hu,jn.toInteger=gu,jn.toLength=mu,jn.toLower=function(e){return bu(e).toLowerCase()},jn.toNumber=yu,jn.toSafeInteger=function(e){return e?sr(gu(e),-9007199254740991,f):0===e?e:0},jn.toString=bu,jn.toUpper=function(e){return bu(e).toUpperCase()},jn.trim=function(e,t,n){if((e=bu(e))&&(n||t===i))return Ut(e);if(!e||!(t=ui(t)))return e;var r=sn(e),o=sn(t);return bi(r,Gt(r,o),zt(r,o)+1).join("")},jn.trimEnd=function(e,t,n){if((e=bu(e))&&(n||t===i))return e.slice(0,un(e)+1);if(!e||!(t=ui(t)))return e;var r=sn(e);return bi(r,0,zt(r,sn(t))+1).join("")},jn.trimStart=function(e,t,n){if((e=bu(e))&&(n||t===i))return e.replace(re,"");if(!e||!(t=ui(t)))return e;var r=sn(e);return bi(r,Gt(r,sn(t))).join("")},jn.truncate=function(e,t){var n=30,r="...";if(tu(t)){var o="separator"in t?t.separator:o;n="length"in t?gu(t.length):n,r="omission"in t?ui(t.omission):r}var s=(e=bu(e)).length;if(Zt(e)){var u=sn(e);s=u.length}if(n>=s)return e;var a=n-on(r);if(a<1)return r;var c=u?bi(u,0,a).join(""):e.slice(0,a);if(o===i)return c+r;if(u&&(a+=c.length-a),su(o)){if(e.slice(a).search(o)){var l,f=c;for(o.global||(o=Ae(o.source,bu(de.exec(o))+"g")),o.lastIndex=0;l=o.exec(f);)var d=l.index;c=c.slice(0,d===i?a:d)}}else if(e.indexOf(ui(o),a)!=a){var p=c.lastIndexOf(o);p>-1&&(c=c.slice(0,p))}return c+r},jn.unescape=function(e){return(e=bu(e))&&z.test(e)?e.replace(q,an):e},jn.uniqueId=function(e){var t=++xe;return bu(e)+t},jn.upperCase=Yu,jn.upperFirst=Ju,jn.each=bs,jn.eachRight=_s,jn.first=zo,aa(jn,(va={},br(jn,(function(e,t){Ne.call(jn.prototype,t)||(va[t]=e)})),va),{chain:!1}),jn.VERSION="4.17.21",bt(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){jn[e].placeholder=jn})),bt(["drop","take"],(function(e,t){Vn.prototype[e]=function(n){n=n===i?1:yn(gu(n),0);var r=this.__filtered__&&!t?new Vn(this):this.clone();return r.__filtered__?r.__takeCount__=vn(n,r.__takeCount__):r.__views__.push({size:vn(n,p),type:e+(r.__dir__<0?"Right":"")}),r},Vn.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),bt(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=1==n||3==n;Vn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:so(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),bt(["head","last"],(function(e,t){var n="take"+(t?"Right":"");Vn.prototype[e]=function(){return this[n](1).value()[0]}})),bt(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");Vn.prototype[e]=function(){return this.__filtered__?new Vn(this):this[n](1)}})),Vn.prototype.compact=function(){return this.filter(ia)},Vn.prototype.find=function(e){return this.filter(e).head()},Vn.prototype.findLast=function(e){return this.reverse().find(e)},Vn.prototype.invokeMap=Qr((function(e,t){return"function"==typeof e?new Vn(this):this.map((function(n){return Rr(n,e,t)}))})),Vn.prototype.reject=function(e){return this.filter(Ms(so(e)))},Vn.prototype.slice=function(e,t){e=gu(e);var n=this;return n.__filtered__&&(e>0||t<0)?new Vn(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==i&&(n=(t=gu(t))<0?n.dropRight(-t):n.take(t-e)),n)},Vn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Vn.prototype.toArray=function(){return this.take(p)},br(Vn.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),o=jn[r?"take"+("last"==t?"Right":""):t],s=r||/^find/.test(t);o&&(jn.prototype[t]=function(){var t=this.__wrapped__,u=r?[1]:arguments,a=t instanceof Vn,c=u[0],l=a||qs(t),f=function(e){var t=o.apply(jn,It([e],u));return r&&d?t[0]:t};l&&n&&"function"==typeof c&&1!=c.length&&(a=l=!1);var d=this.__chain__,p=!!this.__actions__.length,h=s&&!d,g=a&&!p;if(!s&&l){t=g?t:new Vn(this);var m=e.apply(t,u);return m.__actions__.push({func:hs,args:[f],thisArg:i}),new Un(m,d)}return h&&g?e.apply(this,u):(m=this.thru(f),h?r?m.value()[0]:m.value():m)})})),bt(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Te[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);jn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var i=this.value();return t.apply(qs(i)?i:[],e)}return this[n]((function(n){return t.apply(qs(n)?n:[],e)}))}})),br(Vn.prototype,(function(e,t){var n=jn[t];if(n){var r=n.name+"";Ne.call(On,r)||(On[r]=[]),On[r].push({name:t,func:n})}})),On[Wi(i,2).name]=[{name:"wrapper",func:i}],Vn.prototype.clone=function(){var e=new Vn(this.__wrapped__);return e.__actions__=Li(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Li(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Li(this.__views__),e},Vn.prototype.reverse=function(){if(this.__filtered__){var e=new Vn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Vn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=qs(e),r=t<0,i=n?e.length:0,o=function(e,t,n){for(var r=-1,i=n.length;++r<i;){var o=n[r],s=o.size;switch(o.type){case"drop":e+=s;break;case"dropRight":t-=s;break;case"take":t=vn(t,e+s);break;case"takeRight":e=yn(e,t-s)}}return{start:e,end:t}}(0,i,this.__views__),s=o.start,u=o.end,a=u-s,c=r?u:s-1,l=this.__iteratees__,f=l.length,d=0,p=vn(a,this.__takeCount__);if(!n||!r&&i==a&&p==a)return di(e,this.__actions__);var h=[];e:for(;a--&&d<p;){for(var g=-1,m=e[c+=t];++g<f;){var y=l[g],v=y.iteratee,b=y.type,_=v(m);if(2==b)m=_;else if(!_){if(1==b)continue e;break e}}h[d++]=m}return h},jn.prototype.at=gs,jn.prototype.chain=function(){return ps(this)},jn.prototype.commit=function(){return new Un(this.value(),this.__chain__)},jn.prototype.next=function(){this.__values__===i&&(this.__values__=pu(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?i:this.__values__[this.__index__++]}},jn.prototype.plant=function(e){for(var t,n=this;n instanceof Fn;){var r=$o(n);r.__index__=0,r.__values__=i,t?o.__wrapped__=r:t=r;var o=r;n=n.__wrapped__}return o.__wrapped__=e,t},jn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Vn){var t=e;return this.__actions__.length&&(t=new Vn(this)),(t=t.reverse()).__actions__.push({func:hs,args:[ts],thisArg:i}),new Un(t,this.__chain__)}return this.thru(ts)},jn.prototype.toJSON=jn.prototype.valueOf=jn.prototype.value=function(){return di(this.__wrapped__,this.__actions__)},jn.prototype.first=jn.prototype.head,st&&(jn.prototype[st]=function(){return this}),jn}();ot._=cn,(r=function(){return cn}.call(t,n,t,e))===i||(e.exports=r)}.call(this)},98253:(e,t,n)=>{var r=n(158);e.exports=function(){return r.Date.now()}},38172:(e,t,n)=>{var r=n(76897),i=n(23619);e.exports=function(e,t,n){var o=!0,s=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return i(n)&&(o="leading"in n?!!n.leading:o,s="trailing"in n?!!n.trailing:s),r(e,t,{leading:o,maxWait:t,trailing:s})}},95053:(e,t,n)=>{var r=n(12383),i=n(23619),o=n(81878),s=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,a=/^0o[0-7]+$/i,c=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(o(e))return NaN;if(i(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=i(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=u.test(e);return n||a.test(e)?c(e.slice(2),n?2:8):s.test(e)?NaN:+e}},50586:(e,t,n)=>{var r=n(36589),i=n(22708),o=i;o.v1=r,o.v4=i,e.exports=o},98726:e=>{for(var t=[],n=0;n<256;++n)t[n]=(n+256).toString(16).substr(1);e.exports=function(e,n){var r=n||0,i=t;return i[e[r++]]+i[e[r++]]+i[e[r++]]+i[e[r++]]+"-"+i[e[r++]]+i[e[r++]]+"-"+i[e[r++]]+i[e[r++]]+"-"+i[e[r++]]+i[e[r++]]+"-"+i[e[r++]]+i[e[r++]]+i[e[r++]]+i[e[r++]]+i[e[r++]]+i[e[r++]]}},76338:(e,t,n)=>{var r,i=n.g.crypto||n.g.msCrypto;if(i&&i.getRandomValues){var o=new Uint8Array(16);r=function(){return i.getRandomValues(o),o}}if(!r){var s=new Array(16);r=function(){for(var e,t=0;t<16;t++)0==(3&t)&&(e=4294967296*Math.random()),s[t]=e>>>((3&t)<<3)&255;return s}}e.exports=r},36589:(e,t,n)=>{var r=n(76338),i=n(98726),o=r(),s=[1|o[0],o[1],o[2],o[3],o[4],o[5]],u=16383&(o[6]<<8|o[7]),a=0,c=0;e.exports=function(e,t,n){var r=t&&n||0,o=t||[],l=void 0!==(e=e||{}).clockseq?e.clockseq:u,f=void 0!==e.msecs?e.msecs:(new Date).getTime(),d=void 0!==e.nsecs?e.nsecs:c+1,p=f-a+(d-c)/1e4;if(p<0&&void 0===e.clockseq&&(l=l+1&16383),(p<0||f>a)&&void 0===e.nsecs&&(d=0),d>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");a=f,c=d,u=l;var h=(1e4*(268435455&(f+=122192928e5))+d)%4294967296;o[r++]=h>>>24&255,o[r++]=h>>>16&255,o[r++]=h>>>8&255,o[r++]=255&h;var g=f/4294967296*1e4&268435455;o[r++]=g>>>8&255,o[r++]=255&g,o[r++]=g>>>24&15|16,o[r++]=g>>>16&255,o[r++]=l>>>8|128,o[r++]=255&l;for(var m=e.node||s,y=0;y<6;++y)o[r+y]=m[y];return t||i(o)}},22708:(e,t,n)=>{var r=n(76338),i=n(98726);e.exports=function(e,t,n){var o=t&&n||0;"string"==typeof e&&(t="binary"==e?new Array(16):null,e=null);var s=(e=e||{}).random||(e.rng||r)();if(s[6]=15&s[6]|64,s[8]=63&s[8]|128,t)for(var u=0;u<16;++u)t[o+u]=s[u];return t||i(s)}},81298:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AnonymousAuthenticationToken=t.HEARTBEAT_INTERVAL=t.HEARTBEAT_CHANNEL=t.INTENT_RESOLVER_CHANNEL=t.SERVER_CHANNEL=t.GLOBAL_CHANNEL=t.errorAsString=t.mmRemove=t.concatNoDups=t.mmAdd=void 0,t.mmAdd=function(e,t,n){return(e[t]||[]).concat([n])},t.concatNoDups=function(e,t){const n=Array.isArray(t)?t:[t],r=e?n.concat(e):n;return Array.from(new Set(r))},t.mmRemove=function(e,t,n){return(e[t]||[]).filter((e=>e===n))},t.errorAsString=function(e){return e?.message??e??null},t.GLOBAL_CHANNEL="global",t.SERVER_CHANNEL="FSBL.FDC3.Interop.Server",t.INTENT_RESOLVER_CHANNEL="FSBL.FDC3.intent.resolver",t.HEARTBEAT_CHANNEL="FSBL.FDC3.Interop.Server",t.HEARTBEAT_INTERVAL=4e3,t.AnonymousAuthenticationToken={authenticationKeyType:"unauthenticated",meta:{name:"Anonymous app"}}},16925:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Startup=void 0;const r=n(81298),i=n(6192),o=n(50586),s=n(4971);class u{constructor(){this.isReady=!1,this.onReadyListeners=[],this.currentStartupData={authenticationToken:r.AnonymousAuthenticationToken,windowName:`Unknown window-${o.v4()}`}}static getInstance(){return u.instance?u.instance:u.instance=s.singleton("Startup",u)}getStartupData(){return this.currentStartupData}setStartupData(e){this.currentStartupData=e}onReady(e){return new Promise((t=>{this.isReady?(e&&setTimeout(e,0),t()):this.onReadyListeners.push((()=>{e&&e(),t()}))}))}ready(){this.isReady=!0,this.onReadyListeners.forEach((e=>{e()})),i.Globals.dispatchEvent&&i.Globals.dispatchEvent(new Event("FSBLReady"))}}t.Startup=u,u.instance=null},72669:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t._BaseClient=void 0;const i=r(n(39319)),o=r(n(72551)),s=n(51742),u=n(13854);t._BaseClient=class{constructor(e){this.status="offline",this.startupTime=0,this.initialized=!1,this.startupDependencies={services:[],clients:[]},this.finsembleWindow=null,this.windowName="",this.clientReadyQueue=[],this.processClientReadyQueue=()=>{for(const e of this.clientReadyQueue)e();this.clientReadyQueue=[]},this.onReady=e=>{this.clientReadyQueue.push(e),"online"===this.status&&this.processClientReadyQueue()},this.setClientOnline=()=>{this.status="online";const e=`STARTUP:CLIENT ONLINE:${this.finWindow?.name}:${this.name}`;this.startupTime=window.performance.now()-this.startupTime;const t=()=>{this.logger.system.debug(e),this.processClientReadyQueue(),u.FSBLDependencyManagerSingleton.setClientOnline(this.name)};this._onReady?this._onReady(t):t()},this.initialize=(e=Function.prototype)=>{this.initialized||(this.initialized=!0,this.startupTime=performance.now(),this.finWindow=s.System.Window.getCurrent(),this.windowName=this.finWindow.name,this.logger.system.debug("Baseclient Init Router Ready",this.name),u.FSBLDependencyManagerSingleton.startup.waitFor(this.startupDependencies,(()=>{e(),this.setClientOnline()})))},this.onClose=e=>{e&&e()},this.name=e.name,this._onReady=e.onReady,this.startupDependencies=e.startupDependencies||{services:[],clients:[]},this.logger=o.default,this.routerClient=i.default}}},70010:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(57664),o=r(n(13712)),s=n(72669),u=r(n(5020)),a=r(n(72551));class c extends s._BaseClient{constructor(e){super(e),this.listeners=[],this.changeSub=e=>{this.subs||(this.subs={}),this.subs[e]||(this.routerClient.query("configService.addListener",e,(t=>{t&&a.default.system.error("Error adding listener to config service",t),this.routerClient.subscribe(e,this.handleChanges)})),this.subs[e]=!0)},this.handleChanges=(e,t)=>{e&&a.default.system.error(e),t.data.field||(t.data.field=null);const n=t.data.storeData?t.data.storeData:t.data.value;this.triggerListeners(t.data.field?t.data.field:"configService",n)},this.triggerListeners=(e,t)=>{if(this.listeners[e])for(let n=0;n<this.listeners[e].length;n++)"function"==typeof this.listeners[e][n]?this.listeners[e][n](null,{field:e,value:t}):a.default.system.warn("ConfigClient:triggerListeners: listener is not a function",e)},this.set=(e,t)=>{a.default.system.debug("ConfigClient.Set",e),"function"==typeof e?(t=e,o.default.args(t,"function"),e={}):o.default.args(e,"object",t,"function"),this.routerClient.query("config.set",e,((e,n)=>{t(e,n?n.data:null)}))},this.processAndSet=this.processAndSet.bind(this),this.getValue=this.getValue.bind(this),this.getValues=this.getValues.bind(this),this.setValue=this.setValue.bind(this),this.setValues=this.setValues.bind(this),this.removeValue=this.removeValue.bind(this),this.removeValues=this.removeValues.bind(this),this.addListener=this.addListener.bind(this),this.addListeners=this.addListeners.bind(this),this.removeListener=this.removeListener.bind(this),this.removeListeners=this.removeListeners.bind(this),this.setPreference=this.setPreference.bind(this),this.getPreferences=this.getPreferences.bind(this),this.unsetPreference=this.unsetPreference.bind(this)}getValue(e,t=Function.prototype){return"string"==typeof e&&(e={field:e}),new Promise(((n,r)=>{if(!e.field){const e="no field provided";return r(e),t(e)}this.routerClient.query("configService.getValue",{field:e.field},((e,i)=>e?(r(e),t(e)):(n({err:e,data:i.data}),t(e,i.data))))}))}getValues(e,t=Function.prototype){return"function"==typeof e&&(t=e,e=null),e&&!Array.isArray(e)?this.getValue(e,t):new Promise((n=>{this.routerClient.query("configService.getValues",{fields:e},((e,r)=>e?t(e):(n({err:e,data:r.data}),t(e,r.data))))}))}setValue(e,t){const n={field:e.field,value:e.value};return this.routerClient.query("configService.setValue",n,(e=>t?t(e):null))}setValues(e,t){return e?Array.isArray(e)?this.routerClient.query("configService.setValues",e,(e=>t?t(e):null)):a.default.system.error("ConfigClient.SetValues. Params must be an array"):a.default.system.error("ConfigClient.SetValues. No params given")}removeValue(e,t=Function.prototype){if(void 0!==e){if(e.field||"string"!=typeof e)return t("no field provided");e={field:e}}return e.value=null,this.setValue(e,t)}removeValues(e,t=Function.prototype){if(!Array.isArray(e))return t("The passed in parameter needs to be an array");i.map(e,this.removeValue,((e,n)=>t(e,n)))}addListener(e,t,n){let r=null;"function"==typeof e&&(t=e,e={field:r}),({field:r}=e);const i="configService"+(r?`.${r}`:"");return this.listeners[i]?this.listeners[i].push(t):this.listeners[i]=[t],this.changeSub(i),n?n():null}addListeners(e,t,n){if(!Array.isArray(e))return this.addListener({field:e.field},t,n);for(let n=0;n<e.length;n++){let i=null;const o=e[n];var r;"string"==typeof o?i=o:o.field&&(({field:i}=o),r=o.listener);const s="configService"+(i?`.${i}`:"");r||t&&"function"==typeof t&&(r=t),this.listeners[s]?this.listeners[s].push(r):this.listeners[s]=[r],this.changeSub(s)}return n?n():null}removeListener(e,t,n){let r=null;"function"==typeof e&&(n=t,t=e,e={field:r}),({field:r}=e);const i=this.name+(r?`.${r}`:"");if(this.listeners[i])for(let e=0;e<this.listeners[i].length;e++)if(this.listeners[i][e]===t)return this.listeners[i].pop(e),n?n(null,!0):null;return n?n(null,!1):null}removeListeners(e,t,n){if(!Array.isArray(e))return"function"==typeof e?this.removeListener({},e,n):e.field&&this.removeListener(e,t,n),n?.("missing fields");let r=0;for(let n=0;n<e.length;n++){let o=null;const s=e[n];var i;"string"==typeof s?o=s:s.field&&(({field:o}=s),i=e[n].listener);const u="configService"+(o?`.${o}`:"");if(!i){if(!t||"function"!=typeof t)continue;i=t}for(let e=0;e<this.listeners[u].length;e++)this.listeners[u][e]===i&&(this.listeners[u].pop(n),r++)}return r<e.length?n?.("All listeners could not be found",!1):n?n(null,!0):null}get(e,t){a.default.system.debug("ConfigClient.Get",e),a.default.system.deprecated("This functionality has been deprecated. It will be removed in a future Finsemble release. Use getValue instead.",e),1===arguments.length?(t=e,o.default.args(t,"function"),e={}):o.default.args(e,"object",t,"function"),this.routerClient.query("config.get",e,((e,n)=>{t(e,n?n.data:null)}))}processAndSet(e,t){if(a.default.system.debug("ConfigClient.processAndSet",e),o.default.args(e,"object",t,"function=")&&o.default.args2("params.newConfig",e.newConfig,"object","params.overwrite",e.overwrite,"boolean=","params.replace",e.replace,"boolean="),!e.overwrite&&e.replace){const e="cannot use replace option unless overwrite is also true";a.default.system.warn("ConfigClient.processAndSet:",e),t&&t(e,null)}else this.routerClient.query("config.processAndSet",e,((e,n)=>{t&&t(e,n?n.data:null)}))}setPreference(e,t){this.routerClient.query("PreferencesService.setPreference",e,((e,n)=>{t&&t(e,n?n.data:null)}))}async getPreferences(e){await u.default.waitForStartup("preferencesService"),this.routerClient.query("PreferencesService.getPreferences",{},((t,n)=>{a.default.system.debug("ConfigClient.getPreferences response",n),e&&e(t,n?n.data:null)}))}async unsetPreference(e,t){a.default.system.debug("ConfigClient.unsetPreference",e),this.routerClient.query("PreferencesService.unsetPreference",e,((e,n)=>{t&&t(e,n?n.data:null)}))}}const l=new c({startupDependencies:{services:["configService"]},onReady(e){e&&e()},name:"configClient"});t.default=l},75729:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LocalLogger=void 0;const{debug:n,warn:r,log:i,error:o}=console,s=()=>{},u=s,a={warn:r,info:s,log:i,debug:n,error:o,verbose:u,deprecated:o},c={Error:!0,Warn:!0,Info:!0,Log:!0,Debug:!0,Verbose:!0,LocalOnly:!1},l={console:{Error:!0,Warn:!0,Info:!0,Log:!0,Debug:!0},dev:c,system:c,perf:c};function f(e){return"logger.service.logMessages"===e}t.LocalLogger=class{constructor(){this.start=()=>{},this.isLogMessage=f,this.setting=()=>l,this.callStack=()=>function(){const{stack:e}=function(){try{throw Error("")}catch(e){return e}}(),t=("\n",4,e.split("\n",4).join("\n").length);return`Log Stack: \n${e.substring(t).substr(1)}`}(),this.unregisterClient=()=>{},this.setRouterClient=()=>{},this.warn=r,this.info=s,this.log=i,this.debug=n,this.error=o,this.verbose=u,this.system=a,this.perf=a,this.deprecated=o}}},72551:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Logger=t.LoggerConstructor=void 0;const r=n(51742),i=n(75729),o=n(16925),s={Error:!0,Warn:!0,Info:!1,Log:!0,Debug:!1,Verbose:!1,LocalOnly:!1},u={Error:!0,Warn:!0,Info:!0,Log:!0,Debug:!0},a=n(38172);t.LoggerConstructor=function(e){const i=this;let c;i.RouterClient=e&&e.RouterClient;let l=!1,f=!1;const d=i;let p,h,g=0,m=0;this.startupTime=0;let y=[];if("undefined"==typeof window)return;let v=r.System.Window.getCurrent().name;window.top!==window&&(v=`${v}.Frame`),this.onLogStateChangeCallback=[];let b={console:u,dev:s,system:s,perf:s};function _(e,t,n){this.category=e,!c&&r.System.isBrowserView()&&(c=r.System.getViewId()),this.logClientName=c?`${v}: view-${c}`:v,this.logType=t,this.logData=n,this.logTimestamp=window.performance.timing.navigationStart+window.performance.now()+g}function S(e,t){e&&e.dev&&(b=e,i.onLogStateChangeCallback.forEach((t=>{t(e)}))),function(e){d.system.debug("Logger updateQueueBasedOnState",e,g,"QUEUE LENGTH",y.length,b);const t=[];for(let n=0,{length:r}=y;n<r;n++)if(b[y[n].category][y[n].logType]&&!b[y[n].category].LocalOnly)e&&(y[n].logTimestamp=y[n].logTimestamp+g),t.push(y[n]);else if(b[y[n].category][y[n].logType]&&b[y[n].category].LocalOnly){const e=y[n];console.log(e.category,e.logType,e.logTimestamp-window.performance.timing.navigationStart,e.logData,"(Previously queued!)")}y=t}(t)}function w(){const{stack:e}=function(){try{throw Error("")}catch(e){return e}}(),t=("\n",4,e.split("\n",4).join("\n").length);return`Log Stack: \n${e.substring(t).substr(1)}`}this.onStateChanged=e=>{-1===this.onLogStateChangeCallback.indexOf(e)&&this.onLogStateChangeCallback.push(e)},this.setClientName=function(e){console.error("logger.setClientName() is deprecated"),v=e},this.getClientName=function(){return console.error("logger.getClientName() is deprecated"),v},this.clearMessageList=function(){y=[]},this.callStack=function(){return w()},this.setting=function(){return b};const E=console.error,C=console.warn,A=console.info,I=console.log,L=console.debug;function T(e){return e.reduce(((e,t)=>e.concat(Array.isArray(t)?T(t):t)),[])}function R(e,t){try{e.apply(console,T(t))}catch(e){(t=[]).push(w())}}let O=()=>{y.length>0&&(i.RouterClient.transmit("logger.service.logMessages",y),d.clearMessageList())};function k(e,n,r){let i,o=!1,s=!0;"forceObjectsToLogger"===r[0]&&(o=!0,s=!1,r.splice(0,1)),r=r.map((e=>s&&function(e){const t=[],n=[e];let r=0,i=0;for(;n.length&&i<1e3;){i++;const e=n.pop();if("boolean"==typeof e)r+=4;else if("string"==typeof e)r+=2*e.length;else if("number"==typeof e)r+=8;else if("object"==typeof e&&-1===t.indexOf(e)){t.push(e);for(const t in e)n.push(e[t])}}return r}(e)>5e4?(R(A,["Message too large to send to the logger.",r]),"Log argument greater than 50KB. Check local Console to see output of the object."):e));try{for(let e=0;e<r.length;e++)r[e]instanceof Error&&(r[e]=r[e].toString());i=new _(e,n,JSON.stringify(r))}catch(t){r.splice(0,r.length),r.push(w()),i=new _(e,n,`*** Logging Error: ${JSON.stringify(r)}`)}o||!function(e){return!0===e.logData.includes("Finsemble.heartbeat")}(i)?function(e){if(y.length<2e4)y.push(e);else{console.error("Logging Queue Overflowed! Dumping queue here then continuing.",y.length);let e,n=0;for(;e=y.shift();)console.log("Message "+n++,e);t.Logger.system.error("Logging Queue Overflowed! Dumping queue in client then continuing.")}}(i):++m<=5&&R(A,[`"Filtered Logger Message (${m} of first 5 shown)`,i]),f&&O()}function D(){const{windowName:e}=o.Startup.getInstance().getStartupData();v=e,window.top!==window&&(v=`${v}.Frame`);const t=`finsemble.logger.client.${v}`;!c&&r.System.isBrowserView()&&(c=r.System.getViewId()),d.system.debug("logger.service.registering",v),r.System.Window.getCurrent().getOptions((n=>{const r=n?.customData?.component?.centralLoggerNamePrefix;i.RouterClient.query("logger.service.register",{clientName:v,clientChannel:t,windowName:e,viewId:c,centralLoggerNamePrefix:r},((e,t)=>{if(e)setTimeout(D,750);else{for(const e of y)e.viewId=c;f=!0,d.system.debug("logger.service.registered"),p=t.data,"routerService"!==v?(g=h,S(p,!0)):S(p,!1),k("system","Debug",["Logger Registered"]),O()}}))})),i.RouterClient.addListener(t,((e,t)=>{d.system.debug("logger.client.setLogState",t.data),p=t.data,S(p,!1)}))}O=a(O,"routerService"===v?100:250,{leading:!1}),this.error=function(){const e=Array.prototype.slice.call(arguments);e.push(w()),b.dev.Error&&!b.dev.LocalOnly&&k("dev","Error",e),e.unshift(`dev error (${window.performance.now()}):`),R(E,e)},this.warn=function(){if(b.dev.Warn){const e=Array.prototype.slice.call(arguments);e.push(w()),b.dev.Warn&&!b.dev.LocalOnly&&k("dev","Warn",e),b.dev.Warn&&b.dev.LocalOnly&&(e.unshift(`dev warn (${window.performance.now()}):`),R(C,e))}},this.info=function(){if(b.dev.Info){const e=Array.prototype.slice.call(arguments);b.dev.Info&&!b.dev.LocalOnly&&k("dev","Info",e),b.dev.Info&&b.dev.LocalOnly&&(e.unshift(`dev info (${window.performance.now()}):`),R(A,e))}},this.log=function(){if(b.dev.Log){const e=Array.prototype.slice.call(arguments);b.dev.Log&&!b.dev.LocalOnly&&k("dev","Log",e),b.dev.Log&&b.dev.LocalOnly&&(e.unshift(`dev log (${window.performance.now()}):`),R(I,e))}},this.debug=function(){if(b.dev.Debug){const e=Array.prototype.slice.call(arguments);b.dev.Debug&&!b.dev.LocalOnly&&k("dev","Debug",e),b.dev.Debug&&b.dev.LocalOnly&&(e.unshift(`dev debug (${window.performance.now()}):`),R(L,e))}},this.verbose=function(){if(b.dev.Verbose){const e=Array.prototype.slice.call(arguments);b.dev.Verbose&&!b.dev.LocalOnly&&k("dev","Verbose",e),b.dev.Verbose&&b.dev.LocalOnly&&(e.unshift(`dev verbose (${window.performance.now()}):`),R(L,e))}},this.deprecated=this.error,this.system={},this.system.error=function(){const e=Array.prototype.slice.call(arguments);e.push(w()),b.system.Error&&!b.system.LocalOnly&&k("system","Error",e),e.unshift(`system error (${window.performance.now()}):`),R(E,e)},this.system.warn=function(){if(b.system.Warn){const e=Array.prototype.slice.call(arguments);e.push(w()),b.system.Warn&&!b.system.LocalOnly&&k("system","Warn",e),b.system.Warn&&b.system.LocalOnly&&(e.unshift(`system warn (${window.performance.now()}):`),R(C,e))}},this.system.info=function(){if(b.system.Info){const e=Array.prototype.slice.call(arguments);b.system.Info&&!b.system.LocalOnly&&k("system","Info",e),b.system.Info&&b.system.LocalOnly&&(e.unshift(`system info (${window.performance.now()}):`),R(A,e))}},this.system.log=function(){if(b.system.Log){const e=Array.prototype.slice.call(arguments);b.system.Log&&!b.system.LocalOnly&&k("system","Log",e),b.system.Log&&b.system.LocalOnly&&(e.unshift(`system log (${window.performance.now()}):`),R(I,e))}},this.system.debug=function(){if(b.system.Debug){const e=Array.prototype.slice.call(arguments);b.system.Debug&&!b.system.LocalOnly&&k("system","Debug",e),b.system.Debug&&b.system.LocalOnly&&(e.unshift(`system debug (${window.performance.now()}):`),R(L,e))}},this.system.verbose=function(){if(b.system.Verbose){var e=Array.prototype.slice.call(arguments);b.system.Verbose&&!b.system.LocalOnly&&k("system","Verbose",e),b.system.Verbose&&b.system.LocalOnly&&((e=Array.prototype.slice.call(arguments)).unshift(`system log (${window.performance.now()}):`),R(L,e))}},this.system.deprecated=this.system.error,this.perf={},this.perf.error=function(){const e=Array.prototype.slice.call(arguments);e.push(w()),b.perf.Error&&!b.perf.LocalOnly&&k("perf","Error",e),e.unshift(`perf error (${window.performance.now()}):`),R(E,e)},this.perf.warn=function(){if(b.perf.Warn){const e=Array.prototype.slice.call(arguments);e.push(w()),b.perf.Warn&&!b.perf.LocalOnly&&k("perf","Warn",e),b.perf.Warn&&b.perf.LocalOnly&&(e.unshift(`perf warn (${window.performance.now()}):`),R(C,e))}},this.perf.info=function(){if(b.perf.Info){const e=Array.prototype.slice.call(arguments);b.perf.Info&&!b.perf.LocalOnly&&k("perf","Info",e),b.perf.Info&&b.perf.LocalOnly&&(e.unshift(`perf info (${window.performance.now()}):`),R(A,e))}},this.perf.log=function(){if(b.perf.Log){const e=Array.prototype.slice.call(arguments);b.perf.Log&&!b.perf.LocalOnly&&k("perf","Log",e),b.perf.Log&&b.perf.LocalOnly&&(e.unshift(`perf log (${window.performance.now()}):`),R(I,e))}},this.perf.debug=function(){if(b.perf.Debug){const e=Array.prototype.slice.call(arguments);b.perf.Debug&&!b.perf.LocalOnly&&k("perf","Debug",e),b.perf.Debug&&b.perf.LocalOnly&&(e.unshift(`perf debug (${window.performance.now()}):`),R(L,e))}},this.perf.verbose=function(){if(b.perf.Verbose){const e=Array.prototype.slice.call(arguments);b.perf.Verbose&&!b.perf.LocalOnly&&k("perf","Verbose",e),b.perf.Verbose&&b.perf.LocalOnly&&(e.unshift(`perf verbose (${window.performance.now()}):`),R(L,e))}},this.perf.deprecated=this.perf.error,this.unregisterClient=function(e=null,t=Function.prototype){d.system.debug("logger.service.unregister",v,e,c),O();const n=e||{clientName:v,viewId:c};i.RouterClient.query("logger.service.unregister",n,t)},this.isLogMessage=function(e){return"logger.service.logMessages"===e},this.status="offline",this.setRouterClient=e=>{this.RouterClient=e},this.start=function(){let e;this.startupTime=performance.now(),i.RouterClient||(console.log("No instance of the RouterClient found for this instance of the Logger. Dynamically requiring it."),i.RouterClient=n(39319).default);const t=()=>{e=i.RouterClient.subscribe("Finsemble.Service.State.loggerService",((t,n)=>{"ready"===n.data.state&&(i.status="online",d.system.debug("Logger onReady",v),i.RouterClient.calibrateTimeWithRouterService((e=>{h=e,l||(i.startupTime=performance.now()-i.startupTime,D(),l=!0)})),i.RouterClient.unsubscribe(e))}))};"routerService"===window.name?i.RouterClient.query("logger.service.register",{},(e=>{e?setTimeout(t,750):t()})):i.RouterClient.onReady(t),r.System.isBrowserView()&&window.addEventListener("beforeunload",(()=>{i.unregisterClient()}))}},t.Logger="undefined"!=typeof window?new t.LoggerConstructor:new i.LocalLogger,t.default=t.Logger},40568:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.RouterClientConstructor=void 0;const i=r(n(82369)),o=r(n(13712)),s=r(n(73699)),u=n(51742),a=n(72551),c=n(6192),l=n(75729),f=n(50586),d=[];let p=a.Logger;function h(e,t={}){if(null===e||"object"!=typeof e)return e;if(e.constructor==Date||e.constructor==RegExp||e.constructor==Function||e.constructor==String||e.constructor==Number||e.constructor==Boolean)return new e.constructor(e);t=t||new e.constructor;for(const n in e)t[n]=void 0===t[n]?h(e[n],null):t[n];return t}t.RouterClientConstructor=function(){let e,t;const n={},r={},a={},g={},m={},y={},v={},b={},_={},S={};let w,E=null,C=!1;const A=[];function I(){this.header={origin:w,type:"initialHandshake"}}function L(e,t){this.header={origin:w,type:"timeCalibration"},this.clientBaseTime=e,this.serviceBaseTime=t}function T(e){this.header={origin:w,type:"addListener",channel:e}}function R(e,t,n){this.header={origin:w,type:"transmit",channel:e},this.data=t,this.options=n}function O(e){this.header={origin:w,type:"removeListener",channel:e}}function k(e){this.header={origin:w,type:"addResponder",channel:e}}function D(e,t,n){this.header={origin:w,type:"query",queryID:e,channel:t},this.data=n}function N(e,t,n){this.header={origin:w,type:"queryResponse",queryID:e,error:t},this.data=n}function x(e){this.header={origin:w,type:"removeResponder",channel:e}}function P(e,t){this.header={origin:w,type:"subscribe",subscribeID:e,topic:t}}function M(e,t){this.header={origin:w,type:"unsubscribe",subscribeID:e,topic:t}}function B(e,t){this.header={origin:w,type:"publish",topic:e},this.data=t}function W(e,t,n,r){this.header={origin:w,type:"notify",subscribeID:e,topic:t,error:n},this.data=r}function j(e,t,n){this.header={origin:w,type:"addPubSubResponder",topic:e,handleOnServer:n},this.data=t}function $(e){this.header={origin:w,type:"removePubSubResponder",topic:e}}function F(e){E?E.send(e):(p.system.info("RouterClient: Queuing message since router initialization not complete",e),d.push(e))}function U(){return this.header.origin===this.header.lastClient}function V(e,t){p.system.info("RouterClient: outgoing query response","CHANNEL",this.header.channel,"RESPONSE DATA",t,"QUERY ID",this.header.queryID),F(new N(this.header.queryID,e,t))}function H(e,t){const n=e[t.header.channel];void 0===n?p.system.warn(`RouterClient: no query responder define on channel ${t.header.channel} incoming from ${t.header.origin}`,t):t.header.error?(p.system.warn("RouterClient: queryResponder error",t),n(t.header.error,null),delete e[t.header.channel]):(t.originatedHere=U,t.sendQueryResponse=V.bind(t),p.system.info("RouterClient: incoming query","CHANNEL",t.header.channel,"FROM",t.header.origin,"QUERY MESSAGE",t),n(null,t))}function q(e,t){if(e)p.system.warn("RouterClient: income publish rejected by pubsub responder",e,t);else{g[this.header.topic]=t;const n=y[this.header.topic];if(void 0!==n)for(let r=0;r<n.length;r++)p.system.info("RouterClient: sending pubsub notify","TOPIC",this.header.topic,"NOTIFY DATA",t),F(new W(n[r],this.header.topic,e,t))}}function G(e,t){var n,r,i;(function(e){let t=!1;return void 0===e&&(t=!0),t})(t)||F(new W(this.header.subscribeID,this.header.topic,e,t)),e?p.system.warn("RouterClient: incoming subscription rejected by pubsub responder","TOPIC",this.header.topic,"MESSAGE",this):(n=y,r=this.header.topic,i=this.header.subscribeID,r in n?n[r].push(i):n[r]=[i],p.system.info("RouterClient: incoming subscription added","TOPIC",this.header.topic,"MESSAGE",this))}function z(){!function(e,t,n){let r=!1;if(t in e){const i=y[t];for(let o=0;o<i.length;o++)if(n===i[o]){i.splice(o,1),0===i.length&&delete e[t],r=!0,p.system.info("RouterClient: PubSub removeListener","TOPIC",t,"FROM",n);break}}r||p.system.warn(`RouterClient: tried to remove non-existent listener on ${t} from ${JSON.stringify(n)}`)}(y,this.header.topic,this.header.subscribeID)}function Q(i){switch(p.system.verbose("Incoming Message Type",i.header.type,i),i.header.type){case"transmit":!function(e,t){const n=e[t.header.channel]||[],r=[];if(Array.isArray(n)&&0!==n.length){t.originatedHere=U,n.forEach((e=>{r.push(e)}));for(let e=0;e<r.length;e++)p.isLogMessage(t.header.channel)||p.system.info("RouterClient: incoming transmit","CHANNEL",t.header.channel,"FROM",t.header.origin,"MESSAGE",t),r[e](null,t)}else p.system.warn(`RouterClient: no listener for incoming transmit on channel ${t.header.channel} from ${t.header.origin}`,t)}(n,i);break;case"query":H(r,i);break;case"queryResponse":!function(e,t){const n=e[t.header.queryID];void 0===n?p.system.warn("RouterClient: no handler for incoming query response","QUERY ID",t.header.queryID):(function(e,t){const n=e[t];void 0!==n&&clearTimeout(n)}(S,t.header.queryID),t.header.error?(p.system.debug("RouterClient: incoming queryResponse error",t.header,"QUERY ID",t.header.queryID),n(t.header.error,t)):(p.system.info("RouterClient: incoming query response","RESPONSE MESSAGE",t,"QUERY ID",t.header.queryID),n(null,t)),delete e[t.header.queryID])}(_,i);break;case"notify":!function(e,t){const n=e[t.header.subscribeID];void 0===n?p.system.warn("RouterClient: no subscription handler defined for incoming notify for subscriberID",t.header.subscribeID,t):t.header.error?(p.system.info("RouterClient: incoming PubSub notify error for subscriberID","SUBSCRIBER ID",t.header.subscribeID,"NOTIFY MESSAGE",t),n(t.header.error,t)):(t.originatedHere=U,p.system.info("RouterClient: incoming PubSub notify","SUBSCRIBER ID",t.header.subscribeID,"NOTIFY MESSAGE",t),n(null,t))}(v,i);break;case"publish":!function(e){let t=a[e.header.topic];if(void 0===t)for(const n in m)if(m[n].test(e.header.topic)){t=a[n];break}void 0===t?p.system.warn("RouterClient: no pubsub responder defined for incoming publish","TOPIC",e.header.topic,"PUBLISH MESSAGE",e):(e.sendNotifyToAllSubscribers=q,t.publishCallback?(p.system.info("RouterClient: incoming PubSub publish callback invoked","TOPIC",e.header.topic,"PUBLISH MESSAGE",e),t.publishCallback(null,e)):(p.system.info("RouterClient: incoming PubSub publish","TOPIC",e.header.topic,"PUBLISH MESSAGE",e),e.sendNotifyToAllSubscribers(null,e.data)))}(i);break;case"subscribe":!function(e){p.system.info("RouterClient: PubSub subscribe","TOPIC",e.header.topic);let t=a[e.header.topic];if(void 0===t)for(const n in m)if(m[n].test(e.header.topic)){t=a[n];let r=g[e.header.topic];void 0===r&&(r=g[n]),g[e.header.topic]=r;break}void 0===t?p.system.warn("RouterClient: no pubsub responder defined for incoming subscribe",e):e.header.error?p.system.warn(`RouterClient: pubsub error received from router service: ${JSON.stringify(e.header.error)}`):(e.sendNotifyToSubscriber=G,t.subscribeCallback?(e.data=g[e.header.topic],t.subscribeCallback(null,e)):e.sendNotifyToSubscriber(null,g[e.header.topic]))}(i);break;case"unsubscribe":!function(e){let t=a[e.header.topic];if(void 0===t)for(const n in m)if(m[n].test(e.header.topic)){t=a[n];break}void 0===t?p.system.warn("RouterClient: no pubsub responder defined for incoming unsubscribe","TOPIC",e.header.topic,"UNSUBSCRIBE MESSAGE",e):(e.removeSubscriber=z,t.unsubscribeCallback?(p.system.info("RouterClient: incoming unsubscribe callback","TOPIC",e.header.topic,"UNSUBSCRIBE MESSAGE",e),t.unsubscribeCallback(null,e)):(p.system.info("RouterClient: incoming unsubscribe","TOPIC",e.header.topic,"UNSUBSCRIBE MESSAGE",e),e.removeSubscriber()))}(i);break;case"timeCalibration":const o=()=>{t?t(i):setTimeout((()=>{o()}),10)};o();break;case"initialHandshakeResponse":e()}}function K(e,t){t.header.lastClient=w,t.header.incomingTransportInfo=e,Q(t)}this.startupTime=0,this.notificationURL="";const Y=(t,n,r)=>{let o,u;p.system.debug(`Name of transport to establish: ${n}`),this.notificationURL=t.notificationURL;let a,c,l,f,h=!1,g=0;const m=t=>{u=0,p.system.debug("WINDOW LIFECYCLE:STARTUP:RouterClient:transport ready","TRANSPORT OBJECT",t),E=t,e=f,l(),o=setInterval(l,200)};a=e=>{p.system.error("RouterClientError",e)};const y=()=>{p.system.debug("WINDOW LIFECYCLE:STARTUP:RouterClient:getClientTransport","ROUTER PARAMS:",t),i.default.getTransport(t,n,K,w,"RouterService").then(m).catch(a)};c=()=>{if(clearInterval(o),g++,g<=3)p.system.error("WINDOW LIFECYCLE:STARTUP:RouterClient: failure to connect to router service. Retrying...",g,t),y();else{const e="A cross domain transport has failed to connect. Cross domain components may not work. Please contact your administrator.";p.system.error(e,t),s.default.alert("dev","ONCE-SINCE-STARTUP","FSBL-Internal-Transport-Failure",e,{url:this.notificationURL})}},l=()=>{p.system.debug("WINDOW LIFECYCLE:STARTUP:RouterClient: sendHandshake",u),F(new I),u++>50&&c()},f=()=>{if(!h){if(p.system.debug(`WINDOW LIFECYCLE:STARTUP:RouterClient connected: Starting ${w} with transport ${E.identifier()}`),h=!0,clearInterval(o),d)for(let e=0;e<d.length;e++){p.system.debug("RouterClient: firing queued msg");const t=d[e];E.send(t)}r&&r()}},y()};function J(){return`${w}.${f.v4()}`}function Z(e,t){let n=!1;return void 0!==e[t]&&(delete e[t],n=!0),n}this.calibrateTimeWithRouterService=function(e){let n,r=0,i=1/0;t=function(t){r++,r>5?function(t){let r=0;for(let e=1;e<5;e++){const o=t.clientBaseTime[e-1],s=t.clientBaseTime[e]-o,u=t.serviceBaseTime[e-1]-(o+s/2);s<i&&(i=s,n=u),r+=u,p.system.debug("calibrationCalculation Intermediate Values","lastRRT",s,"lastOffset",u,"fastestOffset",n,"fastestRRT",i)}r/=4,p.system.debug("RouterClient calibrationCalculation","Average Offset",r,"Chosen FastestOffset",n,t),e(n)}(t):(t.clientBaseTime.push(c.Globals.performance.timing.navigationStart+c.Globals.performance.now()),F(new L(t.clientBaseTime,t.serviceBaseTime)))},t(new L([],[]))},this.onReady=e=>new Promise((t=>{o.default.args(e,"function");const n=()=>{e&&e(),t()};C?n():A.push(n)})),this.addListener=function(e,t){p.system.info("RouterClient.addListener","CHANNEL",e),o.default.args(e,"string",t,"function"),function(e,t,n){let r=!1;const i=e[t];return void 0===i||0===i.length?(e[t]=[n],r=!0):i.push(n),r}(n,e,t)&&F(new T(e))},this.transmit=function(e,t,n={suppressWarnings:!1}){p.isLogMessage(e)||p.system.info("RouterClient.transmit","TO CHANNEL",e,"EVENT",t),o.default.args(e,"string",t,"any"),F(new R(e,t,n))},this.removeListener=function(e,t){p.system.info("RouterClient.removeListener","CHANNEL",e,"EVENT HANDLER",t),o.default.args(e,"string",t,"function"),function(e,t,n){let r=!1;const i=e[t];if(void 0!==i){const e=i.indexOf(n);e>-1?(i.splice(e,1),0===i.length&&(r=!0)):p.system.warn(`no listener defined for channel: ${t}`)}return r}(n,e,t)&&F(new O(e))},this.addResponder=(e,t)=>{if(p.system.info("RouterClient.addResponder","CHANNEL",e),o.default.args(e,"string",t,"function"),function(e,t,n){let r=!1;return void 0===e[t]&&(e[t]=n,r=!0),r}(r,e,t))F(new k(e));else{const n=`RouterClient.addResponder: Responder already locally defined for channel ${e}`;p.system.warn(n),t(n,null)}},this.query=(e,t,n,r)=>{const i=`${J()}.${e}`,s=window.performance.timing.navigationStart+window.performance.now(),u=window.performance.timing.navigationStart,a=window.performance.now();return p.system.info("RouterClient.query","RESPONDER CHANNEL",e,"QUERY EVENT",t,"PARAMS",n,"QUERY ID",i,{timestamp:s,navstart:u,timenow:a}),r||(r=n,n={timeout:2e4}),o.default.args(e,"string",t,"any=",n,"object=",r,"function"),n=n||{},o.default.args2("params.timeout",n.timeout,"number"),new Promise((function(o){_[i]=(c,l)=>{o({err:c,response:l}),"function"==typeof r?r(c,l):p.system.warn("No response event handler passed to RouterClient.query","RESPONDER CHANNEL",e,"QUERY EVENT",t,"PARAMS",n,"QUERY ID",i,{timestamp:s,navstart:u,timenow:a})},c.Globals.runningInFSBLUnitTest||function(e,t,n,r){r>0&&(e[t]=setTimeout((()=>{p.system.warn(`RouterClient: timeout waiting on query response on channel ${n} for queryID ${t} on timer ${e[t]} timeout=${r}`)}),r))}(S,i,e,n.timeout),F(new D(i,e,t))}))},this.removeResponder=e=>{p.system.info("RouterClient.removeResponder","RESPONDER CHANNEL",e),o.default.args(e,"string"),Z(r,e)&&F(new x(e))},this.addPubSubResponder=(e,t,n,r)=>{let i,s;p.system.info("RouterClient.addPubSubResponder","TOPIC",e,"INITIAL STATE",t,"PARAMS",n),o.default.args(e,"any",t,"object=",n,"object="),n=n||{},o.default.args2("params.subscribeCallback",n.subscribeCallback,"function=","params.publishCallback",n.publishCallback,"function=")&&o.default.args2("params.unsubscribeCallback",n.unsubscribeCallback,"function="),void 0===n.subscribeCallback&&void 0===n.publishCallback&&void 0===n.unsubscribeCallback?(t=t||{},F(new j(e.toString(),t,!0)),s="success"):!function(e,t,n,r){let i=!1;return void 0===a[e.toString()]&&(e instanceof RegExp&&(m[e.toString()]=e,p.system.info(`RouterClient: PubSub RegEx added for topic ${e.toString()}`)),a[e.toString()]={subscribeCallback:t,publishCallback:n,unsubscribeCallback:r},i=!0),i}(e,n.subscribeCallback,n.publishCallback,n.unsubscribeCallback)?(i=`RouterClient.addPubSubResponder: Responder already locally defined for topic ${e}`,p.system.error(i)):(t=t||{},g[e.toString()]=h(t),F(new j(e.toString(),t,!1)),s="success"),r&&r(i,s)},this.removePubSubResponder=e=>{p.system.info("RouterClient.removePubSubResponder","TOPIC",e),o.default.args(e,"any"),Z(a,e)?(delete g[e.toString()],delete m[e.toString()],F(new $(e))):p.system.warn(`RouterClient.removePubSubResponder failed: Could not find responder for topic ${e}`)},this.subscribe=(e,t)=>{p.system.info("RouterClient.subscribe","TOPIC",e),o.default.args(e,"string",t,"function");const n=J();return function(e,t,n,r){e[t]=n,b[t]=r}(v,n,t,e),F(new P(n,e)),{subscribeID:n,topic:e}},this.publish=(e,t)=>{p.system.info("RouterClient.publish","TOPIC",e,"EVENT",t),o.default.args(e,"string",t,"any"),F(new B(e,t))},this.unsubscribe=e=>{p.system.info("RouterClient.unsubscribe","SUBSCRIBE ID",e),o.default.args(e,"object")&&o.default.args2("subscribeIDStruct.subscribeID",e.subscribeID,"string"),!function(e,t){let n=!1;return void 0!==e[t]&&(delete e[t],n=!0),n}(v,e.subscribeID)?p.system.warn(`RouterClient.unsubscribe: Could not find subscribeID for topic ${e.topic}`):F(new M(e.subscribeID,e.topic))},this.trustedMessage=function(e){let t=!0;return p.system.debug("RouterClient.trustedMessage header",e.header),"SharedWorker"===e.header.originIncomingTransportInfo.transportID&&(t=!0),t},this.disconnectAll=function(){p.system.info("RouterClient.disconnectAll");for(const e in n)p.system.debug(`RouterClient.disconnectAll is removing listener on ${e}`),F(new O(e)),delete n[e];for(const e in r)p.system.debug(`RouterClient.disconnectAll is removing responder on ${e}`),F(new x(e)),delete r[e];for(const e in a)p.system.debug(`RouterClient.disconnectAll is removing pubsub responder on ${e}`),F(new $(e)),delete a[e.toString()],delete g[e.toString()],delete m[e.toString()];for(const e in v){const t=b[e];p.system.debug(`RouterClient.disconnectAll is removing subscriber on ${t}`),F(new M(e,t)),delete v[e],delete b[e]}},this.start=e=>new Promise((async t=>{if(this.started){const e="RouterClient.start() called twice. Ignoring second call.";return p.warn(e),t(e)}this.started=!0,p=new l.LocalLogger,"loggerService"===u.System.Window.getCurrent().name&&(p=new l.LocalLogger),w=`RouterClient.${e.windowName}.${f.v4()}`;const n=`"RouterClient Check: connecting new client for ${w}`;p.system.debug(n),console.debug(n),Y(e,e.transportName,(()=>{!function(){for(p.system.debug("WINDOW LIFECYCLE:STARTUP:RouterClient Ready"),C=!0;A.length>0;)p.system.debug("WINDOW LIFECYCLE:STARTUP:RouterClient parentReady invoked"),A.shift()()}(),t(null)}))})),this.stop=()=>{this.disconnectAll(),i.default.close(),this.started=!1}}},39319:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RouterConnectionInstance=t.RouterConnectionSingleton=void 0;const r=n(40568),i=n(72551),o=n(4971);t.RouterConnectionSingleton=o.singleton("RouterClient",r.RouterClientConstructor),i.Logger.setRouterClient(t.RouterConnectionSingleton);var s=n(40568);Object.defineProperty(t,"RouterConnectionInstance",{enumerable:!0,get:function(){return s.RouterClientConstructor}}),t.default=t.RouterConnectionSingleton},6192:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Globals=void 0,t.Globals="undefined"==typeof window?n.g:window},4971:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.singleton=void 0,t.singleton=(e,t)=>{const r=Symbol.for(`com.finsemble.singleton.${e}`);return Object.getOwnPropertySymbols(n.g).indexOf(r)>-1||(n.g[r]=new t),n.g[r]}},78379:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.MOVE_REASON=t.LAUNCHER_SERVICE=t.HEARTBEAT_TIMEOUT_CHANNEL=t.COMPONENT_STATE_STORAGE_TOPIC=t.WINDOW_SERVICE_REQUESTS=t.WORKSPACE=t.WINDOW=t.INTERRUPTIBLE_EVENTS=t.EVENT_INTERRUPT_CHANNEL=t.DOCKING=t.SERVICE_STOP_CHANNEL=t.SERVICE_START_CHANNEL=t.WINDOWSTATE=t.SERVICES_STATE_CHANNEL=t.CLIENT_SERVER_MAPPING=t.SERVICE_QUERY_READY_CHANNEL=t.SERVICE_CLOSED_CHANNEL=t.SERVICE_CLOSING_CHANNEL=t.SERVICE_READY_CHANNEL=t.SERVICE_INITIALIZING_CHANNEL=t.APPLICATION_STATE_CHANNEL=t.WRAPPERS=void 0,t.WRAPPERS={EVENTS:["title-changed","bringToFront","setBounds","alwaysOnTop","setOpacity"]},t.APPLICATION_STATE_CHANNEL="Finsemble.Application.State",t.SERVICE_INITIALIZING_CHANNEL="Finsemble.ServiceManager.serviceInitializing",t.SERVICE_READY_CHANNEL="Finsemble.ServiceManager.serviceReady",t.SERVICE_CLOSING_CHANNEL="Finsemble.ServiceManager.serviceClosing",t.SERVICE_CLOSED_CHANNEL="Finsemble.ServiceManager.serviceClosed",t.SERVICE_QUERY_READY_CHANNEL=e=>`Finsemble.ServiceManager.queryReady.${e}`,t.CLIENT_SERVER_MAPPING=e=>({authenticationClient:"authenticationService",configClient:"configService",distributedStoreClient:"dataStoreService",hotkeysClient:"hotkeysService",linkerClient:"linkerService",logger:"loggerService",searchClient:"searchService",storageClient:"storageService",windowClient:"windowService",workspaceClient:"workspaceService"}[e]),t.SERVICES_STATE_CHANNEL="Finsemble.State.Services",(n=t.WINDOWSTATE||(t.WINDOWSTATE={}))[n.NORMAL=0]="NORMAL",n[n.MINIMIZED_WAS_NORMAL=1]="MINIMIZED_WAS_NORMAL",n[n.MAXIMIZED=2]="MAXIMIZED",n[n.MINIMIZED_WAS_MAXIMIZED=3]="MINIMIZED_WAS_MAXIMIZED",n[n.TRANSITIONING=4]="TRANSITIONING",t.SERVICE_START_CHANNEL="Finsemble.Service.Start",t.SERVICE_STOP_CHANNEL="Finsemble.Service.Stop",t.DOCKING={GROUP_UPDATE:"DockingService.groupUpdate",WORKSPACE_GROUP_UPDATE:"Finsemble.WorkspaceService.groupUpdate",REQUEST_PUBLISH:"DockingService.requestGroupDataPublish"},t.EVENT_INTERRUPT_CHANNEL="Finsemble.Event.Interrupt",t.INTERRUPTIBLE_EVENTS=["close-requested","closed","close-complete","_container-close-handlers"],t.WINDOW={DELAYABLE_EVENTS:["close-requested","closed","close-complete","_container-close-handlers"],CANCELABLE_EVENTS:["close-requested"]},t.WORKSPACE={DELAYABLE_EVENTS:["load-requested","close-requested","save-requested"],CANCELABLE_EVENTS:["close-requested"],CLEAN_SHUTDOWN:"Finsemble.Workspace.cleanShutdown",UPDATE_PUBSUB:"Finsemble.WorkspaceService.update",STORAGE_TOPIC:"finsemble.workspace",CACHE_STORAGE_TOPIC:"finsemble.workspace.cache",ALL_WORKSPACES:"finsemble.allWorkspaces",ACTIVE_WORKSPACE:"activeWorkspace",LAST_USED_WORKSPACE_TOPIC:"finsemble",LAST_USED_WORKSPACE_NAME:"finsemble.lastUsedWorkspace.name",LAST_USED_WORKSPACE:"finsemble.lastUsedWorkspace",INITIAL_WORKSPACE_PREFERENCE:"finsemble.initialWorkspace",PUBLISH_REASONS:{INIT:"workspace:initialization",LOAD_DATA_RETRIEVED:"workspace:load:dataRetrieved",LOAD_FINISHED:"workspace:load:finished",WINDOW_REMOVED:"window:remove",WINDOW_ADDED:"window:add",LOAD_STARTED:"workspace:load:start",WORKSPACE_REMOVED:"Workspace:remove",WORKSPACE_RENAMED:"rename",SWITCHTO_TERMINATED:"workspace:switchTo:terminated",NEW_WORKSPACE:"new workspace",SAVE_AS:"APPLICATION LIFECYCLE:WORKSPACE LIFECYCLE:SaveAs:Workspace:Save As"},API_CHANNELS:{NEW_WORKSPACE:"Finsemble.Workspace.NewWorkspace",SAVE:"Finsemble.Workspace.Save",RENAME:"Finsemble.Workspace.Rename",SAVE_AS:"Finsemble.Workspace.SaveAs",SWITCH_TO:"Finsemble.Workspace.SwitchTo",IMPORT:"Finsemble.Workspace.Import",EXPORT:"Finsemble.Workspace.Export",REMOVE:"Finsemble.Workspace.Remove",SAVE_GLOBAL_DATA:"Finsemble.Workspace.SaveGlobalData",SAVE_VIEW_DATA:"Finsemble.Workspace.SaveViewData",GET_GLOBAL_DATA:"Finsemble.Workspace.GetGlobalData",GET_VIEW_DATA:"Finsemble.Workspace.GetViewData",GET_WORKSPACES:"Finsemble.Workspace.GetWorkspaces",GET_WORKSPACE_NAMES:"Finsemble.Workspace.GetWorkspaceNames",SET_WORKSPACE_ORDER:"Finsemble.Workspace.SetWorkspaceOrder",GET_ACTIVE_WORKSPACE:"Finsemble.Workspace.GetActiveWorkspace",GET_ACTIVE_WORKSPACE_DIRTY:"Finsemble.Workspace.GetActiveWorkspaceDirty",GET_TEMPLATES:"Finsemble.Workspace.GetTemplates",IMPORT_TEMPLATE:"Finsemble.Workspace.ImportTemplate",EXPORT_TEMPLATE:"Finsemble.Workspace.ExportTemplate",REMOVE_TEMPLATE:"Finsemble.Workspace.RemoveTemplate",SET_WINDOW_STATE:"Finsemble.Workspace.SetWindowData",GET_WINDOW_STATE:"Finsemble.Workspace.GetWindowData",ADD_WINDOW:"WorkspaceService.addWindow",REMOVE_WINDOW:"WorkspaceService.removeWindow"},DEFAULT_WINDOW_PROPS:["name","componentType","windowType","alwaysOnTop","autoShow","minWidth","minHeight","maxWidth","maxHeight","resizable","maximizable","minimizable","opacity","windowState","left","top","width","height","right","bottom","defaultLeft","defaultTop","defaultWidth","defaultHeight","defaultRight","defaultBottom","monitorInfo","icon","cachedBounds","showTaskbarIcon","isEvergreen","compositeComponentData"],ADDITIONAL_WINDOW_PROPS:{WebWindow:["url","fullscreen","frame","backgroundColor","transparent","waitForPageLoad","affinity","appUUID"],NativeWindow:["path","alias","arguments","argumentsAsQueryString","isWPF"],StackedWindow:["childWindowIdentifiers","visibleWindowIdentifier","bounds"]}},t.WINDOW_SERVICE_REQUESTS={REMOTE_FOCUS:"WindowService.remoteFocus",SET_ALWAYS_ON_TOP:"WindowService-Request-setAlwaysOnTop",IS_ALWAYS_ON_TOP:"WindowService-Request-isAlwaysOnTop"},t.COMPONENT_STATE_STORAGE_TOPIC="finsemble.componentStateStorage",t.HEARTBEAT_TIMEOUT_CHANNEL="Finsemble.WindowService.HeartbeatTimeout",t.LAUNCHER_SERVICE={WINDOW_CLOSED:"LauncherService.WindowClosed"},t.MOVE_REASON={AERO_KEY:"aero_key",SYSTEM_RESTORED:"system_restored"}},13854:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FSBLDependencyManagerSingleton=t.FSBLDependencyManager=void 0;const i=n(5939),o=r(n(39319)),s=n(78379),u=r(n(5020)),a=r(n(72551));class c extends i.EventEmitter{constructor(e){super(),this.callback=e.callback,this.dependencies=e.dependencies,this.startupTimer=null,this.setStartupTimer=this.setStartupTimer.bind(this),this.clearStartupTimer=this.clearStartupTimer.bind(this)}clearStartupTimer(){this.startupTimer&&clearTimeout(this.startupTimer),delete this.startupTimer}setStartupTimer(){const e=this;this.startupTimer=+setTimeout((()=>{e.emit("timeout")}),1e4)}}function l(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(e=>{const t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}))}class f{constructor(){this.servicesAreAllOnline={},this.clientsAreAllOnline={},this.onlineClients=[],this.dependencies={},this.startupTimers={},this.startupTimerFired=!1,this.bindCorrectContext()}waitFor(e,t){const n=l();e.clients||(e.clients=[]),e.clients.length&&(e.clients=e.clients.map((e=>e.charAt(0).toLowerCase()+e.slice(1))));const r=new c({dependencies:e,callback:t});return r.setStartupTimer(),r.on("timeout",(()=>{this.onDependencyTimeout(r)})),this.dependencies[n]=r,this.checkDependencies(),r}onDependencyTimeout(e){const t=this.getOfflineClients();let n="APPLICATION LIFECYCLE:STARTUP:Dependency not online after 10 seconds.";t.length&&(n=`${n} Waiting for these clients: ${t.join(", ")}.`),e.emit("err",n)}checkDependencies(){for(const e in this.dependencies){const t=this.dependencies[e],{dependencies:n,callback:r}=t;(!n.clients.length||this.clientsAreAllOnline[e]||(this.clientsAreAllOnline[e]=this.checkClients(n.clients),this.clientsAreAllOnline[e]))&&(delete this.dependencies[e],t.clearStartupTimer(),r&&r())}}getOfflineClients(){let e=[];for(const t in this.dependencies){const{dependencies:n}=this.dependencies[t];e=e.concat(n.clients.filter((e=>!this.onlineClients.includes(e))))}return e.filter(((t,n)=>e.indexOf(t)===n))}checkClients(e){return e.every((e=>this.onlineClients.includes(e)))}setClientOnline(e){this.onlineClients.includes(e)||(this.onlineClients.push(e),this.checkDependencies())}getOnlineClients(){return this.onlineClients}bindCorrectContext(){this.checkDependencies=this.checkDependencies.bind(this),this.checkClients=this.checkClients.bind(this),this.getOfflineClients=this.getOfflineClients.bind(this),this.onDependencyTimeout=this.onDependencyTimeout.bind(this),this.waitFor=this.waitFor.bind(this)}}class d{constructor(){this.offlineServices=[],this.dependencies={},this.checkDependencies=this.checkDependencies.bind(this)}waitFor(e,t){a.default.system.debug("DependencyManager:waitFor",e),e.services||(e.services=[]);const n=l();this.dependencies[n]={dependencies:e,callback:t}}checkDependencies(){if(console.debug("checkDependencies",this.dependencies),Object.keys(this.dependencies))for(const e in this.dependencies){const{dependencies:t,callback:n}=this.dependencies[e];(a.default.system.debug("DependencyManager:checkDependency",t.services,this.offlineServices),!t.services.length||this.checkServices(t.services))&&(console.debug("checkDependencies callback"),delete this.dependencies[e],n&&n())}}checkServices(e){return e.every((e=>this.offlineServices.includes(e)))}setServiceOffline(e){a.default.system.debug("setServiceOffline",e),console.debug("setServiceOffline",e),this.offlineServices.push(e),this.checkDependencies()}}class p extends i.EventEmitter{constructor(){super(),this.startup=new f,this.shutdown=new d,this.RouterClient=o.default,this.AuthorizationCompleted=!1,this.bindCorrectContext(),this.onAuthorizationCompleted(this.startup.checkDependencies),o.default.onReady(this.listenForServices)}bindCorrectContext(){this.listenForServices=this.listenForServices.bind(this),this.onAuthorizationCompleted=this.onAuthorizationCompleted.bind(this)}setClientOnline(e){this.startup.setClientOnline(e)}onServiceStateChange(e){Object.keys(e).forEach((t=>{const{state:n}=e[t];"closed"===n&&this.shutdown.setServiceOffline(t)}))}listenForServices(){a.default.system.debug("DependencyManager:listenForServices before wait"),u.default.waitForBootStage("kernel","stageEntered",(()=>{a.default.system.debug("DependencyManager:listenForServices after wait"),this.RouterClient.subscribe(s.SERVICES_STATE_CHANNEL,((e,t)=>{a.default.system.debug("DependencyManager:listenForServices SERVICES_STATE_CHANNEL",t.data),this.onServiceStateChange(t.data)})),this.RouterClient.addListener(s.SERVICE_CLOSED_CHANNEL,((e,t)=>{a.default.system.debug("DependencyManager:listenForServices SERVICE_CLOSED_CHANNEL",t.data);const n={};n[t.data.name]={state:"closed"},this.onServiceStateChange(n)})),this.RouterClient.subscribe(s.APPLICATION_STATE_CHANNEL,((e,t)=>{switch(t.data.state){case"authenticated":case"ready":break;case"closing":this.shutdown.checkDependencies()}}))}))}onAuthorizationCompleted(e){this.AuthorizationCompleted?e():this.addListener("AuthorizationCompleted",e)}}t.FSBLDependencyManager=p,t.FSBLDependencyManagerSingleton=new p,t.default=t.FSBLDependencyManagerSingleton},82369:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(72551)),o=n(51742),s={activeTransports:{},liveTransport:null,addTransport(e,t){this.activeTransports[e]=t,i.default.system.log(`RouterTransport ${e} added to activeTransports`)},getActiveTransports(e){const t=[];function n(e){-1===t.indexOf(e)&&t.push(e)}return o.System.InterApplicationBus&&n("IPCBus"),n("FinsembleTransport"),SharedWorker&&n("SharedWorker"),n(e.sameDomainTransport),n(e.crossDomainTransport),i.default.system.log("getActiveTransports",t),t},getTransport:(e,t,n,r,i)=>new Promise(((o,u)=>{const a=s.activeTransports[t];a?s.liveTransport=new a(e,n,r,i,(e=>{o(e)})):u(`unknown router transport name: ${t}`)})),close(){s.liveTransport&&(s.liveTransport.close(),s.liveTransport=null)}},u=function(e,t,n,r,o){let s;const u=this;this.send=function(e,t){1===arguments.length?(t=arguments[0],e=null):(e=arguments[0],t=arguments[1]),i.default.system.verbose("SharedWorkerTransport Outgoing Transport",t);try{s.port.postMessage([e,t])}catch(e){i.default.system.error(`SharedWorkerTransport: post message failed: ${JSON.stringify(e)}`,"Probable cause is sending illegal data type (e.g. function).")}},this.identifier=function(){return"SharedWorker"};const a=e.transportSettings.SharedWorker&&e.transportSettings.SharedWorker.workerPath?e.transportSettings.SharedWorker.workerPath:`${e.routerDomainRoot}/common/routerSharedWorker.js`;i.default.system.log(`SharedWorker Transport Initializing for ${n} using ${a}`),console.log(`SharedWorker Transport Initializing for ${n} using ${a}`),s=new SharedWorker(a,{name:"Finsemble",credentials:"include"}),s.port.onmessage=function(e){const n=e.data[0],r=e.data[1],o={transportID:u.identifier(),port:n};i.default.system.verbose("SharedWorkerTransport Incoming Transport",o,"Message",r),t(o,r)},s.onerror=function(e){i.default.system.error(`SharedWorkerTransport Transport Error${JSON.stringify(e)}`)},s.port.start(),"RouterService"===n&&s.port.postMessage({data:"connect",source:"RouterService"}),this.close=()=>{s.port.close()},o(this)},a=function(e,t,n,r,s){const{uuid:u}=o.System.Application.getCurrent(),a=this;this.send=function(e,t){let n;1===arguments.length?(n=r,t=arguments[0]):(n=e.name,t=arguments[1]),i.default.system.verbose("IPCTransport Outgoing Transport",u,n,"Message",t),o.System.InterApplicationBus.publish(n,t,(()=>{}),(()=>{}))},this.identifier=function(){return"IPCBus"},i.default.system.log(`IPCBus Transport Initializing for ${n}`),console.log(`IPCBus Transport Initializing for ${n}`);const c=o.System.InterApplicationBus.subscribe("*",n,(function(e,n){const r={transportID:a.identifier(),senderUuid:n,name:e.header.origin};i.default.system.verbose("IPCTransport Incoming Transport",r,"Message",e),t(r,e)}),(()=>{}),(function(e){i.default.system.error(`IPCBus Subscribe Failure: ${e}`)}));this.close=()=>{o.System.InterApplicationBus.unsubscribe(c)},s(this)},c=function(e,t,n,r,o){const s=`${e?.transportSettings?.FinsembleTransport?.serverAddress??e?.transportSettings?.serverAddress??"ws://127.0.0.1:3376"}/router`,u=this;let a;function c(){i.default.system.error(`FinsembleTransport Connection Timeout for ${n}`),o(u)}function l(){i.default.system.log(`FinsembleTransport Transport Initializing for ${n} using ${s}`),console.log(`FinsembleTransport Transport Initializing for ${n} using ${s}`),s.startsWith("ws:")||s.startsWith("wss:")||console.error(`Illegal WebSocket address "${s}" (Missing ws:// or wss:// ?)`),a=new WebSocket(s);const e=setTimeout(c,3e3);a.addEventListener("open",(()=>{clearTimeout(e),i.default.system.log("FinsembleTransport Connected to Server"),console.log("FinsembleTransport Connected to Server"),a.addEventListener("message",(e=>{const r=JSON.parse(e.data);("RouterService"===n&&"ROUTER_SERVICE"==r.dest||n===r.message.client)&&function(e){const n={transportID:u.identifier(),client:e.clientMessage.header.origin};i.default.system.verbose("FinsembleTransport Incoming Transport",n,"Message",e),t(n,e.clientMessage)}(r.message)})),o(u)}))}this.send=function(e,t){let n,r;1===arguments.length?(n="ROUTER_SERVICE",r={clientMessage:t=arguments[0]}):(n="ROUTER_CLIENT",t=arguments[1],r={client:e.client,clientMessage:t}),i.default.system.verbose("FinsembleTransport Outgoing Transport",n,"NewMessage",r),a.readyState===WebSocket.OPEN&&a.send(JSON.stringify({dest:n,message:r})),a.readyState===WebSocket.CONNECTING&&a.addEventListener("open",(()=>{a.send(JSON.stringify({dest:n,message:r}))})),a.readyState===WebSocket.CLOSED&&(l(),a.addEventListener("open",(()=>{a.send(JSON.stringify({dest:n,message:r}))}))),a.readyState===WebSocket.CLOSING&&(a.onclose=()=>{l(),a.addEventListener("open",(()=>{a.send(JSON.stringify({dest:n,message:r}))}))})},this.identifier=function(){return"FinsembleTransport"},this.close=()=>{a.close()},l()};s.addTransport("SharedWorker",u),s.addTransport("IPCBus",a),s.addTransport("FinsembleTransport",c),t.default=s},51742:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.System=void 0;const r=n(16925);class i{constructor(e,t,n){return new fin.desktop.Window(e,t)}static get getCurrent(){return fin.desktop.Window.getCurrent}static get wrap(){return fin.desktop.Window.wrap}}class o{constructor(e,t,n){t&&t()}static getCurrent(){const{windowName:e}=r.Startup.getInstance().getStartupData();return{name:e,uuid:`${e}-uuid`,getOptions:e=>{e&&e({})},addEventListener:()=>{},updateOptions:()=>{},close:()=>{},startMovingWindow:()=>{},stopMovingWindow:()=>{},isShowing:()=>{},bringToFront:()=>{},show:()=>{},hide:()=>{},setTaskbarIcon:()=>{}}}static wrap(){return{}}}class s{constructor(e,t,n){return new fin.desktop.Application(e,t)}static get getCurrent(){return fin.desktop.Application.getCurrent}static get wrap(){return fin.desktop.Application.wrap}}class u{constructor(e){new fin.desktop.Notification(e)}}class a{constructor(){return new fin.desktop.System.Clipboard}static get writeText(){return fin.desktop.System.Clipboard.writeText}static get writeHTML(){return fin.desktop.System.Clipboard.writeHTML}static get writeRTF(){return fin.desktop.System.Clipboard.writeRTF}static get readText(){return fin.desktop.System.Clipboard.readText}static get readHTML(){return fin.desktop.System.Clipboard.readHTML}static get readRTF(){return fin.desktop.System.Clipboard.readRTF}}class c{static isFreestanding(){return"undefined"==typeof fin}static get Application(){return s}static get Window(){return c.isFreestanding()?o:i}static get Notification(){return u}static get Clipboard(){return a}static async getMousePosition(e=Function.prototype){return new Promise(((t,n)=>{fin.desktop.System.getMousePosition((n=>{(n.left||0===n.left)&&(n.x=n.left),(n.top||0===n.top)&&(n.y=n.top),e(null,n),t(n)}),(t=>{e(t,null),n(t)}))}))}static getSDServerInfo(e=Function.prototype){return new Promise((t=>{fin.desktop.System.getSDServerInfo((n=>{t(n),e(n)}))}))}static getMonitorInfo(e=Function.prototype){return new Promise((t=>{fin.desktop.System.getMonitorInfo((n=>{t(n),e(n)}))}))}static container(){return"undefined"==typeof fin?"freestanding":fin.container?fin.container:"FEA"}static isBrowserView(){return!c.isFreestanding()&&fin.isBrowserView()}static getViewId(){return fin.getViewId()}static hasBrowserView(){return!c.isFreestanding()&&fin.hasBrowserView()}static get fin(){return fin||{}}static ready(e){return new Promise((t=>{fin.desktop.main((()=>{e&&e(),t()}))}))}static getHostSpecs(e=Function.prototype){return new Promise((t=>{fin.desktop.System.getHostSpecs((n=>{t(n),e(n)}))}))}static get InterApplicationBus(){return fin.desktop.InterApplicationBus}static get launchExternalProcess(){return fin.desktop.System.launchExternalProcess}static get terminateExternalProcess(){return fin.desktop.System.terminateExternalProcess}static get getAllApplications(){return fin.desktop.System.getAllApplications}static get exit(){return fin.desktop.System.exit}static get clearCache(){return fin.desktop.System.clearCache}static get showDeveloperTools(){return fin.desktop.System.showDeveloperTools}static get getRuntimeInfo(){return fin.desktop.System.getRuntimeInfo}static get addEventListener(){return c.isFreestanding()?window.addEventListener:fin.desktop.System.addEventListener}static get addSelectClientCertificateListener(){return fin.desktop.System.addSelectClientCertificateListener}static get addCertificateErrorListener(){return fin.desktop.System.addCertificateErrorListener}static get getVersion(){return fin.desktop.System.getVersion}static get getUpdateAvailable(){return fin.desktop.System.getUpdateAvailable}static get openUrlWithBrowser(){return fin.desktop.System.openUrlWithBrowser}static get getAllWindows(){return fin.desktop.System.getAllWindows}static get getProcessList(){return fin.desktop.System.getProcessList}static get getProtocolString(){return fin.desktop.System.getProtocolString}static get hideSplashScreen(){return fin.desktop.System.hideSplashScreen}static startupApplicationHandshake(){fin.desktop.System.startupApplicationHandshake&&fin.desktop.System.startupApplicationHandshake()}static closeApplication(e,t=Function.prototype){return new Promise((n=>{let r,i=!1;const o=()=>{i||(console.log("Attempting to terminate",e.uuid),e.terminate((()=>{t(),n()}),(()=>{i||(i=!0,clearInterval(r),console.log("force closing ",e.uuid),e.terminate())})))};r=setInterval(o,2e3),console.log("closing ",e.uuid),e.close(!1,(()=>{console.log("app.close: successfully closed",e.uuid),i=!0,clearInterval(r),t(),n()}),o)}))}}t.System=c},5020:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(39319)),o=r(n(72551)),s=n(56188),u=n(33509),a=n(95269),c=new class{publishBootStatus(e,t,n){console.log("publishStartingStatus",e,n),o.default.system.debug("publishBootStatus",e,t,n),i.default.publish(a.statusChannel(e),{name:e,type:t,state:n})}waitForBootStage(e,t,n=Function.prototype){return new Promise(((r,a)=>{o.default.system.debug("SystemManagerClient.waitForBootStage entry",e,t);const c=s.ALL_BOOT_STAGES.indexOf(e);"microkernel"===e&&"stageEntered"===t&&o.default.system.error("Cannot wait on `stageEntered` for microkernel because router isn't up yet. So will instead wait for microkernal stage complete.");const l=i.default.subscribe(u.STAGE_CHANNEL,((u,f)=>{if(o.default.system.debug("SystemManagerClient.waitForBootStage new stage",f.data.stage,l),u)o.default.system.error("SystemManagerClient.waitForBootStage subscribe error",u),n(u),a(u);else if(-1===c)u="illegal stage argument",o.default.system.debug("SystemManagerClient.waitForBootStage subscribe error",u,e),n(u),a(u);else{const u=s.ALL_BOOT_STAGES.indexOf(f.data.stage);o.default.system.debug("SystemManagerClient.waitForBootStage new stage",f.data,l),"stageEntered"===t&&u+1>=c?(o.default.system.debug("SystemManagerClient.waitForBootStage stageEntered",e,l,n.name),n(),r(),i.default.unsubscribe(l)):"stageCompleted"===t&&u>=c?(o.default.system.debug("SystemManagerClient.waitForBootStage completed",e,l),n(),r(),i.default.unsubscribe(l)):o.default.system.debug(`SystemManagerClient.waitForBootStage else currentStageIndex=${u} stageIndex=${c} `,u,c,e,l)}}))}))}waitForStartup(e,t=Function.prototype){return new Promise(((n,r)=>{o.default.system.debug(`SystemManagerClient.waitForStartup.${e}`,e);const s=i.default.subscribe(a.statusChannel(e),((u,a)=>{o.default.system.debug("SystemManagerClient.waitForStartup subscribe",e,u,a),u?(o.default.system.error("SystemManagerClient.waitForStartup subscribe error",u),t(u),r()):a.data.name===e&&"completed"===a.data.state&&(o.default.system.debug("SystemManagerClient.waitForStartup completed",e),t(),n(),i.default.unsubscribe(s))}))}))}publishCheckpointState(e,t,n){console.log("publishCheckpoint",e,t,n,a.checkpointChannel(e,t)),o.default.system.debug("publishCheckpoint",e,t,n,a.checkpointChannel(e,t)),i.default.publish(a.checkpointChannel(e,t),{windowName:e,checkpointName:t,state:n})}showSystemLog(){o.default.system.debug("SystemManagerClient.showSystemLog"),i.default.transmit(u.SHOW_SYSLOG_CHANNEL,!0)}systemLog(e,t){o.default.system.debug("SystemManagerClient.systemLog",e,t),i.default.transmit(u.SYSLOG_CHANNEL,{params:e,logMessage:t})}};t.default=c},33509:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CHECKPOINT_CHANNEL_BASE=t.STAGE_CHANNEL=t.STATUS_CHANNEL_BASE=t.SHOW_SYSLOG_CHANNEL=t.SYSLOG_CHANNEL=t.CRITICAL_BOOT_STAGES=t.ALL_BOOT_STAGES=void 0,t.ALL_BOOT_STAGES=["microkernel","kernel","authentication","preuser","earlyuser","user"],t.CRITICAL_BOOT_STAGES=["microkernel","kernel","authentication"],t.SYSLOG_CHANNEL="systemManager.systemlog",t.SHOW_SYSLOG_CHANNEL="systemManager.showSystemlog",t.STATUS_CHANNEL_BASE="systemManager.boot.status",t.STAGE_CHANNEL="systemManager.boot.stage",t.CHECKPOINT_CHANNEL_BASE="systemManager.checkpoint"},56188:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BootReadyItem=t.BootConfigElement=t.ALL_BOOT_STAGES=void 0,t.ALL_BOOT_STAGES=["microkernel","kernel","authentication","preuser","earlyuser","user"],t.BootConfigElement=class{},t.BootReadyItem=class{constructor(e,t,n){this.name=e,this.type=t,this.config=n}}},95269:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.checkpointChannel=t.statusChannel=t.killOldApplications=void 0;const r=n(51742),i=n(33509);t.killOldApplications=function(e){return new Promise((async t=>{r.System.getAllApplications((async n=>{if(n)for(let t=0;t<n.length;t++){const i=n[t];if(i.uuid?.endsWith(`-${e}`)){const e=r.System.Application.wrap(i.uuid);await r.System.closeApplication(e)}}console.log("killOldApplications: finished closing old apps"),t()}))}))},t.statusChannel=function(e){return`${i.STATUS_CHANNEL_BASE}.${e}`},t.checkpointChannel=function(e,t){return`${i.CHECKPOINT_CHANNEL_BASE}.${e}.${t}`}}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={id:r,loaded:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var r=n(78658);return r.default})()}));