@synnaxlabs/pluto 0.47.1 → 0.48.0
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.
- package/dist/{Animated-NfnNvlbz.cjs → Animated--SNIwznU.cjs} +1 -1
- package/dist/{Animated-CUFx-eAB.js → Animated-CC7iS0zH.js} +21 -21
- package/dist/{Animated-CEx4LoLs.js → Animated-DfDp0-ep.js} +4 -4
- package/dist/{Animated-Bq6z2XkH.cjs → Animated-TMpTdCqK.cjs} +1 -1
- package/dist/{Box-D5Qv__kr.js → Box-CoQUaJk2.js} +2 -2
- package/dist/{Box-BvqALodh.cjs → Box-Ds_D3xR_.cjs} +1 -1
- package/dist/Button-BaMa3eGI.cjs +1 -0
- package/dist/Button-NgDHbsf8.js +306 -0
- package/dist/{Dialog-BnPvG5WQ.cjs → Dialog-BL8T9CVw.cjs} +1 -1
- package/dist/{Dialog-Bi1Sf3oc.js → Dialog-CBDFqieV.js} +4 -4
- package/dist/{Editable-CxgdRDPb.js → Editable-C7KPD0hC.js} +3 -3
- package/dist/{Editable-BXFY3-UW.cjs → Editable-CWt3zqDm.cjs} +1 -1
- package/dist/{Haul-BuI0PZpo.js → Haul-Be1j5BU3.js} +2 -2
- package/dist/{Haul-2Xa_nMgc.cjs → Haul-D1WaI_xE.cjs} +1 -1
- package/dist/{Items-CHAbP2ZL.cjs → Items-BYlg9bb-.cjs} +1 -1
- package/dist/{Items-Cmc6otoS.js → Items-mikdEpyC.js} +8 -8
- package/dist/{Menu-CQ_GMgB9.js → Menu-CcWs0t21.js} +9 -9
- package/dist/{Menu-BImhHf24.cjs → Menu-DJoh8bH7.cjs} +1 -1
- package/dist/{Provider-D0P_lzCo.js → Provider-DScd3hYf.js} +26 -26
- package/dist/{Provider-BV7nN39a.cjs → Provider-fx1wTnXk.cjs} +2 -2
- package/dist/Tags-DvPUmH2r.js +908 -0
- package/dist/Tags-KHafaGjR.cjs +1 -0
- package/dist/{Text-BnUGzpJq.js → Text-BbbqH88W.js} +491 -486
- package/dist/Text-CZrjPRjJ.cjs +1 -0
- package/dist/{Video-VlT7jSYk.cjs → Video-DRSEX8t7.cjs} +1 -1
- package/dist/{Video-CITi2j07.js → Video-_DrutSeT.js} +2 -2
- package/dist/button.cjs +1 -1
- package/dist/button.js +1 -1
- package/dist/color.cjs +1 -1
- package/dist/color.js +1 -1
- package/dist/css-C_YE-5Xa.cjs +8 -0
- package/dist/{css-D6ZBcSwh.js → css-Cn63X_Yv.js} +1161 -1111
- package/dist/css.cjs +1 -1
- package/dist/css.js +2 -2
- package/dist/{deep-DtdcJG4q.cjs → deep-7SxmCL0x.cjs} +1 -1
- package/dist/{deep-DRVLw7iw.js → deep-szN5DCOH.js} +1 -1
- package/dist/dialog.cjs +1 -1
- package/dist/dialog.js +1 -1
- package/dist/{dimensions-CGLhBwVq.cjs → dimensions-DFDTcQRG.cjs} +1 -1
- package/dist/{dimensions-BFCMI7yN.js → dimensions-Dclfavlh.js} +1 -1
- package/dist/{eraser-DvzR9kLf.js → eraser-Bpl4bpBx.js} +13 -13
- package/dist/{eraser-Dm5Du4PL.cjs → eraser-Bqibt23a.cjs} +2 -2
- package/dist/ether.cjs +1 -1
- package/dist/ether.js +7 -7
- package/dist/{_commonjsHelpers-BH3jXuIh.cjs → event-BxvV3arE.cjs} +1 -1
- package/dist/{_commonjsHelpers-ByX85dGu.js → event-nNH_pXSr.js} +17 -14
- package/dist/{external-CMBnwYR4.cjs → external-19BIaQc6.cjs} +1 -1
- package/dist/{external-Daiy-vZ3.js → external-1uZLLxz-.js} +771 -792
- package/dist/{external-DGNBXSAj.js → external-6rS2YiWR.js} +16066 -15782
- package/dist/{external-CAcL3DJP.js → external-8H4eB7TN.js} +8 -8
- package/dist/{external-Eaj0hgzm.cjs → external-AInsIJp-.cjs} +1 -1
- package/dist/{external-CTsR6bs9.cjs → external-B3jTkhc4.cjs} +4 -22
- package/dist/external-B8hxM_jw.cjs +79 -0
- package/dist/{external-BTlfU938.js → external-BOWnCKIe.js} +3 -3
- package/dist/{external-D7EEjQaR.js → external-Bi-OQCBH.js} +19 -18
- package/dist/{external-6vmyay3h.js → external-Bq4gfE5e.js} +6 -6
- package/dist/{external-6RyUkYAB.js → external-C0_sN1J0.js} +2 -2
- package/dist/{external-CSntN1is.cjs → external-CFZ33YbY.cjs} +1 -1
- package/dist/{external-CTrkvlmd.cjs → external-CFdDgpzj.cjs} +1 -1
- package/dist/{external-BcZE443U.cjs → external-CJFfVl_u.cjs} +1 -1
- package/dist/{external-BrQU-ZN8.cjs → external-CN15E8ls.cjs} +1 -1
- package/dist/{external-Bo9Dyf8v.js → external-Caetm5fI.js} +5 -5
- package/dist/external-CfEVFfhL.cjs +1 -0
- package/dist/{external-CtiE4JLk.js → external-D6TsHpoG.js} +10 -10
- package/dist/{external-Clec0nDH.cjs → external-D7WE6Leo.cjs} +1 -1
- package/dist/{external-OLyg-4Ab.cjs → external-DUGcSVbJ.cjs} +1 -1
- package/dist/{external-BSjAne2q.js → external-DwhfVdFp.js} +5 -5
- package/dist/{external-BhOvtmPt.js → external-X_eFMRtE.js} +2 -2
- package/dist/{external-Dl0l3iHN.cjs → external-pRQzznIG.cjs} +1 -1
- package/dist/{external-OzDazbiJ.js → external-y1Apm7j1.js} +14 -14
- package/dist/flex.cjs +1 -1
- package/dist/flex.js +1 -1
- package/dist/{fontString-yPlq8smc.cjs → fontString-BcSXNOgW.cjs} +1 -1
- package/dist/{fontString-CGd4NYXa.js → fontString-D7EMGjIw.js} +2 -2
- package/dist/header.cjs +1 -1
- package/dist/header.js +1 -1
- package/dist/{hooks-Bvv-S6WC.js → hooks-BmUn8s1r.js} +4 -4
- package/dist/{hooks-CoF3Fkrn.cjs → hooks-CutQY1o9.cjs} +1 -1
- package/dist/index.cjs +8 -40
- package/dist/index.js +9333 -9141
- package/dist/input.cjs +1 -1
- package/dist/input.js +1 -1
- package/dist/{jsx-runtime-OVHDjVDe.js → jsx-runtime-BbD0H88J.js} +108 -128
- package/dist/jsx-runtime-nZSsnGb7.cjs +6 -0
- package/dist/list.cjs +1 -1
- package/dist/list.js +1 -1
- package/dist/menu.cjs +1 -1
- package/dist/menu.js +1 -1
- package/dist/pluto.css +1 -1
- package/dist/{provider-C8In649C.js → provider-B6SgG_sT.js} +4910 -4821
- package/dist/provider-C9Beoajx.cjs +72 -0
- package/dist/src/button/Button.d.ts +2 -1
- package/dist/src/button/Button.d.ts.map +1 -1
- package/dist/src/channel/LinePlot.d.ts +4 -1
- package/dist/src/channel/LinePlot.d.ts.map +1 -1
- package/dist/src/channel/Select.d.ts +2 -2
- package/dist/src/channel/Select.d.ts.map +1 -1
- package/dist/src/cluster/index.d.ts +2 -0
- package/dist/src/cluster/index.d.ts.map +1 -0
- package/dist/src/cluster/queries.d.ts +6 -0
- package/dist/src/cluster/queries.d.ts.map +1 -0
- package/dist/src/cluster/queries.spec.d.ts +2 -0
- package/dist/src/cluster/queries.spec.d.ts.map +1 -0
- package/dist/src/color/GradientPicker.d.ts.map +1 -1
- package/dist/src/flux/retrieve.d.ts +9 -8
- package/dist/src/flux/retrieve.d.ts.map +1 -1
- package/dist/src/hardware/device/Select.d.ts +1 -1
- package/dist/src/hardware/device/Select.d.ts.map +1 -1
- package/dist/src/hardware/rack/Select.d.ts +1 -1
- package/dist/src/hardware/rack/Select.d.ts.map +1 -1
- package/dist/src/icon/registry.d.ts +1 -0
- package/dist/src/icon/registry.d.ts.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/input/DateTime.d.ts.map +1 -1
- package/dist/src/input/DateTime.spec.d.ts +2 -0
- package/dist/src/input/DateTime.spec.d.ts.map +1 -0
- package/dist/src/label/Select.d.ts +3 -3
- package/dist/src/label/Select.d.ts.map +1 -1
- package/dist/src/menu/Item.d.ts.map +1 -1
- package/dist/src/schematic/symbol/Primitives.d.ts.map +1 -1
- package/dist/src/select/Dialog.d.ts +2 -3
- package/dist/src/select/Dialog.d.ts.map +1 -1
- package/dist/src/select/Multiple.d.ts.map +1 -1
- package/dist/src/select/MultipleTrigger.d.ts.map +1 -1
- package/dist/src/status/Select.d.ts +1 -1
- package/dist/src/status/Select.d.ts.map +1 -1
- package/dist/src/status/queries.d.ts +13 -0
- package/dist/src/status/queries.d.ts.map +1 -1
- package/dist/src/synnax/Provider.d.ts +2 -2
- package/dist/src/synnax/Provider.d.ts.map +1 -1
- package/dist/src/synnax/aether/provider.d.ts.map +1 -1
- package/dist/src/table/Table.d.ts.map +1 -1
- package/dist/src/tag/Tag.d.ts.map +1 -1
- package/dist/src/user/Avatar.d.ts +7 -0
- package/dist/src/user/Avatar.d.ts.map +1 -0
- package/dist/src/user/external.d.ts +3 -0
- package/dist/src/user/external.d.ts.map +1 -0
- package/dist/src/user/index.d.ts +1 -1
- package/dist/src/user/index.d.ts.map +1 -1
- package/dist/src/user/queries.d.ts +1 -0
- package/dist/src/user/queries.d.ts.map +1 -1
- package/dist/src/vis/draw2d/index.d.ts +2 -1
- package/dist/src/vis/draw2d/index.d.ts.map +1 -1
- package/dist/src/vis/measure/Measure.d.ts +4 -1
- package/dist/src/vis/measure/Measure.d.ts.map +1 -1
- package/dist/src/vis/measure/aether/measure.d.ts +27 -1
- package/dist/src/vis/measure/aether/measure.d.ts.map +1 -1
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.js +1 -1
- package/dist/text.cjs +1 -1
- package/dist/text.js +2 -2
- package/dist/theming.cjs +1 -1
- package/dist/theming.js +2 -2
- package/dist/tree.cjs +1 -1
- package/dist/tree.js +1 -1
- package/dist/triggers.cjs +1 -1
- package/dist/triggers.js +1 -1
- package/dist/{units-BqIfn6VX.js → units-cBd5OJg4.js} +1 -1
- package/dist/units-zxke9Ng2.cjs +1 -0
- package/dist/value-Ce4T858D.cjs +53 -0
- package/dist/{value-ChGMEPP3.js → value-UJNdARAu.js} +2715 -2512
- package/dist/video.cjs +1 -1
- package/dist/video.js +1 -1
- package/package.json +23 -21
- package/dist/Button-BMeq9Z2I.cjs +0 -1
- package/dist/Button-CMRdj9Ti.js +0 -305
- package/dist/Tags-6IUFBvU-.js +0 -604
- package/dist/Tags-DtnStTuF.cjs +0 -1
- package/dist/Text-DY08sSZe.cjs +0 -1
- package/dist/css-HnNQMUzV.cjs +0 -8
- package/dist/external-DDzR-j7b.cjs +0 -1
- package/dist/external-Ddn3rc_Q.cjs +0 -85
- package/dist/jsx-runtime-Dszzpdy0.cjs +0 -22
- package/dist/provider-lNhTlIWj.cjs +0 -72
- package/dist/units-DCifOxd9.cjs +0 -1
- package/dist/value-B3LTg1lE.cjs +0 -53
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
"use strict";const Ce=require("./jsx-runtime-Dszzpdy0.cjs"),En=require("./Button-BMeq9Z2I.cjs"),ve=require("./css-HnNQMUzV.cjs"),vr=require("react"),SN=require("./Provider-BV7nN39a.cjs"),Ta=require("./Text-DY08sSZe.cjs"),Ba=require("./Tags-DtnStTuF.cjs"),TN=require("./Dialog-BnPvG5WQ.cjs"),Pb=require("./Animated-Bq6z2XkH.cjs"),er=require("./Box-BvqALodh.cjs"),en=require("./Editable-BXFY3-UW.cjs");require("./types-D-yz1qsT.cjs");require("./provider-lNhTlIWj.cjs");const oc=require("./_commonjsHelpers-BH3jXuIh.cjs"),Tl=require("./Items-CHAbP2ZL.cjs"),MN=require("./useStaticData-BTwIe0Il.cjs");require("./eraser-Dm5Du4PL.cjs");require("./Haul-2Xa_nMgc.cjs");const kb=({format:e="dateTime",suppliedTZ:t="UTC",displayTZ:r="local",children:n,...a})=>Ce.jsxRuntimeExports.jsx(en.Text,{...a,children:new ve.r(n,t).toString(e,r)}),FN=(e,t,r)=>e==="preview"&&r===!0?"var(--pluto-primary-z)":t,Ob=({ref:e,className:t,value:r,ghost:n,disabled:a,onChange:i,inputType:o,size:s,variant:u="text",style:l,color:c,borderColor:f,borderWidth:m,bordered:d,rounded:p,background:h,textColor:g,onClick:b,...D})=>Ce.jsxRuntimeExports.jsx(En.Button,{el:"label",variant:u,className:ve.CSS(ve.CSS.BE("input",o),t),ghost:n,disabled:a,size:s,preventClick:!0,style:l,color:c,borderColor:f,borderWidth:m,bordered:d,rounded:p,background:h,textColor:FN(u,g,r),onClick:b,children:u!=="preview"?Ce.jsxRuntimeExports.jsxs(Ce.jsxRuntimeExports.Fragment,{children:[Ce.jsxRuntimeExports.jsx("input",{className:ve.CSS.BE("input",o,"input"),type:"checkbox",ref:e,checked:r,onChange:y=>{y.stopPropagation(),i?.(y.target.checked)},value:"",disabled:a,onClick:b,...D}),Ce.jsxRuntimeExports.jsx("span",{className:ve.CSS.BE("input",o,"indicator"),onClick:b})]}):r?"True":"False"}),PN=e=>Ce.jsxRuntimeExports.jsx(Ob,{...e,inputType:"checkbox"}),$b="cursor-style",ah=(e,t=document.head)=>{Bb();const r=document.createElement("style");r.innerHTML=`*{cursor: ${e} !important;}`,r.id=$b,t.appendChild(r)},Bb=()=>{const e=document.getElementById($b);e?.remove()},_b=e=>e.preventDefault(),kN=e=>e.stopPropagation(),ih=(e,t,r,n,a)=>{const{x:i,y:o}=n??ve.Q.construct(ve.jt.dims(a));if(ve.jt.width(t)>i&&ve.jt.width(t)>ve.jt.height(t)){const s=ve.jt.signedWidth(t)<0?i:-i;e+=(ve.jt.signedWidth(t)+s)*r.x,ah("ew-resize")}if(ve.jt.height(t)>o&&ve.jt.height(t)>ve.jt.width(t)){const s=ve.jt.signedHeight(t)<0?o:-o;e+=(ve.jt.signedHeight(t)+s)*r.y,ah("ns-resize")}return e},sc=({direction:e,className:t,dragScale:r={x:10,y:1},dragThreshold:n=15,dragDirection:a,onChange:i,value:o,resetValue:s,onDragEnd:u,...l})=>{const c=vr.useRef({dragging:!1,curr:o,prev:o}),f=vr.useRef(null);c.current.dragging||(c.current.prev=o);const m=vr.useMemo(()=>{const h=ve.Q.construct(r);return a==="x"?ve.Q.construct(h.x,0):a==="y"?ve.Q.construct(0,h.y):h},[r,a]),d=vr.useMemo(()=>n!=null?ve.Q.construct(n):null,[n]);SN.useVirtualCursorDragWebKit({ref:f,onMove:vr.useCallback(h=>{if(f.current==null)return;let g=c.current.prev;c.current.dragging=!0,g=ih(g,h,m,d,ve.jt.construct(f.current)),c.current.curr=g,i(g)},[i,m,d]),onEnd:vr.useCallback((h,g)=>{if(f.current==null)return;let b=c.current.prev;b=ih(b,h,m,d,ve.jt.construct(f.current)),c.current.prev=b,c.current.dragging=!1,Bb(),u?.(b),l.onBlur?.()},[l.onBlur,u,m,d])});const p=vr.useCallback(()=>{i(s??c.current.prev)},[i,s]);return Ce.jsxRuntimeExports.jsx(En.Button,{ref:f,variant:"outlined",className:ve.CSS(ve.CSS.BE("input","drag-btn"),e!=null&&ve.CSS.BEM("input","drag-btn","direction",e),t),tabIndex:-1,onDoubleClick:p,onClick:_b,contrast:0,textColor:9,...l,children:Ce.jsxRuntimeExports.jsx(Ta.Drag,{})})},ON={x:Number(ve.r.HOUR.valueOf()),y:Number(ve.r.days(.75).valueOf())},Ib=({value:e,onChange:t})=>{const r=new ve.r(e,"UTC");vr.useLayoutEffect(()=>{const i=r.sub(ve.r.utcOffset);if(i.remainder(ve.r.DAY).isZero)return;const o=i.sub(i.remainder(ve.r.DAY));t(Number(new ve.r(o,"local").valueOf()))},[e]);const n=i=>{let o;if(typeof i=="number")o=new ve.r(i,"UTC");else{if(i.length===0)return;o=new ve.r(i,"local")}t(Number(o.valueOf()))};return{value:r.toString("ISODate","local"),onChange:n}},$N=({ref:e,onChange:t,value:r,className:n,showDragHandle:a=!0,children:i,...o})=>{const{value:s,onChange:u}=Ib({value:r,onChange:t});return Ce.jsxRuntimeExports.jsxs(Ba.Text,{ref:e,value:s,className:ve.CSS(ve.CSS.B("input-date"),n),onChange:u,type:"date",...o,children:[a&&Ce.jsxRuntimeExports.jsx(sc,{value:r,onChange:u,dragScale:ON}),i]})};let BN={one:{},two:{},three:{},four:{}},_N={one:{},two:{},three:{}},IN={},zN=[];const zf={methods:BN,model:_N,compute:IN,hooks:zN},jN=e=>Object.prototype.toString.call(e)==="[object Array]",qN={compute:function(e){const{world:t}=this,r=t.compute;return typeof e=="string"&&r.hasOwnProperty(e)?r[e](this):jN(e)?e.forEach(n=>{t.compute.hasOwnProperty(n)?r[n](this):console.warn("no compute:",e)}):typeof e=="function"?e(this):console.warn("no compute:",e),this}},RN=function(e){return this.fullPointer.forEach((r,n)=>{let a=this.update([r]);e(a,n)}),this},LN=function(e,t){let n=this.fullPointer.map((i,o)=>{let s=this.update([i]),u=e(s,o);return u===void 0?this.none():u});if(n.length===0)return t||this.update([]);if(n[0]!==void 0&&(typeof n[0]=="string"||typeof n[0]=="object"&&(n[0]===null||!n[0].isView)))return n;let a=[];return n.forEach(i=>{a=a.concat(i.fullPointer)}),this.toView(a)},HN=function(e){let t=this.fullPointer;return t=t.filter((n,a)=>{let i=this.update([n]);return e(i,a)}),this.update(t)},GN=function(e){let r=this.fullPointer.find((n,a)=>{let i=this.update([n]);return e(i,a)});return this.update([r])},VN=function(e){return this.fullPointer.some((r,n)=>{let a=this.update([r]);return e(a,n)})},UN=function(e=1){let t=this.fullPointer,r=Math.floor(Math.random()*t.length);return r+e>this.length&&(r=this.length-e,r=r<0?0:r),t=t.slice(r,r+e),this.update(t)},WN={forEach:RN,map:LN,filter:HN,find:GN,some:VN,random:UN},Un={termList:function(){return this.methods.one.termList(this.docs)},terms:function(e){let t=this.match(".");return typeof e=="number"?t.eq(e):t},groups:function(e){if(e||e===0)return this.update(this._groups[e]||[]);let t={};return Object.keys(this._groups).forEach(r=>{t[r]=this.update(this._groups[r])}),t},eq:function(e){let t=this.pointer;return t||(t=this.docs.map((r,n)=>[n])),t[e]?this.update([t[e]]):this.none()},first:function(){return this.eq(0)},last:function(){let e=this.fullPointer.length-1;return this.eq(e)},firstTerms:function(){return this.match("^.")},lastTerms:function(){return this.match(".$")},slice:function(e,t){let r=this.pointer||this.docs.map((n,a)=>[a]);return r=r.slice(e,t),this.update(r)},all:function(){return this.update().toView()},fullSentences:function(){let e=this.fullPointer.map(t=>[t[0]]);return this.update(e).toView()},none:function(){return this.update([])},isDoc:function(e){if(!e||!e.isView)return!1;let t=this.fullPointer,r=e.fullPointer;return!t.length===r.length?!1:t.every((n,a)=>r[a]?n[0]===r[a][0]&&n[1]===r[a][1]&&n[2]===r[a][2]:!1)},wordCount:function(){return this.docs.reduce((e,t)=>(e+=t.filter(r=>r.text!=="").length,e),0)},isFull:function(){let e=this.pointer;if(!e)return!0;if(e.length===0||e[0][0]!==0)return!1;let t=0,r=0;return this.document.forEach(n=>t+=n.length),this.docs.forEach(n=>r+=n.length),t===r},getNth:function(e){return typeof e=="number"?this.eq(e):typeof e=="string"?this.if(e):this}};Un.group=Un.groups;Un.fullSentence=Un.fullSentences;Un.sentence=Un.fullSentences;Un.lastTerm=Un.lastTerms;Un.firstTerm=Un.firstTerms;const jf=Object.assign({},Un,qN,WN);jf.get=jf.eq;class ni{constructor(t,r,n={}){[["document",t],["world",zf],["_groups",n],["_cache",null],["viewType","View"]].forEach(i=>{Object.defineProperty(this,i[0],{value:i[1],writable:!0})}),this.ptrs=r}get docs(){let t=this.document;return this.ptrs&&(t=zf.methods.one.getDoc(this.ptrs,this.document)),t}get pointer(){return this.ptrs}get methods(){return this.world.methods}get model(){return this.world.model}get hooks(){return this.world.hooks}get isView(){return!0}get found(){return this.docs.length>0}get length(){return this.docs.length}get fullPointer(){let{docs:t,ptrs:r,document:n}=this;return(r||t.map((i,o)=>[o])).map(i=>{let[o,s,u,l,c]=i;return s=s||0,u=u||(n[o]||[]).length,n[o]&&n[o][s]&&(l=l||n[o][s].id,n[o][u-1]&&(c=c||n[o][u-1].id)),[o,s,u,l,c]})}update(t){let r=new ni(this.document,t);if(this._cache&&t&&t.length>0){let n=[];t.forEach((a,i)=>{let[o,s,u]=a;a.length===1?n[i]=this._cache[o]:s===0&&this.document[o].length===u&&(n[i]=this._cache[o])}),n.length>0&&(r._cache=n)}return r.world=this.world,r}toView(t){return new ni(this.document,t||this.pointer)}fromText(t){const{methods:r}=this;let n=r.one.tokenize.fromString(t,this.world),a=new ni(n);return a.world=this.world,a.compute(["normal","freeze","lexicon"]),this.world.compute.preTagger&&a.compute("preTagger"),a.compute("unfreeze"),a}clone(){let t=this.document.slice(0);t=t.map(n=>n.map(a=>(a=Object.assign({},a),a.tags=new Set(a.tags),a)));let r=this.update(this.pointer);return r.document=t,r._cache=this._cache,r}}Object.assign(ni.prototype,jf);const JN="14.14.4",oh=function(e){return e&&typeof e=="object"&&!Array.isArray(e)};function zb(e,t){if(oh(t))for(const r in t)oh(t[r])?(e[r]||Object.assign(e,{[r]:{}}),zb(e[r],t[r])):Object.assign(e,{[r]:t[r]});return e}function KN(e,t){for(const r in t)e[r]=e[r]||{},Object.assign(e[r],t[r]);return e}const YN=function(e,t){let r=e.two.models||{};Object.keys(t).forEach(n=>{t[n].pastTense&&(r.toPast&&(r.toPast.ex[n]=t[n].pastTense),r.fromPast&&(r.fromPast.ex[t[n].pastTense]=n)),t[n].presentTense&&(r.toPresent&&(r.toPresent.ex[n]=t[n].presentTense),r.fromPresent&&(r.fromPresent.ex[t[n].presentTense]=n)),t[n].gerund&&(r.toGerund&&(r.toGerund.ex[n]=t[n].gerund),r.fromGerund&&(r.fromGerund.ex[t[n].gerund]=n)),t[n].comparative&&(r.toComparative&&(r.toComparative.ex[n]=t[n].comparative),r.fromComparative&&(r.fromComparative.ex[t[n].comparative]=n)),t[n].superlative&&(r.toSuperlative&&(r.toSuperlative.ex[n]=t[n].superlative),r.fromSuperlative&&(r.fromSuperlative.ex[t[n].superlative]=n))})},ZN=function(e,t,r,n){const{methods:a,model:i,compute:o,hooks:s}=t;e.methods&&KN(a,e.methods),e.model&&zb(i,e.model),e.irregulars&&YN(i,e.irregulars),e.compute&&Object.assign(o,e.compute),s&&(t.hooks=s.concat(e.hooks||[])),e.api&&e.api(r),e.lib&&Object.keys(e.lib).forEach(u=>n[u]=e.lib[u]),e.tags&&n.addTags(e.tags),e.words&&n.addWords(e.words),e.frozen&&n.addWords(e.frozen,!0),e.mutate&&e.mutate(t,n)},QN=function(e){const t=typeof process>"u"||!process.env?self.env||{}:process.env;return t.DEBUG_TAGS=e==="tagger"||e===!0?!0:"",t.DEBUG_MATCH=e==="match"||e===!0?!0:"",t.DEBUG_CHUNKS=e==="chunker"||e===!0?!0:"",this},XN=e=>Object.prototype.toString.call(e)==="[object Object]",qf=function(e){return Object.prototype.toString.call(e)==="[object Array]"},eA=function(e){return e.map(t=>t.terms.map(r=>(qf(r.tags)&&(r.tags=new Set(r.tags)),r)))},tA=function(e){return e.map(t=>t.map(r=>({text:r,normal:r,pre:"",post:" ",tags:new Set})))},jb=function(e,t,r){const{methods:n}=r;let a=new t([]);if(a.world=r,typeof e=="number"&&(e=String(e)),!e)return a;if(typeof e=="string"){let i=n.one.tokenize.fromString(e,r);return new t(i)}if(XN(e)&&e.isView)return new t(e.document,e.ptrs);if(qf(e)){if(qf(e[0])){let o=tA(e);return new t(o)}let i=eA(e);return new t(i)}return a};let Ml=Object.assign({},zf);const tt=function(e,t){t&&tt.addWords(t);let r=jb(e,ni,Ml);return e&&r.compute(Ml.hooks),r};Object.defineProperty(tt,"_world",{value:Ml,writable:!0});tt.tokenize=function(e,t){const{compute:r}=this._world;t&&tt.addWords(t);let n=jb(e,ni,Ml);return r.contractions&&n.compute(["alias","normal","machine","contractions"]),n};tt.plugin=function(e){return ZN(e,this._world,ni,this),this};tt.extend=tt.plugin;tt.world=function(){return this._world};tt.model=function(){return this._world.model};tt.methods=function(){return this._world.methods};tt.hooks=function(){return this._world.hooks};tt.verbose=QN;tt.version=JN;const rA=function(e){return e.map(r=>{let n=new Set;return r.forEach(a=>{a.normal!==""&&n.add(a.normal),a.switch&&n.add(`%${a.switch}%`),a.implicit&&n.add(a.implicit),a.machine&&n.add(a.machine),a.root&&n.add(a.root),a.alias&&a.alias.forEach(o=>n.add(o));let i=Array.from(a.tags);for(let o=0;o<i.length;o+=1)n.add("#"+i[o])}),n})},nA={one:{cacheDoc:rA}},aA={cache:function(){return this._cache=this.methods.one.cacheDoc(this.document),this},uncache:function(){return this._cache=null,this}},iA=function(e){Object.assign(e.prototype,aA)},oA={cache:function(e){e._cache=e.methods.one.cacheDoc(e.document)}},sA={api:iA,compute:oA,methods:nA},uA={toLowerCase:function(){return this.termList().forEach(e=>{e.text=e.text.toLowerCase()}),this},toUpperCase:function(){return this.termList().forEach(e=>{e.text=e.text.toUpperCase()}),this},toTitleCase:function(){return this.termList().forEach(e=>{e.text=e.text.replace(/^ *[a-z\u00C0-\u00FF]/,t=>t.toUpperCase())}),this},toCamelCase:function(){return this.docs.forEach(e=>{e.forEach((t,r)=>{r!==0&&(t.text=t.text.replace(/^ *[a-z\u00C0-\u00FF]/,n=>n.toUpperCase())),r!==e.length-1&&(t.post="")})}),this}},sh=e=>new RegExp("^\\p{Lu}[\\p{Ll}'’]","u").test(e)||new RegExp("^\\p{Lu}$","u").test(e),lA=e=>e.replace(new RegExp("^\\p{Ll}","u"),t=>t.toUpperCase()),cA=e=>e.replace(new RegExp("^\\p{Lu}","u"),t=>t.toLowerCase()),qb=(e,t,r)=>{if(r.forEach(n=>n.dirty=!0),e){let n=[t,0].concat(r);Array.prototype.splice.apply(e,n)}return e},Mo=function(e){const t=/ $/,r=/[-–—]/;let n=e[e.length-1];n&&!t.test(n.post)&&!r.test(n.post)&&(n.post+=" ")},uh=(e,t,r)=>{const n=/[-.?!,;:)–—'"]/g;let a=e[t-1];if(!a)return;let i=a.post;if(n.test(i)){let o=i.match(n).join(""),s=r[r.length-1];s.post=o+s.post,a.post=a.post.replace(n,"")}},fA=function(e,t,r){let n=e[t];if(t!==0||!sh(n.text))return;r[0].text=lA(r[0].text);let a=e[t];a.tags.has("ProperNoun")||a.tags.has("Acronym")||sh(a.text)&&a.text.length>1&&(a.text=cA(a.text))},mA=function(e,t,r,n){let[a,i,o]=t;i===0||o===n[a].length?Mo(r):(Mo(r),Mo([e[t[1]]])),fA(e,i,r),qb(e,i,r)},dA=function(e,t,r,n){let[a,,i]=t,o=(n[a]||[]).length;i<o?(uh(e,i,r),Mo(r)):o===i&&(Mo(e),uh(e,i,r),n[a+1]&&(r[r.length-1].post+=" ")),qb(e,t[2],r),t[4]=r[r.length-1].id};let fs=0;const lh=e=>(e=e.length<3?"0"+e:e,e.length<3?"0"+e:e),Rb=function(e){let[t,r]=e.index||[0,0];fs+=1,fs=fs>46655?0:fs,t=t>46655?0:t,r=r>1294?0:r;let n=lh(fs.toString(36));n+=lh(t.toString(36));let a=r.toString(36);a=a.length<2?"0"+a:a,n+=a;let i=parseInt(Math.random()*36,10);return n+=i.toString(36),e.normal+"|"+n.toUpperCase()},ch=function(e){e.has("@hasContraction")&&typeof e.contractions=="function"&&e.grow("@hasContraction").contractions().expand()},fh=e=>Object.prototype.toString.call(e)==="[object Array]",hA=function(e){return e=e.map(t=>(t.id=Rb(t),t)),e},pA=function(e,t){const{methods:r}=t;return typeof e=="string"?r.one.tokenize.fromString(e,t)[0]:typeof e=="object"&&e.isView?e.clone().docs[0]||[]:fh(e)?fh(e[0])?e[0]:e:[]},mh=function(e,t,r){const{document:n,world:a}=t;t.uncache();let i=t.fullPointer,o=t.fullPointer;t.forEach((u,l)=>{let c=u.fullPointer[0],[f]=c,m=n[f],d=pA(e,a);d.length!==0&&(d=hA(d),r?(ch(t.update([c]).firstTerm()),mA(m,c,d,n)):(ch(t.update([c]).lastTerm()),dA(m,c,d,n)),n[f]&&n[f][c[1]]&&(c[3]=n[f][c[1]].id),o[l]=c,c[2]+=d.length,i[l]=c)});let s=t.toView(i);return t.ptrs=o,s.compute(["id","index","freeze","lexicon"]),s.world.compute.preTagger&&s.compute("preTagger"),s.compute("unfreeze"),s},Gi={insertAfter:function(e){return mh(e,this,!1)},insertBefore:function(e){return mh(e,this,!0)}};Gi.append=Gi.insertAfter;Gi.prepend=Gi.insertBefore;Gi.insert=Gi.insertAfter;const gA=/\$[0-9a-z]+/g,Km={},vA=e=>new RegExp("^\\p{Lu}[\\p{Ll}'’]","u").test(e)||new RegExp("^\\p{Lu}$","u").test(e),yA=e=>e.replace(new RegExp("^\\p{Ll}","u"),t=>t.toUpperCase()),bA=e=>e.replace(new RegExp("^\\p{Lu}","u"),t=>t.toLowerCase()),wA=function(e,t,r){return e.forEach(n=>{let a=t(n);n.replaceWith(a,r)}),e},xA=function(e,t){if(typeof e!="string")return e;let r=t.groups();return e=e.replace(gA,n=>{let a=n.replace(/\$/,"");return r.hasOwnProperty(a)?r[a].text():n}),e};Km.replaceWith=function(e,t={}){let r=this.fullPointer,n=this;if(this.uncache(),typeof e=="function")return wA(n,e,t);let a=n.docs[0];if(!a)return n;let i=t.possessives&&a[a.length-1].tags.has("Possessive"),o=t.case&&vA(a[0].text);e=xA(e,n);let s=this.update(r);r=r.map(m=>m.slice(0,3));let u=(s.docs[0]||[]).map(m=>Array.from(m.tags)),l=s.docs[0][0].pre,c=s.docs[0][s.docs[0].length-1].post;if(typeof e=="string"&&(e=this.fromText(e).compute("id")),n.insertAfter(e),s.has("@hasContraction")&&n.contractions&&n.grow("@hasContraction+").contractions().expand(),n.delete(s),i){let m=n.docs[0],d=m[m.length-1];d.tags.has("Possessive")||(d.text+="'s",d.normal+="'s",d.tags.add("Possessive"))}if(l&&n.docs[0]&&(n.docs[0][0].pre=l),c&&n.docs[0]){let m=n.docs[0][n.docs[0].length-1];m.post.trim()||(m.post=c)}let f=n.toView(r).compute(["index","freeze","lexicon"]);if(f.world.compute.preTagger&&f.compute("preTagger"),f.compute("unfreeze"),t.tags&&f.terms().forEach((m,d)=>{m.tagSafe(u[d])}),!f.docs[0]||!f.docs[0][0])return f;if(t.case){let m=o?yA:bA;f.docs[0][0].text=m(f.docs[0][0].text)}return f};Km.replace=function(e,t,r){if(e&&!t)return this.replaceWith(e,r);let n=this.match(e);return n.found?(this.soften(),n.replaceWith(t,r)):this};const DA=function(e,t){let r=e.length-1,n=e[r],a=e[r-t];a&&n&&(a.post+=n.post,a.post=a.post.replace(/ +([.?!,;:])/,"$1"),a.post=a.post.replace(/[,;:]+([.?!])/,"$1"))},NA=function(e,t){t.forEach(r=>{let[n,a,i]=r,o=i-a;e[n]&&(i===e[n].length&&i>1&&DA(e[n],o),e[n].splice(a,o))});for(let r=e.length-1;r>=0;r-=1)if(e[r].length===0&&(e.splice(r,1),r===e.length&&e[r-1])){let n=e[r-1],a=n[n.length-1];a&&(a.post=a.post.trimEnd())}return e},AA=function(e,t){return e=e.map(r=>{let[n]=r;return t[n]&&t[n].forEach(a=>{let i=a[2]-a[1];r[1]<=a[1]&&r[2]>=a[2]&&(r[2]-=i)}),r}),e.forEach((r,n)=>{if(r[1]===0&&r[2]==0)for(let a=n+1;a<e.length;a+=1)e[a][0]-=1,e[a][0]<0&&(e[a][0]=0)}),e=e.filter(r=>r[2]-r[1]>0),e=e.map(r=>(r[3]=null,r[4]=null,r)),e},Rf={remove:function(e){const{indexN:t}=this.methods.one.pointer;this.uncache();let r=this.all(),n=this;e&&(r=this,n=this.match(e));let a=!r.ptrs;n.has("@hasContraction")&&n.contractions&&n.grow("@hasContraction").contractions().expand();let i=r.fullPointer,o=n.fullPointer.reverse(),s=NA(this.document,o),u=t(o);return i=AA(i,u),r.ptrs=i,r.document=s,r.compute("index"),a&&(r.ptrs=void 0),e?r.toView(i):(this.ptrs=[],r.none())}};Rf.delete=Rf.remove;const Ps={pre:function(e,t){return e===void 0&&this.found?this.docs[0][0].pre:(this.docs.forEach(r=>{let n=r[0];t===!0?n.pre+=e:n.pre=e}),this)},post:function(e,t){if(e===void 0){let r=this.docs[this.docs.length-1];return r[r.length-1].post}return this.docs.forEach(r=>{let n=r[r.length-1];t===!0?n.post+=e:n.post=e}),this},trim:function(){if(!this.found)return this;let e=this.docs,t=e[0][0];t.pre=t.pre.trimStart();let r=e[e.length-1],n=r[r.length-1];return n.post=n.post.trimEnd(),this},hyphenate:function(){return this.docs.forEach(e=>{e.forEach((t,r)=>{r!==0&&(t.pre=""),e[r+1]&&(t.post="-")})}),this},dehyphenate:function(){const e=/[-–—]/;return this.docs.forEach(t=>{t.forEach(r=>{e.test(r.post)&&(r.post=" ")})}),this},toQuotations:function(e,t){return e=e||'"',t=t||'"',this.docs.forEach(r=>{r[0].pre=e+r[0].pre;let n=r[r.length-1];n.post=t+n.post}),this},toParentheses:function(e,t){return e=e||"(",t=t||")",this.docs.forEach(r=>{r[0].pre=e+r[0].pre;let n=r[r.length-1];n.post=t+n.post}),this}};Ps.deHyphenate=Ps.dehyphenate;Ps.toQuotation=Ps.toQuotations;const CA=(e,t)=>e.normal<t.normal?-1:e.normal>t.normal?1:0,EA=(e,t)=>{let r=e.normal.trim().length,n=t.normal.trim().length;return r<n?1:r>n?-1:0},SA=(e,t)=>e.words<t.words?1:e.words>t.words?-1:0,TA=(e,t)=>e[0]<t[0]?1:e[0]>t[0]?-1:e[1]>t[1]?1:-1,MA=function(e){let t={};return e.forEach(r=>{t[r.normal]=t[r.normal]||0,t[r.normal]+=1}),e.sort((r,n)=>{let a=t[r.normal],i=t[n.normal];return a<i?1:a>i?-1:0}),e},_c={alpha:CA,length:EA,wordCount:SA,sequential:TA,byFreq:MA},FA=new Set(["index","sequence","seq","sequential","chron","chronological"]),PA=new Set(["freq","frequency","topk","repeats"]),kA=new Set(["alpha","alphabetical"]),OA=function(e,t){let r=e.fullPointer;return r=r.sort((n,a)=>(n=e.update([n]),a=e.update([a]),t(n,a))),e.ptrs=r,e},$A=function(e){let{docs:t,pointer:r}=this;if(this.uncache(),typeof e=="function")return OA(this,e);e=e||"alpha";let n=r||t.map((i,o)=>[o]),a=t.map((i,o)=>({index:o,words:i.length,normal:i.map(s=>s.machine||s.normal||"").join(" "),pointer:n[o]}));return FA.has(e)&&(e="sequential"),kA.has(e)&&(e="alpha"),PA.has(e)?(a=_c.byFreq(a),this.update(a.map(i=>i.pointer))):typeof _c[e]=="function"?(a=a.sort(_c[e]),this.update(a.map(i=>i.pointer))):this},BA=function(){let e=this.pointer||this.docs.map((t,r)=>[r]);return e=[].concat(e),e=e.reverse(),this._cache&&(this._cache=this._cache.reverse()),this.update(e)},_A=function(){let e=new Set;return this.filter(r=>{let n=r.text("machine");return e.has(n)?!1:(e.add(n),!0)})},IA={unique:_A,reverse:BA,sort:$A},zA=e=>Object.prototype.toString.call(e)==="[object Array]",Lb=function(e,t){if(e.length>0){let r=e[e.length-1],n=r[r.length-1];/ /.test(n.post)===!1&&(n.post+=" ")}return e=e.concat(t),e},jA=function(e,t){if(e.document===t.document){let n=e.fullPointer.concat(t.fullPointer);return e.toView(n).compute("index")}return t.fullPointer.forEach(n=>{n[0]+=e.document.length}),e.document=Lb(e.document,t.docs),e.all()},qA={concat:function(e){if(typeof e=="string"){let t=this.fromText(e);if(!this.found||!this.ptrs)this.document=this.document.concat(t.document);else{let r=this.fullPointer,n=r[r.length-1][0];this.document.splice(n,0,...t.document)}return this.all().compute("index")}if(typeof e=="object"&&e.isView)return jA(this,e);if(zA(e)){let t=Lb(this.document,e);return this.document=t,this.all()}return this}},RA=function(){return this.ptrs=this.fullPointer,this},LA=function(){let e=this.ptrs;return!e||e.length<1?this:(e=e.map(t=>t.slice(0,3)),this.ptrs=e,this)},HA={harden:RA,soften:LA},GA=Object.assign({},uA,Gi,Km,Rf,Ps,IA,qA,HA),VA=function(e){Object.assign(e.prototype,GA)},UA={id:function(e){let t=e.docs;for(let r=0;r<t.length;r+=1)for(let n=0;n<t[r].length;n+=1){let a=t[r][n];a.id=a.id||Rb(a)}}},WA={api:VA,compute:UA},JA=[{word:"@",out:["at"]},{word:"arent",out:["are","not"]},{word:"alot",out:["a","lot"]},{word:"brb",out:["be","right","back"]},{word:"cannot",out:["can","not"]},{word:"dun",out:["do","not"]},{word:"can't",out:["can","not"]},{word:"shan't",out:["should","not"]},{word:"won't",out:["will","not"]},{word:"that's",out:["that","is"]},{word:"what's",out:["what","is"]},{word:"let's",out:["let","us"]},{word:"dunno",out:["do","not","know"]},{word:"gonna",out:["going","to"]},{word:"gotta",out:["have","got","to"]},{word:"gimme",out:["give","me"]},{word:"outta",out:["out","of"]},{word:"tryna",out:["trying","to"]},{word:"gtg",out:["got","to","go"]},{word:"im",out:["i","am"]},{word:"imma",out:["I","will"]},{word:"imo",out:["in","my","opinion"]},{word:"irl",out:["in","real","life"]},{word:"ive",out:["i","have"]},{word:"rn",out:["right","now"]},{word:"tbh",out:["to","be","honest"]},{word:"wanna",out:["want","to"]},{word:"c'mere",out:["come","here"]},{word:"c'mon",out:["come","on"]},{word:"shoulda",out:["should","have"]},{word:"coulda",out:["coulda","have"]},{word:"woulda",out:["woulda","have"]},{word:"musta",out:["must","have"]},{word:"tis",out:["it","is"]},{word:"twas",out:["it","was"]},{word:"y'know",out:["you","know"]},{word:"ne'er",out:["never"]},{word:"o'er",out:["over"]},{after:"ll",out:["will"]},{after:"ve",out:["have"]},{after:"re",out:["are"]},{after:"m",out:["am"]},{before:"c",out:["ce"]},{before:"m",out:["me"]},{before:"n",out:["ne"]},{before:"qu",out:["que"]},{before:"s",out:["se"]},{before:"t",out:["tu"]},{word:"shouldnt",out:["should","not"]},{word:"couldnt",out:["could","not"]},{word:"wouldnt",out:["would","not"]},{word:"hasnt",out:["has","not"]},{word:"wasnt",out:["was","not"]},{word:"isnt",out:["is","not"]},{word:"cant",out:["can","not"]},{word:"dont",out:["do","not"]},{word:"wont",out:["will","not"]},{word:"howd",out:["how","did"]},{word:"whatd",out:["what","did"]},{word:"whend",out:["when","did"]},{word:"whered",out:["where","did"]}],an=!0,KA={st:an,nd:an,rd:an,th:an,am:an,pm:an,max:an,"°":an,s:an,e:an,er:an,ère:an,ème:an},YA={one:{contractions:JA,numberSuffixes:KA}},Ic=function(e,t,r){let[n,a]=t;!r||r.length===0||(r=r.map((i,o)=>(i.implicit=i.text,i.machine=i.text,i.pre="",i.post="",i.text="",i.normal="",i.index=[n,a+o],i)),r[0]&&(r[0].pre=e[n][a].pre,r[r.length-1].post=e[n][a].post,r[0].text=e[n][a].text,r[0].normal=e[n][a].normal),e[n].splice(a,1,...r))},ZA=/'/,QA=new Set(["what","how","when","where","why"]),XA=new Set(["be","go","start","think","need"]),e3=new Set(["been","gone"]),t3=function(e,t){let r=e[t].normal.split(ZA)[0];if(QA.has(r))return[r,"did"];if(e[t+1]){if(e3.has(e[t+1].normal))return[r,"had"];if(XA.has(e[t+1].normal))return[r,"would"]}return null},r3=function(e,t){return e[t].normal==="ain't"||e[t].normal==="aint"?null:[e[t].normal.replace(/n't/,""),"not"]},Ym=/'/,n3=/(e|é|aison|sion|tion)$/,a3=/(age|isme|acle|ege|oire)$/,i3=(e,t)=>{let r=e[t].normal.split(Ym)[1];return r&&r.endsWith("e")?["la",r]:["le",r]},o3=(e,t)=>{let r=e[t].normal.split(Ym)[1];return r&&n3.test(r)&&!a3.test(r)?["du",r]:r&&r.endsWith("s")?["des",r]:["de",r]},s3=(e,t)=>["je",e[t].normal.split(Ym)[1]],zc={preJ:s3,preL:i3,preD:o3},u3=/^([0-9.]{1,4}[a-z]{0,2}) ?[-–—] ?([0-9]{1,4}[a-z]{0,2})$/i,l3=/^([0-9]{1,2}(:[0-9][0-9])?(am|pm)?) ?[-–—] ?([0-9]{1,2}(:[0-9][0-9])?(am|pm)?)$/i,c3=/^[0-9]{3}-[0-9]{4}$/,f3=function(e,t){let r=e[t],n=r.text.match(u3);return n!==null?r.tags.has("PhoneNumber")===!0||c3.test(r.text)?null:[n[1],"to",n[2]]:(n=r.text.match(l3),n!==null?[n[1],"to",n[4]]:null)},m3=/^([+-]?[0-9][.,0-9]*)([a-z°²³µ/]+)$/,d3=function(e,t,r){const n=r.model.one.numberSuffixes||{};let i=e[t].text.match(m3);if(i!==null){let o=i[2].toLowerCase().trim();return n.hasOwnProperty(o)?null:[i[1],o]}return null},dh=/'/,h3=/^[0-9][^-–—]*[-–—].*?[0-9]/,hh=function(e,t,r,n){let a=t.update();a.document=[e];let i=r+n;r>0&&(r-=1),e[i]&&(i+=1),a.ptrs=[[0,r,i]]},ph={t:(e,t)=>r3(e,t),d:(e,t)=>t3(e,t)},gh={j:(e,t)=>zc.preJ(e,t),l:(e,t)=>zc.preL(e,t),d:(e,t)=>zc.preD(e,t)},p3=function(e,t,r,n){for(let a=0;a<e.length;a+=1){let i=e[a];if(i.word===t.normal)return i.out;if(n!==null&&n===i.after)return[r].concat(i.out);if(r!==null&&r===i.before&&n&&n.length>2)return i.out.concat(n)}return null},jc=function(e,t){let r=t.fromText(e.join(" "));return r.compute(["id","alias"]),r.docs[0]},g3=function(e,t){for(let r=t+1;r<5&&e[r];r+=1)if(e[r].normal==="been")return["there","has"];return["there","is"]},v3=e=>{let{world:t,document:r}=e;const{model:n,methods:a}=t;let i=n.one.contractions||[];r.forEach((o,s)=>{for(let u=o.length-1;u>=0;u-=1){let l=null,c=null;if(dh.test(o[u].normal)===!0){let m=o[u].normal.split(dh);l=m[0],c=m[1]}let f=p3(i,o[u],l,c);if(!f&&ph.hasOwnProperty(c)&&(f=ph[c](o,u,t)),!f&&gh.hasOwnProperty(l)&&(f=gh[l](o,u)),l==="there"&&c==="s"&&(f=g3(o,u)),f){f=jc(f,e),Ic(r,[s,u],f),hh(r[s],e,u,f.length);continue}if(h3.test(o[u].normal)){f=f3(o,u),f&&(f=jc(f,e),Ic(r,[s,u],f),a.one.setTag(f,"NumberRange",t),f[2]&&f[2].tags.has("Time")&&a.one.setTag([f[0]],"Time",t,null,"time-range"),hh(r[s],e,u,f.length));continue}f=d3(o,u,t),f&&(f=jc(f,e),Ic(r,[s,u],f),a.one.setTag([f[1]],"Unit",t,null,"contraction-unit"))}})},y3={contractions:v3},b3={model:YA,compute:y3,hooks:["contractions"]},vh=function(e){const t=e.world,{model:r,methods:n}=e.world,a=n.one.setTag,{frozenLex:i}=r.one,o=r.one._multiCache||{};e.docs.forEach(s=>{for(let u=0;u<s.length;u+=1){let l=s[u],c=l.machine||l.normal;if(o[c]!==void 0&&s[u+1]){let f=u+o[c]-1;for(let m=f;m>u;m-=1){let d=s.slice(u,m+1),p=d.map(h=>h.machine||h.normal).join(" ");if(i.hasOwnProperty(p)===!0){a(d,i[p],t,!1,"1-frozen-multi-lexicon"),d.forEach(h=>h.frozen=!0);continue}}}if(i[c]!==void 0&&i.hasOwnProperty(c)){a([l],i[c],t,!1,"1-freeze-lexicon"),l.frozen=!0;continue}}})},w3=function(e){return e.docs.forEach(t=>{t.forEach(r=>{delete r.frozen})}),e},x3={frozen:vh,freeze:vh,unfreeze:w3},yh=e=>"\x1B[34m"+e+"\x1B[0m",bh=e=>"\x1B[3m\x1B[2m"+e+"\x1B[0m",wh=function(e){e.docs.forEach(t=>{console.log(yh(`
|
|
2
|
-
┌─────────`)),t.forEach(r=>{let n=` ${bh("│")} `,a=r.implicit||r.text||"-";r.frozen===!0?n+=`${yh(a)} ❄️`:n+=bh(a),console.log(n)})})},D3={compute:x3,mutate:e=>{const t=e.methods.one;t.termMethods.isFrozen=r=>r.frozen===!0,t.debug.freeze=wh,t.debug.frozen=wh},api:function(e){e.prototype.freeze=function(){return this.docs.forEach(t=>{t.forEach(r=>{r.frozen=!0})}),this},e.prototype.unfreeze=function(){this.compute("unfreeze")},e.prototype.isFrozen=function(){return this.match("@isFrozen+")}},hooks:["freeze"]},N3=function(e,t,r){const{model:n,methods:a}=r,i=a.one.setTag,o=n.one._multiCache||{},{lexicon:s}=n.one||{};let u=e[t],l=u.machine||u.normal;if(o[l]!==void 0&&e[t+1]){let c=t+o[l]-1;for(let f=c;f>t;f-=1){let m=e.slice(t,f+1);if(m.length<=1)return!1;let d=m.map(p=>p.machine||p.normal).join(" ");if(s.hasOwnProperty(d)===!0){let p=s[d];return i(m,p,r,!1,"1-multi-lexicon"),p&&p.length===2&&(p[0]==="PhrasalVerb"||p[1]==="PhrasalVerb")&&i([m[1]],"Particle",r,!1,"1-phrasal-particle"),!0}}return!1}return null},xh=/^(under|over|mis|re|un|dis|semi|pre|post)-?/,A3=new Set(["Verb","Infinitive","PastTense","Gerund","PresentTense","Adjective","Participle"]),C3=function(e,t,r){const{model:n,methods:a}=r,i=a.one.setTag,{lexicon:o}=n.one;let s=e[t],u=s.machine||s.normal;if(o[u]!==void 0&&o.hasOwnProperty(u))return i([s],o[u],r,!1,"1-lexicon"),!0;if(s.alias){let l=s.alias.find(c=>o.hasOwnProperty(c));if(l)return i([s],o[l],r,!1,"1-lexicon-alias"),!0}if(xh.test(u)===!0){let l=u.replace(xh,"");if(o.hasOwnProperty(l)&&l.length>3&&A3.has(o[l]))return i([s],o[l],r,!1,"1-lexicon-prefix"),!0}return null},E3=function(e){const t=e.world;e.docs.forEach(r=>{for(let n=0;n<r.length;n+=1)if(r[n].tags.size===0){let a=null;a=a||N3(r,n,t),a=a||C3(r,n,t)}})},S3={lexicon:E3},T3=function(e){let t={},r={};return Object.keys(e).forEach(n=>{let a=e[n];n=n.toLowerCase().trim(),n=n.replace(/'s\b/,"");let i=n.split(/ /);i.length>1&&(r[i[0]]===void 0||i.length>r[i[0]])&&(r[i[0]]=i.length),t[n]=t[n]||a}),delete t[""],delete t[null],delete t[" "],{lex:t,_multi:r}},M3={one:{expandLexicon:T3}},F3=function(e,t=!1){const r=this.world(),{methods:n,model:a}=r;if(!e)return;if(Object.keys(e).forEach(s=>{typeof e[s]=="string"&&e[s].startsWith("#")&&(e[s]=e[s].replace(/^#/,""))}),t===!0){let{lex:s,_multi:u}=n.one.expandLexicon(e,r);Object.assign(a.one._multiCache,u),Object.assign(a.one.frozenLex,s);return}if(n.two.expandLexicon){let{lex:s,_multi:u}=n.two.expandLexicon(e,r);Object.assign(a.one.lexicon,s),Object.assign(a.one._multiCache,u)}let{lex:i,_multi:o}=n.one.expandLexicon(e,r);Object.assign(a.one.lexicon,i),Object.assign(a.one._multiCache,o)},P3={addWords:F3},k3={one:{lexicon:{},_multiCache:{},frozenLex:{}}},O3={model:k3,methods:M3,compute:S3,lib:P3,hooks:["lexicon"]},$3=function(e,t){const{methods:r,model:n}=t;return r.one.tokenize.splitTerms(e,n).map(i=>r.one.tokenize.splitWhitespace(i,n)).map(i=>i.text.toLowerCase())},Hb=function(e,t){let r=[{}],n=[null],a=[0],i=[],o=0;e.forEach(function(s){let u=0,l=$3(s,t);for(let c=0;c<l.length;c++){let f=l[c];r[u]&&r[u].hasOwnProperty(f)?u=r[u][f]:(o++,r[u][f]=o,r[o]={},u=o,n[o]=null)}n[u]=[l.length]});for(let s in r[0])o=r[0][s],a[o]=0,i.push(o);for(;i.length;){let s=i.shift(),u=Object.keys(r[s]);for(let l=0;l<u.length;l+=1){let c=u[l],f=r[s][c];for(i.push(f),o=a[s];o>0&&!r[o].hasOwnProperty(c);)o=a[o];if(r.hasOwnProperty(o)){let m=r[o][c];a[f]=m,n[m]&&(n[f]=n[f]||[],n[f]=n[f].concat(n[m]))}else a[f]=0}}return{goNext:r,endAs:n,failTo:a}},B3=function(e,t,r){let n=0,a=[];for(let i=0;i<e.length;i++){let o=e[i][r.form]||e[i].normal;for(;n>0&&(t.goNext[n]===void 0||!t.goNext[n].hasOwnProperty(o));)n=t.failTo[n]||0;if(t.goNext[n].hasOwnProperty(o)&&(n=t.goNext[n][o],t.endAs[n])){let s=t.endAs[n];for(let u=0;u<s.length;u++){let l=s[u],c=e[i-l+1],[f,m]=c.index;a.push([f,m,m+l,c.id])}}}return a},_3=function(e,t){for(let r=0;r<e.length;r+=1)if(t.has(e[r])===!0)return!1;return!0},I3=function(e,t,r){let n=[];r.form=r.form||"normal";let a=e.docs;if(!t.goNext||!t.goNext[0])return console.error("Compromise invalid lookup trie"),e.none();let i=Object.keys(t.goNext[0]);for(let o=0;o<a.length;o++){if(e._cache&&e._cache[o]&&_3(i,e._cache[o])===!0)continue;let s=a[o],u=B3(s,t,r);u.length>0&&(n=n.concat(u))}return e.update(n)},z3=e=>Object.prototype.toString.call(e)==="[object Object]";function j3(e){e.prototype.lookup=function(t,r={}){if(!t)return this.none();typeof t=="string"&&(t=[t]);let n=z3(t)?t:Hb(t,this.world),a=I3(this,n,r);return a=a.settle(),a}}const qc=(e,t)=>{for(let r=e.length-1;r>=0;r-=1)if(e[r]!==t)return e=e.slice(0,r+1),e;return e},q3=function(e){return e.goNext=e.goNext.map(t=>{if(Object.keys(t).length!==0)return t}),e.goNext=qc(e.goNext,void 0),e.failTo=qc(e.failTo,0),e.endAs=qc(e.endAs,null),e},Lf={buildTrie:function(e){const t=Hb(e,this.world());return q3(t)}};Lf.compile=Lf.buildTrie;const R3={api:j3,lib:Lf},Dh=function(e,t){return t&&e.forEach(r=>{let n=r[0];t[n]&&(r[0]=t[n][0],r[1]+=t[n][1],r[2]+=t[n][1])}),e},Gb=function(e,t){let{ptrs:r,byGroup:n}=e;return r=Dh(r,t),Object.keys(n).forEach(a=>{n[a]=Dh(n[a],t)}),{ptrs:r,byGroup:n}},Gs=function(e,t,r){const n=r.methods.one;return typeof e=="number"&&(e=String(e)),typeof e=="string"&&(e=n.killUnicode(e,r),e=n.parseMatch(e,t,r)),e},Vb=e=>Object.prototype.toString.call(e)==="[object Object]",Vs=e=>e&&Vb(e)&&e.isView===!0,Us=e=>e&&Vb(e)&&e.isNet===!0,L3=function(e,t,r){const n=this.methods.one;if(Vs(e))return this.intersection(e);if(Us(e))return this.sweep(e,{tagger:!1}).view.settle();e=Gs(e,r,this.world);let a={regs:e,group:t},i=n.match(this.docs,a,this._cache),{ptrs:o,byGroup:s}=Gb(i,this.fullPointer),u=this.toView(o);return u._groups=s,u},H3=function(e,t,r){const n=this.methods.one;if(Vs(e))return this.intersection(e).eq(0);if(Us(e))return this.sweep(e,{tagger:!1,matchOne:!0}).view;e=Gs(e,r,this.world);let a={regs:e,group:t,justOne:!0},i=n.match(this.docs,a,this._cache),{ptrs:o,byGroup:s}=Gb(i,this.fullPointer),u=this.toView(o);return u._groups=s,u},G3=function(e,t,r){const n=this.methods.one;if(Vs(e))return this.intersection(e).fullPointer.length>0;if(Us(e))return this.sweep(e,{tagger:!1}).view.found;e=Gs(e,r,this.world);let a={regs:e,group:t,justOne:!0};return n.match(this.docs,a,this._cache).ptrs.length>0},V3=function(e,t,r){const n=this.methods.one;if(Vs(e))return this.filter(u=>u.intersection(e).found);if(Us(e)){let u=this.sweep(e,{tagger:!1}).view.settle();return this.if(u)}e=Gs(e,r,this.world);let a={regs:e,group:t,justOne:!0},i=this.fullPointer,o=this._cache||[];i=i.filter((u,l)=>{let c=this.update([u]);return n.match(c.docs,a,o[l]).ptrs.length>0});let s=this.update(i);return this._cache&&(s._cache=i.map(u=>o[u[0]])),s},U3=function(e,t,r){const{methods:n}=this,a=n.one;if(Vs(e))return this.filter(s=>!s.intersection(e).found);if(Us(e)){let s=this.sweep(e,{tagger:!1}).view.settle();return this.ifNo(s)}e=Gs(e,r,this.world);let i=this._cache||[],o=this.filter((s,u)=>{let l={regs:e,group:t,justOne:!0};return a.match(s.docs,l,i[u]).ptrs.length===0});return this._cache&&(o._cache=o.ptrs.map(s=>i[s[0]])),o},W3={matchOne:H3,match:L3,has:G3,if:V3,ifNo:U3},J3=function(e,t,r){const{indexN:n}=this.methods.one.pointer;let a=[],i=n(this.fullPointer);Object.keys(i).forEach(s=>{let u=i[s].sort((l,c)=>l[1]>c[1]?1:-1)[0];u[1]>0&&a.push([u[0],0,u[1]])});let o=this.toView(a);return e?o.match(e,t,r):o},K3=function(e,t,r){const{indexN:n}=this.methods.one.pointer;let a=[],i=n(this.fullPointer),o=this.document;Object.keys(i).forEach(u=>{let l=i[u].sort((m,d)=>m[1]>d[1]?-1:1)[0],[c,,f]=l;f<o[c].length&&a.push([c,f,o[c].length])});let s=this.toView(a);return e?s.match(e,t,r):s},Y3=function(e,t,r){typeof e=="string"&&(e=this.world.methods.one.parseMatch(e,r,this.world)),e[e.length-1].end=!0;let n=this.fullPointer;return this.forEach((a,i)=>{let o=a.before(e,t);if(o.found){let s=o.terms();n[i][1]-=s.length,n[i][3]=s.docs[0][0].id}}),this.update(n)},Z3=function(e,t,r){typeof e=="string"&&(e=this.world.methods.one.parseMatch(e,r,this.world)),e[0].start=!0;let n=this.fullPointer;return this.forEach((a,i)=>{let o=a.after(e,t);if(o.found){let s=o.terms();n[i][2]+=s.length,n[i][4]=null}}),this.update(n)},Q3=function(e,t,r){return this.growRight(e,t,r).growLeft(e,t,r)},X3={before:J3,after:K3,growLeft:Y3,growRight:Z3,grow:Q3},Ub=function(e,t){return[e[0],e[1],t[2]]},eC=function(e){return Object.prototype.toString.call(e)==="[object Array]"},Zm=(e,t,r)=>typeof e=="string"||eC(e)?t.match(e,r):e||t.none(),Qm=function(e,t){let[r,n,a]=e;return t.document[r]&&t.document[r][n]&&(e[3]=e[3]||t.document[r][n].id,t.document[r][a-1]&&(e[4]=e[4]||t.document[r][a-1].id)),e},jo={};jo.splitOn=function(e,t){const{splitAll:r}=this.methods.one.pointer;let n=Zm(e,this,t).fullPointer,a=r(this.fullPointer,n),i=[];return a.forEach(o=>{i.push(o.passthrough),i.push(o.before),i.push(o.match),i.push(o.after)}),i=i.filter(o=>o),i=i.map(o=>Qm(o,this)),this.update(i)};jo.splitBefore=function(e,t){const{splitAll:r}=this.methods.one.pointer;let n=Zm(e,this,t).fullPointer,a=r(this.fullPointer,n);for(let o=0;o<a.length;o+=1)!a[o].after&&a[o+1]&&a[o+1].before&&a[o].match&&a[o].match[0]===a[o+1].before[0]&&(a[o].after=a[o+1].before,delete a[o+1].before);let i=[];return a.forEach(o=>{i.push(o.passthrough),i.push(o.before),o.match&&o.after?i.push(Ub(o.match,o.after)):i.push(o.match)}),i=i.filter(o=>o),i=i.map(o=>Qm(o,this)),this.update(i)};jo.splitAfter=function(e,t){const{splitAll:r}=this.methods.one.pointer;let n=Zm(e,this,t).fullPointer,a=r(this.fullPointer,n),i=[];return a.forEach(o=>{i.push(o.passthrough),o.before&&o.match?i.push(Ub(o.before,o.match)):(i.push(o.before),i.push(o.match)),i.push(o.after)}),i=i.filter(o=>o),i=i.map(o=>Qm(o,this)),this.update(i)};jo.split=jo.splitAfter;const tC=function(e,t){return!e||!t||e[0]!==t[0]?!1:e[2]===t[1]},Nh=function(e,t,r){const n=e.world,a=n.methods.one.parseMatch;t=t||".$",r=r||"^.";let i=a(t,{},n),o=a(r,{},n);i[i.length-1].end=!0,o[0].start=!0;let s=e.fullPointer,u=[s[0]];for(let l=1;l<s.length;l+=1){let c=u[u.length-1],f=s[l],m=e.update([c]),d=e.update([f]);tC(c,f)&&m.has(i)&&d.has(o)?u[u.length-1]=[c[0],c[1],f[2],c[3],f[4]]:u.push(f)}return e.update(u)},rC={joinIf:function(e,t){return Nh(this,e,t)},join:function(){return Nh(this)}},Wn=Object.assign({},W3,X3,jo,rC);Wn.lookBehind=Wn.before;Wn.lookBefore=Wn.before;Wn.lookAhead=Wn.after;Wn.lookAfter=Wn.after;Wn.notIf=Wn.ifNo;const nC=function(e){Object.assign(e.prototype,Wn)},aC=/(?:^|\s)([![^]*(?:<[^<]*>)?\/.*?[^\\/]\/[?\]+*$~]*)(?:\s|$)/,iC=/([!~[^]*(?:<[^<]*>)?\([^)]+[^\\)]\)[?\]+*$~]*)(?:\s|$)/,oC=/ /g,sC=e=>/^[![^]*(<[^<]*>)?\(/.test(e)&&/\)[?\]+*$~]*$/.test(e),Ah=e=>/^[![^]*(<[^<]*>)?\//.test(e)&&/\/[?\]+*$~]*$/.test(e),Ch=function(e){return e=e.map(t=>t.trim()),e=e.filter(t=>t),e},uC=function(e){let t=e.split(aC),r=[];t.forEach(a=>{if(Ah(a)){r.push(a);return}r=r.concat(a.split(iC))}),r=Ch(r);let n=[];return r.forEach(a=>{sC(a)||Ah(a)?n.push(a):n=n.concat(a.split(oC))}),n=Ch(n),n},Eh=/\{([0-9]+)?(, *[0-9]*)?\}/,Sh=/&&/,lC=new RegExp(/^<\s*(\S+)\s*>/),Th=e=>e.charAt(0).toUpperCase()+e.substring(1),gn=e=>e.charAt(e.length-1),on=e=>e.charAt(0),Eo=e=>e.substring(1),So=e=>e.substring(0,e.length-1),ms=function(e){return e=Eo(e),e=So(e),e},Wb=function(e,t){let r={};for(let n=0;n<2;n+=1){if(gn(e)==="$"&&(r.end=!0,e=So(e)),on(e)==="^"&&(r.start=!0,e=Eo(e)),gn(e)==="?"&&(r.optional=!0,e=So(e)),(on(e)==="["||gn(e)==="]")&&(r.group=null,on(e)==="["&&(r.groupStart=!0),gn(e)==="]"&&(r.groupEnd=!0),e=e.replace(/^\[/,""),e=e.replace(/\]$/,""),on(e)==="<")){const a=lC.exec(e);a.length>=2&&(r.group=a[1],e=e.replace(a[0],""))}if(gn(e)==="+"&&(r.greedy=!0,e=So(e)),e!=="*"&&gn(e)==="*"&&e!=="\\*"&&(r.greedy=!0,e=So(e)),on(e)==="!"&&(r.negative=!0,e=Eo(e)),on(e)==="~"&&gn(e)==="~"&&e.length>2&&(e=ms(e),r.fuzzy=!0,r.min=t.fuzzy||.85,/\(/.test(e)===!1))return r.word=e,r;if(on(e)==="/"&&gn(e)==="/")return e=ms(e),t.caseSensitive&&(r.use="text"),r.regex=new RegExp(e),r;if(Eh.test(e)===!0&&(e=e.replace(Eh,(a,i,o)=>(o===void 0?(r.min=Number(i),r.max=Number(i)):(o=o.replace(/, */,""),i===void 0?(r.min=0,r.max=Number(o)):(r.min=Number(i),r.max=Number(o||999))),r.greedy=!0,r.min||(r.optional=!0),""))),on(e)==="("&&gn(e)===")"){Sh.test(e)?(r.choices=e.split(Sh),r.operator="and"):(r.choices=e.split("|"),r.operator="or"),r.choices[0]=Eo(r.choices[0]);let a=r.choices.length-1;r.choices[a]=So(r.choices[a]),r.choices=r.choices.map(i=>i.trim()),r.choices=r.choices.filter(i=>i),r.choices=r.choices.map(i=>i.split(/ /g).map(o=>Wb(o,t))),e=""}if(on(e)==="{"&&gn(e)==="}"){if(e=ms(e),r.root=e,/\//.test(e)){let a=r.root.split(/\//);r.root=a[0],r.pos=a[1],r.pos==="adj"&&(r.pos="Adjective"),r.pos=r.pos.charAt(0).toUpperCase()+r.pos.substr(1).toLowerCase(),a[2]!==void 0&&(r.sense=a[2])}return r}if(on(e)==="<"&&gn(e)===">")return e=ms(e),r.chunk=Th(e),r.greedy=!0,r;if(on(e)==="%"&&gn(e)==="%")return e=ms(e),r.switch=e,r}return on(e)==="#"?(r.tag=Eo(e),r.tag=Th(r.tag),r):on(e)==="@"?(r.method=Eo(e),r):e==="."?(r.anything=!0,r):e==="*"?(r.anything=!0,r.greedy=!0,r.optional=!0,r):(e&&(e=e.replace("\\*","*"),e=e.replace("\\.","."),t.caseSensitive?r.use="text":e=e.toLowerCase(),r.word=e),r)},cC=/[a-z0-9][-–—][a-z]/i,fC=function(e,t){let r=t.model.one.prefixes;for(let n=e.length-1;n>=0;n-=1){let a=e[n];if(a.word&&cC.test(a.word)){let i=a.word.split(/[-–—]/g);if(r.hasOwnProperty(i[0]))continue;i=i.filter(o=>o).reverse(),e.splice(n,1),i.forEach(o=>{let s=Object.assign({},a);s.word=o,e.splice(n,0,s)})}}return e},Mh=function(e,t){let{all:r}=t.methods.two.transform.verb||{},n=e.root;return r?r(n,t.model):[]},Fh=function(e,t){let{all:r}=t.methods.two.transform.noun||{};return r?r(e.root,t.model):[e.root]},Ph=function(e,t){let{all:r}=t.methods.two.transform.adjective||{};return r?r(e.root,t.model):[e.root]},mC=function(e,t){return e=e.map(r=>{if(r.root)if(t.methods.two&&t.methods.two.transform){let n=[];r.pos?r.pos==="Verb"?n=n.concat(Mh(r,t)):r.pos==="Noun"?n=n.concat(Fh(r,t)):r.pos==="Adjective"&&(n=n.concat(Ph(r,t))):(n=n.concat(Mh(r,t)),n=n.concat(Fh(r,t)),n=n.concat(Ph(r,t))),n=n.filter(a=>a),n.length>0&&(r.operator="or",r.fastOr=new Set(n))}else r.machine=r.root,delete r.id,delete r.root;return r}),e},dC=function(e){let t=0,r=null;for(let n=0;n<e.length;n++){const a=e[n];a.groupStart===!0&&(r=a.group,r===null&&(r=String(t),t+=1)),r!==null&&(a.group=r),a.groupEnd===!0&&(r=null)}return e},hC=function(e){return e.map(t=>{if(t.choices!==void 0){if(t.operator!=="or"||t.fuzzy===!0)return t;t.choices.every(n=>{if(n.length!==1)return!1;let a=n[0];return a.fuzzy===!0||a.start||a.end?!1:a.word!==void 0&&a.negative!==!0&&a.optional!==!0&&a.method!==!0})===!0&&(t.fastOr=new Set,t.choices.forEach(n=>{t.fastOr.add(n[0].word)}),delete t.choices)}return t})},pC=function(e){return e.map(t=>(t.fuzzy&&t.choices&&t.choices.forEach(r=>{r.length===1&&r[0].word&&(r[0].fuzzy=!0,r[0].min=t.min)}),t))},gC=function(e){return e=dC(e),e=hC(e),e=pC(e),e},vC=function(e,t,r){if(e==null||e==="")return[];t=t||{},typeof e=="number"&&(e=String(e));let n=uC(e);return n=n.map(a=>Wb(a,t)),n=fC(n,r),n=mC(n,r),n=gC(n),n},yC=function(e,t){for(let r of t)if(e.has(r))return!0;return!1},bC=function(e,t){for(let r=0;r<e.length;r+=1){let n=e[r];if(!(n.optional===!0||n.negative===!0||n.fuzzy===!0)){if(n.word!==void 0&&t.has(n.word)===!1||n.tag!==void 0&&t.has("#"+n.tag)===!1)return!0;if(n.fastOr&&yC(n.fastOr,t)===!1)return!1}}return!1},wC=function(e,t){let r=e.length,n=t.length;if(r===0)return n;if(n===0)return r;let a=(n>r?n:r)+1;if(Math.abs(r-n)>(a||100))return a||100;let i=[];for(let m=0;m<a;m++)i[m]=[m],i[m].length=a;for(let m=0;m<a;m++)i[0][m]=m;let o,s,u,l,c,f;for(let m=1;m<=r;++m)for(s=e[m-1],o=1;o<=n;++o){if(m===o&&i[m][o]>4)return r;u=t[o-1],l=s===u?0:1,c=i[m-1][o]+1,(f=i[m][o-1]+1)<c&&(c=f),(f=i[m-1][o-1]+l)<c&&(c=f),m>1&&o>1&&s===t[o-2]&&e[m-2]===u&&(f=i[m-2][o-2]+l)<c?i[m][o]=f:i[m][o]=c}return i[r][n]},xC=function(e,t,r=3){if(e===t)return 1;if(e.length<r||t.length<r)return 0;const n=wC(e,t);let a=Math.max(e.length,t.length);return 1-(a===0?0:n/a)},DC=/([\u0022\uFF02\u0027\u201C\u2018\u201F\u201B\u201E\u2E42\u201A\u00AB\u2039\u2035\u2036\u2037\u301D\u0060\u301F])/,NC=/([\u0022\uFF02\u0027\u201D\u2019\u00BB\u203A\u2032\u2033\u2034\u301E\u00B4])/,kh=/^[-–—]$/,Oh=/ [-–—]{1,3} /,ta=(e,t)=>e.post.indexOf(t)!==-1,ks={hasQuote:e=>DC.test(e.pre)||NC.test(e.post),hasComma:e=>ta(e,","),hasPeriod:e=>ta(e,".")===!0&&ta(e,"...")===!1,hasExclamation:e=>ta(e,"!"),hasQuestionMark:e=>ta(e,"?")||ta(e,"¿"),hasEllipses:e=>ta(e,"..")||ta(e,"…"),hasSemicolon:e=>ta(e,";"),hasColon:e=>ta(e,":"),hasSlash:e=>/\//.test(e.text),hasHyphen:e=>kh.test(e.post)||kh.test(e.pre),hasDash:e=>Oh.test(e.post)||Oh.test(e.pre),hasContraction:e=>!!e.implicit,isAcronym:e=>e.tags.has("Acronym"),isKnown:e=>e.tags.size>0,isTitleCase:e=>new RegExp("^\\p{Lu}[a-z'\\u00C0-\\u00FF]","u").test(e.text),isUpperCase:e=>new RegExp("^\\p{Lu}+$","u").test(e.text)};ks.hasQuotation=ks.hasQuote;let br=function(){};const AC=function(e,t,r,n){if(t.anything===!0)return!0;if(t.start===!0&&r!==0||t.end===!0&&r!==n-1)return!1;if(t.id!==void 0&&t.id===e.id)return!0;if(t.word!==void 0)return t.use?t.word===e[t.use]:e.machine!==null&&e.machine===t.word||e.alias!==void 0&&e.alias.hasOwnProperty(t.word)||t.fuzzy===!0&&(t.word===e.root||xC(t.word,e.normal)>=t.min)||e.alias&&e.alias.some(a=>a===t.word)?!0:t.word===e.text||t.word===e.normal;if(t.tag!==void 0)return e.tags.has(t.tag)===!0;if(t.method!==void 0)return typeof ks[t.method]=="function"&&ks[t.method](e)===!0;if(t.pre!==void 0)return e.pre&&e.pre.includes(t.pre);if(t.post!==void 0)return e.post&&e.post.includes(t.post);if(t.regex!==void 0){let a=e.normal;return t.use&&(a=e[t.use]),t.regex.test(a)}if(t.chunk!==void 0)return e.chunk===t.chunk;if(t.switch!==void 0)return e.switch===t.switch;if(t.machine!==void 0)return e.normal===t.machine||e.machine===t.machine||e.root===t.machine;if(t.sense!==void 0)return e.sense===t.sense;if(t.fastOr!==void 0){if(t.pos&&!e.tags.has(t.pos))return null;let a=e.root||e.implicit||e.machine||e.normal;return t.fastOr.has(a)||t.fastOr.has(e.text)}return t.choices!==void 0?t.operator==="and"?t.choices.every(a=>br(e,a,r,n)):t.choices.some(a=>br(e,a,r,n)):!1};br=function(e,t,r,n){let a=AC(e,t,r,n);return t.negative===!0?!a:a};const CC=function(e,t){let r=Object.assign({},e.regs[e.r],{start:!1,end:!1}),n=e.t;for(;e.t<e.terms.length;e.t+=1){if(t&&br(e.terms[e.t],t,e.start_i+e.t,e.phrase_length))return e.t;let a=e.t-n+1;if(r.max!==void 0&&a===r.max)return e.t;if(br(e.terms[e.t],r,e.start_i+e.t,e.phrase_length)===!1)return r.min!==void 0&&a<r.min?null:e.t}return e.t},EC=function(e,t){let r=e.t;if(!t)return e.terms.length;for(;r<e.terms.length;r+=1)if(br(e.terms[r],t,e.start_i+r,e.phrase_length)===!0)return r;return null},SC=function(e,t){if(e.end===!0&&e.greedy===!0&&t.start_i+t.t<t.phrase_length-1){let r=Object.assign({},e,{end:!1});if(br(t.terms[t.t],r,t.start_i+t.t,t.phrase_length)===!0)return!0}return!1},uc=function(e,t){return e.groups[e.inGroup]||(e.groups[e.inGroup]={start:t,length:0}),e.groups[e.inGroup]},TC=function(e){let{regs:t}=e,r=t[e.r],n=EC(e,t[e.r+1]);if(n===null||n===0||r.min!==void 0&&n-e.t<r.min)return null;if(r.max!==void 0&&n-e.t>r.max)return e.t=e.t+r.max,!0;if(e.hasGroup===!0){const a=uc(e,e.t);a.length=n-e.t}return e.t=n,!0},MC=function(e){return Object.prototype.toString.call(e)==="[object Array]"},Jb=function(e,t=0){let r=e.regs[e.r],n=!1;for(let a=0;a<r.choices.length;a+=1){let i=r.choices[a];if(!MC(i))return!1;if(n=i.every((o,s)=>{let u=0,l=e.t+s+t+u;if(e.terms[l]===void 0)return!1;let c=br(e.terms[l],o,l+e.start_i,e.phrase_length);if(c===!0&&o.greedy===!0)for(let f=1;f<e.terms.length;f+=1){let m=e.terms[l+f];if(m)if(br(m,o,e.start_i+f,e.phrase_length)===!0)u+=1;else break}return t+=u,c}),n){t+=i.length;break}}return n&&r.greedy===!0?Jb(e,t):t},FC=function(e){let t=0;return e.regs[e.r].choices.every(a=>{let i=a.every((o,s)=>{let u=e.t+s;return e.terms[u]===void 0?!1:br(e.terms[u],o,u,e.phrase_length)});return i===!0&&a.length>t&&(t=a.length),i})===!0?t:!1},PC=function(e){const{regs:t}=e;let r=t[e.r],n=Jb(e);if(n){if(r.negative===!0)return null;if(e.hasGroup===!0){const a=uc(e,e.t);a.length+=n}if(r.end===!0){let a=e.phrase_length;if(e.t+e.start_i+n!==a)return null}return e.t+=n,!0}else if(!r.optional)return null;return!0},kC=function(e){const{regs:t}=e;let r=t[e.r],n=FC(e);if(n){if(r.negative===!0)return null;if(e.hasGroup===!0){const a=uc(e,e.t);a.length+=n}if(r.end===!0){let a=e.phrase_length-1;if(e.t+e.start_i!==a)return null}return e.t+=n,!0}else if(!r.optional)return null;return!0},OC=function(e,t,r){let n=0;for(let a=e.t;a<e.terms.length;a+=1){let i=br(e.terms[a],t,e.start_i+e.t,e.phrase_length);if(i||r&&(i=br(e.terms[a],r,e.start_i+e.t,e.phrase_length),i)||(n+=1,t.max!==void 0&&n===t.max))break}return n===0||t.min&&t.min>n?!1:(e.t+=n,!0)},$C=function(e){const{regs:t}=e;let r=t[e.r],n=Object.assign({},r);if(n.negative=!1,br(e.terms[e.t],n,e.start_i+e.t,e.phrase_length))return!1;if(r.optional){let i=t[e.r+1];i&&(br(e.terms[e.t],i,e.start_i+e.t,e.phrase_length)?e.r+=1:i.optional&&t[e.r+2]&&br(e.terms[e.t],t[e.r+2],e.start_i+e.t,e.phrase_length)&&(e.r+=2))}return r.greedy?OC(e,n,t[e.r+1]):(e.t+=1,!0)},BC=function(e){const{regs:t}=e;let r=t[e.r],n=e.terms[e.t],a=br(n,t[e.r+1],e.start_i+e.t,e.phrase_length);if(r.negative||a){let i=e.terms[e.t+1];(!i||!br(i,t[e.r+1],e.start_i+e.t,e.phrase_length))&&(e.r+=1)}},_C=function(e){const{regs:t,phrase_length:r}=e;let n=t[e.r];return e.t=CC(e,t[e.r+1]),e.t===null||n.min&&n.min>e.t||n.end===!0&&e.start_i+e.t!==r?null:!0},IC=function(e){let t=e.terms[e.t],r=e.regs[e.r];if(t.implicit&&e.terms[e.t+1]){if(!e.terms[e.t+1].implicit)return;r.word===t.normal&&(e.t+=1),r.method==="hasContraction"&&(e.t+=1)}},zC=function(e,t){let r=e.regs[e.r];const n=uc(e,t);e.t>1&&r.greedy?n.length+=e.t-t:n.length++},Rc=function(e){const{regs:t}=e;let r=t[e.r],n=e.terms[e.t],a=e.t;return r.optional&&t[e.r+1]&&r.negative?!0:(r.optional&&t[e.r+1]&&BC(e),n.implicit&&e.terms[e.t+1]&&IC(e),e.t+=1,r.end===!0&&e.t!==e.terms.length&&r.greedy!==!0||r.greedy===!0&&!_C(e)?null:(e.hasGroup===!0&&zC(e,a),!0))},Xm=function(e,t,r,n){if(e.length===0||t.length===0)return null;let a={t:0,terms:e,r:0,regs:t,groups:{},start_i:r,phrase_length:n,inGroup:null};for(;a.r<t.length;a.r+=1){let s=t[a.r];if(a.hasGroup=!!s.group,a.hasGroup===!0?a.inGroup=s.group:a.inGroup=null,!a.terms[a.t]){if(t.slice(a.r).some(c=>!c.optional)===!1)break;return null}if(s.anything===!0&&s.greedy===!0){if(!TC(a))return null;continue}if(s.choices!==void 0&&s.operator==="or"){if(!PC(a))return null;continue}if(s.choices!==void 0&&s.operator==="and"){if(!kC(a))return null;continue}if(s.anything===!0){if(s.negative&&s.anything||!Rc(a))return null;continue}if(SC(s,a)===!0){if(!Rc(a))return null;continue}if(s.negative){if(!$C(a))return null;continue}if(br(a.terms[a.t],s,a.start_i+a.t,a.phrase_length)===!0){if(!Rc(a))return null;continue}if(s.optional!==!0)return null}let i=[null,r,a.t+r];if(i[1]===i[2])return null;let o={};return Object.keys(a.groups).forEach(s=>{let u=a.groups[s],l=r+u.start;o[s]=[null,l,l+u.length]}),{pointer:i,groups:o}},jC=function(e,t){let r=[],n={};return e.length===0?{ptrs:r,byGroup:n}:(typeof t=="number"&&(t=String(t)),t?e.forEach(a=>{a.groups[t]&&r.push(a.groups[t])}):e.forEach(a=>{r.push(a.pointer),Object.keys(a.groups).forEach(i=>{n[i]=n[i]||[],n[i].push(a.groups[i])})}),{ptrs:r,byGroup:n})},qC=function(e,t,r){return e=e.filter(n=>{let[a,i,o]=n.pointer,s=r[a].slice(i,o);for(let u=0;u<s.length;u+=1){let l=s.slice(u);if(Xm(l,t,u,s.length)!==null)return!1}return!0}),e},Kb=function(e,t){return e.pointer[0]=t,Object.keys(e.groups).forEach(r=>{e.groups[r][0]=t}),e},RC=function(e,t,r){let n=Xm(e,t,0,e.length);return n?(n=Kb(n,r),n):null},LC=function(e,t,r){r=r||[];let{regs:n,group:a,justOne:i}=t,o=[];if(!n||n.length===0)return{ptrs:[],byGroup:{}};const s=n.filter(u=>u.optional!==!0&&u.negative!==!0).length;e:for(let u=0;u<e.length;u+=1){let l=e[u];if(!(r[u]&&bC(n,r[u]))){if(n[0].start===!0){let c=RC(l,n,u);c&&o.push(c);continue}for(let c=0;c<l.length;c+=1){let f=l.slice(c);if(f.length<s)break;let m=Xm(f,n,c,l.length);if(m){if(m=Kb(m,u),o.push(m),i===!0)break e;let d=m.pointer[2];Math.abs(d-1)>c&&(c=Math.abs(d-1))}}}}return n[n.length-1].end===!0&&(o=o.filter(u=>{let l=u.pointer[0];return e[l].length===u.pointer[2]})),t.notIf&&(o=qC(o,t.notIf,e)),o=jC(o,a),o.ptrs.forEach(u=>{let[l,c,f]=u;u[3]=e[l][c].id,u[4]=e[l][f-1].id}),o},HC={one:{termMethods:ks,parseMatch:vC,match:LC}},GC={parseMatch:function(e,t){const r=this.world();let n=r.methods.one.killUnicode;return n&&(e=n(e,r)),r.methods.one.parseMatch(e,t,r)}},VC={api:nC,methods:HC,lib:GC},UC=/^\../,WC=/^#./,JC=e=>(e=e.replace(/&/g,"&"),e=e.replace(/</g,"<"),e=e.replace(/>/g,">"),e=e.replace(/"/g,"""),e=e.replace(/'/g,"'"),e),KC=function(e){let t="",r="</span>";return e=JC(e),UC.test(e)?t=`<span class="${e.replace(/^\./,"")}"`:WC.test(e)?t=`<span id="${e.replace(/^#/,"")}"`:(t=`<${e}`,r=`</${e}>`),t+=">",{start:t,end:r}},YC=function(e,t){let r={},n={};return Object.keys(t).forEach(a=>{let i=t[a],o=KC(a);typeof i=="string"&&(i=e.match(i)),i.docs.forEach(s=>{if(s.every(c=>c.implicit))return;let u=s[0].id;r[u]=r[u]||[],r[u].push(o.start);let l=s[s.length-1].id;n[l]=n[l]||[],n[l].push(o.end)})}),{starts:r,ends:n}},ZC=function(e){let{starts:t,ends:r}=YC(this,e),n="";return this.docs.forEach(a=>{for(let i=0;i<a.length;i+=1){let o=a[i];t.hasOwnProperty(o.id)&&(n+=t[o.id].join("")),n+=o.pre||"",n+=o.text||"",r.hasOwnProperty(o.id)&&(n+=r[o.id].join("")),n+=o.post||""}}),n},QC={html:ZC},Yb=/[,:;)\]*.?~!\u0022\uFF02\u201D\u2019\u00BB\u203A\u2032\u2033\u2034\u301E\u00B4—-]+$/,Hf=/^[(['"*~\uFF02\u201C\u2018\u201F\u201B\u201E\u2E42\u201A\u00AB\u2039\u2035\u2036\u2037\u301D\u0060\u301F]+/,XC=/[,:;)('"\u201D\]]/,eE=/^[-–—]$/,tE=/ /,Fi=function(e,t,r=!0){let n="";return e.forEach(a=>{let i=a.pre||"",o=a.post||"";t.punctuation==="some"&&(i=i.replace(Hf,""),eE.test(o)&&(o=" "),o=o.replace(XC,""),o=o.replace(/\?!+/,"?"),o=o.replace(/!+/,"!"),o=o.replace(/\?+/,"?"),o=o.replace(/\.{2,}/,""),a.tags.has("Abbreviation")&&(o=o.replace(/\./,""))),t.whitespace==="some"&&(i=i.replace(/\s/,""),o=o.replace(/\s+/," ")),t.keepPunct||(i=i.replace(Hf,""),o==="-"?o=" ":o=o.replace(Yb,""));let s=a[t.form||"text"]||a.normal||"";t.form==="implicit"&&(s=a.implicit||a.text),t.form==="root"&&a.implicit&&(s=a.root||a.implicit||a.normal),(t.form==="machine"||t.form==="implicit"||t.form==="root")&&a.implicit&&(!o||!tE.test(o))&&(o+=" "),n+=i+s+o}),r===!1&&(n=n.trim()),t.lowerCase===!0&&(n=n.toLowerCase()),n},rE=function(e,t){let r="";if(!e||!e[0]||!e[0][0])return r;for(let n=0;n<e.length;n+=1)r+=Fi(e[n],t,!0);if(t.keepSpace||(r=r.trim()),t.keepEndPunct===!1){e[0][0].tags.has("Emoticon")||(r=r.replace(Hf,""));let n=e[e.length-1];n[n.length-1].tags.has("Emoticon")||(r=r.replace(Yb,"")),r.endsWith("'")&&!r.endsWith("s'")&&(r=r.replace(/'/,""))}return t.cleanWhitespace===!0&&(r=r.trim()),r},oi={text:{form:"text"},normal:{whitespace:"some",punctuation:"some",case:"some",unicode:"some",form:"normal"},machine:{keepSpace:!1,whitespace:"some",punctuation:"some",case:"none",unicode:"some",form:"machine"},root:{keepSpace:!1,whitespace:"some",punctuation:"some",case:"some",unicode:"some",form:"root"},implicit:{form:"implicit"}};oi.clean=oi.normal;oi.reduced=oi.root;let Zb=[],Bi=0;for(;Bi<64;)Zb[Bi]=0|Math.sin(++Bi%Math.PI)*4294967296;const ed=function(e){let t,r,n,a=[t=1732584193,r=4023233417,~t,~r],i=[],o=decodeURI(encodeURI(e))+"",s=o.length;for(e=--s/4+2|15,i[--e]=s*8;~s;)i[s>>2]|=o.charCodeAt(s)<<8*s--;for(Bi=o=0;Bi<e;Bi+=16){for(s=a;o<64;s=[n=s[3],t+((n=s[0]+[t&r|~t&n,n&t|~n&r,t^r^n,r^(t|~n)][s=o>>4]+Zb[o]+~~i[Bi|[o,5*o+1,3*o+5,7*o][s]&15])<<(s=[7,12,17,22,5,9,14,20,4,11,16,23,6,10,15,21][4*s+o++%4])|n>>>-s),t,r])t=s[1]|0,r=s[2];for(o=4;o;)a[--o]+=s[o]}for(e="";o<32;)e+=(a[o>>3]>>(1^o++)*4&15).toString(16);return e},nE={text:!0,terms:!0};let $h={case:"none",unicode:"some",form:"machine",punctuation:"some"};const Lc=function(e,t){return Object.assign({},e,t)},_a={text:e=>Fi(e,{keepPunct:!0},!1),normal:e=>Fi(e,Lc(oi.normal,{keepPunct:!0}),!1),implicit:e=>Fi(e,Lc(oi.implicit,{keepPunct:!0}),!1),machine:e=>Fi(e,$h,!1),root:e=>Fi(e,Lc($h,{form:"root"}),!1),hash:e=>ed(Fi(e,{keepPunct:!0},!1)),offset:e=>{let t=_a.text(e).length;return{index:e[0].offset.index,start:e[0].offset.start,length:t}},terms:e=>e.map(t=>{let r=Object.assign({},t);return r.tags=Array.from(t.tags),r}),confidence:(e,t,r)=>t.eq(r).confidence(),syllables:(e,t,r)=>t.eq(r).syllables(),sentence:(e,t,r)=>t.eq(r).fullSentence().text(),dirty:e=>e.some(t=>t.dirty===!0)};_a.sentences=_a.sentence;_a.clean=_a.normal;_a.reduced=_a.root;const aE=function(e,t){return t=t||{},typeof t=="string"&&(t={}),t=Object.assign({},nE,t),t.offset&&e.compute("offset"),e.docs.map((r,n)=>{let a={};return Object.keys(t).forEach(i=>{t[i]&&_a[i]&&(a[i]=_a[i](r,e,n))}),a})},Gf={json:function(e){let t=aE(this,e);return typeof e=="number"?t[e]:t}};Gf.data=Gf.json;const iE=()=>typeof window<"u"&&window.document,oE=function(e){let t=this.methods.one.debug||{};return e&&t.hasOwnProperty(e)?(t[e](this),this):iE()?(t.clientSide(this),this):(t.tags(this),this)},sE=function(e){let t=e.pre||"",r=e.post||"";return t+e.text+r},uE=function(e,t){let r={};return Object.keys(t).forEach(n=>{e.match(n).fullPointer.forEach(i=>{r[i[3]]={fn:t[n],end:i[2]}})}),r},Qb=function(e,t){let r=uE(e,t),n="";return e.docs.forEach((a,i)=>{for(let o=0;o<a.length;o+=1){let s=a[o];if(r.hasOwnProperty(s.id)){let{fn:u,end:l}=r[s.id],c=e.update([[i,o,l]]);n+=a[o].pre||"",n+=u(c),o=l-1,n+=a[o].post||""}else n+=sE(s)}}),n},lE=e=>Object.prototype.toString.call(e)==="[object Object]",cE=function(e){let t={};return e.forEach(n=>{t[n]=t[n]||0,t[n]+=1}),Object.keys(t).map(n=>({normal:n,count:t[n]})).sort((n,a)=>n.count>a.count?-1:0)},fE=function(e){if(lE(e))return Qb(this,e);if(e==="text")return this.text();if(e==="normal")return this.text("normal");if(e==="root")return this.text("root");if(e==="machine"||e==="reduced")return this.text("machine");if(e==="hash"||e==="md5")return ed(this.text());if(e==="json")return this.json();if(e==="offset"||e==="offsets")return this.compute("offset"),this.json({offset:!0});if(e==="array")return this.docs.map(r=>r.reduce((n,a)=>n+a.pre+a.text+a.post,"").trim()).filter(r=>r);if(e==="freq"||e==="frequency"||e==="topk")return cE(this.json({normal:!0}).map(t=>t.normal));if(e==="terms"){let t=[];return this.docs.forEach(r=>{let n=r.map(a=>a.text);n=n.filter(a=>a),t=t.concat(n)}),t}return e==="tags"?this.docs.map(t=>t.reduce((r,n)=>(r[n.implicit||n.normal]=Array.from(n.tags),r),{})):e==="debug"?this.debug():this.text()},mE={debug:oE,out:fE,wrap:function(e){return Qb(this,e)}},dE=e=>Object.prototype.toString.call(e)==="[object Object]",hE={text:function(e){let t={};if(e&&typeof e=="string"&&oi.hasOwnProperty(e)?t=Object.assign({},oi[e]):e&&dE(e)&&(t=Object.assign({},e)),t.keepSpace===void 0&&!this.isFull()&&(t.keepSpace=!1),t.keepEndPunct===void 0&&this.pointer){let r=this.pointer[0];r&&r[1]?t.keepEndPunct=!1:t.keepEndPunct=!0}return t.keepPunct===void 0&&(t.keepPunct=!0),t.keepSpace===void 0&&(t.keepSpace=!0),rE(this.docs,t)}},pE=Object.assign({},mE,hE,Gf,QC),gE=function(e){Object.assign(e.prototype,pE)},vE=function(e){console.log("%c -=-=- ","background-color:#6699cc;"),e.forEach(t=>{console.groupCollapsed(t.text());let n=t.docs[0].map(a=>{let i=a.text||"-";a.implicit&&(i="["+a.implicit+"]");let o="["+Array.from(a.tags).join(", ")+"]";return{text:i,tags:o}});console.table(n,["text","tags"]),console.groupEnd()})},da="\x1B[0m",ln={green:e=>"\x1B[32m"+e+da,red:e=>"\x1B[31m"+e+da,blue:e=>"\x1B[34m"+e+da,magenta:e=>"\x1B[35m"+e+da,cyan:e=>"\x1B[36m"+e+da,yellow:e=>"\x1B[33m"+e+da,black:e=>"\x1B[30m"+e+da,dim:e=>"\x1B[2m"+e+da,i:e=>"\x1B[3m"+e+da},yE=function(e,t){return t.one.tagSet&&(e=e.map(r=>{if(!t.one.tagSet.hasOwnProperty(r))return r;const n=t.one.tagSet[r].color||"blue";return ln[n](r)})),e.join(", ")},bE=function(e){let{docs:t,model:r}=e;t.length===0&&console.log(ln.blue(`
|
|
3
|
-
──────`)),t.forEach(n=>{console.log(ln.blue(`
|
|
4
|
-
┌─────────`)),n.forEach(a=>{let i=[...a.tags||[]],o=a.text||"-";a.sense&&(o=`{${a.normal}/${a.sense}}`),a.implicit&&(o="["+a.implicit+"]"),o=ln.yellow(o);let s="'"+o+"'";if(a.reference){let l=e.update([a.reference]).text("normal");s+=` - ${ln.dim(ln.i("["+l+"]"))}`}s=s.padEnd(18);let u=ln.blue(" │ ")+ln.i(s)+" - "+yE(i,r);console.log(u)})}),console.log(`
|
|
5
|
-
`)},wE=function(e){let{docs:t}=e;console.log(""),t.forEach(r=>{let n=[];r.forEach(a=>{a.chunk==="Noun"?n.push(ln.blue(a.implicit||a.normal)):a.chunk==="Verb"?n.push(ln.green(a.implicit||a.normal)):a.chunk==="Adjective"?n.push(ln.yellow(a.implicit||a.normal)):a.chunk==="Pivot"?n.push(ln.red(a.implicit||a.normal)):n.push(a.implicit||a.normal)}),console.log(n.join(" "),`
|
|
6
|
-
`)}),console.log(`
|
|
7
|
-
`)},xE=(e,t,r)=>{let n=r*9,a=t.start+n,i=a+t.length,o=e.substring(0,a),s=e.substring(a,i),u=e.substring(i,e.length);return[o,s,u]},DE=function(e,t,r){let n=xE(e,t,r);return`${n[0]}${ln.blue(n[1])}${n[2]}`},NE=function(e){if(!e.found)return;let t={};e.fullPointer.forEach(r=>{t[r[0]]=t[r[0]]||[],t[r[0]].push(r)}),Object.keys(t).forEach(r=>{let a=e.update([[Number(r)]]).text();e.update(t[r]).json({offset:!0}).forEach((s,u)=>{a=DE(a,s.offset,u)}),console.log(a)}),console.log(`
|
|
8
|
-
`)},AE={tags:bE,clientSide:vE,chunks:wE,highlight:NE},CE={api:gE,methods:{one:{hash:ed,debug:AE}}},Xb=function(e,t){if(e[0]!==t[0])return!1;let[,r,n]=e,[,a,i]=t;return r<=a&&n>a||a<=r&&i>r},EE=function(e){let t=e[0][1],r=e[0][2];return e.forEach(n=>{n[1]<t&&(t=n[1]),n[2]>r&&(r=n[2])}),[e[0][0],t,r]},lc=function(e){let t={};return e.forEach(r=>{t[r[0]]=t[r[0]]||[],t[r[0]].push(r)}),t},SE=function(e){let t={};for(let r=0;r<e.length;r+=1)t[e[r].join(",")]=e[r];return Object.values(t)},TE=function(e,t){let[r,n]=e,a=t[1],i=t[2],o={};if(n<a){let s=a<e[2]?a:e[2];o.before=[r,n,s]}return o.match=t,e[2]>i&&(o.after=[r,i,e[2]]),o},ME=function(e,t){return e[1]<=t[1]&&t[2]<=e[2]},ew=function(e,t){let r=lc(t),n=[];return e.forEach(a=>{let[i]=a,o=r[i]||[];if(o=o.filter(u=>ME(a,u)),o.length===0){n.push({passthrough:a});return}o=o.sort((u,l)=>u[1]-l[1]);let s=a;o.forEach((u,l)=>{let c=TE(s,u);o[l+1]?(n.push({before:c.before,match:c.match}),c.after&&(s=c.after)):n.push(c)})}),n},FE=20,PE=function(e,t,r){for(let n=0;n<FE;n+=1){if(t[r-n]){let a=t[r-n].findIndex(i=>i.id===e);if(a!==-1)return[r-n,a]}if(t[r+n]){let a=t[r+n].findIndex(i=>i.id===e);if(a!==-1)return[r+n,a]}}return null},kE=function(e,t){let[r,n,,,a]=e,i=t[r],o=i.findIndex(s=>s.id===a);return o===-1?(e[2]=t[r].length,e[4]=i.length?i[i.length-1].id:null):e[2]=o,t[r].slice(n,e[2]+1)},OE=function(e,t){let r=[];return e.forEach((n,a)=>{if(!n)return;let[i,o,s,u,l]=n,c=t[i]||[];if(o===void 0&&(o=0),s===void 0&&(s=c.length),u&&(!c[o]||c[o].id!==u)){let f=PE(u,t,i);if(f!==null){let m=s-o;c=t[f[0]].slice(f[1],f[1]+m);let d=c[0]?c[0].id:null;e[a]=[f[0],f[1],f[1]+m,d]}}else c=c.slice(o,s);c.length!==0&&o!==s&&(l&&c[c.length-1].id!==l&&(c=kE(n,t)),r.push(c))}),r=r.filter(n=>n.length>0),r},$E=function(e){let t=[];for(let r=0;r<e.length;r+=1)for(let n=0;n<e[r].length;n+=1)t.push(e[r][n]);return t},BE={one:{termList:$E,getDoc:OE,pointer:{indexN:lc,splitAll:ew}}},tw=function(e,t){let r=e.concat(t),n=lc(r),a=[];return r.forEach(i=>{let[o]=i;if(n[o].length===1){a.push(i);return}let s=n[o].filter(l=>Xb(i,l));s.push(i);let u=EE(s);a.push(u)}),a=SE(a),a},rw=function(e,t){let r=[];return ew(e,t).forEach(a=>{a.passthrough&&r.push(a.passthrough),a.before&&r.push(a.before),a.after&&r.push(a.after)}),r},_E=function(e,t){let r=e[1]<t[1]?t[1]:e[1],n=e[2]>t[2]?t[2]:e[2];return r<n?[e[0],r,n]:null},IE=function(e,t){let r=lc(t),n=[];return e.forEach(a=>{let i=r[a[0]]||[];i=i.filter(o=>Xb(a,o)),i.length!==0&&i.forEach(o=>{let s=_E(a,o);s&&n.push(s)})}),n},zE=function(e){return Object.prototype.toString.call(e)==="[object Array]"},td=(e,t)=>typeof e=="string"||zE(e)?t.match(e):e||t.none(),Ws=function(e,t){return e.map(r=>{let[n,a]=r;return t[n]&&t[n][a]&&(r[3]=t[n][a].id),r})},sa={};sa.union=function(e){e=td(e,this);let t=tw(this.fullPointer,e.fullPointer);return t=Ws(t,this.document),this.toView(t)};sa.and=sa.union;sa.intersection=function(e){e=td(e,this);let t=IE(this.fullPointer,e.fullPointer);return t=Ws(t,this.document),this.toView(t)};sa.not=function(e){e=td(e,this);let t=rw(this.fullPointer,e.fullPointer);return t=Ws(t,this.document),this.toView(t)};sa.difference=sa.not;sa.complement=function(){let e=this.all(),t=rw(e.fullPointer,this.fullPointer);return t=Ws(t,this.document),this.toView(t)};sa.settle=function(){let e=this.fullPointer;return e.forEach(t=>{e=tw(e,[t])}),e=Ws(e,this.document),this.update(e)};const jE=function(e){Object.assign(e.prototype,sa)},qE={methods:BE,api:jE},RE={buildNet:function(e){let r=this.methods().one.buildNet(e,this.world());return r.isNet=!0,r}},LE=function(e){e.prototype.sweep=function(t,r={}){const{world:n,docs:a}=this,{methods:i}=n;let o=i.one.bulkMatch(a,t,this.methods,r);r.tagger!==!1&&i.one.bulkTagger(o,a,this.world),o=o.map(u=>{let l=u.pointer,c=a[l[0]][l[1]],f=l[2]-l[1];return c.index&&(u.pointer=[c.index[0],c.index[1],l[1]+f]),u});let s=o.map(u=>u.pointer);return o=o.map(u=>(u.view=this.update([u.pointer]),delete u.regs,delete u.needs,delete u.pointer,delete u._expanded,u)),{view:this.update(s),found:o}}},Vf=function(e){return e.optional===!0||e.negative===!0?null:e.tag?"#"+e.tag:e.word?e.word:e.switch?`%${e.switch}%`:null},HE=function(e){let t=[];return e.forEach(r=>{t.push(Vf(r)),r.operator==="and"&&r.choices&&r.choices.forEach(n=>{n.forEach(a=>{t.push(Vf(a))})})}),t.filter(r=>r)},GE=function(e){let t=[],r=0;return e.forEach(n=>{n.operator==="or"&&!n.optional&&!n.negative&&(n.fastOr&&Array.from(n.fastOr).forEach(a=>{t.push(a)}),n.choices&&n.choices.forEach(a=>{a.forEach(i=>{let o=Vf(i);o&&t.push(o)})}),r+=1)}),{wants:t,count:r}},VE=function(e,t){const r=t.methods.one.parseMatch;return e.forEach(n=>{n.regs=r(n.match,{},t),typeof n.ifNo=="string"&&(n.ifNo=[n.ifNo]),n.notIf&&(n.notIf=r(n.notIf,{},t)),n.needs=HE(n.regs);let{wants:a,count:i}=GE(n.regs);n.wants=a,n.minWant=i,n.minWords=n.regs.filter(o=>!o.optional).length}),e},UE=function(e,t){e=VE(e,t);let r={};e.forEach(a=>{a.needs.forEach(i=>{r[i]=Array.isArray(r[i])?r[i]:[],r[i].push(a)}),a.wants.forEach(i=>{r[i]=Array.isArray(r[i])?r[i]:[],r[i].push(a)})}),Object.keys(r).forEach(a=>{let i={};r[a]=r[a].filter(o=>typeof i[o.match]=="boolean"?!1:(i[o.match]=!0,!0))});let n=e.filter(a=>a.needs.length===0&&a.wants.length===0);return{hooks:r,always:n}},WE=function(e,t){return e.map((r,n)=>{let a=[];Object.keys(t).forEach(o=>{e[n].has(o)&&(a=a.concat(t[o]))});let i={};return a=a.filter(o=>typeof i[o.match]=="boolean"?!1:(i[o.match]=!0,!0)),a})},JE=function(e,t){return e.map((r,n)=>{let a=t[n];return r=r.filter(i=>i.needs.every(o=>a.has(o))),r=r.filter(i=>!(i.ifNo!==void 0&&i.ifNo.some(o=>a.has(o))===!0)),r=r.filter(i=>i.wants.length===0?!0:i.wants.filter(s=>a.has(s)).length>=i.minWant),r})},KE=function(e,t,r,n,a){let i=[];for(let o=0;o<e.length;o+=1)for(let s=0;s<e[o].length;s+=1){let u=e[o][s],l=n.one.match([t[o]],u);if(l.ptrs.length>0&&(l.ptrs.forEach(c=>{c[0]=o;let f=Object.assign({},u,{pointer:c});u.unTag!==void 0&&(f.unTag=u.unTag),i.push(f)}),a.matchOne===!0))return[i[0]]}return i},YE=function(e,t){return e.map((r,n)=>{let a=t[n].length;return r=r.filter(i=>a>=i.minWords),r})},ZE=function(e,t,r,n={}){let a=r.one.cacheDoc(e),i=WE(a,t.hooks);return i=JE(i,a),t.always.length>0&&(i=i.map(s=>s.concat(t.always))),i=YE(i,e),KE(i,e,a,r,n)},QE=function(e,t,r){let n=r.one.tagSet;if(!n.hasOwnProperty(t))return!0;let a=n[t].not||[];for(let i=0;i<e.length;i+=1){let o=e[i];for(let s=0;s<a.length;s+=1)if(o.tags.has(a[s])===!0)return!1}return!0},XE=function(e,t,r){const{model:n,methods:a}=r,{getDoc:i,setTag:o,unTag:s}=a.one,u=a.two.looksPlural;return e.length===0?e:((typeof process>"u"||!process.env?self.env||{}:process.env).DEBUG_TAGS&&console.log(`
|
|
9
|
-
|
|
10
|
-
\x1B[32m→ ${e.length} post-tagger:\x1B[0m`),e.map(c=>{if(!c.tag&&!c.chunk&&!c.unTag)return;let f=c.reason||c.match,m=i([c.pointer],t)[0];if(!(c.safe===!0&&(QE(m,c.tag,n)===!1||m[m.length-1].post==="-"))){if(c.tag!==void 0){if(o(m,c.tag,r,c.safe,`[post] '${f}'`),c.tag==="Noun"&&u){let d=m[m.length-1];u(d.text)?o([d],"Plural",r,c.safe,"quick-plural"):o([d],"Singular",r,c.safe,"quick-singular")}c.freeze===!0&&m.forEach(d=>d.frozen=!0)}c.unTag!==void 0&&s(m,c.unTag,r,c.safe,f),c.chunk&&m.forEach(d=>d.chunk=c.chunk)}}))},eS={buildNet:UE,bulkMatch:ZE,bulkTagger:XE},tS={lib:RE,api:LE,methods:{one:eS}},nw=/ /,Bh=function(e,t){t==="Noun"&&(e.chunk=t),t==="Verb"&&(e.chunk=t)},aw=function(e,t,r,n){if(e.tags.has(t)===!0||t===".")return null;e.frozen===!0&&(n=!0);let a=r[t];if(a){if(a.not&&a.not.length>0)for(let i=0;i<a.not.length;i+=1){if(n===!0&&e.tags.has(a.not[i]))return null;e.tags.delete(a.not[i])}if(a.parents&&a.parents.length>0)for(let i=0;i<a.parents.length;i+=1)e.tags.add(a.parents[i]),Bh(e,a.parents[i])}return e.tags.add(t),e.dirty=!0,Bh(e,t),!0},rS=function(e,t,r,n){let a=t.split(nw);e.forEach((i,o)=>{let s=a[o];s&&(s=s.replace(/^#/,""),aw(i,s,r,n))})},nS=function(e){return Object.prototype.toString.call(e)==="[object Array]"},aS=(e,t,r="")=>{const n=o=>"\x1B[33m\x1B[3m"+o+"\x1B[0m",a=o=>"\x1B[3m"+o+"\x1B[0m";let i=e.map(o=>o.text||"["+o.implicit+"]").join(" ");typeof t!="string"&&t.length>2&&(t=t.slice(0,2).join(", #")+" +"),t=typeof t!="string"?t.join(", #"):t,console.log(` ${n(i).padEnd(24)} \x1B[32m→\x1B[0m #${t.padEnd(22)} ${a(r)}`)},iw=function(e,t,r={},n,a){const i=r.model.one.tagSet||{};if(!t)return;const o=typeof process>"u"||!process.env?self.env||{}:process.env;if(o&&o.DEBUG_TAGS&&aS(e,t,a),nS(t)===!0){t.forEach(s=>iw(e,s,r,n));return}if(typeof t!="string"){console.warn(`compromise: Invalid tag '${t}'`);return}if(t=t.trim(),nw.test(t)){rS(e,t,i,n);return}t=t.replace(/^#/,"");for(let s=0;s<e.length;s+=1)aw(e[s],t,i,n)},iS=function(e,t,r){t=t.trim().replace(/^#/,"");for(let n=0;n<e.length;n+=1){let a=e[n];if(a.frozen===!0)continue;if(t==="*"){a.tags.clear();continue}let i=r[t];if(i&&i.children.length>0)for(let o=0;o<i.children.length;o+=1)a.tags.delete(i.children[o]);a.tags.delete(t)}},oS=function(e,t,r){if(!r.hasOwnProperty(t))return!0;let n=r[t].not||[];for(let a=0;a<n.length;a+=1)if(e.tags.has(n[a]))return!1;return!0},Qa=function(e){return e.children=e.children||[],e._cache=e._cache||{},e.props=e.props||{},e._cache.parents=e._cache.parents||[],e._cache.children=e._cache.children||[],e},sS=/^ *(#|\/\/)/,uS=function(e){let t=e.trim().split(/->/),r=[];t.forEach((a=>{r=r.concat((function(i){if(!(i=i.trim()))return null;if(/^\[/.test(i)&&/\]$/.test(i)){let o=(i=(i=i.replace(/^\[/,"")).replace(/\]$/,"")).split(/,/);return o=o.map((s=>s.trim())).filter((s=>s)),o=o.map((s=>Qa({id:s}))),o}return[Qa({id:i})]})(a))})),r=r.filter((a=>a));let n=r[0];for(let a=1;a<r.length;a+=1)n.children.push(r[a]),n=r[a];return r[0]},Sa=(e,t)=>{let r=[],n=[e];for(;n.length>0;){let a=n.pop();r.push(a),a.children&&a.children.forEach((i=>{t&&t(a,i),n.push(i)}))}return r},rd=e=>Object.prototype.toString.call(e)==="[object Array]",fu=e=>(e=e||"").trim(),lS=function(e=[]){return typeof e=="string"?(function(r){let n=r.split(/\r?\n/),a=[];n.forEach((o=>{if(!o.trim()||sS.test(o))return;let s=(u=>{const l=/^( {2}|\t)/;let c=0;for(;l.test(u);)u=u.replace(l,""),c+=1;return c})(o);a.push({indent:s,node:uS(o)})}));let i=(function(o){let s={children:[]};return o.forEach(((u,l)=>{u.indent===0?s.children=s.children.concat(u.node):o[l-1]&&(function(c,f){let m=c[f].indent;for(;f>=0;f-=1)if(c[f].indent<m)return c[f];return c[0]})(o,l).node.children.push(u.node)})),s})(a);return i=Qa(i),i})(e):rd(e)?(function(r){let n={};r.forEach((i=>{n[i.id]=i}));let a=Qa({});return r.forEach((i=>{if((i=Qa(i)).parent)if(n.hasOwnProperty(i.parent)){let o=n[i.parent];delete i.parent,o.children.push(i)}else console.warn(`[Grad] - missing node '${i.parent}'`);else a.children.push(i)})),a})(e):(Sa(t=e).forEach(Qa),t);var t},cS=e=>"\x1B[31m"+e+"\x1B[0m",fS=e=>"\x1B[2m"+e+"\x1B[0m",Uf=function(e,t){let r="-> ";t&&(r=fS("→ "));let n="";return Sa(e).forEach(((a,i)=>{let o=a.id||"";if(t&&(o=cS(o)),i===0&&!a.id)return;let s=a._cache.parents.length;n+=" ".repeat(s)+r+o+`
|
|
11
|
-
`})),n},_h=function(e){let t=Sa(e);t.forEach((n=>{delete(n=Object.assign({},n)).children}));let r=t[0];return r&&!r.id&&Object.keys(r.props).length===0&&t.shift(),t},Ih={text:Uf,txt:Uf,array:_h,flat:_h},zh=function(e,t){return t==="nested"||t==="json"?e:t==="debug"?(console.log(Uf(e,!0)),null):Ih.hasOwnProperty(t)?Ih[t](e):e},Hc=e=>{Sa(e,((t,r)=>{t.id&&(t._cache.parents=t._cache.parents||[],r._cache.parents=t._cache.parents.concat([t.id]))}))},mS=(e,t)=>(Object.keys(t).forEach((r=>{if(t[r]instanceof Set){let n=e[r]||new Set;e[r]=new Set([...n,...t[r]])}else if((n=>n&&typeof n=="object"&&!Array.isArray(n))(t[r])){let n=e[r]||{};e[r]=Object.assign({},t[r],n)}else rd(t[r])?e[r]=t[r].concat(e[r]||[]):e[r]===void 0&&(e[r]=t[r])})),e),dS=/\//;let hS=class hl{constructor(t={}){Object.defineProperty(this,"json",{enumerable:!1,value:t,writable:!0})}get children(){return this.json.children}get id(){return this.json.id}get found(){return this.json.id||this.json.children.length>0}props(t={}){let r=this.json.props||{};return typeof t=="string"&&(r[t]=!0),this.json.props=Object.assign(r,t),this}get(t){if(t=fu(t),!dS.test(t)){let n=this.json.children.find((a=>a.id===t));return new hl(n)}let r=((n,a)=>{let i=(o=>typeof o!="string"?o:(o=o.replace(/^\//,"")).split(/\//))(a=a||"");for(let o=0;o<i.length;o+=1){let s=n.children.find((u=>u.id===i[o]));if(!s)return null;n=s}return n})(this.json,t)||Qa({});return new hl(r)}add(t,r={}){if(rd(t))return t.forEach((a=>this.add(fu(a),r))),this;t=fu(t);let n=Qa({id:t,props:r});return this.json.children.push(n),new hl(n)}remove(t){return t=fu(t),this.json.children=this.json.children.filter((r=>r.id!==t)),this}nodes(){return Sa(this.json).map((t=>(delete(t=Object.assign({},t)).children,t)))}cache(){return(t=>{let r=Sa(t,((a,i)=>{a.id&&(a._cache.parents=a._cache.parents||[],a._cache.children=a._cache.children||[],i._cache.parents=a._cache.parents.concat([a.id]))})),n={};r.forEach((a=>{a.id&&(n[a.id]=a)})),r.forEach((a=>{a._cache.parents.forEach((i=>{n.hasOwnProperty(i)&&n[i]._cache.children.push(a.id)}))})),t._cache.children=Object.keys(n)})(this.json),this}list(){return Sa(this.json)}fillDown(){var t;return t=this.json,Sa(t,((r,n)=>{n.props=mS(n.props,r.props)})),this}depth(){Hc(this.json);let t=Sa(this.json),r=t.length>1?1:0;return t.forEach((n=>{if(n._cache.parents.length===0)return;let a=n._cache.parents.length+1;a>r&&(r=a)})),r}out(t){return Hc(this.json),zh(this.json,t)}debug(){return Hc(this.json),zh(this.json,"debug"),this}};const ow=function(e){let t=lS(e);return new hS(t)};ow.prototype.plugin=function(e){e(this)};const lo={Noun:"blue",Verb:"green",Negative:"green",Date:"red",Value:"red",Adjective:"magenta",Preposition:"cyan",Conjunction:"cyan",Determiner:"cyan",Hyphenated:"cyan",Adverb:"cyan"},pS=function(e){if(lo.hasOwnProperty(e.id))return lo[e.id];if(lo.hasOwnProperty(e.is))return lo[e.is];let t=e._cache.parents.find(r=>lo[r]);return lo[t]},gS=function(e){const t={};return e.forEach(r=>{let{not:n,also:a,is:i,novel:o}=r.props,s=r._cache.parents;a&&(s=s.concat(a)),t[r.id]={is:i,not:n,novel:o,also:a,parents:s,children:r._cache.children,color:pS(r)}}),Object.keys(t).forEach(r=>{let n=new Set(t[r].not);t[r].not.forEach(a=>{t[a]&&t[a].children.forEach(i=>n.add(i))}),t[r].not=Array.from(n)}),t},jh=function(e){return e?typeof e=="string"?[e]:e:[]},vS=function(e,t){return Object.keys(e).forEach(r=>{e[r].isA&&(e[r].is=e[r].isA),e[r].notA&&(e[r].not=e[r].notA),e[r].is&&typeof e[r].is=="string"&&!t.hasOwnProperty(e[r].is)&&!e.hasOwnProperty(e[r].is)&&(e[e[r].is]={}),e[r].not&&typeof e[r].not=="string"&&!e.hasOwnProperty(e[r].not)&&!t.hasOwnProperty(e[r].not)&&!e.hasOwnProperty(e[r].not)&&(e[e[r].not]={})}),e},yS=function(e,t){return e=vS(e,t),Object.keys(e).forEach(r=>{e[r].children=jh(e[r].children),e[r].not=jh(e[r].not)}),Object.keys(e).forEach(r=>{(e[r].not||[]).forEach(a=>{e[a]&&e[a].not&&e[a].not.push(r)})}),e},bS=function(e){const t=Object.keys(e).map(n=>{let a=e[n];const i={not:new Set(a.not),also:a.also,is:a.is,novel:a.novel};return{id:n,parent:a.is,props:i,children:[]}});return ow(t).cache().fillDown().out("array")},wS=function(e){return Object.keys(e).forEach(t=>{e[t]=Object.assign({},e[t]),e[t].novel=!0}),e},xS=function(e,t){Object.keys(t).length>0&&(e=wS(e)),e=yS(e,t);let r=Object.assign({},t,e);const n=bS(r);return gS(n)},DS={one:{setTag:iw,unTag:iS,addTags:xS,canBe:oS}},qh=function(e){return Object.prototype.toString.call(e)==="[object Array]"},NS={tag:function(e,t="",r){if(!this.found||!e)return this;let n=this.termList();if(n.length===0)return this;const{methods:a,verbose:i,world:o}=this;return i===!0&&console.log(" + ",e,t||""),qh(e)?e.forEach(s=>a.one.setTag(n,s,o,r,t)):a.one.setTag(n,e,o,r,t),this.uncache(),this},tagSafe:function(e,t=""){return this.tag(e,t,!0)},unTag:function(e,t){if(!this.found||!e)return this;let r=this.termList();if(r.length===0)return this;const{methods:n,verbose:a,model:i}=this;a===!0&&console.log(" - ",e,t||"");let o=i.one.tagSet;return qh(e)?e.forEach(s=>n.one.unTag(r,s,o)):n.one.unTag(r,e,o),this.uncache(),this},canBe:function(e){e=e.replace(/^#/,"");let t=this.model.one.tagSet,r=this.methods.one.canBe,n=[];this.document.forEach((i,o)=>{i.forEach((s,u)=>{r(s,e,t)||n.push([o,u,u+1])})});let a=this.update(n);return this.difference(a)}},AS=function(e){Object.assign(e.prototype,NS)},CS=function(e){const{model:t,methods:r}=this.world(),n=t.one.tagSet,a=r.one.addTags;let i=a(e,n);return t.one.tagSet=i,this},ES={addTags:CS},Rh=new Set(["Auxiliary","Possessive"]),SS=function(e,t){return e=e.sort((r,n)=>{if(Rh.has(r)||!t.hasOwnProperty(n))return 1;if(Rh.has(n)||!t.hasOwnProperty(r))return-1;let a=t[r].children||[],i=a.length;a=t[n].children||[];let o=a.length;return i-o}),e},TS=function(e){const{document:t,world:r}=e,n=r.model.one.tagSet;t.forEach(a=>{a.forEach(i=>{let o=Array.from(i.tags);i.tagRank=SS(o,n)})})},MS={model:{one:{tagSet:{}}},compute:{tagRank:TS},methods:DS,api:AS,lib:ES},FS=/([.!?\u203D\u2E18\u203C\u2047-\u2049\u3002]+\s)/g,PS=/^[.!?\u203D\u2E18\u203C\u2047-\u2049\u3002]+\s$/,kS=/((?:\r?\n|\r)+)/,OS=function(e){let t=[],r=e.split(kS);for(let n=0;n<r.length;n++){let a=r[n].split(FS);for(let i=0;i<a.length;i++)a[i+1]&&PS.test(a[i+1])===!0&&(a[i]+=a[i+1],a[i+1]=""),a[i]!==""&&t.push(a[i])}return t},$S=/[a-z0-9\u00C0-\u00FF\u00a9\u00ae\u2000-\u3300\ud000-\udfff]/i,BS=/\S/,_S=function(e){let t=[];for(let r=0;r<e.length;r++){let n=e[r];if(!(n===void 0||n==="")){if(BS.test(n)===!1||$S.test(n)===!1){if(t[t.length-1]){t[t.length-1]+=n;continue}else if(e[r+1]){e[r+1]=n+e[r+1];continue}}t.push(n)}}return t},IS=function(e,t){const r=t.methods.one.tokenize.isSentence,n=t.model.one.abbreviations||new Set;let a=[];for(let i=0;i<e.length;i++){let o=e[i];e[i+1]&&r(o,n)===!1?e[i+1]=o+(e[i+1]||""):o&&o.length>0&&(a.push(o),e[i]="")}return a},Lh=280,sw={'"':'"',""":""","“":"”","‟":"”","„":"”","⹂":"”","‚":"’","«":"»","‹":"›","‵":"′","‶":"″","‷":"‴","〝":"〞","〟":"〞"},zS=RegExp("["+Object.keys(sw).join("")+"]","g"),jS=RegExp("["+Object.values(sw).join("")+"]","g"),Hh=function(e){if(!e)return!1;let t=e.match(jS);return t!==null&&t.length===1},qS=function(e){let t=[];for(let r=0;r<e.length;r+=1){let a=e[r].match(zS);if(a!==null&&a.length===1){if(Hh(e[r+1])&&e[r+1].length<Lh){e[r]+=e[r+1],t.push(e[r]),e[r+1]="",r+=1;continue}if(Hh(e[r+2])){let i=e[r+1]+e[r+2];if(i.length<Lh){e[r]+=i,t.push(e[r]),e[r+1]="",e[r+2]="",r+=2;continue}}}t.push(e[r])}return t},RS=250,Gh=/\(/g,LS=/\)/g,HS=function(e){let t=[];for(let r=0;r<e.length;r+=1){let a=e[r].match(Gh);if(a!==null&&a.length===1&&e[r+1]&&e[r+1].length<RS&&e[r+1].match(LS)!==null&&a.length===1&&!Gh.test(e[r+1])){e[r]+=e[r+1],t.push(e[r]),e[r+1]="",r+=1;continue}t.push(e[r])}return t},GS=/\S/,Vh=/^\s+/,VS=function(e,t){if(e=e||"",e=String(e),!e||typeof e!="string"||GS.test(e)===!1)return[];e=e.replace(" "," ");let r=OS(e),n=_S(r);if(n=IS(n,t),n=qS(n),n=HS(n),n.length===0)return[e];for(let a=1;a<n.length;a+=1){let i=n[a].match(Vh);i!==null&&(n[a-1]+=i[0],n[a]=n[a].replace(Vh,""))}return n},US=function(e,t){let r=e.split(/[-–—]/);if(r.length<=1)return!1;const{prefixes:n,suffixes:a}=t.one;return r[0].length===1&&/[a-z]/i.test(r[0])||n.hasOwnProperty(r[0])||(r[1]=r[1].trim().replace(/[.?!]$/,""),a.hasOwnProperty(r[1]))?!1:/^([a-z\u00C0-\u00FF`"'/]+)[-–—]([a-z0-9\u00C0-\u00FF].*)/i.test(e)===!0||/^[('"]?([0-9]{1,4})[-–—]([a-z\u00C0-\u00FF`"'/-]+[)'"]?$)/i.test(e)===!0},WS=function(e){let t=[];const r=e.split(/[-–—]/);let n="-",a=e.match(/[-–—]/);a&&a[0]&&(n=a);for(let i=0;i<r.length;i++)i===r.length-1?t.push(r[i]):t.push(r[i]+n);return t},JS=function(e){const t=/^[0-9]{1,4}(:[0-9][0-9])?([a-z]{1,2})? ?[-–—] ?$/,r=/^[0-9]{1,4}([a-z]{1,2})? ?$/;for(let n=0;n<e.length-1;n+=1)e[n+1]&&t.test(e[n])&&r.test(e[n+1])&&(e[n]=e[n]+e[n+1],e[n+1]=null);return e},KS=new RegExp("\\p{L} ?\\/ ?\\p{L}+$","u"),YS=function(e){for(let t=1;t<e.length-1;t++)KS.test(e[t])&&(e[t-1]+=e[t]+e[t+1],e[t]=null,e[t+1]=null);return e},ZS=/\S/,QS=/^[!?.]+$/,XS=/(\S+)/;let Wf=[".","?","!",":",";","-","–","—","--","...","(",")","[","]",'"',"'","`","«","»","*","•"];Wf=Wf.reduce((e,t)=>(e[t]=!0,e),{});const e4=function(e){return Object.prototype.toString.call(e)==="[object Array]"},t4=function(e,t){let r=[],n=[];if(e=e||"",typeof e=="number"&&(e=String(e)),e4(e))return e;const a=e.split(XS);for(let o=0;o<a.length;o++){if(US(a[o],t)===!0){n=n.concat(WS(a[o]));continue}n.push(a[o])}let i="";for(let o=0;o<n.length;o++){let s=n[o];ZS.test(s)===!0&&Wf.hasOwnProperty(s)===!1&&QS.test(s)===!1?(r.length>0?(r[r.length-1]+=i,r.push(s)):r.push(i+s),i=""):i+=s}return i&&(r.length===0&&(r[0]=""),r[r.length-1]+=i),r=YS(r),r=JS(r),r=r.filter(o=>o),r},Uh=new RegExp("\\p{Letter}","u"),mu=/[\p{Number}\p{Currency_Symbol}]/u,r4=/^[a-z]\.([a-z]\.)+/i,n4=/[sn]['’]$/,a4=function(e,t){let{prePunctuation:r,postPunctuation:n,emoticons:a}=t.one,i=e,o="",s="",u=Array.from(e);if(a.hasOwnProperty(e.trim()))return{str:e.trim(),pre:o,post:" "};let l=u.length;for(let c=0;c<l;c+=1){let f=u[0];if(r[f]!==!0){if((f==="+"||f==="-")&&mu.test(u[1])||f==="'"&&f.length===3&&mu.test(u[1])||Uh.test(f)||mu.test(f))break;o+=u.shift()}}l=u.length;for(let c=0;c<l;c+=1){let f=u[u.length-1];if(n[f]!==!0){if(Uh.test(f)||mu.test(f))break;f==="."&&r4.test(i)===!0||f==="'"&&n4.test(i)===!0||(s=u.pop()+s)}}return e=u.join(""),e===""&&(i=i.replace(/ *$/,c=>(s=c||"","")),e=i,o=""),{str:e,pre:o,post:s}},i4=(e,t)=>{let{str:r,pre:n,post:a}=a4(e,t);return{text:r,pre:n,post:a,tags:new Set}},o4=function(e,t){const r=t.model.one.unicode||{};e=e||"";let n=e.split("");return n.forEach((a,i)=>{r[a]&&(n[i]=r[a])}),n.join("")},s4=function(e){e=e||"",e=e.toLowerCase(),e=e.trim();let t=e;return e=e.replace(/[,;.!?]+$/,""),e=e.replace(/\u2026/g,"..."),e=e.replace(/\u2013/g,"-"),/^[:;]/.test(e)===!1&&(e=e.replace(/\.{3,}$/g,""),e=e.replace(/[",.!:;?)]+$/g,""),e=e.replace(/^['"(]+/g,"")),e=e.replace(/[\u200B-\u200D\uFEFF]/g,""),e=e.trim(),e===""&&(e=t),e=e.replace(/([0-9]),([0-9])/g,"$1$2"),e},u4=/([A-Z]\.)+[A-Z]?,?$/,l4=/^[A-Z]\.,?$/,c4=/[A-Z]{2,}('s|,)?$/,f4=/([a-z]\.)+[a-z]\.?$/,m4=function(e){return u4.test(e)===!0||f4.test(e)===!0||l4.test(e)===!0||c4.test(e)===!0},d4=function(e){return m4(e)&&(e=e.replace(/\./g,"")),e},uw=function(e,t){const r=t.methods.one.killUnicode;let n=e.text||"";n=s4(n),n=r(n,t),n=d4(n),e.normal=n},h4=function(e,t){const{methods:r,model:n}=t,{splitSentences:a,splitTerms:i,splitWhitespace:o}=r.one.tokenize;return e=e||"",e=a(e,t).map(u=>{let l=i(u,n);return l=l.map(c=>o(c,n)),l.forEach(c=>{uw(c,t)}),l}),e},p4=/[ .][A-Z]\.? *$/i,g4=/(?:\u2026|\.{2,}) *$/,v4=new RegExp("\\p{L}","u"),y4=/\. *$/,b4=/^[A-Z]\. $/,w4=function(e,t){if(v4.test(e)===!1||p4.test(e)===!0||e.length===3&&b4.test(e)||g4.test(e)===!0)return!1;let n=e.replace(/[.!?\u203D\u2E18\u203C\u2047-\u2049] *$/,"").split(" "),a=n[n.length-1].toLowerCase();return!(t.hasOwnProperty(a)===!0&&y4.test(e)===!0)},x4={one:{killUnicode:o4,tokenize:{splitSentences:VS,isSentence:w4,splitTerms:t4,splitWhitespace:i4,fromString:h4}}},D4={"&":"and","@":"at","%":"percent",plz:"please",bein:"being"},N4=["approx","apt","bc","cyn","eg","esp","est","etc","ex","exp","prob","pron","gal","min","pseud","fig","jd","lat","lng","vol","fm","def","misc","plz","ea","ps","sec","pt","pref","pl","pp","qt","fr","sq","nee","ss","tel","temp","vet","ver","fem","masc","eng","adj","vb","rb","inf","situ","vivo","vitro","wr"],A4=["adj","adm","adv","asst","atty","bldg","brig","capt","cmdr","comdr","cpl","det","dr","esq","gen","gov","hon","jr","llb","lt","maj","messrs","mlle","mme","mr","mrs","ms","mstr","phd","prof","pvt","rep","reps","res","rev","sen","sens","sfc","sgt","sir","sr","supt","surg"],C4=["jan","feb","mar","apr","jun","jul","aug","sep","sept","oct","nov","dec"],E4=["ad","al","arc","ba","bl","ca","cca","col","corp","ft","fy","ie","lit","ma","md","pd","tce"],S4=["dept","univ","assn","bros","inc","ltd","co"],T4=["rd","st","dist","mt","ave","blvd","cl","cres","hwy","ariz","cal","calif","colo","conn","fla","fl","ga","ida","ia","kan","kans","minn","neb","nebr","okla","penna","penn","pa","dak","tenn","tex","ut","vt","va","wis","wisc","wy","wyo","usafa","alta","ont","que","sask"],M4=["dl","ml","gal","qt","pt","tbl","tsp","tbsp","km","dm","cm","mm","mi","td","hr","hrs","kg","hg","dg","cg","mg","µg","lb","oz","sq ft","hz","mps","mph","kmph","kb","mb","tb","lx","lm","fl oz","yb"];let F4=[[N4],[M4,"Unit"],[E4,"Noun"],[A4,"Honorific"],[C4,"Month"],[S4,"Organization"],[T4,"Place"]],lw={},pl={};F4.forEach(e=>{e[0].forEach(t=>{lw[t]=!0,pl[t]="Abbreviation",e[1]!==void 0&&(pl[t]=[pl[t],e[1]])})});const P4=["anti","bi","co","contra","de","extra","infra","inter","intra","macro","micro","mis","mono","multi","peri","pre","pro","proto","pseudo","re","sub","supra","trans","tri","un","out","ex"].reduce((e,t)=>(e[t]=!0,e),{}),k4={like:!0,ish:!0,less:!0,able:!0,elect:!0,type:!0,designate:!0};let Wh={"!":"¡","?":"¿Ɂ",'"':'“”"❝❞',"'":"‘‛❛❜’","-":"—–",a:"ªÀÁÂÃÄÅàáâãäåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧȺΆΑΔΛάαλАаѦѧӐӑӒӓƛæ",b:"ßþƀƁƂƃƄƅɃΒβϐϦБВЪЬвъьѢѣҌҍ",c:"¢©ÇçĆćĈĉĊċČčƆƇƈȻȼͻͼϲϹϽϾСсєҀҁҪҫ",d:"ÐĎďĐđƉƊȡƋƌ",e:"ÈÉÊËèéêëĒēĔĕĖėĘęĚěƐȄȅȆȇȨȩɆɇΈΕΞΣέεξϵЀЁЕеѐёҼҽҾҿӖӗễ",f:"ƑƒϜϝӺӻҒғſ",g:"ĜĝĞğĠġĢģƓǤǥǦǧǴǵ",h:"ĤĥĦħƕǶȞȟΉΗЂЊЋНнђћҢңҤҥҺһӉӊ",I:"ÌÍÎÏ",i:"ìíîïĨĩĪīĬĭĮįİıƖƗȈȉȊȋΊΐΪίιϊІЇіїi̇",j:"ĴĵǰȷɈɉϳЈј",k:"ĶķĸƘƙǨǩΚκЌЖКжкќҚқҜҝҞҟҠҡ",l:"ĹĺĻļĽľĿŀŁłƚƪǀǏǐȴȽΙӀӏ",m:"ΜϺϻМмӍӎ",n:"ÑñŃńŅņŇňʼnŊŋƝƞǸǹȠȵΝΠήηϞЍИЙЛПийлпѝҊҋӅӆӢӣӤӥπ",o:"ÒÓÔÕÖØðòóôõöøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱΌΘΟθοσόϕϘϙϬϴОФоѲѳӦӧӨөӪӫ",p:"ƤΡρϷϸϼРрҎҏÞ",q:"Ɋɋ",r:"ŔŕŖŗŘřƦȐȑȒȓɌɍЃГЯгяѓҐґ",s:"ŚśŜŝŞşŠšƧƨȘșȿЅѕ",t:"ŢţŤťŦŧƫƬƭƮȚțȶȾΓΤτϮТт",u:"ÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưƱƲǓǔǕǖǗǘǙǚǛǜȔȕȖȗɄΰυϋύ",v:"νѴѵѶѷ",w:"ŴŵƜωώϖϢϣШЩшщѡѿ",x:"×ΧχϗϰХхҲҳӼӽӾӿ",y:"ÝýÿŶŷŸƳƴȲȳɎɏΎΥΫγψϒϓϔЎУучўѰѱҮүҰұӮӯӰӱӲӳ",z:"ŹźŻżŽžƵƶȤȥɀΖ"},cw={};Object.keys(Wh).forEach(function(e){Wh[e].split("").forEach(function(t){cw[t]=e})});const O4={"#":!0,"@":!0,_:!0,"°":!0,"":!0,"":!0,"":!0,"\uFEFF":!0},$4={"%":!0,_:!0,"°":!0,"":!0,"":!0,"":!0,"\uFEFF":!0},B4={"<3":!0,"</3":!0,"<\\3":!0,":^P":!0,":^p":!0,":^O":!0,":^3":!0},_4={one:{aliases:D4,abbreviations:lw,prefixes:P4,suffixes:k4,prePunctuation:O4,postPunctuation:$4,lexicon:pl,unicode:cw,emoticons:B4}},Jh=/\//,I4=/[a-z]\.[a-z]/i,z4=/[0-9]/,j4=function(e,t){let r=e.normal||e.text||e.machine;const n=t.model.one.aliases;if(n.hasOwnProperty(r)&&(e.alias=e.alias||[],e.alias.push(n[r])),Jh.test(r)&&!I4.test(r)&&!z4.test(r)){let a=r.split(Jh);a.length<=3&&a.forEach(i=>{i=i.trim(),i!==""&&(e.alias=e.alias||[],e.alias.push(i))})}return e},q4=new RegExp("^\\p{Letter}+-\\p{Letter}+$","u"),R4=function(e){let t=e.implicit||e.normal||e.text;t=t.replace(/['’]s$/,""),t=t.replace(/s['’]$/,"s"),t=t.replace(/([aeiou][ktrp])in'$/,"$1ing"),q4.test(t)&&(t=t.replace(/-/g,"")),t=t.replace(/^[#@]/,""),t!==e.normal&&(e.machine=t)},L4=function(e){let t=e.docs,r={};for(let n=0;n<t.length;n+=1)for(let a=0;a<t[n].length;a+=1){let i=t[n][a],o=i.machine||i.normal;r[o]=r[o]||0,r[o]+=1}for(let n=0;n<t.length;n+=1)for(let a=0;a<t[n].length;a+=1){let i=t[n][a],o=i.machine||i.normal;i.freq=r[o]}},H4=function(e){let t=0,r=0,n=e.document;for(let a=0;a<n.length;a+=1)for(let i=0;i<n[a].length;i+=1){let o=n[a][i];o.offset={index:r,start:t+o.pre.length,length:o.text.length},t+=o.pre.length+o.text.length+o.post.length,r+=1}},G4=function(e){let t=e.document;for(let r=0;r<t.length;r+=1)for(let n=0;n<t[r].length;n+=1)t[r][n].index=[r,n]},V4=function(e){let t=0,r=e.docs;for(let n=0;n<r.length;n+=1)for(let a=0;a<r[n].length;a+=1)r[n][a].normal!==""&&(t+=1,r[n][a].wordCount=t)},Gc=function(e,t){let r=e.docs;for(let n=0;n<r.length;n+=1)for(let a=0;a<r[n].length;a+=1)t(r[n][a],e.world)},U4={alias:e=>Gc(e,j4),machine:e=>Gc(e,R4),normal:e=>Gc(e,uw),freq:L4,offset:H4,index:G4,wordCount:V4},W4={compute:U4,methods:x4,model:_4,hooks:["alias","machine","index","id"]},J4=function(e){const t=e.model.one.typeahead,r=e.docs;if(r.length===0||Object.keys(t).length===0)return;let n=r[r.length-1]||[],a=n[n.length-1];if(!a.post&&t.hasOwnProperty(a.normal)){let i=t[a.normal];a.implicit=i,a.machine=i,a.typeahead=!0,e.compute.preTagger&&e.last().unTag("*").compute(["lexicon","preTagger"])}},K4={typeahead:J4},Y4=function(){const e=this.docs;if(e.length===0)return this;let t=e[e.length-1]||[],r=t[t.length-1];return r.typeahead===!0&&r.machine&&(r.text=r.machine,r.normal=r.machine),this},Z4=function(e){e.prototype.autoFill=Y4},Q4=function(e,t,r){let n={},a=[],i=r.prefixes||{};return e.forEach(o=>{o=o.toLowerCase().trim();let s=o.length;t.max&&s>t.max&&(s=t.max);for(let u=t.min;u<s;u+=1){let l=o.substring(0,u);if(!(t.safe&&r.model.one.lexicon.hasOwnProperty(l))){if(i.hasOwnProperty(l)===!0){a.push(l);continue}if(n.hasOwnProperty(l)===!0){a.push(l);continue}n[l]=o}}}),n=Object.assign({},i,n),a.forEach(o=>{delete n[o]}),n},X4=e=>Object.prototype.toString.call(e)==="[object Object]",eT={safe:!0,min:3},tT=function(e=[],t={}){let r=this.model();t=Object.assign({},eT,t),X4(e)&&(Object.assign(r.one.lexicon,e),e=Object.keys(e));let n=Q4(e,t,this.world());return Object.keys(n).forEach(a=>{if(r.one.typeahead.hasOwnProperty(a)){delete r.one.typeahead[a];return}r.one.typeahead[a]=n[a]}),this},rT={typeahead:tT},nT={one:{typeahead:{}}},aT={model:nT,api:Z4,lib:rT,compute:K4,hooks:["typeahead"]};tt.extend(WA);tt.extend(CE);tt.extend(VC);tt.extend(qE);tt.extend(MS);tt.plugin(b3);tt.extend(W4);tt.extend(D3);tt.plugin(sA);tt.extend(R3);tt.extend(aT);tt.extend(O3);tt.extend(tS);const fw={addendum:"addenda",corpus:"corpora",criterion:"criteria",curriculum:"curricula",genus:"genera",memorandum:"memoranda",opus:"opera",ovum:"ova",phenomenon:"phenomena",referendum:"referenda",alga:"algae",alumna:"alumnae",antenna:"antennae",formula:"formulae",larva:"larvae",nebula:"nebulae",vertebra:"vertebrae",analysis:"analyses",axis:"axes",diagnosis:"diagnoses",parenthesis:"parentheses",prognosis:"prognoses",synopsis:"synopses",thesis:"theses",neurosis:"neuroses",appendix:"appendices",index:"indices",matrix:"matrices",ox:"oxen",sex:"sexes",alumnus:"alumni",bacillus:"bacilli",cactus:"cacti",fungus:"fungi",hippopotamus:"hippopotami",libretto:"libretti",modulus:"moduli",nucleus:"nuclei",octopus:"octopi",radius:"radii",stimulus:"stimuli",syllabus:"syllabi",cookie:"cookies",calorie:"calories",auntie:"aunties",movie:"movies",pie:"pies",rookie:"rookies",tie:"ties",zombie:"zombies",leaf:"leaves",loaf:"loaves",thief:"thieves",foot:"feet",goose:"geese",tooth:"teeth",beau:"beaux",chateau:"chateaux",tableau:"tableaux",bus:"buses",gas:"gases",circus:"circuses",crisis:"crises",virus:"viruses",database:"databases",excuse:"excuses",abuse:"abuses",avocado:"avocados",barracks:"barracks",child:"children",clothes:"clothes",echo:"echoes",embargo:"embargoes",epoch:"epochs",deer:"deer",halo:"halos",man:"men",woman:"women",mosquito:"mosquitoes",mouse:"mice",person:"people",quiz:"quizzes",rodeo:"rodeos",shoe:"shoes",sombrero:"sombreros",stomach:"stomachs",tornado:"tornados",tuxedo:"tuxedos",volcano:"volcanoes"},Kh={Comparative:"true¦bett1f0;arth0ew0in0;er",Superlative:"true¦earlier",PresentTense:"true¦bests,sounds",Condition:"true¦lest,unless",PastTense:"true¦began,came,d4had,kneel3l2m0sa4we1;ea0sg2;nt;eap0i0;ed;id",Participle:"true¦0:09;a06b01cZdXeat0fSgQhPoJprov0rHs7t6u4w1;ak0ithdra02o2r1;i02uY;k0v0;nd1pr04;ergoJoJ;ak0hHo3;e9h7lain,o6p5t4un3w1;o1um;rn;g,k;ol0reS;iQok0;ught,wn;ak0o1runk;ne,wn;en,wn;ewriNi1uJ;dd0s0;ut3ver1;do4se0t1;ak0h2;do2g1;roG;ne;ast0i7;iv0o1;ne,tt0;all0loBor1;bi3g2s1;ak0e0;iv0o9;dd0;ove,r1;a5eamt,iv0;hos0lu1;ng;e4i3lo2ui1;lt;wn;tt0;at0en,gun;r2w1;ak0ok0;is0;en",Gerund:"true¦accord0be0doin,go0result0stain0;ing",Expression:"true¦a0Yb0Uc0Sd0Oe0Mfarew0Lg0FhZjeez,lWmVnToOpLsJtIuFvEw7y0;a5e3i1u0;ck,p;k04p0;ee,pee;a0p,s;!h;!a,h,y;a5h2o1t0;af,f;rd up,w;atsoever,e1o0;a,ops;e,w;hoo,t;ery w06oi0L;gh,h0;! 0h,m;huh,oh;here nPsk,ut tut;h0ic;eesh,hh,it,oo;ff,h1l0ow,sst;ease,s,z;ew,ooey;h1i,mg,o0uch,w,y;h,o,ps;! 0h;hTmy go0wT;d,sh;a7evertheless,o0;!pe;eh,mm;ah,eh,m1ol0;!s;ao,fao;aCeBi9o2u0;h,mph,rra0zzC;h,y;l1o0;r6y9;la,y0;! 0;c1moCsmok0;es;ow;!p hip hoor0;ay;ck,e,llo,y;ha1i,lleluj0;ah;!ha;ah,ee4o1r0;eat scott,r;l1od0sh; grief,bye;ly;! whiz;ell;e0h,t cetera,ureka,ww,xcuse me;k,p;'oh,a0rat,uh;m0ng;mit,n0;!it;mon,o0;ngratulations,wabunga;a2oo1r0tw,ye;avo,r;!ya;h,m; 1h0ka,las,men,rgh,ye;!a,em,h,oy;la",Negative:"true¦n0;ever,o0;n,t",QuestionWord:"true¦how3wh0;at,e1ich,o0y;!m,se;n,re; come,'s",Reflexive:"true¦h4it5my5o1the0your2;ir1m1;ne3ur0;sel0;f,ves;er0im0;self",Plural:"true¦dick0gre0ones,records;ens","Unit|Noun":"true¦cEfDgChBinchAk9lb,m6newt5oz,p4qt,t1y0;ardEd;able1b0ea1sp;!l,sp;spo1;a,t,x;on9;!b,g,i1l,m,p0;h,s;!les;!b,elvin,g,m;!es;g,z;al,b;eet,oot,t;m,up0;!s",Value:"true¦a few",Imperative:"true¦bewa0come he0;re","Plural|Verb":"true¦leaves",Demonym:"true¦0:15;1:12;a0Vb0Oc0Dd0Ce08f07g04h02iYjVkTlPmLnIomHpEqatari,rCs7t5u4v3welAz2;am0Gimbabwe0;enezuel0ietnam0I;gAkrai1;aiwTex0hai,rinida0Ju2;ni0Prkmen;a5cotti4e3ingapoOlovak,oma0Spaniard,udRw2y0W;ede,iss;negal0Cr09;sh;mo0uT;o5us0Jw2;and0;a2eru0Fhilippi0Nortugu07uerto r0S;kist3lesti1na2raguay0;ma1;ani;ami00i2orweP;caragu0geri2;an,en;a3ex0Lo2;ngo0Drocc0;cedo1la2;gasy,y07;a4eb9i2;b2thua1;e0Cy0;o,t01;azakh,eny0o2uwaiI;re0;a2orda1;ma0Ap2;anO;celandic,nd4r2sraeli,ta01vo05;a2iB;ni0qi;i0oneU;aiAin2ondur0unO;di;amEe2hanai0reek,uatemal0;or2rm0;gi0;ilipino,ren8;cuadoVgyp4mira3ngli2sto1thiopi0urope0;shm0;ti;ti0;aPominUut3;a9h6o4roat3ub0ze2;ch;!i0;lom2ngol5;bi0;a6i2;le0n2;ese;lifor1m2na3;bo2eroo1;di0;angladeshi,el6o4r3ul2;gaE;azi9it;li2s1;vi0;aru2gi0;si0;fAl7merBngol0r5si0us2;sie,tr2;a2i0;li0;genti2me1;ne;ba1ge2;ri0;ni0;gh0r2;ic0;an",Organization:"true¦0:4Q;a3Tb3Bc2Od2He2Df27g1Zh1Ti1Pj1Nk1Ll1Gm12n0Po0Mp0Cqu0Br02sTtHuCv9w3xiaomi,y1;amaha,m1Bou1w1B;gov,tu3C;a4e2iki1orld trade organizati33;leaRped0O;lls fargo,st1;fie2Hinghou2R;l1rner br3U;gree3Jl street journ2Im1E;an halOeriz2Xisa,o1;dafo2Yl1;kswagMvo;b4kip,n2ps,s1;a tod3Aps;es3Mi1;lev3Fted natio3C;er,s; mobi32aco beRd bOe9gi frida3Lh3im horto3Amz,o1witt3D;shi49y1;ota,s r 05;e 1in lizzy;b3carpen3Jdaily ma3Dguess w2holli0s1w2;mashing pumpki35uprem0;ho;ea1lack eyed pe3Xyr0Q;ch bo3Dtl0;l2n3Qs1xas instrumen1U;co,la m1F;efoni0Kus;a8cientology,e5ieme2Ymirnoff,np,o3pice gir6quare0Ata1ubaru;rbuc1to34;ks;ny,undgard1;en;a2x pisto1;ls;g1Wrs;few2Minsbur31lesfor03msu2E;adiohead,b8e4o1yana3C;man empi1Xyal 1;b1dutch she4;ank;a3d 1max,vl20;bu1c2Ahot chili peppe2Ylobst2N;ll;ders dige1Ll madrid;c,s;ant3Aizn2Q;a8bs,e5fiz2Ihilip4i3r1;emier 1udenti1D;leagTo2K;nk floyd,zza hut; morrBs;psi2tro1uge0E;br33chi0Tn33;!co;lant2Un1yp16; 2ason27da2P;ld navy,pec,range juli2xf1;am;us;aAb9e6fl,h5i4o1sa,vid3wa;k2tre dame,vart1;is;ia;ke,ntendo,ss0QvZ;l,s;c,st1Otflix,w1; 1sweek;kids on the block,york0D;a,c;nd22s2t1;ional aca2Po,we0U;a,c02d0S;aDcdonalCe9i6lb,o3tv,y1;spa1;ce;b1Tnsanto,ody blu0t1;ley cr1or0T;ue;c2t1;as,subisO;helin,rosoft;dica2rcedes benz,talli1;ca;id,re;ds;cs milk,tt19z24;a3e1g,ittle caesa1P; ore09novo,x1;is,mark,us; 1bour party;pres0Dz boy;atv,fc,kk,lm,m1od1O;art;iffy lu0Roy divisi0Jpmorgan1sa;! cha09;bm,hop,k3n1tv;g,te1;l,rpol;ea;a5ewlett pack1Vi3o1sbc,yundai;me dep1n1P;ot;tac1zbollah;hi;lliburt08sbro;eneral 6hq,ithub,l5mb,o2reen d0Ou1;cci,ns n ros0;ldman sachs,o1;dye1g0H;ar;axo smith kli04encoW;electr0Nm1;oto0Z;a5bi,c barcelo4da,edex,i2leetwood m03o1rito l0G;rd,xcY;at,fa,nancial1restoZ; tim0;na;cebook,nnie mae;b0Asa,u3xxon1; m1m1;ob0J;!rosceptics;aiml0De5isney,o4u1;nkin donu2po0Zran dur1;an;ts;j,w jon0;a,f lepp12ll,peche mode,r spieg02stiny's chi1;ld;aJbc,hFiDloudflaCnn,o3r1;aigsli5eedence clearwater reviv1ossra09;al;c7inba6l4m1o0Est09;ca2p1;aq;st;dplSg1;ate;se;a c1o chanQ;ola;re;a,sco1tigroup;! systems;ev2i1;ck fil a,na daily;r1y;on;d2pital o1rls jr;ne;bury,ill1;ac;aEbc,eBf9l5mw,ni,o1p,rexiteeU;ei3mbardiIston 1;glo1pizza;be;ng;o2ue c1;roV;ckbuster video,omingda1;le; g1g1;oodriL;cht2e ge0rkshire hathaw1;ay;el;cardi,idu,nana republ3s1xt5y5;f,kin robbi1;ns;ic;bYcTdidSerosmith,iRlKmEnheuser busDol,ppleAr6s4u3v2y1;er;is,on;di,todesk;hland o1sociated E;il;b3g2m1;co;os;ys; compu1be0;te1;rs;ch;c,d,erican3t1;!r1;ak; ex1;pre1;ss; 5catel2ta1;ir;! lu1;ce1;nt;jazeera,qae1;da;g,rbnb;as;/dc,a3er,tivision1;! blizz1;ard;demy of scienc0;es;ba",Possessive:"true¦its,my,our0thy;!s","Noun|Verb":"true¦0:9W;1:AA;2:96;3:A3;4:9R;5:A2;6:9K;7:8N;8:7L;9:A8;A:93;B:8D;C:8X;a9Ob8Qc7Id6Re6Gf5Sg5Hh55i4Xj4Uk4Rl4Em40n3Vo3Sp2Squ2Rr21s0Jt02u00vVwGyFzD;ip,oD;ne,om;awn,e6Fie68;aOeMhJiHoErD;ap,e9Oink2;nd0rDuC;kDry,sh5Hth;!shop;ck,nDpe,re,sh;!d,g;e86iD;p,sD;k,p0t2;aDed,lco8W;r,th0;it,lk,rEsDt4ve,x;h,te;!ehou1ra9;aGen5FiFoD;iDmAte,w;ce,d;be,ew,sA;cuum,l4B;pDr7;da5gra6Elo6A;aReQhrPiOoMrGuEwiDy5Z;n,st;nDrn;e,n7O;aGeFiEoDu6;t,ub2;bu5ck4Jgg0m,p;at,k,nd;ck,de,in,nsDp,v7J;f0i8R;ll,ne,p,r4Yss,t94uD;ch,r;ck,de,e,le,me,p,re;e5Wow,u6;ar,e,ll,mp0st,xt;g,lDng2rg7Ps5x;k,ly;a0Sc0Ne0Kh0Fi0Dk0Cl0Am08n06o05pXquaBtKuFwD;ea88iD;ng,pe,t4;bGit,m,ppErD;fa3ge,pri1v2U;lDo6S;e6Py;!je8;aMeLiKoHrEuDy2;dy,ff,mb2;a85eEiDo5Pugg2;ke,ng;am,ss,t4;ckEop,p,rD;e,m;ing,pi2;ck,nk,t4;er,m,p;ck,ff,ge,in,ke,lEmp,nd,p2rDte,y;!e,t;k,l;aJeIiHlGoFrDur,y;ay,e56inDu3;g,k2;ns8Bt;a5Qit;ll,n,r87te;ed,ll;m,n,rk;b,uC;aDee1Tow;ke,p;a5Je4FiDo53;le,rk;eep,iDou4;ce,p,t;ateboa7Ii;de,gnDl2Vnk,p,ze;!al;aGeFiEoDuff2;ck,p,re,w;ft,p,v0;d,i3Ylt0;ck,de,pe,re,ve;aEed,nDrv1It;se,t2N;l,r4t;aGhedu2oBrD;aEeDibb2o3Z;en,w;pe,t4;le,n,r2M;cDfegua72il,mp2;k,rifi3;aZeHhy6LiGoEuD;b,in,le,n,s5X;a6ck,ll,oDpe,u5;f,t;de,ng,ot,p,s1W;aTcSdo,el,fQgPje8lOmMnLo17pJque6sFturn,vDwa6V;eDi27;al,r1;er74oFpe8tEuD;lt,me;!a55;l71rt;air,eaDly,o53;l,t;dezvo2Zt;aDedy;ke,rk;ea1i4G;a6Iist0r5N;act6Yer1Vo71uD;nd,se;a38o6F;ch,s6G;c1Dge,iEke,lly,nDp1Wt1W;ge,k,t;n,se;es6Biv0;a04e00hYiXlToNrEsy4uD;mp,n4rcha1sh;aKeIiHoDu4O;be,ceFdu3fi2grDje8mi1p,te6;amDe6W;!me;ed,ss;ce,de,nt;sDy;er6Cs;cti3i1;iHlFoEp,re,sDuCw0;e,i5Yt;l,p;iDl;ce,sh;nt,s5V;aEce,e32uD;g,mp,n7;ce,nDy;!t;ck,le,n17pe,tNvot;a1oD;ne,tograph;ak,eFnErDt;fu55mA;!c32;!l,r;ckJiInHrFsEtDu1y;ch,e9;s,te;k,tD;!y;!ic;nt,r,se;!a7;bje8ff0il,oErDutli3Qver4B;bAd0ie9;ze;a4ReFoDur1;d,tD;e,i3;ed,gle8tD;!work;aMeKiIoEuD;rd0;ck,d3Rld,nEp,uDve;nt,th;it5EkD;ey;lk,n4Brr5CsDx;s,ta2B;asuBn4UrDss;ge,it;il,nFp,rk3WsEtD;ch,t0;h,k,t0;da5n0oeuvB;aLeJiHoEuD;mp,st;aEbby,ck,g,oDve;k,t;d,n;cDe,ft,mAnIst;en1k;aDc0Pe4vK;ch,d,k,p,se;bFcEnd,p,t4uD;gh,n4;e,k;el,o2U;eEiDno4E;ck,d,ll,ss;el,y;aEo1OuD;i3mp;m,zz;mpJnEr46ssD;ue;c1Rdex,fluGha2k,se2HteDvoi3;nt,rD;e6fa3viD;ew;en3;a8le2A;aJeHiGoEuD;g,nt;l3Ano2Dok,pDr1u1;!e;ghli1Fke,nt,re,t;aDd7lp;d,t;ck,mGndFrEsh,tDu9;ch,e;bo3Xm,ne4Eve6;!le;!m0;aMear,ift,lKossJrFuD;arDe4Alp,n;antee,d;aFiEoDumb2;uCwth;ll,nd,p;de,sp;ip;aBoDue;ss,w;g,in,me,ng,s,te,ze;aZeWiRlNoJrFuD;ck,el,nDss,zz;c38d;aEoDy;st,wn;cDgme,me,nchi1;tuB;cFg,il,ld,rD;ce,e29mDwa31;!at;us;aFe0Vip,oDy;at,ck,od,wD;!er;g,ke,me,re,sh,vo1E;eGgFlEnDre,sh,t,x;an3i0Q;e,m,t0;ht,uB;ld;aEeDn3;d,l;r,tuB;ce,il,ll,rm,vo2W;cho,d7ffe8nMsKxFyeD;!baD;ll;cGerci1hFpDtra8;eriDo0W;en3me9;au6ibA;el,han7u1;caDtima5;pe;count0d,vy;a01eSiMoJrEuDye;b,el,mp,pli2X;aGeFiEoD;ne,p;ft,ll,nk,p,ve;am,ss;ft,g,in;cEd7ubt,wnloD;ad;k,u0E;ge6p,sFt4vD;e,iDor3;de;char7gui1h,liEpD;at4lay,u5;ke;al,bKcJfeIlGmaCposAsEtaD;il;e07iD;gn,re;ay,ega5iD;ght;at,ct;li04rea1;a5ut;b,ma7n3rDte;e,t;a0Eent0Dh06irc2l03oKrFuD;be,e,rDt;b,e,l,ve;aGeFoEuDy;sh;p,ss,wd;dAep;ck,ft,sh;at,de,in,lTmMnFordina5py,re,st,uDv0;gh,nDp2rt;s01t;ceHdu8fli8glomeIsFtDveN;a8rD;a6ol;e9tru8;ct;ntDrn;ra5;bHfoGmFpD;leDouCromi1;me9;aCe9it,u5;rt;at,iD;ne;lap1oD;r,ur;aEiDoud,ub;ck,p;im,w;aEeDip;at,ck,er;iGllen7nErD;ge,m,t;ge,nD;el;n,r;er,re;ke,ll,mp,noe,pGrXsFtEuDve;se,ti0I;alog,ch;h,t;!tuB;re;a03eZiXlToPrHuEyD;pa11;bb2ck2dgEff0mp,rDst,zz;den,n;et;anJeHiFoadEuD;i1sh;ca6;be,d7;ge;aDed;ch,k;ch,d;aFg,mb,nEoDrd0tt2x,ycott;k,st,t;d,e;rd,st;aFeCiDoYur;nk,tz;nd;me;as,d,ke,nd,opsy,tD;!ch,e;aFef,lt,nDt;d,efA;it;r,t;ck,il,lan3nIrFsEtt2;le;e,h;!gDk;aDe;in;!d,g,k;bu1c05dZge,iYlVnTppQrLsIttGucEwaD;rd;tiD;on;aDempt;ck;k,sD;i6ocia5;st;chFmD;!oD;ur;!iD;ve;eEroa4;ch;al;chDg0sw0;or;aEt0;er;rm;d,m,r;dreHvD;an3oD;ca5;te;ce;ss;cDe,he,t;eFoD;rd,u9;nt;nt,ss;se",Actor:"true¦0:7B;1:7G;2:6A;3:7F;4:7O;5:7K;a6Nb62c4Ud4Be41f3Sg3Bh30i2Uj2Qkin2Pl2Km26n1Zo1Sp0Vqu0Tr0JsQtJuHvEw8yo6;gi,ut6;h,ub0;aAe9i8o7r6;estl0it0;m2rk0;fe,nn0t2Bza2H;atherm2ld0;ge earn0it0nder0rri1;eter7i6oyF;ll5Qp,s3Z;an,ina2U;n6s0;c6Uder03;aoisea23e9herapi5iktok0o8r6ut1yco6S;a6endseLo43;d0mp,nscri0Bvel0;ddl0u1G;a0Qchn7en6na4st0;ag0;i3Oo0D;aiXcUeRhPiMki0mu26oJpGquaFtBu7wee6;p0theart;lt2per7r6;f0ge6Iviv1;h6inten0Ist5Ivis1;ero,um2;a8ep7r6;ang0eam0;bro2Nc2Ofa2Nmo2Nsi20;ff0tesm2;tt0;ec7ir2Do6;kesp59u0M;ia5Jt3;l7me6An,rcere6ul;r,ss;di0oi5;n7s6;sy,t0;g0n0;am2ephe1Iow6;girl,m2r2Q;cretInior cit3Fr6;gea4v6;a4it1;hol4Xi7reen6ulpt1;wr2C;e01on;l1nt;aEe9o8u6;l0nn6;er up,ingE;g40le mod3Zof0;a4Zc8fug2Ppo32searQv6;ere4Uolution6;ary;e6luYru22;ptio3T;bbi,dic5Vpp0;arter6e2Z;back;aYeWhSiRlOoKr8sycho7u6;nk,p31;logi5;aGeDiBo6;d9fess1g7ph47s6;pe2Ktitu51;en6ramm0;it1y;igy,uc0;est4Nme mini0Unce6s3E;!ss;a7si6;de4;ch0;ctiti39nk0P;dca0Oet,li6pula50rnst42;c2Itic6;al scie6i2;nti5;a6umb0;nn0y6;er,ma4Lwright;lgrim,one0;a8iloso7otogra7ra6ysi1V;se;ph0;ntom,rmaci5;r6ssi1T;form0s4O;i3El,nel3Yr8st1tr6wn;i6on;arWot;ent4Wi42tn0;ccupa4ffBp8r7ut6;ca5l0B;ac4Iganiz0ig2Fph2;er3t6;i1Jomet6;ri5;ic0spring;aBe9ie4Xo7u6;n,rser3J;b6mad,vi4V;le2Vo4D;i6mesis,phew;ce,ghb1;nny,rr3t1X;aEeDiAo7u6yst1Y;m8si16;der3gul,m7n6th0;arDk;!my;ni7s6;f02s0Jt0;on,st0;chan1Qnt1rcha4;gi9k0n8rtyr,t6y1;e,riar6;ch;ag0iac;ci2stra3I;a7e2Aieutena4o6;rd,s0v0;bor0d7ndlo6ss,urea3Fwy0ym2;rd;!y;!s28;e8o7u6;ggl0;gg0urna2U;st0;c3Hdol,llu3Ummigra4n6; l9c1Qfa4habi42nov3s7ve6;nt1stig3;pe0Nt6;a1Fig3ru0M;aw;airFeBistoAo8u6ygie1K;man6sba2H;!ita8;bo,st6usekN;age,e3P;ri2;ir,r6;m7o6;!ine;it;dress0sty2C;aLeIhostGirl26ladi3oCrand7u6;e5ru;c9daug0Jfa8m7pa6s2Y;!re4;a,o6;th0;hi1B;al7d6lf0;!de3A;ie,k6te26;eep0;!wr6;it0;isha,n6;i6tl04;us;mbl0rden0;aDella,iAo7r6;eela2Nie1P;e,re6ster pare4;be1Hm2r6st0;unn0;an2ZgZlmm17nanci0r6tt0;e6st la2H; marsh2OfigXm2;rm0th0;conoEdDlectriCm8n7x6;amin0cellency,i2A;emy,trepreneur,vironmenta1J;c8p6;er1loye6;e,r;ee;ci2;it1;mi5;aKeBi8ork,ri7u6we02;de,tche2H;ft0v0;ct3eti7plom2Hre6va;ct1;ci2ti2;aDcor3fencCi0InAput9s7tectLvel6;op0;ce1Ge6ign0;rt0;ee,y;iz6;en;em2;c1Ml0;d8nc0redev7ug6;ht0;il;!dy;a06e04fo,hXitizenWlToBr9u6;r3stomer6;! representat6;ive;e3it6;ic;lJmGnAord9rpor1Nu7w6;boy,ork0;n6ri0;ciTte1Q;in3;fidantAgressSs9t6;e0Kr6;ibut1o6;ll0;tab13ul1O;!e;edi2m6pos0rade;a0EeQissi6;on0;leag8on7um6;ni5;el;ue;e6own;an0r6;ic,k;!s;a9e7i6um;ld;erle6f;ad0;ir7nce6plFract0;ll1;m2wI;lebri6o;ty;dBptAr6shi0;e7pe6;nt0;r,t6;ak0;ain;et;aMeLiJlogg0oErBu6;dd0Fild0rgl9siness6;m2p7w6;om2;ers05;ar;i7o6;!k0th0;cklay0de,gadi0;hemi2oge8y6;!frie6;nd;ym2;an;cyc6sR;li5;atbox0ings;by,nk0r6;b0on7te6;nd0;!e07;c04dWge4nQpLrHsFtAu7yatull6;ah;nt7t6;h1oG;!ie;h8t6;e6orney;nda4;ie5le6;te;sis00tron6;aut,om0;chbis8isto7tis6;an,t;crU;hop;ost9p6;ari6rentiS;ti6;on;le;a9cest1im3nou8y6;bo6;dy;nc0;ly5rc6;hi5;mi8v6;entur0is1;er;ni7r6;al;str3;at1;or;counBquaintanArob9t6;ivi5or,re6;ss;st;at;ce;ta4;nt","Adj|Noun":"true¦0:16;a1Db17c0Ud0Re0Mf0Dg0Ah08i06ju05l02mWnUoSpNrIsBt7u4v1watershed;a1ision0Z;gabo4nilla,ria1;b0Vnt;ndergr1pstairs;adua14ou1;nd;a3e1oken,ri0;en,r1;min0rori13;boo,n;age,e5ilv0Flack,o3quat,ta2u1well;bordina0Xper5;b0Lndard;ciali0Yl1vereign;e,ve16;cret,n1ri0;ior;a4e2ou1ubbiL;nd,tiY;ar,bBl0Wnt0p1side11;resent0Vublican;ci0Qsh;a4eriodic0last0Zotenti0r1;emi2incip0o1;!fession0;er,um;rall4st,tie0U;ff1pposi0Hv0;ens0Oi0C;agg01ov1uts;el;a5e3iniatJo1;bi01der07r1;al,t0;di1tr0N;an,um;le,riG;attOi2u1;sh;ber0ght,qC;stice,veniT;de0mpressioYn1;cumbe0Edividu0no0Dsta0Eterim;alf,o1umdrum;bby,melF;en2old,ra1;ph0Bve;er0ious;a7e5i4l3u1;git03t1;ure;uid;ne;llow,m1;aFiL;ir,t,vo1;riOuriO;l3p00x1;c1ecutUpeV;ess;d1iK;er;ar2e1;mographUrivO;k,l2;hiGlassSo2rude,unn1;ing;m5n1operK;creCstitueOte2vertab1;le;mpor1nt;ary;ic,m2p1;anion,lex;er2u1;ni8;ci0;al;e5lank,o4r1;i2u1;te;ef;ttom,urgeois;st;cadem9d6l2ntarct9r1;ab,ct8;e3tern1;at1;ive;rt;oles1ult;ce1;nt;ic","Adj|Past":"true¦0:4Q;1:4C;2:4H;3:4E;a44b3Tc36d2Je29f20g1Wh1Si1Jj1Gkno1Fl1Am15n12o0Xp0Mqu0Kr08sLtEuAv9w4yellow0;a7ea6o4rinkl0;r4u3Y;n,ri0;k31th3;rp0sh0tZ;ari0e1O;n5p4s0;d1li1Rset;cov3derstood,i4;fi0t0;a8e3Rhr7i6ouTr4urn0wi4C;a4imm0ou2G;ck0in0pp0;ed,r0;eat2Qi37;m0nn0r4;get0ni2T;aOcKeIhGimFm0Hoak0pDt7u4;bsid3Ogge44s4;pe4ta2Y;ct0nd0;a8e7i2Eok0r5u4;ff0mp0nn0;ength2Hip4;ed,p0;am0reotyp0;in0t0;eci4ik0oH;al3Efi0;pRul1;a4ock0ut;d0r0;a4c1Jle2t31;l0s3Ut0;a6or5r4;at4e25;ch0;r0tt3;t4ut0;is2Mur1;aEe5o4;tt0;cAdJf2Bg9je2l8m0Knew0p7qu6s4;eTpe2t4;or0ri2;e3Dir0;e1lac0;at0e2Q;i0Rul1;eiv0o4ycl0;mme2Lrd0v3;in0lli0ti2A;a4ot0;li28;aCer30iBlAo9r5u4;mp0zzl0;e6i2Oo4;ce2Fd4lo1Anou30pos0te2v0;uc0;fe1CocCp0Iss0;i2Kli1L;ann0e2CuS;ck0erc0ss0;ck0i2Hr4st0;allLk0;bse7c6pp13rgan2Dver4;lo4whelm0;ok0;cupi0;rv0;aJe5o4;t0uri1A;ed0gle2;a6e5ix0o4ut0ys1N;di1Nt15u26;as0Clt0;n4rk0;ag0ufact0A;e6i5o4;ad0ck0st,v0;cens0m04st0;ft,v4;el0;tt0wn;a5o15u4;dg0s1B;gg0;llumSmpAn4sol1;br0cre1Ldebt0f8jZspir0t5v4;it0olv0;e4ox0Y;gr1n4re23;d0si15;e2l1o1Wuri1;li0o01r4;ov0;a6e1o4um03;ok0r4;ri0Z;mm3rm0;i6r5u4;a1Bid0;a0Ui0Rown;ft0;aAe9i8l6oc0Ir4;a4i0oz0Y;ctHg19m0;avo0Ju4;st3;ni08tt0x0;ar0;d0il0sc4;in1;dCl1mBn9quipp0s8x4;agger1c6p4te0T;a0Se4os0;ct0rie1D;it0;cap0tabliZ;cha0XgFha1As4;ur0;a0Zbarra0N;i0Buc1;aMeDi5r4;a01i0;gni08miniSre2s4;a9c6grun0Ft4;o4re0Hu17;rt0;iplWou4;nt0r4;ag0;bl0;cBdRf9l8p7ra6t5v4;elop0ot0;ail0ermQ;ng0;re07;ay0ight0;e4in0o0M;rr0;ay0enTor1;m5t0z4;ed,zl0;ag0p4;en0;aPeLhIlHo9r6u4;lt4r0stom03;iv1;a5owd0u4;sh0;ck0mp0;d0loAm7n4ok0v3;centr1f5s4troC;id3olid1;us0;b5pl4;ic1;in0;r0ur0;assi9os0utt3;ar5i4;ll0;g0m0;lebr1n6r4;ti4;fi0;tralJ;g0lcul1;aDewild3iCl9o7r5urn4;ed,t;ok4uis0;en;il0r0t4und;tl0;e5i4;nd0;ss0;as0;ffl0k0laMs0tt3;bPcNdKfIg0lFmaz0nDppBrm0ss9u5wa4;rd0;g5thor4;iz0;me4;nt0;o6u4;m0r0;li0re4;ci1;im1ticip1;at0;a5leg0t3;er0;rm0;fe2;ct0;ju5o7va4;nc0;st0;ce4knowledg0;pt0;and5so4;rb0;on0;ed",Singular:"true¦0:5J;1:5H;2:4W;3:4S;4:52;5:57;6:5L;7:56;8:5B;a52b4Lc3Nd35e2Xf2Og2Jh28in24j23k22l1Um1Ln1Ho1Bp0Rqu0Qr0FsZtMuHvCw9x r58yo yo;a9ha3Po3Q;f3i4Rt0Gy9;! arou39;arCeAideo ga2Qo9;cabu4Jl5C;gOr9t;di4Zt1Y;iety,ni4P;nBp30rAs 9;do43s5E;bani1in0;coordinat3Ader9;estima1to24we41; rex,aKeJhHiFoErBuAv9;! show;m2On2rntLto1D;agedy,ib9o4E;e,u9;n0ta46;ni1p2rq3L;c,er,m9;etF;ing9ree26;!y;am,mp3F;ct2le6x return;aNcMeKhor4QiJkHoGpin off,tDuBy9;ll9ner7st4T;ab2X;b9i1n28per bowl,rro1X;st3Ltot0;atAipe2Go1Lrate7udent9;! lo0I;i39u1;ft ser4Lmeo1I;elet5i9;ll,r3V;b38gn2Tte;ab2Jc9min3B;t,urity gua2N;e6ho2Y;bbatic0la3Jndwi0Qpi5;av5eDhetor2iAo9;de6om,w;tAv9;erb2C;e,u0;bDcBf9publ2r10spi1;er9orm3;e6r0;i9ord label;p2Ht0;a1u46;estion mark,ot2F;aPeMhoLiIlGoErAu9yram1F;ddi3HpErpo1Js3J;eBo9;bl3Zs9;pe3Jta1;dic1Rmi1Fp1Qroga8ss relea1F;p9rt0;py;a9ebisci1;q2Dte;cn2eAg9;!gy;!r;ne call,tocoK;anut,dAr9t0yo1;cen3Jsp3K;al,est0;nop4rAt9;e,hog5;adi11i2V;atme0bj3FcBpia1rde0thers,utspok5ve9wn3;n,r9;ti0Pview;cuAe9;an;pi3;arBitAot9umb3;a2Fhi2R;e,ra1;cot2ra8;aFeCiAo9ur0;nopo4p18rni2Nsq1Rti36uld;c,li11n0As9tt5;chief,si34;dAnu,t9;al,i3;al,ic;gna1mm0nd15rsupi0te9yf4;ri0;aDegCiBu9;ddi1n9;ch;me,p09; Be0M;bor14y9; 9er;up;eyno1itt5;el4ourn0;cBdices,itia8ni25sAtel0Lvert9;eb1J;e28titu1;en8i2T;aIeEighDoAu9;man right,s22;me9rmoFsp1Ftb0K;! r9;un; scho0YriY;a9i1N;d9v5; start,pho9;ne;ndful,sh brown,v5ze;aBelat0Ilaci3r9ul4yp1S;an9enadi3id;a1Cd slam,ny;df4r9;l2ni1I;aGeti1HiFlu1oCrAun9;er0;ee market,i9onti3;ga1;l4ur9;so9;me;ePref4;br2mi4;conoFffi7gg,lecto0Rmbas1EnCpidem2s1Zth2venBxAyel9;id;ampZempl0Nte6;i19t;er7terp9;ri9;se;my;eLiEoBr9ump tru0U;agonf4i9;er,ve thru;cAg7i4or,ssi3wn9;side;to0EumenE;aEgniDnn3sAvide9;nd;conte6incen8p9tri11;osi9;ti0C;ta0H;le0X;athBcAf9ni0terre6;ault 05err0;al,im0;!b9;ed;aWeThMiLlJoDr9;edit caBuc9;ib9;le;rd;efficDke,lCmmuniqLnsApi3rr0t0Xus9yo1;in;erv9uI;ato02;ic,lQ;ie6;er7i9oth;e6n2;ty,vil wM;aDeqCick5ocoBr9;istmas car9ysanthemum;ol;la1;ue;ndeli3racteri9;st2;iAllEr9;e0tifica1;liZ;hi3nFpErCt9ucus;erpi9hedr0;ll9;ar;!bohyd9ri3;ra1;it0;aAe,nib0t9;on;l,ry;aMeLiop2leJoHrDu9;nny,r9tterf4;g9i0;la9;ry;eakAi9;ck;fa9throB;st;dy,ro9wl;ugh;mi9;sh;an,l4;nkiArri3;er;ng;cSdMlInFppeti1rDsBtt2utop9;sy;ic;ce6pe9;ct;r9sen0;ay;ecAoma4tiA;ly;do1;i5l9;er7y;gy;en; hominDjAvan9;tage;ec8;ti9;ve;em;cCeAqui9;tt0;ta1;te;iAru0;al;de6;nt","Person|Noun":"true¦a0Eb07c03dWeUfQgOhLjHkiGlFmCnBolive,p7r4s3trini06v1wa0;ng,rd,tts;an,enus,iol0;a,et;ky,onPumm09;ay,e1o0uby;bin,d,se;ed,x;a2e1o0;l,tt04;aLnJ;dYge,tR;at,orm;a0eloW;t0x,ya;!s;a9eo,iH;ng,tP;a2e1o0;lGy;an,w3;de,smi4y;a0erb,iOolBuntR;ll,z0;el;ail,e0iLuy;ne;a1ern,i0lo;elds,nn;ith,n0;ny;a0dEmir,ula,ve;rl;a4e3i1j,ol0;ly;ck,x0;ie;an,ja;i0wn;sy;am,h0liff,rystal;a0in,ristian;mbers,ri0;ty;a4e3i2o,r0ud;an0ook;dy;ll;nedict,rg;k0nks;er;l0rt;fredo,ma","Actor|Verb":"true¦aCb8c5doctor,engineAfool,g3host,judge,m2nerd,p1recruit,scout,ushAvolunteAwi0;mp,tneA;arent,ilot;an,ime;eek,oof,r0uide;adu8oom;ha1o0;ach,nscript,ok;mpion,uffeur;o2u0;lly,tch0;er;ss;ddi1ffili0rchite1;ate;ct",MaleName:"true¦0:H6;1:FZ;2:DS;3:GQ;4:CZ;5:FV;6:GM;7:FP;8:GW;9:ET;A:C2;B:GD;aF8bE1cCQdBMeASfA1g8Yh88i7Uj6Sk6Bl5Mm48n3So3Ip33qu31r26s1Et0Ru0Ov0CwTxSyHzC;aCor0;cChC1karia,nAT;!hDkC;!aF6;!ar7CeF5;aJevgenBSoEuC;en,rFVsCu3FvEF;if,uf;nDs6OusC;ouf,s6N;aCg;s,tC;an,h0;hli,nCrosE1ss09;is,nC;!iBU;avi2ho5;aPeNiDoCyaEL;jcieBJlfgang,odrFutR;lFnC;f8TsC;lCt1;ow;bGey,frEhe4QlC;aE5iCy;am,e,s;ed8iC;d,ed;eAur;i,ndeD2rn2sC;!l9t1;lDyC;l1ne;lDtC;!er;aCHy;aKernDAiFladDoC;jteB0lodymyr;!iC;mFQsDB;cFha0ktBZnceDrgCOvC;a0ek;!nC;t,zo;!e4StBV;lCnC7sily;!entC;in9J;ghE2lCm70nax,ri,sm0;riCyss87;ch,k;aWeRhNiLoGrEuDyC;!l2roEDs1;n6r6E;avD0eCist0oy,um0;ntCRvBKy;bFdAWmCny;!asDmCoharu;aFFie,y;!z;iA6y;mCt4;!my,othy;adEeoDia0SomC;!as;!dor91;!de4;dFrC;enBKrC;anBJeCy;ll,nBI;!dy;dgh,ha,iCnn2req,tsu5V;cDAka;aYcotWeThPiMlobod0oKpenc2tEurDvenAEyCzym1;ed,lvest2;aj,e9V;anFeDuC;!aA;fan17phEQvCwaA;e77ie;!islaCl9;v,w;lom1rBuC;leymaDHta;dDgmu9UlCm1yabonga;as,v8B;!dhart8Yn9;aEeClo75;lCrm0;d1t1;h9Jne,qu1Jun,wn,yne;aDbastiEDk2Yl5Mpp,rgCth,ymoCU;e1Dio;m4n;!tC;!ie,y;eDPlFmEnCq67tosCMul;dCj2UtiA5;e01ro;!iATkeB6mC4u5;!ik,vato9K;aZeUheC8iRoGuDyC;an,ou;b99dDf4peAssC;!elEG;ol00y;an,bLc7MdJel,geIh0lHmGnEry,sDyC;!ce;ar7Ocoe,s;!aCnBU;ld,n;an,eo;a7Ef;l7Jr;e3Eg2n9olfo,riC;go;bBNeDH;cCl9;ar87c86h54kCo;!ey,ie,y;cFeA3gDid,ubByCza;an8Ln06;g85iC;naC6s;ep;ch8Kfa5hHin2je8HlGmFndEoHpha5sDul,wi36yC;an,mo8O;h9Im4;alDSol3O;iD0on;f,ph;ul;e9CinC;cy,t1;aOeLhilJiFrCyoG;aDeC;m,st1;ka85v2O;eDoC;tr;r8GtC;er,ro;!ipCl6H;!p6U;dCLrcy,tC;ar,e9JrC;!o7;b9Udra8So9UscAHtri62ulCv8I;!ie,o7;ctav6Ji2lImHndrBRrGsDtCum6wB;is,to;aDc6k6m0vCwaBE;al79;ma;i,vR;ar,er;aDeksandr,ivC;er,i2;f,v;aNeLguyBiFoCu3O;aDel,j4l0ma0rC;beAm0;h,m;cFels,g5i9EkDlC;es,s;!au,h96l78olaC;!i,y;hCkCol76;ol75;al,d,il,ls1vC;ilAF;hom,tC;e,hC;anCy;!a5i5;aYeViLoGuDyC;l4Nr1;hamDr84staC;fa,p6E;ed,mG;di10e,hamEis4JntDritz,sCussa;es,he;e,y;ad,ed,mC;ad,ed;cGgu5hai,kFlEnDtchC;!e8O;a9Pik;house,o7t1;ae73eC3ha8Iolaj;ah,hDkC;!ey,y;aDeC;al,l;el,l;hDlv3rC;le,ri8Ev4T;di,met;ay0c00gn4hWjd,ks2NlTmadZnSrKsXtDuric7VxC;imilBKwe8B;eHhEi69tCus,y69;!eo,hCia7;ew,i67;eDiC;as,eu,s;us,w;j,o;cHiGkFlEqu8Qsha83tCv3;iCy;!m,n;in,on;el,o7us;a6Yo7us;!elCin,o7us;!l8o;frAEi5Zny,u5;achDcoCik;lm;ai,y;amDdi,e5VmC;oud;adCm6W;ou;aulCi9P;ay;aWeOiMloyd,oJuDyC;le,nd1;cFdEiDkCth2uk;a7e;gi,s,z;ov7Cv6Hw6H;!as,iC;a6Een;g0nn52renDuCvA4we7D;!iS;!zo;am,n4oC;n5r;a9Yevi,la5KnHoFst2thaEvC;eCi;nte;bo;nCpo8V;!a82el,id;!nC;aAy;mEnd1rDsz73urenCwr6K;ce,t;ry,s;ar,beAont;aOeIhalHiFla4onr63rDu5SylC;e,s;istCzysztof;i0oph2;er0ngsl9p,rC;ilA9k,ollos;ed,id;en0iGnDrmCv4Z;it;!dDnCt1;e2Ny;ri4Z;r,th;cp2j4mEna8BrDsp6them,uC;ri;im,l;al,il;a03eXiVoFuC;an,lCst3;en,iC;an,en,o,us;aQeOhKkub4AnIrGsDzC;ef;eDhCi9Wue;!ua;!f,ph;dCge;i,on;!aCny;h,s,th6J;anDnC;!ath6Hie,n72;!nC;!es;!l,sCy;ph;o,qu3;an,mC;!i,m6V;d,ffFns,rCs4;a7JemDmai7QoCry;me,ni1H;i9Dy;!e73rC;ey,y;cKdBkImHrEsDvi2yC;dBs1;on,p2;ed,oDrCv67;e6Qod;d,s61;al,es5Wis1;a,e,oCub;b,v;ob,qu13;aTbNchiMgLke53lija,nuKonut,rIsEtCv0;ai,suC;ki;aDha0i8XmaCsac;el,il;ac,iaC;h,s;a,vinCw3;!g;k,nngu6X;nac1Xor;ka;ai,rahC;im;aReLoIuCyd6;beAgGmFsC;eyDsC;a3e3;in,n;ber5W;h,o;m2raDsse3wC;a5Pie;c49t1K;a0Qct3XiGnDrC;beAman08;dr7VrC;iCy2N;!k,q1R;n0Tt3S;bKlJmza,nIo,rEsDyC;a5KdB;an,s0;lEo67r2IuCv9;hi5Hki,tC;a,o;an,ey;k,s;!im;ib;a08e00iUlenToQrMuCyorgy;iHnFsC;!taC;f,vC;!e,o;n6tC;er,h2;do,lC;herDlC;auCerQ;me;aEegCov2;!g,orC;!io,y;dy,h7C;dfr9nza3XrDttfC;ri6C;an,d47;!n;acoGlEno,oCuseppe;rgiCvan6O;!o,s;be6Ies,lC;es;mo;oFrC;aDha4HrC;it,y;ld,rd8;ffErgC;!e7iCy;!os;!r9;bElBrCv3;eCla1Nr4Hth,y;th;e,rC;e3YielC;!i4;aXeSiQlOorrest,rCyod2E;aHedFiC;edDtC;s,z;ri18;!d42eri11riC;ck,k;nCs2;cEkC;ie,lC;in,yn;esLisC;!co,z3M;etch2oC;ri0yd;d5lConn;ip;deriFliEng,rC;dinaCg4nan0B;nd8;pe,x;co;bCdi,hd;iEriC;ce,zC;io;an,en,o;benez2dZfrYit0lTmMnJo3rFsteb0th0ugenEvCymBzra;an,eCge4D;ns,re3K;!e;gi,iDnCrol,v3w3;est8ie,st;cCk;!h,k;o0DriCzo;co,qC;ue;aHerGiDmC;aGe3A;lCrh0;!iC;a10o,s;s1y;nu5;beAd1iEliDm2t1viCwood;n,s;ot28s;!as,j5Hot,sC;ha;a3en;!dGg6mFoDua2QwC;a2Pin;arC;do;oZuZ;ie;a04eTiOmitrNoFrag0uEwDylC;an,l0;ay3Hig4D;a3Gdl9nc0st3;minFnDri0ugCvydGy2S;!lF;!a36nCov0;e1Eie,y;go,iDykC;as;cCk;!k;i,y;armuFetDll1mitri7neCon,rk;sh;er,m6riC;ch;id;andLepak,j0lbeAmetri4nIon,rGsEvDwCxt2;ay30ey;en,in;hawn,moC;nd;ek,riC;ck;is,nC;is,y;rt;re;an,le,mKnIrEvC;e,iC;!d;en,iEne0PrCyl;eCin,yl;l45n;n,o,us;!iCny;el,lo;iCon;an,en,on;a0Fe0Ch03iar0lRoJrFuDyrC;il,us;rtC;!is;aEistC;iaCob12;no;ig;dy,lInErC;ey,neliCy;s,us;nEor,rDstaC;nt3;ad;or;by,e,in,l3t1;aHeEiCyde;fCnt,ve;fo0Xt1;menDt4;us;s,t;rFuDyC;!t1;dCs;e,io;enC;ce;aHeGrisC;!toC;phCs;!eC;!r;st2t;d,rCs;b5leC;s,y;cDdrCs6;ic;il;lHmFrC;ey,lDroCy;ll;!o7t1;er1iC;lo;!eb,v3;a09eZiVjorn,laUoSrEuCyr1;ddy,rtKst2;er;aKeFiEuDyC;an,ce,on;ce,no;an,ce;nDtC;!t;dDtC;!on;an,on;dFnC;dDisC;lav;en,on;!foOl9y;bby,gd0rCyd;is;i0Lke;bElDshC;al;al,lL;ek;nIrCshoi;at,nEtC;!raC;m,nd;aDhaCie;rd;rd8;!iDjam3nCs1;ie,y;to;kaMlazs,nHrC;n9rDtC;!holomew;eCy;tt;ey;dCeD;ar,iC;le;ar1Nb1Dd16fon15gust3hm12i0Zja0Yl0Bm07nTputsiSrGsaFugustEveDyCziz;a0kh0;ry;o,us;hi;aMchiKiJjun,mHnEon,tCy0;em,hCie,ur8;ur;aDoC;!ld;ud,v;aCin;an,nd8;!el,ki;baCe;ld;ta;aq;aMdHgel8tCw6;hoFoC;iDnC;!i8y;ne;ny;er7rCy;eDzC;ej;!as,i,j,s,w;!s;s,tolC;iCy;!y;ar,iEmaCos;nu5r;el;ne,r,t;aVbSdBeJfHiGl01onFphonsEt1vC;aPin;on;e,o;so,zo;!sR;!onZrC;ed;c,jaHksFssaHxC;!andC;er,rC;e,os,u;andCei;ar,er,r;ndC;ro;en;eDrecC;ht;rt8;dd3in,n,sC;taC;ir;ni;dDm6;ar;an,en;ad,eC;d,t;in;so;aGi,olErDvC;ik;ian8;f8ph;!o;mCn;!a;dGeFraDuC;!bakr,lfazl;hCm;am;!l;allFel,oulaye,ulC;!lDrahm0;an;ah,o;ah;av,on",Uncountable:"true¦0:2E;1:2L;2:33;a2Ub2Lc29d22e1Rf1Ng1Eh16i11j0Yk0Wl0Rm0Hn0Do0Cp03rZsLt9uran2Jv7w3you gu0E;a5his17i4oo3;d,l;ldlife,ne;rm8t1;apor,ernacul29i3;neg28ol1Otae;eDhBiAo8r4un3yranny;a,gst1B;aff2Oea1Ko4ue nor3;th;o08u3;bleshoot2Ose1Tt;night,othpas1Vwn3;foEsfoE;me off,n;er3und1;e,mod2S;a,nnis;aDcCeBhAi9ki8o7p6t4u3weepstak0;g1Unshi2Hshi;ati08e3;am,el;ace2Keci0;ap,cc1meth2C;n,ttl0;lk;eep,ingl0or1C;lf,na1Gri0;ene1Kisso1C;d0Wfe2l4nd,t3;i0Iurn;m1Ut;abi0e4ic3;e,ke15;c3i01laxa11search;ogni10rea10;a9e8hys7luto,o5re3ut2;amble,mis0s3ten20;en1Zs0L;l3rk;i28l0EyH; 16i28;a24tr0F;nt3ti0M;i0s;bstetri24vercrowd1Qxyg09;a5e4owada3utella;ys;ptu1Ows;il poliZtional securi2;aAe8o5u3;m3s1H;ps;n3o1K;ey,o3;gamy;a3cha0Elancholy,rchandi1Htallurgy;sl0t;chine3g1Aj1Hrs,thema1Q; learn1Cry;aught1e6i5ogi4u3;ck,g12;c,s1M;ce,ghtn18nguis1LteratWv1;ath1isVss;ara0EindergartPn3;icke0Aowled0Y;e3upit1;a3llyfiGwel0G;ns;ce,gnor6mp5n3;forma00ter3;net,sta07;atiSort3rov;an18;a7e6isto09o3ung1;ckey,mework,ne4o3rseradi8spitali2use arrest;ky;s2y;adquarteXre;ir,libut,ppiHs3;hi3te;sh;ene8l6o5r3um,ymnas11;a3eZ;niUss;lf,re;ut3yce0F;en; 3ti0W;edit0Hpo3;ol;aNicFlour,o4urnit3;ure;od,rgive3uri1wl;ness;arCcono0LducaBlectr9n7quip8thi0Pvery6x3;ist4per3;ti0B;en0J;body,o08th07;joy3tertain3;ment;ici2o3;ni0H;tiS;nings,th;emi02i6o4raugh3ynas2;ts;pe,wnstai3;rs;abet0ce,s3;honZrepu3;te;aDelciChAivi07l8o3urrency;al,ld w6mmenta5n3ral,ttIuscoB;fusiHt 3;ed;ry;ar;assi01oth0;es;aos,e3;eMwK;us;d,rO;a8i6lood,owlHread5u3;ntGtt1;er;!th;lliarJs3;on;g3ss;ga3;ge;cKdviJeroGirFmBn6ppeal court,r4spi3thleL;rin;ithmet3sen3;ic;i6y3;o4th3;ing;ne;se;en5n3;es2;ty;ds;craft;bi8d3nau7;yna3;mi6;ce;id,ous3;ti3;cs",Infinitive:"true¦0:9G;1:9T;2:AD;3:90;4:9Z;5:84;6:AH;7:A9;8:92;9:A0;A:AG;B:AI;C:9V;D:8R;E:8O;F:97;G:6H;H:7D;a94b8Hc7Jd68e4Zf4Mg4Gh4Ai3Qj3Nk3Kl3Bm34nou48o2Vp2Equ2Dr1Es0CtZuTvRwI;aOeNiLors5rI;eJiI;ng,te;ak,st3;d5e8TthI;draw,er;a2d,ep;i2ke,nIrn;d1t;aIie;liADniAry;nJpI;ho8Llift;cov1dJear8Hfound8DlIplug,rav82tie,ve94;eaAo3X;erIo;cut,go,staAFvalA3w2G;aSeQhNoMrIu73;aIe72;ffi3Smp3nsI;aBfo7CpI;i8oD;pp3ugh5;aJiJrIwaD;eat5i2;nk;aImA0;ch,se;ck3ilor,keImp1r8L;! paD;a0Ic0He0Fh0Bi0Al08mugg3n07o05p02qu01tUuLwI;aJeeIim;p,t5;ll7Wy;bNccMffLggeCmmKppJrI;mouFpa6Zvi2;o0re6Y;ari0on;er,i4;e7Numb;li9KmJsiIveD;de,st;er9it;aMe8MiKrI;ang3eIi2;ng27w;fIng;f5le;b,gg1rI;t3ve;a4AiA;a4UeJit,l7DoI;il,of;ak,nd;lIot7Kw;icEve;atGeak,i0O;aIi6;m,y;ft,ng,t;aKi6CoJriIun;nk,v6Q;ot,rt5;ke,rp5tt1;eIll,nd,que8Gv1w;!k,m;aven9ul8W;dd5tis1Iy;a0FeKiJoI;am,t,ut;d,p5;a0Ab08c06d05f01group,hea00iZjoi4lXmWnVpTq3MsOtMup,vI;amp,eJiIo3B;sEve;l,rI;e,t;i8rI;ie2ofE;eLiKpo8PtIurfa4;o24rI;aHiBuctu8;de,gn,st;mb3nt;el,hra0lIreseF;a4e71;d1ew,o07;aHe3Fo2;a7eFiIo6Jy;e2nq41ve;mbur0nf38;r0t;inKleBocus,rJuI;el,rbiA;aBeA;an4e;aBu4;ei2k8Bla43oIyc3;gni39nci3up,v1;oot,uI;ff;ct,d,liIp;se,ze;tt3viA;aAenGit,o7;aWerUinpoiFlumm1LoTrLuI;b47ke,niArIt;poDsuI;aFe;eMoI;cKd,fe4XhibEmo7noJpo0sp1tru6vI;e,i6o5L;un4;la3Nu8;aGclu6dJf1occupy,sup0JvI;a6BeF;etermi4TiB;aGllu7rtr5Ksse4Q;cei2fo4NiAmea7plex,sIva6;eve8iCua6;mp1rItrol,ve;a6It6E;bOccuNmEpMutLverIwe;l07sJtu6Yu0wI;helm;ee,h1F;gr5Cnu2Cpa4;era7i4Ipo0;py,r;ey,seItaH;r2ss;aMe0ViJoIultiply;leCu6Pw;micJnIspla4;ce,g3us;!k;iIke,na9;m,ntaH;aPeLiIo0u3N;ke,ng1quIv5;eIi6S;fy;aKnIss5;d,gI;th5;rn,ve;ng2Gu1N;eep,idnJnI;e4Cow;ap;oHuI;gg3xtaI;po0;gno8mVnIrk;cTdRfQgeChPitia7ju8q1CsNtKun6EvI;a6eIo11;nt,rt,st;erJimi6BoxiPrI;odu4u6;aBn,pr03ru6C;iCpi8tIu8;all,il,ruB;abEibE;eCo3Eu0;iIul9;ca7;i7lu6;b5Xmer0pI;aLer4Uin9ly,oJrI;e3Ais6Bo2;rt,se,veI;riA;le,rt;aLeKiIoiCuD;de,jaInd1;ck;ar,iT;mp1ng,pp5raIve;ng5Mss;ath1et,iMle27oLrI;aJeIow;et;b,pp3ze;!ve5A;gg3ve;aTer45i5RlSorMrJuI;lf4Cndrai0r48;eJiIolic;ght5;e0Qsh5;b3XeLfeEgJsI;a3Dee;eIi2;!t;clo0go,shIwa4Z;ad3F;att1ee,i36;lt1st5;a0OdEl0Mm0FnXquip,rWsVtGvTxI;aRcPeDhOiNpJtIu6;ing0Yol;eKi8lIo0un9;aHoI;it,re;ct,di7l;st,t;a3oDu3B;e30lI;a10u6;lt,mi28;alua7oI;ke,l2;chew,pou0tab19;a0u4U;aYcVdTfSgQhan4joy,lPqOrNsuMtKvI;e0YisI;a9i50;er,i4rI;aHenGuC;e,re;iGol0F;ui8;ar9iC;a9eIra2ulf;nd1;or4;ang1oIu8;r0w;irc3lo0ou0ErJuI;mb1;oaGy4D;b3ct;bKer9pI;hasiIow1;ze;aKody,rI;a4oiI;d1l;lm,rk;ap0eBuI;ci40de;rIt;ma0Rn;a0Re04iKo,rIwind3;aw,ed9oI;wn;agno0e,ff1g,mi2Kne,sLvI;eIul9;rIst;ge,t;aWbVcQlod9mant3pNru3TsMtI;iIoDu37;lJngI;uiA;!l;ol2ua6;eJlIo0ro2;a4ea0;n0r0;a2Xe36lKoIu0S;uIv1;ra9;aIo0;im;a3Kur0;b3rm;af5b01cVduBep5fUliTmQnOpMrLsiCtaGvI;eIol2;lop;ch;a20i2;aDiBloIoD;re,y;oIy;te,un4;eJoI;liA;an;mEv1;a4i0Ao06raud,y;ei2iMla8oKrI;ee,yI;!pt;de,mIup3;missi34po0;de,ma7ph1;aJrief,uI;g,nk;rk;mp5rk5uF;a0Dea0h0Ai09l08oKrIurta1G;a2ea7ipp3uI;mb3;ales4e04habEinci6ll03m00nIrro6;cXdUfQju8no7qu1sLtKvI;eIin4;ne,r9y;aHin2Bribu7;er2iLoli2Epi8tJuI;lt,me;itu7raH;in;d1st;eKiJoIroFu0;rm;de,gu8rm;ss;eJoI;ne;mn,n0;eIlu6ur;al,i2;buCe,men4pI;eIi3ly;l,te;eBi6u6;r4xiC;ean0iT;rcumveFte;eJirp,oI;o0p;riAw;ncIre5t1ulk;el;a02eSi6lQoPrKuI;iXrIy;st,y;aLeaKiJoad5;en;ng;stfeLtX;ke;il,l11mba0WrrMth1;eIow;ed;!coQfrie1LgPhMliLqueaKstJtrIwild1;ay;ow;th;e2tt3;a2eJoI;ld;ad;!in,ui3;me;bysEckfi8ff3tI;he;b15c0Rd0Iff0Ggree,l0Cm09n03ppZrXsQttOuMvJwaE;it;eDoI;id;rt;gIto0X;meF;aIeCraB;ch,in;pi8sJtoI;niA;aKeIi04u8;mb3rt,ss;le;il;re;g0Hi0ou0rI;an9i2;eaKly,oiFrI;ai0o2;nt;r,se;aMi0GnJtI;icipa7;eJoIul;un4y;al;ly0;aJu0;se;lga08ze;iKlI;e9oIu6;t,w;gn;ix,oI;rd;a03jNmiKoJsoI;rb;pt,rn;niIt;st1;er;ouJuC;st;rn;cLhie2knowled9quiItiva7;es4re;ce;ge;eQliOoKrJusI;e,tom;ue;mIst;moJpI;any,liA;da7;ma7;te;pt;andPduBet,i6oKsI;coKol2;ve;liArt,uI;nd;sh;de;ct;on",Person:"true¦0:1Q;a29b1Zc1Md1Ee18f15g13h0Ri0Qj0Nk0Jl0Gm09n06o05p00rPsItCusain bolt,v9w4xzibit,y1;anni,oko on2uji,v1;an,es;en,o;a3ednesday adams,i2o1;lfram,o0Q;ll ferrell,z khalifa;lt disn1Qr1;hol,r0G;a2i1oltai06;n dies0Zrginia wo17;lentino rossi,n goG;a4h3i2ripp,u1yra banks;lZpac shakur;ger woods,mba07;eresa may,or;kashi,t1ylor;um,ya1B;a5carlett johanss0h4i3lobodan milosevic,no2ocr1Lpider1uperm0Fwami; m0Em0E;op dogg,w whi1H;egfried,nbad;akespeaTerlock holm1Sia labeouf;ddam hussa16nt1;a cla11ig9;aAe6i5o3u1za;mi,n dmc,paul,sh limbau1;gh;bin hood,d stew16nald1thko;in0Mo;han0Yngo starr,valdo;ese witherspo0i1mbrandt;ll2nh1;old;ey,y;chmaninoff,ffi,iJshid,y roma1H;a4e3i2la16o1uff daddy;cahont0Ie;lar,p19;le,rZ;lm17ris hilt0;leg,prah winfr0Sra;a2e1iles cra1Bostradam0J; yo,l5tt06wmQ;pole0s;a5e4i2o1ubar03;by,lie5net,rriss0N;randa ju1tt romn0M;ly;rl0GssiaB;cklemo1rkov,s0ta hari,ya angelou;re;ady gaga,e1ibera0Pu;bron jam0Xch wale1e;sa;anye west,e3i1obe bryant;d cudi,efer suther1;la0P;ats,sha;a2effers0fk,k rowling,rr tolki1;en;ck the ripp0Mwaharlal nehru,y z;liTnez,ron m7;a7e5i3u1;lk hog5mphrey1sa01;! bog05;l1tl0H;de; m1dwig,nry 4;an;ile selassFlle ber4m3rrison1;! 1;ford;id,mo09;ry;ast0iannis,o1;odwPtye;ergus0lorence nightinga08r1;an1ederic chopN;s,z;ff5m2nya,ustaXzeki1;el;eril lagasse,i1;le zatop1nem;ek;ie;a6e4i2octor w1rake;ho;ck w1ego maradoC;olf;g1mi lovaOnzel washingt0;as;l1nHrth vadR;ai lNt0;a8h5lint0o1thulhu;n1olio;an,fuci1;us;on;aucKop2ristian baMy1;na;in;millo,ptain beefhe4r1;dinal wols2son1;! palmF;ey;art;a8e5hatt,i3oHro1;ck,n1;te;ll g1ng crosby;atB;ck,nazir bhut2rtil,yon1;ce;to;nksy,rack ob1;ama;l 6r3shton kutch2vril lavig8yn ra1;nd;er;chimed2istot1;le;es;capo2paci1;no;ne",Adjective:"true¦0:AI;1:BS;2:BI;3:BA;4:A8;5:84;6:AV;7:AN;8:AF;9:7H;A:BQ;B:AY;C:BC;D:BH;E:9Y;aA2b9Ec8Fd7We79f6Ng6Eh61i4Xj4Wk4Tl4Im41n3Po36p2Oquart7Pr2Ds1Dt14uSvOwFye29;aMeKhIiHoF;man5oFrth7G;dADzy;despreB1n w97s86;acked1UoleF;!sa6;ather1PeFll o70ste1D;!k5;nt1Ist6Ate4;aHeGiFola5T;bBUce versa,gi3Lle;ng67rsa5R;ca1gBSluAV;lt0PnLpHrGsFttermoBL;ef9Ku3;b96ge1; Hb32pGsFtiAH;ca6ide d4R;er,i85;f52to da2;a0Fbeco0Hc0Bd04e02f01gu1XheaBGiXkn4OmUnTopp06pRrNsJtHus0wF;aFiel3K;nt0rra0P;app0eXoF;ld,uS;eHi37o5ApGuF;perv06spec39;e1ok9O;en,ttl0;eFu5;cogn06gul2RlGqu84sF;erv0olv0;at0en33;aFrecede0E;id,rallel0;am0otic0;aFet;rri0tF;ch0;nFq26vers3;sur0terFv7U;eFrupt0;st0;air,inish0orese98;mploy0n7Ov97xpF;ect0lain0;eHisFocume01ue;clFput0;os0;cid0rF;!a8Scov9ha8Jlyi8nea8Gprivileg0sMwF;aFei9I;t9y;hGircumcFonvin2U;is0;aFeck0;lleng0rt0;b20ppea85ssuGttend0uthorF;iz0;mi8;i4Ara;aLeIhoHip 25oGrF;anspare1encha1i2;geth9leADp notch,rpB;rny,ugh6H;ena8DmpGrFs6U;r49tia4;eCo8P;leFst4M;nt0;a0Dc09e07h06i04ki03l01mug,nobbi4XoVpRqueami4XtKuFymb94;bHccinAi generis,pFr5;erFre7N;! dup9b,vi70;du0li7Lp6IsFurb7J;eq9Atanda9X;aKeJi16o2QrGubboFy4Q;rn;aightFin5GungS; fFfF;or7V;adfa9Pri6;lwa6Ftu82;arHeGir6NlendBot Fry;on;c3Qe1S;k5se; call0lImb9phistic16rHuFviV;ndFth1B;proof;dBry;dFub6; o2A;e60ipF;pe4shod;ll0n d7R;g2HnF;ceEg6ist9;am3Se9;co1Zem5lfFn6Are7; suf4Xi43;aGholFient3A;ar5;rlFt4A;et;cr0me,tisfac7F;aOeIheumatoBiGoF;bu8Ztt7Gy3;ghtFv3; 1Sf6X;cJdu8PlInown0pro69sGtF;ard0;is47oF;lu2na1;e1Suc45;alcit8Xe1ondi2;bBci3mpa1;aSePicayu7laOoNrGuF;bl7Tnjabi;eKiIoF;b7VfGmi49pFxi2M;er,ort81;a7uD;maFor,sti7va2;!ry;ciDexis0Ima2CpaB;in55puli8G;cBid;ac2Ynt 3IrFti2;ma40tFv7W;!i3Z;i2YrFss7R;anoBtF; 5XiF;al,s5V;bSffQkPld OnMrLth9utKverF;!aIbMdHhGni75seas,t,wF;ei74rou74;a63e7A;ue;ll;do1Ger,si6A;d3Qg2Aotu5Z; bFbFe on o7g3Uli7;oa80;fashion0school;!ay; gua7XbFha5Uli7;eat;eHligGsF;ce7er0So1C;at0;diFse;a1e1;aOeNiMoGuF;anc0de; moEnHrthFt6V;!eFwe7L;a7Krn;chaGdescri7Iprof30sF;top;la1;ght5;arby,cessa4ighbor5wlyw0xt;k0usiaFv3;ti8;aQeNiLoHuF;dIltiF;facet0p6;deHlGnFot,rbBst;ochro4Xth5;dy;rn,st;ddle ag0nF;dbloZi,or;ag9diocEga,naGrFtropolit4Q;e,ry;ci8;cIgenta,inHj0Fkeshift,mmGnFri4Oscu61ver18;da5Dy;ali4Lo4U;!stream;abEho;aOeLiIoFumberi8;ngFuti1R;stan3RtF;erm,i4H;ghtGteraF;l,ry,te;heart0wei5O;ft JgFss9th3;al,eFi0M;nda4;nguBps0te5;apGind5noF;wi8;ut;ad0itte4uniW;ce co0Hgno6Mll0Cm04nHpso 2UrF;a2releF;va1; ZaYcoWdReQfOgrNhibi4Ri05nMoLsHtFvalu5M;aAeF;nDrdepe2K;a7iGolFuboI;ub6ve1;de,gF;nifica1;rdi5N;a2er;own;eriIiLluenVrF;ar0eq5H;pt,rt;eHiGoFul1O;or;e,reA;fiFpe26termi5E;ni2;mpFnsideCrreA;le2;ccuCdeq5Ene,ppr4J;fFsitu,vitro;ro1;mJpF;arHeGl15oFrop9;li2r11;n2LrfeA;ti3;aGeFi18;d4BnD;tuE;egGiF;c0YteC;al,iF;tiF;ma2;ld;aOelNiLoFuma7;a4meInHrrGsFur5;ti6;if4E;e58o3U; ma3GsF;ick;ghfalut2HspF;an49;li00pf33;i4llow0ndGrdFtM; 05coEworki8;sy,y;aLener44iga3Blob3oKrGuF;il1Nng ho;aFea1Fizzl0;cGtF;ef2Vis;ef2U;ld3Aod;iFuc2D;nf2R;aVeSiQlOoJrF;aGeFil5ug3;q43tf2O;gFnt3S;i6ra1;lk13oHrF; keeps,eFge0Vm9tu41;g0Ei2Ds3R;liF;sh;ag4Mowe4uF;e1or45;e4nF;al,i2;d Gmini7rF;ti6ve1;up;bl0lDmIr Fst pac0ux;oGreacF;hi8;ff;ed,ili0R;aXfVlTmQnOqu3rMthere3veryday,xF;aApIquisi2traHuF;be48lF;ta1;!va2L;edRlF;icF;it;eAstF;whi6; Famor0ough,tiE;rou2sui2;erGiF;ne1;ge1;dFe2Aoq34;er5;ficF;ie1;g9sF;t,ygF;oi8;er;aWeMiHoGrFue;ea4owY;ci6mina1ne,r31ti8ubQ;dact2Jfficult,m,sGverF;ge1se;creGePjoi1paCtF;a1inA;et,te; Nadp0WceMfiLgeneCliJmuEpeIreliAsGvoF;id,ut;pFtitu2ul1L;eCoF;nde1;ca2ghF;tf13;a1ni2;as0;facto;i5ngero0I;ar0Ce09h07i06l05oOrIuF;rmudgeon5stoma4teF;sy;ly;aIeHu1EystalF; cleFli7;ar;epy;fFv17z0;ty;erUgTloSmPnGrpoCunterclVveFy;rt;cLdJgr21jIsHtrF;aFi2;dic0Yry;eq1Yta1;oi1ug3;escenFuN;di8;a1QeFiD;it0;atoDmensuCpF;ass1SulF;so4;ni3ss3;e1niza1;ci1J;ockwiD;rcumspeAvil;eFintzy;e4wy;leGrtaF;in;ba2;diac,ef00;a00ePiLliJoGrFuck nak0;and new,isk,on22;gGldface,naF; fi05fi05;us;nd,tF;he;gGpartisFzarE;an;tiF;me;autifOhiNlLnHsFyoN;iWtselF;li8;eGiFt;gn;aFfi03;th;at0oF;v0w;nd;ul;ckwards,rF;e,rT; priori,b13c0Zd0Tf0Ng0Ihe0Hl09mp6nt06pZrTsQttracti0MuLvIwF;aGkF;wa1B;ke,re;ant garGeraF;ge;de;diIsteEtF;heFoimmu7;nt07;re;to4;hGlFtu2;eep;en;bitIchiv3roHtF;ifiFsy;ci3;ga1;ra4;ry;pFt;aHetizi8rF;oprF;ia2;llFre1;ed,i8;ng;iquFsy;at0e;ed;cohKiJkaHl,oGriFterX;ght;ne,of;li7;ne;ke,ve;olF;ic;ad;ain07gressiIi6rF;eeF;ab6;le;ve;fGraB;id;ectGlF;ue1;ioF;na2; JaIeGvF;erD;pt,qF;ua2;ma1;hoc,infinitum;cuCquiGtu3u2;al;esce1;ra2;erSjeAlPoNrKsGuF;nda1;e1olu2trF;aAuD;se;te;eaGuF;pt;st;aFve;rd;aFe;ze;ct;ra1;nt",Pronoun:"true¦elle,h3i2me,she,th0us,we,you;e0ou;e,m,y;!l,t;e,im",Preposition:"true¦aPbMcLdKexcept,fIinGmid,notwithstandiWoDpXqua,sCt7u4v2w0;/o,hereSith0;! whHin,oW;ersus,i0;a,s a vis;n1p0;!on;like,til;h1ill,oward0;!s;an,ereby,r0;ough0u;!oM;ans,ince,o that,uch G;f1n0ut;!to;!f;! 0to;effect,part;or,r0;om;espite,own,u3;hez,irca;ar1e0oBy;sides,tween;ri7;bo8cross,ft7lo6m4propos,round,s1t0;!op;! 0;a whole,long 0;as;id0ong0;!st;ng;er;ut",SportsTeam:"true¦0:18;1:1E;2:1D;3:14;a1Db15c0Sd0Kfc dallas,g0Ihouston 0Hindiana0Gjacksonville jagua0k0El0Am01new UoRpKqueens parkJreal salt lake,sBt6utah jazz,vancouver whitecaps,w4yW;ashington 4h10;natio1Mredski2wizar0W;ampa bay 7e6o4;ronto 4ttenham hotspur;blue ja0Mrapto0;nnessee tita2xasD;buccanee0ra0K;a8eattle 6porting kansas0Wt4; louis 4oke0V;c1Drams;marine0s4;eah13ounH;cramento Rn 4;antonio spu0diego 4francisco gJjose earthquak1;char08paB; ran07;a9h6ittsburgh 5ortland t4;imbe0rail blaze0;pirat1steele0;il4oenix su2;adelphia 4li1;eagl1philNunE;dr1;akland 4klahoma city thunder,rlando magic;athle0Lrai4;de0;england 8orleans 7york 4;g5je3knYme3red bul0Xy4;anke1;ian3;pelica2sain3;patrio3revolut4;ion;anchEeAi4ontreal impact;ami 8lwaukee b7nnesota 4;t5vi4;kings;imberwolv1wi2;rewe0uc0J;dolphi2heat,marli2;mphis grizz4ts;li1;a6eic5os angeles 4;clippe0dodFlaB;esterV; galaxy,ke0;ansas city 4nF;chiefs,roya0D; pace0polis col3;astr05dynamo,rocke3texa2;olden state warrio0reen bay pac4;ke0;allas 8e4i04od6;nver 6troit 4;lio2pisto2ti4;ge0;broncYnugge3;cowbo5maver4;icZ;ys;arEelLhAincinnati 8leveland 6ol4;orado r4umbus crew sc;api7ocki1;brow2cavalie0guar4in4;dia2;bengaVre4;ds;arlotte horAicago 4;b5cubs,fire,wh4;iteB;ea0ulQ;diff4olina panthe0; city;altimore Alackburn rove0oston 6rooklyn 4uffalo bilN;ne3;ts;cel5red4; sox;tics;rs;oriol1rave2;rizona Ast8tlanta 4;brav1falco2h4;awA;ns;es;on villa,r4;os;c6di4;amondbac4;ks;ardi4;na4;ls",Unit:"true¦a07b04cXdWexVfTgRhePinYjoule0BkMlJmDnan08oCp9quart0Bsq ft,t7volts,w6y2ze3°1µ0;g,s;c,f,n;dVear1o0;ttR; 0s 0;old;att,b;erNon0;!ne02;ascals,e1i0;cXnt00;rcent,tJ;hms,unceY;/s,e4i0m²,²,³;/h,cro2l0;e0liK;!²;grLsR;gCtJ;it1u0;menQx;erPreP;b5elvins,ilo1m0notO;/h,ph,²;!byGgrEmCs;ct0rtzL;aJogrC;allonJb0ig3rB;ps;a0emtEl oz,t4;hrenheit,radG;aby9;eci3m1;aratDe1m0oulombD;²,³;lsius,nti0;gr2lit1m0;et0;er8;am7;b1y0;te5;l,ps;c2tt0;os0;econd1;re0;!s","Noun|Gerund":"true¦0:3O;1:3M;2:3N;3:3D;4:32;5:2V;6:3E;7:3K;8:36;9:3J;A:3B;a3Pb37c2Jd27e23f1Vg1Sh1Mi1Ij1Gk1Dl18m13n11o0Wp0Pques0Sr0EsTtNunderMvKwFyDzB;eroi0oB;ni0o3P;aw2eB;ar2l3;aEed4hispe5i5oCrB;ap8est3i1;n0ErB;ki0r31;i1r2s9tc9;isualizi0oB;lunt1Vti0;stan4ta6;aFeDhin6iCraBy8;c6di0i2vel1M;mi0p8;aBs1;c9si0;l6n2s1;aUcReQhOiMkatKl2Wmo6nowJpeItFuCwB;ea5im37;b35f0FrB;fi0vB;e2Mi2J;aAoryt1KrCuB;d2KfS;etc9ugg3;l3n4;bCi0;ebBi0;oar4;gnBnAt1;a3i0;ip8oB;p8rte2u1;a1r27t1;hCo5reBulp1;a2Qe2;edu3oo3;i3yi0;aKeEi4oCuB;li0n2;oBwi0;fi0;aFcEhear7laxi0nDpor1sB;pon4tructB;r2Iu5;de5;or4yc3;di0so2;p8ti0;aFeacek20laEoCrBublis9;a1Teten4in1oces7;iso2siB;tio2;n2yi0;ckaAin1rB;ki0t1O;fEpeDrganiCvB;erco24ula1;si0zi0;ni0ra1;fe5;avi0QeBur7;gotia1twor6;aDeCi2oB;de3nito5;a2dita1e1ssaA;int0XnBrke1;ifUufactu5;aEeaDiBodAyi0;cen7f1mi1stB;e2i0;r2si0;n4ug9;iCnB;ea4it1;c6l3;ogAuB;dAgg3stif12;ci0llust0VmDnBro2;nova1sp0NterBven1;ac1vie02;agi2plo4;aDea1iCoBun1;l4w3;ki0ri0;nd3rB;roWvB;es1;aCene0Lli4rBui4;ee1ie0N;rde2the5;aHeGiDlCorBros1un4;e0Pmat1;ir1oo4;gh1lCnBs9;anZdi0;i0li0;e3nX;r0Zscina1;a1du01nCxB;erci7plo5;chan1di0ginB;ee5;aLeHiGoub1rCum8wB;el3;aDeCiB;bb3n6vi0;a0Qs7;wi0;rTscoDvi0;ba1coZlBvelo8;eCiB;ve5;ga1;nGti0;aVelebUhSlPoDrBur3yc3;aBos7yi0;f1w3;aLdi0lJmFnBo6pi0ve5;dDsCvinB;ci0;trBul1;uc1;muniDpB;lBo7;ai2;ca1;lBo5;ec1;c9ti0;ap8eaCimToBubT;ni0t9;ni0ri0;aBee5;n1t1;ra1;m8rCs1te5;ri0;vi0;aPeNitMlLoGrDuB;dge1il4llBr8;yi0;an4eat9oadB;cas1;di0;a1mEokB;i0kB;ee8;pi0;bi0;es7oa1;c9i0;gin2lonAt1;gi0;bysit1c6ki0tt3;li0;ki0;bando2cGdverti7gi0pproac9rgDssuCtB;trac1;mi0;ui0;hi0;si0;coun1ti0;ti0;ni0;ng",PhrasalVerb:"true¦0:92;1:96;2:8H;3:8V;4:8A;5:83;6:85;7:98;8:90;9:8G;A:8X;B:8R;C:8U;D:8S;E:70;F:97;G:8Y;H:81;I:7H;J:79;a9Fb7Uc6Rd6Le6Jf5Ig50h4Biron0j47k40l3Em31n2Yo2Wp2Cquiet Hr1Xs0KtZuXvacuu6QwNyammerBzK;ero Dip LonK;e0k0;by,ov9up;aQeMhLiKor0Mrit19;mp0n3Fpe0r5s5;ackAeel Di0S;aLiKn33;gh 3Wrd0;n Dr K;do1in,oJ;it 79k5lk Lrm 69sh Kt83v60;aw3do1o7up;aw3in,oC;rgeBsK;e 2herE;a00eYhViRoQrMuKypP;ckErn K;do1in,oJup;aLiKot0y 30;ckl7Zp F;ck HdK;e 5Y;n7Wp 3Es5K;ck MdLe Kghten 6me0p o0Rre0;aw3ba4do1in,up;e Iy 2;by,oG;ink Lrow K;aw3ba4in,up;ba4ov9up;aKe 77ll62;m 2r 5M;ckBke Llk K;ov9shit,u47;aKba4do1in,leave,o4Dup;ba4ft9pa69w3;a0Vc0Te0Mh0Ii0Fl09m08n07o06p01quar5GtQuOwK;earMiK;ngLtch K;aw3ba4o8K; by;cKi6Bm 2ss0;k 64;aReQiPoNrKud35;aigh2Det75iK;ke 7Sng K;al6Yup;p Krm2F;by,in,oG;c3Ln3Lr 2tc4O;p F;c3Jmp0nd LrKveAy 2O;e Ht 2L;ba4do1up;ar3GeNiMlLrKurB;ead0ingBuc5;a49it 6H;c5ll o3Cn 2;ak Fe1Xll0;a3Bber 2rt0und like;ap 5Vow Duggl5;ash 6Noke0;eep NiKow 6;cLp K;o6Dup;e 68;in,oK;ff,v9;de19gn 4NnKt 6Gz5;gKkE; al6Ale0;aMoKu5W;ot Kut0w 7M;aw3ba4f48oC;c2WdeEk6EveA;e Pll1Nnd Orv5tK; Ktl5J;do1foLin,o7upK;!on;ot,r5Z;aw3ba4do1in,o33up;oCto;al66out0rK;ap65ew 6J;ilAv5;aXeUiSoOuK;b 5Yle0n Kstl5;aLba4do1inKo2Ith4Nu5P;!to;c2Xr8w3;ll Mot LpeAuK;g3Ind17;a2Wf3Po7;ar8in,o7up;ng 68p oKs5;ff,p18;aKelAinEnt0;c6Hd K;o4Dup;c27t0;aZeYiWlToQrOsyc35uK;ll Mn5Kt K;aKba4do1in,oJto47up;pa4Dw3;a3Jdo1in,o21to45up;attleBess KiNop 2;ah2Fon;iLp Kr4Zu1Gwer 6N;do1in,o6Nup;nt0;aLuK;gEmp 6;ce u20y 6D;ck Kg0le 4An 6p5B;oJup;el 5NncilE;c53ir 39n0ss MtLy K;ba4oG; Hc2R;aw3ba4in,oJ;pKw4Y;e4Xt D;aLerd0oK;dAt53;il Hrrow H;aTeQiPoLuK;ddl5ll I;c1FnkeyMp 6uthAve K;aKdo1in,o4Lup;l4Nw3; wi4K;ss0x 2;asur5e3SlLss K;a21up;t 6;ke Ln 6rKs2Ax0;k 6ryA;do,fun,oCsure,up;a02eViQoLuK;ck0st I;aNc4Fg MoKse0;k Kse4D;aft9ba4do1forw37in56o0Zu46;in,oJ;d 6;e NghtMnLsKve 00;ten F;e 2k 2; 2e46;ar8do1in;aMt LvelK; oC;do1go,in,o7up;nEve K;in,oK;pKut;en;c5p 2sh LtchBughAy K;do1o59;in4Po7;eMick Lnock K;do1oCup;oCup;eLy K;in,up;l Ip K;aw3ba4do1f04in,oJto,up;aMoLuK;ic5mpE;ke3St H;c43zz 2;a01eWiToPuK;nLrrKsh 6;y 2;keLt K;ar8do1;r H;lKneErse3K;d Ke 2;ba4dKfast,o0Cup;ear,o1;de Lt K;ba4on,up;aw3o7;aKlp0;d Ml Ir Kt 2;fKof;rom;f11in,o03uW;cPm 2nLsh0ve Kz2P;at,it,to;d Lg KkerP;do1in,o2Tup;do1in,oK;ut,v9;k 2;aZeTive Rloss IoMrLunK; f0S;ab hold,in43ow 2U; Kof 2I;aMb1Mit,oLr8th1IuK;nd9;ff,n,v9;bo7ft9hQw3;aw3bKdo1in,oJrise,up,w3;a4ir2H;ar 6ek0t K;aLb1Fdo1in,oKr8up;ff,n,ut,v9;cLhKl2Fr8t,w3;ead;ross;d aKng 2;bo7;a0Ee07iYlUoQrMuK;ck Ke2N;ar8up;eLighten KownBy 2;aw3oG;eKshe27; 2z5;g 2lMol Krk I;aKwi20;bo7r8;d 6low 2;aLeKip0;sh0;g 6ke0mKrKtten H;e F;gRlPnNrLsKzzle0;h F;e Km 2;aw3ba4up;d0isK;h 2;e Kl 1T;aw3fPin,o7;ht ba4ure0;ePnLsK;s 2;cMd K;fKoG;or;e D;d04l 2;cNll Krm0t1G;aLbKdo1in,o09sho0Eth08victim;a4ehi2O;pa0C;e K;do1oGup;at Kdge0nd 12y5;in,o7up;aOi1HoNrK;aLess 6op KuN;aw3b03in,oC;gBwB; Ile0ubl1B;m 2;a0Ah05l02oOrLut K;aw3ba4do1oCup;ackBeep LoKy0;ss Dwd0;by,do1in,o0Uup;me NoLuntK; o2A;k 6l K;do1oG;aRbQforOin,oNtKu0O;hLoKrue;geth9;rough;ff,ut,v9;th,wK;ard;a4y;paKr8w3;rt;eaLose K;in,oCup;n 6r F;aNeLiK;ll0pE;ck Der Kw F;on,up;t 2;lRncel0rOsMtch LveE; in;o1Nup;h Dt K;doubt,oG;ry LvK;e 08;aw3oJ;l Km H;aLba4do1oJup;ff,n,ut;r8w3;a0Ve0MiteAl0Fo04rQuK;bblNckl05il0Dlk 6ndl05rLsKtMy FzzA;t 00;n 0HsK;t D;e I;ov9;anWeaUiLush K;oGup;ghQng K;aNba4do1forMin,oLuK;nd9p;n,ut;th;bo7lKr8w3;ong;teK;n 2;k K;do1in,o7up;ch0;arTg 6iRn5oPrNssMttlLunce Kx D;aw3ba4;e 6; ar8;e H;do1;k Dt 2;e 2;l 6;do1up;d 2;aPeed0oKurt0;cMw K;aw3ba4do1o7up;ck;k K;in,oC;ck0nk0stA; oQaNef 2lt0nd K;do1ov9up;er;up;r Lt K;do1in,oCup;do1o7;ff,nK;to;ck Pil0nMrgLsK;h D;ainBe D;g DkB; on;in,o7;aw3do1in,oCup;ff,ut;ay;ct FdQir0sk MuctionA; oG;ff;ar8o7;ouK;nd; o7;d K;do1oKup;ff,n;wn;o7up;ut",ProperNoun:"true¦aIbDc8dalhousHe7f5gosford,h4iron maiden,kirby,landsdowne,m2nis,r1s0wembF;herwood,paldiB;iel,othwe1;cgi0ercedes,issy;ll;intBudsB;airview,lorence,ra0;mpt9nco;lmo,uro;a1h0;arlt6es5risti;rl0talina;et4i0;ng;arb3e0;et1nt0rke0;ley;on;ie;bid,jax","Person|Place":"true¦a8d6h4jordan,k3orlando,s1vi0;ctor9rgin9;a0ydney;lvador,mara,ntia4;ent,obe;amil0ous0;ton;arw2ie0;go;lexandr1ust0;in;ia",LastName:"true¦0:BR;1:BF;2:B5;3:BH;4:AX;5:9Y;6:B6;7:BK;8:B0;9:AV;A:AL;B:8Q;C:8G;D:7K;E:BM;F:AH;aBDb9Zc8Wd88e81f7Kg6Wh64i60j5Lk4Vl4Dm39n2Wo2Op25quispe,r1Ls0Pt0Ev03wTxSyKzG;aIhGimmerm6A;aGou,u;ng,o;khar5ytsE;aKeun9BiHoGun;koya32shiBU;!lG;diGmaz;rim,z;maGng;da,g52mo83sGzaC;aChiBV;iao,u;aLeJiHoGright,u;jcA5lff,ng;lGmm0nkl0sniewsC;kiB1liams33s3;bGiss,lt0;b,er,st0;a6Vgn0lHtG;anabe,s3;k0sh,tG;e2Non;aLeKiHoGukD;gt,lk5roby5;dHllalGnogr3Kr1Css0val3S;ba,ob1W;al,ov4;lasHsel8W;lJn dIrgBEsHzG;qu7;ilyEqu7siljE;en b6Aijk,yk;enzueAIverde;aPeix1VhKi2j8ka43oJrIsui,uG;om5UrG;c2n0un1;an,emblA7ynisC;dorAMlst3Km4rrAth;atch0i8UoG;mHrG;are84laci79;ps3sG;en,on;hirDkah9Mnaka,te,varA;a06ch01eYhUiRmOoMtIuHvGzabo;en9Jobod3N;ar7bot4lliv2zuC;aIeHoG;i7Bj4AyanAB;ele,in2FpheBvens25;l8rm0;kol5lovy5re7Tsa,to,uG;ng,sa;iGy72;rn5tG;!h;l71mHnGrbu;at9cla9Egh;moBo7M;aIeGimizu;hu,vchG;en8Luk;la,r1G;gu9infe5YmGoh,pulveA7rra5P;jGyG;on5;evi6iltz,miHneid0roed0uGwarz;be3Elz;dHtG;!t,z;!t;ar4Th8ito,ka4OlJnGr4saCto,unde19v4;ch7dHtGz;a5Le,os;b53e16;as,ihDm4Po0Y;aVeSiPoJuHyG;a6oo,u;bio,iz,sG;so,u;bKc8Fdrigue67ge10j9YmJosevelt,sItHux,wG;e,li6;a9Ch;enb4Usi;a54e4L;erts15i93;bei4JcHes,vGzzo;as,e9;ci,hards12;ag2es,iHut0yG;es,nol5N;s,t0;dImHnGsmu97v6C;tan1;ir7os;ic,u;aUeOhMiJoHrGut8;asad,if6Zochazk27;lishc2GpGrti72u10we76;e3Aov51;cHe45nG;as,to;as70hl0;aGillips;k,m,n6I;a3Hde3Wete0Bna,rJtG;ersHrovGters54;!a,ic;!en,on;eGic,kiBss3;i9ra,tz,z;h86k,padopoulIrk0tHvG;ic,l4N;el,te39;os;bMconn2Ag2TlJnei6PrHsbor6XweBzG;dem7Rturk;ella4DtGwe6N;ega,iz;iGof7Hs8I;vGyn1R;ei9;aSri1;aPeNiJoGune50ym2;rHvGwak;ak4Qik5otn66;odahl,r4S;cholsZeHkolGls4Jx3;ic,ov84;ls1miG;!n1;ils3mG;co4Xec;gy,kaGray2sh,var38;jiGmu9shiG;ma;a07c04eZiWoMuHyeG;rs;lJnIrGssoli6S;atGp03r7C;i,ov4;oz,te58;d0l0;h2lOnNo0RrHsGza1A;er,s;aKeJiIoz5risHtG;e56on;!on;!n7K;au,i9no,t5J;!lA;r1Btgome59;i3El0;cracFhhail5kkeHlG;l0os64;ls1;hmeJiIj30lHn3Krci0ssiGyer2N;!er;n0Po;er,j0;dDti;cartHlG;aughl8e2;hy;dQe7Egnu68i0jer3TkPmNnMrItHyG;er,r;ei,ic,su21thews;iHkDquAroqu8tinG;ez,s;a5Xc,nG;!o;ci5Vn;a5UmG;ad5;ar5e6Kin1;rig77s1;aVeOiLoJuHyG;!nch;k4nGo;d,gu;mbarGpe3Fvr4we;di;!nGu,yana2B;coln,dG;b21holm,strom;bedEfeKhIitn0kaHn8rGw35;oy;!j;m11tG;in1on1;bvGvG;re;iGmmy,ng,rs2Qu,voie,ws3;ne,t1F;aZeYh2iWlUnez50oNrJuHvar2woG;k,n;cerGmar68znets5;a,o34;aHem0isGyeziu;h23t3O;m0sni4Fus3KvG;ch4O;bay57ch,rh0Usk16vaIwalGzl5;czGsC;yk;cIlG;!cGen4K;huk;!ev4ic,s;e8uiveG;rt;eff0kGl4mu9nnun1;ucF;ll0nnedy;hn,llKminsCne,pIrHstra3Qto,ur,yGzl5;a,s0;j0Rls22;l2oG;or;oe;aPenOha6im14oHuG;ng,r4;e32hInHrge32u6vG;anD;es,ss3;anHnsG;en,on,t3;nesGs1R;en,s1;kiBnings,s1;cJkob4EnGrv0E;kDsG;en,sG;en0Ion;ks3obs2A;brahimDglesi5Nke5Fl0Qno07oneIshikHto,vanoG;u,v54;awa;scu;aVeOiNjaltal8oIrist50uG;!aGb0ghAynh;m2ng;a6dz4fIjgaa3Hk,lHpUrGwe,x3X;ak1Gvat;mAt;er,fm3WmG;ann;ggiBtchcock;iJmingw4BnHrGss;nand7re9;deGriks1;rs3;kkiHnG;on1;la,n1;dz4g1lvoQmOns0ZqNrMsJuIwHyG;asFes;kiB;g1ng;anHhiG;mo14;i,ov0J;di6p0r10t;ue;alaG;in1;rs1;aVeorgUheorghe,iSjonRoLrJuGw3;errGnnar3Co,staf3Ctierr7zm2;a,eG;ro;ayli6ee2Lg4iffithGub0;!s;lIme0UnHodGrbachE;e,m2;calvAzale0S;dGubE;bGs0E;erg;aj,i;bs3l,mGordaO;en7;iev3U;gnMlJmaIndFo,rGsFuthi0;cGdn0za;ia;ge;eaHlG;agh0i,o;no;e,on;aVerQiLjeldsted,lKoIrHuG;chs,entAji41ll0;eem2iedm2;ntaGrt8urni0wl0;na;emi6orA;lipIsHtzgeraG;ld;ch0h0;ovG;!ic;hatDnanIrG;arGei9;a,i;deY;ov4;b0rre1D;dKinsJriksIsGvaB;cob3GpGtra3D;inoza,osiQ;en,s3;te8;er,is3warG;ds;aXePiNjurhuMoKrisco15uHvorakG;!oT;arte,boHmitru,nn,rGt3C;and,ic;is;g2he0Omingu7nErd1ItG;to;us;aGcki2Hmitr2Ossanayake,x3;s,z; JbnaIlHmirGrvisFvi,w2;!ov4;gado,ic;th;bo0groot,jo6lHsilGvriA;va;a cruz,e3uG;ca;hl,mcevsCnIt2WviG;dGes,s;ov,s3;ielsGku22;!en;ki;a0Be06hRiobQlarkPoIrGunningh1H;awfo0RivGuz;elli;h1lKntJoIrGs2Nx;byn,reG;a,ia;ke,p0;i,rer2K;em2liB;ns;!e;anu;aOeMiu,oIristGu6we;eGiaG;ns1;i,ng,p9uHwGy;!dH;dGng;huJ;!n,onGu6;!g;kJnIpm2ttHudhGv7;ry;erjee,o14;!d,g;ma,raboG;rty;bJl0Cng4rG;eghetHnG;a,y;ti;an,ota1C;cerAlder3mpbeLrIstGvadi0B;iGro;llo;doHl0Er,t0uGvalho;so;so,zo;ll;a0Fe01hYiXlUoNrKuIyG;rLtyG;qi;chan2rG;ke,ns;ank5iem,oGyant;oks,wG;ne;gdan5nIruya,su,uchaHyKziG;c,n5;rd;darGik;enG;ko;ov;aGond15;nco,zG;ev4;ancFshw16;a08oGuiy2;umGwmG;ik;ckRethov1gu,ktPnNrG;gJisInG;ascoGds1;ni;ha;er,mG;anG;!n;gtGit7nP;ss3;asF;hi;er,hG;am;b4ch,ez,hRiley,kk0ldw8nMrIshHtAu0;es;ir;bInHtlGua;ett;es,i0;ieYosa;dGik;a9yoG;padhyG;ay;ra;k,ng;ic;bb0Acos09d07g04kht05lZnPrLsl2tJyG;aHd8;in;la;chis3kiG;ns3;aImstro6sl2;an;ng;ujo,ya;dJgelHsaG;ri;ovG;!a;ersJov,reG;aGjEws;ss1;en;en,on,s3;on;eksejEiyEmeiIvG;ar7es;ez;da;ev;arwHuilG;ar;al;ams,l0;er;ta;as",Ordinal:"true¦eBf7nin5s3t0zeroE;enDhir1we0;lfCn7;d,t3;e0ixt8;cond,vent7;et0th;e6ie7;i2o0;r0urt3;tie4;ft1rst;ight0lev1;e0h,ie1;en0;th",Cardinal:"true¦bEeBf5mEnine7one,s4t0zero;en,h2rDw0;e0o;lve,n5;irt6ousands,ree;even2ix2;i3o0;r1ur0;!t2;ty;ft0ve;e2y;ight0lev1;!e0y;en;illions",Multiple:"true¦b3hundred,m3qu2se1t0;housand,r2;pt1xt1;adr0int0;illion",City:"true¦0:74;1:61;2:6G;3:6J;4:5S;a68b53c4Id48e44f3Wg3Hh39i31j2Wk2Fl23m1Mn1Co19p0Wq0Ur0Os05tRuQvLwDxiBy9z5;a7h5i4Muri4O;a5e5ongsh0;ng3H;greb,nzib5G;ang2e5okoha3Sunfu;katerin3Hrev0;a5n0Q;m5Hn;arsBeAi6roclBu5;h0xi,zh5P;c7n5;d5nipeg,terth4;hoek,s1L;hi5Zkl3A;l63xford;aw;a8e6i5ladivost5Molgogr6L;en3lni6S;ni22r5;o3saill4N;lenc4Wncouv3Sr3ughn;lan bat1Crumqi,trecht;aFbilisi,eEheDiBo9r7u5;l21n63r5;in,ku;i5ondh62;es51poli;kyo,m2Zron1Pulo5;n,uS;an5jua3l2Tmisoa6Bra3;j4Tshui; hag62ssaloni2H;gucigal26hr0l av1U;briz,i6llinn,mpe56ng5rtu,shk2R;i3Esh0;an,chu1n0p2Eyu0;aEeDh8kopje,owe1Gt7u5;ra5zh4X;ba0Ht;aten is55ockholm,rasbou67uttga2V;an8e6i5;jiazhua1llo1m5Xy0;f50n5;ya1zh4H;gh3Kt4Q;att45o1Vv44;cramen16int ClBn5o paulo,ppo3Rrajevo; 7aa,t5;a 5o domin3E;a3fe,m1M;antonio,die3Cfrancisco,j5ped3Nsalvad0J;o5u0;se;em,t lake ci5Fz25;lou58peters24;a9e8i6o5;me,t59;ga,o5yadh;! de janei3F;cife,ims,nn3Jykjavik;b4Sip4lei2Inc2Pwalpindi;ingdao,u5;ez2i0Q;aFeEhDiCo9r7u6yong5;ya1;eb59ya1;a5etor3M;g52to;rt5zn0; 5la4Co;au prin0Melizabe24sa03;ls3Prae5Atts26;iladelph3Gnom pe1Aoenix;ki1tah tik3E;dua,lerYnaji,r4Ot5;na,r32;ak44des0Km1Mr6s5ttawa;a3Vlo;an,d06;a7ew5ing2Fovosibir1Jyc; 5cast36;del24orlea44taip14;g8iro4Wn5pl2Wshv33v0;ch6ji1t5;es,o1;a1o1;a6o5p4;ya;no,sa0W;aEeCi9o6u5;mb2Ani26sc3Y;gadishu,nt6s5;c13ul;evideo,pelli1Rre2Z;ami,l6n14s5;kolc,sissauga;an,waukee;cca,d5lbour2Mmph41ndo1Cssi3;an,ell2Xi3;cau,drAkass2Sl9n8r5shh4A;aca6ib5rakesh,se2L;or;i1Sy;a4EchFdal0Zi47;mo;id;aDeAi8o6u5vSy2;anMckn0Odhia3;n5s angel26;d2g bea1N;brev2Be3Lma5nz,sb2verpo28;!ss27; ma39i5;c5pzig;est16; p6g5ho2Wn0Cusan24;os;az,la33;aHharFiClaipeBo9rak0Du7y5;iv,o5;to;ala lump4n5;mi1sh0;hi0Hlka2Xpavog4si5wlo2;ce;da;ev,n5rkuk;gst2sha5;sa;k5toum;iv;bHdu3llakuric0Qmpa3Fn6ohsiu1ra5un1Iwaguc0Q;c0Pj;d5o,p4;ah1Ty;a7e6i5ohannesV;l1Vn0;dd36rusalem;ip4k5;ar2H;bad0mph1OnArkutUs7taXz5;mir,tapala5;pa;fah0l6tanb5;ul;am2Zi2H;che2d5;ianap2Mo20;aAe7o5yder2W; chi mi5ms,nolulu;nh;f6lsin5rakli2;ki;ei;ifa,lifax,mCn5rb1Dva3;g8nov01oi;aFdanEenDhCiPlasgBo9raz,u5;a5jr23;dal6ng5yaquil;zh1J;aja2Oupe;ld coa1Bthen5;bu2S;ow;ent;e0Uoa;sk;lw7n5za;dhi5gt1E;nag0U;ay;aisal29es,o8r6ukuya5;ma;ankfu5esno;rt;rt5sh0; wor6ale5;za;th;d5indhov0Pl paso;in5mont2;bur5;gh;aBe8ha0Xisp4o7resd0Lu5;b5esseldorf,nkirk,rb0shanbe;ai,l0I;ha,nggu0rtmu13;hradSl6nv5troit;er;hi;donghIe6k09l5masc1Zr es sala1KugavpiY;i0lU;gu,je2;aJebu,hAleve0Vo5raio02uriti1Q;lo7n6penhag0Ar5;do1Ok;akKst0V;gUm5;bo;aBen8i6ongqi1ristchur5;ch;ang m7ca5ttago1;go;g6n5;ai;du,zho1;ng5ttogr14;ch8sha,zh07;gliari,i9lga8mayenJn6pe town,r5tanO;acCdiff;ber1Ac5;un;ry;ro;aWeNhKirmingh0WoJr9u5;chareTdapeTenos air7r5s0tu0;g5sa;as;es;a9is6usse5;ls;ba6t5;ol;ne;sil8tisla7zzav5;il5;le;va;ia;goZst2;op6ubaneshw5;ar;al;iCl9ng8r5;g6l5n;in;en;aluru,hazi;fa6grade,o horizon5;te;st;ji1rut;ghd0BkFn9ot8r7s6yan n4;ur;el,r07;celo3i,ranquil09;ou;du1g6ja lu5;ka;alo6k5;ok;re;ng;ers5u;field;a05b02cc01ddis aba00gartaZhmedXizawl,lSmPnHqa00rEsBt7uck5;la5;nd;he7l5;an5;ta;ns;h5unci2;dod,gab5;at;li5;ngt2;on;a8c5kaOtwerp;hora6o3;na;ge;h7p5;ol5;is;eim;aravati,m0s5;terd5;am; 7buquerq6eppo,giers,ma5;ty;ue;basrah al qadim5mawsil al jadid5;ah;ab5;ad;la;ba;ra;idj0u dha5;bi;an;lbo6rh5;us;rg",Region:"true¦0:2O;1:2L;2:2U;3:2F;a2Sb2Fc21d1Wes1Vf1Tg1Oh1Ki1Fj1Bk16l13m0Sn09o07pYqVrSsJtEuBverAw6y4zacatec2W;akut0o0Fu4;cat1k09;a5est 4isconsin,yomi1O;bengal,virgin0;rwick3shington4;! dc;acruz,mont;dmurt0t4;ah,tar4; 2Pa12;a6e5laxca1Vripu21u4;scaEva;langa2nnessee,x2J;bas10m4smQtar29;aulip2Hil nadu;a9elang07i7o5taf16u4ylh1J;ff02rr09s1E;me1Gno1Uuth 4;cZdY;ber0c4kkim,naloa;hu1ily;n5rawak,skatchew1xo4;ny; luis potosi,ta catari2;a4hodeA;j4ngp0C;asth1shahi;ingh29u4;e4intana roo;bec,en6retaro;aAe6rince edward4unjab; i4;sl0G;i,n5r4;ak,nambu0F;a0Rnsylv4;an0;ha0Pra4;!na;axa0Zdisha,h4klaho21ntar4reg7ss0Dx0I;io;aLeEo6u4;evo le4nav0X;on;r4tt18va scot0;f9mandy,th4; 4ampton3;c6d5yo4;rk3;ako1O;aroli2;olk;bras1Nva0Dw4; 6foundland4;! and labrad4;or;brunswick,hamp3jers5mexiTyork4;! state;ey;galPyarit;aAeghala0Mi6o4;nta2r4;dov0elos;ch6dlanDn5ss4zor11;issippi,ouri;as geraPneso18;ig1oac1;dhy12harasht0Gine,lac07ni5r4ssachusetts;anhao,i el,ylG;p4toba;ur;anca3e4incoln3ouisI;e4iR;ds;a6e5h4omi;aka06ul2;dah,lant1ntucky,ra01;bardino,lmyk0ns0Qr4;achay,el0nata0X;alis6har4iangxi;kh4;and;co;daho,llino7n4owa;d5gush4;et0;ia2;is;a6ert5i4un1;dalFm0D;ford3;mp3rya2waii;ansu,eorg0lou7oa,u4;an4izhou,jarat;ajuato,gdo4;ng;cester3;lori4uji1;da;sex;ageUe7o5uran4;go;rs4;et;lawaMrby3;aFeaEh9o4rim08umbr0;ahui7l6nnectic5rsi4ventry;ca;ut;i03orado;la;e5hattisgarh,i4uvash0;apRhuahua;chn5rke4;ss0;ya;ra;lGm4;bridge3peche;a9ihar,r8u4;ck4ryat0;ingham3;shi4;re;emen,itish columb0;h0ja cal8lk7s4v7;hkorto4que;st1;an;ar0;iforn0;ia;dygHguascalientes,lBndhr9r5ss4;am;izo2kans5un4;achal 7;as;na;a 4;pradesh;a6ber5t4;ai;ta;ba5s4;ka;ma;ea",Place:"true¦0:4T;1:4V;2:44;3:4B;4:3I;a4Eb3Gc2Td2Ge26f25g1Vh1Ji1Fk1Cl14m0Vn0No0Jp08r04sTtNuLvJw7y5;a5o0Syz;kut1Bngtze;aDeChitBi9o5upatki,ycom2P;ki26o5;d5l1B;b3Ps5;i4to3Y;c0SllowbroCn5;c2Qgh2;by,chur1P;ed0ntw3Gs22;ke6r3St5;erf1f1; is0Gf3V;auxha3Mirgin is0Jost5;ok;laanbaatar,pto5xb3E;n,wn;a9eotihuac43h7ive49o6ru2Nsarskoe selo,u5;l2Dzigo47;nto,rquay,tt2J;am3e 5orn3E;bronx,hamptons;hiti,j mah0Iu1N;aEcotts bluff,eCfo,herbroQoApring9t7u5yd2F;dbu1Wn5;der03set3B;aff1ock2Nr5;atf1oud;hi37w24;ho,uth5; 1Iam1Zwo3E;a5i2O;f2Tt0;int lawrence riv3Pkhal2D;ayleigh,ed7i5oc1Z;chmo1Eo gran4ver5;be1Dfr09si4; s39cliffe,hi2Y;aCe9h8i5ompeii,utn2;c6ne5tcai2T; 2Pc0G;keri13t0;l,x;k,lh2mbr6n5r2J;n1Hzance;oke;cif38pahanaumokuak30r5;k5then0;si4w1K;ak7r6x5;f1l2X;ange county,d,f1inoco;mTw1G;e8i1Uo5;r5tt2N;th5wi0E; 0Sam19;uschwanste1Pw5; eng6a5h2market,po36;rk;la0P;a8co,e6i5uc;dt1Yll0Z;adow5ko0H;lands;chu picchu,gad2Ridsto1Ql8n7ple6r5;kh2; g1Cw11;hatt2Osf2B;ibu,t0ve1Z;a8e7gw,hr,in5owlOynd02;coln memori5dl2C;al;asi4w3;kefr7mbe1On5s,x;ca2Ig5si05;f1l27t0;ont;azan kreml14e6itchen2Gosrae,rasnoyar5ul;sk;ns0Hs1U;ax,cn,lf1n6ps5st;wiN;d5glew0Lverness;ian27ochina;aDeBi6kg,nd,ov5unti2H;d,enweep;gh6llc5;reL;bu03l5;and5;!s;r5yw0C;ef1tf1;libu24mp6r5stings;f1lem,row;stead,t0;aDodavari,r5uelph;avenAe5imsS;at 8en5; 6f1Fwi5;ch;acr3vall1H;brita0Flak3;hur5;st;ng3y villa0W;airhavHco,ra;aAgli9nf17ppi8u7ver6x5;et1Lf1;glad3t0;rope,st0;ng;nt0;rls1Ls5;t 5;e5si4;nd;aCe9fw,ig8o7ryd6u5xb;mfri3nstab00rh2tt0;en;nca18rcKv19wnt0B;by;n6r5vonpo1D;ry;!h2;nu8r5;l6t5;f1moor;ingt0;be;aLdg,eIgk,hClBo5royd0;l6m5rnwa0B;pt0;c7lingw6osse5;um;ood;he0S;earwat0St;a8el6i5uuk;chen itza,mney ro07natSricahua;m0Zt5;enh2;mor5rlottetPth2;ro;dar 5ntervilA;breaks,faZg5;rove;ld9m8r5versh2;lis6rizo pla5;in;le;bLpbellf1;weQ;aZcn,eNingl01kk,lackLolt0r5uckV;aGiAo5;ckt0ok5wns cany0;lyn,s5;i4to5;ne;de;dge6gh5;am,t0;n6t5;own;or5;th;ceb6m5;lNpt0;rid5;ge;bu5pool,wa8;rn;aconsfEdf1lBr9verly7x5;hi5;ll; hi5;lls;wi5;ck; air,l5;ingh2;am;ie5;ld;ltimore,rnsl6tters5;ea;ey;bLct0driadic,frica,ginJlGmFn9rc8s7tl6yleOzor3;es;!ant8;hcroft,ia; de triomphe,t6;adyr,ca8dov9tarct5;ic5; oce5;an;st5;er;ericas,s;be6dersh5hambra,list0;ot;rt0;cou5;rt;bot7i5;ngd0;on;sf1;ord",Country:"true¦0:38;1:2L;2:3B;a2Xb2Ec22d1Ye1Sf1Mg1Ch1Ai14j12k0Zl0Um0Gn05om2pZqat1KrXsKtCu7v5wal4yemTz3;a25imbabwe;es,lis and futu2Y;a3enezue32ietnam;nuatu,tican city;gTk6nited 4ruXs3zbeE; 2Ca,sr;arab emirat0Kkingdom,states3;! of am2Y;!raiV;a8haCimor les0Co7rinidad 5u3;nis0rk3valu;ey,me2Zs and caic1V;and t3t3;oba1L;go,kel10nga;iw2ji3nz2T;ki2V;aDcotl1eCi9lov8o6pa2Dri lanka,u5w3yr0;az3edAitzerl1;il1;d2riname;lomon1Xmal0uth 3;afr2KkMsud2;ak0en0;erra leoFn3;gapo1Yt maart3;en;negLrb0ychellZ;int 3moa,n marino,udi arab0;hele26luc0mart21;epublic of ir0Eom2Euss0w3;an27;a4eIhilippinUitcairn1Mo3uerto riN;l1rtugF;ki2Dl4nama,pua new0Vra3;gu7;au,esti3;ne;aBe9i7or3;folk1Ith4w3;ay; k3ern mariana1D;or0O;caragua,ger3ue;!ia;p3ther1Aw zeal1;al;mib0u3;ru;a7exi6icro0Bo3yanm06;ldova,n3roc5zambA;a4gol0t3;enegro,serrat;co;cAdagasc01l7r5urit4yot3;te;an0i16;shall0Xtin3;ique;a4div3i,ta;es;wi,ys0;ao,ed02;a6e5i3uxembourg;b3echtenste12thu1G;er0ya;ban0Isotho;os,tv0;azakh1Fe4iriba04o3uwait,yrgyz1F;rXsovo;eling0Knya;a3erG;ma16p2;c7nd6r4s3taly,vory coast;le of m2rael;a3el1;n,q;ia,oJ;el1;aiTon3ungary;dur0Ng kong;aBermany,ha0QibraltAre8u3;a6ern5inea3ya0P;! biss3;au;sey;deloupe,m,tema0Q;e3na0N;ce,nl1;ar;bUmb0;a7i6r3;ance,ench 3;guia0Epoly3;nes0;ji,nl1;lklandUroeU;ast tim7cu6gypt,l salv6ngl1quatorial4ritr5st3thiop0;on0; guin3;ea;ad3;or;enmark,jibou5ominica4r con3;go;!n C;ti;aBentral african Ah8o5roat0u4yprRzech3; 9ia;ba,racao;c4lo3morQngo brazzaville,okGsta r04te de ivoiL;mb0;osE;i3ristmasG;le,na;republic;m3naUpe verde,ymanA;bod0ero3;on;aGeDhut2o9r5u3;lgar0r3;kina faso,ma,undi;azil,itish 3unei;virgin3; is3;lands;liv0nai5snia and herzegoviHtswaHuvet3; isl1;and;re;l3n8rmuG;ar3gium,ize;us;h4ngladesh,rbad3;os;am4ra3;in;as;fghaGlDmBn6r4ustr3zerbaij2;al0ia;genti3men0uba;na;dorra,g5t3;arct7igua and barbu3;da;o3uil3;la;er3;ica;b3ger0;an0;ia;ni3;st2;an",FirstName:"true¦aTblair,cQdOfrancoZgabMhinaLilya,jHkClBm6ni4quinn,re3s0;h0umit,yd;ay,e0iloh;a,lby;g9ne;co,ko0;!s;a1el0ina,org6;!okuhF;ds,naia,r1tt0xiB;i,y;ion,lo;ashawn,eif,uca;a3e1ir0rM;an;lsFn0rry;dall,yat5;i,sD;a0essIie,ude;i1m0;ie,mG;me;ta;rie0y;le;arcy,ev0;an,on;as1h0;arl8eyenne;ey,sidy;drien,kira,l4nd1ubr0vi;ey;i,r0;a,e0;a,y;ex2f1o0;is;ie;ei,is",WeekDay:"true¦fri2mon2s1t0wednesd3;hurs1ues1;aturd1und1;!d0;ay0;!s",Month:"true¦dec0february,july,nov0octo1sept0;em0;ber",Date:"true¦ago,on4som4t1week0yesterd5; end,ends;mr1o0;d2morrow;!w;ed0;ay",Duration:"true¦centurAd8h7m5q4se3w1y0;ear8r8;eek0k7;!end,s;ason,c5;tr,uarter;i0onth3;llisecond2nute2;our1r1;ay0ecade0;!s;ies,y",FemaleName:"true¦0:J7;1:JB;2:IJ;3:IK;4:J1;5:IO;6:JS;7:JO;8:HB;9:JK;A:H4;B:I2;C:IT;D:JH;E:IX;F:BA;G:I4;aGTbFLcDRdD0eBMfB4gADh9Ti9Gj8Dk7Cl5Wm48n3Lo3Hp33qu32r29s15t0Eu0Cv02wVxiTyOzH;aLeIineb,oHsof3;e3Sf3la,ra;h2iKlIna,ynH;ab,ep;da,ma;da,h2iHra;nab;aKeJi0FolB7uIvH;et8onDP;i0na;le0sen3;el,gm3Hn,rGLs8W;aoHme0nyi;m5XyAD;aMendDZhiDGiH;dele9lJnH;if48niHo0;e,f47;a,helmi0lHma;a,ow;ka0nB;aNeKiHusa5;ck84kIl8oleAviH;anFenJ4;ky,toriBK;da,lA8rHs0;a,nHoniH9;a,iFR;leHnesH9;nILrH;i1y;g9rHs6xHA;su5te;aYeUhRiNoLrIuHy2;i,la;acJ3iHu0J;c3na,sH;hFta;nHr0F;iFya;aJffaEOnHs6;a,gtiH;ng;!nFSra;aIeHomasi0;a,l9Oo8Ares1;l3ndolwethu;g9Fo88rIssH;!a,ie;eHi,ri7;sa,za;bOlMmKnIrHs6tia0wa0;a60yn;iHya;a,ka,s6;arFe2iHm77ra;!ka;a,iH;a,t6;at6it6;a0Ecarlett,e0AhWiSkye,neza0oQri,tNuIyH;bIGlvi1;ha,mayIJniAsIzH;an3Net8ie,y;anHi7;!a,e,nH;aCe;aIeH;fan4l5Dphan6E;cI5r5;b3fiAAm0LnHphi1;d2ia,ja,ya;er2lJmon1nIobh8QtH;a,i;dy;lETv3;aMeIirHo0risFDy5;a,lDM;ba,e0i5lJrH;iHr6Jyl;!d8Ifa;ia,lDZ;hd,iMki2nJrIu0w0yH;la,ma,na;i,le9on,ron,yn;aIda,ia,nHon;a,on;!ya;k6mH;!aa;lJrItaye82vH;da,inj;e0ife;en1i0ma;anA9bLd5Oh1SiBkKlJmInd2rHs6vannaC;aCi0;ant6i2;lDOma,ome;ee0in8Tu2;in1ri0;a05eZhXiUoHuthDM;bScRghQl8LnPsJwIxH;anB3ie,y;an,e0;aIeHie,lD;ann7ll1marDGtA;!lHnn1;iHyn;e,nH;a,dF;da,i,na;ayy8G;hel67io;bDRerAyn;a,cIkHmas,nFta,ya;ki,o;h8Xki;ea,iannGMoH;da,n1P;an0bJemFgi0iInHta,y0;a8Bee;han86na;a,eH;cHkaC;a,ca;bi0chIe,i0mo0nHquETy0;di,ia;aERelHiB;!e,le;een4ia0;aPeOhMiLoJrHute6A;iHudenCV;scil3LyamvaB;lHrt3;i0ly;a,paluk;ilome0oebe,ylH;is,lis;ggy,nelope,r5t2;ige,m0VnKo5rvaDMtIulH;a,et8in1;ricHt4T;a,e,ia;do2i07;ctav3dIfD3is6ksa0lHphD3umC5yunbileg;a,ga,iv3;eHvAF;l3t8;aWeUiMoIurHy5;!ay,ul;a,eJor,rIuH;f,r;aCeEma;ll1mi;aNcLhariBQkKlaJna,sHta,vi;anHha;ur;!y;a,iDZki;hoGk9YolH;a,e4P;!mh;hir,lHna,risDEsreE;!a,lBV;asuMdLh3i6Dl5nKomi7rgEVtH;aHhal4;lHs6;i1ya;cy,et8;e9iF0ya;nngu2X;a0Ackenz4e02iMoJrignayani,uriDJyH;a,rH;a,iOlNna,tG;bi0i2llBJnH;a,iH;ca,ka,qD9;a,cUdo4ZkaTlOmi,nMrItzi,yH;ar;aJiIlH;anET;am;!l,nB;dy,eHh,n4;nhGrva;aKdJe0iCUlH;iHy;cent,e;red;!gros;!e5;ae5hH;ae5el3Z;ag5DgNi,lKrH;edi7AiIjem,on,yH;em,l;em,sCG;an4iHliCF;nHsCJ;a,da;!an,han;b09cASd07e,g05ha,i04ja,l02n00rLsoum5YtKuIv84xBKyHz4;bell,ra,soBB;d7rH;a,eE;h8Gild1t4;a,cUgQiKjor4l7Un4s6tJwa,yH;!aHbe6Xja9lAE;m,nBL;a,ha,in1;!aJbCGeIja,lDna,sHt63;!a,ol,sa;!l1D;!h,mInH;!a,e,n1;!awit,i;arJeIie,oHr48ueri8;!t;!ry;et46i3B;el4Xi7Cy;dHon,ue5;akranAy;ak,en,iHlo3S;a,ka,nB;a,re,s4te;daHg4;!l3E;alDd4elHge,isDJon0;ei9in1yn;el,le;a0Ne0CiXoQuLyH;d3la,nH;!a,dIe2OnHsCT;!a,e2N;a,sCR;aD4cJel0Pis1lIna,pHz;e,iA;a,u,wa;iHy;a0Se,ja,l2NnB;is,l1UrItt1LuHvel4;el5is1;aKeIi7na,rH;aADi7;lHn1tA;ei;!in1;aTbb9HdSepa,lNnKsJvIzH;!a,be5Ret8z4;!ia;a,et8;!a,dH;a,sHy;ay,ey,i,y;a,iJja,lH;iHy;aA8e;!aH;!nF;ia,ya;!nH;!a,ne;aPda,e0iNjYla,nMoKsJtHx93y5;iHt4;c3t3;e2PlCO;la,nHra;a,ie,o2;a,or1;a,gh,laH;!ni;!h,nH;a,d2e,n5V;cOdon9DiNkes6mi9Gna,rMtJurIvHxmi,y5;ern1in3;a,e5Aie,yn;as6iIoH;nya,ya;fa,s6;a,isA9;a,la;ey,ie,y;a04eZhXiOlASoNrJyH;lHra;a,ee,ie;istHy6I;a,en,iIyH;!na;!e,n5F;nul,ri,urtnB8;aOerNlB7mJrHzzy;a,stH;en,in;!berlImernH;aq;eHi,y;e,y;a,stE;!na,ra;aHei2ongordzol;dij1w5;el7UiKjsi,lJnIrH;a,i,ri;d2na,za;ey,i,lBLs4y;ra,s6;biAcARdiat7MeBAiSlQmPnyakuma1DrNss6NtKviAyH;!e,lH;a,eH;e,i8T;!a6HeIhHi4TlDri0y;ar8Her8Hie,leErBAy;!lyn8Ori0;a,en,iHl5Xoli0yn;!ma,nFs95;a5il1;ei8Mi,lH;e,ie;a,tl6O;a0AeZiWoOuH;anMdLlHst88;es,iH;a8NeHs8X;!n9tH;!a,te;e5Mi3My;a,iA;!anNcelDdMelGhan7VleLni,sIva0yH;a,ce;eHie;fHlDph7Y;a,in1;en,n1;i7y;!a,e,n45;lHng;!i1DlH;!i1C;anNle0nKrJsH;i8JsH;!e,i8I;i,ri;!a,elGif2CnH;a,et8iHy;!e,f2A;a,eJiInH;a,eIiH;e,n1;!t8;cMda,mi,nIque4YsminFvie2y9zH;min7;a7eIiH;ce,e,n1s;!lHs82t0F;e,le;inIk6HlDquelH;in1yn;da,ta;da,lRmPnOo0rNsIvaHwo0zaro;!a0lu,na;aJiIlaHob89;!n9R;do2;belHdo2;!a,e,l3B;a7Ben1i0ma;di2es,gr72ji;a9elBogH;en1;a,e9iHo0se;a0na;aSeOiJoHus7Kyacin2C;da,ll4rten24snH;a,i9U;lImaH;ri;aIdHlaI;a,egard;ry;ath1BiJlInrietArmi9sH;sa,t1A;en2Uga,mi;di;bi2Fil8MlNnMrJsItHwa,yl8M;i5Tt4;n60ti;iHmo51ri53;etH;!te;aCnaC;a,ey,l4;a02eWiRlPoNrKunJwH;enHyne1R;!dolD;ay,el;acieIetHiselB;a,chE;!la;ld1CogooH;sh;adys,enHor3yn2K;a,da,na;aKgi,lIna,ov8EselHta;a,e,le;da,liH;an;!n0;mLnJorgIrH;ald5Si,m3Etrud7;et8i4X;a,eHna;s29vieve;ma;bIle,mHrnet,yG;al5Si5;iIrielH;a,l1;!ja;aTeQiPlorOoz3rH;anJeIiH;da,eB;da,ja;!cH;esIiHoi0P;n1s66;!ca;a,enc3;en,o0;lIn0rnH;anB;ec3ic3;jr,nArKtHy7;emIiHma,oumaA;ha,ma,n;eh;ah,iBrah,za0;cr4Rd0Re0Qi0Pk0Ol07mXn54rUsOtNuMvHwa;aKelIiH;!e,ta;inFyn;!a;!ngel4V;geni1ni47;h5Yien9ta;mLperanKtH;eIhHrel5;er;l31r7;za;a,eralB;iHma,ne4Lyn;cHka,n;a,ka;aPeNiKmH;aHe21ie,y;!li9nuH;elG;lHn1;e7iHy;a,e,ja;lHrald;da,y;!nue5;aWeUiNlMma,no2oKsJvH;a,iH;na,ra;a,ie;iHuiH;se;a,en,ie,y;a0c3da,e,f,nMsJzaH;!betHveA;e,h;aHe,ka;!beH;th;!a,or;anor,nH;!a,i;!in1na;ate1Rta;leEs6;vi;eIiHna,wi0;e,th;l,n;aYeMh3iLjeneKoH;lor5Vminiq4Ln3FrHtt4;a,eEis,la,othHthy;ea,y;ba;an09naCon9ya;anQbPde,eOiMlJmetr3nHsir5M;a,iH;ce,se;a,iIla,orHphi9;es,is;a,l6F;dHrdH;re;!d5Ena;!b2ForaCraC;a,d2nH;!a,e;hl3i0l0GmNnLphn1rIvi1WyH;le,na;a,by,cIia,lH;a,en1;ey,ie;a,et8iH;!ca,el1Aka,z;arHia;is;a0Re0Nh04i02lUoJristIynH;di,th3;al,i0;lPnMrIurH;tn1D;aJd2OiHn2Ori9;!nH;a,e,n1;!l4;cepci5Cn4sH;tanHuelo;ce,za;eHleE;en,t8;aJeoIotH;il54;!pat2;ir7rJudH;et8iH;a,ne;a,e,iH;ce,sZ;a2er2ndH;i,y;aReNloe,rH;isJyH;stH;al;sy,tH;a1Sen,iHy;an1e,n1;deJlseIrH;!i7yl;a,y;li9;nMrH;isKlImH;ai9;a,eHot8;n1t8;!sa;d2elGtH;al,elG;cIlH;es8i47;el3ilH;e,ia,y;itlYlXmilWndVrMsKtHy5;aIeIhHri0;er1IleErDy;ri0;a38sH;a37ie;a,iOlLmeJolIrH;ie,ol;!e,in1yn;lHn;!a,la;a,eIie,otHy;a,ta;ne,y;na,s1X;a0Ii0I;a,e,l1;isAl4;in,yn;a0Ke02iZlXoUrH;andi7eRiJoIyH;an0nn;nwDoke;an3HdgMgiLtH;n31tH;!aInH;ey,i,y;ny;d,t8;etH;!t7;an0e,nH;da,na;bbi7glarIlo07nH;iAn4;ka;ancHythe;a,he;an1Clja0nHsm3M;iAtH;ou;aWcVlinUniArPssOtJulaCvH;!erlH;ey,y;hJsy,tH;e,iHy7;e,na;!anH;ie,y;!ie;nItHyl;ha,ie;adIiH;ce;et8i9;ay,da;ca,ky;!triH;ce,z;rbJyaH;rmH;aa;a2o2ra;a2Ub2Od25g21i1Sj5l18m0Zn0Boi,r06sWtVuPvOwa,yIzH;ra,u0;aKes6gJlIn,seH;!l;in;un;!nH;a,na;a,i2K;drLguJrIsteH;ja;el3;stH;in1;a,ey,i,y;aahua,he0;hIi2Gja,miAs2DtrH;id;aMlIraqHt21;at;eIi7yH;!n;e,iHy;gh;!nH;ti;iJleIo6piA;ta;en,n1t8;aHelG;!n1J;a01dje5eZgViTjRnKohito,toHya;inet8nH;el5ia;te;!aKeIiHmJ;e,ka;!mHtt7;ar4;!belIliHmU;sa;!l1;a,eliH;ca;ka,sHta;a,sa;elHie;a,iH;a,ca,n1qH;ue;!tH;a,te;!bImHstasiMya;ar3;el;aLberKeliJiHy;e,l3naH;!ta;a,ja;!ly;hGiIl3nB;da;a,ra;le;aWba,ePiMlKthJyH;a,c3sH;a,on,sa;ea;iHys0N;e,s0M;a,cIn1sHza;a,e,ha,on,sa;e,ia,ja;c3is6jaKksaKna,sJxH;aHia;!nd2;ia,saH;nd2;ra;ia;i0nIyH;ah,na;a,is,naCoud;la;c6da,leEmNnLsH;haClH;inHyY;g,n;!h;a,o,slH;ey;ee;en;at6g4nIusH;ti0;es;ie;aWdiTelMrH;eJiH;anMenH;a,e,ne;an0;na;!aLeKiIyH;nn;a,n1;a,e;!ne;!iH;de;e,lDsH;on;yn;!lH;i9yn;ne;aKbIiHrL;!e,gaK;ey,i7y;!e;gaH;il;dKliyJradhIs6;ha;ya;ah;a,ya",Honorific:"true¦director1field marsh2lieutenant1rear0sergeant major,vice0; admir1; gener0;al","Adj|Gerund":"true¦0:3F;1:3H;2:31;3:2X;4:35;5:33;6:3C;7:2Z;8:36;9:29;a33b2Tc2Bd1Te1If19g12h0Zi0Rl0Nm0Gnu0Fo0Ap04rYsKtEuBvAw1Ayiel3;ar6e08;nBpA;l1Rs0B;fol3n1Zsett2;aEeDhrBi4ouc7rAwis0;e0Bif2oub2us0yi1;ea1SiA;l2vi1;l2mp0rr1J;nt1Vxi1;aMcreec7enten2NhLkyrocke0lo0Vmi2oJpHtDuBweA;e0Ul2;pp2ArA;gi1pri5roun3;aBea8iAri2Hun9;mula0r4;gge4rA;t2vi1;ark2eAraw2;e3llb2F;aAot7;ki1ri1;i9oc29;dYtisf6;aEeBive0oAus7;a4l2;assu4defi9fres7ig9juve07mai9s0vAwar3;ea2italiAol1G;si1zi1;gi1ll6mb2vi1;a6eDier23lun1VrAun2C;eBoA;mi5vo1Z;ce3s5vai2;n3rpleA;xi1;ffCpWutBverAwi1;arc7lap04p0Pri3whel8;goi1l6st1J;en3sA;et0;m2Jrtu4;aEeDiCoBuAyst0L;mb2;t1Jvi1;s5tiga0;an1Rl0n3smeri26;dAtu4;de9;aCeaBiAo0U;fesa0Tvi1;di1ni1;c1Fg19s0;llumiGmFnArri0R;cDfurHsCtBviA;go23ti1;e1Oimi21oxica0rig0V;pi4ul0;orpo20r0K;po5;na0;eaBorr02umilA;ia0;li1rtwar8;lFrA;atiDipCoBuelA;i1li1;undbrea10wi1;pi1;f6ng;a4ea8;a3etc7it0lEoCrBulfA;il2;ee1FighXust1L;rAun3;ebo3thco8;aCoA;a0wA;e4i1;mi1tte4;lectrJmHnExA;aCci0hBis0pA;an3lo3;aOila1B;c0spe1A;ab2coura0CdBergi13ga0Clive9ric7s02tA;hral2i0J;ea4u4;barras5er09pA;owe4;if6;aQeIiBrA;if0;sAzz6;aEgDhearCsen0tA;rAur11;ac0es5;te9;us0;ppoin0r8;biliGcDfi9gra3ligh0mBpres5sAvasG;erE;an3ea9orA;ali0L;a6eiBli9rA;ea5;vi1;ta0;maPri1s7un0zz2;aPhMlo5oAripp2ut0;mGnArrespon3;cer9fDspi4tA;inBrA;as0ibu0ol2;ui1;lic0u5;ni1;fDmCpA;eAromi5;l2ti1;an3;or0;aAil2;llenAnAr8;gi1;l8ptAri1;iva0;aff2eGin3lFoDrBuA;d3st2;eathtaAui5;ki1;gg2i2o8ri1unA;ci1;in3;co8wiA;lAtc7;de4;bsorVcOgonMlJmHnno6ppea2rFsA;pi4su4toA;nBun3;di1;is7;hi1;res0;li1;aFu5;si1;ar8lu4;ri1;mi1;iAzi1;zi1;cAhi1;eleDomA;moBpan6;yi1;da0;ra0;ti1;bi1;ng",Comparable:"true¦0:3C;1:3Q;2:3F;a3Tb3Cc33d2Te2Mf2Ag1Wh1Li1Fj1Ek1Bl13m0Xn0So0Rp0Iqu0Gr07sHtCug0vAw4y3za0Q;el10ouN;ary,e6hi5i3ry;ck0Cde,l3n1ry,se;d,y;ny,te;a3i3R;k,ry;a3erda2ulgar;gue,in,st;a6en2Xhi5i4ouZr3;anqu2Cen1ue;dy,g36me0ny;ck,rs28;ll,me,rt,wd3I;aRcaPeOhMiLkin0BlImGoEpDt6u4w3;eet,ift;b3dd0Wperfi21rre28;sta26t21;a8e7iff,r4u3;pUr1;a4ict,o3;ng;ig2Vn0N;a1ep,rn;le,rk,te0;e1Si2Vright0;ci1Yft,l3on,re;emn,id;a3el0;ll,rt;e4i3y;g2Mm0Z;ek,nd2T;ck24l0mp1L;a3iRrill,y;dy,l01rp;ve0Jxy;n1Jr3;ce,y;d,fe,int0l1Hv0V;a8e6i5o3ude;mantic,o19sy,u3;gh;pe,t1P;a3d,mo0A;dy,l;gg4iFndom,p3re,w;id;ed;ai2i3;ck,et;hoAi1Fl9o8r5u3;ny,r3;e,p11;egna2ic4o3;fouSud;ey,k0;liXor;ain,easa2;ny;dd,i0ld,ranL;aive,e5i4o3u14;b0Sisy,rm0Ysy;bb0ce,mb0R;a3r1w;r,t;ad,e5ild,o4u3;nda12te;ist,o1;a4ek,l3;low;s0ty;a8e7i6o3ucky;f0Jn4o15u3ve0w10y0N;d,sy;e0g;ke0l,mp,tt0Eve0;e1Qwd;me,r3te;ge;e4i3;nd;en;ol0ui19;cy,ll,n3;secu6t3;e3ima4;llege2rmedia3;te;re;aAe7i6o5u3;ge,m3ng1C;bYid;me0t;gh,l0;a3fXsita2;dy,rWv3;en0y;nd13ppy,r3;d3sh;!y;aFenEhCiBlAoofy,r3;a8e6i5o3ue0Z;o3ss;vy;m,s0;at,e3y;dy,n;nd,y;ad,ib,ooD;a2d1;a3o3;st0;tDuiS;u1y;aCeebBi9l8o6r5u3;ll,n3r0N;!ny;aCesh,iend0;a3nd,rmD;my;at,ir7;erce,nan3;ci9;le;r,ul3;ty;a6erie,sse4v3xtre0B;il;nti3;al;r4s3;tern,y;ly,th0;appZe9i5ru4u3;mb;nk;r5vi4z3;zy;ne;e,ty;a3ep,n9;d3f,r;!ly;agey,h8l7o5r4u3;dd0r0te;isp,uel;ar3ld,mmon,st0ward0zy;se;evKou1;e3il0;ap,e3;sy;aHiFlCoAr5u3;ff,r0sy;ly;a6i3oad;g4llia2;nt;ht;sh,ve;ld,un3;cy;a4o3ue;nd,o1;ck,nd;g,tt3;er;d,ld,w1;dy;bsu6ng5we3;so3;me;ry;rd",Adverb:"true¦a08b05d00eYfSheQinPjustOkinda,likewiZmMnJoEpCquite,r9s5t2u0very,well;ltima01p0; to,wards5;h1iny bit,o0wiO;o,t6;en,us;eldom,o0uch;!me1rt0; of;how,times,w0C;a1e0;alS;ndomRth05;ar excellenEer0oint blank; Lhaps;f3n0utright;ce0ly;! 0;ag05moX; courGten;ewJo0; longWt 0;onHwithstand9;aybe,eanwhiNore0;!ovT;! aboX;deed,steY;lla,n0;ce;or3u0;ck1l9rther0;!moK;ing; 0evK;exampCgood,suH;n mas0vI;se;e0irect2; 2fini0;te0;ly;juAtrop;ackward,y 0;far,no0; means,w; GbroFd nauseam,gEl7ny5part,s4t 2w0;ay,hi0;le;be7l0mo7wor7;arge,ea6; soon,i4;mo0way;re;l 3mo2ongsi1ready,so,togeth0ways;er;de;st;b1t0;hat;ut;ain;ad;lot,posteriori",Conjunction:"true¦aXbTcReNhowMiEjust00noBo9p8supposing,t5wh0yet;e1il0o3;e,st;n1re0thN; if,by,vM;evL;h0il,o;erefOo0;!uU;lus,rovided th9;r0therwiM;! not; mattEr,w0;! 0;since,th4w7;f4n0; 0asmuch;as mIcaForder t0;h0o;at;! 0;only,t0w0;hen;!ev3;ith2ven0;! 0;if,tB;er;o0uz;s,z;e0ut,y the time;cau1f0;ore;se;lt3nd,s 0;far1if,m0soon1t2;uch0; as;hou0;gh",Currency:"true¦$,aud,bQcOdJeurIfHgbp,hkd,iGjpy,kElDp8r7s3usd,x2y1z0¢,£,¥,ден,лв,руб,฿,₡,₨,€,₭,﷼;lotyQł;en,uanP;af,of;h0t5;e0il5;k0q0;elK;oubleJp,upeeJ;e2ound st0;er0;lingG;n0soF;ceEnies;empi7i7;n,r0wanzaCyatC;!onaBw;ls,nr;ori7ranc9;!os;en3i2kk,o0;b0ll2;ra5;me4n0rham4;ar3;e0ny;nt1;aht,itcoin0;!s",Determiner:"true¦aBboth,d9e6few,le5mu8neiDplenty,s4th2various,wh0;at0ich0;evC;a0e4is,ose;!t;everal,ome;!ast,s;a1l0very;!se;ch;e0u;!s;!n0;!o0y;th0;er","Adj|Present":"true¦a07b04cVdQeNfJhollIidRlEmCnarrIoBp9qua8r7s3t2uttFw0;aKet,ro0;ng,u08;endChin;e2hort,l1mooth,our,pa9tray,u0;re,speU;i2ow;cu6da02leSpaN;eplica01i02;ck;aHerfePr0;eseUime,omV;bscu1pen,wn;atu0e3odeH;re;a2e1ive,ow0;er;an;st,y;ow;a2i1oul,r0;ee,inge;rm;iIke,ncy,st;l1mpty,x0;emHpress;abo4ic7;amp,e2i1oub0ry,ull;le;ffu9re6;fu8libe0;raE;alm,l5o0;mpleCn3ol,rr1unterfe0;it;e0u7;ct;juga8sum7;ea1o0;se;n,r;ankru1lu0;nt;pt;li2pproxi0rticula1;ma0;te;ght","Person|Adj":"true¦b3du2earnest,frank,mi2r0san1woo1;an0ich,u1;dy;sty;ella,rown",Modal:"true¦c5lets,m4ought3sh1w0;ill,o5;a0o4;ll,nt;! to,a;ight,ust;an,o0;uld",Verb:"true¦born,cannot,gonna,has,keep tabs,msg","Person|Verb":"true¦b8ch7dr6foster,gra5ja9lan4ma2ni9ollie,p1rob,s0wade;kip,pike,t5ue;at,eg,ier2;ck,r0;k,shal;ce;ce,nt;ew;ase,u1;iff,l1ob,u0;ck;aze,ossom","Person|Date":"true¦a2j0sep;an0une;!uary;p0ugust,v0;ril"},_i=36,Jf="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",Yh=Jf.split("").reduce(function(e,t,r){return e[t]=r,e},{}),iT=function(e){if(Jf[e]!==void 0)return Jf[e];let t=1,r=_i,n="";for(;e>=r;e-=r,t++,r*=_i);for(;t--;){const a=e%_i;n=String.fromCharCode((a<10?48:55)+a)+n,e=(e-a)/_i}return n},oT=function(e){if(Yh[e]!==void 0)return Yh[e];let t=0,r=1,n=_i,a=1;for(;r<e.length;t+=n,r++,n*=_i);for(let i=e.length-1;i>=0;i--,a*=_i){let o=e.charCodeAt(i)-48;o>10&&(o-=7),t+=o*a}return t},Kf={toAlphaCode:iT,fromAlphaCode:oT},sT=function(e){const t=new RegExp("([0-9A-Z]+):([0-9A-Z]+)");for(let r=0;r<e.nodes.length;r++){const n=t.exec(e.nodes[r]);if(!n){e.symCount=r;break}e.syms[Kf.fromAlphaCode(n[1])]=Kf.fromAlphaCode(n[2])}e.nodes=e.nodes.slice(e.symCount,e.nodes.length)},uT=function(e,t,r){const n=Kf.fromAlphaCode(t);return n<e.symCount?e.syms[n]:r+n+1-e.symCount},lT=function(e){const t=[],r=(n,a)=>{let i=e.nodes[n];i[0]==="!"&&(t.push(a),i=i.slice(1));const o=i.split(/([A-Z0-9,]+)/g);for(let s=0;s<o.length;s+=2){const u=o[s],l=o[s+1];if(!u)continue;const c=a+u;if(l===","||l===void 0){t.push(c);continue}const f=uT(e,l,n);r(f,c)}};return r(0,""),t},cT=function(e){const t={nodes:e.split(";"),syms:[],symCount:0};return e.match(":")&&sT(t),lT(t)},fT=function(e){if(!e)return{};const t=e.split("|").reduce((n,a)=>{const i=a.split("¦");return n[i[0]]=i[1],n},{}),r={};return Object.keys(t).forEach(function(n){const a=cT(t[n]);n==="true"&&(n=!0);for(let i=0;i<a.length;i++){const o=a[i];r.hasOwnProperty(o)===!0?Array.isArray(r[o])===!1?r[o]=[r[o],n]:r[o].push(n):r[o]=n}}),r},$n=["Possessive","Pronoun"];let mT={"20th century fox":"Organization","7 eleven":"Organization","motel 6":"Organization",g8:"Organization",vh1:"Organization","76ers":"SportsTeam","49ers":"SportsTeam",q1:"Date",q2:"Date",q3:"Date",q4:"Date",km2:"Unit",m2:"Unit",dm2:"Unit",cm2:"Unit",mm2:"Unit",mile2:"Unit",in2:"Unit",yd2:"Unit",ft2:"Unit",m3:"Unit",dm3:"Unit",cm3:"Unit",in3:"Unit",ft3:"Unit",yd3:"Unit","at&t":"Organization","black & decker":"Organization","h & m":"Organization","johnson & johnson":"Organization","procter & gamble":"Organization","ben & jerry's":"Organization","&":"Conjunction",i:["Pronoun","Singular"],he:["Pronoun","Singular"],she:["Pronoun","Singular"],it:["Pronoun","Singular"],they:["Pronoun","Plural"],we:["Pronoun","Plural"],was:["Copula","PastTense"],is:["Copula","PresentTense"],are:["Copula","PresentTense"],am:["Copula","PresentTense"],were:["Copula","PastTense"],her:$n,his:$n,hers:$n,their:$n,theirs:$n,themselves:$n,your:$n,our:$n,ours:$n,my:$n,its:$n,vs:["Conjunction","Abbreviation"],if:["Condition","Preposition"],closer:"Comparative",closest:"Superlative",much:"Adverb",may:"Modal",babysat:"PastTense",blew:"PastTense",drank:"PastTense",drove:"PastTense",forgave:"PastTense",skiied:"PastTense",spilt:"PastTense",stung:"PastTense",swam:"PastTense",swung:"PastTense",guaranteed:"PastTense",shrunk:"PastTense",nears:"PresentTense",nearing:"Gerund",neared:"PastTense",no:["Negative","Expression"]};const dT={"20th century fox":"Organization","7 eleven":"Organization","motel 6":"Organization","excuse me":"Expression","financial times":"Organization","guns n roses":"Organization","la z boy":"Organization","labour party":"Organization","new kids on the block":"Organization","new york times":"Organization","the guess who":"Organization","thin lizzy":"Organization","prime minister":"Actor","free market":"Singular","lay up":"Singular","living room":"Singular","living rooms":"Plural","spin off":"Singular","appeal court":"Uncountable","cold war":"Uncountable","gene pool":"Uncountable","machine learning":"Uncountable","nail polish":"Uncountable","time off":"Uncountable","take part":"Infinitive","bill gates":"Person","doctor who":"Person","dr who":"Person","he man":"Person","iron man":"Person","kid cudi":"Person","run dmc":"Person","rush limbaugh":"Person","snow white":"Person","tiger woods":"Person","brand new":"Adjective","en route":"Adjective","left wing":"Adjective","off guard":"Adjective","on board":"Adjective","part time":"Adjective","right wing":"Adjective","so called":"Adjective","spot on":"Adjective","straight forward":"Adjective","super duper":"Adjective","tip top":"Adjective","top notch":"Adjective","up to date":"Adjective","win win":"Adjective","brooklyn nets":"SportsTeam","chicago bears":"SportsTeam","houston astros":"SportsTeam","houston dynamo":"SportsTeam","houston rockets":"SportsTeam","houston texans":"SportsTeam","minnesota twins":"SportsTeam","orlando magic":"SportsTeam","san antonio spurs":"SportsTeam","san diego chargers":"SportsTeam","san diego padres":"SportsTeam","iron maiden":"ProperNoun","isle of man":"Country","united states":"Country","united states of america":"Country","prince edward island":"Region","cedar breaks":"Place","cedar falls":"Place","point blank":"Adverb","tiny bit":"Adverb","by the time":"Conjunction","no matter":"Conjunction","civil wars":"Plural","credit cards":"Plural","default rates":"Plural","free markets":"Plural","head starts":"Plural","home runs":"Plural","lay ups":"Plural","phone calls":"Plural","press releases":"Plural","record labels":"Plural","soft serves":"Plural","student loans":"Plural","tax returns":"Plural","tv shows":"Plural","video games":"Plural","took part":"PastTense","takes part":"PresentTense","taking part":"Gerund","taken part":"Participle","light bulb":"Noun","rush hour":"Noun","fluid ounce":"Unit","the rolling stones":"Organization"},hT=[":(",":)",":P",":p",":O",";(",";)",";P",";p",";O",":3",":|",":/",":\\",":$",":*",":@",":-(",":-)",":-P",":-p",":-O",":-3",":-|",":-/",":-\\",":-$",":-*",":-@",":^(",":^)",":^P",":^p",":^O",":^3",":^|",":^/",":^\\",":^$",":^*",":^@","):","(:","$:","*:",")-:","(-:","$-:","*-:",")^:","(^:","$^:","*^:","<3","</3","<\\3","=("],du={a:[[/(antenn|formul|nebul|vertebr|vit)a$/i,"$1ae"],[/ia$/i,"ia"]],e:[[/(kn|l|w)ife$/i,"$1ives"],[/(hive)$/i,"$1s"],[/([m|l])ouse$/i,"$1ice"],[/([m|l])ice$/i,"$1ice"]],f:[[/^(dwar|handkerchie|hoo|scar|whar)f$/i,"$1ves"],[/^((?:ca|e|ha|(?:our|them|your)?se|she|wo)l|lea|loa|shea|thie)f$/i,"$1ves"]],i:[[/(octop|vir)i$/i,"$1i"]],m:[[/([ti])um$/i,"$1a"]],n:[[/^(oxen)$/i,"$1"]],o:[[/(al|ad|at|er|et|ed)o$/i,"$1oes"]],s:[[/(ax|test)is$/i,"$1es"],[/(alias|status)$/i,"$1es"],[/sis$/i,"ses"],[/(bu)s$/i,"$1ses"],[/(sis)$/i,"ses"],[/^(?!talis|.*hu)(.*)man$/i,"$1men"],[/(octop|vir|radi|nucle|fung|cact|stimul)us$/i,"$1i"]],x:[[/(matr|vert|ind|cort)(ix|ex)$/i,"$1ices"],[/^(ox)$/i,"$1en"]],y:[[/([^aeiouy]|qu)y$/i,"$1ies"]],z:[[/(quiz)$/i,"$1zes"]]},pT=/([xsz]|ch|sh)$/,gT=function(e){let t=e[e.length-1];if(du.hasOwnProperty(t)===!0)for(let r=0;r<du[t].length;r+=1){let n=du[t][r][0];if(n.test(e)===!0)return e.replace(n,du[t][r][1])}return null},cc=function(e="",t){let{irregularPlurals:r,uncountable:n}=t.two;if(n.hasOwnProperty(e))return e;if(r.hasOwnProperty(e))return r[e];let a=gT(e);return a!==null?a:pT.test(e)?e+"es":e+"s"},vT=/\|/;let Ko=mT,Yf={};const yT={two:{irregularPlurals:fw,uncountable:{}}};Object.keys(Kh).forEach(e=>{let t=fT(Kh[e]);if(!vT.test(e)){Object.keys(t).forEach(r=>{Ko[r]=e});return}Object.keys(t).forEach(r=>{if(Yf[r]=e,e==="Noun|Verb"){let n=cc(r,yT);Yf[n]="Plural|Verb"}})});hT.forEach(e=>Ko[e]="Emoticon");delete Ko[""];delete Ko[null];delete Ko[" "];const de="Singular",Ht={beforeTags:{Determiner:de,Possessive:de,Acronym:de,Noun:de,Adjective:de,PresentTense:de,Gerund:de,PastTense:de,Infinitive:de,Date:de,Ordinal:de,Demonym:de},afterTags:{Value:de,Modal:de,Copula:de,PresentTense:de,PastTense:de,Demonym:de,Actor:de},beforeWords:{the:de,with:de,without:de,of:de,for:de,any:de,all:de,on:de,cut:de,cuts:de,increase:de,decrease:de,raise:de,drop:de,save:de,saved:de,saves:de,make:de,makes:de,made:de,minus:de,plus:de,than:de,another:de,versus:de,neither:de,about:de,favorite:de,best:de,daily:de,weekly:de,linear:de,binary:de,mobile:de,lexical:de,technical:de,computer:de,scientific:de,security:de,government:de,popular:de,formal:de,no:de,more:de,one:de,let:de,her:de,his:de,their:de,our:de,us:de,sheer:de,monthly:de,yearly:de,current:de,previous:de,upcoming:de,last:de,next:de,main:de,initial:de,final:de,beginning:de,end:de,top:de,bottom:de,future:de,past:de,major:de,minor:de,side:de,central:de,peripheral:de,public:de,private:de},afterWords:{of:de,system:de,aid:de,method:de,utility:de,tool:de,reform:de,therapy:de,philosophy:de,room:de,authority:de,says:de,said:de,wants:de,wanted:de,is:de,did:de,do:de,can:de,wise:de}},De="Infinitive",$r={beforeTags:{Modal:De,Adverb:De,Negative:De,Plural:De},afterTags:{Determiner:De,Adverb:De,Possessive:De,Reflexive:De,Preposition:De,Cardinal:De,Comparative:De,Superlative:De},beforeWords:{i:De,we:De,you:De,they:De,to:De,please:De,will:De,have:De,had:De,would:De,could:De,should:De,do:De,did:De,does:De,can:De,must:De,us:De,me:De,let:De,even:De,when:De,help:De,he:De,she:De,it:De,being:De,bi:De,co:De,contra:De,de:De,inter:De,intra:De,mis:De,pre:De,out:De,counter:De,nobody:De,somebody:De,anybody:De,everybody:De},afterWords:{the:De,me:De,you:De,him:De,us:De,her:De,his:De,them:De,they:De,it:De,himself:De,herself:De,itself:De,myself:De,ourselves:De,themselves:De,something:De,anything:De,a:De,an:De,up:De,down:De,by:De,out:De,off:De,under:De,what:De,all:De,to:De,because:De,although:De,how:De,otherwise:De,together:De,though:De,into:De,yet:De,more:De,here:De,there:De,away:De}},bT={beforeTags:Object.assign({},$r.beforeTags,Ht.beforeTags,{}),afterTags:Object.assign({},$r.afterTags,Ht.afterTags,{}),beforeWords:Object.assign({},$r.beforeWords,Ht.beforeWords,{}),afterWords:Object.assign({},$r.afterWords,Ht.afterWords,{})},Ee="Adjective",tr={beforeTags:{Determiner:Ee,Possessive:Ee,Hyphenated:Ee},afterTags:{Adjective:Ee},beforeWords:{seem:Ee,seemed:Ee,seems:Ee,feel:Ee,feels:Ee,felt:Ee,stay:Ee,appear:Ee,appears:Ee,appeared:Ee,also:Ee,over:Ee,under:Ee,too:Ee,it:Ee,but:Ee,still:Ee,really:Ee,quite:Ee,well:Ee,very:Ee,truly:Ee,how:Ee,deeply:Ee,hella:Ee,profoundly:Ee,extremely:Ee,so:Ee,badly:Ee,mostly:Ee,totally:Ee,awfully:Ee,rather:Ee,nothing:Ee,something:Ee,anything:Ee,not:Ee,me:Ee,is:Ee,face:Ee,faces:Ee,faced:Ee,look:Ee,looks:Ee,looked:Ee,reveal:Ee,reveals:Ee,revealed:Ee,sound:Ee,sounded:Ee,sounds:Ee,remains:Ee,remained:Ee,prove:Ee,proves:Ee,proved:Ee,becomes:Ee,stays:Ee,tastes:Ee,taste:Ee,smells:Ee,smell:Ee,gets:Ee,grows:Ee,as:Ee,rings:Ee,radiates:Ee,conveys:Ee,convey:Ee,conveyed:Ee,of:Ee},afterWords:{too:Ee,also:Ee,or:Ee,enough:Ee,as:Ee}},Ge="Gerund",Xa={beforeTags:{Adverb:Ge,Preposition:Ge,Conjunction:Ge},afterTags:{Adverb:Ge,Possessive:Ge,Person:Ge,Pronoun:Ge,Determiner:Ge,Copula:Ge,Preposition:Ge,Conjunction:Ge,Comparative:Ge},beforeWords:{been:Ge,keep:Ge,continue:Ge,stop:Ge,am:Ge,be:Ge,me:Ge,began:Ge,start:Ge,starts:Ge,started:Ge,stops:Ge,stopped:Ge,help:Ge,helps:Ge,avoid:Ge,avoids:Ge,love:Ge,loves:Ge,loved:Ge,hate:Ge,hates:Ge,hated:Ge},afterWords:{you:Ge,me:Ge,her:Ge,him:Ge,his:Ge,them:Ge,their:Ge,it:Ge,this:Ge,there:Ge,on:Ge,about:Ge,for:Ge,up:Ge,down:Ge}},vt="Gerund",Ha="Adjective",wT={beforeTags:Object.assign({},tr.beforeTags,Xa.beforeTags,{Imperative:vt,Infinitive:Ha,Plural:vt}),afterTags:Object.assign({},tr.afterTags,Xa.afterTags,{Noun:Ha}),beforeWords:Object.assign({},tr.beforeWords,Xa.beforeWords,{is:Ha,are:vt,was:Ha,of:Ha,suggest:vt,suggests:vt,suggested:vt,recommend:vt,recommends:vt,recommended:vt,imagine:vt,imagines:vt,imagined:vt,consider:vt,considered:vt,considering:vt,resist:vt,resists:vt,resisted:vt,avoid:vt,avoided:vt,avoiding:vt,except:Ha,accept:Ha,assess:vt,explore:vt,fear:vt,fears:vt,appreciate:vt,question:vt,help:vt,embrace:vt,with:Ha}),afterWords:Object.assign({},tr.afterWords,Xa.afterWords,{to:vt,not:vt,the:vt})},Zh={beforeTags:{Determiner:void 0,Cardinal:"Noun",PhrasalVerb:"Adjective"},afterTags:{}},xT={beforeTags:Object.assign({},tr.beforeTags,Ht.beforeTags,Zh.beforeTags),afterTags:Object.assign({},tr.afterTags,Ht.afterTags,Zh.afterTags),beforeWords:Object.assign({},tr.beforeWords,Ht.beforeWords,{are:"Adjective",is:"Adjective",was:"Adjective",be:"Adjective",off:"Adjective",out:"Adjective"}),afterWords:Object.assign({},tr.afterWords,Ht.afterWords)};let et="PastTense",ds="Adjective";const hu={beforeTags:{Adverb:et,Pronoun:et,ProperNoun:et,Auxiliary:et,Noun:et},afterTags:{Possessive:et,Pronoun:et,Determiner:et,Adverb:et,Comparative:et,Date:et,Gerund:et},beforeWords:{be:et,who:et,get:ds,had:et,has:et,have:et,been:et,it:et,as:et,for:ds,more:ds,always:ds},afterWords:{by:et,back:et,out:et,in:et,up:et,down:et,before:et,after:et,for:et,the:et,with:et,as:et,on:et,at:et,between:et,to:et,into:et,us:et,them:et,his:et,her:et,their:et,our:et,me:et,about:ds}},DT={beforeTags:Object.assign({},tr.beforeTags,hu.beforeTags),afterTags:Object.assign({},tr.afterTags,hu.afterTags),beforeWords:Object.assign({},tr.beforeWords,hu.beforeWords),afterWords:Object.assign({},tr.afterWords,hu.afterWords)},NT={afterTags:{Noun:"Adjective",Conjunction:void 0}},AT={beforeTags:Object.assign({},tr.beforeTags,$r.beforeTags,{Adverb:void 0,Negative:void 0}),afterTags:Object.assign({},tr.afterTags,$r.afterTags,NT.afterTags),beforeWords:Object.assign({},tr.beforeWords,$r.beforeWords,{have:void 0,had:void 0,not:void 0,went:"Adjective",goes:"Adjective",got:"Adjective",be:"Adjective"}),afterWords:Object.assign({},tr.afterWords,$r.afterWords,{to:void 0,as:"Adjective"})},pu={beforeTags:{Copula:"Gerund",PastTense:"Gerund",PresentTense:"Gerund",Infinitive:"Gerund"},afterTags:{Value:"Gerund"},beforeWords:{are:"Gerund",were:"Gerund",be:"Gerund",no:"Gerund",without:"Gerund",you:"Gerund",we:"Gerund",they:"Gerund",he:"Gerund",she:"Gerund",us:"Gerund",them:"Gerund"},afterWords:{the:"Gerund",this:"Gerund",that:"Gerund",me:"Gerund",us:"Gerund",them:"Gerund"}},CT={beforeTags:Object.assign({},Xa.beforeTags,Ht.beforeTags,pu.beforeTags),afterTags:Object.assign({},Xa.afterTags,Ht.afterTags,pu.afterTags),beforeWords:Object.assign({},Xa.beforeWords,Ht.beforeWords,pu.beforeWords),afterWords:Object.assign({},Xa.afterWords,Ht.afterWords,pu.afterWords)},co="Singular",Ni="Infinitive",ET={beforeTags:Object.assign({},$r.beforeTags,Ht.beforeTags,{Adjective:co,Particle:co}),afterTags:Object.assign({},$r.afterTags,Ht.afterTags,{ProperNoun:Ni,Gerund:Ni,Adjective:Ni,Copula:co}),beforeWords:Object.assign({},$r.beforeWords,Ht.beforeWords,{is:co,was:co,of:co,have:null}),afterWords:Object.assign({},$r.afterWords,Ht.afterWords,{instead:Ni,about:Ni,his:Ni,her:Ni,to:null,by:null,in:null})},Ct="Person",rr={beforeTags:{Honorific:Ct,Person:Ct},afterTags:{Person:Ct,ProperNoun:Ct,Verb:Ct},beforeWords:{hi:Ct,hey:Ct,yo:Ct,dear:Ct,hello:Ct},afterWords:{said:Ct,says:Ct,told:Ct,tells:Ct,feels:Ct,felt:Ct,seems:Ct,thinks:Ct,thought:Ct,spends:Ct,spendt:Ct,plays:Ct,played:Ct,sing:Ct,sang:Ct,learn:Ct,learned:Ct,wants:Ct,wanted:Ct}},qt="Month",ST="Person",gu={beforeTags:{Date:qt,Value:qt},afterTags:{Date:qt,Value:qt},beforeWords:{by:qt,in:qt,on:qt,during:qt,after:qt,before:qt,between:qt,until:qt,til:qt,sometime:qt,of:qt,this:qt,next:qt,last:qt,previous:qt,following:qt,with:ST},afterWords:{sometime:qt,in:qt,of:qt,until:qt,the:qt}},TT={beforeTags:Object.assign({},rr.beforeTags,gu.beforeTags),afterTags:Object.assign({},rr.afterTags,gu.afterTags),beforeWords:Object.assign({},rr.beforeWords,gu.beforeWords),afterWords:Object.assign({},rr.afterWords,gu.afterWords)},MT={beforeTags:Object.assign({},Ht.beforeTags,rr.beforeTags),afterTags:Object.assign({},Ht.afterTags,rr.afterTags),beforeWords:Object.assign({},Ht.beforeWords,rr.beforeWords,{i:"Infinitive",we:"Infinitive"}),afterWords:Object.assign({},Ht.afterWords,rr.afterWords)},FT={beforeTags:Object.assign({},Ht.beforeTags,rr.beforeTags,$r.beforeTags),afterTags:Object.assign({},Ht.afterTags,rr.afterTags,$r.afterTags),beforeWords:Object.assign({},Ht.beforeWords,rr.beforeWords,$r.beforeWords),afterWords:Object.assign({},Ht.afterWords,rr.afterWords,$r.afterWords)},xr="Place",vu={beforeTags:{Place:xr},afterTags:{Place:xr,Abbreviation:xr},beforeWords:{in:xr,by:xr,near:xr,from:xr,to:xr},afterWords:{in:xr,by:xr,near:xr,from:xr,to:xr,government:xr,council:xr,region:xr,city:xr}},PT={beforeTags:Object.assign({},vu.beforeTags,rr.beforeTags),afterTags:Object.assign({},vu.afterTags,rr.afterTags),beforeWords:Object.assign({},vu.beforeWords,rr.beforeWords),afterWords:Object.assign({},vu.afterWords,rr.afterWords)},kT={beforeTags:Object.assign({},rr.beforeTags,tr.beforeTags),afterTags:Object.assign({},rr.afterTags,tr.afterTags),beforeWords:Object.assign({},rr.beforeWords,tr.beforeWords),afterWords:Object.assign({},rr.afterWords,tr.afterWords)};let vn="Unit";const OT={beforeTags:{Value:vn},afterTags:{},beforeWords:{per:vn,every:vn,each:vn,square:vn,cubic:vn,sq:vn,metric:vn},afterWords:{per:vn,squared:vn,cubed:vn,long:vn}},To={"Actor|Verb":bT,"Adj|Gerund":wT,"Adj|Noun":xT,"Adj|Past":DT,"Adj|Present":AT,"Noun|Verb":ET,"Noun|Gerund":CT,"Person|Noun":MT,"Person|Date":TT,"Person|Verb":FT,"Person|Place":PT,"Person|Adj":kT,"Unit|Noun":OT},yu=(e,t)=>{let r=Object.keys(e).reduce((n,a)=>(n[a]=e[a]==="Infinitive"?"PresentTense":"Plural",n),{});return Object.assign(r,t)};To["Plural|Verb"]={beforeWords:yu(To["Noun|Verb"].beforeWords,{had:"Plural",have:"Plural"}),afterWords:yu(To["Noun|Verb"].afterWords,{his:"PresentTense",her:"PresentTense",its:"PresentTense",in:null,to:null,is:"PresentTense",by:"PresentTense"}),beforeTags:yu(To["Noun|Verb"].beforeTags,{Conjunction:"PresentTense",Noun:void 0,ProperNoun:"PresentTense"}),afterTags:yu(To["Noun|Verb"].afterTags,{Gerund:"Plural",Noun:"PresentTense",Value:"PresentTense"})};const wt="Adjective",cr="Infinitive",Ai="PresentTense",ot="Singular",fr="PastTense",fo="Adverb",sn="Plural",Vt="Actor",bu="Verb",Mr="Noun",$T="ProperNoun",Bn="LastName",Qh="Modal",Pt="Place",Vc="Participle",BT=[null,null,{ea:ot,ia:Mr,ic:wt,ly:fo,"'n":bu,"'t":bu},{oed:fr,ued:fr,xed:fr," so":fo,"'ll":Qh,"'re":"Copula",azy:wt,eer:Mr,end:bu,ped:fr,ffy:wt,ify:cr,ing:"Gerund",ize:cr,ibe:cr,lar:wt,mum:wt,nes:Ai,nny:wt,ous:wt,que:wt,ger:Mr,ber:Mr,rol:ot,sis:ot,ogy:ot,oid:ot,ian:ot,zes:Ai,eld:fr,ken:Vc,ven:Vc,ten:Vc,ect:cr,ict:cr,ign:cr,oze:cr,ful:wt,bal:wt,ton:Mr,pur:Pt},{amed:fr,aped:fr,ched:fr,lked:fr,rked:fr,reed:fr,nded:fr,mned:wt,cted:fr,dged:fr,ield:ot,akis:Bn,cede:cr,chuk:Bn,czyk:Bn,ects:Ai,iend:ot,ends:bu,enko:Bn,ette:ot,iary:ot,wner:ot,fies:Ai,fore:fo,gate:cr,gone:wt,ices:sn,ints:sn,ruct:cr,ines:sn,ions:sn,ners:sn,pers:sn,lers:sn,less:wt,llen:wt,made:wt,nsen:Bn,oses:Ai,ould:Qh,some:wt,sson:Bn,ians:sn,tion:ot,tage:Mr,ique:ot,tive:wt,tors:Mr,vice:ot,lier:ot,fier:ot,wned:fr,gent:ot,tist:Vt,pist:Vt,rist:Vt,mist:Vt,yist:Vt,vist:Vt,ists:Vt,lite:ot,site:ot,rite:ot,mite:ot,bite:ot,mate:ot,date:ot,ndal:ot,vent:ot,uist:Vt,gist:Vt,note:ot,cide:ot,ence:ot,wide:wt,vide:cr,ract:cr,duce:cr,pose:cr,eive:cr,lyze:cr,lyse:cr,iant:wt,nary:wt,ghty:wt,uent:wt,erer:Vt,bury:Pt,dorf:Mr,esty:Mr,wych:Pt,dale:Pt,folk:Pt,vale:Pt,abad:Pt,sham:Pt,wick:Pt,view:Pt},{elist:Vt,holic:ot,phite:ot,tized:fr,urned:fr,eased:fr,ances:sn,bound:wt,ettes:sn,fully:fo,ishes:Ai,ities:sn,marek:Bn,nssen:Bn,ology:Mr,osome:ot,tment:ot,ports:sn,rough:wt,tches:Ai,tieth:"Ordinal",tures:sn,wards:fo,where:fo,archy:Mr,pathy:Mr,opoly:Mr,embly:Mr,phate:Mr,ndent:ot,scent:ot,onist:Vt,anist:Vt,alist:Vt,olist:Vt,icist:Vt,ounce:cr,iable:wt,borne:wt,gnant:wt,inant:wt,igent:wt,atory:wt,rient:ot,dient:ot,maker:Vt,burgh:Pt,mouth:Pt,ceter:Pt,ville:Pt,hurst:Pt,stead:Pt,endon:Pt,brook:Pt,shire:Pt,worth:Mr,field:$T,ridge:Pt},{auskas:Bn,parent:ot,cedent:ot,ionary:ot,cklist:ot,brooke:Pt,keeper:Vt,logist:Vt,teenth:"Value",worker:Vt,master:Vt,writer:Vt,brough:Pt,cester:Pt,ington:Pt,cliffe:Pt,ingham:Pt},{chester:Pt,logists:Vt,opoulos:Bn,borough:Pt,sdottir:Bn}],un="Adjective",kt="Noun",hs="Verb",_T=[null,null,{},{neo:kt,bio:kt,"de-":hs,"re-":hs,"un-":hs,"ex-":kt},{anti:kt,auto:kt,faux:un,hexa:kt,kilo:kt,mono:kt,nano:kt,octa:kt,poly:kt,semi:un,tele:kt,"pro-":un,"mis-":hs,"dis-":hs,"pre-":un},{anglo:kt,centi:kt,ethno:kt,ferro:kt,grand:kt,hepta:kt,hydro:kt,intro:kt,macro:kt,micro:kt,milli:kt,nitro:kt,penta:kt,quasi:un,radio:kt,tetra:kt,"omni-":un,"post-":un},{pseudo:un,"extra-":un,"hyper-":un,"inter-":un,"intra-":un,"deca-":un},{electro:kt}],Rt="Adjective",wu="Infinitive",xu="PresentTense",ha="Singular",jr="PastTense",Xh="Adverb",pa="Expression",ep="Actor",tp="Verb",rp="Noun",Du="LastName",IT={a:[[/.[aeiou]na$/,rp,"tuna"],[/.[oau][wvl]ska$/,Du],[/.[^aeiou]ica$/,ha,"harmonica"],[/^([hyj]a+)+$/,pa,"haha"]],c:[[/.[^aeiou]ic$/,Rt]],d:[[/[aeiou](pp|ll|ss|ff|gg|tt|rr|bb|nn|mm)ed$/,jr,"popped"],[/.[aeo]{2}[bdgmnprvz]ed$/,jr,"rammed"],[/.[aeiou][sg]hed$/,jr,"gushed"],[/.[aeiou]red$/,jr,"hired"],[/.[aeiou]r?ried$/,jr,"hurried"],[/[^aeiou]ard$/,ha,"steward"],[/[aeiou][^aeiou]id$/,Rt,""],[/.[vrl]id$/,Rt,"livid"],[/..led$/,jr,"hurled"],[/.[iao]sed$/,jr,""],[/[aeiou]n?[cs]ed$/,jr,""],[/[aeiou][rl]?[mnf]ed$/,jr,""],[/[aeiou][ns]?c?ked$/,jr,"bunked"],[/[aeiou]gned$/,jr],[/[aeiou][nl]?ged$/,jr],[/.[tdbwxyz]ed$/,jr],[/[^aeiou][aeiou][tvx]ed$/,jr],[/.[cdflmnprstv]ied$/,jr,"emptied"]],e:[[/.[lnr]ize$/,wu,"antagonize"],[/.[^aeiou]ise$/,wu,"antagonise"],[/.[aeiou]te$/,wu,"bite"],[/.[^aeiou][ai]ble$/,Rt,"fixable"],[/.[^aeiou]eable$/,Rt,"maleable"],[/.[ts]ive$/,Rt,"festive"],[/[a-z]-like$/,Rt,"woman-like"]],h:[[/.[^aeiouf]ish$/,Rt,"cornish"],[/.v[iy]ch$/,Du,"..ovich"],[/^ug?h+$/,pa,"ughh"],[/^uh[ -]?oh$/,pa,"uhoh"],[/[a-z]-ish$/,Rt,"cartoon-ish"]],i:[[/.[oau][wvl]ski$/,Du,"polish-male"]],k:[[/^(k){2}$/,pa,"kkkk"]],l:[[/.[gl]ial$/,Rt,"familial"],[/.[^aeiou]ful$/,Rt,"fitful"],[/.[nrtumcd]al$/,Rt,"natal"],[/.[^aeiou][ei]al$/,Rt,"familial"]],m:[[/.[^aeiou]ium$/,ha,"magnesium"],[/[^aeiou]ism$/,ha,"schism"],[/^[hu]m+$/,pa,"hmm"],[/^\d+ ?[ap]m$/,"Date","3am"]],n:[[/.[lsrnpb]ian$/,Rt,"republican"],[/[^aeiou]ician$/,ep,"musician"],[/[aeiou][ktrp]in'$/,"Gerund","cookin'"]],o:[[/^no+$/,pa,"noooo"],[/^(yo)+$/,pa,"yoo"],[/^wo{2,}[pt]?$/,pa,"woop"]],r:[[/.[bdfklmst]ler$/,"Noun"],[/[aeiou][pns]er$/,ha],[/[^i]fer$/,wu],[/.[^aeiou][ao]pher$/,ep],[/.[lk]er$/,"Noun"],[/.ier$/,"Comparative"]],t:[[/.[di]est$/,"Superlative"],[/.[icldtgrv]ent$/,Rt],[/[aeiou].*ist$/,Rt],[/^[a-z]et$/,tp]],s:[[/.[^aeiou]ises$/,xu],[/.[rln]ates$/,xu],[/.[^z]ens$/,tp],[/.[lstrn]us$/,ha],[/.[aeiou]sks$/,xu],[/.[aeiou]kes$/,xu],[/[aeiou][^aeiou]is$/,ha],[/[a-z]'s$/,rp],[/^yes+$/,pa]],v:[[/.[^aeiou][ai][kln]ov$/,Du]],y:[[/.[cts]hy$/,Rt],[/.[st]ty$/,Rt],[/.[tnl]ary$/,Rt],[/.[oe]ry$/,ha],[/[rdntkbhs]ly$/,Xh],[/.(gg|bb|zz)ly$/,Rt],[/...lly$/,Xh],[/.[gk]y$/,Rt],[/[bszmp]{2}y$/,Rt],[/.[ai]my$/,Rt],[/[ea]{2}zy$/,Rt],[/.[^aeiou]ity$/,ha]]},Fr="Verb",It="Noun",zT={leftTags:[["Adjective",It],["Possessive",It],["Determiner",It],["Adverb",Fr],["Pronoun",Fr],["Value",It],["Ordinal",It],["Modal",Fr],["Superlative",It],["Demonym",It],["Honorific","Person"]],leftWords:[["i",Fr],["first",It],["it",Fr],["there",Fr],["not",Fr],["because",It],["if",It],["but",It],["who",Fr],["this",It],["his",It],["when",It],["you",Fr],["very","Adjective"],["old",It],["never",Fr],["before",It],["a",It],["the",It],["been",Fr]],rightTags:[["Copula",It],["PastTense",It],["Conjunction",It],["Modal",It]],rightWords:[["there",Fr],["me",Fr],["man","Adjective"],["him",Fr],["it",Fr],["were",It],["took",It],["himself",Fr],["went",It],["who",It],["jr","Person"]]},Yi={Comparative:{fwd:"3:ser,ier¦1er:h,t,f,l,n¦1r:e¦2er:ss,or,om",both:"3er:ver,ear,alm¦3ner:hin¦3ter:lat¦2mer:im¦2er:ng,rm,mb¦2ber:ib¦2ger:ig¦1er:w,p,k,d¦ier:y",rev:"1:tter,yer¦2:uer,ver,ffer,oner,eler,ller,iler,ster,cer,uler,sher,ener,gher,aner,adder,nter,eter,rter,hter,rner,fter¦3:oser,ooler,eafer,user,airer,bler,maler,tler,eater,uger,rger,ainer,urer,ealer,icher,pler,emner,icter,nser,iser¦4:arser,viner,ucher,rosser,somer,ndomer,moter,oother,uarer,hiter¦5:nuiner,esser,emier¦ar:urther",ex:"worse:bad¦better:good¦4er:fair,gray,poor¦1urther:far¦3ter:fat,hot,wet¦3der:mad,sad¦3er:shy,fun¦4der:glad¦:¦4r:cute,dire,fake,fine,free,lame,late,pale,rare,ripe,rude,safe,sore,tame,wide¦5r:eerie,stale"},Gerund:{fwd:"1:nning,tting,rring,pping,eing,mming,gging,dding,bbing,kking¦2:eking,oling,eling,eming¦3:velling,siting,uiting,fiting,loting,geting,ialing,celling¦4:graming",both:"1:aing,iing,fing,xing,ying,oing,hing,wing¦2:tzing,rping,izzing,bting,mning,sping,wling,rling,wding,rbing,uping,lming,wning,mping,oning,lting,mbing,lking,fting,hting,sking,gning,pting,cking,ening,nking,iling,eping,ering,rting,rming,cting,lping,ssing,nting,nding,lding,sting,rning,rding,rking¦3:belling,siping,toming,yaking,uaking,oaning,auling,ooping,aiding,naping,euring,tolling,uzzing,ganing,haning,ualing,halling,iasing,auding,ieting,ceting,ouling,voring,ralling,garing,joring,oaming,oaking,roring,nelling,ooring,uelling,eaming,ooding,eaping,eeting,ooting,ooming,xiting,keting,ooking,ulling,airing,oaring,biting,outing,oiting,earing,naling,oading,eeding,ouring,eaking,aiming,illing,oining,eaning,onging,ealing,aining,eading¦4:thoming,melling,aboring,ivoting,weating,dfilling,onoring,eriting,imiting,tialling,rgining,otoring,linging,winging,lleting,louding,spelling,mpelling,heating,feating,opelling,choring,welling,ymaking,ctoring,calling,peating,iloring,laiting,utoring,uditing,mmaking,loating,iciting,waiting,mbating,voiding,otalling,nsoring,nselling,ocusing,itoring,eloping¦5:rselling,umpeting,atrolling,treating,tselling,rpreting,pringing,ummeting,ossoming,elmaking,eselling,rediting,totyping,onmaking,rfeiting,ntrolling¦5e:chmaking,dkeeping,severing,erouting,ecreting,ephoning,uthoring,ravening,reathing,pediting,erfering,eotyping,fringing,entoring,ombining,ompeting¦4e:emaking,eething,twining,rruling,chuting,xciting,rseding,scoping,edoring,pinging,lunging,agining,craping,pleting,eleting,nciting,nfining,ncoding,tponing,ecoding,writing,esaling,nvening,gnoring,evoting,mpeding,rvening,dhering,mpiling,storing,nviting,ploring¦3e:tining,nuring,saking,miring,haling,ceding,xuding,rining,nuting,laring,caring,miling,riding,hoking,piring,lading,curing,uading,noting,taping,futing,paring,hading,loding,siring,guring,vading,voking,during,niting,laning,caping,luting,muting,ruding,ciding,juring,laming,caling,hining,uoting,liding,ciling,duling,tuting,puting,cuting,coring,uiding,tiring,turing,siding,rading,enging,haping,buting,lining,taking,anging,haring,uiring,coming,mining,moting,suring,viding,luding¦2e:tring,zling,uging,oging,gling,iging,vring,fling,lging,obing,psing,pling,ubing,cling,dling,wsing,iking,rsing,dging,kling,ysing,tling,rging,eging,nsing,uning,osing,uming,using,ibing,bling,aging,ising,asing,ating¦2ie:rlying¦1e:zing,uing,cing,ving",rev:"ying:ie¦1ing:se,ke,te,we,ne,re,de,pe,me,le,c,he¦2ing:ll,ng,dd,ee,ye,oe,rg,us¦2ning:un¦2ging:og,ag,ug,ig,eg¦2ming:um¦2bing:ub,ab,eb,ob¦3ning:lan,can,hin,pin,win¦3ring:cur,lur,tir,tar,pur,car¦3ing:ait,del,eel,fin,eat,oat,eem,lel,ool,ein,uin¦3ping:rop,rap,top,uip,wap,hip,hop,lap,rip,cap¦3ming:tem,wim,rim,kim,lim¦3ting:mat,cut,pot,lit,lot,hat,set,pit,put¦3ding:hed,bed,bid¦3king:rek¦3ling:cil,pel¦3bing:rib¦4ning:egin¦4ing:isit,ruit,ilot,nsit,dget,rkel,ival,rcel¦4ring:efer,nfer¦4ting:rmit,mmit,ysit,dmit,emit,bmit,tfit,gret¦4ling:evel,xcel,ivel¦4ding:hred¦5ing:arget,posit,rofit¦5ring:nsfer¦5ting:nsmit,orget,cquit¦5ling:ancel,istil",ex:"3:adding,eating,aiming,aiding,airing,outing,gassing,setting,getting,putting,cutting,winning,sitting,betting,mapping,tapping,letting,bidding,hitting,tanning,netting,popping,fitting,capping,lapping,barring,banning,vetting,topping,rotting,tipping,potting,wetting,pitting,dipping,budding,hemming,pinning,jetting,kidding,padding,podding,sipping,wedding,bedding,donning,warring,penning,gutting,cueing,wadding,petting,ripping,napping,matting,tinning,binning,dimming,hopping,mopping,nodding,panning,rapping,ridding,sinning¦4:selling,falling,calling,waiting,editing,telling,rolling,heating,boating,hanging,beating,coating,singing,tolling,felling,polling,discing,seating,voiding,gelling,yelling,baiting,reining,ruining,seeking,spanning,stepping,knitting,emitting,slipping,quitting,dialing,omitting,clipping,shutting,skinning,abutting,flipping,trotting,cramming,fretting,suiting¦5:bringing,treating,spelling,stalling,trolling,expelling,rivaling,wringing,deterring,singeing,befitting,refitting¦6:enrolling,distilling,scrolling,strolling,caucusing,travelling¦7:installing,redefining,stencilling,recharging,overeating,benefiting,unraveling,programing¦9:reprogramming¦is:being¦2e:using,aging,owing¦3e:making,taking,coming,noting,hiring,filing,coding,citing,doping,baking,coping,hoping,lading,caring,naming,voting,riding,mining,curing,lining,ruling,typing,boring,dining,firing,hiding,piling,taping,waning,baling,boning,faring,honing,wiping,luring,timing,wading,piping,fading,biting,zoning,daring,waking,gaming,raking,ceding,tiring,coking,wining,joking,paring,gaping,poking,pining,coring,liming,toting,roping,wiring,aching¦4e:writing,storing,eroding,framing,smoking,tasting,wasting,phoning,shaking,abiding,braking,flaking,pasting,priming,shoring,sloping,withing,hinging¦5e:defining,refining,renaming,swathing,fringing,reciting¦1ie:dying,tying,lying,vying¦7e:sunbathing"},Participle:{fwd:"1:mt¦2:llen¦3:iven,aken¦:ne¦y:in",both:"1:wn¦2:me,aten¦3:seen,bidden,isen¦4:roven,asten¦3l:pilt¦3d:uilt¦2e:itten¦1im:wum¦1eak:poken¦1ine:hone¦1ose:osen¦1in:gun¦1ake:woken¦ear:orn¦eal:olen¦eeze:ozen¦et:otten¦ink:unk¦ing:ung",rev:"2:un¦oken:eak¦ought:eek¦oven:eave¦1ne:o¦1own:ly¦1den:de¦1in:ay¦2t:am¦2n:ee¦3en:all¦4n:rive,sake,take¦5n:rgive",ex:"2:been¦3:seen,run¦4:given,taken¦5:shaken¦2eak:broken¦1ive:dove¦2y:flown¦3e:hidden,ridden¦1eek:sought¦1ake:woken¦1eave:woven"},PastTense:{fwd:"1:tted,wed,gged,nned,een,rred,pped,yed,bbed,oed,dded,rd,wn,mmed¦2:eed,nded,et,hted,st,oled,ut,emed,eled,lded,ken,rt,nked,apt,ant,eped,eked¦3:eared,eat,eaded,nelled,ealt,eeded,ooted,eaked,eaned,eeted,mited,bid,uit,ead,uited,ealed,geted,velled,ialed,belled¦4:ebuted,hined,comed¦y:ied¦ome:ame¦ear:ore¦ind:ound¦ing:ung,ang¦ep:pt¦ink:ank,unk¦ig:ug¦all:ell¦ee:aw¦ive:ave¦eeze:oze¦old:eld¦ave:ft¦ake:ook¦ell:old¦ite:ote¦ide:ode¦ine:one¦in:un,on¦eal:ole¦im:am¦ie:ay¦and:ood¦1ise:rose¦1eak:roke¦1ing:rought¦1ive:rove¦1el:elt¦1id:bade¦1et:got¦1y:aid¦1it:sat¦3e:lid¦3d:pent",both:"1:aed,fed,xed,hed¦2:sged,xted,wled,rped,lked,kied,lmed,lped,uped,bted,rbed,rked,wned,rled,mped,fted,mned,mbed,zzed,omed,ened,cked,gned,lted,sked,ued,zed,nted,ered,rted,rmed,ced,sted,rned,ssed,rded,pted,ved,cted¦3:cled,eined,siped,ooned,uked,ymed,jored,ouded,ioted,oaned,lged,asped,iged,mured,oided,eiled,yped,taled,moned,yled,lit,kled,oaked,gled,naled,fled,uined,oared,valled,koned,soned,aided,obed,ibed,meted,nicked,rored,micked,keted,vred,ooped,oaded,rited,aired,auled,filled,ouled,ooded,ceted,tolled,oited,bited,aped,tled,vored,dled,eamed,nsed,rsed,sited,owded,pled,sored,rged,osed,pelled,oured,psed,oated,loned,aimed,illed,eured,tred,ioned,celled,bled,wsed,ooked,oiled,itzed,iked,iased,onged,ased,ailed,uned,umed,ained,auded,nulled,ysed,eged,ised,aged,oined,ated,used,dged,doned¦4:ntied,efited,uaked,caded,fired,roped,halled,roked,himed,culed,tared,lared,tuted,uared,routed,pited,naked,miled,houted,helled,hared,cored,caled,tired,peated,futed,ciled,called,tined,moted,filed,sided,poned,iloted,honed,lleted,huted,ruled,cured,named,preted,vaded,sured,talled,haled,peded,gined,nited,uided,ramed,feited,laked,gured,ctored,unged,pired,cuted,voked,eloped,ralled,rined,coded,icited,vided,uaded,voted,mined,sired,noted,lined,nselled,luted,jured,fided,puted,piled,pared,olored,cided,hoked,enged,tured,geoned,cotted,lamed,uiled,waited,udited,anged,luded,mired,uired,raded¦5:modelled,izzled,eleted,umpeted,ailored,rseded,treated,eduled,ecited,rammed,eceded,atrolled,nitored,basted,twined,itialled,ncited,gnored,ploded,xcited,nrolled,namelled,plored,efeated,redited,ntrolled,nfined,pleted,llided,lcined,eathed,ibuted,lloted,dhered,cceded¦3ad:sled¦2aw:drew¦2ot:hot¦2ke:made¦2ow:hrew,grew¦2ose:hose¦2d:ilt¦2in:egan¦1un:ran¦1ink:hought¦1ick:tuck¦1ike:ruck¦1eak:poke,nuck¦1it:pat¦1o:did¦1ow:new¦1ake:woke¦go:went",rev:"3:rst,hed,hut,cut,set¦4:tbid¦5:dcast,eread,pread,erbid¦ought:uy,eek¦1ied:ny,ly,dy,ry,fy,py,vy,by,ty,cy¦1ung:ling,ting,wing¦1pt:eep¦1ank:rink¦1ore:bear,wear¦1ave:give¦1oze:reeze¦1ound:rind,wind¦1ook:take,hake¦1aw:see¦1old:sell¦1ote:rite¦1ole:teal¦1unk:tink¦1am:wim¦1ay:lie¦1ood:tand¦1eld:hold¦2d:he,ge,re,le,leed,ne,reed,be,ye,lee,pe,we¦2ed:dd,oy,or,ey,gg,rr,us,ew,to¦2ame:ecome,rcome¦2ped:ap¦2ged:ag,og,ug,eg¦2bed:ub,ab,ib,ob¦2lt:neel¦2id:pay¦2ang:pring¦2ove:trive¦2med:um¦2ode:rride¦2at:ysit¦3ted:mit,hat,mat,lat,pot,rot,bat¦3ed:low,end,tow,und,ond,eem,lay,cho,dow,xit,eld,ald,uld,law,lel,eat,oll,ray,ank,fin,oam,out,how,iek,tay,haw,ait,vet,say,cay,bow¦3d:ste,ede,ode,ete,ree,ude,ame,oke,ote,ime,ute,ade¦3red:lur,cur,pur,car¦3ped:hop,rop,uip,rip,lip,tep,top¦3ded:bed,rod,kid¦3ade:orbid¦3led:uel¦3ned:lan,can,kin,pan,tun¦3med:rim,lim¦4ted:quit,llot¦4ed:pear,rrow,rand,lean,mand,anel,pand,reet,link,abel,evel,imit,ceed,ruit,mind,peal,veal,hool,head,pell,well,mell,uell,band,hear,weak¦4led:nnel,qual,ebel,ivel¦4red:nfer,efer,sfer¦4n:sake,trew¦4d:ntee¦4ded:hred¦4ned:rpin¦5ed:light,nceal,right,ndear,arget,hread,eight,rtial,eboot¦5d:edite,nvite¦5ted:egret¦5led:ravel",ex:"2:been,upped¦3:added,aged,aided,aimed,aired,bid,died,dyed,egged,erred,eyed,fit,gassed,hit,lied,owed,pent,pied,tied,used,vied,oiled,outed,banned,barred,bet,canned,cut,dipped,donned,ended,feed,inked,jarred,let,manned,mowed,netted,padded,panned,pitted,popped,potted,put,set,sewn,sowed,tanned,tipped,topped,vowed,weed,bowed,jammed,binned,dimmed,hopped,mopped,nodded,pinned,rigged,sinned,towed,vetted¦4:ached,baked,baled,boned,bored,called,caned,cared,ceded,cited,coded,cored,cubed,cured,dared,dined,edited,exited,faked,fared,filed,fined,fired,fuelled,gamed,gelled,hired,hoped,joked,lined,mined,named,noted,piled,poked,polled,pored,pulled,reaped,roamed,rolled,ruled,seated,shed,sided,timed,tolled,toned,voted,waited,walled,waned,winged,wiped,wired,zoned,yelled,tamed,lubed,roped,faded,mired,caked,honed,banged,culled,heated,raked,welled,banded,beat,cast,cooled,cost,dealt,feared,folded,footed,handed,headed,heard,hurt,knitted,landed,leaked,leapt,linked,meant,minded,molded,neared,needed,peaked,plodded,plotted,pooled,quit,read,rooted,sealed,seeded,seeped,shipped,shunned,skimmed,slammed,sparred,stemmed,stirred,suited,thinned,twinned,swayed,winked,dialed,abutted,blotted,fretted,healed,heeded,peeled,reeled¦5:basted,cheated,equalled,eroded,exiled,focused,opined,pleated,primed,quoted,scouted,shored,sloped,smoked,sniped,spelled,spouted,routed,staked,stored,swelled,tasted,treated,wasted,smelled,dwelled,honored,prided,quelled,eloped,scared,coveted,sweated,breaded,cleared,debuted,deterred,freaked,modeled,pleaded,rebutted,speeded¦6:anchored,defined,endured,impaled,invited,refined,revered,strolled,cringed,recast,thrust,unfolded¦7:authored,combined,competed,conceded,convened,excreted,extruded,redefined,restored,secreted,rescinded,welcomed¦8:expedited,infringed¦9:interfered,intervened,persevered¦10:contravened¦eat:ate¦is:was¦go:went¦are:were¦3d:bent,lent,rent,sent¦3e:bit,fled,hid,lost¦3ed:bled,bred¦2ow:blew,grew¦1uy:bought¦2tch:caught¦1o:did¦1ive:dove,gave¦2aw:drew¦2ed:fed¦2y:flew,laid,paid,said¦1ight:fought¦1et:got¦2ve:had¦1ang:hung¦2ad:led¦2ght:lit¦2ke:made¦2et:met¦1un:ran¦1ise:rose¦1it:sat¦1eek:sought¦1each:taught¦1ake:woke,took¦1eave:wove¦2ise:arose¦1ear:bore,tore,wore¦1ind:bound,found,wound¦2eak:broke¦2ing:brought,wrung¦1ome:came¦2ive:drove¦1ig:dug¦1all:fell¦2el:felt¦4et:forgot¦1old:held¦2ave:left¦1ing:rang,sang¦1ide:rode¦1ink:sank¦1ee:saw¦2ine:shone¦4e:slid¦1ell:sold,told¦4d:spent¦2in:spun¦1in:won"},PresentTense:{fwd:"1:oes¦1ve:as",both:"1:xes¦2:zzes,ches,shes,sses¦3:iases¦2y:llies,plies¦1y:cies,bies,ties,vies,nies,pies,dies,ries,fies¦:s",rev:"1ies:ly¦2es:us,go,do¦3es:cho,eto",ex:"2:does,goes¦3:gasses¦5:focuses¦is:are¦3y:relies¦2y:flies¦2ve:has"},Superlative:{fwd:"1st:e¦1est:l,m,f,s¦1iest:cey¦2est:or,ir¦3est:ver",both:"4:east¦5:hwest¦5lest:erful¦4est:weet,lgar,tter,oung¦4most:uter¦3est:ger,der,rey,iet,ong,ear¦3test:lat¦3most:ner¦2est:pt,ft,nt,ct,rt,ht¦2test:it¦2gest:ig¦1est:b,k,n,p,h,d,w¦iest:y",rev:"1:ttest,nnest,yest¦2:sest,stest,rmest,cest,vest,lmest,olest,ilest,ulest,ssest,imest,uest¦3:rgest,eatest,oorest,plest,allest,urest,iefest,uelest,blest,ugest,amest,yalest,ealest,illest,tlest,itest¦4:cerest,eriest,somest,rmalest,ndomest,motest,uarest,tiffest¦5:leverest,rangest¦ar:urthest¦3ey:riciest",ex:"best:good¦worst:bad¦5est:great¦4est:fast,full,fair,dull¦3test:hot,wet,fat¦4nest:thin¦1urthest:far¦3est:gay,shy,ill¦4test:neat¦4st:late,wide,fine,safe,cute,fake,pale,rare,rude,sore,ripe,dire¦6st:severe"},AdjToNoun:{fwd:"1:tistic,eable,lful,sful,ting,tty¦2:onate,rtable,geous,ced,seful,ctful¦3:ortive,ented¦arity:ear¦y:etic¦fulness:begone¦1ity:re¦1y:tiful,gic¦2ity:ile,imous,ilous,ime¦2ion:ated¦2eness:iving¦2y:trious¦2ation:iring¦2tion:vant¦3ion:ect¦3ce:mant,mantic¦3tion:irable¦3y:est,estic¦3m:mistic,listic¦3ess:ning¦4n:utious¦4on:rative,native,vative,ective¦4ce:erant",both:"1:king,wing¦2:alous,ltuous,oyful,rdous¦3:gorous,ectable,werful,amatic¦4:oised,usical,agical,raceful,ocused,lined,ightful¦5ness:stful,lding,itous,nuous,ulous,otous,nable,gious,ayful,rvous,ntous,lsive,peful,entle,ciful,osive,leful,isive,ncise,reful,mious¦5ty:ivacious¦5ties:ubtle¦5ce:ilient,adiant,atient¦5cy:icient¦5sm:gmatic¦5on:sessive,dictive¦5ity:pular,sonal,eative,entic¦5sity:uminous¦5ism:conic¦5nce:mperate¦5ility:mitable¦5ment:xcited¦5n:bitious¦4cy:brant,etent,curate¦4ility:erable,acable,icable,ptable¦4ty:nacious,aive,oyal,dacious¦4n:icious¦4ce:vient,erent,stent,ndent,dient,quent,ident¦4ness:adic,ound,hing,pant,sant,oing,oist,tute¦4icity:imple¦4ment:fined,mused¦4ism:otic¦4ry:dantic¦4ity:tund,eral¦4edness:hand¦4on:uitive¦4lity:pitable¦4sm:eroic,namic¦4sity:nerous¦3th:arm¦3ility:pable,bable,dable,iable¦3cy:hant,nant,icate¦3ness:red,hin,nse,ict,iet,ite,oud,ind,ied,rce¦3ion:lute¦3ity:ual,gal,volous,ial¦3ce:sent,fensive,lant,gant,gent,lent,dant¦3on:asive¦3m:fist,sistic,iastic¦3y:terious,xurious,ronic,tastic¦3ur:amorous¦3e:tunate¦3ation:mined¦3sy:rteous¦3ty:ain¦3ry:ave¦3ment:azed¦2ness:de,on,ue,rn,ur,ft,rp,pe,om,ge,rd,od,ay,ss,er,ll,oy,ap,ht,ld,ad,rt¦2inousness:umous¦2ity:neous,ene,id,ane¦2cy:bate,late¦2ation:ized¦2ility:oble,ible¦2y:odic¦2e:oving,aring¦2s:ost¦2itude:pt¦2dom:ee¦2ance:uring¦2tion:reet¦2ion:oted¦2sion:ending¦2liness:an¦2or:rdent¦1th:ung¦1e:uable¦1ness:w,h,k,f¦1ility:mble¦1or:vent¦1ement:ging¦1tiquity:ncient¦1ment:hed¦verty:or¦ength:ong¦eat:ot¦pth:ep¦iness:y",rev:"",ex:"5:forceful,humorous¦8:charismatic¦13:understanding¦5ity:active¦11ness:adventurous,inquisitive,resourceful¦8on:aggressive,automatic,perceptive¦7ness:amorous,fatuous,furtive,ominous,serious¦5ness:ample,sweet¦12ness:apprehensive,cantankerous,contemptuous,ostentatious¦13ness:argumentative,conscientious¦9ness:assertive,facetious,imperious,inventive,oblivious,rapacious,receptive,seditious,whimsical¦10ness:attractive,expressive,impressive,loquacious,salubrious,thoughtful¦3edom:boring¦4ness:calm,fast,keen,tame¦8ness:cheerful,gracious,specious,spurious,timorous,unctuous¦5sity:curious¦9ion:deliberate¦8ion:desperate¦6e:expensive¦7ce:fragrant¦3y:furious¦9ility:ineluctable¦6ism:mystical¦8ity:physical,proactive,sensitive,vertical¦5cy:pliant¦7ity:positive¦9ity:practical¦12ism:professional¦6ce:prudent¦3ness:red¦6cy:vagrant¦3dom:wise"}},jT=function(e,t={}){return t.hasOwnProperty(e)?t[e]:null},qT=function(e,t=[]){for(let r=0;r<t.length;r+=1)if(e.endsWith(t[r]))return e;return null},RT=function(e,t,r={}){t=t||{};let n=e.length-1;for(let a=n;a>=1;a-=1){let i=e.length-a,o=e.substring(i,e.length);if(t.hasOwnProperty(o)===!0)return e.slice(0,i)+t[o];if(r.hasOwnProperty(o)===!0)return e.slice(0,i)+r[o]}return t.hasOwnProperty("")?e+=t[""]:r.hasOwnProperty("")?e+=r[""]:null},fn=function(e="",t={}){let r=jT(e,t.ex);return r=r||qT(e,t.same),r=r||RT(e,t.fwd,t.both),r=r||e,r},np=function(e){return Object.entries(e).reduce((t,r)=>(t[r[1]]=r[0],t),{})},Yo=function(e={}){return{reversed:!0,both:np(e.both),ex:np(e.ex),fwd:e.rev||{}}},ap=/^([0-9]+)/,LT=function(e){let t={};return e.split("¦").forEach(r=>{let[n,a]=r.split(":");a=(a||"").split(","),a.forEach(i=>{t[i]=n})}),t},HT=function(e="",t=""){t=String(t);let r=t.match(ap);if(r===null)return t;let n=Number(r[1])||0;return e.substring(0,n)+t.replace(ap,"")},Nu=function(e){let t=LT(e);return Object.keys(t).reduce((r,n)=>(r[n]=HT(n,t[n]),r),{})},Zi=function(e={}){return typeof e=="string"&&(e=JSON.parse(e)),e.fwd=Nu(e.fwd||""),e.both=Nu(e.both||""),e.rev=Nu(e.rev||""),e.ex=Nu(e.ex||""),e},mw=Zi(Yi.PastTense),dw=Zi(Yi.PresentTense),hw=Zi(Yi.Gerund),pw=Zi(Yi.Participle),GT=Yo(mw),VT=Yo(dw),UT=Yo(hw),WT=Yo(pw),gw=Zi(Yi.Comparative),vw=Zi(Yi.Superlative),JT=Yo(gw),KT=Yo(vw),YT=Zi(Yi.AdjToNoun),yw={fromPast:mw,fromPresent:dw,fromGerund:hw,fromParticiple:pw,toPast:GT,toPresent:VT,toGerund:UT,toParticiple:WT,toComparative:gw,toSuperlative:vw,fromComparative:JT,fromSuperlative:KT,adjToNoun:YT},ZT=[[/^[\w.]+@[\w.]+\.[a-z]{2,3}$/,"Email"],[/^(https?:\/\/|www\.)+\w+\.[a-z]{2,3}/,"Url","http.."],[/^[a-z0-9./].+\.(com|net|gov|org|ly|edu|info|biz|dev|ru|jp|de|in|uk|br|io|ai)/,"Url",".com"],[/^[PMCE]ST$/,"Timezone","EST"],[/^ma?c'[a-z]{3}/,"LastName","mc'neil"],[/^o'[a-z]{3}/,"LastName","o'connor"],[/^ma?cd[aeiou][a-z]{3}/,"LastName","mcdonald"],[/^(lol)+[sz]$/,"Expression","lol"],[/^wo{2,}a*h?$/,"Expression","wooah"],[/^(hee?){2,}h?$/,"Expression","hehe"],[/^(un|de|re)\\-[a-z\u00C0-\u00FF]{2}/,"Verb","un-vite"],[/^(m|k|cm|km)\/(s|h|hr)$/,"Unit","5 k/m"],[/^(ug|ng|mg)\/(l|m3|ft3)$/,"Unit","ug/L"],[new RegExp("[^:/]\\/\\p{Letter}","u"),"SlashedTerm","love/hate"]],QT=[[new RegExp("^#[\\p{Number}_]*\\p{Letter}","u"),"HashTag"],[/^@\w{2,}$/,"AtMention"],[/^([A-Z]\.){2}[A-Z]?/i,["Acronym","Noun"],"F.B.I"],[/.{3}[lkmnp]in['‘’‛‵′`´]$/,"Gerund","chillin'"],[/.{4}s['‘’‛‵′`´]$/,"Possessive","flanders'"],[/^[\p{Emoji_Presentation}\p{Extended_Pictographic}]/u,"Emoji","emoji-class"]],XT=[[/^@1?[0-9](am|pm)$/i,"Time","3pm"],[/^@1?[0-9]:[0-9]{2}(am|pm)?$/i,"Time","3:30pm"],[/^'[0-9]{2}$/,"Year"],[/^[012]?[0-9](:[0-5][0-9])(:[0-5][0-9])$/,"Time","3:12:31"],[/^[012]?[0-9](:[0-5][0-9])?(:[0-5][0-9])? ?(am|pm)$/i,"Time","1:12pm"],[/^[012]?[0-9](:[0-5][0-9])(:[0-5][0-9])? ?(am|pm)?$/i,"Time","1:12:31pm"],[/^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}/i,"Date","iso-date"],[/^[0-9]{1,4}-[0-9]{1,2}-[0-9]{1,4}$/,"Date","iso-dash"],[/^[0-9]{1,4}\/[0-9]{1,2}\/([0-9]{4}|[0-9]{2})$/,"Date","iso-slash"],[/^[0-9]{1,4}\.[0-9]{1,2}\.[0-9]{1,4}$/,"Date","iso-dot"],[/^[0-9]{1,4}-[a-z]{2,9}-[0-9]{1,4}$/i,"Date","12-dec-2019"],[/^utc ?[+-]?[0-9]+$/,"Timezone","utc-9"],[/^(gmt|utc)[+-][0-9]{1,2}$/i,"Timezone","gmt-3"],[/^[0-9]{3}-[0-9]{4}$/,"PhoneNumber","421-0029"],[/^(\+?[0-9][ -])?[0-9]{3}[ -]?[0-9]{3}-[0-9]{4}$/,"PhoneNumber","1-800-"],[new RegExp("^[-+]?\\p{Currency_Symbol}[-+]?[0-9]+(,[0-9]{3})*(\\.[0-9]+)?([kmb]|bn)?\\+?$","u"),["Money","Value"],"$5.30"],[new RegExp("^[-+]?[0-9]+(,[0-9]{3})*(\\.[0-9]+)?\\p{Currency_Symbol}\\+?$","u"),["Money","Value"],"5.30£"],[/^[-+]?[$£]?[0-9]([0-9,.])+(usd|eur|jpy|gbp|cad|aud|chf|cny|hkd|nzd|kr|rub)$/i,["Money","Value"],"$400usd"],[/^[-+]?[0-9]+(,[0-9]{3})*(\.[0-9]+)?\+?$/,["Cardinal","NumericValue"],"5,999"],[/^[-+]?[0-9]+(,[0-9]{3})*(\.[0-9]+)?(st|nd|rd|r?th)$/,["Ordinal","NumericValue"],"53rd"],[/^\.[0-9]+\+?$/,["Cardinal","NumericValue"],".73th"],[/^[-+]?[0-9]+(,[0-9]{3})*(\.[0-9]+)?%\+?$/,["Percent","Cardinal","NumericValue"],"-4%"],[/^\.[0-9]+%$/,["Percent","Cardinal","NumericValue"],".3%"],[/^[0-9]{1,4}\/[0-9]{1,4}(st|nd|rd|th)?s?$/,["Fraction","NumericValue"],"2/3rds"],[/^[0-9.]{1,3}[a-z]{0,2}[-–—][0-9]{1,3}[a-z]{0,2}$/,["Value","NumberRange"],"3-4"],[/^[0-9]{1,2}(:[0-9][0-9])?(am|pm)? ?[-–—] ?[0-9]{1,2}(:[0-9][0-9])?(am|pm)$/,["Time","NumberRange"],"3-4pm"],[/^[0-9.]+([a-z°]{1,4})$/,"NumericValue","9km"]],eM=["academy","administration","agence","agences","agencies","agency","airlines","airways","army","assoc","associates","association","assurance","authority","autorite","aviation","bank","banque","board","boys","brands","brewery","brotherhood","brothers","bureau","cafe","co","caisse","capital","care","cathedral","center","centre","chemicals","choir","chronicle","church","circus","clinic","clinique","club","co","coalition","coffee","collective","college","commission","committee","communications","community","company","comprehensive","computers","confederation","conference","conseil","consulting","containers","corporation","corps","corp","council","crew","data","departement","department","departments","design","development","directorate","division","drilling","education","eglise","electric","electricity","energy","ensemble","enterprise","enterprises","entertainment","estate","etat","faculty","faction","federation","financial","fm","foundation","fund","gas","gazette","girls","government","group","guild","herald","holdings","hospital","hotel","hotels","inc","industries","institut","institute","institutes","insurance","international","interstate","investment","investments","investors","journal","laboratory","labs","llc","ltd","limited","machines","magazine","management","marine","marketing","markets","media","memorial","ministere","ministry","military","mobile","motor","motors","musee","museum","news","observatory","office","oil","optical","orchestra","organization","partners","partnership","petrol","petroleum","pharmacare","pharmaceutical","pharmaceuticals","pizza","plc","police","politburo","polytechnic","post","power","press","productions","quartet","radio","reserve","resources","restaurant","restaurants","savings","school","securities","service","services","societe","subsidiary","society","sons","subcommittee","syndicat","systems","telecommunications","telegraph","television","times","tribunal","tv","union","university","utilities","workers"].reduce((e,t)=>(e[t]=!0,e),{}),tM=["atoll","basin","bay","beach","bluff","bog","camp","canyon","canyons","cape","cave","caves","cliffs","coast","cove","coves","crater","crossing","creek","desert","dune","dunes","downs","estates","escarpment","estuary","falls","fjord","fjords","forest","forests","glacier","gorge","gorges","grove","gulf","gully","highland","heights","hollow","hill","hills","inlet","island","islands","isthmus","junction","knoll","lagoon","lake","lakeshore","marsh","marshes","mount","mountain","mountains","narrows","peninsula","plains","plateau","pond","rapids","ravine","reef","reefs","ridge","river","rivers","sandhill","shoal","shore","shoreline","shores","strait","straits","springs","stream","swamp","tombolo","trail","trails","trench","valley","vallies","village","volcano","waterfall","watershed","wetland","woods","acres","burough","county","district","municipality","prefecture","province","region","reservation","state","territory","borough","metropolis","downtown","uptown","midtown","city","town","township","hamlet","country","kingdom","enclave","neighbourhood","neighborhood","kingdom","ward","zone","airport","amphitheater","arch","arena","auditorium","bar","barn","basilica","battlefield","bridge","building","castle","centre","coliseum","cineplex","complex","dam","farm","field","fort","garden","gardens","gymnasium","hall","house","levee","library","manor","memorial","monument","museum","gallery","palace","pillar","pits","plantation","playhouse","quarry","sportsfield","sportsplex","stadium","terrace","terraces","theater","tower","park","parks","site","ranch","raceway","sportsplex","ave","st","street","rd","road","lane","landing","crescent","cr","way","tr","terrace","avenue"].reduce((e,t)=>(e[t]=!0,e),{}),Au=[[/([^v])ies$/i,"$1y"],[/(ise)s$/i,"$1"],[/(kn|[^o]l|w)ives$/i,"$1ife"],[/^((?:ca|e|ha|(?:our|them|your)?se|she|wo)l|lea|loa|shea|thie)ves$/i,"$1f"],[/^(dwar|handkerchie|hoo|scar|whar)ves$/i,"$1f"],[/(antenn|formul|nebul|vertebr|vit)ae$/i,"$1a"],[/(octop|vir|radi|nucle|fung|cact|stimul)(i)$/i,"$1us"],[/(buffal|tomat|tornad)(oes)$/i,"$1o"],[/(ause)s$/i,"$1"],[/(ease)s$/i,"$1"],[/(ious)es$/i,"$1"],[/(ouse)s$/i,"$1"],[/(ose)s$/i,"$1"],[/(..ase)s$/i,"$1"],[/(..[aeiu]s)es$/i,"$1"],[/(vert|ind|cort)(ices)$/i,"$1ex"],[/(matr|append)(ices)$/i,"$1ix"],[/([xo]|ch|ss|sh)es$/i,"$1"],[/men$/i,"man"],[/(n)ews$/i,"$1ews"],[/([ti])a$/i,"$1um"],[/([^aeiouy]|qu)ies$/i,"$1y"],[/(s)eries$/i,"$1eries"],[/(m)ovies$/i,"$1ovie"],[/(cris|ax|test)es$/i,"$1is"],[/(alias|status)es$/i,"$1"],[/(ss)$/i,"$1"],[/(ic)s$/i,"$1"],[/s$/i,""]],rM=function(e){return Object.keys(e).reduce((t,r)=>(t[e[r]]=r,t),{})},bw=function(e,t){const{irregularPlurals:r}=t.two;let n=rM(r);if(n.hasOwnProperty(e))return n[e];for(let a=0;a<Au.length;a++)if(Au[a][0].test(e)===!0)return e=e.replace(Au[a][0],Au[a][1]),e;return e},nM=function(e,t){let r=[e],n=cc(e,t);n!==e&&r.push(n);let a=bw(e,t);return a!==e&&r.push(a),r},aM={toPlural:cc,toSingular:bw,all:nM};let Ii={Gerund:["ing"],Actor:["erer"],Infinitive:["ate","ize","tion","rify","then","ress","ify","age","nce","ect","ise","ine","ish","ace","ash","ure","tch","end","ack","and","ute","ade","ock","ite","ase","ose","use","ive","int","nge","lay","est","ain","ant","ent","eed","er","le","unk","ung","upt","en"],PastTense:["ept","ed","lt","nt","ew","ld"],PresentTense:["rks","cks","nks","ngs","mps","tes","zes","ers","les","acks","ends","ands","ocks","lays","eads","lls","els","ils","ows","nds","ays","ams","ars","ops","ffs","als","urs","lds","ews","ips","es","ts","ns"],Participle:["ken","wn"]};Ii=Object.keys(Ii).reduce((e,t)=>(Ii[t].forEach(r=>e[r]=t),e),{});const ww=function(e){let t=e.substring(e.length-3);if(Ii.hasOwnProperty(t)===!0)return Ii[t];let r=e.substring(e.length-2);return Ii.hasOwnProperty(r)===!0?Ii[r]:e.substring(e.length-1)==="s"?"PresentTense":null},iM=function(e,t){let r="",n={};t.one&&t.one.prefixes&&(n=t.one.prefixes);let[a,i]=e.split(/ /);return i&&n[a]===!0&&(r=a,a=i,i=""),{prefix:r,verb:a,particle:i}},ip={are:"be",were:"be",been:"be",is:"be",am:"be",was:"be",be:"be",being:"be"},Zf=function(e,t,r){const{fromPast:n,fromPresent:a,fromGerund:i,fromParticiple:o}=t.two.models;let{prefix:s,verb:u,particle:l}=iM(e,t),c="";if(r||(r=ww(e)),ip.hasOwnProperty(e))c=ip[e];else if(r==="Participle")c=fn(u,o);else if(r==="PastTense")c=fn(u,n);else if(r==="PresentTense")c=fn(u,a);else if(r==="Gerund")c=fn(u,i);else return e;return l&&(c+=" "+l),s&&(c=s+" "+c),c},oM=e=>/ /.test(e)?e.split(/ /):[e,""],nd=function(e,t){const{toPast:r,toPresent:n,toGerund:a,toParticiple:i}=t.two.models;if(e==="be")return{Infinitive:e,Gerund:"being",PastTense:"was",PresentTense:"is"};let[o,s]=oM(e),u={Infinitive:o,PastTense:fn(o,r),PresentTense:fn(o,n),Gerund:fn(o,a),FutureTense:"will "+o},l=fn(o,i);if(l!==e&&l!==u.PastTense){let c=t.one.lexicon||{};(c[l]==="Participle"||c[l]==="Adjective")&&(e==="play"&&(l="played"),u.Participle=l)}return s&&Object.keys(u).forEach(c=>{u[c]+=" "+s}),u},sM=function(e,t){let r=nd(e,t);return delete r.FutureTense,Object.values(r).filter(n=>n)},uM={toInfinitive:Zf,conjugate:nd,all:sM},ad=function(e,t){const r=t.two.models.toSuperlative;return fn(e,r)},id=function(e,t){const r=t.two.models.toComparative;return fn(e,r)},lM=function(e,t){const r=t.two.models.fromComparative;return fn(e,r)},cM=function(e,t){const r=t.two.models.fromSuperlative;return fn(e,r)},fM=function(e,t){const r=t.two.models.adjToNoun;return fn(e,r)},xw=function(e="",t=[]){const r=e.length;let n=r<=6?r-1:6;for(let a=n;a>=1;a-=1){let i=e.substring(r-a,e.length);if(t[i.length].hasOwnProperty(i)===!0){let o=e.slice(0,r-a),s=t[i.length][i];return o+s}}return null},gt="ically",mM=new Set(["analyt"+gt,"chem"+gt,"class"+gt,"clin"+gt,"crit"+gt,"ecolog"+gt,"electr"+gt,"empir"+gt,"frant"+gt,"grammat"+gt,"ident"+gt,"ideolog"+gt,"log"+gt,"mag"+gt,"mathemat"+gt,"mechan"+gt,"med"+gt,"method"+gt,"method"+gt,"mus"+gt,"phys"+gt,"phys"+gt,"polit"+gt,"pract"+gt,"rad"+gt,"satir"+gt,"statist"+gt,"techn"+gt,"technolog"+gt,"theoret"+gt,"typ"+gt,"vert"+gt,"whims"+gt]),dM=[null,{},{ly:""},{ily:"y",bly:"ble",ply:"ple"},{ally:"al",rply:"rp"},{ually:"ual",ially:"ial",cally:"cal",eally:"eal",rally:"ral",nally:"nal",mally:"mal",eeply:"eep",eaply:"eap"},{ically:"ic"}],hM=new Set(["early","only","hourly","daily","weekly","monthly","yearly","mostly","duly","unduly","especially","undoubtedly","conversely","namely","exceedingly","presumably","accordingly","overly","best","latter","little","long","low"]),op={wholly:"whole",fully:"full",truly:"true",gently:"gentle",singly:"single",customarily:"customary",idly:"idle",publically:"public",quickly:"quick",superbly:"superb",cynically:"cynical",well:"good"},pM=function(e){return e.endsWith("ly")?mM.has(e)?e.replace(/ically/,"ical"):hM.has(e)?null:op.hasOwnProperty(e)?op[e]:xw(e,dM)||e:null},gM=[null,{y:"ily"},{ly:"ly",ic:"ically"},{ial:"ially",ual:"ually",tle:"tly",ble:"bly",ple:"ply",ary:"arily"},{},{},{}],sp={cool:"cooly",whole:"wholly",full:"fully",good:"well",idle:"idly",public:"publicly",single:"singly",special:"especially"},Dw=function(e){if(sp.hasOwnProperty(e))return sp[e];let t=xw(e,gM);return t||(t=e+"ly"),t},vM=function(e,t){let r=[e];return r.push(ad(e,t)),r.push(id(e,t)),r.push(Dw(e)),r=r.filter(n=>n),r=new Set(r),Array.from(r)},yM={toSuperlative:ad,toComparative:id,toAdverb:Dw,toNoun:fM,fromAdverb:pM,fromSuperlative:cM,fromComparative:lM,all:vM},bM={noun:aM,verb:uM,adjective:yM},up={Singular:(e,t,r,n)=>{let a=n.one.lexicon,i=r.two.transform.noun.toPlural(e,n);a[i]||(t[i]=t[i]||"Plural")},Actor:(e,t,r,n)=>{let a=n.one.lexicon,i=r.two.transform.noun.toPlural(e,n);a[i]||(t[i]=t[i]||["Plural","Actor"])},Comparable:(e,t,r,n)=>{let a=n.one.lexicon,{toSuperlative:i,toComparative:o}=r.two.transform.adjective,s=i(e,n);a[s]||(t[s]=t[s]||"Superlative");let u=o(e,n);a[u]||(t[u]=t[u]||"Comparative"),t[e]="Adjective"},Demonym:(e,t,r,n)=>{let a=r.two.transform.noun.toPlural(e,n);t[a]=t[a]||["Demonym","Plural"]},Infinitive:(e,t,r,n)=>{let a=n.one.lexicon,i=r.two.transform.verb.conjugate(e,n);Object.entries(i).forEach(o=>{!a[o[1]]&&!t[o[1]]&&o[0]!=="FutureTense"&&(t[o[1]]=o[0])})},PhrasalVerb:(e,t,r,n)=>{let a=n.one.lexicon;t[e]=["PhrasalVerb","Infinitive"];let i=n.one._multiCache,[o,s]=e.split(" ");a[o]||(t[o]=t[o]||"Infinitive");let u=r.two.transform.verb.conjugate(o,n);delete u.FutureTense,Object.entries(u).forEach(l=>{if(l[0]==="Actor"||l[1]==="")return;!t[l[1]]&&!a[l[1]]&&(t[l[1]]=l[0]),i[l[1]]=2;let c=l[1]+" "+s;t[c]=t[c]||[l[0],"PhrasalVerb"]})},Multiple:(e,t)=>{t[e]=["Multiple","Cardinal"],t[e+"th"]=["Multiple","Ordinal"],t[e+"ths"]=["Multiple","Fraction"]},Cardinal:(e,t)=>{t[e]=["TextValue","Cardinal"]},Ordinal:(e,t)=>{t[e]=["TextValue","Ordinal"],t[e+"s"]=["TextValue","Fraction"]},Place:(e,t)=>{t[e]=["Place","ProperNoun"]},Region:(e,t)=>{t[e]=["Region","ProperNoun"]}},wM=function(e,t){const{methods:r,model:n}=t;let a={},i={};return Object.keys(e).forEach(o=>{let s=e[o];o=o.toLowerCase().trim(),o=o.replace(/'s\b/,"");let u=o.split(/ /);u.length>1&&(i[u[0]]===void 0||u.length>i[u[0]])&&(i[u[0]]=u.length),up.hasOwnProperty(s)===!0&&up[s](o,a,r,n),a[o]=a[o]||s}),delete a[""],delete a[null],delete a[" "],{lex:a,_multi:i}},xM=function(e,t){const r=/^[0-9]+$/;let n=e[t];if(!n)return!1;const a=new Set(["may","april","august","jan"]);if(n.normal==="like"||a.has(n.normal)||n.tags.has("Place")||n.tags.has("Date"))return!1;if(e[t-1]){let o=e[t-1];if(o.tags.has("Date")||a.has(o.normal)||o.tags.has("Adjective")||n.tags.has("Adjective"))return!1}let i=n.normal;return!((i.length===1||i.length===2||i.length===4)&&r.test(i))},DM=function(e){const t=/[,:;]/;let r=[];return e.forEach(n=>{let a=0;n.forEach((i,o)=>{t.test(i.post)&&xM(n,o+1)&&(r.push(n.slice(a,o+1)),a=o+1)}),a<n.length&&r.push(n.slice(a,n.length))}),r},lp={e:["mice","louse","antennae","formulae","nebulae","vertebrae","vitae"],i:["tia","octopi","viri","radii","nuclei","fungi","cacti","stimuli"],n:["men"],t:["feet"]},NM=new Set(["israelis","menus","logos"]),AM=["bus","mas","was","ias","xas","vas","cis","lis","nis","ois","ris","sis","tis","xis","aus","cus","eus","fus","gus","ius","lus","nus","das","ous","pus","rus","sus","tus","xus","aos","igos","ados","ogos","'s","ss"],Nw=function(e){if(!e||e.length<=3)return!1;if(NM.has(e))return!0;let t=e[e.length-1];return lp.hasOwnProperty(t)?lp[t].find(r=>e.endsWith(r)):!(t!=="s"||AM.find(r=>e.endsWith(r)))},Qf={two:{quickSplit:DM,expandLexicon:wM,transform:bM,looksPlural:Nw}},CM=function(e){const{irregularPlurals:t}=e.two,{lexicon:r}=e.one;return Object.entries(t).forEach(n=>{r[n[0]]=r[n[0]]||"Singular",r[n[1]]=r[n[1]]||"Plural"}),e};let Xf={one:{lexicon:{}},two:{models:yw}};const EM={"Actor|Verb":"Actor","Adj|Gerund":"Adjective","Adj|Noun":"Adjective","Adj|Past":"Adjective","Adj|Present":"Adjective","Noun|Verb":"Singular","Noun|Gerund":"Gerund","Person|Noun":"Noun","Person|Date":"Month","Person|Verb":"FirstName","Person|Place":"Person","Person|Adj":"Comparative","Plural|Verb":"Plural","Unit|Noun":"Noun"},Aw=function(e,t){const r={model:t,methods:Qf};let{lex:n,_multi:a}=Qf.two.expandLexicon(e,r);return Object.assign(t.one.lexicon,n),Object.assign(t.one._multiCache,a),t},SM=function(e,t){return Object.keys(e).forEach(r=>{e[r]==="Uncountable"&&(t.two.uncountable[r]=!0,e[r]="Uncountable")}),t},cp=function(e,t,r){let n=nd(e,Xf);t[n.PastTense]=t[n.PastTense]||"PastTense",t[n.Gerund]=t[n.Gerund]||"Gerund",r===!0&&(t[n.PresentTense]=t[n.PresentTense]||"PresentTense")},fp=function(e,t,r){let n=ad(e,r);t[n]=t[n]||"Superlative";let a=id(e,r);t[a]=t[a]||"Comparative"},TM=function(e,t,r){let n=cc(e,r);t[n]=t[n]||"Plural"},MM=function(e,t){let r={};const n=t.one.lexicon;return Object.keys(e).forEach(a=>{const i=e[a];if(r[a]=EM[i],(i==="Noun|Verb"||i==="Person|Verb"||i==="Actor|Verb")&&cp(a,n,!1),i==="Adj|Present"&&(cp(a,n,!0),fp(a,n,t)),i==="Person|Adj"&&fp(a,n,t),i==="Adj|Gerund"||i==="Noun|Gerund"){let o=Zf(a,Xf,"Gerund");n[o]||(r[o]="Infinitive")}if((i==="Noun|Gerund"||i==="Adj|Noun"||i==="Person|Noun")&&TM(a,n,t),i==="Adj|Past"){let o=Zf(a,Xf,"PastTense");n[o]||(r[o]="Infinitive")}}),t=Aw(r,t),t},FM=function(e){return e=Aw(e.one.lexicon,e),e=SM(e.one.lexicon,e),e=MM(e.two.switches,e),e=CM(e),e};let em={one:{_multiCache:{},lexicon:Ko,frozenLex:dT},two:{irregularPlurals:fw,models:yw,suffixPatterns:BT,prefixPatterns:_T,endsWith:IT,neighbours:zT,regexNormal:ZT,regexText:QT,regexNumbers:XT,switches:Yf,clues:To,uncountable:{},orgWords:eM,placeWords:tM}};em=FM(em);const PM=function(e,t,r,n){const a=n.methods.one.setTag;if(e.length>=3){const i=/:/;if(e[0].post.match(i)){let s=e[1];if(s.tags.has("Value")||s.tags.has("Email")||s.tags.has("PhoneNumber"))return;a([e[0]],"Expression",n,null,"2-punct-colon''")}}},kM=function(e,t,r,n){const a=n.methods.one.setTag;e[t].post==="-"&&e[t+1]&&a([e[t],e[t+1]],"Hyphenated",n,null,"1-punct-hyphen''")},mp=/^(under|over|mis|re|un|dis|semi)-?/,OM=function(e,t,r){const n=r.two.switches;let a=e[t];if(n.hasOwnProperty(a.normal)){a.switch=n[a.normal];return}if(mp.test(a.normal)){let i=a.normal.replace(mp,"");i.length>3&&n.hasOwnProperty(i)&&(a.switch=n[i])}},$M=(e,t,r="")=>{const n=o=>"\x1B[33m\x1B[3m"+o+"\x1B[0m",a=o=>"\x1B[3m"+o+"\x1B[0m";let i=e.text||"["+e.implicit+"]";typeof t!="string"&&t.length>2&&(t=t.slice(0,2).join(", #")+" +"),t=typeof t!="string"?t.join(", #"):t,console.log(` ${n(i).padEnd(24)} \x1B[32m→\x1B[0m #${t.padEnd(22)} ${a(r)}`)},Zt=function(e,t,r){if(!t||t.length===0||e.frozen===!0)return;const n=typeof process>"u"||!process.env?self.env||{}:process.env;n&&n.DEBUG_TAGS&&$M(e,t,r),e.tags=e.tags||new Set,typeof t=="string"?e.tags.add(t):t.forEach(a=>e.tags.add(a))},BM=["Acronym","Abbreviation","ProperNoun","Uncountable","Possessive","Pronoun","Activity","Honorific","Month"],_M=function(e){!e.tags.has("Noun")||e.tags.has("Plural")||e.tags.has("Singular")||BM.find(t=>e.tags.has(t))||(Nw(e.normal)?Zt(e,"Plural","3-plural-guess"):Zt(e,"Singular","3-singular-guess"))},IM=function(e){let t=e.tags;if(t.has("Verb")&&t.size===1){let r=ww(e.normal);r&&Zt(e,r,"3-verb-tense-guess")}},Js=function(e,t,r){let n=e[t],a=Array.from(n.tags);for(let i=0;i<a.length;i+=1)if(r.one.tagSet[a[i]]){let o=r.one.tagSet[a[i]].parents;Zt(n,o,` -inferred by #${a[i]}`)}_M(n),IM(n)},zM=new RegExp("^\\p{Lu}[\\p{Ll}'’]","u"),jM=/[0-9]/,qM=["Date","Month","WeekDay","Unit","Expression"],RM=/[IVX]/,LM=/^[IVXLCDM]{2,}$/,HM=/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/,GM={li:!0,dc:!0,md:!0,dm:!0,ml:!0},VM=function(e,t,r){let n=e[t];n.index=n.index||[0,0];let a=n.index[1],i=n.text||"";return a!==0&&zM.test(i)===!0&&jM.test(i)===!1?qM.find(o=>n.tags.has(o))||n.pre.match(/["']$/)||n.normal==="the"?null:(Js(e,t,r),!n.tags.has("Noun")&&!n.frozen&&n.tags.clear(),Zt(n,"ProperNoun","2-titlecase"),!0):i.length>=2&&LM.test(i)&&RM.test(i)&&HM.test(i)&&!GM[n.normal]?(Zt(n,"RomanNumeral","2-xvii"),!0):null},dp=function(e="",t=[]){const r=e.length;let n=7;r<=n&&(n=r-1);for(let a=n;a>1;a-=1){let i=e.substring(r-a,r);if(t[i.length].hasOwnProperty(i)===!0)return t[i.length][i]}return null},UM=function(e,t,r){let n=e[t];if(n.tags.size===0){let a=dp(n.normal,r.two.suffixPatterns);if(a!==null)return Zt(n,a,"2-suffix"),n.confidence=.7,!0;if(n.implicit&&(a=dp(n.implicit,r.two.suffixPatterns),a!==null))return Zt(n,a,"2-implicit-suffix"),n.confidence=.7,!0}return null},hp=/['‘’‛‵′`´]/,Uc=function(e,t){for(let r=0;r<t.length;r+=1)if(t[r][0].test(e)===!0)return t[r];return null},WM=function(e="",t){let r=e[e.length-1];if(t.hasOwnProperty(r)===!0){let n=t[r]||[];for(let a=0;a<n.length;a+=1)if(n[a][0].test(e)===!0)return n[a]}return null},JM=function(e,t,r,n){const a=n.methods.one.setTag;let{regexText:i,regexNormal:o,regexNumbers:s,endsWith:u}=r.two,l=e[t],c=l.machine||l.normal,f=l.text;hp.test(l.post)&&!hp.test(l.pre)&&(f+=l.post.trim());let m=Uc(f,i)||Uc(c,o);return!m&&/[0-9]/.test(c)&&(m=Uc(c,s)),!m&&l.tags.size===0&&(m=WM(c,u)),m?(a([l],m[1],n,null,`2-regex-'${m[2]||m[0]}'`),l.confidence=.6,!0):null},KM=function(e="",t=[]){const r=e.length;let n=7;n>r-3&&(n=r-3);for(let a=n;a>2;a-=1){let i=e.substring(0,a);if(t[i.length].hasOwnProperty(i)===!0)return t[i.length][i]}return null},YM=function(e,t,r){let n=e[t];if(n.tags.size===0){let a=KM(n.normal,r.two.prefixPatterns);if(a!==null)return Zt(n,a,"2-prefix"),n.confidence=.5,!0}return null},ZM=1400,QM=2100,XM=new Set(["in","on","by","until","for","to","during","throughout","through","within","before","after","of","this","next","last","circa","around","post","pre","budget","classic","plan","may"]),pp=function(e){if(!e)return!1;let t=e.normal||e.implicit;return!!(XM.has(t)||e.tags.has("Date")||e.tags.has("Month")||e.tags.has("WeekDay")||e.tags.has("Year")||e.tags.has("ProperNoun"))},gp=function(e){return e?!!(e.tags.has("Ordinal")||e.tags.has("Cardinal")&&e.normal.length<3||e.normal==="is"||e.normal==="was"):!1},vp=function(e){return e&&(e.tags.has("Date")||e.tags.has("Month")||e.tags.has("WeekDay")||e.tags.has("Year"))},eF=function(e,t){const r=e[t];if(r.tags.has("NumericValue")&&r.tags.has("Cardinal")&&r.normal.length===4){let n=Number(r.normal);if(n&&!isNaN(n)&&n>ZM&&n<QM){let a=e[t-1],i=e[t+1];if(pp(a)||pp(i))return Zt(r,"Year","2-tagYear");if(n>=1920&&n<2025){if(gp(a)||gp(i))return Zt(r,"Year","2-tagYear-close");if(vp(e[t-2])||vp(e[t+2]))return Zt(r,"Year","2-tagYear-far");if(a&&(a.tags.has("Determiner")||a.tags.has("Possessive"))&&i&&i.tags.has("Noun")&&!i.tags.has("Plural"))return Zt(r,"Year","2-tagYear-noun")}}}return null},tF=function(e,t,r,n){const a=n.methods.one.setTag,i=e[t],o=["PastTense","PresentTense","Auxiliary","Modal","Particle"];i.tags.has("Verb")&&(o.find(u=>i.tags.has(u))||a([i],"Infinitive",n,null,"2-verb-type''"))},Cw=/^[A-Z]('s|,)?$/,Ew=/^[A-Z-]+$/,Sw=/^[A-Z]+s$/,rF=/([A-Z]\.)+[A-Z]?,?$/,nF=/[A-Z]{2,}('s|,)?$/,aF=/([a-z]\.)+[a-z]\.?$/,Tw={I:!0,A:!0},iF={la:!0,ny:!0,us:!0,dc:!0,gb:!0},oF=function(e,t){let r=e.text;if(Ew.test(r)===!1)if(r.length>3&&Sw.test(r)===!0)r=r.replace(/s$/,"");else return!1;return r.length>5||Tw.hasOwnProperty(r)||t.one.lexicon.hasOwnProperty(e.normal)?!1:rF.test(r)===!0||aF.test(r)===!0||Cw.test(r)===!0||nF.test(r)===!0},sF=function(e,t,r){let n=e[t];return n.tags.has("RomanNumeral")||n.tags.has("Acronym")||n.frozen?null:oF(n,r)?(n.tags.clear(),Zt(n,["Acronym","Noun"],"3-no-period-acronym"),iF[n.normal]===!0&&Zt(n,"Place","3-place-acronym"),Sw.test(n.text)===!0&&Zt(n,"Plural","3-plural-acronym"),!0):!Tw.hasOwnProperty(n.text)&&Cw.test(n.text)?(n.tags.clear(),Zt(n,["Acronym","Noun"],"3-one-letter-acronym"),!0):n.tags.has("Organization")&&n.text.length<=3?(Zt(n,"Acronym","3-org-acronym"),!0):n.tags.has("Organization")&&Ew.test(n.text)&&n.text.length<=6?(Zt(n,"Acronym","3-titlecase-acronym"),!0):null},yp=function(e,t){if(!e)return null;let r=t.find(n=>e.normal===n[0]);return r?r[1]:null},bp=function(e,t){if(!e)return null;let r=t.find(n=>e.tags.has(n[0]));return r?r[1]:null},uF=function(e,t,r){const{leftTags:n,leftWords:a,rightWords:i,rightTags:o}=r.two.neighbours;let s=e[t];if(s.tags.size===0){let u=null;if(u=u||yp(e[t-1],a),u=u||yp(e[t+1],i),u=u||bp(e[t-1],n),u=u||bp(e[t+1],o),u)return Zt(s,u,"3-[neighbour]"),Js(e,t,r),e[t].confidence=.2,!0}return null},lF=e=>new RegExp("^\\p{Lu}[\\p{Ll}'’]","u").test(e),wp=function(e,t,r){return!e||e.tags.has("FirstName")||e.tags.has("Place")?!1:e.tags.has("ProperNoun")||e.tags.has("Organization")||e.tags.has("Acronym")?!0:!r&&lF(e.text)?t===0?e.tags.has("Singular"):!0:!1},cF=function(e,t,r,n){const a=r.model.two.orgWords,i=r.methods.one.setTag;let o=e[t],s=o.machine||o.normal;if(a[s]===!0&&wp(e[t-1],t-1,n)){i([e[t]],"Organization",r,null,"3-[org-word]");for(let u=t;u>=0&&wp(e[u],u,n);u-=1)i([e[u]],"Organization",r,null,"3-[org-word]")}return null},fF=e=>new RegExp("^\\p{Lu}[\\p{Ll}'’]","u").test(e),mF=/'s$/,xp=new Set(["athletic","city","community","eastern","federal","financial","great","historic","historical","local","memorial","municipal","national","northern","provincial","southern","state","western","spring","pine","sunset","view","oak","maple","spruce","cedar","willow"]),dF=new Set(["center","centre","way","range","bar","bridge","field","pit"]),Dp=function(e,t,r){if(!e)return!1;let n=e.tags;return n.has("Organization")||n.has("Possessive")||mF.test(e.normal)?!1:n.has("ProperNoun")||n.has("Place")?!0:!r&&fF(e.text)?t===0?n.has("Singular"):!0:!1},hF=function(e,t,r,n){const a=r.model.two.placeWords,i=r.methods.one.setTag;let o=e[t],s=o.machine||o.normal;if(a[s]===!0){for(let u=t-1;u>=0;u-=1)if(!xp.has(e[u].normal)){if(Dp(e[u],u,n)){i(e.slice(u,t+1),"Place",r,null,"3-[place-of-foo]");continue}break}if(dF.has(s))return!1;for(let u=t+1;u<e.length;u+=1){if(Dp(e[u],u,n))return i(e.slice(t,u+1),"Place",r,null,"3-[foo-place]"),!0;if(!(e[u].normal==="of"||xp.has(e[u].normal)))break}}return null},pF=function(e,t,r){let n=!1,a=e[t].tags;(a.size===0||a.size===1&&(a.has("Hyphenated")||a.has("HashTag")||a.has("Prefix")||a.has("SlashedTerm")))&&(n=!0),n&&(Zt(e[t],"Noun","3-[fallback]"),Js(e,t,r),e[t].confidence=.1)},gF=/^[A-Z][a-z]/,_n=(e,t)=>e[t].tags.has("ProperNoun")&&gF.test(e[t].text)?"Noun":null,Np=(e,t,r)=>t===0&&!e[1]?r:null,vF=function(e,t){return!e[t+1]&&e[t-1]&&e[t-1].tags.has("Determiner")?"Noun":null},yF=function(e,t,r){return t===0&&e.length>3?r:null},Ap={"Adj|Gerund":(e,t)=>_n(e,t),"Adj|Noun":(e,t)=>_n(e,t)||vF(e,t),"Actor|Verb":(e,t)=>_n(e,t),"Adj|Past":(e,t)=>_n(e,t),"Adj|Present":(e,t)=>_n(e,t),"Noun|Gerund":(e,t)=>_n(e,t),"Noun|Verb":(e,t)=>t>0&&_n(e,t)||Np(e,t,"Infinitive"),"Plural|Verb":(e,t)=>_n(e,t)||Np(e,t,"PresentTense")||yF(e,t,"Plural"),"Person|Noun":(e,t)=>_n(e,t),"Person|Verb":(e,t)=>t!==0?_n(e,t):null,"Person|Adj":(e,t)=>t===0&&e.length>1||_n(e,t)?"Person":null},od=typeof process>"u"||!process.env?self.env||{}:process.env,Cp=/^(under|over|mis|re|un|dis|semi)-?/,Ep=(e,t)=>{if(!e||!t)return null;let r=e.normal||e.implicit,n=null;return t.hasOwnProperty(r)&&(n=t[r]),n&&od.DEBUG_TAGS&&console.log(`
|
|
12
|
-
\x1B[2m\x1B[3m ↓ - '${r}' \x1B[0m`),n},Sp=(e,t={},r)=>{if(!e||!t)return null;let a=Array.from(e.tags).sort((i,o)=>{let s=r[i]?r[i].parents.length:0,u=r[o]?r[o].parents.length:0;return s>u?-1:1}).find(i=>t[i]);return a&&od.DEBUG_TAGS&&console.log(` \x1B[2m\x1B[3m ↓ - '${e.normal||e.implicit}' (#${a}) \x1B[0m`),a=t[a],a},bF=function(e,t,r,n){if(!r)return null;const a=e[t-1]?.text!=="also"?t-1:Math.max(0,t-2),i=n.one.tagSet;let o=Ep(e[t+1],r.afterWords);return o=o||Ep(e[a],r.beforeWords),o=o||Sp(e[a],r.beforeTags,i),o=o||Sp(e[t+1],r.afterTags,i),o},wF=function(e,t,r){const n=r.model,a=r.methods.one.setTag,{switches:i,clues:o}=n.two,s=e[t];let u=s.normal||s.implicit||"";if(Cp.test(u)&&!i[u]&&(u=u.replace(Cp,"")),s.switch){let l=s.switch;if(s.tags.has("Acronym")||s.tags.has("PhrasalVerb"))return;let c=bF(e,t,o[l],n);Ap[l]&&(c=Ap[l](e,t)||c),c?(a([s],c,r,null,`3-[switch] (${l})`),Js(e,t,n)):od.DEBUG_TAGS&&console.log(`
|
|
13
|
-
-> X - '${u}' : (${l}) `)}},xF={there:!0,this:!0,it:!0,him:!0,her:!0,us:!0},DF=function(e,t){const r=t.methods.one.setTag,n=t.model.one._multiCache||{};let a=e[0];if((a.switch==="Noun|Verb"||a.tags.has("Infinitive"))&&e.length>=2){if(e.length<4&&!xF[e[1].normal]||!a.tags.has("PhrasalVerb")&&n.hasOwnProperty(a.normal))return;(e[1].tags.has("Noun")||e[1].tags.has("Determiner"))&&(!e.slice(1,3).some(u=>u.tags.has("Verb"))||a.tags.has("#PhrasalVerb"))&&r([a],"Imperative",t,null,"3-[imperative]")}},NF=function(e){if(e.filter(r=>!r.tags.has("ProperNoun")).length<=3)return!1;const t=/^[a-z]/;return e.every(r=>!t.test(r.text))},AF=function(e,t,r){e.forEach(n=>{PM(n,0,t,r)})},CF=function(e,t,r,n){for(let a=0;a<e.length;a+=1)e[a].frozen!==!0&&(OM(e,a,t),n===!1&&VM(e,a,t),UM(e,a,t),JM(e,a,t,r),YM(e,a,t),eF(e,a))},EF=function(e,t,r,n){for(let a=0;a<e.length;a+=1){let i=sF(e,a,t);Js(e,a,t),i=i||uF(e,a,t),i=i||pF(e,a,t)}for(let a=0;a<e.length;a+=1)e[a].frozen!==!0&&(cF(e,a,r,n),hF(e,a,r,n),wF(e,a,r),tF(e,a,t,r),kM(e,a,t,r));DF(e,r)},SF=function(e){const{methods:t,model:r,world:n}=e;let a=e.docs;AF(a,r,n);let i=t.two.quickSplit(a);for(let o=0;o<i.length;o+=1){let s=i[o];const u=NF(s);CF(s,r,n,u),EF(s,r,n,u)}return i},Tp={Possessive:e=>{let t=e.machine||e.normal||e.text;return t=t.replace(/'s$/,""),t},Plural:(e,t)=>{let r=e.machine||e.normal||e.text;return t.methods.two.transform.noun.toSingular(r,t.model)},Copula:()=>"is",PastTense:(e,t)=>{let r=e.machine||e.normal||e.text;return t.methods.two.transform.verb.toInfinitive(r,t.model,"PastTense")},Gerund:(e,t)=>{let r=e.machine||e.normal||e.text;return t.methods.two.transform.verb.toInfinitive(r,t.model,"Gerund")},PresentTense:(e,t)=>{let r=e.machine||e.normal||e.text;return e.tags.has("Infinitive")?r:t.methods.two.transform.verb.toInfinitive(r,t.model,"PresentTense")},Comparative:(e,t)=>{let r=e.machine||e.normal||e.text;return t.methods.two.transform.adjective.fromComparative(r,t.model)},Superlative:(e,t)=>{let r=e.machine||e.normal||e.text;return t.methods.two.transform.adjective.fromSuperlative(r,t.model)},Adverb:(e,t)=>{const{fromAdverb:r}=t.methods.two.transform.adjective;let n=e.machine||e.normal||e.text;return r(n)}},TF=function(e){const t=e.world,r=Object.keys(Tp);e.docs.forEach(n=>{for(let a=0;a<n.length;a+=1){const i=n[a];for(let o=0;o<r.length;o+=1)if(i.tags.has(r[o])){const s=Tp[r[o]];let u=s(i,t);i.normal!==u&&(i.root=u);break}}})},Mp={Adverb:"RB",Comparative:"JJR",Superlative:"JJS",Adjective:"JJ",TO:"Conjunction",Modal:"MD",Auxiliary:"MD",Gerund:"VBG",PastTense:"VBD",Participle:"VBN",PresentTense:"VBZ",Infinitive:"VB",Particle:"RP",Verb:"VB",Pronoun:"PRP",Cardinal:"CD",Conjunction:"CC",Determiner:"DT",Preposition:"IN",QuestionWord:"WP",Expression:"UH",Possessive:"POS",ProperNoun:"NNP",Person:"NNP",Place:"NNP",Organization:"NNP",Singular:"NN",Plural:"NNS",Noun:"NN",There:"EX"},MF=function(e){if(e.tags.has("ProperNoun")&&e.tags.has("Plural"))return"NNPS";if(e.tags.has("Possessive")&&e.tags.has("Pronoun"))return"PRP$";if(e.normal==="there")return"EX";if(e.normal==="to")return"TO";let t=e.tagRank||[];for(let r=0;r<t.length;r+=1)if(Mp.hasOwnProperty(t[r]))return Mp[t[r]];return null},FF=function(e){e.compute("tagRank"),e.docs.forEach(t=>{t.forEach(r=>{r.penn=MF(r)})})},PF={preTagger:SF,root:TF,penn:FF},Wc=["Person","Place","Organization"],kF={Noun:{not:["Verb","Adjective","Adverb","Value","Determiner"]},Singular:{is:"Noun",not:["Plural","Uncountable"]},ProperNoun:{is:"Noun"},Person:{is:"Singular",also:["ProperNoun"],not:["Place","Organization","Date"]},FirstName:{is:"Person"},MaleName:{is:"FirstName",not:["FemaleName","LastName"]},FemaleName:{is:"FirstName",not:["MaleName","LastName"]},LastName:{is:"Person",not:["FirstName"]},Honorific:{is:"Person",not:["FirstName","LastName","Value"]},Place:{is:"Singular",not:["Person","Organization"]},Country:{is:"Place",also:["ProperNoun"],not:["City"]},City:{is:"Place",also:["ProperNoun"],not:["Country"]},Region:{is:"Place",also:["ProperNoun"]},Address:{},Organization:{is:"ProperNoun",not:["Person","Place"]},SportsTeam:{is:"Organization"},School:{is:"Organization"},Company:{is:"Organization"},Plural:{is:"Noun",not:["Singular","Uncountable"]},Uncountable:{is:"Noun"},Pronoun:{is:"Noun",not:Wc},Actor:{is:"Noun",not:["Place","Organization"]},Activity:{is:"Noun",not:["Person","Place"]},Unit:{is:"Noun",not:Wc},Demonym:{is:"Noun",also:["ProperNoun"],not:Wc},Possessive:{is:"Noun"},Reflexive:{is:"Pronoun"}},OF={Verb:{not:["Noun","Adjective","Adverb","Value","Expression"]},PresentTense:{is:"Verb",not:["PastTense","FutureTense"]},Infinitive:{is:"PresentTense",not:["Gerund"]},Imperative:{is:"Verb",not:["PastTense","Gerund","Copula"]},Gerund:{is:"PresentTense",not:["Copula"]},PastTense:{is:"Verb",not:["PresentTense","Gerund","FutureTense"]},FutureTense:{is:"Verb",not:["PresentTense","PastTense"]},Copula:{is:"Verb"},Modal:{is:"Verb",not:["Infinitive"]},Participle:{is:"PastTense"},Auxiliary:{is:"Verb",not:["PastTense","PresentTense","Gerund","Conjunction"]},PhrasalVerb:{is:"Verb"},Particle:{is:"PhrasalVerb",not:["PastTense","PresentTense","Copula","Gerund"]},Passive:{is:"Verb"}},$F={Value:{not:["Verb","Adjective","Adverb"]},Ordinal:{is:"Value",not:["Cardinal"]},Cardinal:{is:"Value",not:["Ordinal"]},Fraction:{is:"Value",not:["Noun"]},Multiple:{is:"TextValue"},RomanNumeral:{is:"Cardinal",not:["TextValue"]},TextValue:{is:"Value",not:["NumericValue"]},NumericValue:{is:"Value",not:["TextValue"]},Money:{is:"Cardinal"},Percent:{is:"Value"}},BF={Date:{not:["Verb","Adverb","Adjective"]},Month:{is:"Date",also:["Noun"],not:["Year","WeekDay","Time"]},WeekDay:{is:"Date",also:["Noun"]},Year:{is:"Date",not:["RomanNumeral"]},FinancialQuarter:{is:"Date",not:"Fraction"},Holiday:{is:"Date",also:["Noun"]},Season:{is:"Date"},Timezone:{is:"Date",also:["Noun"],not:["ProperNoun"]},Time:{is:"Date",not:["AtMention"]},Duration:{is:"Date",also:["Noun"]}},_F=["Noun","Verb","Adjective","Adverb","Value","QuestionWord"],IF={Adjective:{not:["Noun","Verb","Adverb","Value"]},Comparable:{is:"Adjective"},Comparative:{is:"Adjective"},Superlative:{is:"Adjective",not:["Comparative"]},NumberRange:{},Adverb:{not:["Noun","Verb","Adjective","Value"]},Determiner:{not:["Noun","Verb","Adjective","Adverb","QuestionWord","Conjunction"]},Conjunction:{not:_F},Preposition:{not:["Noun","Verb","Adjective","Adverb","QuestionWord","Determiner"]},QuestionWord:{not:["Determiner"]},Currency:{is:"Noun"},Expression:{not:["Noun","Adjective","Verb","Adverb"]},Abbreviation:{},Url:{not:["HashTag","PhoneNumber","Verb","Adjective","Value","AtMention","Email","SlashedTerm"]},PhoneNumber:{not:["HashTag","Verb","Adjective","Value","AtMention","Email"]},HashTag:{},AtMention:{is:"Noun",not:["HashTag","Email"]},Emoji:{not:["HashTag","Verb","Adjective","Value","AtMention"]},Emoticon:{not:["HashTag","Verb","Adjective","Value","AtMention","SlashedTerm"]},SlashedTerm:{not:["Emoticon","Url","Value"]},Email:{not:["HashTag","Verb","Adjective","Value","AtMention"]},Acronym:{not:["Plural","RomanNumeral","Pronoun","Date"]},Negative:{not:["Noun","Adjective","Value","Expression"]},Condition:{not:["Verb","Adjective","Noun","Value"]},There:{not:["Verb","Adjective","Noun","Value","Conjunction","Preposition"]},Prefix:{not:["Abbreviation","Acronym","ProperNoun"]},Hyphenated:{}};let zF=Object.assign({},kF,OF,$F,BF,IF);const jF={compute:PF,methods:Qf,model:em,tags:zF,hooks:["preTagger"]},qF=/[,)"';:\-–—.…]/,ga=function(e,t){if(!e.found)return;let r=e.termList();for(let n=0;n<r.length-1;n++){const a=r[n];if(qF.test(a.post))return}r[0].implicit=r[0].normal,r[0].text+=t,r[0].normal+=t,r.slice(1).forEach(n=>{n.implicit=n.normal,n.text="",n.normal=""});for(let n=0;n<r.length-1;n++)r[n].post=r[n].post.replace(/ /,"")},RF=function(){let e=this.not("@hasContraction"),t=e.match("(we|they|you) are");return ga(t,"'re"),t=e.match("(he|she|they|it|we|you) will"),ga(t,"'ll"),t=e.match("(he|she|they|it|we) is"),ga(t,"'s"),t=e.match("#Person is"),ga(t,"'s"),t=e.match("#Person would"),ga(t,"'d"),t=e.match("(is|was|had|would|should|could|do|does|have|has|can) not"),ga(t,"n't"),t=e.match("(i|we|they) have"),ga(t,"'ve"),t=e.match("(would|should|could) have"),ga(t,"'ve"),t=e.match("i am"),ga(t,"'m"),t=e.match("going to"),this},LF=new RegExp("^\\p{Lu}[\\p{Ll}'’]","u"),HF=function(e=""){return e=e.replace(/^ *[a-z\u00C0-\u00FF]/,t=>t.toUpperCase()),e},GF=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Contraction"}expand(){return this.docs.forEach(n=>{let a=LF.test(n[0].text);n.forEach((i,o)=>{i.text=i.implicit||"",delete i.implicit,o<n.length-1&&i.post===""&&(i.post+=" "),i.dirty=!0}),a&&(n[0].text=HF(n[0].text))}),this.compute("normal"),this}}e.prototype.contractions=function(){let r=this.match("@hasContraction+");return new t(this.document,r.pointer)},e.prototype.contract=RF},VF=function(e,t,r){let[n,a]=t;!r||r.length===0||(r=r.map((i,o)=>(i.implicit=i.text,i.machine=i.text,i.pre="",i.post="",i.text="",i.normal="",i.index=[n,a+o],i)),r[0]&&(r[0].pre=e[n][a].pre,r[r.length-1].post=e[n][a].post,r[0].text=e[n][a].text,r[0].normal=e[n][a].normal),e[n].splice(a,1,...r))},UF=/'/,WF=new Set(["been","become"]),JF=new Set(["what","how","when","if","too"]);let KF=new Set(["too","also","enough"]);const YF=(e,t)=>{for(let r=t+1;r<e.length;r+=1){let n=e[r];if(WF.has(n.normal))return"has";if(JF.has(n.normal)||n.tags.has("Gerund")||n.tags.has("Determiner")||n.tags.has("Adjective")||n.switch==="Adj|Past"&&e[r+1]&&(KF.has(e[r+1].normal)||e[r+1].tags.has("Preposition")))return"is";if(n.tags.has("PastTense"))return e[r+1]&&e[r+1].normal==="for"?"is":"has"}return"is"},ZF=function(e,t){let r=e[t].normal.split(UF)[0];if(r==="let")return[r,"us"];if(r==="there"){let n=e[t+1];if(n&&n.tags.has("Plural"))return[r,"are"]}return YF(e,t)==="has"?[r,"has"]:[r,"is"]},QF=/'/,XF=new Set(["better","done","before","it","had"]),e5=new Set(["have","be"]),t5=(e,t)=>{for(let r=t+1;r<e.length;r+=1){let n=e[r];if(XF.has(n.normal))return"had";if(e5.has(n.normal))return"would";if(n.tags.has("PastTense")||n.switch==="Adj|Past")return"had";if(n.tags.has("PresentTense")||n.tags.has("Infinitive"))return"would";if(n.tags.has("#Determiner"))return"had";if(n.tags.has("Adjective"))return"would"}return!1},r5=function(e,t){let r=e[t].normal.split(QF)[0];return r==="how"||r==="what"?[r,"did"]:t5(e,t)==="had"?[r,"had"]:[r,"would"]},n5=function(e,t){for(let r=t-1;r>=0;r-=1)if(e[r].tags.has("Noun")||e[r].tags.has("Pronoun")||e[r].tags.has("Plural")||e[r].tags.has("Singular"))return e[r];return null},a5=function(e,t){if(e[t].normal==="ain't"||e[t].normal==="aint"){if(e[t+1]&&e[t+1].normal==="never")return["have"];let n=n5(e,t);if(n){if(n.normal==="we"||n.normal==="they")return["are","not"];if(n.normal==="i")return["am","not"];if(n.tags&&n.tags.has("Plural"))return["are","not"]}return["is","not"]}return[e[t].normal.replace(/n't/,""),"not"]},i5={that:!0,there:!0,let:!0,here:!0,everywhere:!0},o5={in:!0,by:!0,for:!0};let s5=new Set(["too","also","enough","about"]),u5=new Set(["is","are","did","were","could","should","must","had","have"]);const l5=(e,t)=>{let r=e[t];if(i5.hasOwnProperty(r.machine||r.normal))return!1;if(r.tags.has("Possessive"))return!0;if(r.tags.has("QuestionWord")||r.normal==="he's"||r.normal==="she's")return!1;let n=e[t+1];if(!n)return!0;if(r.normal==="it's")return!!n.tags.has("#Noun");if(n.switch=="Noun|Gerund"){let a=e[t+2];return a?a.tags.has("Copula")?!0:(a.normal==="on"||a.normal==="in",!1):!!(r.tags.has("Actor")||r.tags.has("ProperNoun"))}if(n.tags.has("Verb"))return n.tags.has("Infinitive")?!0:n.tags.has("Gerund")?!1:!!n.tags.has("PresentTense");if(n.switch==="Adj|Noun"){let a=e[t+2];if(!a)return!1;if(u5.has(a.normal))return!0;if(s5.has(a.normal))return!1}if(n.tags.has("Noun")){let a=n.machine||n.normal;return!(a==="here"||a==="there"||a==="everywhere"||n.tags.has("Possessive")||n.tags.has("ProperNoun")&&!r.tags.has("ProperNoun"))}if(e[t-1]&&o5[e[t-1].normal]===!0)return!0;if(n.tags.has("Adjective")){let a=e[t+2];if(!a)return!1;if(a.tags.has("Noun")&&!a.tags.has("Pronoun")){let i=n.normal;return!(i==="above"||i==="below"||i==="behind")}return a.switch==="Noun|Verb"}return!!n.tags.has("Value")},Fp=/'/,c5=function(e){e.forEach((t,r)=>{t.index&&(t.index[1]=r)})},f5=function(e,t,r,n){let a=t.update();a.document=[e];let i=r+n;r>0&&(r-=1),e[i]&&(i+=1),a.ptrs=[[0,r,i]],a.compute(["freeze","lexicon","preTagger","unfreeze"]),c5(e)},Pp={d:(e,t)=>r5(e,t),t:(e,t)=>a5(e,t),s:(e,t,r)=>l5(e,t)?r.methods.one.setTag([e[t]],"Possessive",r,null,"2-contraction"):ZF(e,t)},m5=function(e,t){let r=t.fromText(e.join(" "));return r.compute("id"),r.docs[0]},d5=e=>{let{world:t,document:r}=e;r.forEach((n,a)=>{for(let i=n.length-1;i>=0;i-=1){if(n[i].implicit)continue;let o=null;Fp.test(n[i].normal)===!0&&(o=n[i].normal.split(Fp)[1]);let s=null;if(Pp.hasOwnProperty(o)&&(s=Pp[o](n,i,t)),s){s=m5(s,e),VF(r,[a,i],s),f5(r[a],e,i,s.length);continue}}})},h5={contractionTwo:d5},p5={compute:h5,api:GF,hooks:["contractionTwo"]},g5=[{match:"[(all|both)] #Determiner #Noun",group:0,tag:"Noun",reason:"all-noun"},{match:"#Copula [(just|alone)]$",group:0,tag:"Adjective",reason:"not-adverb"},{match:"#Singular is #Adverb? [#PastTense$]",group:0,tag:"Adjective",reason:"is-filled"},{match:"[#PastTense] #Singular is",group:0,tag:"Adjective",reason:"smoked-poutine"},{match:"[#PastTense] #Plural are",group:0,tag:"Adjective",reason:"baked-onions"},{match:"well [#PastTense]",group:0,tag:"Adjective",reason:"well-made"},{match:"#Copula [fucked up?]",group:0,tag:"Adjective",reason:"swears-adjective"},{match:"#Singular (seems|appears) #Adverb? [#PastTense$]",group:0,tag:"Adjective",reason:"seems-filled"},{match:"#Copula #Adjective? [(out|in|through)]$",group:0,tag:"Adjective",reason:"still-out"},{match:"^[#Adjective] (the|your) #Noun",group:0,notIf:"(all|even)",tag:"Infinitive",reason:"shut-the"},{match:"the [said] #Noun",group:0,tag:"Adjective",reason:"the-said-card"},{match:"[#Hyphenated (#Hyphenated && #PastTense)] (#Noun|#Conjunction)",group:0,tag:"Adjective",notIf:"#Adverb",reason:"faith-based"},{match:"[#Hyphenated (#Hyphenated && #Gerund)] (#Noun|#Conjunction)",group:0,tag:"Adjective",notIf:"#Adverb",reason:"self-driving"},{match:"[#PastTense (#Hyphenated && #PhrasalVerb)] (#Noun|#Conjunction)",group:0,tag:"Adjective",reason:"dammed-up"},{match:"(#Hyphenated && #Value) fold",tag:"Adjective",reason:"two-fold"},{match:"must (#Hyphenated && #Infinitive)",tag:"Adjective",reason:"must-win"},{match:"(#Hyphenated && #Infinitive) #Hyphenated",tag:"Adjective",notIf:"#PhrasalVerb",reason:"vacuum-sealed"},{match:"too much",tag:"Adverb Adjective",reason:"bit-4"},{match:"a bit much",tag:"Determiner Adverb Adjective",reason:"bit-3"},{match:"[(un|contra|extra|inter|intra|macro|micro|mid|mis|mono|multi|pre|sub|tri|ex)] #Adjective",group:0,tag:["Adjective","Prefix"],reason:"un-skilled"}],v5="(dark|bright|flat|light|soft|pale|dead|dim|faux|little|wee|sheer|most|near|good|extra|all)",kp="(hard|fast|late|early|high|right|deep|close|direct)",y5=[{match:"#Adverb [#Adverb] (and|or|then)",group:0,tag:"Adjective",reason:"kinda-sparkly-and"},{match:`[${v5}] #Adjective`,group:0,tag:"Adverb",reason:"dark-green"},{match:"#Copula [far too] #Adjective",group:0,tag:"Adverb",reason:"far-too"},{match:"#Copula [still] (in|#Gerund|#Adjective)",group:0,tag:"Adverb",reason:"was-still-walking"},{match:`#Plural ${kp}`,tag:"#PresentTense #Adverb",reason:"studies-hard"},{match:`#Verb [${kp}] !#Noun?`,group:0,notIf:"(#Copula|get|got|getting|become|became|becoming|feel|feels|feeling|#Determiner|#Preposition)",tag:"Adverb",reason:"shops-direct"},{match:"[#Plural] a lot",tag:"PresentTense",reason:"studies-a-lot"}],b5=[{match:"as [#Gerund] as",group:0,tag:"Adjective",reason:"as-gerund-as"},{match:"more [#Gerund] than",group:0,tag:"Adjective",reason:"more-gerund-than"},{match:"(so|very|extremely) [#Gerund]",group:0,tag:"Adjective",reason:"so-gerund"},{match:"(found|found) it #Adverb? [#Gerund]",group:0,tag:"Adjective",reason:"found-it-gerund"},{match:"a (little|bit|wee) bit? [#Gerund]",group:0,tag:"Adjective",reason:"a-bit-gerund"},{match:"#Gerund [#Gerund]",group:0,tag:"Adjective",notIf:"(impersonating|practicing|considering|assuming)",reason:"looking-annoying"},{match:"(looked|look|looks) #Adverb? [%Adj|Gerund%]",group:0,tag:"Adjective",notIf:"(impersonating|practicing|considering|assuming)",reason:"looked-amazing"},{match:"[%Adj|Gerund%] #Determiner",group:0,tag:"Gerund",reason:"developing-a"},{match:"#Possessive [%Adj|Gerund%] #Noun",group:0,tag:"Adjective",reason:"leading-manufacturer"},{match:"%Noun|Gerund% %Adj|Gerund%",tag:"Gerund #Adjective",reason:"meaning-alluring"},{match:"(face|embrace|reveal|stop|start|resume) %Adj|Gerund%",tag:"#PresentTense #Adjective",reason:"face-shocking"},{match:"(are|were) [%Adj|Gerund%] #Plural",group:0,tag:"Adjective",reason:"are-enduring-symbols"}],w5=[{match:"#Determiner [#Adjective] #Copula",group:0,tag:"Noun",reason:"the-adj-is"},{match:"#Adjective [#Adjective] #Copula",group:0,tag:"Noun",reason:"adj-adj-is"},{match:"(his|its) [%Adj|Noun%]",group:0,tag:"Noun",notIf:"#Hyphenated",reason:"his-fine"},{match:"#Copula #Adverb? [all]",group:0,tag:"Noun",reason:"is-all"},{match:"(have|had) [#Adjective] #Preposition .",group:0,tag:"Noun",reason:"have-fun"},{match:"#Gerund (giant|capital|center|zone|application)",tag:"Noun",reason:"brewing-giant"},{match:"#Preposition (a|an) [#Adjective]$",group:0,tag:"Noun",reason:"an-instant"},{match:"no [#Adjective] #Modal",group:0,tag:"Noun",reason:"no-golden"},{match:"[brand #Gerund?] new",group:0,tag:"Adverb",reason:"brand-new"},{match:"(#Determiner|#Comparative|new|different) [kind]",group:0,tag:"Noun",reason:"some-kind"},{match:"#Possessive [%Adj|Noun%] #Noun",group:0,tag:"Adjective",reason:"her-favourite"},{match:"must && #Hyphenated .",tag:"Adjective",reason:"must-win"},{match:"#Determiner [#Adjective]$",tag:"Noun",notIf:"(this|that|#Comparative|#Superlative)",reason:"the-south"},{match:"(#Noun && #Hyphenated) (#Adjective && #Hyphenated)",tag:"Adjective",notIf:"(this|that|#Comparative|#Superlative)",reason:"company-wide"},{match:"#Determiner [#Adjective] (#Copula|#Determiner)",notIf:"(#Comparative|#Superlative)",group:0,tag:"Noun",reason:"the-poor"},{match:"[%Adj|Noun%] #Noun",notIf:"(#Pronoun|#ProperNoun)",group:0,tag:"Adjective",reason:"stable-foundations"}],x5=[{match:"(slowly|quickly) [#Adjective]",group:0,tag:"Verb",reason:"slowly-adj"},{match:"does (#Adverb|not)? [#Adjective]",group:0,tag:"PresentTense",reason:"does-mean"},{match:"[(fine|okay|cool|ok)] by me",group:0,tag:"Adjective",reason:"okay-by-me"},{match:"i (#Adverb|do)? not? [mean]",group:0,tag:"PresentTense",reason:"i-mean"},{match:"will #Adjective",tag:"Auxiliary Infinitive",reason:"will-adj"},{match:"#Pronoun [#Adjective] #Determiner #Adjective? #Noun",group:0,tag:"Verb",reason:"he-adj-the"},{match:"#Copula [%Adj|Present%] to #Verb",group:0,tag:"Verb",reason:"adj-to"},{match:"#Copula [#Adjective] (well|badly|quickly|slowly)",group:0,tag:"Verb",reason:"done-well"},{match:"#Adjective and [#Gerund] !#Preposition?",group:0,tag:"Adjective",reason:"rude-and-x"},{match:"#Copula #Adverb? (over|under) [#PastTense]",group:0,tag:"Adjective",reason:"over-cooked"},{match:"#Copula #Adjective+ (and|or) [#PastTense]$",group:0,tag:"Adjective",reason:"bland-and-overcooked"},{match:"got #Adverb? [#PastTense] of",group:0,tag:"Adjective",reason:"got-tired-of"},{match:"(seem|seems|seemed|appear|appeared|appears|feel|feels|felt|sound|sounds|sounded) (#Adverb|#Adjective)? [#PastTense]",group:0,tag:"Adjective",reason:"felt-loved"},{match:"(seem|feel|seemed|felt) [#PastTense #Particle?]",group:0,tag:"Adjective",reason:"seem-confused"},{match:"a (bit|little|tad) [#PastTense #Particle?]",group:0,tag:"Adjective",reason:"a-bit-confused"},{match:"not be [%Adj|Past% #Particle?]",group:0,tag:"Adjective",reason:"do-not-be-confused"},{match:"#Copula just [%Adj|Past% #Particle?]",group:0,tag:"Adjective",reason:"is-just-right"},{match:"as [#Infinitive] as",group:0,tag:"Adjective",reason:"as-pale-as"},{match:"[%Adj|Past%] and #Adjective",group:0,tag:"Adjective",reason:"faled-and-oppressive"},{match:"or [#PastTense] #Noun",group:0,tag:"Adjective",notIf:"(#Copula|#Pronoun)",reason:"or-heightened-emotion"},{match:"(become|became|becoming|becomes) [#Verb]",group:0,tag:"Adjective",reason:"become-verb"},{match:"#Possessive [#PastTense] #Noun",group:0,tag:"Adjective",reason:"declared-intentions"},{match:"#Copula #Pronoun [%Adj|Present%]",group:0,tag:"Adjective",reason:"is-he-cool"},{match:"#Copula [%Adj|Past%] with",group:0,tag:"Adjective",notIf:"(associated|worn|baked|aged|armed|bound|fried|loaded|mixed|packed|pumped|filled|sealed)",reason:"is-crowded-with"},{match:"#Copula #Adverb? [%Adj|Present%]$",group:0,tag:"Adjective",reason:"was-empty$"}],D5=[{match:"[still] #Adjective",group:0,tag:"Adverb",reason:"still-advb"},{match:"[still] #Verb",group:0,tag:"Adverb",reason:"still-verb"},{match:"[so] #Adjective",group:0,tag:"Adverb",reason:"so-adv"},{match:"[way] #Comparative",group:0,tag:"Adverb",reason:"way-adj"},{match:"[way] #Adverb #Adjective",group:0,tag:"Adverb",reason:"way-too-adj"},{match:"[all] #Verb",group:0,tag:"Adverb",reason:"all-verb"},{match:"#Verb [like]",group:0,notIf:"(#Modal|#PhrasalVerb)",tag:"Adverb",reason:"verb-like"},{match:"(barely|hardly) even",tag:"Adverb",reason:"barely-even"},{match:"[even] #Verb",group:0,tag:"Adverb",reason:"even-walk"},{match:"[even] #Comparative",group:0,tag:"Adverb",reason:"even-worse"},{match:"[even] (#Determiner|#Possessive)",group:0,tag:"#Adverb",reason:"even-the"},{match:"even left",tag:"#Adverb #Verb",reason:"even-left"},{match:"[way] #Adjective",group:0,tag:"#Adverb",reason:"way-over"},{match:"#PresentTense [(hard|quick|bright|slow|fast|backwards|forwards)]",notIf:"#Copula",group:0,tag:"Adverb",reason:"lazy-ly"},{match:"[much] #Adjective",group:0,tag:"Adverb",reason:"bit-1"},{match:"#Copula [#Adverb]$",group:0,tag:"Adjective",reason:"is-well"},{match:"a [(little|bit|wee) bit?] #Adjective",group:0,tag:"Adverb",reason:"a-bit-cold"},{match:"[(super|pretty)] #Adjective",group:0,tag:"Adverb",reason:"super-strong"},{match:"(become|fall|grow) #Adverb? [#PastTense]",group:0,tag:"Adjective",reason:"overly-weakened"},{match:"(a|an) #Adverb [#Participle] #Noun",group:0,tag:"Adjective",reason:"completely-beaten"},{match:"#Determiner #Adverb? [close]",group:0,tag:"Adjective",reason:"a-close"},{match:"#Gerund #Adverb? [close]",group:0,tag:"Adverb",notIf:"(getting|becoming|feeling)",reason:"being-close"},{match:"(the|those|these|a|an) [#Participle] #Noun",group:0,tag:"Adjective",reason:"blown-motor"},{match:"(#PresentTense|#PastTense) [back]",group:0,tag:"Adverb",notIf:"(#PhrasalVerb|#Copula)",reason:"charge-back"},{match:"#Verb [around]",group:0,tag:"Adverb",notIf:"#PhrasalVerb",reason:"send-around"},{match:"[later] #PresentTense",group:0,tag:"Adverb",reason:"later-say"},{match:"#Determiner [well] !#PastTense?",group:0,tag:"Noun",reason:"the-well"},{match:"#Adjective [enough]",group:0,tag:"Adverb",reason:"high-enough"}],N5=[{match:"#Holiday (day|eve)",tag:"Holiday",reason:"holiday-day"},{match:"#Value of #Month",tag:"Date",reason:"value-of-month"},{match:"#Cardinal #Month",tag:"Date",reason:"cardinal-month"},{match:"#Month #Value to #Value",tag:"Date",reason:"value-to-value"},{match:"#Month the #Value",tag:"Date",reason:"month-the-value"},{match:"(#WeekDay|#Month) #Value",tag:"Date",reason:"date-value"},{match:"#Value (#WeekDay|#Month)",tag:"Date",reason:"value-date"},{match:"(#TextValue && #Date) #TextValue",tag:"Date",reason:"textvalue-date"},{match:"#Month #NumberRange",tag:"Date",reason:"aug 20-21"},{match:"#WeekDay #Month #Ordinal",tag:"Date",reason:"week mm-dd"},{match:"#Month #Ordinal #Cardinal",tag:"Date",reason:"mm-dd-yyy"},{match:"(#Place|#Demonmym|#Time) (standard|daylight|central|mountain)? time",tag:"Timezone",reason:"std-time"},{match:"(eastern|mountain|pacific|central|atlantic) (standard|daylight|summer)? time",tag:"Timezone",reason:"eastern-time"},{match:"#Time [(eastern|mountain|pacific|central|est|pst|gmt)]",group:0,tag:"Timezone",reason:"5pm-central"},{match:"(central|western|eastern) european time",tag:"Timezone",reason:"cet"}],A5=[{match:"[sun] the #Ordinal",tag:"WeekDay",reason:"sun-the-5th"},{match:"[sun] #Date",group:0,tag:"WeekDay",reason:"sun-feb"},{match:"#Date (on|this|next|last|during)? [sun]",group:0,tag:"WeekDay",reason:"1pm-sun"},{match:"(in|by|before|during|on|until|after|of|within|all) [sat]",group:0,tag:"WeekDay",reason:"sat"},{match:"(in|by|before|during|on|until|after|of|within|all) [wed]",group:0,tag:"WeekDay",reason:"wed"},{match:"(in|by|before|during|on|until|after|of|within|all) [march]",group:0,tag:"Month",reason:"march"},{match:"[sat] #Date",group:0,tag:"WeekDay",reason:"sat-feb"},{match:"#Preposition [(march|may)]",group:0,tag:"Month",reason:"in-month"},{match:"(this|next|last) (march|may) !#Infinitive?",tag:"#Date #Month",reason:"this-month"},{match:"(march|may) the? #Value",tag:"#Month #Date #Date",reason:"march-5th"},{match:"#Value of? (march|may)",tag:"#Date #Date #Month",reason:"5th-of-march"},{match:"[(march|may)] .? #Date",group:0,tag:"Month",reason:"march-and-feb"},{match:"#Date .? [(march|may)]",group:0,tag:"Month",reason:"feb-and-march"},{match:"#Adverb [(march|may)]",group:0,tag:"Verb",reason:"quickly-march"},{match:"[(march|may)] #Adverb",group:0,tag:"Verb",reason:"march-quickly"},{match:"#Value (am|pm)",tag:"Time",reason:"2-am"}],C5="(feel|sense|process|rush|side|bomb|bully|challenge|cover|crush|dump|exchange|flow|function|issue|lecture|limit|march|process)",E5=[{match:"(the|any) [more]",group:0,tag:"Singular",reason:"more-noun"},{match:"[more] #Noun",group:0,tag:"Adjective",reason:"more-noun"},{match:"(right|rights) of .",tag:"Noun",reason:"right-of"},{match:"a [bit]",group:0,tag:"Singular",reason:"bit-2"},{match:"a [must]",group:0,tag:"Singular",reason:"must-2"},{match:"(we|us) [all]",group:0,tag:"Noun",reason:"we all"},{match:"due to [#Verb]",group:0,tag:"Noun",reason:"due-to"},{match:"some [#Verb] #Plural",group:0,tag:"Noun",reason:"determiner6"},{match:"#Possessive #Ordinal [#PastTense]",group:0,tag:"Noun",reason:"first-thought"},{match:"(the|this|those|these) #Adjective [%Verb|Noun%]",group:0,tag:"Noun",notIf:"#Copula",reason:"the-adj-verb"},{match:"(the|this|those|these) #Adverb #Adjective [#Verb]",group:0,tag:"Noun",reason:"determiner4"},{match:"the [#Verb] #Preposition .",group:0,tag:"Noun",reason:"determiner1"},{match:"(a|an|the) [#Verb] of",group:0,tag:"Noun",reason:"the-verb-of"},{match:"#Determiner #Noun of [#Verb]",group:0,tag:"Noun",notIf:"#Gerund",reason:"noun-of-noun"},{match:"#PastTense #Preposition [#PresentTense]",group:0,notIf:"#Gerund",tag:"Noun",reason:"ended-in-ruins"},{match:"#Conjunction [u]",group:0,tag:"Pronoun",reason:"u-pronoun-2"},{match:"[u] #Verb",group:0,tag:"Pronoun",reason:"u-pronoun-1"},{match:"#Determiner [(western|eastern|northern|southern|central)] #Noun",group:0,tag:"Noun",reason:"western-line"},{match:"(#Singular && @hasHyphen) #PresentTense",tag:"Noun",reason:"hyphen-verb"},{match:"is no [#Verb]",group:0,tag:"Noun",reason:"is-no-verb"},{match:"do [so]",group:0,tag:"Noun",reason:"so-noun"},{match:"#Determiner [(shit|damn|hell)]",group:0,tag:"Noun",reason:"swears-noun"},{match:"to [(shit|hell)]",group:0,tag:"Noun",reason:"to-swears"},{match:"(the|these) [#Singular] (were|are)",group:0,tag:"Plural",reason:"singular-were"},{match:"a #Noun+ or #Adverb+? [#Verb]",group:0,tag:"Noun",reason:"noun-or-noun"},{match:"(the|those|these|a|an) #Adjective? [#PresentTense #Particle?]",group:0,tag:"Noun",notIf:"(seem|appear|include|#Gerund|#Copula)",reason:"det-inf"},{match:"#Noun #Actor",tag:"Actor",notIf:"(#Person|#Pronoun)",reason:"thing-doer"},{match:"#Gerund #Actor",tag:"Actor",reason:"gerund-doer"},{match:"co #Singular",tag:"Actor",reason:"co-noun"},{match:"[#Noun+] #Actor",group:0,tag:"Actor",notIf:"(#Honorific|#Pronoun|#Possessive)",reason:"air-traffic-controller"},{match:"(urban|cardiac|cardiovascular|respiratory|medical|clinical|visual|graphic|creative|dental|exotic|fine|certified|registered|technical|virtual|professional|amateur|junior|senior|special|pharmaceutical|theoretical)+ #Noun? #Actor",tag:"Actor",reason:"fine-artist"},{match:"#Noun+ (coach|chef|king|engineer|fellow|personality|boy|girl|man|woman|master)",tag:"Actor",reason:"dance-coach"},{match:"chief . officer",tag:"Actor",reason:"chief-x-officer"},{match:"chief of #Noun+",tag:"Actor",reason:"chief-of-police"},{match:"senior? vice? president of #Noun+",tag:"Actor",reason:"president-of"},{match:"#Determiner [sun]",group:0,tag:"Singular",reason:"the-sun"},{match:"#Verb (a|an) [#Value]$",group:0,tag:"Singular",reason:"did-a-value"},{match:"the [(can|will|may)]",group:0,tag:"Singular",reason:"the can"},{match:"#FirstName #Acronym? (#Possessive && #LastName)",tag:"Possessive",reason:"name-poss"},{match:"#Organization+ #Possessive",tag:"Possessive",reason:"org-possessive"},{match:"#Place+ #Possessive",tag:"Possessive",reason:"place-possessive"},{match:"#Possessive #PresentTense #Particle?",notIf:"(#Gerund|her)",tag:"Noun",reason:"possessive-verb"},{match:"(my|our|their|her|his|its) [(#Plural && #Actor)] #Noun",tag:"Possessive",reason:"my-dads"},{match:"#Value of a [second]",group:0,unTag:"Value",tag:"Singular",reason:"10th-of-a-second"},{match:"#Value [seconds]",group:0,unTag:"Value",tag:"Plural",reason:"10-seconds"},{match:"in [#Infinitive]",group:0,tag:"Singular",reason:"in-age"},{match:"a [#Adjective] #Preposition",group:0,tag:"Noun",reason:"a-minor-in"},{match:"#Determiner [#Singular] said",group:0,tag:"Actor",reason:"the-actor-said"},{match:`#Determiner #Noun [${C5}] !(#Preposition|to|#Adverb)?`,group:0,tag:"Noun",reason:"the-noun-sense"},{match:"[#PresentTense] (of|by|for) (a|an|the) #Noun #Copula",group:0,tag:"Plural",reason:"photographs-of"},{match:"#Infinitive and [%Noun|Verb%]",group:0,tag:"Infinitive",reason:"fight and win"},{match:"#Noun and [#Verb] and #Noun",group:0,tag:"Noun",reason:"peace-and-flowers"},{match:"the #Cardinal [%Adj|Noun%]",group:0,tag:"Noun",reason:"the-1992-classic"},{match:"#Copula the [%Adj|Noun%] #Noun",group:0,tag:"Adjective",reason:"the-premier-university"},{match:"i #Verb [me] #Noun",group:0,tag:"Possessive",reason:"scottish-me"},{match:"[#PresentTense] (music|class|lesson|night|party|festival|league|ceremony)",group:0,tag:"Noun",reason:"dance-music"},{match:"[wit] (me|it)",group:0,tag:"Presposition",reason:"wit-me"},{match:"#PastTense #Possessive [#Verb]",group:0,tag:"Noun",notIf:"(saw|made)",reason:"left-her-boots"},{match:"#Value [%Plural|Verb%]",group:0,tag:"Plural",notIf:"(one|1|a|an)",reason:"35-signs"},{match:"had [#PresentTense]",group:0,tag:"Noun",notIf:"(#Gerund|come|become)",reason:"had-time"},{match:"%Adj|Noun% %Noun|Verb%",tag:"#Adjective #Noun",notIf:"#ProperNoun #Noun",reason:"instant-access"},{match:"#Determiner [%Adj|Noun%] #Conjunction",group:0,tag:"Noun",reason:"a-rep-to"},{match:"#Adjective #Noun [%Plural|Verb%]$",group:0,tag:"Plural",notIf:"#Pronoun",reason:"near-death-experiences"},{match:"#Possessive #Noun [%Plural|Verb%]$",group:0,tag:"Plural",reason:"your-guild-colors"}],S5=[{match:"(this|that|the|a|an) [#Gerund #Infinitive]",group:0,tag:"Singular",reason:"the-planning-process"},{match:"(that|the) [#Gerund #PresentTense]",group:0,ifNo:"#Copula",tag:"Plural",reason:"the-paving-stones"},{match:"#Determiner [#Gerund] #Noun",group:0,tag:"Adjective",reason:"the-gerund-noun"},{match:"#Pronoun #Infinitive [#Gerund] #PresentTense",group:0,tag:"Noun",reason:"tipping-sucks"},{match:"#Adjective [#Gerund]",group:0,tag:"Noun",notIf:"(still|even|just)",reason:"early-warning"},{match:"[#Gerund] #Adverb? not? #Copula",group:0,tag:"Activity",reason:"gerund-copula"},{match:"#Copula [(#Gerund|#Activity)] #Copula",group:0,tag:"Gerund",reason:"are-doing-is"},{match:"[#Gerund] #Modal",group:0,tag:"Activity",reason:"gerund-modal"},{match:"#Singular for [%Noun|Gerund%]",group:0,tag:"Gerund",reason:"noun-for-gerund"},{match:"#Comparative (for|at) [%Noun|Gerund%]",group:0,tag:"Gerund",reason:"better-for-gerund"},{match:"#PresentTense the [#Gerund]",group:0,tag:"Noun",reason:"keep-the-touching"}],T5=[{match:"#Infinitive (this|that|the) [#Infinitive]",group:0,tag:"Noun",reason:"do-this-dance"},{match:"#Gerund #Determiner [#Infinitive]",group:0,tag:"Noun",reason:"running-a-show"},{match:"#Determiner (only|further|just|more|backward) [#Infinitive]",group:0,tag:"Noun",reason:"the-only-reason"},{match:"(the|this|a|an) [#Infinitive] #Adverb? #Verb",group:0,tag:"Noun",reason:"determiner5"},{match:"#Determiner #Adjective #Adjective? [#Infinitive]",group:0,tag:"Noun",reason:"a-nice-inf"},{match:"#Determiner #Demonym [#PresentTense]",group:0,tag:"Noun",reason:"mexican-train"},{match:"#Adjective #Noun+ [#Infinitive] #Copula",group:0,tag:"Noun",reason:"career-move"},{match:"at some [#Infinitive]",group:0,tag:"Noun",reason:"at-some-inf"},{match:"(go|goes|went) to [#Infinitive]",group:0,tag:"Noun",reason:"goes-to-verb"},{match:"(a|an) #Adjective? #Noun [#Infinitive] (#Preposition|#Noun)",group:0,notIf:"from",tag:"Noun",reason:"a-noun-inf"},{match:"(a|an) #Noun [#Infinitive]$",group:0,tag:"Noun",reason:"a-noun-inf2"},{match:"#Gerund #Adjective? for [#Infinitive]",group:0,tag:"Noun",reason:"running-for"},{match:"about [#Infinitive]",group:0,tag:"Singular",reason:"about-love"},{match:"#Plural on [#Infinitive]",group:0,tag:"Noun",reason:"on-stage"},{match:"any [#Infinitive]",group:0,tag:"Noun",reason:"any-charge"},{match:"no [#Infinitive]",group:0,tag:"Noun",reason:"no-doubt"},{match:"number of [#PresentTense]",group:0,tag:"Noun",reason:"number-of-x"},{match:"(taught|teaches|learns|learned) [#PresentTense]",group:0,tag:"Noun",reason:"teaches-x"},{match:"(try|use|attempt|build|make) [#Verb #Particle?]",notIf:"(#Copula|#Noun|sure|fun|up)",group:0,tag:"Noun",reason:"do-verb"},{match:"^[#Infinitive] (is|was)",group:0,tag:"Noun",reason:"checkmate-is"},{match:"#Infinitive much [#Infinitive]",group:0,tag:"Noun",reason:"get-much"},{match:"[cause] #Pronoun #Verb",group:0,tag:"Conjunction",reason:"cause-cuz"},{match:"the #Singular [#Infinitive] #Noun",group:0,tag:"Noun",notIf:"#Pronoun",reason:"cardio-dance"},{match:"#Determiner #Modal [#Noun]",group:0,tag:"PresentTense",reason:"should-smoke"},{match:"this [#Plural]",group:0,tag:"PresentTense",notIf:"(#Preposition|#Date)",reason:"this-verbs"},{match:"#Noun that [#Plural]",group:0,tag:"PresentTense",notIf:"(#Preposition|#Pronoun|way)",reason:"voice-that-rocks"},{match:"that [#Plural] to",group:0,tag:"PresentTense",notIf:"#Preposition",reason:"that-leads-to"},{match:"(let|make|made) (him|her|it|#Person|#Place|#Organization)+ [#Singular] (a|an|the|it)",group:0,tag:"Infinitive",reason:"let-him-glue"},{match:"#Verb (all|every|each|most|some|no) [#PresentTense]",notIf:"#Modal",group:0,tag:"Noun",reason:"all-presentTense"},{match:"(had|have|#PastTense) #Adjective [#PresentTense]",group:0,tag:"Noun",notIf:"better",reason:"adj-presentTense"},{match:"#Value #Adjective [#PresentTense]",group:0,tag:"Noun",notIf:"#Copula",reason:"one-big-reason"},{match:"#PastTense #Adjective+ [#PresentTense]",group:0,tag:"Noun",notIf:"(#Copula|better)",reason:"won-wide-support"},{match:"(many|few|several|couple) [#PresentTense]",group:0,tag:"Noun",notIf:"#Copula",reason:"many-poses"},{match:"#Determiner #Adverb #Adjective [%Noun|Verb%]",group:0,tag:"Noun",notIf:"#Copula",reason:"very-big-dream"},{match:"from #Noun to [%Noun|Verb%]",group:0,tag:"Noun",reason:"start-to-finish"},{match:"(for|with|of) #Noun (and|or|not) [%Noun|Verb%]",group:0,tag:"Noun",notIf:"#Pronoun",reason:"for-food-and-gas"},{match:"#Adjective #Adjective [#PresentTense]",group:0,tag:"Noun",notIf:"#Copula",reason:"adorable-little-store"},{match:"#Gerund #Adverb? #Comparative [#PresentTense]",group:0,tag:"Noun",notIf:"#Copula",reason:"higher-costs"},{match:"(#Noun && @hasComma) #Noun (and|or) [#PresentTense]",group:0,tag:"Noun",notIf:"#Copula",reason:"noun-list"},{match:"(many|any|some|several) [#PresentTense] for",group:0,tag:"Noun",reason:"any-verbs-for"},{match:"to #PresentTense #Noun [#PresentTense] #Preposition",group:0,tag:"Noun",reason:"gas-exchange"},{match:"#PastTense (until|as|through|without) [#PresentTense]",group:0,tag:"Noun",reason:"waited-until-release"},{match:"#Gerund like #Adjective? [#PresentTense]",group:0,tag:"Plural",reason:"like-hot-cakes"},{match:"some #Adjective [#PresentTense]",group:0,tag:"Noun",reason:"some-reason"},{match:"for some [#PresentTense]",group:0,tag:"Noun",reason:"for-some-reason"},{match:"(same|some|the|that|a) kind of [#PresentTense]",group:0,tag:"Noun",reason:"some-kind-of"},{match:"(same|some|the|that|a) type of [#PresentTense]",group:0,tag:"Noun",reason:"some-type-of"},{match:"#Gerund #Adjective #Preposition [#PresentTense]",group:0,tag:"Noun",reason:"doing-better-for-x"},{match:"(get|got|have) #Comparative [#PresentTense]",group:0,tag:"Noun",reason:"got-better-aim"},{match:"whose [#PresentTense] #Copula",group:0,tag:"Noun",reason:"whos-name-was"},{match:"#PhrasalVerb #Particle #Preposition [#PresentTense]",group:0,tag:"Noun",reason:"given-up-on-x"},{match:"there (are|were) #Adjective? [#PresentTense]",group:0,tag:"Plural",reason:"there-are"},{match:"#Value [#PresentTense] of",group:0,notIf:"(one|1|#Copula|#Infinitive)",tag:"Plural",reason:"2-trains"},{match:"[#PresentTense] (are|were) #Adjective",group:0,tag:"Plural",reason:"compromises-are-possible"},{match:"^[(hope|guess|thought|think)] #Pronoun #Verb",group:0,tag:"Infinitive",reason:"suppose-i"},{match:"#Possessive #Adjective [#Verb]",group:0,tag:"Noun",notIf:"#Copula",reason:"our-full-support"},{match:"[(tastes|smells)] #Adverb? #Adjective",group:0,tag:"PresentTense",reason:"tastes-good"},{match:"#Copula #Gerund [#PresentTense] !by?",group:0,tag:"Noun",notIf:"going",reason:"ignoring-commute"},{match:"#Determiner #Adjective? [(shed|thought|rose|bid|saw|spelt)]",group:0,tag:"Noun",reason:"noun-past"},{match:"how to [%Noun|Verb%]",group:0,tag:"Infinitive",reason:"how-to-noun"},{match:"which [%Noun|Verb%] #Noun",group:0,tag:"Infinitive",reason:"which-boost-it"},{match:"#Gerund [%Plural|Verb%]",group:0,tag:"Plural",reason:"asking-questions"},{match:"(ready|available|difficult|hard|easy|made|attempt|try) to [%Noun|Verb%]",group:0,tag:"Infinitive",reason:"ready-to-noun"},{match:"(bring|went|go|drive|run|bike) to [%Noun|Verb%]",group:0,tag:"Noun",reason:"bring-to-noun"},{match:"#Modal #Noun [%Noun|Verb%]",group:0,tag:"Infinitive",reason:"would-you-look"},{match:"#Copula just [#Infinitive]",group:0,tag:"Noun",reason:"is-just-spam"},{match:"^%Noun|Verb% %Plural|Verb%",tag:"Imperative #Plural",reason:"request-copies"},{match:"#Adjective #Plural and [%Plural|Verb%]",group:0,tag:"#Plural",reason:"pickles-and-drinks"},{match:"#Determiner #Year [#Verb]",group:0,tag:"Noun",reason:"the-1968-film"},{match:"#Determiner [#PhrasalVerb #Particle]",group:0,tag:"Noun",reason:"the-break-up"},{match:"#Determiner [%Adj|Noun%] #Noun",group:0,tag:"Adjective",notIf:"(#Pronoun|#Possessive|#ProperNoun)",reason:"the-individual-goals"},{match:"[%Noun|Verb%] or #Infinitive",group:0,tag:"Infinitive",reason:"work-or-prepare"},{match:"to #Infinitive [#PresentTense]",group:0,tag:"Noun",notIf:"(#Gerund|#Copula|help)",reason:"to-give-thanks"},{match:"[#Noun] me",group:0,tag:"Verb",reason:"kills-me"},{match:"%Plural|Verb% %Plural|Verb%",tag:"#PresentTense #Plural",reason:"removes-wrinkles"}],M5=[{match:"#Money and #Money #Currency?",tag:"Money",reason:"money-and-money"},{match:"#Value #Currency [and] #Value (cents|ore|centavos|sens)",group:0,tag:"money",reason:"and-5-cents"},{match:"#Value (mark|rand|won|rub|ore)",tag:"#Money #Currency",reason:"4-mark"},{match:"a pound",tag:"#Money #Unit",reason:"a-pound"},{match:"#Value (pound|pounds)",tag:"#Money #Unit",reason:"4-pounds"}],F5=[{match:"[(half|quarter)] of? (a|an)",group:0,tag:"Fraction",reason:"millionth"},{match:"#Adverb [half]",group:0,tag:"Fraction",reason:"nearly-half"},{match:"[half] the",group:0,tag:"Fraction",reason:"half-the"},{match:"#Cardinal and a half",tag:"Fraction",reason:"and-a-half"},{match:"#Value (halves|halfs|quarters)",tag:"Fraction",reason:"two-halves"},{match:"a #Ordinal",tag:"Fraction",reason:"a-quarter"},{match:"[#Cardinal+] (#Fraction && /s$/)",tag:"Fraction",reason:"seven-fifths"},{match:"[#Cardinal+ #Ordinal] of .",group:0,tag:"Fraction",reason:"ordinal-of"},{match:"[(#NumericValue && #Ordinal)] of .",group:0,tag:"Fraction",reason:"num-ordinal-of"},{match:"(a|one) #Cardinal?+ #Ordinal",tag:"Fraction",reason:"a-ordinal"},{match:"#Cardinal+ out? of every? #Cardinal",tag:"Fraction",reason:"out-of"}],P5=[{match:"#Cardinal [second]",tag:"Unit",reason:"one-second"},{match:"!once? [(a|an)] (#Duration|hundred|thousand|million|billion|trillion)",group:0,tag:"Value",reason:"a-is-one"},{match:"1 #Value #PhoneNumber",tag:"PhoneNumber",reason:"1-800-Value"},{match:"#NumericValue #PhoneNumber",tag:"PhoneNumber",reason:"(800) PhoneNumber"},{match:"#Demonym #Currency",tag:"Currency",reason:"demonym-currency"},{match:"#Value [(buck|bucks|grand)]",group:0,tag:"Currency",reason:"value-bucks"},{match:"[#Value+] #Currency",group:0,tag:"Money",reason:"15 usd"},{match:"[second] #Noun",group:0,tag:"Ordinal",reason:"second-noun"},{match:"#Value+ [#Currency]",group:0,tag:"Unit",reason:"5-yan"},{match:"#Value [(foot|feet)]",group:0,tag:"Unit",reason:"foot-unit"},{match:"#Value [#Abbreviation]",group:0,tag:"Unit",reason:"value-abbr"},{match:"#Value [k]",group:0,tag:"Unit",reason:"value-k"},{match:"#Unit an hour",tag:"Unit",reason:"unit-an-hour"},{match:"(minus|negative) #Value",tag:"Value",reason:"minus-value"},{match:"#Value (point|decimal) #Value",tag:"Value",reason:"value-point-value"},{match:"#Determiner [(half|quarter)] #Ordinal",group:0,tag:"Value",reason:"half-ordinal"},{match:"#Multiple+ and #Value",tag:"Value",reason:"magnitude-and-value"},{match:"#Value #Unit [(per|an) (hr|hour|sec|second|min|minute)]",group:0,tag:"Unit",reason:"12-miles-per-second"},{match:"#Value [(square|cubic)] #Unit",group:0,tag:"Unit",reason:"square-miles"}],k5=[{match:"#Copula [(#Noun|#PresentTense)] #LastName",group:0,tag:"FirstName",reason:"copula-noun-lastname"},{match:"(sister|pope|brother|father|aunt|uncle|grandpa|grandfather|grandma) #ProperNoun",tag:"Person",reason:"lady-titlecase",safe:!0},{match:"#FirstName [#Determiner #Noun] #LastName",group:0,tag:"Person",reason:"first-noun-last"},{match:"#ProperNoun (b|c|d|e|f|g|h|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z) #ProperNoun",tag:"Person",reason:"titlecase-acronym-titlecase",safe:!0},{match:"#Acronym #LastName",tag:"Person",reason:"acronym-lastname",safe:!0},{match:"#Person (jr|sr|md)",tag:"Person",reason:"person-honorific"},{match:"#Honorific #Acronym",tag:"Person",reason:"Honorific-TitleCase"},{match:"#Person #Person the? #RomanNumeral",tag:"Person",reason:"roman-numeral"},{match:"#FirstName [/^[^aiurck]$/]",group:0,tag:["Acronym","Person"],reason:"john-e"},{match:"#Noun van der? #Noun",tag:"Person",reason:"van der noun",safe:!0},{match:"(king|queen|prince|saint|lady) of #Noun",tag:"Person",reason:"king-of-noun",safe:!0},{match:"(prince|lady) #Place",tag:"Person",reason:"lady-place"},{match:"(king|queen|prince|saint) #ProperNoun",tag:"Person",notIf:"#Place",reason:"saint-foo"},{match:"al (#Person|#ProperNoun)",tag:"Person",reason:"al-borlen",safe:!0},{match:"#FirstName de #Noun",tag:"Person",reason:"bill-de-noun"},{match:"#FirstName (bin|al) #Noun",tag:"Person",reason:"bill-al-noun"},{match:"#FirstName #Acronym #ProperNoun",tag:"Person",reason:"bill-acronym-title"},{match:"#FirstName #FirstName #ProperNoun",tag:"Person",reason:"bill-firstname-title"},{match:"#Honorific #FirstName? #ProperNoun",tag:"Person",reason:"dr-john-Title"},{match:"#FirstName the #Adjective",tag:"Person",reason:"name-the-great"},{match:"#ProperNoun (van|al|bin) #ProperNoun",tag:"Person",reason:"title-van-title",safe:!0},{match:"#ProperNoun (de|du) la? #ProperNoun",tag:"Person",notIf:"#Place",reason:"title-de-title"},{match:"#Singular #Acronym #LastName",tag:"#FirstName #Person .",reason:"title-acro-noun",safe:!0},{match:"[#ProperNoun] #Person",group:0,tag:"Person",reason:"proper-person",safe:!0},{match:"#Person [#ProperNoun #ProperNoun]",group:0,tag:"Person",notIf:"#Possessive",reason:"three-name-person",safe:!0},{match:"#FirstName #Acronym? [#ProperNoun]",group:0,tag:"LastName",notIf:"#Possessive",reason:"firstname-titlecase"},{match:"#FirstName [#FirstName]",group:0,tag:"LastName",reason:"firstname-firstname"},{match:"#FirstName #Acronym #Noun",tag:"Person",reason:"n-acro-noun",safe:!0},{match:"#FirstName [(de|di|du|van|von)] #Person",group:0,tag:"LastName",reason:"de-firstname"},{match:"[(lieutenant|corporal|sergeant|captain|qeen|king|admiral|major|colonel|marshal|president|queen|king)+] #ProperNoun",group:0,tag:"Honorific",reason:"seargeant-john"},{match:"[(private|general|major|rear|prime|field|count|miss)] #Honorific? #Person",group:0,tag:["Honorific","Person"],reason:"ambg-honorifics"},{match:"#Honorific #FirstName [#Singular]",group:0,tag:"LastName",notIf:"#Possessive",reason:"dr-john-foo",safe:!0},{match:"[(his|her) (majesty|honour|worship|excellency|honorable)] #Person",group:0,tag:"Honorific",reason:"his-excellency"},{match:"#Honorific #Actor",tag:"Honorific",reason:"Lieutenant colonel"},{match:"(first|second|third|1st|2nd|3rd) #Actor",tag:"Honorific",reason:"first lady"},{match:"#Person #RomanNumeral",tag:"Person",reason:"louis-IV"}],O5=[{match:"#FirstName #Noun$",tag:". #LastName",notIf:"(#Possessive|#Organization|#Place|#Pronoun|@hasTitleCase)",reason:"firstname-noun"},{match:"%Person|Date% #Acronym? #ProperNoun",tag:"Person",reason:"jan-thierson"},{match:"%Person|Noun% #Acronym? #ProperNoun",tag:"Person",reason:"switch-person",safe:!0},{match:"%Person|Noun% #Organization",tag:"Organization",reason:"olive-garden"},{match:"%Person|Verb% #Acronym? #ProperNoun",tag:"Person",reason:"verb-propernoun",ifNo:"#Actor"},{match:"[%Person|Verb%] (will|had|has|said|says|told|did|learned|wants|wanted)",group:0,tag:"Person",reason:"person-said"},{match:"[%Person|Place%] (harbor|harbour|pier|town|city|place|dump|landfill)",group:0,tag:"Place",reason:"sydney-harbour"},{match:"(west|east|north|south) [%Person|Place%]",group:0,tag:"Place",reason:"east-sydney"},{match:"#Modal [%Person|Verb%]",group:0,tag:"Verb",reason:"would-mark"},{match:"#Adverb [%Person|Verb%]",group:0,tag:"Verb",reason:"really-mark"},{match:"[%Person|Verb%] (#Adverb|#Comparative)",group:0,tag:"Verb",reason:"drew-closer"},{match:"%Person|Verb% #Person",tag:"Person",reason:"rob-smith"},{match:"%Person|Verb% #Acronym #ProperNoun",tag:"Person",reason:"rob-a-smith"},{match:"[will] #Verb",group:0,tag:"Modal",reason:"will-verb"},{match:"(will && @isTitleCase) #ProperNoun",tag:"Person",reason:"will-name"},{match:"(#FirstName && !#Possessive) [#Singular] #Verb",group:0,safe:!0,tag:"LastName",reason:"jack-layton"},{match:"^[#Singular] #Person #Verb",group:0,safe:!0,tag:"Person",reason:"sherwood-anderson"},{match:"(a|an) [#Person]$",group:0,unTag:"Person",reason:"a-warhol"}],$5=[{match:"#Copula (pretty|dead|full|well|sure) (#Adjective|#Noun)",tag:"#Copula #Adverb #Adjective",reason:"sometimes-adverb"},{match:"(#Pronoun|#Person) (had|#Adverb)? [better] #PresentTense",group:0,tag:"Modal",reason:"i-better"},{match:"(#Modal|i|they|we|do) not? [like]",group:0,tag:"PresentTense",reason:"modal-like"},{match:"#Noun #Adverb? [left]",group:0,tag:"PastTense",reason:"left-verb"},{match:"will #Adverb? not? #Adverb? [be] #Gerund",group:0,tag:"Copula",reason:"will-be-copula"},{match:"will #Adverb? not? #Adverb? [be] #Adjective",group:0,tag:"Copula",reason:"be-copula"},{match:"[march] (up|down|back|toward)",notIf:"#Date",group:0,tag:"Infinitive",reason:"march-to"},{match:"#Modal [march]",group:0,tag:"Infinitive",reason:"must-march"},{match:"[may] be",group:0,tag:"Verb",reason:"may-be"},{match:"[(subject|subjects|subjected)] to",group:0,tag:"Verb",reason:"subject to"},{match:"[home] to",group:0,tag:"PresentTense",reason:"home to"},{match:"[open] #Determiner",group:0,tag:"Infinitive",reason:"open-the"},{match:"(were|was) being [#PresentTense]",group:0,tag:"PastTense",reason:"was-being"},{match:"(had|has|have) [been /en$/]",group:0,tag:"Auxiliary Participle",reason:"had-been-broken"},{match:"(had|has|have) [been /ed$/]",group:0,tag:"Auxiliary PastTense",reason:"had-been-smoked"},{match:"(had|has) #Adverb? [been] #Adverb? #PastTense",group:0,tag:"Auxiliary",reason:"had-been-adj"},{match:"(had|has) to [#Noun] (#Determiner|#Possessive)",group:0,tag:"Infinitive",reason:"had-to-noun"},{match:"have [#PresentTense]",group:0,tag:"PastTense",notIf:"(come|gotten)",reason:"have-read"},{match:"(does|will|#Modal) that [work]",group:0,tag:"PastTense",reason:"does-that-work"},{match:"[(sound|sounds)] #Adjective",group:0,tag:"PresentTense",reason:"sounds-fun"},{match:"[(look|looks)] #Adjective",group:0,tag:"PresentTense",reason:"looks-good"},{match:"[(start|starts|stop|stops|begin|begins)] #Gerund",group:0,tag:"Verb",reason:"starts-thinking"},{match:"(have|had) read",tag:"Modal #PastTense",reason:"read-read"},{match:"(is|was|were) [(under|over) #PastTense]",group:0,tag:"Adverb Adjective",reason:"was-under-cooked"},{match:"[shit] (#Determiner|#Possessive|them)",group:0,tag:"Verb",reason:"swear1-verb"},{match:"[damn] (#Determiner|#Possessive|them)",group:0,tag:"Verb",reason:"swear2-verb"},{match:"[fuck] (#Determiner|#Possessive|them)",group:0,tag:"Verb",reason:"swear3-verb"},{match:"#Plural that %Noun|Verb%",tag:". #Preposition #Infinitive",reason:"jobs-that-work"},{match:"[works] for me",group:0,tag:"PresentTense",reason:"works-for-me"},{match:"as #Pronoun [please]",group:0,tag:"Infinitive",reason:"as-we-please"},{match:"[(co|mis|de|inter|intra|pre|re|un|out|under|over|counter)] #Verb",group:0,tag:["Verb","Prefix"],notIf:"(#Copula|#PhrasalVerb)",reason:"co-write"},{match:"#PastTense and [%Adj|Past%]",group:0,tag:"PastTense",reason:"dressed-and-left"},{match:"[%Adj|Past%] and #PastTense",group:0,tag:"PastTense",reason:"dressed-and-left"},{match:"#Copula #Pronoun [%Adj|Past%]",group:0,tag:"Adjective",reason:"is-he-stoked"},{match:"to [%Noun|Verb%] #Preposition",group:0,tag:"Infinitive",reason:"to-dream-of"}],B5=[{match:"will (#Adverb|not)+? [have] (#Adverb|not)+? #Verb",group:0,tag:"Auxiliary",reason:"will-have-vb"},{match:"[#Copula] (#Adverb|not)+? (#Gerund|#PastTense)",group:0,tag:"Auxiliary",reason:"copula-walking"},{match:"[(#Modal|did)+] (#Adverb|not)+? #Verb",group:0,tag:"Auxiliary",reason:"modal-verb"},{match:"#Modal (#Adverb|not)+? [have] (#Adverb|not)+? [had] (#Adverb|not)+? #Verb",group:0,tag:"Auxiliary",reason:"would-have"},{match:"[(has|had)] (#Adverb|not)+? #PastTense",group:0,tag:"Auxiliary",reason:"had-walked"},{match:"[(do|does|did|will|have|had|has|got)] (not|#Adverb)+? #Verb",group:0,tag:"Auxiliary",reason:"have-had"},{match:"[about to] #Adverb? #Verb",group:0,tag:["Auxiliary","Verb"],reason:"about-to"},{match:"#Modal (#Adverb|not)+? [be] (#Adverb|not)+? #Verb",group:0,tag:"Auxiliary",reason:"would-be"},{match:"[(#Modal|had|has)] (#Adverb|not)+? [been] (#Adverb|not)+? #Verb",group:0,tag:"Auxiliary",reason:"had-been"},{match:"[(be|being|been)] #Participle",group:0,tag:"Auxiliary",reason:"being-driven"},{match:"[may] #Adverb? #Infinitive",group:0,tag:"Auxiliary",reason:"may-want"},{match:"#Copula (#Adverb|not)+? [(be|being|been)] #Adverb+? #PastTense",group:0,tag:"Auxiliary",reason:"being-walked"},{match:"will [be] #PastTense",group:0,tag:"Auxiliary",reason:"will-be-x"},{match:"[(be|been)] (#Adverb|not)+? #Gerund",group:0,tag:"Auxiliary",reason:"been-walking"},{match:"[used to] #PresentTense",group:0,tag:"Auxiliary",reason:"used-to-walk"},{match:"#Copula (#Adverb|not)+? [going to] #Adverb+? #PresentTense",group:0,tag:"Auxiliary",reason:"going-to-walk"},{match:"#Imperative [(me|him|her)]",group:0,tag:"Reflexive",reason:"tell-him"},{match:"(is|was) #Adverb? [no]",group:0,tag:"Negative",reason:"is-no"},{match:"[(been|had|became|came)] #PastTense",group:0,notIf:"#PhrasalVerb",tag:"Auxiliary",reason:"been-told"},{match:"[(being|having|getting)] #Verb",group:0,tag:"Auxiliary",reason:"being-born"},{match:"[be] #Gerund",group:0,tag:"Auxiliary",reason:"be-walking"},{match:"[better] #PresentTense",group:0,tag:"Modal",notIf:"(#Copula|#Gerund)",reason:"better-go"},{match:"even better",tag:"Adverb #Comparative",reason:"even-better"}],_5=[{match:"(#Verb && @hasHyphen) up",tag:"PhrasalVerb",reason:"foo-up"},{match:"(#Verb && @hasHyphen) off",tag:"PhrasalVerb",reason:"foo-off"},{match:"(#Verb && @hasHyphen) over",tag:"PhrasalVerb",reason:"foo-over"},{match:"(#Verb && @hasHyphen) out",tag:"PhrasalVerb",reason:"foo-out"},{match:"[#Verb (in|out|up|down|off|back)] (on|in)",notIf:"#Copula",tag:"PhrasalVerb Particle",reason:"walk-in-on"},{match:"(lived|went|crept|go) [on] for",group:0,tag:"PhrasalVerb",reason:"went-on"},{match:"#Verb (up|down|in|on|for)$",tag:"PhrasalVerb #Particle",notIf:"#PhrasalVerb",reason:"come-down$"},{match:"help [(stop|end|make|start)]",group:0,tag:"Infinitive",reason:"help-stop"},{match:"#PhrasalVerb (in && #Particle) #Determiner",tag:"#Verb #Preposition #Determiner",unTag:"PhrasalVerb",reason:"work-in-the"},{match:"[(stop|start|finish|help)] #Gerund",group:0,tag:"Infinitive",reason:"start-listening"},{match:"#Verb (him|her|it|us|himself|herself|itself|everything|something) [(up|down)]",group:0,tag:"Adverb",reason:"phrasal-pronoun-advb"}],Jc="(i|we|they)",I5=[{match:"^do not? [#Infinitive #Particle?]",notIf:Jc,group:0,tag:"Imperative",reason:"do-eat"},{match:"^please do? not? [#Infinitive #Particle?]",group:0,tag:"Imperative",reason:"please-go"},{match:"^just do? not? [#Infinitive #Particle?]",group:0,tag:"Imperative",reason:"just-go"},{match:"^[#Infinitive] it #Comparative",notIf:Jc,group:0,tag:"Imperative",reason:"do-it-better"},{match:"^[#Infinitive] it (please|now|again|plz)",notIf:Jc,group:0,tag:"Imperative",reason:"do-it-please"},{match:"^[#Infinitive] (#Adjective|#Adverb)$",group:0,tag:"Imperative",notIf:"(so|such|rather|enough)",reason:"go-quickly"},{match:"^[#Infinitive] (up|down|over) #Determiner",group:0,tag:"Imperative",reason:"turn-down"},{match:"^[#Infinitive] (your|my|the|a|an|any|each|every|some|more|with|on)",group:0,notIf:"like",tag:"Imperative",reason:"eat-my-shorts"},{match:"^[#Infinitive] (him|her|it|us|me|there)",group:0,tag:"Imperative",reason:"tell-him"},{match:"^[#Infinitive] #Adjective #Noun$",group:0,tag:"Imperative",reason:"avoid-loud-noises"},{match:"^[#Infinitive] (#Adjective|#Adverb)? and #Infinitive",group:0,tag:"Imperative",reason:"call-and-reserve"},{match:"^(go|stop|wait|hurry) please?$",tag:"Imperative",reason:"go"},{match:"^(somebody|everybody) [#Infinitive]",group:0,tag:"Imperative",reason:"somebody-call"},{match:"^let (us|me) [#Infinitive]",group:0,tag:"Imperative",reason:"lets-leave"},{match:"^[(shut|close|open|start|stop|end|keep)] #Determiner #Noun",group:0,tag:"Imperative",reason:"shut-the-door"},{match:"^[#PhrasalVerb #Particle] #Determiner #Noun",group:0,tag:"Imperative",reason:"turn-off-the-light"},{match:"^[go] to .",group:0,tag:"Imperative",reason:"go-to-toronto"},{match:"^#Modal you [#Infinitive]",group:0,tag:"Imperative",reason:"would-you-"},{match:"^never [#Infinitive]",group:0,tag:"Imperative",reason:"never-stop"},{match:"^come #Infinitive",tag:"Imperative",notIf:"on",reason:"come-have"},{match:"^come and? #Infinitive",tag:"Imperative . Imperative",notIf:"#PhrasalVerb",reason:"come-and-have"},{match:"^stay (out|away|back)",tag:"Imperative",reason:"stay-away"},{match:"^[(stay|be|keep)] #Adjective",group:0,tag:"Imperative",reason:"stay-cool"},{match:"^[keep it] #Adjective",group:0,tag:"Imperative",reason:"keep-it-cool"},{match:"^do not [#Infinitive]",group:0,tag:"Imperative",reason:"do-not-be"},{match:"[#Infinitive] (yourself|yourselves)",group:0,tag:"Imperative",reason:"allow-yourself"},{match:"[#Infinitive] what .",group:0,tag:"Imperative",reason:"look-what"},{match:"^[#Infinitive] #Gerund",group:0,tag:"Imperative",reason:"keep-playing"},{match:"^[#Infinitive] (to|for|into|toward|here|there)",group:0,tag:"Imperative",reason:"go-to"},{match:"^[#Infinitive] (and|or) #Infinitive",group:0,tag:"Imperative",reason:"inf-and-inf"},{match:"^[%Noun|Verb%] to",group:0,tag:"Imperative",reason:"commit-to"},{match:"^[#Infinitive] #Adjective? #Singular #Singular",group:0,tag:"Imperative",reason:"maintain-eye-contact"},{match:"do not (forget|omit|neglect) to [#Infinitive]",group:0,tag:"Imperative",reason:"do-not-forget"},{match:"^[(ask|wear|pay|look|help|show|watch|act|fix|kill|stop|start|turn|try|win)] #Noun",group:0,tag:"Imperative",reason:"pay-attention"}],z5=[{match:"(that|which) were [%Adj|Gerund%]",group:0,tag:"Gerund",reason:"that-were-growing"},{match:"#Gerund [#Gerund] #Plural",group:0,tag:"Adjective",reason:"hard-working-fam"}],j5=[{match:"(got|were|was|is|are|am) (#PastTense|#Participle)",tag:"Passive",reason:"got-walked"},{match:"(was|were|is|are|am) being (#PastTense|#Participle)",tag:"Passive",reason:"was-being"},{match:"(had|have|has) been (#PastTense|#Participle)",tag:"Passive",reason:"had-been"},{match:"will be being? (#PastTense|#Participle)",tag:"Passive",reason:"will-be-cleaned"},{match:"#Noun [(#PastTense|#Participle)] by (the|a) #Noun",group:0,tag:"Passive",reason:"suffered-by"}];let q5=[{match:"u r",tag:"#Pronoun #Copula",reason:"u r"},{match:"#Noun [(who|whom)]",group:0,tag:"Determiner",reason:"captain-who"},{match:"[had] #Noun+ #PastTense",group:0,tag:"Condition",reason:"had-he"},{match:"[were] #Noun+ to #Infinitive",group:0,tag:"Condition",reason:"were-he"},{match:"some sort of",tag:"Adjective Noun Conjunction",reason:"some-sort-of"},{match:"of some sort",tag:"Conjunction Adjective Noun",reason:"of-some-sort"},{match:"[such] (a|an|is)? #Noun",group:0,tag:"Determiner",reason:"such-skill"},{match:"[right] (before|after|in|into|to|toward)",group:0,tag:"#Adverb",reason:"right-into"},{match:"#Preposition [about]",group:0,tag:"Adjective",reason:"at-about"},{match:"(are|#Modal|see|do|for) [ya]",group:0,tag:"Pronoun",reason:"are-ya"},{match:"[long live] .",group:0,tag:"#Adjective #Infinitive",reason:"long-live"},{match:"[plenty] of",group:0,tag:"#Uncountable",reason:"plenty-of"},{match:"(always|nearly|barely|practically) [there]",group:0,tag:"Adjective",reason:"always-there"},{match:"[there] (#Adverb|#Pronoun)? #Copula",group:0,tag:"There",reason:"there-is"},{match:"#Copula [there] .",group:0,tag:"There",reason:"is-there"},{match:"#Modal #Adverb? [there]",group:0,tag:"There",reason:"should-there"},{match:"^[do] (you|we|they)",group:0,tag:"QuestionWord",reason:"do-you"},{match:"^[does] (he|she|it|#ProperNoun)",group:0,tag:"QuestionWord",reason:"does-he"},{match:"#Determiner #Noun+ [who] #Verb",group:0,tag:"Preposition",reason:"the-x-who"},{match:"#Determiner #Noun+ [which] #Verb",group:0,tag:"Preposition",reason:"the-x-which"},{match:"a [while]",group:0,tag:"Noun",reason:"a-while"},{match:"guess who",tag:"#Infinitive #QuestionWord",reason:"guess-who"},{match:"[fucking] !#Verb",group:0,tag:"#Gerund",reason:"f-as-gerund"}];const R5=[{match:"university of #Place",tag:"Organization",reason:"university-of-Foo"},{match:"#Noun (&|n) #Noun",tag:"Organization",reason:"Noun-&-Noun"},{match:"#Organization of the? #ProperNoun",tag:"Organization",reason:"org-of-place",safe:!0},{match:"#Organization #Country",tag:"Organization",reason:"org-country"},{match:"#ProperNoun #Organization",tag:"Organization",notIf:"#FirstName",reason:"titlecase-org"},{match:"#ProperNoun (ltd|co|inc|dept|assn|bros)",tag:"Organization",reason:"org-abbrv"},{match:"the [#Acronym]",group:0,tag:"Organization",reason:"the-acronym",safe:!0},{match:"government of the? [#Place+]",tag:"Organization",reason:"government-of-x"},{match:"(health|school|commerce) board",tag:"Organization",reason:"school-board"},{match:"(nominating|special|conference|executive|steering|central|congressional) committee",tag:"Organization",reason:"special-comittee"},{match:"(world|global|international|national|#Demonym) #Organization",tag:"Organization",reason:"global-org"},{match:"#Noun+ (public|private) school",tag:"School",reason:"noun-public-school"},{match:"#Place+ #SportsTeam",tag:"SportsTeam",reason:"place-sportsteam"},{match:"(dc|atlanta|minnesota|manchester|newcastle|sheffield) united",tag:"SportsTeam",reason:"united-sportsteam"},{match:"#Place+ fc",tag:"SportsTeam",reason:"fc-sportsteam"},{match:"#Place+ #Noun{0,2} (club|society|group|team|committee|commission|association|guild|crew)",tag:"Organization",reason:"place-noun-society"}],L5=[{match:"(west|north|south|east|western|northern|southern|eastern)+ #Place",tag:"Region",reason:"west-norfolk"},{match:"#City [(al|ak|az|ar|ca|ct|dc|fl|ga|id|il|nv|nh|nj|ny|oh|pa|sc|tn|tx|ut|vt|pr)]",group:0,tag:"Region",reason:"us-state"},{match:"portland [or]",group:0,tag:"Region",reason:"portland-or"},{match:"#ProperNoun+ (cliff|place|range|pit|place|point|room|grounds|ruins)",tag:"Place",reason:"foo-point"},{match:"in [#ProperNoun] #Place",group:0,tag:"Place",reason:"propernoun-place"},{match:"#Value #Noun (st|street|rd|road|crescent|cr|way|tr|terrace|avenue|ave)",tag:"Address",reason:"address-st"},{match:"(port|mount|mt) #ProperName",tag:"Place",reason:"port-name"}],H5=[{match:"[so] #Noun",group:0,tag:"Conjunction",reason:"so-conj"},{match:"[(who|what|where|why|how|when)] #Noun #Copula #Adverb? (#Verb|#Adjective)",group:0,tag:"Conjunction",reason:"how-he-is-x"},{match:"#Copula [(who|what|where|why|how|when)] #Noun",group:0,tag:"Conjunction",reason:"when-he"},{match:"#Verb [that] #Pronoun",group:0,tag:"Conjunction",reason:"said-that-he"},{match:"#Noun [that] #Copula",group:0,tag:"Conjunction",reason:"that-are"},{match:"#Noun [that] #Verb #Adjective",group:0,tag:"Conjunction",reason:"that-seem"},{match:"#Noun #Copula not? [that] #Adjective",group:0,tag:"Adverb",reason:"that-adj"},{match:"#Verb #Adverb? #Noun [(that|which)]",group:0,tag:"Preposition",reason:"that-prep"},{match:"@hasComma [which] (#Pronoun|#Verb)",group:0,tag:"Preposition",reason:"which-copula"},{match:"#Noun [like] #Noun",group:0,tag:"Preposition",reason:"noun-like"},{match:"^[like] #Determiner",group:0,tag:"Preposition",reason:"like-the"},{match:"a #Noun [like] (#Noun|#Determiner)",group:0,tag:"Preposition",reason:"a-noun-like"},{match:"#Adverb [like]",group:0,tag:"Verb",reason:"really-like"},{match:"(not|nothing|never) [like]",group:0,tag:"Preposition",reason:"nothing-like"},{match:"#Infinitive #Pronoun [like]",group:0,tag:"Preposition",reason:"treat-them-like"},{match:"[#QuestionWord] (#Pronoun|#Determiner)",group:0,tag:"Preposition",reason:"how-he"},{match:"[#QuestionWord] #Participle",group:0,tag:"Preposition",reason:"when-stolen"},{match:"[how] (#Determiner|#Copula|#Modal|#PastTense)",group:0,tag:"QuestionWord",reason:"how-is"},{match:"#Plural [(who|which|when)] .",group:0,tag:"Preposition",reason:"people-who"}],G5=[{match:"holy (shit|fuck|hell)",tag:"Expression",reason:"swears-expression"},{match:"^[(well|so|okay|now)] !#Adjective?",group:0,tag:"Expression",reason:"well-"},{match:"^come on",tag:"Expression",reason:"come-on"},{match:"(say|says|said) [sorry]",group:0,tag:"Expression",reason:"say-sorry"},{match:"^(ok|alright|shoot|hell|anyways)",tag:"Expression",reason:"ok-"},{match:"^(say && @hasComma)",tag:"Expression",reason:"say-"},{match:"^(like && @hasComma)",tag:"Expression",reason:"like-"},{match:"^[(dude|man|girl)] #Pronoun",group:0,tag:"Expression",reason:"dude-i"}];let V5=[].concat(j5,g5,y5,b5,w5,D5,A5,N5,E5,S5,T5,M5,F5,P5,k5,O5,$5,x5,B5,_5,I5,z5,q5,R5,L5,H5,G5);const U5={two:{matches:V5}};let Kc=null;const W5=function(e){const{world:t}=e,{model:r,methods:n}=t;Kc=Kc||n.one.buildNet(r.two.matches,t);let i=n.two.quickSplit(e.document).map(s=>{let u=s[0];return[u.index[0],u.index[1],u.index[1]+s.length]}),o=e.update(i);return o.cache(),o.sweep(Kc),e.uncache(),e.unfreeze(),e},J5=e=>e.compute(["freeze","lexicon","preTagger","postTagger","unfreeze"]),K5={postTagger:W5,tagger:J5},Y5=e=>Math.round(e*100)/100;function Z5(e){e.prototype.confidence=function(){let t=0,r=0;return this.docs.forEach(n=>{n.forEach(a=>{r+=1,t+=a.confidence||1})}),r===0?1:Y5(t/r)},e.prototype.tagger=function(){return this.compute(["tagger"])}}const Q5={api:Z5,compute:K5,model:U5,hooks:["postTagger"]},X5=function(e){return Object.keys(e.hooks).filter(t=>!t.startsWith("#")&&!t.startsWith("%"))},eP=function(e,t){let r=X5(t);if(r.length===0)return e;e._cache||e.cache();let n=e._cache;return e.filter((a,i)=>r.some(o=>n[i].has(o)))},tP=function(e,t){let r=t;typeof t=="string"&&(r=this.buildNet([{match:t}]));let n=this.tokenize(e),a=eP(n,r);return a.found?(a.compute(["index","tagger"]),a.match(t)):n.none()},rP={lib:{lazy:tP}},nP=function(e,t){const r=e.methods.two.transform.verb.conjugate;let n=r(t,e.model);return e.has("#Gerund")?n.Gerund:e.has("#PastTense")?n.PastTense:e.has("#PresentTense")?n.PresentTense:e.has("#Gerund")?n.Gerund:t},aP=function(e,t){let r=t;return e.forEach(n=>{n.has("#Infinitive")||(r=nP(n,t)),n.replaceWith(r)}),e},iP=function(e,t){let r=t;if(e.has("#Plural")){const n=e.methods.two.transform.noun.toPlural;r=n(t,e.model)}e.replaceWith(r,{possessives:!0})},oP=function(e,t){const{toAdverb:r}=e.methods.two.transform.adjective;let a=r(t);a&&e.replaceWith(a)},sP=function(e,t){const{toComparative:r,toSuperlative:n}=e.methods.two.transform.adjective;let a=t;e.has("#Comparative")?a=r(a,e.model):e.has("#Superlative")&&(a=n(a,e.model)),a&&e.replaceWith(a)},uP=function(e,t,r){let n=e.split(/ /g).map(i=>i.toLowerCase().trim());n=n.filter(i=>i),n=n.map(i=>`{${i}}`).join(" ");let a=this.match(n);return r&&(a=a.if(r)),a.has("#Verb")?aP(a,t):a.has("#Noun")?iP(a,t):a.has("#Adverb")?oP(a,t):a.has("#Adjective")?sP(a,t):this},lP=function(e){e.prototype.swap=uP},cP={api:lP};tt.plugin(jF);tt.plugin(p5);tt.plugin(Q5);tt.plugin(rP);tt.plugin(cP);const mo=function(e){const{fromComparative:t,fromSuperlative:r}=e.methods.two.transform.adjective;let n=e.text("normal");return e.has("#Comparative")?t(n,e.model):e.has("#Superlative")?r(n,e.model):n},fP=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Adjectives"}json(n={}){const{toAdverb:a,toNoun:i,toSuperlative:o,toComparative:s}=this.methods.two.transform.adjective;return n.normal=!0,this.map(u=>{let l=u.toView().json(n)[0]||{},c=mo(u);return l.adjective={adverb:a(c,this.model),noun:i(c,this.model),superlative:o(c,this.model),comparative:s(c,this.model)},l},[])}adverbs(){return this.before("#Adverb+$").concat(this.after("^#Adverb+"))}conjugate(n){const{toComparative:a,toSuperlative:i,toNoun:o,toAdverb:s}=this.methods.two.transform.adjective;return this.getNth(n).map(u=>{let l=mo(u);return{Adjective:l,Comparative:a(l,this.model),Superlative:i(l,this.model),Noun:o(l,this.model),Adverb:s(l,this.model)}},[])}toComparative(n){const{toComparative:a}=this.methods.two.transform.adjective;return this.getNth(n).map(i=>{let o=mo(i),s=a(o,this.model);return i.replaceWith(s)})}toSuperlative(n){const{toSuperlative:a}=this.methods.two.transform.adjective;return this.getNth(n).map(i=>{let o=mo(i),s=a(o,this.model);return i.replaceWith(s)})}toAdverb(n){const{toAdverb:a}=this.methods.two.transform.adjective;return this.getNth(n).map(i=>{let o=mo(i),s=a(o,this.model);return i.replaceWith(s)})}toNoun(n){const{toNoun:a}=this.methods.two.transform.adjective;return this.getNth(n).map(i=>{let o=mo(i),s=a(o,this.model);return i.replaceWith(s)})}}e.prototype.adjectives=function(r){let n=this.match("#Adjective");return n=n.getNth(r),new t(n.document,n.pointer)},e.prototype.superlatives=function(r){let n=this.match("#Superlative");return n=n.getNth(r),new t(n.document,n.pointer)},e.prototype.comparatives=function(r){let n=this.match("#Comparative");return n=n.getNth(r),new t(n.document,n.pointer)}},mP={api:fP},dP=function(e){return e.compute("root").text("root")},hP=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Adverbs"}conjugate(n){return this.getNth(n).map(a=>{let i=dP(a);return{Adverb:a.text("normal"),Adjective:i}},[])}json(n={}){const a=this.methods.two.transform.adjective.fromAdverb;return n.normal=!0,this.map(i=>{let o=i.toView().json(n)[0]||{};return o.adverb={adjective:a(o.normal)},o},[])}}e.prototype.adverbs=function(r){let n=this.match("#Adverb");return n=n.getNth(r),new t(n.document,n.pointer)}},pP={api:hP},gP=function(e){let t=e.match("@hasComma");return t=t.filter(r=>{if(r.growLeft(".").wordCount()===1||r.growRight(". .").wordCount()===1)return!1;let n=r.grow(".");return n=n.ifNo("@hasComma @hasComma"),n=n.ifNo("@hasComma (and|or) ."),n=n.ifNo("(#City && @hasComma) #Country"),n=n.ifNo("(#WeekDay && @hasComma) #Date"),n=n.ifNo("(#Date+ && @hasComma) #Value"),n=n.ifNo("(#Adjective && @hasComma) #Adjective"),n.found}),e.splitAfter(t)},vP=function(e){let t=e.parentheses();return t=t.filter(r=>r.wordCount()>=3&&r.has("#Verb")&&r.has("#Noun")),e.splitOn(t)},yP=function(e){let t=e.quotations();return t=t.filter(r=>r.wordCount()>=3&&r.has("#Verb")&&r.has("#Noun")),e.splitOn(t)},bP=function(e){let t=this;t=vP(t),t=yP(t),t=gP(t),t=t.splitAfter("(@hasEllipses|@hasSemicolon|@hasDash|@hasColon)"),t=t.splitAfter("^#Pronoun (said|says)"),t=t.splitBefore("(said|says) #ProperNoun$"),t=t.splitBefore(". . if .{4}"),t=t.splitBefore("and while"),t=t.splitBefore("now that"),t=t.splitBefore("ever since"),t=t.splitBefore("(supposing|although)"),t=t.splitBefore("even (while|if|though)"),t=t.splitBefore("(whereas|whose)"),t=t.splitBefore("as (though|if)"),t=t.splitBefore("(til|until)");let r=t.match("#Verb .* [but] .* #Verb",0);r.found&&(t=t.splitBefore(r));let n=t.if("if .{2,9} then .").match("then");return t=t.splitBefore(n),typeof e=="number"&&(t=t.get(e)),t},wP=function(e){let t=[],r=null;return e.clauses().docs.forEach(i=>{i.forEach(o=>{!o.chunk||o.chunk!==r?(r=o.chunk,t.push([o.index[0],o.index[1],o.index[1]+1])):t[t.length-1][2]=o.index[1]+1}),r=null}),e.update(t)},xP=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Chunks"}isVerb(){return this.filter(n=>n.has("<Verb>"))}isNoun(){return this.filter(n=>n.has("<Noun>"))}isAdjective(){return this.filter(n=>n.has("<Adjective>"))}isPivot(){return this.filter(n=>n.has("<Pivot>"))}debug(){return this.toView().debug("chunks"),this}update(n){let a=new t(this.document,n);return a._cache=this._cache,a}}e.prototype.chunks=function(r){let n=wP(this);return n=n.getNth(r),new t(this.document,n.pointer)},e.prototype.clauses=bP},Op={this:"Noun",then:"Pivot"},DP=function(e){for(let t=0;t<e.length;t+=1)for(let r=0;r<e[t].length;r+=1){let n=e[t][r];if(Op.hasOwnProperty(n.normal)===!0){n.chunk=Op[n.normal];continue}if(n.tags.has("Verb")){n.chunk="Verb";continue}if(n.tags.has("Noun")||n.tags.has("Determiner")){n.chunk="Noun";continue}if(n.tags.has("Value")){n.chunk="Noun";continue}if(n.tags.has("QuestionWord")){n.chunk="Pivot";continue}}},NP=function(e){for(let t=0;t<e.length;t+=1)for(let r=0;r<e[t].length;r+=1){let n=e[t][r];if(n.chunk)continue;let a=e[t][r+1],i=e[t][r-1];if(n.tags.has("Adjective")){if(i&&i.tags.has("Copula")){n.chunk="Adjective";continue}if(i&&i.tags.has("Determiner")){n.chunk="Noun";continue}if(a&&a.tags.has("Noun")){n.chunk="Noun";continue}continue}if(n.tags.has("Adverb")||n.tags.has("Negative")){if(i&&i.tags.has("Adjective")){n.chunk="Adjective";continue}if(i&&i.tags.has("Verb")){n.chunk="Verb";continue}if(a&&a.tags.has("Adjective")){n.chunk="Adjective";continue}if(a&&a.tags.has("Verb")){n.chunk="Verb";continue}}}},AP=[{match:"[that] #Determiner #Noun",group:0,chunk:"Pivot"},{match:"#PastTense [that]",group:0,chunk:"Pivot"},{match:"[so] #Determiner",group:0,chunk:"Pivot"},{match:"#Copula #Adverb+? [#Adjective]",group:0,chunk:"Adjective"},{match:"#Adjective and #Adjective",chunk:"Adjective"},{match:"#Adverb+ and #Adverb #Verb",chunk:"Verb"},{match:"#Gerund #Adjective$",chunk:"Verb"},{match:"#Gerund to #Verb",chunk:"Verb"},{match:"#PresentTense and #PresentTense",chunk:"Verb"},{match:"#Adverb #Negative",chunk:"Verb"},{match:"(want|wants|wanted) to #Infinitive",chunk:"Verb"},{match:"#Verb #Reflexive",chunk:"Verb"},{match:"#Verb [to] #Adverb? #Infinitive",group:0,chunk:"Verb"},{match:"[#Preposition] #Gerund",group:0,chunk:"Verb"},{match:"#Infinitive [that] <Noun>",group:0,chunk:"Verb"},{match:"#Noun of #Determiner? #Noun",chunk:"Noun"},{match:"#Value+ #Adverb? #Adjective",chunk:"Noun"},{match:"the [#Adjective] #Noun",chunk:"Noun"},{match:"#Singular in #Determiner? #Singular",chunk:"Noun"},{match:"#Plural [in] #Determiner? #Noun",group:0,chunk:"Pivot"},{match:"#Noun and #Determiner? #Noun",notIf:"(#Possessive|#Pronoun)",chunk:"Noun"}];let Yc=null;const CP=function(e,t,r){const{methods:n}=r;Yc=Yc||n.one.buildNet(AP,r),e.sweep(Yc)},Zc=function(e,t){if((typeof process>"u"||!process.env?self.env||{}:process.env).DEBUG_CHUNKS){let n=(e.normal+"'").padEnd(8);console.log(` | '${n} → \x1B[34m${t.padEnd(12)}\x1B[0m \x1B[2m -fallback- \x1B[0m`)}e.chunk=t},EP=function(e){for(let t=0;t<e.length;t+=1)for(let r=0;r<e[t].length;r+=1){let n=e[t][r];n.chunk===void 0&&(n.tags.has("Conjunction")||n.tags.has("Preposition")?Zc(n,"Pivot"):n.tags.has("Adverb")?Zc(n,"Verb"):n.chunk="Noun")}},SP=function(e){let t=[],r=null;e.forEach(n=>{for(let a=0;a<n.length;a+=1){let i=n[a];r&&i.chunk===r?t[t.length-1].terms.push(i):(t.push({chunk:i.chunk,terms:[i]}),r=i.chunk)}}),t.forEach(n=>{n.chunk==="Verb"&&(n.terms.find(i=>i.tags.has("Verb"))||n.terms.forEach(i=>i.chunk=null))})},TP=function(e){const{document:t,world:r}=e;DP(t),NP(t),CP(e,t,r),EP(t),SP(t)},MP={chunks:TP},FP={compute:MP,api:xP,hooks:["chunks"]},Cu=/\./g,PP=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Acronyms"}strip(){return this.docs.forEach(n=>{n.forEach(a=>{a.text=a.text.replace(Cu,""),a.normal=a.normal.replace(Cu,"")})}),this}addPeriods(){return this.docs.forEach(n=>{n.forEach(a=>{a.text=a.text.replace(Cu,""),a.normal=a.normal.replace(Cu,""),a.text=a.text.split("").join(".")+".",a.normal=a.normal.split("").join(".")+"."})}),this}}e.prototype.acronyms=function(r){let n=this.match("#Acronym");return n=n.getNth(r),new t(n.document,n.pointer)}},Mw=/\(/,Fw=/\)/,kP=function(e,t){for(;t<e.length;t+=1)if(e[t].post&&Fw.test(e[t].post)){let[,r]=e[t].index;return r=r||0,r}return null},OP=function(e){let t=[];return e.docs.forEach(r=>{for(let n=0;n<r.length;n+=1){let a=r[n];if(a.pre&&Mw.test(a.pre)){let i=kP(r,n);if(i!==null){let[o,s]=r[n].index;t.push([o,s,i+1,r[n].id]),n=i}}}}),e.update(t)},$P=function(e){return e.docs.forEach(t=>{t[0].pre=t[0].pre.replace(Mw,"");let r=t[t.length-1];r.post=r.post.replace(Fw,"")}),e},BP=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Possessives"}strip(){return $P(this)}}e.prototype.parentheses=function(r){let n=OP(this);return n=n.getNth(r),new t(n.document,n.pointer)}},$p=/'s$/,_P=function(e){let t=e.match("#Possessive+");return t.has("#Person")&&(t=t.growLeft("#Person+")),t.has("#Place")&&(t=t.growLeft("#Place+")),t.has("#Organization")&&(t=t.growLeft("#Organization+")),t},IP=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Possessives"}strip(){return this.docs.forEach(n=>{n.forEach(a=>{a.text=a.text.replace($p,""),a.normal=a.normal.replace($p,"")})}),this}}e.prototype.possessives=function(r){let n=_P(this);return n=n.getNth(r),new t(n.document,n.pointer)}},Fl={'"':'"',""":""","'":"'","“":"”","‘":"’","‟":"”","‛":"’","„":"”","⹂":"”","‚":"’","«":"»","‹":"›","‵":"′","‶":"″","‷":"‴","〝":"〞","`":"´","〟":"〞"},sd=RegExp("["+Object.keys(Fl).join("")+"]"),zP=RegExp("["+Object.values(Fl).join("")+"]"),jP=function(e,t){const r=e[t].pre.match(sd)[0]||"";if(!r||!Fl[r])return null;const n=Fl[r];for(;t<e.length;t+=1)if(e[t].post&&e[t].post.match(n))return t;return null},qP=function(e){let t=[];return e.docs.forEach(r=>{for(let n=0;n<r.length;n+=1){let a=r[n];if(a.pre&&sd.test(a.pre)){let i=jP(r,n);if(i!==null){let[o,s]=r[n].index;t.push([o,s,i+1,r[n].id]),n=i}}}}),e.update(t)},RP=function(e){e.docs.forEach(t=>{t[0].pre=t[0].pre.replace(sd,"");let r=t[t.length-1];r.post=r.post.replace(zP,"")})},LP=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Possessives"}strip(){return RP(this)}}e.prototype.quotations=function(r){let n=qP(this);return n=n.getNth(r),new t(n.document,n.pointer)}},HP=function(e){let t=this.splitAfter("@hasComma");return t=t.match("#PhoneNumber+"),t=t.getNth(e),t},GP=[["hyphenated","@hasHyphen ."],["hashTags","#HashTag"],["emails","#Email"],["emoji","#Emoji"],["emoticons","#Emoticon"],["atMentions","#AtMention"],["urls","#Url"],["conjunctions","#Conjunction"],["prepositions","#Preposition"],["abbreviations","#Abbreviation"],["honorifics","#Honorific"]];let VP=[["emojis","emoji"],["atmentions","atMentions"]];const UP=function(e){GP.forEach(t=>{e.prototype[t[0]]=function(r){let n=this.match(t[1]);return typeof r=="number"?n.get(r):n}}),e.prototype.phoneNumbers=HP,VP.forEach(t=>{e.prototype[t[0]]=e.prototype[t[1]]})},WP=/\//,JP=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Slashes"}split(){return this.map(n=>{let i=n.text().split(WP);return n=n.replaceWith(i.join(" ")),n.growRight("("+i.join("|")+")+")})}}e.prototype.slashes=function(r){let n=this.match("#SlashedTerm");return n=n.getNth(r),new t(n.document,n.pointer)}},KP={api:function(e){PP(e),BP(e),IP(e),LP(e),UP(e),JP(e)}},Eu=function(e,t){e.docs.forEach(r=>{r.forEach(t)})},Bp={case:e=>{Eu(e,t=>{t.text=t.text.toLowerCase()})},unicode:e=>{const t=e.world,r=t.methods.one.killUnicode;Eu(e,n=>n.text=r(n.text,t))},whitespace:e=>{Eu(e,t=>{t.post=t.post.replace(/\s+/g," "),t.post=t.post.replace(/\s([.,?!:;])/g,"$1"),t.pre=t.pre.replace(/\s+/g,"")})},punctuation:e=>{Eu(e,n=>{n.post=n.post.replace(/[–—-]/g," "),n.post=n.post.replace(/[,:;]/g,""),n.post=n.post.replace(/\.{2,}/g,""),n.post=n.post.replace(/\?{2,}/g,"?"),n.post=n.post.replace(/!{2,}/g,"!"),n.post=n.post.replace(/\?!+/g,"?")});let t=e.docs,r=t[t.length-1];if(r&&r.length>0){let n=r[r.length-1];n.post=n.post.replace(/ /g,"")}},contractions:e=>{e.contractions().expand()},acronyms:e=>{e.acronyms().strip()},parentheses:e=>{e.parentheses().strip()},possessives:e=>{e.possessives().strip()},quotations:e=>{e.quotations().strip()},emoji:e=>{e.emojis().remove()},honorifics:e=>{e.match("#Honorific+ #Person").honorifics().remove()},adverbs:e=>{e.adverbs().remove()},nouns:e=>{e.nouns().toSingular()},verbs:e=>{e.verbs().toInfinitive()},numbers:e=>{e.numbers().toNumber()},debullet:e=>{const t=/^\s*([-–—*•])\s*$/;return e.docs.forEach(r=>{t.test(r[0].pre)&&(r[0].pre=r[0].pre.replace(t,""))}),e}},Qc=e=>e.split("|").reduce((t,r)=>(t[r]=!0,t),{}),Xc="unicode|punctuation|whitespace|acronyms",_p="|case|contractions|parentheses|quotations|emoji|honorifics|debullet",YP="|possessives|adverbs|nouns|verbs",ZP={light:Qc(Xc),medium:Qc(Xc+_p),heavy:Qc(Xc+_p+YP)};function QP(e){e.prototype.normalize=function(t="light"){return typeof t=="string"&&(t=ZP[t]),Object.keys(t).forEach(r=>{Bp.hasOwnProperty(r)&&Bp[r](this,t[r])}),this}}const XP={api:QP},ek=function(e){let t=e.clauses().match("<Noun>"),r=t.match("@hasComma");return r=r.not("#Place"),r.found&&(t=t.splitAfter(r)),t=t.splitOn("#Expression"),t=t.splitOn("(he|she|we|you|they|i)"),t=t.splitOn("(#Noun|#Adjective) [(he|him|she|it)]",0),t=t.splitOn("[(he|him|she|it)] (#Determiner|#Value)",0),t=t.splitBefore("#Noun [(the|a|an)] #Adjective? #Noun",0),t=t.splitOn("[(here|there)] #Noun",0),t=t.splitOn("[#Noun] (here|there)",0),t=t.splitBefore("(our|my|their|your)"),t=t.splitOn("#Noun [#Determiner]",0),t=t.if("#Noun"),t},Ip=["after","although","as if","as long as","as","because","before","even if","even though","ever since","if","in order that","provided that","since","so that","than","that","though","unless","until","what","whatever","when","whenever","where","whereas","wherever","whether","which","whichever","who","whoever","whom","whomever","whose"],tk=function(e){if(e.before("#Preposition$").found)return!0;if(!e.before().found)return!1;for(let r=0;r<Ip.length;r+=1)if(e.has(Ip[r]))return!0;return!1},rk="(#Pronoun|#Place|#Value|#Person|#Uncountable|#Month|#WeekDay|#Holiday|#Possessive)",nk=function(e,t){if(e.has("#Plural")||e.has("#Noun and #Noun")||e.has("(we|they)"))return!0;if(t.has(rk)===!0||e.has("#Singular"))return!1;let r=t.text("normal");return r.length>3&&r.endsWith("s")&&!r.endsWith("ss")},ak=function(e){let t=e.clone();return t=t.match("#Noun+"),t=t.remove("(#Adjective|#Preposition|#Determiner|#Value)"),t=t.not("#Possessive"),t=t.first(),t.found?t:e},Wa=function(e){let t=ak(e);return{determiner:e.match("#Determiner").eq(0),adjectives:e.match("#Adjective"),number:e.values(),isPlural:nk(e,t),isSubordinate:tk(e),root:t}},zp=e=>e.text(),ik=e=>e.json({terms:!1,normal:!0}).map(t=>t.normal),ok=function(e){let t=null;if(!e.found)return t;let r=e.values(0);return r.found?(r.parse()[0]||{}).num:t},sk=function(e){let t=Wa(e);return{root:zp(t.root),number:ok(t.number),determiner:zp(t.determiner),adjectives:ik(t.adjectives),isPlural:t.isPlural,isSubordinate:t.isSubordinate}},Pw=function(e){return!e.has("^(#Uncountable|#ProperNoun|#Place|#Pronoun|#Acronym)+$")},uk={tags:!0},lk=function(e,t){if(t.isPlural===!0||(t.root.has("#Possessive")&&(t.root=t.root.possessives().strip()),!Pw(t.root)))return e;const{methods:r,model:n}=e.world,{toPlural:a}=r.two.transform.noun;let i=t.root.text({keepPunct:!1}),o=a(i,n);e.match(t.root).replaceWith(o,uk).tag("Plural","toPlural"),t.determiner.has("(a|an)")&&e.remove(t.determiner);let s=t.root.after("not? #Adverb+? [#Copula]",0);return s.found&&(s.has("is")?e.replace(s,"are"):s.has("was")&&e.replace(s,"were")),e},ck={tags:!0},fk=function(e,t){if(t.isPlural===!1)return e;const{methods:r,model:n}=e.world,{toSingular:a}=r.two.transform.noun;let i=t.root.text("normal"),o=a(i,n);return e.replace(t.root,o,ck).tag("Singular","toPlural"),e},mk=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Nouns"}parse(n){return this.getNth(n).map(Wa)}json(n){let a=typeof n=="object"?n:{};return this.getNth(n).map(i=>{let o=i.toView().json(a)[0]||{};return a&&a.noun!==!1&&(o.noun=sk(i)),o},[])}conjugate(n){const a=this.world.methods.two.transform.noun;return this.getNth(n).map(i=>{let o=Wa(i),s=o.root.compute("root").text("root"),u={Singular:s};return Pw(o.root)&&(u.Plural=a.toPlural(s,this.model)),u.Singular===u.Plural&&delete u.Plural,u},[])}isPlural(n){return this.filter(i=>Wa(i).isPlural).getNth(n)}isSingular(n){return this.filter(i=>!Wa(i).isPlural).getNth(n)}adjectives(n){let a=this.update([]);return this.forEach(i=>{let o=Wa(i).adjectives;o.found&&(a=a.concat(o))}),a.getNth(n)}toPlural(n){return this.getNth(n).map(a=>lk(a,Wa(a)))}toSingular(n){return this.getNth(n).map(a=>{let i=Wa(a);return fk(a,i)})}update(n){let a=new t(this.document,n);return a._cache=this._cache,a}}e.prototype.nouns=function(r){let n=ek(this);return n=n.getNth(r),new t(this.document,n.pointer)}},dk={api:mk},hk=function(e,t){let r=e.match("#Fraction+");return r=r.filter(n=>!n.lookBehind("#Value and$").found),r=r.notIf("#Value seconds"),r},pk=e=>{const t=[{reg:/^(minus|negative)[\s-]/i,mult:-1},{reg:/^(a\s)?half[\s-](of\s)?/i,mult:.5}];for(let r=0;r<t.length;r++)if(t[r].reg.test(e)===!0)return{amount:t[r].mult,str:e.replace(t[r].reg,"")};return{amount:1,str:e}},Xt={ones:{zeroth:0,first:1,second:2,third:3,fourth:4,fifth:5,sixth:6,seventh:7,eighth:8,ninth:9,zero:0,one:1,two:2,three:3,four:4,five:5,six:6,seven:7,eight:8,nine:9},teens:{tenth:10,eleventh:11,twelfth:12,thirteenth:13,fourteenth:14,fifteenth:15,sixteenth:16,seventeenth:17,eighteenth:18,nineteenth:19,ten:10,eleven:11,twelve:12,thirteen:13,fourteen:14,fifteen:15,sixteen:16,seventeen:17,eighteen:18,nineteen:19},tens:{twentieth:20,thirtieth:30,fortieth:40,fourtieth:40,fiftieth:50,sixtieth:60,seventieth:70,eightieth:80,ninetieth:90,twenty:20,thirty:30,forty:40,fourty:40,fifty:50,sixty:60,seventy:70,eighty:80,ninety:90},multiples:{hundredth:100,thousandth:1e3,millionth:1e6,billionth:1e9,trillionth:1e12,quadrillionth:1e15,quintillionth:1e18,sextillionth:1e21,septillionth:1e24,hundred:100,thousand:1e3,million:1e6,billion:1e9,trillion:1e12,quadrillion:1e15,quintillion:1e18,sextillion:1e21,septillion:1e24,grand:1e3}},gk=(e,t)=>{if(Xt.ones.hasOwnProperty(e)){if(t.ones||t.teens)return!1}else if(Xt.teens.hasOwnProperty(e)){if(t.ones||t.teens||t.tens)return!1}else if(Xt.tens.hasOwnProperty(e)&&(t.ones||t.teens||t.tens))return!1;return!0},vk=function(e){let t="0.";for(let r=0;r<e.length;r++){let n=e[r];if(Xt.ones.hasOwnProperty(n)===!0)t+=Xt.ones[n];else if(Xt.teens.hasOwnProperty(n)===!0)t+=Xt.teens[n];else if(Xt.tens.hasOwnProperty(n)===!0)t+=Xt.tens[n];else if(/^[0-9]$/.test(n)===!0)t+=n;else return 0}return parseFloat(t)},yk=e=>(e=e.replace(/1st$/,"1"),e=e.replace(/2nd$/,"2"),e=e.replace(/3rd$/,"3"),e=e.replace(/([4567890])r?th$/,"$1"),e=e.replace(/^[$€¥£¢]/,""),e=e.replace(/[%$€¥£¢]$/,""),e=e.replace(/,/g,""),e=e.replace(/([0-9])([a-z\u00C0-\u00FF]{1,2})$/,"$1"),e),bk=/^([0-9,. ]+)\/([0-9,. ]+)$/,jp={"a few":3,"a couple":2,"a dozen":12,"two dozen":24,zero:0},Su=e=>Object.keys(e).reduce((t,r)=>(t+=e[r],t),0),tm=function(e){if(jp.hasOwnProperty(e)===!0)return jp[e];if(e==="a"||e==="an")return 1;const t=pk(e);e=t.str;let r=null,n={},a=0,i=!1;const o=e.split(/[ -]/);for(let s=0;s<o.length;s++){let u=o[s];if(u=yk(u),!u||u==="and")continue;if(u==="-"||u==="negative"){i=!0;continue}if(u.charAt(0)==="-"&&(i=!0,u=u.substring(1)),u==="point")return a+=Su(n),a+=vk(o.slice(s+1,o.length)),a*=t.amount,a;const l=u.match(bk);if(l){const c=parseFloat(l[1].replace(/[, ]/g,"")),f=parseFloat(l[2].replace(/[, ]/g,""));f&&(a+=c/f||0);continue}if(Xt.tens.hasOwnProperty(u)&&n.ones&&Object.keys(n).length===1&&(a=n.ones*100,n={}),gk(u,n)===!1)return null;if(/^[0-9.]+$/.test(u))n.ones=parseFloat(u);else if(Xt.ones.hasOwnProperty(u)===!0)n.ones=Xt.ones[u];else if(Xt.teens.hasOwnProperty(u)===!0)n.teens=Xt.teens[u];else if(Xt.tens.hasOwnProperty(u)===!0)n.tens=Xt.tens[u];else if(Xt.multiples.hasOwnProperty(u)===!0){let c=Xt.multiples[u];if(c===r)return null;if(c===100&&o[s+1]!==void 0){const f=o[s+1];Xt.multiples[f]&&(c*=Xt.multiples[f],s+=1)}r===null||c<r?(a+=(Su(n)||1)*c,r=c,n={}):(a+=Su(n),r=c,a=(a||1)*c,n={})}}return a+=Su(n),a*=t.amount,a*=i?-1:1,a===0&&Object.keys(n).length===0?null:a},qp=/s$/,Os=function(e){let t=e.text("reduced");return tm(t)};let Pl={half:2,halve:2,quarter:4};const wk=function(e){let r=e.text("reduced").match(/^([-+]?[0-9]+)\/([-+]?[0-9]+)(st|nd|rd|th)?s?$/);return r&&r[1]&&r[0]?{numerator:Number(r[1]),denominator:Number(r[2])}:null},xk=function(e){let t=e.match("[<num>#Value+] out of every? [<den>#Value+]");if(t.found!==!0)return null;let{num:r,den:n}=t.groups();return!r||!n||(r=Os(r),n=Os(n),!r||!n)?null:typeof r=="number"&&typeof n=="number"?{numerator:r,denominator:n}:null},Dk=function(e){let t=e.match("[<num>(#Cardinal|a)+] [<den>#Fraction+]");if(t.found!==!0)return null;let{num:r,den:n}=t.groups();r.has("a")?r=1:r=Os(r);let a=n.text("reduced");return qp.test(a)&&(a=a.replace(qp,""),n=n.replaceWith(a)),Pl.hasOwnProperty(a)?n=Pl[a]:n=Os(n),typeof r=="number"&&typeof n=="number"?{numerator:r,denominator:n}:null},Nk=function(e){let t=e.match("^#Ordinal$");return t.found!==!0?null:e.lookAhead("^of .")?{numerator:1,denominator:Os(t)}:null},Ak=function(e){let t=e.text("reduced");return Pl.hasOwnProperty(t)?{numerator:1,denominator:Pl[t]}:null},Ck=e=>{let t=Math.round(e*1e3)/1e3;return t===0&&e!==0?e:t},Da=function(e){e=e.clone();let t=Ak(e)||wk(e)||xk(e)||Dk(e)||Nk(e)||null;return t!==null&&t.numerator&&t.denominator&&(t.decimal=t.numerator/t.denominator,t.decimal=Ck(t.decimal)),t},ud=function(e){if(e<1e6)return String(e);let t;return typeof e=="number"?t=e.toFixed(0):t=e,t.indexOf("e+")===-1?t:t.replace(".","").split("e+").reduce(function(r,n){return r+Array(n-r.length+2).join(0)})},Tu=[["ninety",90],["eighty",80],["seventy",70],["sixty",60],["fifty",50],["forty",40],["thirty",30],["twenty",20]],Rp=["","one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"],Ek=[[1e24,"septillion"],[1e20,"hundred sextillion"],[1e21,"sextillion"],[1e20,"hundred quintillion"],[1e18,"quintillion"],[1e17,"hundred quadrillion"],[1e15,"quadrillion"],[1e14,"hundred trillion"],[1e12,"trillion"],[1e11,"hundred billion"],[1e9,"billion"],[1e8,"hundred million"],[1e6,"million"],[1e5,"hundred thousand"],[1e3,"thousand"],[100,"hundred"],[1,"one"]],Sk=function(e){let t=e,r=[];return Ek.forEach(n=>{if(e>=n[0]){let a=Math.floor(t/n[0]);t-=a*n[0],a&&r.push({unit:n[1],count:a})}}),r},Tk=function(e){let t=[];if(e>100)return t;for(let r=0;r<Tu.length;r++)e>=Tu[r][1]&&(e-=Tu[r][1],t.push(Tu[r][0]));return Rp[e]&&t.push(Rp[e]),t},Mk=e=>{const t=["zero","one","two","three","four","five","six","seven","eight","nine"];let r=[],a=ud(e).match(/\.([0-9]+)/);if(!a||!a[0])return r;r.push("point");let i=a[0].split("");for(let o=0;o<i.length;o++)r.push(t[i[o]]);return r},$s=function(e){let t=e.num;if(t===0||t==="0")return"zero";t>1e21&&(t=ud(t));let r=[];t<0&&(r.push("minus"),t=Math.abs(t));let n=Sk(t);for(let a=0;a<n.length;a++){let i=n[a].unit;i==="one"&&(i="",r.length>1&&r.push("and")),r=r.concat(Tk(n[a].count)),r.push(i)}return r=r.concat(Mk(t)),r=r.filter(a=>a),r.length===0&&(r[0]=""),r.join(" ")},Fk=function(e){if(!e.numerator||!e.denominator)return"";let t=$s({num:e.numerator}),r=$s({num:e.denominator});return`${t} out of ${r}`},Lp={one:"first",two:"second",three:"third",five:"fifth",eight:"eighth",nine:"ninth",twelve:"twelfth",twenty:"twentieth",thirty:"thirtieth",forty:"fortieth",fourty:"fourtieth",fifty:"fiftieth",sixty:"sixtieth",seventy:"seventieth",eighty:"eightieth",ninety:"ninetieth"},kw=e=>{let t=$s(e).split(" "),r=t[t.length-1];return Lp.hasOwnProperty(r)?t[t.length-1]=Lp[r]:t[t.length-1]=r.replace(/y$/,"i")+"th",t.join(" ")},Pk=function(e){if(!e.numerator||!e.denominator)return"";let t=$s({num:e.numerator}),r=kw({num:e.denominator});return e.denominator===2&&(r="half"),t&&r?(e.numerator!==1&&(r+="s"),`${t} ${r}`):""},kk=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Fractions"}parse(n){return this.getNth(n).map(Da)}get(n){return this.getNth(n).map(Da)}json(n){return this.getNth(n).map(a=>{let i=a.toView().json(n)[0],o=Da(a);return i.fraction=o,i},[])}toDecimal(n){return this.getNth(n).forEach(a=>{let{decimal:i}=Da(a);a=a.replaceWith(String(i),!0),a.tag("NumericValue"),a.unTag("Fraction")}),this}toFraction(n){return this.getNth(n).forEach(a=>{let i=Da(a);if(i&&typeof i.numerator=="number"&&typeof i.denominator=="number"){let o=`${i.numerator}/${i.denominator}`;this.replace(a,o)}}),this}toOrdinal(n){return this.getNth(n).forEach(a=>{let i=Da(a),o=Pk(i);a.after("^#Noun").found&&(o+=" of"),a.replaceWith(o)}),this}toCardinal(n){return this.getNth(n).forEach(a=>{let i=Da(a),o=Fk(i);a.replaceWith(o)}),this}toPercentage(n){return this.getNth(n).forEach(a=>{let{decimal:i}=Da(a),o=i*100;o=Math.round(o*100)/100,a.replaceWith(`${o}%`)}),this}}e.prototype.fractions=function(r){let n=hk(this);return n=n.getNth(r),new t(this.document,n.pointer)}},Ok="one|two|three|four|five|six|seven|eight|nine",Ga="twenty|thirty|forty|fifty|sixty|seventy|eighty|ninety|fourty",$k="eleven|twelve|thirteen|fourteen|fifteen|sixteen|seventeen|eighteen|nineteen",ef=function(e){let t=e.match("#Value+");if(t.has("#NumericValue #NumericValue")&&(t.has("#Value @hasComma #Value")?t.splitAfter("@hasComma"):t.has("#NumericValue #Fraction")?t.splitAfter("#NumericValue #Fraction"):t=t.splitAfter("#NumericValue")),t.has("#Value #Value #Value")&&!t.has("#Multiple")&&t.has("("+Ga+") #Cardinal #Cardinal")&&(t=t.splitAfter("("+Ga+") #Cardinal")),t.has("#Value #Value")){t.has("#NumericValue #NumericValue")&&(t=t.splitOn("#Year")),t.has("("+Ga+") ("+$k+")")&&(t=t.splitAfter("("+Ga+")"));let r=t.match("#Cardinal #Cardinal");if(r.found&&!t.has("(point|decimal|#Fraction)")&&!r.has("#Cardinal (#Multiple|point|decimal)")){let n=t.has(`(${Ok}) (${Ga})`),a=r.has("("+Ga+") #Cardinal"),i=r.has("#Multiple #Value");!n&&!a&&!i&&r.terms().forEach(o=>{t=t.splitOn(o)})}t.match("#Ordinal #Ordinal").match("#TextValue").found&&!t.has("#Multiple")&&(t.has("("+Ga+") #Ordinal")||(t=t.splitAfter("#Ordinal"))),t=t.splitBefore("#Ordinal [#Cardinal]",0),t.has("#TextValue #NumericValue")&&!t.has("("+Ga+"|#Multiple)")&&(t=t.splitBefore("#TextValue #NumericValue"))}return t=t.splitAfter("#NumberRange"),t=t.splitBefore("#Year"),t},Bk=function(e,t){e=e.replace(/,/g,"");let r=e.split(/([0-9.,]*)/),[n,a]=r,i=r.slice(2).join("");return a!==""&&t.length<2?(a=Number(a||e),typeof a!="number"&&(a=null),i=i||"",(i==="st"||i==="nd"||i==="rd"||i==="th")&&(i=""),{prefix:n||"",num:a,suffix:i}):null},Dr=function(e){if(typeof e=="string")return{num:tm(e)};let t=e.text("reduced"),r=e.growRight("#Unit").match("#Unit$").text("machine"),n=/[0-9],[0-9]/.test(e.text("text"));if(e.terms().length===1&&!e.has("#Multiple")){let s=Bk(t,e);if(s!==null)return s.hasComma=n,s.unit=r,s}let a=e.match("#Fraction{2,}$");a=a.found===!1?e.match("^#Fraction$"):a;let i=null;a.found&&(a.has("#Value and #Value #Fraction")&&(a=a.match("and #Value #Fraction")),i=Da(a),e=e.not(a),e=e.not("and$"),t=e.text("reduced"));let o=0;return t&&(o=tm(t)||0),i&&i.decimal&&(o+=i.decimal),{hasComma:n,prefix:"",num:o,suffix:"",isOrdinal:e.has("#Ordinal"),isText:e.has("#TextValue"),isFraction:e.has("#Fraction"),isMoney:e.has("#Money"),unit:r}},_k=function(e){let t=e.num;if(!t&&t!==0)return null;let r=t%100;if(r>10&&r<20)return String(t)+"th";const n={0:"th",1:"st",2:"nd",3:"rd"};let a=ud(t),i=a.slice(a.length-1,a.length);return n[i]?a+=n[i]:a+="th",a},Hp={"¢":"cents",$:"dollars","£":"pounds","¥":"yen","€":"euros","₡":"colón","฿":"baht","₭":"kip","₩":"won","₹":"rupees","₽":"ruble","₺":"liras"},Gp={"%":"percent","°":"degrees"},Vp=function(e){let t={suffix:"",prefix:e.prefix};return Hp.hasOwnProperty(e.prefix)&&(t.suffix+=" "+Hp[e.prefix],t.prefix=""),Gp.hasOwnProperty(e.suffix)&&(t.suffix+=" "+Gp[e.suffix]),t.suffix&&e.num===1&&(t.suffix=t.suffix.replace(/s$/,"")),!t.suffix&&e.suffix&&(t.suffix+=" "+e.suffix),t},Ci=function(e,t){if(t==="TextOrdinal"){let{prefix:n,suffix:a}=Vp(e);return n+kw(e)+a}if(t==="Ordinal")return e.prefix+_k(e)+e.suffix;if(t==="TextCardinal"){let{prefix:n,suffix:a}=Vp(e);return n+$s(e)+a}let r=e.num;return e.hasComma&&(r=r.toLocaleString()),e.prefix+String(r)+e.suffix},Ik=e=>Object.prototype.toString.call(e)==="[object Array]",zk=function(e){if(typeof e=="string"||typeof e=="number"){let t={};return t[e]=!0,t}return Ik(e)?e.reduce((t,r)=>(t[r]=!0,t),{}):e||{}},jk=function(e,t={}){return t=zk(t),e.filter(r=>{let{unit:n}=Dr(r);return!!(n&&t[n]===!0)})},qk=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Numbers"}parse(n){return this.getNth(n).map(Dr)}get(n){return this.getNth(n).map(Dr).map(a=>a.num)}json(n){let a=typeof n=="object"?n:{};return this.getNth(n).map(i=>{let o=i.toView().json(a)[0],s=Dr(i);return o.number={prefix:s.prefix,num:s.num,suffix:s.suffix,hasComma:s.hasComma,unit:s.unit},o},[])}units(){return this.growRight("#Unit").match("#Unit$")}isUnit(n){return jk(this,n)}isOrdinal(){return this.if("#Ordinal")}isCardinal(){return this.if("#Cardinal")}toNumber(){let n=this.map(a=>{if(!this.has("#TextValue"))return a;let i=Dr(a);if(i.num===null)return a;let o=a.has("#Ordinal")?"Ordinal":"Cardinal",s=Ci(i,o);return a.replaceWith(s,{tags:!0}),a.tag("NumericValue")});return new t(n.document,n.pointer)}toLocaleString(){return this.forEach(a=>{let i=Dr(a);if(i.num===null)return;let o=i.num.toLocaleString();if(a.has("#Ordinal")){let u=Ci(i,"Ordinal").match(/[a-z]+$/);u&&(o+=u[0]||"")}a.replaceWith(o,{tags:!0})}),this}toText(){let a=this.map(i=>{if(i.has("#TextValue"))return i;let o=Dr(i);if(o.num===null)return i;let s=i.has("#Ordinal")?"TextOrdinal":"TextCardinal",u=Ci(o,s);return i.replaceWith(u,{tags:!0}),i.tag("TextValue"),i});return new t(a.document,a.pointer)}toCardinal(){let a=this.map(i=>{if(!i.has("#Ordinal"))return i;let o=Dr(i);if(o.num===null)return i;let s=i.has("#TextValue")?"TextCardinal":"Cardinal",u=Ci(o,s);return i.replaceWith(u,{tags:!0}),i.tag("Cardinal"),i});return new t(a.document,a.pointer)}toOrdinal(){let a=this.map(i=>{if(i.has("#Ordinal"))return i;let o=Dr(i);if(o.num===null)return i;let s=i.has("#TextValue")?"TextOrdinal":"Ordinal",u=Ci(o,s);return i.replaceWith(u,{tags:!0}),i.tag("Ordinal"),i});return new t(a.document,a.pointer)}isEqual(n){return this.filter(a=>Dr(a).num===n)}greaterThan(n){return this.filter(a=>Dr(a).num>n)}lessThan(n){return this.filter(a=>Dr(a).num<n)}between(n,a){return this.filter(i=>{let o=Dr(i).num;return o>n&&o<a})}set(n){if(n===void 0)return this;typeof n=="string"&&(n=Dr(n).num);let i=this.map(o=>{let s=Dr(o);if(s.num=n,s.num===null)return o;let u=o.has("#Ordinal")?"Ordinal":"Cardinal";o.has("#TextValue")&&(u=o.has("#Ordinal")?"TextOrdinal":"TextCardinal");let l=Ci(s,u);return s.hasComma&&u==="Cardinal"&&(l=Number(l).toLocaleString()),o=o.not("#Currency"),o.replaceWith(l,{tags:!0}),o});return new t(i.document,i.pointer)}add(n){if(!n)return this;typeof n=="string"&&(n=Dr(n).num);let i=this.map(o=>{let s=Dr(o);if(s.num===null)return o;s.num+=n;let u=o.has("#Ordinal")?"Ordinal":"Cardinal";s.isText&&(u=o.has("#Ordinal")?"TextOrdinal":"TextCardinal");let l=Ci(s,u);return o.replaceWith(l,{tags:!0}),o});return new t(i.document,i.pointer)}subtract(n,a){return this.add(n*-1,a)}increment(n){return this.add(1,n)}decrement(n){return this.add(-1,n)}update(n){let a=new t(this.document,n);return a._cache=this._cache,a}}t.prototype.toNice=t.prototype.toLocaleString,t.prototype.isBetween=t.prototype.between,t.prototype.minus=t.prototype.subtract,t.prototype.plus=t.prototype.add,t.prototype.equals=t.prototype.isEqual,e.prototype.numbers=function(r){let n=ef(this);return n=n.getNth(r),new t(this.document,n.pointer)},e.prototype.percentages=function(r){let n=ef(this);return n=n.filter(a=>a.has("#Percent")||a.after("^percent")),n=n.getNth(r),new t(this.document,n.pointer)},e.prototype.money=function(r){let n=ef(this);return n=n.filter(a=>a.has("#Money")||a.after("^#Currency")),n=n.getNth(r),new t(this.document,n.pointer)},e.prototype.values=e.prototype.numbers},Rk=function(e){kk(e),qk(e)},Lk={api:Rk},Hk={people:!0,emails:!0,phoneNumbers:!0,places:!0},Gk=function(e={}){return e=Object.assign({},Hk,e),e.people!==!1&&this.people().replaceWith("██████████"),e.emails!==!1&&this.emails().replaceWith("██████████"),e.places!==!1&&this.places().replaceWith("██████████"),e.phoneNumbers!==!1&&this.phoneNumbers().replaceWith("███████"),this},Vk={api:function(e){e.prototype.redact=Gk}},Uk=function(e){let t=e.clauses();return/\.\.$/.test(e.out("text"))||e.has("^#QuestionWord")&&e.has("@hasComma")?!1:!!(e.has("or not$")||e.has("^#QuestionWord")||e.has("^(do|does|did|is|was|can|could|will|would|may) #Noun")||e.has("^(have|must) you")||t.has("(do|does|is|was) #Noun+ #Adverb? (#Adjective|#Infinitive)$"))},Wk=function(e){const t=/\?/,{document:r}=e;return e.filter(n=>{let a=n.docs[0]||[],i=a[a.length-1];return!i||r[i.index[0]].length!==a.length?!1:t.test(i.post)?!0:Uk(n)})},Jk="(after|although|as|because|before|if|since|than|that|though|when|whenever|where|whereas|wherever|whether|while|why|unless|until|once)",Kk="(that|which|whichever|who|whoever|whom|whose|whomever)",Yk=function(e){let t=e;return t.length===1||(t=t.if("#Verb"),t.length===1)||(t=t.ifNo(Jk),t=t.ifNo("^even (if|though)"),t=t.ifNo("^so that"),t=t.ifNo("^rather than"),t=t.ifNo("^provided that"),t.length===1)||(t=t.ifNo(Kk),t.length===1)||(t=t.ifNo("(^despite|^during|^before|^through|^throughout)"),t.length===1)||(t=t.ifNo("^#Gerund"),t.length===1)?t:(t.length===0&&(t=e),t.eq(0))},Zk=function(e){let t=null;return e.has("#PastTense")?t="PastTense":e.has("#FutureTense")?t="FutureTense":e.has("#PresentTense")&&(t="PresentTense"),{tense:t}},Ei=function(e){let t=e.clauses(),n=Yk(t).chunks(),a=e.none(),i=e.none(),o=e.none();return n.forEach((s,u)=>{if(u===0&&!s.has("<Verb>")){a=s;return}if(!i.found&&s.has("<Verb>")){i=s;return}i.found&&(o=o.concat(s))}),i.found&&!a.found&&(a=i.before("<Noun>+").first()),{subj:a,verb:i,pred:o,grammar:Zk(i)}},Qk=function(e){let t=e.verbs(),r=t.eq(0);if(r.has("#PastTense"))return e;if(r.toPastTense(),t.length>1){t=t.slice(1),t=t.filter(a=>!a.lookBehind("to$").found),t=t.if("#PresentTense"),t=t.notIf("#Gerund");let n=e.match("to #Verb+ #Conjunction #Verb").terms();t=t.not(n),t.found&&t.verbs().toPastTense()}return e},Xk=function(e){let t=e.verbs();return t.eq(0).toPresentTense(),t.length>1&&(t=t.slice(1),t=t.filter(n=>!n.lookBehind("to$").found),t=t.notIf("#Gerund"),t.found&&t.verbs().toPresentTense()),e},eO=function(e){let t=e.verbs();if(t.eq(0).toFutureTense(),e=e.fullSentence(),t=e.verbs(),t.length>1){t=t.slice(1);let n=t.filter(a=>a.lookBehind("to$").found?!1:a.has("#Copula #Gerund")?!0:a.has("#Gerund")?!1:a.has("#Copula")?!0:!(a.has("#PresentTense")&&!a.has("#Infinitive")&&a.lookBefore("(he|she|it|that|which)$").found));n.found&&n.forEach(a=>{if(a.has("#Copula")){a.match("was").replaceWith("is"),a.match("is").replaceWith("will be");return}a.toInfinitive()})}return e},tO=function(e){return e.verbs().first().toNegative().compute("chunks"),e},rO=function(e){return e.verbs().first().toPositive().compute("chunks"),e},nO=function(e){return e.verbs().toInfinitive(),e},aO=function(e){class t extends e{constructor(a,i,o){super(a,i,o),this.viewType="Sentences"}json(a={}){return this.map(i=>{let o=i.toView().json(a)[0]||{},{subj:s,verb:u,pred:l,grammar:c}=Ei(i);return o.sentence={subject:s.text("normal"),verb:u.text("normal"),predicate:l.text("normal"),grammar:c},o},[])}toPastTense(a){return this.getNth(a).map(i=>(Ei(i),Qk(i)))}toPresentTense(a){return this.getNth(a).map(i=>(Ei(i),Xk(i)))}toFutureTense(a){return this.getNth(a).map(i=>(Ei(i),i=eO(i),i))}toInfinitive(a){return this.getNth(a).map(i=>(Ei(i),nO(i)))}toNegative(a){return this.getNth(a).map(i=>(Ei(i),tO(i)))}toPositive(a){return this.getNth(a).map(i=>(Ei(i),rO(i)))}isQuestion(a){return this.questions(a)}isExclamation(a){return this.filter(o=>o.lastTerm().has("@hasExclamation")).getNth(a)}isStatement(a){return this.filter(o=>!o.isExclamation().found&&!o.isQuestion().found).getNth(a)}update(a){let i=new t(this.document,a);return i._cache=this._cache,i}}t.prototype.toPresent=t.prototype.toPresentTense,t.prototype.toPast=t.prototype.toPastTense,t.prototype.toFuture=t.prototype.toFutureTense;const r={sentences:function(n){let a=this.map(i=>i.fullSentence());return a=a.getNth(n),new t(this.document,a.pointer)},questions:function(n){return Wk(this).getNth(n)}};Object.assign(e.prototype,r)},iO={api:aO},oO=function(e){let t=e.splitAfter("@hasComma");t=t.match("#Honorific+? #Person+");let r=t.match("#Possessive").notIf("(his|her)");return t=t.splitAfter(r),t},Up=function(e){let t={};t.firstName=e.match("#FirstName+"),t.lastName=e.match("#LastName+"),t.honorific=e.match("#Honorific+");let r=t.lastName,n=t.firstName;return(!n.found||!r.found)&&!n.found&&!r.found&&e.has("^#Honorific .$")&&(t.lastName=e.match(".$")),t},Nn="male",qr="female",Wp={mr:Nn,mrs:qr,miss:qr,madam:qr,king:Nn,queen:qr,duke:Nn,duchess:qr,baron:Nn,baroness:qr,count:Nn,countess:qr,prince:Nn,princess:qr,sire:Nn,dame:qr,lady:qr,ayatullah:Nn,congressman:Nn,congresswoman:qr,"first lady":qr,mx:null},sO=function(e,t){let{firstName:r,honorific:n}=e;if(r.has("#FemaleName"))return qr;if(r.has("#MaleName"))return Nn;if(n.found){let i=n.text("normal");if(i=i.replace(/\./g,""),Wp.hasOwnProperty(i))return Wp[i];if(/^her /.test(i))return qr;if(/^his /.test(i))return Nn}let a=t.after();if(!a.has("#Person")&&a.has("#Pronoun")){let i=a.match("#Pronoun");if(i.has("(they|their)"))return null;let o=i.has("(he|his)"),s=i.has("(she|her|hers)");if(o&&!s)return Nn;if(s&&!o)return qr}return null},uO=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="People"}parse(n){return this.getNth(n).map(Up)}json(n){let a=typeof n=="object"?n:{};return this.getNth(n).map(i=>{let o=i.toView().json(a)[0],s=Up(i);return o.person={firstName:s.firstName.text("normal"),lastName:s.lastName.text("normal"),honorific:s.honorific.text("normal"),presumed_gender:sO(s,i)},o},[])}presumedMale(){return this.filter(n=>n.has("(#MaleName|mr|mister|sr|jr|king|pope|prince|sir)"))}presumedFemale(){return this.filter(n=>n.has("(#FemaleName|mrs|miss|queen|princess|madam)"))}update(n){let a=new t(this.document,n);return a._cache=this._cache,a}}e.prototype.people=function(r){let n=oO(this);return n=n.getNth(r),new t(this.document,n.pointer)}},lO=function(e){let t=e.match("(#Place|#Address)+"),r=t.match("@hasComma");return r=r.filter(n=>n.has("(asia|africa|europe|america)$")?!0:!(n.has("(#City|#Region|#ProperNoun)$")&&n.after("^(#Country|#Region)").found)),t=t.splitAfter(r),t},cO=function(e){e.prototype.places=function(t){let r=lO(this);return r=r.getNth(t),new e(this.document,r.pointer)}},fO=function(e){e.prototype.organizations=function(t){return this.match("#Organization+").getNth(t)}},mO=function(e){let t=this.clauses(),r=t.people();return r=r.concat(t.places()),r=r.concat(t.organizations()),r=r.not("(someone|man|woman|mother|brother|sister|father)"),r=r.sort("seq"),r=r.getNth(e),r},dO=function(e){e.prototype.topics=mO},hO=function(e){uO(e),cO(e),fO(e),dO(e)},pO={api:hO},gO=function(e){let t=e.match("<Verb>");return t=t.not("#Conjunction"),t=t.not("#Preposition"),t=t.splitAfter("@hasComma"),t=t.splitAfter("[(do|did|am|was|is|will)] (is|was)",0),t=t.splitBefore("(#Verb && !#Copula) [being] #Verb",0),t=t.splitBefore("#Verb [to be] #Verb",0),t=t.splitAfter("[help] #PresentTense",0),t=t.splitBefore("(#PresentTense|#PastTense) [#Copula]$",0),t=t.splitBefore("(#PresentTense|#PastTense) [will be]$",0),t=t.splitBefore("(#PresentTense|#PastTense) [(had|has)]",0),t=t.not("#Reflexive$"),t=t.not("#Adjective"),t=t.splitAfter("[#PastTense] #PastTense",0),t=t.splitAfter("[#PastTense] #Auxiliary+ #PastTense",0),t=t.splitAfter("#Copula [#Gerund] #PastTense",0),t=t.if("#Verb"),t.has("(#Verb && !#Auxiliary) #Adverb+? #Copula")&&(t=t.splitBefore("#Copula")),t},vO=function(e){let t=e;return e.wordCount()>1&&(t=e.not("(#Negative|#Auxiliary|#Modal|#Adverb|#Prefix)")),t.length>1&&!t.has("#Phrasal #Particle")&&(t=t.last()),t=t.not("(want|wants|wanted) to"),t.found||(t=e.not("#Negative")),t},yO=function(e,t){let r={pre:e.none(),post:e.none()};if(!e.has("#Adverb"))return r;let n=e.splitOn(t);return n.length===3?{pre:n.eq(0).adverbs(),post:n.eq(2).adverbs()}:n.eq(0).isDoc(t)?(r.post=n.eq(1).adverbs(),r):(r.pre=n.eq(0).adverbs(),r)},bO=function(e,t){let r=e.splitBefore(t);if(r.length<=1)return e.none();let n=r.eq(0);return n=n.not("(#Adverb|#Negative|#Prefix)"),n},wO=function(e){return e.match("#Negative")},xO=function(e){if(!e.has("(#Particle|#PhrasalVerb)"))return{verb:e.none(),particle:e.none()};let t=e.match("#Particle$");return{verb:e.not(t),particle:t}},qn=function(e){let t=e.clone();t.contractions().expand();const r=vO(t);return{root:r,prefix:t.match("#Prefix"),adverbs:yO(t,r),auxiliary:bO(t,r),negative:wO(t),phrasal:xO(r)}},In={tense:"PresentTense"},Mu={conditional:!0},va={tense:"FutureTense"},ho={progressive:!0},mr={tense:"PastTense"},po={complete:!0,progressive:!1},Va={passive:!0},DO={plural:!0},NO={plural:!1},AO=function(e){let t={};return e.forEach(r=>{Object.assign(t,r)}),t},Jp={imperative:[["#Imperative",[]]],"want-infinitive":[["^(want|wants|wanted) to #Infinitive$",[In]],["^wanted to #Infinitive$",[mr]],["^will want to #Infinitive$",[va]]],"gerund-phrase":[["^#PastTense #Gerund$",[mr]],["^#PresentTense #Gerund$",[In]],["^#Infinitive #Gerund$",[In]],["^will #Infinitive #Gerund$",[va]],["^have #PastTense #Gerund$",[mr]],["^will have #PastTense #Gerund$",[mr]]],"simple-present":[["^#PresentTense$",[In]],["^#Infinitive$",[In]]],"simple-past":[["^#PastTense$",[mr]]],"simple-future":[["^will #Adverb? #Infinitive",[va]]],"present-progressive":[["^(is|are|am) #Gerund$",[In,ho]]],"past-progressive":[["^(was|were) #Gerund$",[mr,ho]]],"future-progressive":[["^will be #Gerund$",[va,ho]]],"present-perfect":[["^(has|have) #PastTense$",[mr,po]]],"past-perfect":[["^had #PastTense$",[mr,po]],["^had #PastTense to #Infinitive",[mr,po]]],"future-perfect":[["^will have #PastTense$",[va,po]]],"present-perfect-progressive":[["^(has|have) been #Gerund$",[mr,ho]]],"past-perfect-progressive":[["^had been #Gerund$",[mr,ho]]],"future-perfect-progressive":[["^will have been #Gerund$",[va,ho]]],"passive-past":[["(got|were|was) #Passive",[mr,Va]],["^(was|were) being #Passive",[mr,Va]],["^(had|have) been #Passive",[mr,Va]]],"passive-present":[["^(is|are|am) #Passive",[In,Va]],["^(is|are|am) being #Passive",[In,Va]],["^has been #Passive",[In,Va]]],"passive-future":[["will have been #Passive",[va,Va,Mu]],["will be being? #Passive",[va,Va,Mu]]],"present-conditional":[["would be #PastTense",[In,Mu]]],"past-conditional":[["would have been #PastTense",[mr,Mu]]],"auxiliary-future":[["(is|are|am|was) going to (#Infinitive|#PresentTense)",[va]]],"auxiliary-past":[["^did #Infinitive$",[mr,NO]],["^used to #Infinitive$",[mr,po]]],"auxiliary-present":[["^(does|do) #Infinitive$",[In,po,DO]]],"modal-past":[["^(could|must|should|shall) have #PastTense$",[mr]]],"modal-infinitive":[["^#Modal #Infinitive$",[]]],infinitive:[["^#Infinitive$",[]]]};let rm=[];Object.keys(Jp).map(e=>{Jp[e].forEach(t=>{rm.push({name:e,match:t[0],data:AO(t[1])})})});const CO=function(e,t){return e=e.clone(),t.adverbs.post&&t.adverbs.post.found&&e.remove(t.adverbs.post),t.adverbs.pre&&t.adverbs.pre.found&&e.remove(t.adverbs.pre),e.has("#Negative")&&(e=e.remove("#Negative")),e.has("#Prefix")&&(e=e.remove("#Prefix")),t.root.has("#PhrasalVerb #Particle")&&e.remove("#Particle$"),e=e.not("#Adverb"),e},EO=function(e){return!!(e.has("#Infinitive")&&e.growLeft("to").has("^to #Infinitive"))},Na=function(e,t){let r={};e=CO(e,t);for(let n=0;n<rm.length;n+=1){let a=rm[n];if(e.has(a.match)===!0){r.form=a.name,Object.assign(r,a.data);break}}return r.form||e.has("^#Verb$")&&(r.form="infinitive"),r.tense||(r.tense=t.root.has("#PastTense")?"PastTense":"PresentTense"),r.copula=t.root.has("#Copula"),r.isInfinitive=EO(e),r},Kp=function(e){return e.length<=1?!1:(e.parse()[0]||{}).isSubordinate},SO=function(e){let t=e.clauses();return t=t.filter((r,n)=>!(r.has("^(if|unless|while|but|for|per|at|by|that|which|who|from)")||n>0&&r.has("^#Verb . #Noun+$")||n>0&&r.has("^#Adverb"))),t.length===0?e:t},TO=function(e){let t=e.before();t=SO(t);let r=t.nouns(),n=r.last(),a=n.match("(i|he|she|we|you|they)");if(a.found)return a.nouns();let i=r.if("^(that|this|those)");return i.found||r.found===!1&&(i=t.match("^(that|this|those)"),i.found)?i:(n=r.last(),Kp(n)&&(r.remove(n),n=r.last()),Kp(n)&&(r.remove(n),n=r.last()),n)},MO=function(e,t){return t.has("(are|were|does)")||e.has("(those|they|we)")?!0:e.found&&e.isPlural?e.isPlural().found:!1},oa=function(e){let t=TO(e);return{subject:t,plural:MO(t,e)}},jt=e=>e,Cs=(e,t)=>{let r=oa(e),n=r.subject;return n.has("i")||n.has("we")?!0:r.plural},FO=(e,t)=>{let{subject:r,plural:n}=oa(e);return n||r.has("we")?"were":"was"},Es=function(e,t){if(e.has("were"))return"are";let{subject:r,plural:n}=oa(e);return r.has("i")?"am":r.has("we")||n?"are":"is"},ld=function(e,t){let r=oa(e),n=r.subject;return n.has("i")||n.has("we")||r.plural?"do":"does"},mn=function(e){if(e.has("#Infinitive"))return"Infinitive";if(e.has("#Participle"))return"Participle";if(e.has("#PastTense"))return"PastTense";if(e.has("#Gerund"))return"Gerund";if(e.has("#PresentTense"))return"PresentTense"},nm=function(e,t){const{toInfinitive:r}=e.methods.two.transform.verb;let n=t.root.text({keepPunct:!1});return n=r(n,e.model,mn(e)),n&&e.replace(t.root,n),e},Yp=e=>e.has("will not")?e.replace("will not","have not"):e.remove("will"),Zp=function(e){if(!e||!e.isView)return[];const t={normal:!0,terms:!1,text:!1};return e.json(t).map(r=>r.normal)},Qp=function(e){return!e||!e.isView?"":e.text("normal")},PO=function(e){const{toInfinitive:t}=e.methods.two.transform.verb;let r=e.text("normal");return t(r,e.model,mn(e))},kO=function(e){let t=qn(e);e=e.clone().toView();const r=Na(e,t);return{root:t.root.text(),preAdverbs:Zp(t.adverbs.pre),postAdverbs:Zp(t.adverbs.post),auxiliary:Qp(t.auxiliary),negative:t.negative.found,prefix:Qp(t.prefix),infinitive:PO(t.root),grammar:r}},OO={tags:!0},$O=function(e,t){const{toInfinitive:r}=e.methods.two.transform.verb,{root:n,auxiliary:a}=t;let i=a.terms().harden(),o=n.text("normal");if(o=r(o,e.model,mn(n)),o&&e.replace(n,o,OO).tag("Verb").firstTerm().tag("Infinitive"),i.found&&e.remove(i),t.negative.found){e.has("not")||e.prepend("not");let s=ld(e);e.prepend(s)}return e.fullSentence().compute(["freeze","lexicon","preTagger","postTagger","unfreeze","chunks"]),e},Dn={tags:!0},Aa={noAux:(e,t)=>(t.auxiliary.found&&(e=e.remove(t.auxiliary)),e),simple:(e,t)=>{const{conjugate:r,toInfinitive:n}=e.methods.two.transform.verb,a=t.root;if(a.has("#Modal"))return e;let i=a.text({keepPunct:!1});return i=n(i,e.model,mn(a)),i=r(i,e.model).PastTense,i=i==="been"?"was":i,i==="was"&&(i=FO(e)),i&&e.replace(a,i,Dn),e},both:function(e,t){return t.negative.found?(e.replace("will","did"),e):(e=Aa.simple(e,t),e=Aa.noAux(e,t),e)},hasHad:e=>(e.replace("has","had",Dn),e),hasParticiple:(e,t)=>{const{conjugate:r,toInfinitive:n}=e.methods.two.transform.verb,a=t.root;let i=a.text("normal");return i=n(i,e.model,mn(a)),r(i,e.model).Participle}},Xp={infinitive:Aa.simple,"simple-present":Aa.simple,"simple-past":jt,"simple-future":Aa.both,"present-progressive":e=>(e.replace("are","were",Dn),e.replace("(is|are|am)","was",Dn),e),"past-progressive":jt,"future-progressive":(e,t)=>(e.match(t.root).insertBefore("was"),e.remove("(will|be)"),e),"present-perfect":Aa.hasHad,"past-perfect":jt,"future-perfect":(e,t)=>(e.match(t.root).insertBefore("had"),e.has("will")&&(e=Yp(e)),e.remove("have"),e),"present-perfect-progressive":Aa.hasHad,"past-perfect-progressive":jt,"future-perfect-progressive":e=>(e.remove("will"),e.replace("have","had",Dn),e),"passive-past":e=>(e.replace("have","had",Dn),e),"passive-present":e=>(e.replace("(is|are)","was",Dn),e),"passive-future":(e,t)=>(t.auxiliary.has("will be")&&(e.match(t.root).insertBefore("had been"),e.remove("(will|be)")),t.auxiliary.has("will have been")&&(e.replace("have","had",Dn),e.remove("will")),e),"present-conditional":e=>(e.replace("be","have been"),e),"past-conditional":jt,"auxiliary-future":e=>(e.replace("(is|are|am)","was",Dn),e),"auxiliary-past":jt,"auxiliary-present":e=>(e.replace("(do|does)","did",Dn),e),"modal-infinitive":(e,t)=>(e.has("can")?e.replace("can","could",Dn):(Aa.simple(e,t),e.match("#Modal").insertAfter("have").tag("Auxiliary")),e),"modal-past":jt,"want-infinitive":e=>(e.replace("(want|wants)","wanted",Dn),e.remove("will"),e),"gerund-phrase":(e,t)=>(t.root=t.root.not("#Gerund$"),Aa.simple(e,t),Yp(e),e)},BO=function(e,t,r){return Xp.hasOwnProperty(r)&&(e=Xp[r](e,t),e.fullSentence().compute(["tagger","chunks"])),e},am=function(e,t){let r=oa(e),n=r.subject;return n.has("(i|we|you)")?"have":r.plural===!1||n.has("he")||n.has("she")||n.has("#Person")?"has":"have"},im=(e,t)=>{const{conjugate:r,toInfinitive:n}=e.methods.two.transform.verb,{root:a,auxiliary:i}=t;if(a.has("#Modal"))return e;let o=a.text({keepPunct:!1});o=n(o,e.model,mn(a));let s=r(o,e.model);if(o=s.Participle||s.PastTense,o){e=e.replace(a,o);let u=am(e);e.prepend(u).match(u).tag("Auxiliary"),e.remove(i)}return e},eg={infinitive:im,"simple-present":im,"simple-future":(e,t)=>e.replace("will",am(e)),"present-perfect":jt,"past-perfect":jt,"future-perfect":(e,t)=>e.replace("will have",am(e)),"present-perfect-progressive":jt,"past-perfect-progressive":jt,"future-perfect-progressive":jt},_O=function(e,t,r){return eg.hasOwnProperty(r)?(e=eg[r](e,t),e.fullSentence().compute(["tagger","chunks"]),e):(e=im(e,t),e.fullSentence().compute(["tagger","chunks"]),e)},Ea={tags:!0},go=(e,t)=>{const{conjugate:r,toInfinitive:n}=e.methods.two.transform.verb,a=t.root;let i=a.text("normal");return i=n(i,e.model,mn(a)),Cs(e)===!1&&(i=r(i,e.model).PresentTense),a.has("#Copula")&&(i=Es(e)),i&&(e=e.replace(a,i,Ea),e.not("#Particle").tag("PresentTense")),e},tg=(e,t)=>{const{conjugate:r,toInfinitive:n}=e.methods.two.transform.verb,a=t.root;let i=a.text("normal");return i=n(i,e.model,mn(a)),Cs(e)===!1&&(i=r(i,e.model).Gerund),i&&(e=e.replace(a,i,Ea),e.not("#Particle").tag("Gerund")),e},IO=(e,t)=>{const{toInfinitive:r}=e.methods.two.transform.verb,n=t.root;let a=t.root.text("normal");return a=r(a,e.model,mn(n)),a&&(e=e.replace(t.root,a,Ea)),e},rg={infinitive:go,"simple-present":(e,t)=>{const{conjugate:r}=e.methods.two.transform.verb;let{root:n}=t;if(n.has("#Infinitive")){let i=oa(e).subject;if(Cs(e)||i.has("i"))return e;let o=n.text("normal"),s=r(o,e.model).PresentTense;o!==s&&e.replace(n,s,Ea)}else return go(e,t);return e},"simple-past":go,"simple-future":(e,t)=>{const{root:r,auxiliary:n}=t;if(n.has("will")&&r.has("be")){let a=Es(e);e.replace(r,a),e=e.remove("will"),e.replace("not "+a,a+" not")}else go(e,t),e=e.remove("will");return e},"present-progressive":jt,"past-progressive":(e,t)=>{let r=Es(e);return e.replace("(were|was)",r,Ea)},"future-progressive":e=>(e.match("will").insertBefore("is"),e.remove("be"),e.remove("will")),"present-perfect":(e,t)=>(go(e,t),e=e.remove("(have|had|has)"),e),"past-perfect":(e,t)=>{let n=oa(e).subject;return Cs(e)||n.has("i")?(e=nm(e,t),e.remove("had"),e):(e.replace("had","has",Ea),e)},"future-perfect":e=>(e.match("will").insertBefore("has"),e.remove("have").remove("will")),"present-perfect-progressive":jt,"past-perfect-progressive":e=>e.replace("had","has",Ea),"future-perfect-progressive":e=>(e.match("will").insertBefore("has"),e.remove("have").remove("will")),"passive-past":(e,t)=>{let r=Es(e);return e.has("(had|have|has)")&&e.has("been")?(e.replace("(had|have|has)",r,Ea),e.replace("been","being"),e):e.replace("(got|was|were)",r)},"passive-present":jt,"passive-future":e=>(e.replace("will","is"),e.replace("be","being")),"present-conditional":jt,"past-conditional":e=>(e.replace("been","be"),e.remove("have")),"auxiliary-future":(e,t)=>(tg(e,t),e.remove("(going|to)"),e),"auxiliary-past":(e,t)=>{if(t.auxiliary.has("did")){let r=ld(e);return e.replace(t.auxiliary,r),e}return tg(e,t),e.replace(t.auxiliary,"is"),e},"auxiliary-present":jt,"modal-infinitive":jt,"modal-past":(e,t)=>(IO(e,t),e.remove("have")),"gerund-phrase":(e,t)=>(t.root=t.root.not("#Gerund$"),go(e,t),e.remove("(will|have)")),"want-infinitive":(e,t)=>{let r="wants";return Cs(e)&&(r="want"),e.replace("(want|wanted|wants)",r,Ea),e.remove("will"),e}},zO=function(e,t,r){return rg.hasOwnProperty(r)&&(e=rg[r](e,t),e.fullSentence().compute(["tagger","chunks"])),e},Ow={tags:!0},Fu=(e,t)=>{const{toInfinitive:r}=e.methods.two.transform.verb,{root:n,auxiliary:a}=t;if(n.has("#Modal"))return e;let i=n.text("normal");return i=r(i,e.model,mn(n)),i&&(e=e.replace(n,i,Ow),e.not("#Particle").tag("Verb")),e.prepend("will").match("will").tag("Auxiliary"),e.remove(a),e},ng=(e,t)=>{const{conjugate:r,toInfinitive:n}=e.methods.two.transform.verb,{root:a,auxiliary:i}=t;let o=a.text("normal");return o=n(o,e.model,mn(a)),o&&(o=r(o,e.model).Gerund,e.replace(a,o,Ow),e.not("#Particle").tag("PresentTense")),e.remove(i),e.prepend("will be").match("will be").tag("Auxiliary"),e},ag={infinitive:Fu,"simple-present":Fu,"simple-past":Fu,"simple-future":jt,"present-progressive":ng,"past-progressive":ng,"future-progressive":jt,"present-perfect":e=>(e.match("(have|has)").replaceWith("will have"),e),"past-perfect":e=>e.replace("(had|has)","will have"),"future-perfect":jt,"present-perfect-progressive":e=>e.replace("has","will have"),"past-perfect-progressive":e=>e.replace("had","will have"),"future-perfect-progressive":jt,"passive-past":e=>e.has("got")?e.replace("got","will get"):e.has("(was|were)")?(e.replace("(was|were)","will be"),e.remove("being")):e.has("(have|has|had) been")?e.replace("(have|has|had) been","will be"):e,"passive-present":e=>(e.replace("being","will be"),e.remove("(is|are|am)"),e),"passive-future":jt,"present-conditional":e=>e.replace("would","will"),"past-conditional":e=>e.replace("would","will"),"auxiliary-future":jt,"auxiliary-past":e=>e.has("used")&&e.has("to")?(e.replace("used","will"),e.remove("to")):(e.replace("did","will"),e),"auxiliary-present":e=>e.replace("(do|does)","will"),"modal-infinitive":jt,"modal-past":jt,"gerund-phrase":(e,t)=>(t.root=t.root.not("#Gerund$"),Fu(e,t),e.remove("(had|have)")),"want-infinitive":e=>(e.replace("(want|wants|wanted)","will want"),e)},jO=function(e,t,r){return e.has("will")||e.has("going to")||ag.hasOwnProperty(r)&&(e=ag[r](e,t),e.fullSentence().compute(["tagger","chunks"])),e},qO={tags:!0},RO=function(e,t){const{toInfinitive:r,conjugate:n}=e.methods.two.transform.verb,{root:a,auxiliary:i}=t;if(e.has("#Gerund"))return e;let o=a.text("normal");o=r(o,e.model,mn(a));let s=n(o,e.model).Gerund;if(s){let u=Es(e);e.replace(a,s,qO),e.remove(i),e.prepend(u)}return e.replace("not is","is not"),e.replace("not are","are not"),e.fullSentence().compute(["tagger","chunks"]),e},ig={tags:!0},tf=function(e,t){let r=ld(e);return e.prepend(r+" not"),e},gl=function(e){let t=e.match("be");return t.found?(t.prepend("not"),e):(t=e.match("(is|was|am|are|will|were)"),t.found&&t.append("not"),e)},vl=e=>e.has("(is|was|am|are|will|were|be)"),og={"simple-present":(e,t)=>vl(e)===!0?gl(e):(e=nm(e,t),e=tf(e),e),"simple-past":(e,t)=>vl(e)===!0?gl(e):(e=nm(e,t),e.prepend("did not"),e),imperative:e=>(e.prepend("do not"),e),infinitive:(e,t)=>vl(e)===!0?gl(e):tf(e),"passive-past":e=>{if(e.has("got"))return e.replace("got","get",ig),e.prepend("did not"),e;let t=e.match("(was|were|had|have)");return t.found&&t.append("not"),e},"auxiliary-past":e=>{if(e.has("used"))return e.prepend("did not"),e;let t=e.match("(did|does|do)");return t.found&&t.append("not"),e},"want-infinitive":(e,t)=>(e=tf(e),e=e.replace("wants","want",ig),e)},LO=function(e,t,r){if(e.has("#Negative"))return e;if(og.hasOwnProperty(r))return e=og[r](e,t),e;let n=e.matchOne("be");return n.found?(n.prepend("not"),e):vl(e)===!0?gl(e):(n=e.matchOne("(will|had|have|has|did|does|do|#Modal)"),n.found&&n.append("not"),e)},HO=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Verbs"}parse(n){return this.getNth(n).map(qn)}json(n,a){return this.getNth(a).map(s=>{let u=s.toView().json(n)[0]||{};return u.verb=kO(s),u},[])}subjects(n){return this.getNth(n).map(a=>(qn(a),oa(a).subject))}adverbs(n){return this.getNth(n).map(a=>a.match("#Adverb"))}isSingular(n){return this.getNth(n).filter(a=>oa(a).plural!==!0)}isPlural(n){return this.getNth(n).filter(a=>oa(a).plural===!0)}isImperative(n){return this.getNth(n).filter(a=>a.has("#Imperative"))}toInfinitive(n){return this.getNth(n).map(a=>{let i=qn(a),o=Na(a,i);return $O(a,i,o.form)})}toPresentTense(n){return this.getNth(n).map(a=>{let i=qn(a),o=Na(a,i);return o.isInfinitive?a:zO(a,i,o.form)})}toPastTense(n){return this.getNth(n).map(a=>{let i=qn(a),o=Na(a,i);return o.isInfinitive?a:BO(a,i,o.form)})}toFutureTense(n){return this.getNth(n).map(a=>{let i=qn(a),o=Na(a,i);return o.isInfinitive?a:jO(a,i,o.form)})}toGerund(n){return this.getNth(n).map(a=>{let i=qn(a),o=Na(a,i);return o.isInfinitive?a:RO(a,i,o.form)})}toPastParticiple(n){return this.getNth(n).map(a=>{let i=qn(a),o=Na(a,i);return o.isInfinitive?a:_O(a,i,o.form)})}conjugate(n){const{conjugate:a,toInfinitive:i}=this.world.methods.two.transform.verb;return this.getNth(n).map(o=>{let s=qn(o),u=Na(o,s);u.form==="imperative"&&(u.form="simple-present");let l=s.root.text("normal");if(!s.root.has("#Infinitive")){let c=mn(s.root);l=i(l,o.model,c)||l}return a(l,o.model)},[])}isNegative(){return this.if("#Negative")}isPositive(){return this.ifNo("#Negative")}toPositive(){let n=this.match("do not #Verb");return n.found&&n.remove("do not"),this.remove("#Negative")}toNegative(n){return this.getNth(n).map(a=>{let i=qn(a),o=Na(a,i);return LO(a,i,o.form)})}update(n){let a=new t(this.document,n);return a._cache=this._cache,a}}t.prototype.toPast=t.prototype.toPastTense,t.prototype.toPresent=t.prototype.toPresentTense,t.prototype.toFuture=t.prototype.toFutureTense,e.prototype.verbs=function(r){let n=gO(this);return n=n.getNth(r),new t(this.document,n.pointer)}},GO={api:HO},om=function(e,t){let r=t.match(e);if(r.found){let n=r.pronouns().refersTo();if(n.found)return n}return t.none()},sg=function(e){if(!e.found)return e;let[t]=e.fullPointer[0];return t&&t>0?e.update([[t-1]]):e.none()},VO=function(e,t){return t==="m"?e.filter(r=>!r.presumedFemale().found):t==="f"?e.filter(r=>!r.presumedMale().found):e},ug=function(e,t){let r=e.people();return r=VO(r,t),r.found||(r=e.nouns("#Actor"),r.found)?r.last():t==="f"?om("(she|her|hers)",e):t==="m"?om("(he|him|his)",e):e.none()},UO=function(e){let t=e.nouns(),r=t.isPlural().notIf("#Pronoun");if(r.found)return r.last();let n=om("(they|their|theirs)",e);return n.found?n:(r=t.match("(somebody|nobody|everybody|anybody|someone|noone|everyone|anyone)"),r.found?r.last():e.none())},WO=function(e,t){if(t&&t.found){let r=e.docs[0][0];r.reference=t.ptrs[0]}},rf=function(e,t){let r=e.before(),n=t(r);return n.found||(r=sg(e),n=t(r),n.found)||(r=sg(r),n=t(r),n.found)?n:e.none()},JO=function(e){e.pronouns().if("(he|him|his|she|her|hers|they|their|theirs|it|its)").forEach(r=>{let n=null;r.has("(he|him|his)")?n=rf(r,a=>ug(a,"m")):r.has("(she|her|hers)")?n=rf(r,a=>ug(a,"f")):r.has("(they|their|theirs)")&&(n=rf(r,UO)),n&&n.found&&WO(r,n)})},KO=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.viewType="Pronouns"}hasReference(){return this.compute("coreference"),this.filter(n=>n.docs[0][0].reference)}refersTo(){return this.compute("coreference"),this.map(n=>{if(!n.found)return n.none();let a=n.docs[0][0];return a.reference?n.update([a.reference]):n.none()})}update(n){let a=new t(this.document,n);return a._cache=this._cache,a}}e.prototype.pronouns=function(r){let n=this.match("#Pronoun");return n=n.getNth(r),new t(n.document,n.pointer)}},YO={compute:{coreference:JO},api:KO};tt.plugin(mP);tt.plugin(pP);tt.plugin(FP);tt.plugin(YO);tt.plugin(KP);tt.plugin(XP);tt.plugin(dk);tt.plugin(Lk);tt.plugin(Vk);tt.plugin(iO);tt.plugin(pO);tt.plugin(GO);const ZO=function(e){let t=null;return e.has("^(between|within) #Date")||(e.has("#Month")&&(t=e.match("[#Month #Value] and? #Month",0).ifNo("@hasDash$"),t.found&&(e=e.splitAfter(t)),t=e.match("[#Value #Month] and? #Value #Month",0),t.found&&(e=e.splitAfter(t)),t=e.match("^[#Month] and? #Month #Ordinal?$",0),t.found&&(e=e.splitAfter(t)),t=e.match("[#Month #Value] #Month",0).ifNo("@hasDash$"),t.found&&(e=e.splitAfter(t))),e.has("#WeekDay")&&(t=e.match("^[#WeekDay] and? #WeekDay$",0).ifNo("@hasDash$"),t.found&&(e=e.splitAfter(t)),t=e.match("#WeekDay #WeekDay and? #WeekDay"),t.found&&(e=e.splitOn("#WeekDay")),t=e.match("[#WeekDay] (and|or|this|next)? #WeekDay",0).ifNo("@hasDash$"),t.found&&(e=e.splitAfter("#WeekDay"))),t=e.match("(this|next) #Duration [(today|tomorrow|yesterday)]",0),t.found&&(e=e.splitBefore(t)),t=e.match("[(today|tomorrow|yesterday)] #Value #Month",0),t.found&&(e=e.splitAfter(t)),t=e.match("[(today|tomorrow|yesterday)] (today|tomorrow|yesterday|#WeekDay)",0).ifNo("@hasDash$"),t.found&&(e=e.splitAfter(t)),t=e.match("#Year [and] #Year",0),t.found&&(e=e.splitAfter(t)),e=e.not("^and"),e=e.not("and$")),e},QO=function(e){let t=e.match("#Date+");t=t.filter(n=>{let a=n.has("^#Duration+$")||n.has("^#Value #Duration+$");return a===!0&&n.has("(#FinancialQuarter|quarter)")?!0:a===!1});let r=t.match("[#Cardinal #Duration (in|on|this|next|during|for)] #Date",0);return r.found&&(t=t.not(r)),r=t.match("[#Cardinal #Duration] #WeekDay",0),r.found&&(t=t.not(r)),r=t.match("#Date [for #Value #Duration]$",0),r.found&&(t=t.not(r)),r=t.match("[#Cardinal #Duration] #Date",0),r.found&&!t.has("#Cardinal #Duration] (ago|from|before|after|back)")&&(t=t.not(r)),r=t.match("for #Cardinal #Duration"),r.found&&(t=t.not(r)),t=t.notIf("^one (#WeekDay|#Month)$"),t=ZO(t),t=t.notIf("(#Money|#Percentage)"),t=t.notIf("^per #Duration"),t},XO={second:!0,minute:!0,hour:!0,day:!0,week:!0,weekend:!0,month:!0,season:!0,quarter:!0,year:!0},lg={wk:"week",min:"minute",sec:"second",weekend:"week"},nf=function(e){let t=e.match("#Duration").text("normal");return t=t.replace(/s$/,""),lg.hasOwnProperty(t)&&(t=lg[t]),t},e$=function(e){let t={},r=e.none(),n=e.match("#DateShift+");if(n.found===!1)return{res:t,m:r};if(n.match("#Cardinal #Duration").forEach(a=>{let i=a.match("#Cardinal").numbers().get()[0];if(i&&typeof i=="number"){let o=nf(a);XO[o]===!0&&(t[o]=i)}}),n.has("(before|ago|hence|back)$")===!0&&Object.keys(t).forEach(a=>t[a]*=-1),r=n.match("#Cardinal #Duration"),n=n.not(r),r=n.match("[<unit>#Duration] [<dir>(after|before)]"),r.found){let a=r.groups("unit").text("reduced"),i=r.groups("dir").text("reduced");i==="after"?t[a]=1:i==="before"&&(t[a]=-1)}if(r=n.match("half (a|an) [#Duration]",0),r.found){let a=nf(r);t[a]=.5}if(r=n.match("a (few|couple) [#Duration]",0),r.found){let a=nf(r);t[a]=r.has("few")?3:2}return r=e.match("#DateShift+"),{result:t,m:r}},t$={minute:!0},r$=function(e){let t=e.match("[<num>#Value] [<unit>#Duration+] (of|in)");if(t.found){let r=t.groups(),n=r.num.numbers().get()[0],a=r.unit.text("reduced"),i={unit:a,num:Number(n)||0};return t$[a]||(i.num-=1),{result:i,m:t}}if(t=e.match("[<dir>(first|initial|last|final)] [<unit>#Duration+] (of|in)"),t.found){let r=t.groups(),n=r.dir.text("reduced"),a=r.unit.text("reduced");return n==="initial"&&(n="first"),n==="final"&&(n="last"),{result:{unit:a,dir:n},m:t}}return{result:null,m:e.none()}},n$=3600*1e3,cg=(e,t,r)=>{const[n,a]=e.split("/"),[i,o]=a.split(":");return Date.UTC(r,n-1,i,o)-t*n$},$w=(e,t,r,n,a)=>{const i=new Date(e).getUTCFullYear(),o=cg(t,a,i),s=cg(r,n,i);return e>=o&&e<s},a$=e=>{let r=e.timezones[e.tz];if(r===void 0)return console.warn("Warning: couldn't find timezone "+e.tz),0;if(r.dst===void 0)return r.offset;let n=r.offset,a=r.offset+1;r.hem==="n"&&(a=n-1);let i=r.dst.split("->");return $w(e.epoch,i[0],i[1],n,a)===!0?n:a},fg={"9|s":"2/dili,2/jayapura","9|n":"2/chita,2/khandyga,2/pyongyang,2/seoul,2/tokyo,2/yakutsk,11/palau,japan,rok","9.5|s|04/06:03->10/05:04":"4/adelaide,4/broken_hill,4/south,4/yancowinna","9.5|s":"4/darwin,4/north","8|s|03/13:01->10/02:00":"12/casey","8|s":"2/kuala_lumpur,2/makassar,2/singapore,4/perth,2/ujung_pandang,4/west,singapore","8|n":"2/brunei,2/hong_kong,2/irkutsk,2/kuching,2/macau,2/manila,2/shanghai,2/taipei,2/ulaanbaatar,2/chongqing,2/chungking,2/harbin,2/macao,2/ulan_bator,2/choibalsan,hongkong,prc,roc","8.75|s":"4/eucla","7|s":"12/davis,2/jakarta,9/christmas","7|n":"2/bangkok,2/barnaul,2/hovd,2/krasnoyarsk,2/novokuznetsk,2/novosibirsk,2/phnom_penh,2/pontianak,2/ho_chi_minh,2/tomsk,2/vientiane,2/saigon","6|s":"12/vostok","6|n":"2/almaty,2/bishkek,2/dhaka,2/omsk,2/qyzylorda,2/qostanay,2/thimphu,2/urumqi,9/chagos,2/dacca,2/kashgar,2/thimbu","6.5|n":"2/yangon,9/cocos,2/rangoon","5|s":"12/mawson,9/kerguelen","5|n":"2/aqtau,2/aqtobe,2/ashgabat,2/atyrau,2/dushanbe,2/karachi,2/oral,2/samarkand,2/tashkent,2/yekaterinburg,9/maldives,2/ashkhabad","5.75|n":"2/kathmandu,2/katmandu","5.5|n":"2/kolkata,2/colombo,2/calcutta","4|s":"9/reunion","4|n":"2/baku,2/dubai,2/muscat,2/tbilisi,2/yerevan,8/astrakhan,8/samara,8/saratov,8/ulyanovsk,8/volgograd,9/mahe,9/mauritius,2/volgograd","4.5|n":"2/kabul","3|s":"12/syowa,9/antananarivo","3|n|04/25:02->10/30:24":"0/cairo,egypt","3|n|04/12:04->10/25:02":"2/gaza,2/hebron","3|n|03/30:05->10/26:04":"2/famagusta,2/nicosia,8/athens,8/bucharest,8/helsinki,8/kyiv,8/mariehamn,8/riga,8/sofia,8/tallinn,8/uzhgorod,8/vilnius,8/zaporozhye,8/nicosia,8/kiev,eet","3|n|03/30:04->10/26:03":"8/chisinau,8/tiraspol","3|n|03/30:02->10/25:24":"2/beirut","3|n|03/28:04->10/26:02":"2/jerusalem,2/tel_aviv,israel","3|n":"0/addis_ababa,0/asmara,0/asmera,0/dar_es_salaam,0/djibouti,0/juba,0/kampala,0/mogadishu,0/nairobi,2/aden,2/amman,2/baghdad,2/bahrain,2/damascus,2/kuwait,2/qatar,2/riyadh,8/istanbul,8/kirov,8/minsk,8/moscow,8/simferopol,9/comoro,9/mayotte,2/istanbul,turkey,w-su","3.5|n":"2/tehran,iran","2|s|03/30:04->10/26:02":"12/troll","2|s":"0/gaborone,0/harare,0/johannesburg,0/lubumbashi,0/lusaka,0/maputo,0/maseru,0/mbabane","2|n|03/30:04->10/26:03":"0/ceuta,arctic/longyearbyen,8/amsterdam,8/andorra,8/belgrade,8/berlin,8/bratislava,8/brussels,8/budapest,8/busingen,8/copenhagen,8/gibraltar,8/ljubljana,8/luxembourg,8/madrid,8/malta,8/monaco,8/oslo,8/paris,8/podgorica,8/prague,8/rome,8/san_marino,8/sarajevo,8/skopje,8/stockholm,8/tirane,8/vaduz,8/vatican,8/vienna,8/warsaw,8/zagreb,8/zurich,3/jan_mayen,poland,cet,met","2|n":"0/blantyre,0/bujumbura,0/khartoum,0/kigali,0/tripoli,8/kaliningrad,libya","1|s":"0/brazzaville,0/kinshasa,0/luanda,0/windhoek","1|n|03/30:03->10/26:02":"3/canary,3/faroe,3/madeira,8/dublin,8/guernsey,8/isle_of_man,8/jersey,8/lisbon,8/london,3/faeroe,eire,8/belfast,gb-eire,gb,portugal,wet","1|n":"0/algiers,0/bangui,0/douala,0/lagos,0/libreville,0/malabo,0/ndjamena,0/niamey,0/porto-novo,0/tunis","14|n":"11/kiritimati","13|s":"11/apia,11/tongatapu","13|n":"11/enderbury,11/kanton,11/fakaofo","12|s|04/06:03->09/28:04":"12/mcmurdo,11/auckland,12/south_pole,nz","12|s":"11/fiji","12|n":"2/anadyr,2/kamchatka,2/srednekolymsk,11/funafuti,11/kwajalein,11/majuro,11/nauru,11/tarawa,11/wake,11/wallis,kwajalein","12.75|s|04/06:03->04/06:02":"11/chatham,nz-chat","11|s|04/06:03->10/05:04":"12/macquarie","11|s":"11/bougainville","11|n":"2/magadan,2/sakhalin,11/efate,11/guadalcanal,11/kosrae,11/noumea,11/pohnpei,11/ponape","11.5|n|04/06:03->10/05:04":"11/norfolk","10|s|04/06:03->10/05:04":"4/currie,4/hobart,4/melbourne,4/sydney,4/act,4/canberra,4/nsw,4/tasmania,4/victoria","10|s":"12/dumontdurville,4/brisbane,4/lindeman,11/port_moresby,4/queensland","10|n":"2/ust-nera,2/vladivostok,11/guam,11/saipan,11/chuuk,11/truk,11/yap","10.5|s|04/06:01->10/05:02":"4/lord_howe,4/lhi","0|s|02/23:03->04/06:04":"0/casablanca,0/el_aaiun","0|n|03/30:02->10/26:01":"3/azores","0|n|03/30:01->10/25:24":"1/scoresbysund","0|n":"0/abidjan,0/accra,0/bamako,0/banjul,0/bissau,0/conakry,0/dakar,0/freetown,0/lome,0/monrovia,0/nouakchott,0/ouagadougou,0/sao_tome,1/danmarkshavn,3/reykjavik,3/st_helena,13/gmt,13/utc,0/timbuktu,13/greenwich,13/uct,13/universal,13/zulu,gmt-0,gmt+0,gmt0,greenwich,iceland,uct,universal,utc,zulu,13/unknown,factory","-9|n|03/09:04->11/02:02":"1/adak,1/atka,us/aleutian","-9|n":"11/gambier","-9.5|n":"11/marquesas","-8|n|03/09:04->11/02:02":"1/anchorage,1/juneau,1/metlakatla,1/nome,1/sitka,1/yakutat,us/alaska","-8|n":"11/pitcairn","-7|n|03/09:04->11/02:02":"1/los_angeles,1/santa_isabel,1/tijuana,1/vancouver,1/ensenada,6/pacific,10/bajanorte,us/pacific-new,us/pacific","-7|n":"1/creston,1/dawson,1/dawson_creek,1/fort_nelson,1/hermosillo,1/mazatlan,1/phoenix,1/whitehorse,6/yukon,10/bajasur,us/arizona,mst","-6|s|04/05:22->09/06:24":"11/easter,7/easterisland","-6|n|04/07:02->10/27:02":"1/merida","-6|n|03/09:04->11/02:02":"1/boise,1/cambridge_bay,1/denver,1/edmonton,1/inuvik,1/north_dakota,1/ojinaga,1/ciudad_juarez,1/yellowknife,1/shiprock,6/mountain,navajo,us/mountain","-6|n":"1/bahia_banderas,1/belize,1/chihuahua,1/costa_rica,1/el_salvador,1/guatemala,1/managua,1/mexico_city,1/monterrey,1/regina,1/swift_current,1/tegucigalpa,11/galapagos,6/east-saskatchewan,6/saskatchewan,10/general","-5|s":"1/lima,1/rio_branco,1/porto_acre,5/acre","-5|n|03/09:04->11/02:02":"1/chicago,1/matamoros,1/menominee,1/rainy_river,1/rankin_inlet,1/resolute,1/winnipeg,1/indiana/knox,1/indiana/tell_city,1/north_dakota/beulah,1/north_dakota/center,1/north_dakota/new_salem,1/knox_in,6/central,us/central,us/indiana-starke","-5|n":"1/bogota,1/cancun,1/cayman,1/coral_harbour,1/eirunepe,1/guayaquil,1/jamaica,1/panama,1/atikokan,jamaica,est","-4|s|04/05:24->09/07:02":"1/santiago,7/continental","-4|s|03/22:24->10/05:02":"1/asuncion","-4|s":"1/campo_grande,1/cuiaba,1/la_paz,1/manaus,5/west","-4|n|03/09:04->11/02:02":"1/detroit,1/grand_turk,1/indiana,1/indianapolis,1/iqaluit,1/kentucky,1/louisville,1/montreal,1/nassau,1/new_york,1/nipigon,1/pangnirtung,1/port-au-prince,1/thunder_bay,1/toronto,1/indiana/marengo,1/indiana/petersburg,1/indiana/vevay,1/indiana/vincennes,1/indiana/winamac,1/kentucky/monticello,1/fort_wayne,1/indiana/indianapolis,1/kentucky/louisville,6/eastern,us/east-indiana,us/eastern,us/michigan","-4|n|03/09:02->11/02:01":"1/havana,cuba","-4|n":"1/anguilla,1/antigua,1/aruba,1/barbados,1/blanc-sablon,1/boa_vista,1/caracas,1/curacao,1/dominica,1/grenada,1/guadeloupe,1/guyana,1/kralendijk,1/lower_princes,1/marigot,1/martinique,1/montserrat,1/port_of_spain,1/porto_velho,1/puerto_rico,1/santo_domingo,1/st_barthelemy,1/st_kitts,1/st_lucia,1/st_thomas,1/st_vincent,1/tortola,1/virgin","-3|s":"1/argentina,1/buenos_aires,1/catamarca,1/cordoba,1/fortaleza,1/jujuy,1/mendoza,1/montevideo,1/punta_arenas,1/sao_paulo,12/palmer,12/rothera,3/stanley,1/argentina/la_rioja,1/argentina/rio_gallegos,1/argentina/salta,1/argentina/san_juan,1/argentina/san_luis,1/argentina/tucuman,1/argentina/ushuaia,1/argentina/comodrivadavia,1/argentina/buenos_aires,1/argentina/catamarca,1/argentina/cordoba,1/argentina/jujuy,1/argentina/mendoza,1/argentina/rosario,1/rosario,5/east","-3|n|03/09:04->11/02:02":"1/glace_bay,1/goose_bay,1/halifax,1/moncton,1/thule,3/bermuda,6/atlantic","-3|n":"1/araguaina,1/bahia,1/belem,1/cayenne,1/maceio,1/paramaribo,1/recife,1/santarem","-2|n|03/09:04->11/02:02":"1/miquelon","-2|n":"1/noronha,3/south_georgia,5/denoronha","-2.5|n|03/09:04->11/02:02":"1/st_johns,6/newfoundland","-1|n|03/30:01->10/25:24":"1/nuuk,1/godthab","-1|n":"3/cape_verde","-11|n":"11/midway,11/niue,11/pago_pago,11/samoa,us/samoa","-10|n":"11/honolulu,11/johnston,11/rarotonga,11/tahiti,us/hawaii,hst"},i$=["africa","america","asia","atlantic","australia","brazil","canada","chile","europe","indian","mexico","pacific","antarctica","etc"];let qo={};Object.keys(fg).forEach(e=>{let t=e.split("|"),r={offset:Number(t[0]),hem:t[1]};t[2]&&(r.dst=t[2]),fg[e].split(",").forEach(a=>{a=a.replace(/(^[0-9]+)\//,(i,o)=>(o=Number(o),i$[o]+"/")),qo[a]=r})});qo.utc={offset:0,hem:"n"};for(let e=-14;e<=14;e+=.5){let t=e;t>0&&(t="+"+t);let r="etc/gmt"+t;qo[r]={offset:e*-1,hem:"n"},r="utc/gmt"+t,qo[r]={offset:e*-1,hem:"n"}}const o$="utc",s$=()=>{if(typeof Intl>"u"||typeof Intl.DateTimeFormat>"u")return null;let e=Intl.DateTimeFormat();if(typeof e>"u"||typeof e.resolvedOptions>"u")return null;let t=e.resolvedOptions().timeZone;return t?t.toLowerCase():null},u$=()=>{let e=s$();return e===null?o$:e},l$=/(-?[0-9]+)h(rs)?/i,c$=/(-?[0-9]+)/,f$=/utc([\-+]?[0-9]+)/i,m$=/gmt([\-+]?[0-9]+)/i,Pu=function(e){return e=Number(e),e>=-13&&e<=13?(e=e*-1,e=(e>0?"+":"")+e,"etc/gmt"+e):null},d$=function(e){let t=e.match(l$);if(t!==null||(t=e.match(f$),t!==null))return Pu(t[1]);if(t=e.match(m$),t!==null){let r=Number(t[1])*-1;return Pu(r)}return t=e.match(c$),t!==null?Pu(t[1]):null};let ku=u$();const mg=Object.keys(qo).reduce((e,t)=>{let r=t.split("/")[1]||"";return r=r.replace(/_/g," "),e[r]=t,e},{}),h$=e=>(e=e.replace(/ time/g,""),e=e.replace(/ (standard|daylight|summer)/g,""),e=e.replace(/\b(east|west|north|south)ern/g,"$1"),e=e.replace(/\b(africa|america|australia)n/g,"$1"),e=e.replace(/\beuropean/g,"europe"),e=e.replace(/islands/g,"island"),e),kl=(e,t)=>{if(!e)return t.hasOwnProperty(ku)||(console.warn(`Unrecognized IANA id '${ku}'. Setting fallback tz to UTC.`),ku="utc"),ku;typeof e!="string"&&console.error("Timezone must be a string - recieved: '",e,`'
|
|
14
|
-
`);let r=e.trim();if(r=r.toLowerCase(),t.hasOwnProperty(r)===!0||(r=h$(r),t.hasOwnProperty(r)===!0))return r;if(mg.hasOwnProperty(r)===!0)return mg[r];if(/[0-9]/.test(r)===!0){let n=d$(r);if(n)return n}throw new Error("Spacetime: Cannot find timezone named: '"+e+"'. Please enter an IANA timezone id.")};function Ks(e){return e%4===0&&e%100!==0||e%400===0}function Bw(e){return Object.prototype.toString.call(e)==="[object Date]"&&!isNaN(e.valueOf())}function p$(e){return Object.prototype.toString.call(e)==="[object Array]"}function Za(e){return Object.prototype.toString.call(e)==="[object Object]"}function g$(e){return Object.prototype.toString.call(e)==="[object Boolean]"}function Ke(e,t=2){let r="0";return e=e+"",e.length>=t?e:new Array(t-e.length+1).join(r)+e}function v$(e){return e?e[0].toUpperCase()+e.substr(1):""}function ya(e){let t=e%10,r=e%100;return t===1&&r!==11?e+"st":t===2&&r!==12?e+"nd":t===3&&r!==13?e+"rd":e+"th"}function Bo(e){return e=String(e),e=e.replace(/([0-9])(st|nd|rd|th)$/i,"$1"),parseInt(e,10)}function Qi(e=""){return e=e.toLowerCase().trim(),e=e.replace(/ies$/,"y"),e=e.replace(/s$/,""),e=e.replace(/-/g,""),e==="day"||e==="days"?"date":e==="min"||e==="mins"?"minute":e}function ps(e){return typeof e=="number"?e:Bw(e)?e.getTime():e.epoch||e.epoch===0?e.epoch:null}function Oi(e,t){return Za(e)===!1?t.clone().set(e):e}function Ds(e,t=""){const r=e>0?"+":"-",n=Math.abs(e),a=Ke(parseInt(""+n,10)),i=Ke(n%1*60);return`${r}${a}${t}${i}`}const sm={year:new Date().getFullYear(),month:0,date:1},y$=(e,t,r)=>{if(t.length===0)return e;let n=["year","month","date","hour","minute","second","millisecond"];for(let a=0;a<n.length;a++){let i=t[a]||r[n[a]]||sm[n[a]]||0;e=e[n[a]](i)}return e},b$=(e,t,r)=>{if(Object.keys(t).length===0)return e;t=Object.assign({},sm,r,t);let n=Object.keys(t);for(let a=0;a<n.length;a++){let i=n[a];if(e[i]===void 0||typeof e[i]!="function"||t[i]===null||t[i]===void 0||t[i]==="")continue;let o=t[i]||r[i]||sm[i]||0;e=e[i](o)}return e},w$=function(e,t){return t>0&&t<25e8&&e.silent===!1&&(console.warn(" - Warning: You are setting the date to January 1970."),console.warn(" - did input seconds instead of milliseconds?")),e.epoch=t,e},x$={parseArray:y$,parseObject:b$,parseNumber:w$},Si=function(e){return e.epoch=Date.now(),Object.keys(e._today||{}).forEach(t=>{typeof e[t]=="function"&&(e=e[t](e._today[t]))}),e},Ol={now:e=>Si(e),today:e=>Si(e),tonight:e=>(e=Si(e),e=e.hour(18),e),tomorrow:e=>(e=Si(e),e=e.add(1,"day"),e=e.startOf("day"),e),yesterday:e=>(e=Si(e),e=e.subtract(1,"day"),e=e.startOf("day"),e),christmas:e=>{let t=Si(e).year();return e=e.set([t,11,25,18,0,0]),e},"new years":e=>{let t=Si(e).year();return e=e.set([t,11,31,18,0,0]),e}};Ol["new years eve"]=Ol["new years"];const D$=function(e){return e=e.replace(/\b(mon|tues?|wed|wednes|thur?s?|fri|sat|satur|sun)(day)?\b/i,""),e=e.replace(/([0-9])(th|rd|st|nd)/,"$1"),e=e.replace(/,/g,""),e=e.replace(/ +/g," ").trim(),e};let Dt={millisecond:1};Dt.second=1e3;Dt.minute=6e4;Dt.hour=36e5;Dt.day=864e5;Dt.date=Dt.day;Dt.month=864e5*29.5;Dt.week=6048e5;Dt.year=3154e7;Object.keys(Dt).forEach(e=>{Dt[e+"s"]=Dt[e]});const Ou=(e,t,r,n,a)=>{let i=e.d[r]();if(i===t)return;let o=a===null?null:e.d[a](),s=e.epoch,u=t-i;e.epoch+=Dt[n]*u,n==="day"&&Math.abs(u)>28&&t<28&&(e.epoch+=Dt.hour),a!==null&&o!==e.d[a]()&&(e.epoch=s);const l=Dt[n]/2;for(;e.d[r]()<t;)e.epoch+=l;for(;e.d[r]()>t;)e.epoch-=l;a!==null&&o!==e.d[a]()&&(e.epoch=s)},af={year:{valid:e=>e>-4e3&&e<4e3,walkTo:(e,t)=>Ou(e,t,"getFullYear","year",null)},month:{valid:e=>e>=0&&e<=11,walkTo:(e,t)=>{let r=e.d,n=r.getMonth(),a=e.epoch,i=r.getFullYear();if(n===t)return;let o=t-n;for(e.epoch+=Dt.day*(o*28),i!==e.d.getFullYear()&&(e.epoch=a);e.d.getMonth()<t;)e.epoch+=Dt.day;for(;e.d.getMonth()>t;)e.epoch-=Dt.day}},date:{valid:e=>e>0&&e<=31,walkTo:(e,t)=>Ou(e,t,"getDate","day","getMonth")},hour:{valid:e=>e>=0&&e<24,walkTo:(e,t)=>Ou(e,t,"getHours","hour","getDate")},minute:{valid:e=>e>=0&&e<60,walkTo:(e,t)=>Ou(e,t,"getMinutes","minute","getHours")},second:{valid:e=>e>=0&&e<60,walkTo:(e,t)=>{e.epoch=e.seconds(t).epoch}},millisecond:{valid:e=>e>=0&&e<1e3,walkTo:(e,t)=>{e.epoch=e.milliseconds(t).epoch}}},yt=(e,t)=>{let r=Object.keys(af),n=e.clone();for(let a=0;a<r.length;a++){let i=r[a],o=t[i];if(o===void 0&&(o=n[i]()),typeof o=="string"&&(o=parseInt(o,10)),!af[i].valid(o)){e.epoch=null,e.silent===!1&&console.warn("invalid "+i+": "+o);return}af[i].walkTo(e,o)}},Vi=[31,28,31,30,31,30,31,31,30,31,30,31];let Bs=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],_s=["january","february","march","april","may","june","july","august","september","october","november","december"];function N$(){const e={sep:8};for(let t=0;t<Bs.length;t++)e[Bs[t]]=t;for(let t=0;t<_s.length;t++)e[_s[t]]=t;return e}function gs(){return Bs}function A$(){return _s}function _w(){return N$()}function C$(e){Bs=e.short||Bs,_s=e.long||_s}const Iw=(e,t)=>{if(!t)return e;t=t.trim().toLowerCase();let r=0;if(/^[+-]?[0-9]{2}:[0-9]{2}$/.test(t)&&(/:00/.test(t)===!0&&(t=t.replace(/:00/,"")),/:30/.test(t)===!0&&(t=t.replace(/:30/,".5"))),/^[+-]?[0-9]{4}$/.test(t)&&(t=t.replace(/30$/,".5")),r=parseFloat(t),Math.abs(r)>100&&(r=r/100),r===0||t==="Z"||t==="z")return e.tz="etc/gmt",e;r*=-1,r>=0&&(r="+"+r);let n="etc/gmt"+r;return e.timezones[n]&&(e.tz=n),e},E$=function(e=""){return e=String(e),e.length>3?e=e.substring(0,3):e.length===1?e=e+"00":e.length===2&&(e=e+"0"),Number(e)||0},Rr=(e,t="")=>{t=t.replace(/^\s+/,"").toLowerCase();let r=t.match(/([0-9]{1,2}):([0-9]{1,2}):?([0-9]{1,2})?[:.]?([0-9]{1,4})?/);if(r!==null){let[,n,a,i,o]=r;if(n=Number(n),n<0||n>24||(a=Number(a),r[2].length<2||a<0||a>59))return e.startOf("day");e=e.hour(n),e=e.minute(a),e=e.seconds(i||0),e=e.millisecond(E$(o));let s=t.match(/[0-9] ?(am|pm)\b/);return s!==null&&s[1]&&(e=e.ampm(s[1])),e}if(r=t.match(/([0-9]+) ?(am|pm)/),r!==null&&r[1]){let n=Number(r[1]);return n>12||n<1?e.startOf("day"):(e=e.hour(r[1]||0),e=e.ampm(r[2]),e=e.startOf("hour"),e)}return e=e.startOf("day"),e};let dg=_w();const Lr=e=>{if(Vi.hasOwnProperty(e.month)!==!0)return!1;if(e.month===1)return Ks(e.year)&&e.date<=29?!0:e.date<=28;let t=Vi[e.month]||0;return e.date<=t},Ma=(e="",t)=>{if(e=e.trim(),/^'[0-9][0-9]$/.test(e)===!0){let n=Number(e.replace(/'/,""));return n>50?1900+n:2e3+n}let r=parseInt(e,10);return!r&&t&&(r=t.year),r=r||new Date().getFullYear(),r},ai=function(e){return e=e.toLowerCase().trim(),e==="sept"?dg.sep:dg[e]},S$=[{reg:/^(-?0{0,2}[0-9]{3,4})-([0-9]{1,2})-([0-9]{1,2})[T| ]([0-9.:]+)(Z|[0-9-+:]+)?$/i,parse:(e,t)=>{let r={year:t[1],month:parseInt(t[2],10)-1,date:t[3]};return Lr(r)===!1?(e.epoch=null,e):(Iw(e,t[5]),yt(e,r),e=Rr(e,t[4]),e)}},{reg:/^([0-9]{4})[\-/. ]([0-9]{1,2})[\-/. ]([0-9]{1,2})( [0-9]{1,2}(:[0-9]{0,2})?(:[0-9]{0,3})? ?(am|pm)?)?$/i,parse:(e,t)=>{let r={year:t[1],month:parseInt(t[2],10)-1,date:parseInt(t[3],10)};return r.month>=12&&(r.date=parseInt(t[2],10),r.month=parseInt(t[3],10)-1),Lr(r)===!1?(e.epoch=null,e):(yt(e,r),e=Rr(e,t[4]),e)}},{reg:/^([0-9]{4})[\-/. ]([a-z]+)[\-/. ]([0-9]{1,2})( [0-9]{1,2}(:[0-9]{0,2})?(:[0-9]{0,3})? ?(am|pm)?)?$/i,parse:(e,t)=>{let r={year:Ma(t[1],e._today),month:ai(t[2]),date:Bo(t[3]||"")};return Lr(r)===!1?(e.epoch=null,e):(yt(e,r),e=Rr(e,t[4]),e)}}],T$=[{reg:/^([0-9]{1,2})[-/.]([0-9]{1,2})[\-/.]?([0-9]{4})?( [0-9]{1,2}:[0-9]{2}:?[0-9]{0,2} ?(am|pm|gmt))?$/i,parse:(e,t)=>{let r=parseInt(t[1],10)-1,n=parseInt(t[2],10);(e.british||r>=12)&&(n=parseInt(t[1],10),r=parseInt(t[2],10)-1);let a={date:n,month:r,year:Ma(t[3],e._today)||new Date().getFullYear()};return Lr(a)===!1?(e.epoch=null,e):(yt(e,a),e=Rr(e,t[4]),e)}},{reg:/^([a-z]+)[\-/. ]([0-9]{1,2})[\-/. ]?([0-9]{4}|'[0-9]{2})?( [0-9]{1,2}(:[0-9]{0,2})?(:[0-9]{0,3})? ?(am|pm)?)?$/i,parse:(e,t)=>{let r={year:Ma(t[3],e._today),month:ai(t[1]),date:Bo(t[2]||"")};return Lr(r)===!1?(e.epoch=null,e):(yt(e,r),e=Rr(e,t[4]),e)}},{reg:/^([a-z]+) ([0-9]{1,2})( [0-9]{4})?( ([0-9:]+( ?am| ?pm| ?gmt)?))?$/i,parse:(e,t)=>{let r={year:Ma(t[3],e._today),month:ai(t[1]),date:Bo(t[2]||"")};return Lr(r)===!1?(e.epoch=null,e):(yt(e,r),e=Rr(e,t[4]),e)}},{reg:/^([a-z]+) ([0-9]{1,2}) ([0-9]{1,2}:[0-9]{2}:?[0-9]{0,2})( \+[0-9]{4})?( [0-9]{4})?$/i,parse:(e,t)=>{let[,r,n,a,i,o]=t,s={year:Ma(o,e._today),month:ai(r),date:Bo(n||"")};return Lr(s)===!1?(e.epoch=null,e):(yt(e,s),e=Iw(e,i),e=Rr(e,a),e)}}],M$=[{reg:/^([0-9]{1,2})[-/]([a-z]+)[\-/]?([0-9]{4})?$/i,parse:(e,t)=>{let r={year:Ma(t[3],e._today),month:ai(t[2]),date:Bo(t[1]||"")};return Lr(r)===!1?(e.epoch=null,e):(yt(e,r),e=Rr(e,t[4]),e)}},{reg:/^([0-9]{1,2})( [a-z]+)( [0-9]{4}| '[0-9]{2})? ?([0-9]{1,2}:[0-9]{2}:?[0-9]{0,2} ?(am|pm|gmt))?$/i,parse:(e,t)=>{let r={year:Ma(t[3],e._today),month:ai(t[2]),date:Bo(t[1])};return!r.month||Lr(r)===!1?(e.epoch=null,e):(yt(e,r),e=Rr(e,t[4]),e)}},{reg:/^([0-9]{1,2})[. \-/]([a-z]+)[. \-/]([0-9]{4})?( [0-9]{1,2}(:[0-9]{0,2})?(:[0-9]{0,3})? ?(am|pm)?)?$/i,parse:(e,t)=>{let r={date:Number(t[1]),month:ai(t[2]),year:Number(t[3])};return Lr(r)===!1?(e.epoch=null,e):(yt(e,r),e=e.startOf("day"),e=Rr(e,t[4]),e)}}],F$=[{reg:/^([0-9]{4})[\-/]([0-9]{2})$/,parse:(e,t)=>{let r={year:t[1],month:parseInt(t[2],10)-1,date:1};return Lr(r)===!1?(e.epoch=null,e):(yt(e,r),e=Rr(e,t[4]),e)}},{reg:/^([a-z]+) ([0-9]{4})$/i,parse:(e,t)=>{let r={year:Ma(t[2],e._today),month:ai(t[1]),date:e._today.date||1};return Lr(r)===!1?(e.epoch=null,e):(yt(e,r),e=Rr(e,t[4]),e)}},{reg:/^(q[0-9])( of)?( [0-9]{4})?/i,parse:(e,t)=>{let r=t[1]||"";e=e.quarter(r);let n=t[3]||"";return n&&(n=n.trim(),e=e.year(n)),e}},{reg:/^(spring|summer|winter|fall|autumn)( of)?( [0-9]{4})?/i,parse:(e,t)=>{let r=t[1]||"";e=e.season(r);let n=t[3]||"";return n&&(n=n.trim(),e=e.year(n)),e}},{reg:/^[0-9,]+ ?b\.?c\.?$/i,parse:(e,t)=>{let r=t[0]||"";r=r.replace(/^([0-9,]+) ?b\.?c\.?$/i,"-$1");let n=new Date,a={year:parseInt(r.trim(),10),month:n.getMonth(),date:n.getDate()};return Lr(a)===!1?(e.epoch=null,e):(yt(e,a),e=Rr(e),e)}},{reg:/^[0-9,]+ ?(a\.?d\.?|c\.?e\.?)$/i,parse:(e,t)=>{let r=t[0]||"";r=r.replace(/,/g,"");let n=new Date,a={year:parseInt(r.trim(),10),month:n.getMonth(),date:n.getDate()};return Lr(a)===!1?(e.epoch=null,e):(yt(e,a),e=Rr(e),e)}},{reg:/^[0-9]{4}( ?a\.?d\.?)?$/i,parse:(e,t)=>{let r=e._today;r.month&&!r.date&&(r.date=1);let n=new Date,a={year:Ma(t[0],r),month:r.month||n.getMonth(),date:r.date||n.getDate()};return Lr(a)===!1?(e.epoch=null,e):(yt(e,a),e=Rr(e),e)}}],of=[].concat(S$,T$,M$,F$),P$=function(e,t,r){for(let n=0;n<of.length;n++){let a=t.match(of[n].reg);if(a){let i=of[n].parse(e,a,r);if(i!==null&&i.isValid())return i}}return e.silent===!1&&console.warn("Warning: couldn't parse date-string: '"+t+"'"),e.epoch=null,e},{parseArray:k$,parseObject:hg,parseNumber:O$}=x$,pg={year:new Date().getFullYear(),month:0,date:1},zw=(e,t)=>{let r=e._today||pg;if(typeof t=="number")return O$(e,t);if(e.epoch=Date.now(),e._today&&Za(e._today)&&Object.keys(e._today).length>0){let n=hg(e,r,pg);n.isValid()&&(e.epoch=n.epoch)}return t==null||t===""?e:Bw(t)===!0?(e.epoch=t.getTime(),e):p$(t)===!0?(e=k$(e,t,r),e):Za(t)===!0?t.epoch?(e.epoch=t.epoch,e.tz=t.tz,e):(e=hg(e,t,r),e):typeof t!="string"?e:(t=D$(t),Ol.hasOwnProperty(t)===!0?(e=Ol[t](e),e):P$(e,t))};let um=["sun","mon","tue","wed","thu","fri","sat"],lm=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"];function Is(){return um}function $l(){return lm}function $$(e){um=e.short||um,lm=e.long||lm}const gg={mo:1,tu:2,we:3,th:4,fr:5,sa:6,su:7,tues:2,weds:3,wedn:3,thur:4,thurs:4};let jw=!0;function B$(){return jw}function _$(e){jw=e}const vg=e=>{let t=e.timezone().current.offset;return t?Ds(t,":"):"Z"},Ca=e=>B$()?v$(e):e,I$=e=>e>=0?Ke(e,4):(e=Math.abs(e),"-"+Ke(e,4)),Fo={day:e=>Ca(e.dayName()),"day-short":e=>Ca(Is()[e.day()]),"day-number":e=>e.day(),"day-ordinal":e=>ya(e.day()),"day-pad":e=>Ke(e.day()),date:e=>e.date(),"date-ordinal":e=>ya(e.date()),"date-pad":e=>Ke(e.date()),month:e=>Ca(e.monthName()),"month-short":e=>Ca(gs()[e.month()]),"month-number":e=>e.month(),"month-ordinal":e=>ya(e.month()),"month-pad":e=>Ke(e.month()),"iso-month":e=>Ke(e.month()+1),year:e=>{let t=e.year();return t>0?t:(t=Math.abs(t),t+" BC")},"year-short":e=>{let t=e.year();return t>0?`'${String(e.year()).substr(2,4)}`:(t=Math.abs(t),t+" BC")},"iso-year":e=>{let t=e.year(),r=t<0,n=Ke(Math.abs(t),4);return r&&(n=Ke(n,6),n="-"+n),n},time:e=>e.time(),"time-24":e=>`${e.hour24()}:${Ke(e.minute())}`,hour:e=>e.hour12(),"hour-pad":e=>Ke(e.hour12()),"hour-24":e=>e.hour24(),"hour-24-pad":e=>Ke(e.hour24()),minute:e=>e.minute(),"minute-pad":e=>Ke(e.minute()),second:e=>e.second(),"second-pad":e=>Ke(e.second()),millisecond:e=>e.millisecond(),"millisecond-pad":e=>Ke(e.millisecond(),3),ampm:e=>e.ampm(),AMPM:e=>e.ampm().toUpperCase(),quarter:e=>"Q"+e.quarter(),season:e=>e.season(),era:e=>e.era(),json:e=>e.json(),timezone:e=>e.timezone().name,offset:e=>vg(e),numeric:e=>`${e.year()}/${Ke(e.month()+1)}/${Ke(e.date())}`,"numeric-us":e=>`${Ke(e.month()+1)}/${Ke(e.date())}/${e.year()}`,"numeric-uk":e=>`${Ke(e.date())}/${Ke(e.month()+1)}/${e.year()}`,"mm/dd":e=>`${Ke(e.month()+1)}/${Ke(e.date())}`,iso:e=>{let t=e.format("iso-year"),r=Ke(e.month()+1),n=Ke(e.date()),a=Ke(e.h24()),i=Ke(e.minute()),o=Ke(e.second()),s=Ke(e.millisecond(),3),u=vg(e);return`${t}-${r}-${n}T${a}:${i}:${o}.${s}${u}`},"iso-short":e=>{let t=Ke(e.month()+1),r=Ke(e.date());return`${I$(e.year())}-${t}-${r}`},"iso-utc":e=>new Date(e.epoch).toISOString(),nice:e=>`${gs()[e.month()]} ${ya(e.date())}, ${e.time()}`,"nice-24":e=>`${gs()[e.month()]} ${ya(e.date())}, ${e.hour24()}:${Ke(e.minute())}`,"nice-year":e=>`${gs()[e.month()]} ${ya(e.date())}, ${e.year()}`,"nice-day":e=>`${Is()[e.day()]} ${Ca(gs()[e.month()])} ${ya(e.date())}`,"nice-full":e=>`${e.dayName()} ${Ca(e.monthName())} ${ya(e.date())}, ${e.time()}`,"nice-full-24":e=>`${e.dayName()} ${Ca(e.monthName())} ${ya(e.date())}, ${e.hour24()}:${Ke(e.minute())}`},yg={"day-name":"day","month-name":"month","iso 8601":"iso","time-h24":"time-24","time-12":"time","time-h12":"time",tz:"timezone","day-num":"day-number","month-num":"month-number","month-iso":"iso-month","year-iso":"iso-year","nice-short":"nice","nice-short-24":"nice-24",mdy:"numeric-us",dmy:"numeric-uk",ymd:"numeric","yyyy/mm/dd":"numeric","mm/dd/yyyy":"numeric-us","dd/mm/yyyy":"numeric-us","little-endian":"numeric-uk","big-endian":"numeric","day-nice":"nice-day"};Object.keys(yg).forEach(e=>Fo[e]=Fo[yg[e]]);const sf=(e,t="")=>{if(e.isValid()!==!0)return"";if(Fo.hasOwnProperty(t)){let r=Fo[t](e)||"";return t!=="json"&&(r=String(r),t.toLowerCase()!=="ampm"&&(r=Ca(r))),r}if(t.indexOf("{")!==-1){let r=/\{(.+?)\}/g;return t=t.replace(r,(n,a)=>{if(a=a.trim(),a!=="AMPM"&&(a=a.toLowerCase()),Fo.hasOwnProperty(a)){let i=String(Fo[a](e));return a.toLowerCase()!=="ampm"?Ca(i):i}return""}),t}return e.format("iso-short")},Bl={G:e=>e.era(),GG:e=>e.era(),GGG:e=>e.era(),GGGG:e=>e.era()==="AD"?"Anno Domini":"Before Christ",y:e=>e.year(),yy:e=>Ke(Number(String(e.year()).substr(2,4))),yyy:e=>e.year(),yyyy:e=>e.year(),yyyyy:e=>"0"+e.year(),Q:e=>e.quarter(),QQ:e=>e.quarter(),QQQ:e=>e.quarter(),QQQQ:e=>e.quarter(),M:e=>e.month()+1,MM:e=>Ke(e.month()+1),MMM:e=>e.format("month-short"),MMMM:e=>e.format("month"),w:e=>e.week(),ww:e=>Ke(e.week()),d:e=>e.date(),dd:e=>Ke(e.date()),D:e=>e.dayOfYear(),DD:e=>Ke(e.dayOfYear()),DDD:e=>Ke(e.dayOfYear(),3),E:e=>e.format("day-short"),EE:e=>e.format("day-short"),EEE:e=>e.format("day-short"),EEEE:e=>e.format("day"),EEEEE:e=>e.format("day")[0],e:e=>e.day(),ee:e=>e.day(),eee:e=>e.format("day-short"),eeee:e=>e.format("day"),eeeee:e=>e.format("day")[0],a:e=>e.ampm().toUpperCase(),aa:e=>e.ampm().toUpperCase(),aaa:e=>e.ampm().toUpperCase(),aaaa:e=>e.ampm().toUpperCase(),h:e=>e.h12(),hh:e=>Ke(e.h12()),H:e=>e.hour(),HH:e=>Ke(e.hour()),m:e=>e.minute(),mm:e=>Ke(e.minute()),s:e=>e.second(),ss:e=>Ke(e.second()),SSS:e=>Ke(e.millisecond(),3),A:e=>e.epoch-e.startOf("day").epoch,z:e=>e.timezone().name,zz:e=>e.timezone().name,zzz:e=>e.timezone().name,zzzz:e=>e.timezone().name,Z:e=>Ds(e.timezone().current.offset),ZZ:e=>Ds(e.timezone().current.offset),ZZZ:e=>Ds(e.timezone().current.offset),ZZZZ:e=>Ds(e.timezone().current.offset,":")},ja=(e,t,r)=>{let n=e,a=t;for(let i=0;i<r;i+=1)Bl[n]=Bl[a],n+=e,a+=t};ja("q","Q",4);ja("L","M",4);ja("Y","y",4);ja("c","e",4);ja("k","H",2);ja("K","h",2);ja("S","s",2);ja("v","z",4);ja("V","Z",4);const z$=function(e){for(let t=0;t<e.length;t+=1)if(e[t]==="'")for(let r=t+1;r<e.length;r+=1){if(e[r]&&(e[t]+=e[r]),e[r]==="'"){e[r]=null;break}e[r]=null}return e.filter(t=>t)},j$=function(e){for(let t=0;t<e.length;t+=1){let r=e[t];for(let n=t+1;n<e.length&&e[n]===r;n+=1)e[t]+=e[n],e[n]=null}return e=e.filter(t=>t),e=e.map(t=>(t==="''"&&(t="'"),t)),e},q$=(e,t)=>{let r=t.split("");return r=z$(r),r=j$(r),r.reduce((n,a)=>(Bl[a]!==void 0?n+=Bl[a](e)||"":(/^'.+'$/.test(a)&&(a=a.replace(/'/g,"")),n+=a),n),"")},R$=["year","season","quarter","month","week","day","quarterHour","hour","minute"],bg=function(e,t){let r=e.clone().startOf(t),a=e.clone().endOf(t).epoch-r.epoch,i=(e.epoch-r.epoch)/a;return parseFloat(i.toFixed(2))},L$=(e,t)=>{if(t)return t=Qi(t),bg(e,t);let r={};return R$.forEach(n=>{r[n]=bg(e,n)}),r},H$=(e,t)=>{let r=e.progress();return t=Qi(t),t==="quarterhour"&&(t="quarterHour"),r[t]!==void 0?(r[t]>.5&&(e=e.add(1,t)),e=e.startOf(t)):e.silent===!1&&console.warn("no known unit '"+t+"'"),e},wg=(e,t,r)=>{let n=0;for(e=e.clone();e.isBefore(t);)e=e.add(1,r),n+=1;return e.isAfter(t,r)&&(n-=1),n},uf=(e,t,r)=>e.isBefore(t)?wg(e,t,r):wg(t,e,r)*-1,G$=(e,t)=>{let r=t.year()-e.year();return e=e.year(t.year()),e.isAfter(t)&&(r-=1),r},V$=function(e,t){let r=t.epoch-e.epoch,n={milliseconds:r,seconds:parseInt(r/1e3,10)};n.minutes=parseInt(n.seconds/60,10),n.hours=parseInt(n.minutes/60,10);let a=e.clone();return n.years=G$(a,t),a=e.add(n.years,"year"),n.months=n.years*12,a=e.add(n.months,"month"),n.months+=uf(a,t,"month"),n.quarters=n.years*4,n.quarters+=parseInt(n.months%12/3,10),n.weeks=n.years*52,a=e.add(n.weeks,"week"),n.weeks+=uf(a,t,"week"),n.days=n.weeks*7,a=e.add(n.days,"day"),n.days+=uf(a,t,"day"),n},U$=function(e){return Object.keys(e).forEach(t=>{e[t]*=-1}),e},W$=function(e,t,r){t=Oi(t,e);let n=!1;if(e.isAfter(t)){let i=e;e=t,t=i,n=!0}let a=V$(e,t);return n&&(a=U$(a)),r?(r=Qi(r),/s$/.test(r)!==!0&&(r+="s"),r==="dates"&&(r="days"),a[r]):a},vo=e=>Math.abs(e)||0,J$=function(e){let t="P";return t+=vo(e.years)+"Y",t+=vo(e.months)+"M",t+=vo(e.days)+"DT",t+=vo(e.hours)+"H",t+=vo(e.minutes)+"M",t+=vo(e.seconds)+"S",t};function K$(e,t){const r=e.isBefore(t),n=r?t:e;let a=r?e:t;a=a.clone();const i={years:0,months:0,days:0,hours:0,minutes:0,seconds:0};return Object.keys(i).forEach(o=>{if(a.isSame(n,o))return;let s=a.diff(n,o);a=a.add(s,o),i[o]=s}),r&&Object.keys(i).forEach(o=>{i[o]!==0&&(i[o]*=-1)}),i}let Qr={second:"second",seconds:"seconds",minute:"minute",minutes:"minutes",hour:"hour",hours:"hours",day:"day",days:"days",month:"month",months:"months",year:"year",years:"years"};function xg(e){return Qr[e]||""}function Y$(e={}){Qr={second:e.second||Qr.second,seconds:e.seconds||Qr.seconds,minute:e.minute||Qr.minute,minutes:e.minutes||Qr.minutes,hour:e.hour||Qr.hour,hours:e.hours||Qr.hours,day:e.day||Qr.day,days:e.days||Qr.days,month:e.month||Qr.month,months:e.months||Qr.months,year:e.year||Qr.year,years:e.years||Qr.years}}let cm="past",fm="future",mm="present",dm="now",hm="almost",pm="over",gm=e=>`${e} ago`,vm=e=>`in ${e}`;function lf(e){return gm(e)}function cf(e){return vm(e)}function Z$(){return cm}function Q$(){return fm}function X$(){return mm}function ff(){return dm}function eB(){return hm}function tB(){return pm}function rB(e){gm=e.pastDistance||gm,vm=e.futureDistance||vm,cm=e.past||cm,fm=e.future||fm,mm=e.present||mm,dm=e.now||dm,hm=e.almost||hm,pm=e.over||pm}const Dg={months:{almost:10,over:4},days:{almost:25,over:10},hours:{almost:20,over:8},minutes:{almost:50,over:20},seconds:{almost:50,over:20}};function Ng(e,t){return e===1?e+" "+xg(t.slice(0,-1)):e+" "+xg(t)}const nB=function(e){let t=null,r=null,n=[],a=[];return Object.keys(e).forEach((i,o,s)=>{const u=Math.abs(e[i]);if(u===0)return;n.push(u+i[0]);const l=Ng(u,i);if(a.push(l),!t){if(t=l,r=l,o>4)return;const c=s[o+1],f=Math.abs(e[c]);f>Dg[c].almost?(t=Ng(u+1,i),r=eB()+" "+t):f>Dg[c].over&&(r=tB()+" "+l)}}),{qualified:r,rounded:t,abbreviated:n,englishValues:a}},aB=(e,t)=>{t=Oi(t,e);const r=K$(e,t);if(Object.keys(r).every(f=>!r[f])===!0)return{diff:r,rounded:ff(),qualified:ff(),precise:ff(),abbreviated:[],iso:"P0Y0M0DT0H0M0S",direction:X$()};let a,i=Q$(),{rounded:o,qualified:s,englishValues:u,abbreviated:l}=nB(r);a=u.splice(0,2).join(", "),e.isAfter(t)===!0?(o=lf(o),s=lf(s),a=lf(a),i=Z$()):(o=cf(o),s=cf(s),a=cf(a));let c=J$(r);return{diff:r,rounded:o,qualified:s,precise:a,abbreviated:l,iso:c,direction:i}},iB=[["spring",2,1],["summer",5,1],["fall",8,1],["autumn",8,1],["winter",11,1]],oB=[["fall",2,1],["autumn",2,1],["winter",5,1],["spring",8,1],["summer",11,1]],Rn={north:iB,south:oB},zi=[null,[0,1],[3,1],[6,1],[9,1]],Li={second:e=>(yt(e,{millisecond:0}),e),minute:e=>(yt(e,{second:0,millisecond:0}),e),quarterhour:e=>{let t=e.minutes();return t>=45?e=e.minutes(45):t>=30?e=e.minutes(30):t>=15?e=e.minutes(15):e=e.minutes(0),yt(e,{second:0,millisecond:0}),e},hour:e=>(yt(e,{minute:0,second:0,millisecond:0}),e),day:e=>(yt(e,{hour:0,minute:0,second:0,millisecond:0}),e),week:e=>{let t=e.clone();return e=e.day(e._weekStart),e.isAfter(t)&&(e=e.subtract(1,"week")),yt(e,{hour:0,minute:0,second:0,millisecond:0}),e},month:e=>(yt(e,{date:1,hour:0,minute:0,second:0,millisecond:0}),e),quarter:e=>{let t=e.quarter();return zi[t]&&yt(e,{month:zi[t][0],date:zi[t][1],hour:0,minute:0,second:0,millisecond:0}),e},season:e=>{let t=e.season(),r="north";e.hemisphere()==="South"&&(r="south");for(let n=0;n<Rn[r].length;n++)if(Rn[r][n][0]===t){let a=e.year();return t==="winter"&&e.month()<3&&(a-=1),yt(e,{year:a,month:Rn[r][n][1],date:Rn[r][n][2],hour:0,minute:0,second:0,millisecond:0}),e}return e},year:e=>(yt(e,{month:0,date:1,hour:0,minute:0,second:0,millisecond:0}),e),decade:e=>{e=e.startOf("year");let t=e.year(),r=parseInt(t/10,10)*10;return e=e.year(r),e},century:e=>{e=e.startOf("year");let t=e.year(),r=parseInt(t/100,10)*100;return e=e.year(r),e}};Li.date=Li.day;const sB=(e,t)=>{let r=e.clone();return t=Qi(t),Li[t]?Li[t](r):t==="summer"||t==="winter"?(r=r.season(t),Li.season(r)):r},uB=(e,t)=>{let r=e.clone();return t=Qi(t),Li[t]&&(r=Li[t](r),r=r.add(1,t),r=r.subtract(1,"millisecond")),r},lB=function(e){return!!(Is().find(t=>t===e)||$l().find(t=>t===e))},cB=function(e,t,r,n=1){if(!t||!r)return[];if(t=Qi(t),r=e.clone().set(r),e.isAfter(r)){let o=e;e=r,r=o}if(e.diff(r,t)<n)return[];let a=e.clone();lB(t)?(a=a.next(t),t="week"):a.startOf(t).isBefore(e)&&(a=a.next(t));let i=[];for(;a.isBefore(r);)i.push(a),a=a.add(n,t);return i},fB=e=>e?e.split("->"):[],mB=e=>(e=e[0].toUpperCase()+e.substr(1),e=e.replace(/[/_-]([a-z])/gi,t=>t.toUpperCase()),e=e.replace(/_(of|es)_/i,t=>t.toLowerCase()),e=e.replace(/\/gmt/i,"/GMT"),e=e.replace(/\/Dumontdurville$/i,"/DumontDUrville"),e=e.replace(/\/Mcmurdo$/i,"/McMurdo"),e=e.replace(/\/Port-au-prince$/i,"/Port-au-Prince"),e),vs=e=>{let t=e.timezones,r=e.tz;if(t.hasOwnProperty(r)===!1&&(r=kl(e.tz,t)),r===null)return e.silent===!1&&console.warn("Warn: could not find given or local timezone - '"+e.tz+"'"),{current:{epochShift:0}};let n=t[r],a={name:mB(r),hasDst:!!n.dst,default_offset:n.offset,hemisphere:n.hem==="s"?"South":"North",current:{}};if(a.hasDst){let s=fB(n.dst);a.change={start:s[0],back:s[1]}}let i=n.offset,o=i;return a.hasDst===!0&&(a.hemisphere==="North"?o=i-1:o=n.offset+1),a.hasDst===!1?(a.current.offset=i,a.current.isDST=!1):$w(e.epoch,a.change.start,a.change.back,i,o)===!0?(a.current.offset=i,a.current.isDST=a.hemisphere==="North"):(a.current.offset=o,a.current.isDST=a.hemisphere==="South"),a},dB=["century","decade","year","month","date","day","hour","minute","second","millisecond"],si={set:function(e,t){let r=this.clone();return r=zw(r,e),t&&(this.tz=kl(t)),r},timezone:function(){return vs(this)},isDST:function(){return vs(this).current.isDST},hasDST:function(){return vs(this).hasDst},offset:function(){return vs(this).current.offset*60},hemisphere:function(){return vs(this).hemisphere},format:function(e){return sf(this,e)},unixFmt:function(e){return q$(this,e)},startOf:function(e){return sB(this,e)},endOf:function(e){return uB(this,e)},leapYear:function(){let e=this.year();return Ks(e)},progress:function(e){return L$(this,e)},nearest:function(e){return H$(this,e)},diff:function(e,t){return W$(this,e,t)},since:function(e){return e||(e=this.clone().set()),aB(this,e)},next:function(e){return this.add(1,e).startOf(e)},last:function(e){return this.subtract(1,e).startOf(e)},isValid:function(){return!this.epoch&&this.epoch!==0?!1:!isNaN(this.d.getTime())},goto:function(e){let t=this.clone();return t.tz=kl(e,t.timezones),t},every:function(e,t,r){if(typeof e=="object"&&typeof t=="string"){let n=t;t=e,e=n}return cB(this,e,t,r)},isAwake:function(){let e=this.hour();return!(e<8||e>22)},isAsleep:function(){return!this.isAwake()},daysInMonth:function(){switch(this.month()){case 0:return 31;case 1:return this.leapYear()?29:28;case 2:return 31;case 3:return 30;case 4:return 31;case 5:return 30;case 6:return 31;case 7:return 31;case 8:return 30;case 9:return 31;case 10:return 30;case 11:return 31;default:throw new Error("Invalid Month state.")}},log:function(){return console.log(""),console.log(sf(this,"nice-short")),this},logYear:function(){return console.log(""),console.log(sf(this,"full-short")),this},json:function(){return dB.reduce((e,t)=>(e[t]=this[t](),e),{})},debug:function(){let e=this.timezone(),t=this.format("MM")+" "+this.format("date-ordinal")+" "+this.year();return t+=`
|
|
15
|
-
- `+this.format("time"),console.log(`
|
|
16
|
-
|
|
17
|
-
`,t+`
|
|
18
|
-
- `+e.name+" ("+e.current.offset+")"),this},from:function(e){return e=this.clone().set(e),e.since(this)},fromNow:function(){return this.clone().set(Date.now()).since(this)},weekStart:function(e){if(typeof e=="number")return this._weekStart=e,this;if(typeof e=="string"){e=e.toLowerCase().trim();let t=Is().indexOf(e);t===-1&&(t=$l().indexOf(e)),t===-1&&(t=1),this._weekStart=t}else console.warn("Spacetime Error: Cannot understand .weekStart() input:",e);return this}};si.inDST=si.isDST;si.round=si.nearest;si.each=si.every;const qa=e=>(typeof e=="string"&&(e=parseInt(e,10)),e),mf=["year","month","date","hour","minute","second","millisecond"],cd=(e,t,r)=>{let n=mf.indexOf(r),a=mf.slice(n,mf.length);for(let i=0;i<a.length;i++){let o=t[a[i]]();e[a[i]](o)}return e},di=function(e,t,r,n){return r===!0&&e.isBefore(t)?e=e.add(1,n):r===!1&&e.isAfter(t)&&(e=e.minus(1,n)),e},hB=function(e,t){t=qa(t);let n=e.millisecond()-t;return e.epoch-n},pB=function(e,t,r){t=qa(t);let n=e.clone(),i=(e.second()-t)*Dt.second;return e.epoch=e.epoch-i,e=di(e,n,r,"minute"),e.epoch},Ag=function(e,t,r){t=qa(t);let n=e.clone(),i=(e.minute()-t)*Dt.minute;return e.epoch-=i,cd(e,n,"second"),e=di(e,n,r,"hour"),e.epoch},df=function(e,t,r){t=qa(t),t>=24?t=24:t<0&&(t=0);let n=e.clone(),a=e.hour()-t,i=a*Dt.hour;return e.epoch-=i,e.date()!==n.date()&&(e=n.clone(),a>1&&(a-=1),a<1&&(a+=1),i=a*Dt.hour,e.epoch-=i),yt(e,{hour:t}),cd(e,n,"minute"),e=di(e,n,r,"day"),e.epoch},gB=function(e,t,r){let n=t.match(/([0-9]{1,2})[:h]([0-9]{1,2})(:[0-9]{1,2})? ?(am|pm)?/);if(!n){if(n=t.match(/([0-9]{1,2}) ?(am|pm)/),!n)return e.epoch;n.splice(2,0,"0"),n.splice(3,0,"")}let a=!1,i=parseInt(n[1],10),o=parseInt(n[2],10);o>=60&&(o=59),i>12&&(a=!0),a===!1&&(n[4]==="am"&&i===12&&(i=0),n[4]==="pm"&&i<12&&(i+=12)),n[3]=n[3]||"",n[3]=n[3].replace(/:/,"");let s=parseInt(n[3],10)||0,u=e.clone();return e=e.hour(i),e=e.minute(o),e=e.second(s),e=e.millisecond(0),e=di(e,u,r,"day"),e.epoch},vB=function(e,t,r){if(t=qa(t),t>28){let a=e.month(),i=Vi[a];a===1&&t===29&&Ks(e.year())&&(i=29),t>i&&(t=i)}t<=0&&(t=1);let n=e.clone();return yt(e,{date:t}),e=di(e,n,r,"month"),e.epoch},yB=function(e,t,r){typeof t=="string"&&(t==="sept"&&(t="sep"),t=_w()[t.toLowerCase()]),t=qa(t),t>=12&&(t=11),t<=0&&(t=0);let n=e.date();n>Vi[t]&&(n=Vi[t]);let a=e.clone();return yt(e,{month:t,d:n}),e=di(e,a,r,"year"),e.epoch},hf=function(e,t){return typeof t=="string"&&/^'[0-9]{2}$/.test(t)&&(t=t.replace(/'/,"").trim(),t=Number(t),t>30?t=1900+t:t=2e3+t),t=qa(t),yt(e,{year:t}),e.epoch},bB=function(e,t,r){let n=e.clone();return t=qa(t),e=e.month(0),e=e.date(1),e=e.day("monday"),e.monthName()==="december"&&e.date()>=28&&(e=e.add(1,"week")),t-=1,e=e.add(t,"weeks"),e=di(e,n,r,"year"),e.epoch},wB=function(e,t,r){t=qa(t);let n=e.clone();return t-=1,t<=0?t=0:t>=365&&(Ks(e.year())?t=365:t=364),e=e.startOf("year"),e=e.add(t,"day"),cd(e,n,"hour"),e=di(e,n,r,"year"),e.epoch};let ym="am",bm="pm";function xB(){return ym}function DB(){return bm}function NB(e){ym=e.am||ym,bm=e.pm||bm}const AB={millisecond:function(e){if(e!==void 0){let t=this.clone();return t.epoch=hB(t,e),t}return this.d.getMilliseconds()},second:function(e,t){if(e!==void 0){let r=this.clone();return r.epoch=pB(r,e,t),r}return this.d.getSeconds()},minute:function(e,t){if(e!==void 0){let r=this.clone();return r.epoch=Ag(r,e,t),r}return this.d.getMinutes()},hour:function(e,t){let r=this.d;if(e!==void 0){let n=this.clone();return n.epoch=df(n,e,t),n}return r.getHours()},hourFloat:function(e,t){if(e!==void 0){let i=this.clone(),o=e%1;o=o*60;let s=parseInt(e,10);return i.epoch=df(i,s,t),i.epoch=Ag(i,o,t),i}let r=this.d,n=r.getHours(),a=r.getMinutes();return a=a/60,n+a},hour12:function(e,t){let r=this.d;if(e!==void 0){let a=this.clone();e=""+e;let i=e.match(/^([0-9]+)(am|pm)$/);if(i){let o=parseInt(i[1],10);i[2]==="pm"&&(o+=12),a.epoch=df(a,o,t)}return a}let n=r.getHours();return n>12&&(n=n-12),n===0&&(n=12),n},time:function(e,t){if(e!==void 0){let r=this.clone();return e=e.toLowerCase().trim(),r.epoch=gB(r,e,t),r}return`${this.h12()}:${Ke(this.minute())}${this.ampm()}`},ampm:function(e,t){let r=xB(),n=this.hour();if(n>=12&&(r=DB()),typeof e!="string")return r;let a=this.clone();return e=e.toLowerCase().trim(),n>=12&&e==="am"?(n-=12,a.hour(n,t)):n<12&&e==="pm"?(n+=12,a.hour(n,t)):a},dayTime:function(e,t){if(e!==void 0){const n={morning:"7:00",breakfast:"7:00",noon:"12:00",lunch:"12:00",afternoon:"14:00",evening:"18:00",dinner:"18:00",night:"23:00",midnight:"00:00"};let a=this.clone();return e=e||"",e=e.toLowerCase(),n.hasOwnProperty(e)===!0&&(a=a.time(n[e],t)),a}let r=this.hour();return r<6?"night":r<12?"morning":r<17?"afternoon":r<22?"evening":"night"},iso:function(e){return e!==void 0?this.set(e):this.format("iso")}},CB={date:function(e,t){if(e!==void 0){let r=this.clone();return e=parseInt(e,10),e&&(r.epoch=vB(r,e,t)),r}return this.d.getDate()},day:function(e,t){if(e===void 0)return this.d.getDay();let r=this.clone(),n=e;typeof e=="string"&&(e=e.toLowerCase(),gg.hasOwnProperty(e)?n=gg[e]:(n=Is().indexOf(e),n===-1&&(n=$l().indexOf(e))));let i=this.d.getDay()-n;t===!0&&i>0&&(i=i-7),t===!1&&i<0&&(i=i+7);let o=this.subtract(i,"days");return yt(o,{hour:r.hour(),minute:r.minute(),second:r.second()}),o},dayName:function(e,t){if(e===void 0)return $l()[this.day()];let r=this.clone();return r=r.day(e,t),r}},Cg=e=>(e=e.minute(0),e=e.second(0),e=e.millisecond(1),e),EB={dayOfYear:function(e,t){if(e!==void 0){let i=this.clone();return i.epoch=wB(i,e,t),i}let r=0,n=this.d.getMonth(),a;for(let i=1;i<=n;i++)a=new Date,a.setDate(1),a.setFullYear(this.d.getFullYear()),a.setHours(1),a.setMinutes(1),a.setMonth(i),a.setHours(-2),r+=a.getDate();return r+this.d.getDate()},week:function(e,t){if(e!==void 0){let s=this.clone();return s.epoch=bB(this,e,t),s=Cg(s),s}let r=this.clone();r=r.month(0),r=r.date(1),r=Cg(r),r=r.day("monday"),r.month()===11&&r.date()>=25&&(r=r.add(1,"week"));let n=1;r.date()===1&&(n=0),r=r.minus(2,"hours");const a=this.epoch;if(r.epoch>a)return 1;let i=0,o=this.month()*4;for(r.epoch+=Dt.week*o,i+=o;i<=52;i++){if(r.epoch>a)return i+n;r=r.add(1,"week")}return 52},month:function(e,t){if(e!==void 0){let r=this.clone();return r.epoch=yB(r,e,t),r}return this.d.getMonth()},monthName:function(e,t){if(e!==void 0){let r=this.clone();return r=r.month(e,t),r}return A$()[this.month()]},quarter:function(e,t){if(e!==void 0&&(typeof e=="string"&&(e=e.replace(/^q/i,""),e=parseInt(e,10)),zi[e])){let n=this.clone(),a=zi[e][0];return n=n.month(a,t),n=n.date(1,t),n=n.startOf("day"),n}let r=this.d.getMonth();for(let n=1;n<zi.length;n++)if(r<zi[n][0])return n-1;return 4},season:function(e,t){let r="north";if(this.hemisphere()==="South"&&(r="south"),e!==void 0){let a=this.clone();for(let i=0;i<Rn[r].length;i++)e===Rn[r][i][0]&&(a=a.month(Rn[r][i][1],t),a=a.date(1),a=a.startOf("day"));return a}let n=this.d.getMonth();for(let a=0;a<Rn[r].length-1;a++)if(n>=Rn[r][a][1]&&n<Rn[r][a+1][1])return Rn[r][a][0];return r==="north"?"winter":"summer"},year:function(e){if(e!==void 0){let t=this.clone();return t.epoch=hf(t,e),t}return this.d.getFullYear()},era:function(e){if(e!==void 0){let t=this.clone();e=e.toLowerCase();let r=t.d.getFullYear();return e==="bc"&&r>0&&(t.epoch=hf(t,r*-1)),e==="ad"&&r<0&&(t.epoch=hf(t,r*-1)),t}return this.d.getFullYear()<0?"BC":"AD"},decade:function(e){if(e!==void 0){if(e=String(e),e=e.replace(/([0-9])'?s$/,"$1"),e=e.replace(/([0-9])(th|rd|st|nd)/,"$1"),!e)return console.warn("Spacetime: Invalid decade input"),this;e.length===2&&/[0-9][0-9]/.test(e)&&(e="19"+e);let t=Number(e);return isNaN(t)?this:(t=Math.floor(t/10)*10,this.year(t))}return this.startOf("decade").year()},century:function(e){if(e!==void 0){typeof e=="string"&&(e=e.replace(/([0-9])(th|rd|st|nd)/,"$1"),e=e.replace(/([0-9]+) ?(b\.?c\.?|a\.?d\.?)/i,(n,a,i)=>(i.match(/b\.?c\.?/i)&&(a="-"+a),a)),e=e.replace(/c$/,""));let r=Number(e);return isNaN(e)?(console.warn("Spacetime: Invalid century input"),this):(r===0&&(r=1),r>=0?r=(r-1)*100:r=(r+1)*100,this.year(r))}let t=this.startOf("century").year();return t=Math.floor(t/100),t<0?t-1:t+1},millenium:function(e){if(e!==void 0){if(typeof e=="string"&&(e=e.replace(/([0-9])(th|rd|st|nd)/,"$1"),e=Number(e),isNaN(e)))return console.warn("Spacetime: Invalid millenium input"),this;e>0&&(e-=1);let r=e*1e3;return r===0&&(r=1),this.year(r)}let t=Math.floor(this.year()/1e3);return t>=0&&(t+=1),t}},wr=Object.assign({},AB,CB,EB);wr.milliseconds=wr.millisecond;wr.seconds=wr.second;wr.minutes=wr.minute;wr.hours=wr.hour;wr.hour24=wr.hour;wr.h12=wr.hour12;wr.h24=wr.hour24;wr.days=wr.day;const SB=e=>{Object.keys(wr).forEach(t=>{e.prototype[t]=wr[t]})},wm=function(e,t){return e===1&&Ks(t)?29:Vi[e]},TB=(e,t)=>{if(e.month>0){let r=parseInt(e.month/12,10);e.year=t.year()+r,e.month=e.month%12}else if(e.month<0){let r=Math.abs(e.month),n=parseInt(r/12,10);r%12!==0&&(n+=1),e.year=t.year()-n,e.month=e.month%12,e.month=e.month+12,e.month===12&&(e.month=0)}return e},MB=(e,t,r)=>{e.year=t.year(),e.month=t.month();let n=t.date();for(e.date=n-Math.abs(r);e.date<1;){e.month-=1,e.month<0&&(e.month=11,e.year-=1);let a=wm(e.month,e.year);e.date+=a}return e},FB=(e,t,r)=>{let n=t.year(),a=t.month(),i=wm(a,n);for(;r>i;)r-=i,a+=1,a>=12&&(a-=12,n+=1),i=wm(a,n);return e.month=a,e.date=r,e},PB=TB,kB=FB,OB=MB,zn=["millisecond","second","minute","hour","date","month"];let ui={second:zn.slice(0,1),minute:zn.slice(0,2),quarterhour:zn.slice(0,2),hour:zn.slice(0,3),date:zn.slice(0,4),month:zn.slice(0,4),quarter:zn.slice(0,4),season:zn.slice(0,4),year:zn,decade:zn,century:zn};ui.week=ui.hour;ui.season=ui.date;ui.quarter=ui.date;const $B={year:!0,quarter:!0,season:!0,month:!0,week:!0,date:!0},BB={month:!0,quarter:!0,season:!0,year:!0},_B=e=>{e.prototype.add=function(t,r){let n=this.clone();if(!r||t===0)return n;let a=this.clone();if(r=Qi(r),r==="millisecond")return n.epoch+=t,n;r==="fortnight"&&(t*=2,r="week"),Dt[r]?n.epoch+=Dt[r]*t:r==="week"||r==="weekend"?n.epoch+=Dt.day*(t*7):r==="quarter"||r==="season"?n.epoch+=Dt.month*(t*3):r==="quarterhour"&&(n.epoch+=Dt.minute*15*t);let i={};if(ui[r]&&ui[r].forEach(o=>{i[o]=a[o]()}),$B[r]){const o=a.timezone().current.offset-n.timezone().current.offset;n.epoch+=o*3600*1e3}if(r==="month"&&(i.month=a.month()+t,i=PB(i,a)),r==="week"){let o=a.date()+t*7;o<=28&&o>1&&(i.date=o)}if(r==="weekend"&&n.dayName()!=="saturday")n=n.day("saturday",!0);else if(r==="date"){if(t<0)i=OB(i,a,t);else{let o=a.date()+t;i=kB(i,a,o)}t!==0&&a.isSame(n,"day")&&(i.date=a.date()+t)}else if(r==="quarter"){if(i.month=a.month()+t*3,i.year=a.year(),i.month<0){let o=Math.floor(i.month/12),s=i.month+Math.abs(o)*12;i.month=s,i.year+=o}else if(i.month>=12){let o=Math.floor(i.month/12);i.month=i.month%12,i.year+=o}i.date=a.date()}else if(r==="year"){let o=a.year()+t,s=n.year();if(s<o){let u=Math.floor(t/4)||1;n.epoch+=Math.abs(Dt.day*u)}else if(s>o){let u=Math.floor(t/4)||1;n.epoch+=Dt.day*u}}else r==="decade"?i.year=n.year()+10:r==="century"&&(i.year=n.year()+100);if(BB[r]){let o=Vi[i.month];i.date=a.date(),i.date>o&&(i.date=o)}return Object.keys(i).length>1&&yt(n,i),n},e.prototype.subtract=function(t,r){return this.clone().add(t*-1,r)},e.prototype.minus=e.prototype.subtract,e.prototype.plus=e.prototype.add},Ss={millisecond:e=>e.epoch,second:e=>[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second()].join("-"),minute:e=>[e.year(),e.month(),e.date(),e.hour(),e.minute()].join("-"),hour:e=>[e.year(),e.month(),e.date(),e.hour()].join("-"),day:e=>[e.year(),e.month(),e.date()].join("-"),week:e=>[e.year(),e.week()].join("-"),month:e=>[e.year(),e.month()].join("-"),quarter:e=>[e.year(),e.quarter()].join("-"),year:e=>e.year()};Ss.date=Ss.day;const IB=e=>{e.prototype.isSame=function(t,r,n=!0){let a=this;if(!r)return null;if(typeof t=="string"&&typeof r=="object"){let i=t;t=r,r=i}return(typeof t=="string"||typeof t=="number")&&(t=new e(t,this.timezone.name)),r=r.replace(/s$/,""),n===!0&&a.tz!==t.tz&&(t=t.clone(),t.tz=a.tz),Ss[r]?Ss[r](a)===Ss[r](t):null}},zB=e=>{const t={isAfter:function(r){r=Oi(r,this);let n=ps(r);return n===null?null:this.epoch>n},isBefore:function(r){r=Oi(r,this);let n=ps(r);return n===null?null:this.epoch<n},isEqual:function(r){r=Oi(r,this);let n=ps(r);return n===null?null:this.epoch===n},isBetween:function(r,n,a=!1){r=Oi(r,this),n=Oi(n,this);let i=ps(r);if(i===null)return null;let o=ps(n);return o===null?null:a?this.isBetween(r,n)||this.isEqual(r)||this.isEqual(n):i<this.epoch&&this.epoch<o}};Object.keys(t).forEach(r=>{e.prototype[r]=t[r]})},jB=e=>{const t={i18n:function(r){return Za(r.days)&&$$(r.days),Za(r.months)&&C$(r.months),g$(r.useTitleCase)&&_$(r.useTitleCase),Za(r.ampm)&&NB(r.ampm),Za(r.distance)&&rB(r.distance),Za(r.units)&&Y$(r.units),this}};Object.keys(t).forEach(r=>{e.prototype[r]=t[r]})};let pf=qo;const Jt=function(e,t,r={}){this.epoch=null,this.tz=kl(t,pf),this.silent=typeof r.silent<"u"?r.silent:!0,this.british=r.dmy||r.british,this._weekStart=1,r.weekStart!==void 0&&(this._weekStart=r.weekStart),this._today={},r.today!==void 0&&(this._today=r.today),Object.defineProperty(this,"d",{get:function(){let a=a$(this),o=(new Date(this.epoch).getTimezoneOffset()||0)+a*60;o=o*60*1e3;let s=this.epoch+o;return new Date(s)}}),Object.defineProperty(this,"timezones",{get:()=>pf,set:a=>(pf=a,a)});let n=zw(this,e);this.epoch=n.epoch,n.tz&&(this.tz=n.tz)};Object.keys(si).forEach(e=>{Jt.prototype[e]=si[e]});Jt.prototype.clone=function(){return new Jt(this.epoch,this.tz,{silent:this.silent,weekStart:this._weekStart,today:this._today,parsers:this.parsers})};Jt.prototype.toLocalDate=function(){return this.toNativeDate()};Jt.prototype.toNativeDate=function(){return new Date(this.epoch)};SB(Jt);_B(Jt);IB(Jt);zB(Jt);jB(Jt);const qB=(e,t)=>{let r=new Jt(null),n=new Jt(null);r=r.time(e),t?n=n.time(t):n=r.add(59,"minutes");let a=r.hour(),i=n.hour();return Object.keys(r.timezones).filter(s=>{if(s.indexOf("/")===-1)return!1;let u=new Jt(null,s),l=u.hour();return l>=a&&l<=i?!(l===a&&u.minute()<r.minute()||l===i&&u.minute()>n.minute()):!1})},RB="7.7.0",pt=(e,t,r)=>new Jt(e,t,r),fc=function(e){let t=e._today||{};return Object.keys(t).forEach(r=>{e=e[r](t[r])}),e};pt.now=(e,t)=>{let r=new Jt(new Date().getTime(),e,t);return r=fc(r),r};pt.today=(e,t)=>{let r=new Jt(new Date().getTime(),e,t);return r=fc(r),r.startOf("day")};pt.tomorrow=(e,t)=>{let r=new Jt(new Date().getTime(),e,t);return r=fc(r),r.add(1,"day").startOf("day")};pt.yesterday=(e,t)=>{let r=new Jt(new Date().getTime(),e,t);return r=fc(r),r.subtract(1,"day").startOf("day")};pt.extend=function(e={}){return Object.keys(e).forEach(t=>{Jt.prototype[t]=e[t]}),this};pt.timezones=function(){return new Jt().timezones};pt.max=function(e,t){let r=new Jt(null,e,t);return r.epoch=864e13,r};pt.min=function(e,t){let r=new Jt(null,e,t);return r.epoch=-864e13,r};pt.whereIts=qB;pt.version=RB;pt.plugin=pt.extend;const Eg={daybreak:"7:00am",breakfast:"8:00am",morning:"9:00am",noon:"12:00pm",midday:"12:00pm",afternoon:"2:00pm",lunchtime:"12:00pm",evening:"6:00pm",dinnertime:"6:00pm",night:"8:00pm",eod:"10:00pm",midnight:"12:00am",am:"9:00am",pm:"5:00pm","early day":"8:00am","late at night":"11:00pm"},Po={quarter:15,half:30},$u=function(e){let t=e.time("6:00am");return e.isBefore(t)?e.ampm("pm"):e},LB=function(e,t){let r=e.match("#Cardinal$"),n=e.not(r).match("(half|quarter|25|20|15|10|5)");r=r.text("reduced");let a=n.text("reduced");Po.hasOwnProperty(a)&&(a=Po[a]);let i=e.has("to");return t=t.hour(r),t=t.startOf("hour"),r<6&&(t=t.ampm("pm")),i?t=t.subtract(a,"minutes"):t=t.add(a,"minutes"),t},fd=function(e,t){let r=e.match("(at|by|for|before|this|after)? #Time+");r=r.not("^(at|by|for|before|this|after)"),r=r.not("sharp"),r=r.not("on the dot");let n=pt.now(t.timezone),a=n.clone(),i=r.not("in? the").text("reduced");if(i=i.replace(/^@/,""),Eg.hasOwnProperty(i))return{result:Eg[i],m:r};let o=r.match("^#Cardinal oclock (am|pm)?");if(o.found&&(n=n.hour(o.text("reduced")),n=n.startOf("hour"),n.isValid()&&!n.isEqual(a))){let u=o.match("(am|pm)");return u.found?n=n.ampm(u.text("reduced")):n=$u(n),{result:n.time(),m:o}}if(o=r.match("(half|quarter|25|20|15|10|5) (past|after|to) #Cardinal"),o.found&&(n=LB(o,n),n.isValid()&&!n.isEqual(a)))return n=$u(n),{result:n.time(),m:o};if(o=r.match("[<min>(half|quarter|25|20|15|10|5)] (past|after)"),o.found){let u=o.groups("min").text("reduced"),l=pt(t.today);if(Po.hasOwnProperty(u)&&(u=Po[u]),l=l.next("hour").startOf("hour").minute(u),l.isValid()&&!l.isEqual(a))return{result:l.time(),m:o}}if(o=r.match("[<min>(half|quarter|25|20|15|10|5)] to"),o.found){let u=o.groups("min").text("reduced"),l=pt(t.today);if(Po.hasOwnProperty(u)&&(u=Po[u]),l=l.next("hour").startOf("hour").minus(u,"minutes"),l.isValid()&&!l.isEqual(a))return{result:l.time(),m:o}}if(o=r.match("[<time>#Time] (in|at) the? [<desc>(morning|evening|night|nighttime)]"),o.found){let u=o.groups("time").text("normal");if(/^[0-9]{1,2}$/.test(u)?(n=n.hour(u),n=n.startOf("hour")):n=n.time(u),n.isValid()&&!n.isEqual(a)){let l=o.groups("desc").text("reduced");return(l==="evening"||l==="night")&&(n=n.ampm("pm")),{result:n.time(),m:o}}}if(o=r.match("this? [<desc>(morning|evening|tonight)] at [<time>(#Cardinal|#Time)]"),o.found){let u=o.groups(),l=u.time.text("reduced");if(/^[0-9]{1,2}$/.test(l)?(n=n.hour(l),n=n.startOf("hour")):n=n.time(l),n.isValid()&&!n.isEqual(a)){let c=u.desc.text("reduced");return c==="morning"&&(n=n.ampm("am")),(c==="evening"||c==="tonight")&&(n=n.ampm("pm")),{result:n.time(),m:o}}}if(o=r.match("^#Cardinal$"),o.found){let u=o.text("reduced");if(n=n.hour(u),n=n.startOf("hour"),n.isValid()&&!n.isEqual(a))return/(am|pm)/i.test(u)===!1&&(n=$u(n)),{result:n.time(),m:o}}let s=r.text("reduced");return n=n.time(s),n.isValid()&&!n.isEqual(a)?(/(am|pm)/i.test(s)===!1&&(n=$u(n)),{result:n.time(),m:r}):t.dayStart?{result:t.dayStart,m:e.none()}:{result:null,m:e.none()}},HB=function(e){if(e.has("(next|last|this)$"))return{result:null,m:e.none()};let t=e.match("^this? (next|upcoming|coming)");return t.found?{result:"next",m:t}:(t=e.match("^this? (past)"),t.found?{result:"this-past",m:t}:(t=e.match("^this? (last|previous)"),t.found?{result:"last",m:t}:(t=e.match("^(this|current)"),t.found?{result:"this",m:t}:{result:null,m:e.none()})))},GB=function(e){let t=e.match("[(start|beginning) of] .",0);return t.found?{result:"start",m:t}:(t=e.match("[end of] .",0),t.found?{result:"end",m:t}:(t=e.match("[(middle|midpoint|center) of] .",0),t.found?{result:"middle",m:t}:{result:null,m:t}))},Fe="America/",ze="Asia/",zt="Europe/",Pr="Africa/",Ut="Australia/",Zr="Pacific/",VB={"british summer time":zt+"London",bst:zt+"London","british time":zt+"London","britain time":zt+"London","irish summer time":zt+"Dublin","irish time":zt+"Dublin",ireland:zt+"Dublin","central european time":zt+"Berlin",cet:zt+"Berlin","central european summer time":zt+"Berlin",cest:zt+"Berlin","central europe":zt+"Berlin","eastern european time":zt+"Riga",eet:zt+"Riga","eastern european summer time":zt+"Riga",eest:zt+"Riga","eastern europe time":zt+"Riga","western european time":zt+"Lisbon","western european summer time":zt+"Lisbon","western europe":zt+"Lisbon","turkey standard time":zt+"Istanbul",trt:zt+"Istanbul","turkish time":zt+"Istanbul",etc:Pr+"Freetown",utc:Pr+"Freetown","greenwich standard time":Pr+"Freetown",gmt:Pr+"Freetown","east africa time":Pr+"Nairobi","east african time":Pr+"Nairobi","eastern africa time":Pr+"Nairobi","central africa time":Pr+"Khartoum","central african time":Pr+"Khartoum","south africa standard time":Pr+"Johannesburg",sast:Pr+"Johannesburg","southern africa":Pr+"Johannesburg","south african":Pr+"Johannesburg","west africa standard time":Pr+"Lagos","western africa time":Pr+"Lagos","west african time":Pr+"Lagos","australian central standard time":Ut+"Adelaide",acst:Ut+"Adelaide","australian central daylight time":Ut+"Adelaide",acdt:Ut+"Adelaide","australia central":Ut+"Adelaide","australian eastern standard time":Ut+"Brisbane",aest:Ut+"Brisbane","australian eastern daylight time":Ut+"Brisbane",aedt:Ut+"Brisbane","australia east":Ut+"Brisbane","australian western standard time":Ut+"Perth",awst:Ut+"Perth","australian western daylight time":Ut+"Perth",awdt:Ut+"Perth","australia west":Ut+"Perth","australian central western standard time":Ut+"Eucla",acwst:Ut+"Eucla","australia central west":Ut+"Eucla","lord howe standard time":Ut+"Lord_Howe",lhst:Ut+"Lord_Howe","lord howe daylight time":Ut+"Lord_Howe",lhdt:Ut+"Lord_Howe","russian standard time":zt+"Moscow",msk:zt+"Moscow",russian:zt+"Moscow","central standard time":Fe+"Chicago","central time":Fe+"Chicago",cst:Fe+"Havana","central daylight time":Fe+"Chicago",cdt:Fe+"Havana","mountain standard time":Fe+"Denver","mountain time":Fe+"Denver",mst:Fe+"Denver","mountain daylight time":Fe+"Denver",mdt:Fe+"Denver","atlantic standard time":Fe+"Halifax","atlantic time":Fe+"Halifax",ast:ze+"Baghdad","atlantic daylight time":Fe+"Halifax",adt:Fe+"Halifax","eastern standard time":Fe+"New_York",eastern:Fe+"New_York","eastern time":Fe+"New_York",est:Fe+"New_York","eastern daylight time":Fe+"New_York",edt:Fe+"New_York","pacific time":Fe+"Los_Angeles","pacific standard time":Fe+"Los_Angeles",pst:Fe+"Los_Angeles","pacific daylight time":Fe+"Los_Angeles",pdt:Fe+"Los_Angeles","alaskan standard time":Fe+"Anchorage","alaskan time":Fe+"Anchorage",ahst:Fe+"Anchorage","alaskan daylight time":Fe+"Anchorage",ahdt:Fe+"Anchorage","hawaiian standard time":Zr+"Honolulu","hawaiian time":Zr+"Honolulu",hst:Zr+"Honolulu","aleutian time":Zr+"Honolulu","hawaii time":Zr+"Honolulu","newfoundland standard time":Fe+"St_Johns","newfoundland time":Fe+"St_Johns",nst:Fe+"St_Johns","newfoundland daylight time":Fe+"St_Johns",ndt:Fe+"St_Johns","brazil time":Fe+"Sao_Paulo",brt:Fe+"Sao_Paulo",brasília:Fe+"Sao_Paulo",brasilia:Fe+"Sao_Paulo","brazilian time":Fe+"Sao_Paulo","argentina time":Fe+"Buenos_Aires","argentinian time":Fe+"Buenos_Aires","amazon time":Fe+"Manaus",amt:Fe+"Manaus","amazonian time":Fe+"Manaus","easter island standard time":"Chile/Easterisland",east:"Chile/Easterisland","easter island summer time":"Chile/Easterisland",easst:"Chile/Easterisland","venezuelan standard time":Fe+"Caracas","venezuelan time":Fe+"Caracas",vet:Fe+"Caracas","venezuela time":Fe+"Caracas","paraguay time":Fe+"Asuncion",pyt:Fe+"Asuncion","paraguay summer time":Fe+"Asuncion",pyst:Fe+"Asuncion","cuba standard time":Fe+"Havana","cuba time":Fe+"Havana","cuba daylight time":Fe+"Havana","cuban time":Fe+"Havana","bolivia time":Fe+"La_Paz","bolivian time":Fe+"La_Paz","colombia time":Fe+"Bogota",cot:Fe+"Bogota","colombian time":Fe+"Bogota","acre time":Fe+"Eirunepe","peru time":Fe+"Lima","chile standard time":Fe+"Punta_Arenas","chile time":Fe+"Punta_Arenas",clst:Fe+"Punta_Arenas","chile summer time":Fe+"Punta_Arenas",cldt:Fe+"Punta_Arenas","uruguay time":Fe+"Montevideo",uyt:Fe+"Montevideo",ist:ze+"Jerusalem","arabic standard time":ze+"Baghdad","arabic time":ze+"Baghdad","arab time":ze+"Baghdad","iran standard time":ze+"Tehran","iran time":ze+"Tehran",irst:ze+"Tehran","iran daylight time":ze+"Tehran",irdt:ze+"Tehran",iranian:ze+"Tehran","pakistan standard time":ze+"Karachi","pakistan time":ze+"Karachi",pkt:ze+"Karachi","india standard time":ze+"Kolkata","indian time":ze+"Kolkata","indochina time":ze+"Bangkok",ict:ze+"Bangkok","south east asia":ze+"Bangkok","china standard time":ze+"Shanghai",ct:ze+"Shanghai","chinese time":ze+"Shanghai","alma-ata time":ze+"Almaty",almt:ze+"Almaty","oral time":ze+"Oral","orat time":ze+"Oral","yakutsk time":ze+"Yakutsk",yakt:ze+"Yakutsk","gulf standard time":ze+"Dubai","gulf time":ze+"Dubai",gst:ze+"Dubai",uae:ze+"Dubai","hong kong time":ze+"Hong_Kong",hkt:ze+"Hong_Kong","western indonesian time":ze+"Jakarta",wib:ze+"Jakarta","indonesia time":ze+"Jakarta","central indonesian time":ze+"Makassar",wita:ze+"Makassar","israel daylight time":ze+"Jerusalem",idt:ze+"Jerusalem","israel standard time":ze+"Jerusalem","israel time":ze+"Jerusalem",israeli:ze+"Jerusalem","krasnoyarsk time":ze+"Krasnoyarsk",krat:ze+"Krasnoyarsk","malaysia time":ze+"Kuala_Lumpur",myt:ze+"Kuala_Lumpur","singapore time":ze+"Singapore",sgt:ze+"Singapore","korea standard time":ze+"Seoul","korea time":ze+"Seoul",kst:ze+"Seoul","korean time":ze+"Seoul","uzbekistan time":ze+"Samarkand",uzt:ze+"Samarkand","vladivostok time":ze+"Vladivostok",vlat:ze+"Vladivostok","maldives time":"Indian/Maldives",mvt:"Indian/Maldives","mauritius time":"Indian/Mauritius",mut:"Indian/Mauritius","marshall islands time":Zr+"Kwajalein",mht:Zr+"Kwajalein","samoa standard time":Zr+"Midway",sst:Zr+"Midway","somoan time":Zr+"Midway","chamorro standard time":Zr+"Guam",chst:Zr+"Guam","papua new guinea time":Zr+"Bougainville",pgt:Zr+"Bougainville"};let UB=pt().timezones,WB=Object.keys(UB).reduce((e,t)=>(e[t]=t,e),{});const Sg=Object.assign({},VB,WB),JB=/(-?[0-9]+)h(rs)?/i,KB=/(-?[0-9]+)/,YB=/utc([-+]?[0-9]+)/i,ZB=/gmt([-+]?[0-9]+)/i,Bu=function(e){return e=Number(e),e>-13&&e<13?(e=e*-1,e=(e>0?"+":"")+e,"Etc/GMT"+e):null},QB=function(e){let t=e.match(JB);if(t!==null||(t=e.match(YB),t!==null))return Bu(t[1]);if(t=e.match(ZB),t!==null){let r=Number(t[1])*-1;return Bu(r)}return t=e.match(KB),t!==null?Bu(t[1]):null},XB=function(e){let t=e.match("#Timezone+");t=t.not("(in|for|by|near|at)");let r=t.text("reduced");if(Sg.hasOwnProperty(r))return{result:Sg[r],m:t};let n=QB(r);return n?{result:n,m:t}:{result:null,m:e.none()}},e_=function(e){let t=e.match("#WeekDay");return t.found&&!e.has("^#WeekDay$")?e.has("(this|next|last) (next|upcoming|coming|past)? #WeekDay")?{result:null,m:e.none()}:{result:t.text("reduced"),m:t}:{result:null,m:e.none()}},t_=function(e){return e=e.not("[^the] !#Value",0),e=e.not("#Preposition$"),e=e.not("#Conjunction$"),e=e.not("sharp"),e=e.not("on the dot"),e=e.not("^(on|of)"),e=e.not("(next|last|this)$"),e},r_=function(e,t){let r=e$(e),n=r.result;e=e.not(r.m),r=r$(e);let a=r.result;e=e.not(r.m),r=XB(e);let i=r.result;e=e.not(r.m),r=fd(e,t);let o=r.result;e=e.not(r.m),r=e_(e);let s=r.result;e=e.not(r.m),r=GB(e);let u=r.result;e=e.not(r.m),r=HB(e);let l=r.result;return e=e.not(r.m),e=t_(e),{shift:n,counter:a,tz:i,time:o,weekDay:s,section:u,rel:l,doc:e}};let dn=class qw{constructor(t,r,n){this.unit=r||"day",this.setTime=!1,n=n||{};let a={};n.today&&(a={date:n.today.date(),month:n.today.month(),year:n.today.year()}),t&&t.month==="sept"&&(t.month="sep");let i=pt(t,n.timezone,{today:a,dmy:n.dmy});Object.defineProperty(this,"d",{enumerable:!1,writable:!0,value:i}),Object.defineProperty(this,"context",{enumerable:!1,writable:!0,value:n})}clone(){let t=new qw(this.d,this.unit,this.context);return t.setTime=this.setTime,t}log(){return console.log("--"),this.d.log(),console.log(`
|
|
19
|
-
`),this}applyShift(t={}){return Object.keys(t).forEach(r=>{this.d=this.d.add(t[r],r),(r==="hour"||r==="minute")&&(this.setTime=!0)}),this}applyTime(t){if(t){if(/^[0-9]{1,2}$/.test(t)?this.d=this.d.hour(t):this.d=this.d.time(t),!/[ap]m/.test(t)){let a=this.d.time("6:00am");this.d.isBefore(a)&&(this.d=this.d.ampm("pm"));let i=this.d.time("10:00pm");this.d.isAfter(i)&&(this.d=this.d.ampm("am"))}}else this.d=this.d.startOf("day");return this.setTime=!0,this}applyWeekDay(t){if(t){let r=this.d.epoch;this.d=this.d.day(t),this.d.epoch<r&&(this.d=this.d.add(1,"week"))}return this}applyRel(t){return t==="next"?this.next():t==="last"||t==="this-past"?this.last():this}applySection(t){return t==="start"?this.start():t==="end"?this.end():t==="middle"?this.middle():this}format(t){return this.d.format(t)}start(){return this.d=this.d.startOf(this.unit),this.context.dayStart&&(this.d=this.d.time(this.context.dayStart)),this}end(){if(this.d=this.d.endOf(this.unit),this.context.dayEnd){this.d=this.d.startOf("day");let t=this.d.time(this.context.dayEnd);if(t.isAfter(this.d))return this.d=t,this}return this}middle(){let t=this.d.diff(this.d.endOf(this.unit)),r=Math.round(t.minutes/2);return this.d=this.d.add(r,"minutes"),this}beforeEnd(){let t=this.d.startOf(this.unit).diff(this.d.endOf(this.unit)),r=Math.round(t.minutes/4);return this.d=this.d.endOf(this.unit),this.d=this.d.minus(r,"minutes"),this.context.dayStart&&(this.d=this.d.time(this.context.dayStart)),this}before(){return this.d=this.d.minus(1,this.unit),this.d=this.d.endOf(this.unit),this.context.dayEnd&&(this.d=this.d.time(this.context.dayEnd)),this}after(){return this.d=this.d.add(1,this.unit),this.d=this.d.startOf(this.unit),this}next(){return this.d=this.d.add(1,this.unit),this.d=this.d.startOf(this.unit),this}last(){return this.d=this.d.minus(1,this.unit),this.d=this.d.startOf(this.unit),this}};class Sn extends dn{constructor(t,r,n){super(t,r,n),this.unit="day",this.d.isValid()&&(this.d=this.d.startOf("day"))}middle(){return this.d=this.d.time("10am"),this}beforeEnd(){return this.d=this.d.time("2pm"),this}}class Ln extends Sn{constructor(t,r,n){super(t,r,n),this.unit="day",this.d.isValid()&&(this.d=this.d.startOf("day"))}next(){return this.d=this.d.add(1,"year"),this}last(){return this.d=this.d.minus(1,"year"),this}}class xm extends Sn{constructor(t,r,n){super(t,r,n),this.unit="day",this.isWeekDay=!0,typeof t=="string"?(this.d=pt(n.today,n.timezone),this.d=this.d.day(t),this.d.isBefore(n.today)&&(this.d=this.d.add(7,"days"))):this.d=t,this.weekDay=this.d.dayName(),this.d.isValid()&&(this.d=this.d.startOf("day"))}next(){return this.d=this.d.add(7,"days"),this.d=this.d.day(this.weekDay),this}last(){return this.d=this.d.minus(7,"days"),this.d=this.d.day(this.weekDay),this}before(){return this.d=this.d.minus(1,"day"),this.d=this.d.endOf("day"),this.context.dayEnd&&(this.d=this.d.time(this.context.dayEnd)),this}applyRel(t){if(t==="next"){let r=this.context.today.endOf("week").add(1,"week");return this.next(),this.d.isAfter(r)&&this.last(),this}if(t==="this-past")return this.last();if(t==="last"){let r=this.context.today.startOf("week");return this.last(),this.d.isBefore(r)===!1&&this.last(),this}return this}}class n_ extends Ln{constructor(t,r,n){super(t,r,n),this.unit="day",this.d.isValid()&&(this.d=this.d.startOf("day"))}}class yl extends dn{constructor(t,r,n){super(t,r,n,!0),this.unit="hour",this.d.isValid()&&(this.d=this.d.startOf("hour"))}}class Rw extends dn{constructor(t,r,n){super(t,r,n,!0),this.unit="minute",this.d.isValid()&&(this.d=this.d.startOf("minute"))}}class aa extends dn{constructor(t,r,n){super(t,r,n,!0),this.unit="millisecond"}}class a_ extends dn{constructor(t,r,n){super(t,r,n),this.unit="month",this.d.isValid()&&(this.d=this.d.startOf(this.unit))}}class ei extends dn{constructor(t,r,n){super(t,r,n),this.unit="month",this.d.isValid()&&(this.d=this.d.startOf(this.unit))}next(){return this.d=this.d.add(1,"year"),this.d=this.d.startOf("month"),this}last(){return this.d=this.d.minus(1,"year"),this.d=this.d.startOf("month"),this}middle(){return this.d=this.d.add(15,"days"),this.d=this.d.startOf("day"),this}}class Tg extends dn{constructor(t,r,n){super(t,r,n),this.unit="quarter",this.d.isValid()&&(this.d=this.d.startOf(this.unit))}last(){return this.d=this.d.minus(1,"quarter"),this.d=this.d.startOf(this.unit),this}}class Dm extends dn{constructor(t,r,n){super(t,r,n),this.unit="quarter",this.d.isValid()&&(this.d=this.d.startOf(this.unit))}next(){return this.d=this.d.add(1,"year"),this.d=this.d.startOf(this.unit),this}last(){return this.d=this.d.minus(1,"year"),this.d=this.d.startOf(this.unit),this}}class md extends dn{constructor(t,r,n){super(t,r,n),this.unit="season",this.d.isValid()&&(this.d=this.d.startOf(this.unit))}next(){return this.d=this.d.add(1,"year"),this.d=this.d.startOf(this.unit),this}last(){return this.d=this.d.minus(1,"year"),this.d=this.d.startOf(this.unit),this}}class Nm extends dn{constructor(t,r,n){super(t,r,n),this.unit="year",this.d.isValid()&&(this.d=this.d.startOf("year"))}}class zs extends dn{constructor(t,r,n){super(t,r,n),this.unit="week",this.d.isValid()&&(this.d=this.d.startOf("week"))}clone(){return new zs(this.d,this.unit,this.context)}middle(){return this.d=this.d.add(2,"days"),this}beforeEnd(){return this.d=this.d.day("friday"),this}}class Lw extends dn{constructor(t,r,n){super(t,r,n),this.unit="week",this.d.isValid()&&(this.d=this.d.day("saturday"),this.d=this.d.startOf("day"))}start(){return this.d=this.d.day("saturday").startOf("day"),this}next(){return this.d=this.d.add(1,this.unit),this.d=this.d.startOf("weekend"),this}last(){return this.d=this.d.minus(1,this.unit),this.d=this.d.startOf("weekend"),this}}const Gn={today:e=>new Sn(e.today,null,e),yesterday:e=>new Sn(e.today.minus(1,"day"),null,e),tomorrow:e=>new Sn(e.today.plus(1,"day"),null,e),eom:e=>{let t=e.today.endOf("month");return t=t.startOf("day"),new Sn(t,null,e)},eoy:e=>{let t=e.today.endOf("year");return t=t.startOf("day"),new Sn(t,null,e)},now:e=>new aa(e.today,null,e)};Gn.tommorrow=Gn.tomorrow;Gn.tmrw=Gn.tomorrow;Gn.anytime=Gn.today;Gn.sometime=Gn.today;const i_=function(e,t,r){let n=null;e.found===!1&&(r.time!==null&&(n=new aa(t.today,null,t)),r.shift&&Object.keys(r.shift).length>0&&(r.shift.hour||r.shift.minute?n=new aa(t.today,null,t):n=new Sn(t.today,null,t)));let a=e.text("reduced");return Gn.hasOwnProperty(a)===!0?Gn[a](t):a==="next"&&r.shift&&Object.keys(r.shift).length>0?Gn.tomorrow(t):n},Ti="january",Mi="february",Mg="march",_u="april",yo="may",o_="june",Iu="july",zu="august",gf="september",ys="october",Ua="november",ra="december";var ju={"new years eve":[ra,31],"new years":[Ti,1],"new years day":[Ti,1],"inauguration day":[Ti,20],"australia day":[Ti,26],"national freedom day":[Mi,1],"groundhog day":[Mi,2],"rosa parks day":[Mi,4],"valentines day":[Mi,14],"saint valentines day":[Mi,14],"st valentines day ":[Mi,14],"saint patricks day":[Mg,17],"st patricks day":[Mg,17],"april fools":[_u,1],"april fools day":[_u,1],"emancipation day":[_u,16],"tax day":[_u,15],"labour day":[yo,1],"cinco de mayo":[yo,5],"national nurses day":[yo,6],"harvey milk day":[yo,22],"victoria day":[yo,24],juneteenth:[o_,19],"canada day":[Iu,1],"independence day":[Iu,4],"independents day":[Iu,4],"bastille day":[Iu,14],"purple heart day":[zu,7],"womens equality day":[zu,26],"16 de septiembre":[gf,16],"dieciseis de septiembre":[gf,16],"grito de dolores":[gf,16],halloween:[ys,31],"all hallows eve":[ys,31],"day of the dead":[ys,31],"dia de muertos":[ys,31],"veterans day":[Ua,11],"st andrews day":[Ua,30],"saint andrews day":[Ua,30],"all saints day":[Ua,1],"all sts day":[Ua,1],"armistice day":[Ua,11],"rememberance day":[Ua,11],"christmas eve":[ra,24],christmas:[ra,25],xmas:[ra,25],"boxing day":[ra,26],"st stephens day":[ra,26],"saint stephens day":[ra,26],epiphany:[Ti,6],"orthodox christmas day":[Ti,7],"orthodox new year":[Ti,14],"assumption of mary":[zu,15],"all souls day":[Ua,2],"feast of the immaculate conception":[ra,8],"feast of our lady of guadalupe":[ra,12],kwanzaa:[ra,26],imbolc:[Mi,2],beltaine:[yo,1],lughnassadh:[zu,1],samhain:[ys,31]};const s_=function(e,t,r,n){if(ju.hasOwnProperty(e)||ju.hasOwnProperty(t)){let a=ju[e]||ju[t]||[],i=pt.now(n);if(i=i.year(r),i=i.startOf("year"),i=i.month(a[0]),i=i.date(a[1]),i.isValid())return i}return null};var u_=s_;const l_="january",c_="february",f_="march",m_="may",d_="june",h_="september",Fg="october",Pg="november",bo="monday",p_="thursday",g_="friday",kg="sunday";let Ui={"martin luther king day":[3,bo,l_],"presidents day":[3,bo,c_],"commonwealth day":[2,bo,f_],"mothers day":[2,kg,m_],"fathers day":[3,kg,d_],"labor day":[1,bo,h_],"columbus day":[2,bo,Fg],"canadian thanksgiving":[2,bo,Fg],thanksgiving:[4,p_,Pg],"black friday":[4,g_,Pg]};Ui["turday day"]=Ui.thanksgiving;Ui["indigenous peoples day"]=Ui["columbus day"];Ui["mlk day"]=Ui["martin luther king day"];var qu=Ui;const v_=function(e,t,r,n){if(qu.hasOwnProperty(e)||qu.hasOwnProperty(t)){let a=qu[e]||qu[t]||[],i=pt.now(n);i=i.year(r),i=i.month(a[2]),i=i.startOf("month");let o=i.month();if(i=i.day(a[1]),i.month()!==o&&(i=i.add(1,"week")),a[0]>1&&(i=i.add(a[0]-1,"week")),i.isValid())return i}return null};var y_=v_;let Wi={easter:0,"ash wednesday":-46,"palm sunday":7,"maundy thursday":-3,"good friday":-2,"holy saturday":-1,"easter saturday":-1,"easter monday":1,"ascension day":39,"whit sunday":49,"whit monday":50,"trinity sunday":65,"corpus christi":60,"mardi gras":-47};Wi["easter sunday"]=Wi.easter;Wi.pentecost=Wi["whit sunday"];Wi.whitsun=Wi["whit sunday"];var Ru=Wi;const b_=function(e){let t=Math.floor,r=e%19,n=t(e/100),a=(n-t(n/4)-t((8*n+13)/25)+19*r+15)%30,i=a-t(a/28)*(1-t(29/(a+1))*t((21-r)/11)),o=(e+t(e/4)+i+2-n+t(n/4))%7,s=i-o,u=3+t((s+40)/44),l=s+28-31*t(u/4);return u=u===4?"April":"March",u+" "+l};var w_=b_;const x_=function(e,t,r,n){if(Ru.hasOwnProperty(e)||Ru.hasOwnProperty(t)){let a=Ru[e]||Ru[t]||[],i=w_(r);if(!i)return null;let o=pt(i,n);o=o.year(r);let s=o.add(a,"day");if(s.isValid())return s}return null};var D_=x_;const Lu={spring:[2003,2007,2044,2048,2052,2056,2060,2064,2068,2072,2076,2077,2080,2081,2084,2085,2088,2089,2092,2093,2096,2097],summer:[2021,2016,2020,2024,2028,2032,2036,2040,2041,2044,2045,2048,2049,2052,2053,2056,2057,2060,2061,2064,2065,2068,2069,2070,2072,2073,2074,2076,2077,2078,2080,2081,2082,2084,2085,2086,2088,2089,2090,2092,2093,2094,2096,2097,2098,2099],fall:[2002,2003,2004,2006,2007,2010,2011,2014,2015,2018,2019,2022,2023,2026,2027,2031,2035,2039,2043,2047,2051,2055,2059,2092,2096],winter:[2002,2003,2006,2007,2011,2015,2019,2023,2027,2031,2035,2039,2043,2080,2084,2088,2092,2096]},N_=[2080,2084,2088,2092,2096],A_=function(e){let t={spring:"March 20 "+e,summer:"June 21 "+e,fall:"Sept 22 "+e,winter:"Dec 21 "+e};return Lu.spring.indexOf(e)!==-1&&(t.spring="March 19 "+e),Lu.summer.indexOf(e)!==-1&&(t.summer="June 20 "+e),Lu.fall.indexOf(e)!==-1&&(t.fall="Sept 21 "+e),Lu.winter.indexOf(e)!==-1&&(t.winter="Dec 22 "+e),N_.indexOf(e)!==-1&&(t.winter="Dec 20 "+e),t};var C_=A_;let _t={"spring equinox":"spring","summer solistice":"summer","fall equinox":"fall","winter solstice":"winter"};_t["march equinox"]=_t["spring equinox"];_t["vernal equinox"]=_t["spring equinox"];_t.ostara=_t["spring equinox"];_t["june solstice"]=_t["summer solistice"];_t.litha=_t["summer solistice"];_t["autumn equinox"]=_t["fall equinox"];_t["autumnal equinox"]=_t["fall equinox"];_t["september equinox"]=_t["fall equinox"];_t["sept equinox"]=_t["fall equinox"];_t.mabon=_t["fall equinox"];_t["december solstice"]=_t["winter solistice"];_t["dec solstice"]=_t["winter solistice"];_t.yule=_t["winter solistice"];var Hu=_t;const E_=function(e,t,r,n){if(Hu.hasOwnProperty(e)||Hu.hasOwnProperty(t)){let a=Hu[e]||Hu[t],i=C_(r);if(!a||!i||!i[a])return null;let o=pt(i[a],n);if(o.isValid())return o}return null};var S_=E_;let T_={"isra and miraj":"april 13","lailat al-qadr":"june 10","eid al-fitr":"june 15","id al-Fitr":"june 15","eid ul-Fitr":"june 15",ramadan:"may 16","eid al-adha":"sep 22",muharram:"sep 12","prophets birthday":"nov 21"};var Gu=T_;const M_=-10.64,F_=function(e,t,r,n){if(Gu.hasOwnProperty(e)||Gu.hasOwnProperty(t)){let a=Gu[e]||Gu[t]||[];if(!a)return null;let i=pt(a+" 2018",n),s=(r-2018)*M_;if(i=i.add(s,"day"),i=i.startOf("day"),i=i.year(r),i.isValid())return i}return null};var P_=F_;const k_=pt.now().year(),Og=function(e,t,r){t=t||k_,e=e||"",e=String(e),e=e.trim().toLowerCase(),e=e.replace(/'s/,"s");let n=e.replace(/ day$/,"");n=n.replace(/^the /,""),n=n.replace(/^orthodox /,"");let a=u_(e,n,t,r);return a!==null||(a=y_(e,n,t,r),a!==null)||(a=D_(e,n,t,r),a!==null)||(a=S_(e,n,t,r),a!==null)||(a=P_(e,n,t,r),a!==null)?a:null},O_=function(e,t){let r=null,n=e.match("[<holiday>#Holiday+] [<year>#Year?]"),a=t.today.year();n.groups("year").found&&(a=Number(n.groups("year").text("reduced"))||a);let i=n.groups("holiday").text("reduced"),o=Og(i,a,t.timezone);return o!==null&&(o.isBefore(t.today)&&a===t.today.year()&&(o=Og(i,a+1,t.timezone)),r=new n_(o,null,t)),r},Am={day:Sn,hour:yl,evening:yl,second:aa,milliscond:aa,instant:aa,minute:Rw,week:zs,weekend:Lw,month:a_,quarter:Tg,year:Nm,season:md,yr:Nm,qtr:Tg,wk:zs,sec:aa,hr:yl};let $_=`^(${Object.keys(Am).join("|")})$`;const B_=function(e,t){let r=e.match($_);if(r.found===!0){let n=r.text("reduced");if(Am.hasOwnProperty(n)){let a=Am[n];return a?new a(null,n,t):null}}if(r=e.match("^#WeekDay$"),r.found===!0){let n=r.text("reduced");return new xm(n,null,t)}return null},Vu=function(e){return{date:e.today.date(),month:e.today.month(),year:e.today.year()}},__=function(e,t){let r=e.match("(spring|summer|winter|fall|autumn) [<year>#Year?]");if(r.found){let n=e.text("reduced"),a=pt(n,t.timezone,{today:Vu(t)}),i=new md(a,null,t);if(i.d.isValid()===!0)return i}if(r=e.match("[<q>#FinancialQuarter] [<year>#Year?]"),r.found){let n=r.groups("q").text("reduced"),a=pt(n,t.timezone,{today:Vu(t)});if(r.groups("year")){let o=Number(r.groups("year").text())||t.today.year();a=a.year(o)}let i=new Dm(a,null,t);if(i.d.isValid()===!0)return i}if(r=e.match("[<q>#Value] quarter (of|in)? [<year>#Year?]"),r.found){let n=r.groups("q").text("reduced"),a=pt(`q${n}`,t.timezone,{today:Vu(t)});if(r.groups("year")){let o=Number(r.groups("year").text())||t.today.year();a=a.year(o)}let i=new Dm(a,null,t);if(i.d.isValid()===!0)return i}if(r=e.match("^#Year$"),r.found){let n=e.text("reduced"),a=pt(null,t.timezone,{today:Vu(t)});a=a.year(n);let i=new Nm(a,null,t);if(i.d.isValid()===!0)return i}return null},I_=function(e,t){let r=t.today.year(),n=e.match("[<date>#Value] of? [<month>#Month] [<year>#Year]");if(n.found||(n=e.match("[<month>#Month] the? [<date>#Value] [<year>#Year]")),n.found){let o={month:n.groups("month").text("reduced"),date:n.groups("date").text("reduced"),year:n.groups("year").text()||r},s=new Ln(o,null,t);if(s.d.isValid()===!0)return s}if(n=e.match("[<month>#Month] of? [<year>#Year]"),n.found){let o={month:n.groups("month").text("reduced"),year:n.groups("year").text("reduced")||r},s=new ei(o,null,t);if(s.d.isValid()===!0)return s}if(n=e.match("[<month>#Month] [<date>#Value+]? of? the? [<rel>(this|next|last|current)] year"),n.found){let o=n.groups("rel").text("reduced"),s=r;o==="next"?s+=1:o==="last"&&(s-=1);let u={month:n.groups("month").text("reduced"),date:n.groups("date").numbers(0).get()[0],year:s};if(u.date===void 0){u.date=1;let c=new ei(u,null,t);if(c.d.isValid()===!0)return c}let l=new Ln(u,null,t);if(l.d.isValid()===!0)return l}if(n=e.match("^the? [<date>#Value+]? of? [<rel>(this|next|last|current)] month"),n.found){let o=t.today.month(),s=n.groups("rel").text("reduced");s==="next"?o+=1:s==="last"&&(o-=1);let u={month:o,date:n.groups("date").numbers(0).get()[0]},l=new Ln(u,null,t);if(l.d.isValid()===!0)return l}if(n=e.match("[<date>#Value] of? [<month>#Month]"),n.found||(n=e.match("[<month>#Month] the? [<date>#Value]")),n.found){let o={month:n.groups("month").text("reduced"),date:n.groups("date").text("reduced"),year:t.today.year()},s=new Ln(o,null,t);if(s.d.month()<t.today.month()&&(o.year+=1,s=new Ln(o,null,t)),s.d.isValid()===!0)return s}if(e.has("#Month")){let o={month:e.match("#Month").text("reduced"),date:1,year:t.today.year()},s=new ei(o,null,t);if(s.d.month()<t.today.month()&&(o.year+=1,s=new ei(o,null,t)),s.d.isValid()===!0)return s}if(n=e.match("#WeekDay [<date>#Value]"),n.found){let o={month:t.today.month(),date:n.groups("date").text("reduced"),year:t.today.year()},s=new Ln(o,null,t);if(s.d.isValid()===!0)return s}if(n=e.match("the [<date>#Value]"),n.found){let o={month:t.today.month(),date:n.groups("date").text("reduced"),year:t.today.year()},s=new Ln(o,null,t);if(s.d.isValid()===!0)return s.d.isBefore(t.today)&&(s.d=s.d.add(1,"month")),s}if(n=e.match("/[0-9]{4}-[0-9]{2}-[0-9]{2}t[0-9]{2}:/"),n.found){let o=e.text("reduced"),s=new aa(o,null,t);if(s.d.isValid()===!0)return s}let a=e.text("reduced");if(!a)return new aa(t.today,null,t);let i=new Sn(a,null,t);return i.d.isValid()===!1?null:i},z_=function(e,t,r){let n=null;return n=n||i_(e,t,r),n=n||O_(e,t),n=n||B_(e,t),n=n||__(e,t),n=n||I_(e,t),n},j_={day:Sn,week:zs,weekend:Lw,month:ei,quarter:Dm,season:md,hour:yl,minute:Rw},q_=function(e,t={}){let r=j_[t.unit];if(!r)return e;let n=e.d;t.dir==="first"||t.num===0?(n=e.start().d,n=n.startOf(t.unit)):t.dir==="last"?(n=n.endOf(e.unit),t.unit==="weekend"?n=n.day("saturday",!1):n=n.startOf(t.unit)):t.num&&(t.unit==="weekend"&&(n=n.day("saturday",!0).add(1,"day")),n=n.add(t.num,t.unit));let a=new r(n,null,e.context);return a.d.isValid()===!0?a:e},R_=function(e,t,r){if(!e&&r.weekDay&&(e=new xm(r.weekDay,null,t),r.weekDay=null),!e)return null;if(r.shift){let n=r.shift;e.applyShift(n),n.hour||n.minute?e=new aa(e.d,null,e.context):(n.week||n.day||n.month)&&(e=new Sn(e.d,null,e.context))}return r.weekDay&&e.unit!=="day"&&(e.applyWeekDay(r.weekDay),e=new xm(e.d,null,e.context)),r.rel&&e.applyRel(r.rel),r.section&&e.applySection(r.section),r.time&&e.applyTime(r.time),r.counter&&r.counter.unit&&(e=q_(e,r.counter)),e},L_=typeof process>"u"||!process.env?self.env||{}:process.env,H_=e=>{L_.DEBUG_DATE&&(console.log(`
|
|
20
|
-
==== '${e.doc.text()}' =====`),Object.keys(e).forEach(t=>{t!=="doc"&&e[t]&&console.log(t,e[t])}),e.doc.debug())},xt=function(e,t){let r=r_(e,t);if(e=r.doc,H_(r),r.tz){t=Object.assign({},t,{timezone:r.tz});let a=t.today.format("iso-short");t.today=t.today.goto(t.timezone).set(a)}let n=z_(e,t,r);return n=R_(n,t,r),n},$g={mon:"monday",tue:"tuesday",tues:"wednesday",wed:"wednesday",thu:"thursday",fri:"friday",sat:"saturday",sun:"sunday",monday:"monday",tuesday:"tuesday",wednesday:"wednesday",thursday:"thursday",friday:"friday",saturday:"saturday",sunday:"sunday"},Uu=function(e){return e.match("(every|each)").found?"AND":e.match("(any|a)").found?"OR":null},G_=function(e,t){let r=e.match("[<logic>(every|any|each)] [<skip>other?] [<unit>#Duration] (starting|beginning|commencing)?");if(r.found){let n={interval:{}},a=r.groups("unit").text("reduced");return n.interval[a]=1,n.choose=Uu(r),r.groups("skip").found&&(n.interval[a]=2),e=e.remove(r),{repeat:n}}if(r=e.match("[<logic>(every|any|each)] [<num>#Value] [<unit>#Duration] (starting|beginning|commencing)?"),r.found){let n={interval:{}},a=r.groups("unit");a.nouns().toSingular();let i=a.text("reduced");return n.interval[i]=r.groups("num").numbers().get()[0],n.choose=Uu(r),e=e.remove(r),{repeat:n}}if(r=e.match("[<logic>(every|any|each|a)] [<skip>other?] [<day>#WeekDay+] (starting|beginning|commencing)?"),r.found){let n={interval:{day:1},filter:{weekDays:{}}},a=r.groups("day").text("reduced");if(a=$g[a],a)return n.filter.weekDays[a]=!0,n.choose=Uu(r),e=e.remove(r),{repeat:n}}if(r=e.match("[<logic>(every|any|each|a)] [<day>(weekday|week day|weekend|weekend day)] (starting|beginning|commencing)?"),r.found){let n={interval:{day:1},filter:{weekDays:{}}},a=r.groups("day");return a.has("(weekday|week day)")?n.filter.weekDays={monday:!0,tuesday:!0,wednesday:!0,thursday:!0,friday:!0}:a.has("(weekend|weekend day)")&&(n.filter.weekDays={saturday:!0,sunday:!0}),n.choose=Uu(r),e=e.remove(r),{repeat:n}}if(r=e.match("[<day>(mondays|tuesdays|wednesdays|thursdays|fridays|saturdays|sundays)] (at|near|after)? [<time>#Time+?]"),r.found){let n={interval:{day:1},filter:{weekDays:{}}},a=r.groups("day").text("reduced");if(a=a.replace(/s$/,""),a=$g[a],a){n.filter.weekDays[a]=!0,n.choose="OR",e=e.remove(r);let i=r.groups("time");return i.found&&(n.time=fd(i,t)),{repeat:n}}}return null},Ts=function(e){let t=e.start,r=e.end;if(t.d.isAfter(r.d)){if(t.isWeekDay&&r.isWeekDay)return e.end.next(),e;let n=t;e.start=r,e.end=n}return e},vf=function(e){let t=e.start,r=e.end;return t.d.isAfter(r.d)&&r.d.hour()<10&&(r.d=r.d.ampm("pm")),e},V_=[{match:"[<from>#Time+] (to|until|upto|through|thru|and) [<to>#Time+ #Date+]",desc:"3pm to 4pm january 5th",parse:(e,t)=>{let r=e.groups("from"),n=e.groups("to"),a=xt(n,t);if(a){let i=a.clone();if(i.applyTime(r.text("implicit")),i){let o={start:i,end:a,unit:"time"};return/(am|pm)/.test(n)===!1&&(o=vf(o)),o=Ts(o),o}}return null}},{match:"[<main>#Date+] from [<a>#Time] (to|until|upto|through|thru|and) [<b>#Time+]",desc:"january from 3pm to 4pm",parse:(e,t)=>{let r=e.groups("main"),n=e.groups("a"),a=e.groups("b");if(r=xt(r,t),r){r.applyTime(n.text("implicit"));let i=r.clone();if(i.applyTime(a.text("implicit")),i){let o={start:r,end:i,unit:"time"};return/(am|pm)/.test(a.text())===!1&&(o=vf(o)),o=Ts(o),o}}return null}},{match:"[<from>#Date+] (to|until|upto|through|thru|and) [<to>#Time+]",desc:"january from 3pm to 4pm",parse:(e,t)=>{let r=e.groups("from"),n=e.groups("to");if(r=xt(r,t),r){let a=r.clone();if(a.applyTime(n.text("implicit")),a){let i={start:r,end:a,unit:"time"};return/(am|pm)/.test(n.text())===!1&&(i=vf(i)),i=Ts(i),i}}return null}}],U_=[{match:"^during? #Month+ (or|and) #Month [<year>#Year]?",desc:"march or june",parse:(e,t)=>{let r=e.match("^during? [#Month]",0);e=e.not("(or|and)");let n=xt(r,t);if(n){let a=[{start:n,end:n.clone().end(),unit:n.unit}],i=e.not(r);i.found&&i.match("#Month").forEach(s=>{let u=xt(s,t);a.push({start:u,end:u.clone().end(),unit:u.unit})});let o=e.match("#Year$");return o.found&&(o=o.text("reduced"),a.forEach(s=>{s.start.d=s.start.d.year(o),s.end.d=s.end.d.year(o)})),a}return null}},{match:"^#Month #Value+ (or|and)? #Value$",desc:"jan 5 or 8",parse:(e,t)=>{e=e.not("(or|and)");let r=e.match("^#Month #Value"),n=xt(r,t);if(n){let a=[{start:n,end:n.clone().end(),unit:n.unit}],i=e.not(r);return i.found&&i.match("#Value").forEach(o=>{let s=n.clone();s.d=s.d.date(o.text("reduced")),a.push({start:s,end:s.clone().end(),unit:s.unit})}),a}return null}},{match:"^#Month+ #Value #Value+$",desc:"jan 5 8",parse:(e,t)=>{let r=e.match("#Month"),n=e.match("#Year");e=e.not("#Year");let a=[];return e.match("#Value").forEach(i=>{i=i.clone();let o=i.prepend(r.text());n.found&&o.append(n);let s=xt(o,t);s&&a.push({start:s,end:s.clone().end(),unit:s.unit})}),a}},{match:"^#Value+ (or|and)? #Value of #Month #Year?$",desc:"5 or 8 of Jan",parse:(e,t)=>{let r=e.match("#Month"),n=e.match("#Year");e=e.not("#Year");let a=[];return e.match("#Value").forEach(i=>{let o=i.append(r);n.found&&o.append(n);let s=xt(o,t);s&&a.push({start:s,end:s.clone().end(),unit:s.unit})}),a}},{match:"^!(between|from|during)? [<from>#Date+] (and|or) [<to>#Date+]$",desc:"A or B",parse:(e,t)=>{let r=e.groups("from"),n=e.groups("to"),a=xt(r,t),i=xt(n,t);return a&&i?[{start:a,end:a.clone().end()},{start:i,end:i.clone().end()}]:null}}],W_=[{match:"between [<start>#Month] and [<end>#Month] [<year>#Year?]",desc:"between march and jan",parse:(e,t)=>{let{start:r,end:n,year:a}=e.groups(),i=a&&a.found?Number(a.text("reduced")):t.today.year(),o={month:r.text("reduced"),year:i},s=new ei(o,null,t).start();o={month:n.text("reduced"),year:i};let u=new ei(o,null,t).start();return s.d.isAfter(u.d)?{start:u,end:s}:{start:s,end:u}}},{match:"between [<start>.+] and [<end>.+]",desc:"between friday and sunday",parse:(e,t)=>{let r=e.groups("start");r=xt(r,t);let n=e.groups("end");return n=xt(n,t),r&&n?(n=n.before(),{start:r,end:n}):null}},{match:"[<from>#Month #Value] (to|through|thru) [<to>#Month #Value] [<year>#Year?]",desc:"june 5 to june 7",parse:(e,t)=>{let r=e.groups(),n=r.from;if(r.year&&(n=n.append(r.year)),n=xt(n,t),n){let a=r.to;if(r.year&&(a=a.append(r.year)),a=xt(a,t),a)return n.d.isAfter(a.d)&&(a.d=a.d.add(1,"year")),{start:n,end:a.end()}}return null}},{match:"[<month>#Month] [<from>#Value] (to|through|thru) [<to>#Value] of? [<year>#Year]",desc:"january 5 to 7 1998",parse:(e,t)=>{let{month:r,from:n,to:a,year:i}=e.groups(),o=i.clone(),s=n.prepend(r).append(i);if(s=xt(s,t),s){let u=a.prepend(r).append(o);return u=xt(u,t),{start:s,end:u.end()}}return null}},{match:"[<from>#Value] (to|through|thru) [<to>#Value of? #Month #Date+?]",desc:"5 to 7 of january 1998",parse:(e,t)=>{let r=e.groups("to");if(r=xt(r,t),r){let n=e.groups("from"),a=r.clone();return a.d=a.d.date(n.text("implicit")),{start:a,end:r.end()}}return null}},{match:"[<from>#Month #Value] (to|through|thru) [<to>#Value]",desc:"january 5 to 7",parse:(e,t)=>{let r=e.groups("from");if(r=xt(r,t),r){let n=e.groups("to"),a=r.clone();return a.d=a.d.date(n.text("implicit")),{start:r,end:a.end()}}return null}},{match:"from? [<from>#Month] (to|until|upto|through|thru) [<to>#Month] [<year>#Year]",desc:"january to may 2020",parse:(e,t)=>{let r=e.groups("from"),n=e.groups("year").numbers().get()[0],a=e.groups("to");if(r=xt(r,t),a=xt(a,t),r.d=r.d.year(n),a.d=a.d.year(n),r&&a){let i={start:r,end:a.end()};return i=Ts(i),i}return null}},{match:"^in [<min>#Value] to [<max>#Value] [<unit>(days|weeks|months|years)]",desc:"in 2 to 4 weeks",parse:(e,t)=>{const{min:r,max:n,unit:a}=e.groups();let i=new Ln(t.today,null,t),o=i.clone();const s=a.text("implicit");return i=i.applyShift({[s]:r.numbers().get()[0]}),o=o.applyShift({[s]:n.numbers().get()[0]}),{start:i,end:o.end()}}},{match:"[<min>#Value] to [<max>#Value] [<unit>(days|weeks|months|years)] (ago|before|earlier|prior)",desc:"2 to 4 weeks ago",parse:(e,t)=>{const{min:r,max:n,unit:a}=e.groups();let i=new Ln(t.today,null,t),o=i.clone();const s=a.text("implicit");return i=i.applyShift({[s]:-n.numbers().get()[0]}),o=o.applyShift({[s]:-r.numbers().get()[0]}),{start:i,end:o.end()}}},{match:"^until [<to>#Date+]",desc:"until christmas",parse:(e,t)=>{let r=e.groups("to");return r=xt(r,t),r?{start:new Ln(t.today,null,t),end:r.start()}:null}},{match:"[<part>(1st|initial|2nd|latter)] half of [<month>#Month] [<year>#Year?]",desc:"second half of march",parse:(e,t)=>{const{part:r,month:n,year:a}=e.groups();let i={month:n.text("reduced"),date:1,year:a&&a.found?a.text("reduced"):t.today.year()},o=new ei(i,null,t);return r.has("(1st|initial)")?{start:o.start(),end:o.clone().middle()}:{start:o.middle(),end:o.clone().end()}}}],J_=function(e,t){return e=e.applyShift(t.punt),e},K_=[{match:"from? [<from>.+] (to|until|upto|through|thru) [<to>.+]",desc:"from A to B",parse:(e,t)=>{let r=e.groups("from"),n=e.groups("to");if(r=xt(r,t),n=xt(n,t),r&&n){let a={start:r,end:n.end()};return a=Ts(a),a}return null}},{match:"^due? (by|before) [.+]",desc:"before june",parse:(e,t)=>{e=e.group(0);let r=xt(e,t);if(r){let n=new dn(t.today,null,t);n.d.isAfter(r.d)&&(n=r.clone().applyShift({weeks:-2}));let a=r.clone().applyShift({day:-1});return{start:n,end:a.end()}}return null}},{match:"^(on|in|at|@|during) [.+]",desc:"in june",parse:(e,t)=>{e=e.group(0);let r=xt(e,t);return r?{start:r,end:r.clone().end(),unit:r.unit}:null}},{match:"^(after|following) [.+]",desc:"after june",parse:(e,t)=>{e=e.group(0);let r=xt(e,t);return r?(r=r.after(),{start:r.clone(),end:J_(r.clone(),t)}):null}},{match:"^(middle|center|midpoint) of [.+]",desc:"middle of",parse:(e,t)=>{e=e.group(0);let r=xt(e,t),n=r.clone().middle(),a=r.beforeEnd();return r?{start:n,end:a}:null}},{match:".+ after #Time+$",desc:"tuesday after 5pm",parse:(e,t)=>{let r=xt(e,t);if(r){let n=r.clone(),a=r.end();return{start:n,end:a,unit:"time"}}return null}},{match:".+ before #Time+$",desc:"tuesday before noon",parse:(e,t)=>{let r=xt(e,t);if(r){let n=r.clone(),a=r.start();if(r)return{start:a,end:n,unit:"time"}}return null}}],Bg=[].concat(V_,U_,W_,K_),Y_=typeof process>"u"||!process.env?self.env||{}:process.env,Z_=e=>{Y_.DEBUG_DATE&&console.log(`
|
|
21
|
-
\x1B[32m ${e} \x1B[0m`)},Q_=function(e){return Object.prototype.toString.call(e)==="[object Array]"},X_=function(e,t){let r={start:null,end:null};if(!e.found)return r;let n=xt(e,t);if(n){let a=n.clone().end();r={start:n,end:a,unit:n.setTime?"time":n.unit}}return r},e6=function(e,t){for(let r=0;r<Bg.length;r+=1){let n=Bg[r],a=e.match(n.match);if(a.found){Z_(` ---[${n.desc}]---`);let i=n.parse(a,t);if(i!==null)return Q_(i)||(i=[i]),i}}return null},t6=function(e,t){let r=G_(e,t)||{},n=e6(e,t);return n||(n=[X_(e,t)]),n=n.map(a=>Object.assign({},r,a)),n.forEach(a=>{a.start&&a.end&&a.start.d.epoch>a.end.d.epoch&&(a.start=a.start.start())}),n},r6=function(e){return e.numbers||console.warn(`
|
|
22
|
-
Compromise warning: compromise/three must be used with compromise-dates plugin
|
|
23
|
-
`),e=e.clone(),e.numbers().toNumber(),e.contractions().expand(),e.replace("week end","weekend",!0).tag("Date"),e.replace("up to","upto",!0).tag("Date"),e.has("once (a|an) #Duration")===!1&&e.match("[(a|an)] #Duration",0).replaceWith("1",{tags:!0}).compute("lexicon"),e.match("@hasDash").insertAfter("to").tag("Date"),e},Pi=function(e,t){return t=t||{},t.timezone===!1&&(t.timezone="UTC"),t.today=t.today||pt.now(t.timezone),t.today=pt(t.today,t.timezone),e=r6(e),t6(e,t)},n6=function(e){let r=e.end.d.add(1,"millisecond").since(e.start.d).diff;return delete r.milliseconds,delete r.seconds,r},_g=function(e){if(!e.start)return{start:null,end:null,timezone:null,duration:{}};let t=e.end?n6(e):{};return{start:e.start.format("iso"),end:e.end?e.end.format("iso"):null,timezone:e.start.d.format("timezone"),duration:t}},yf=function(e,t){let r=e.fromText(t),n=Pi(r,e.opts)[0];return!n||!n.start||!n.start.d?null:n.start.d},a6=function(e){class t extends e{constructor(n,a,i,o={}){super(n,a,i),this.viewType="Dates",this.opts=Object.assign({},o)}get(n){let a=[];return this.forEach(i=>{Pi(i,this.opts).forEach(o=>{let s=_g(o);s.start&&a.push(s)})}),typeof n=="number"?a[n]:a}json(n={}){return this.map(a=>{let i=a.toView().json(n)[0]||{};if(n&&n.dates!==!1){let o=Pi(a,this.opts);o.length>0&&(i.dates=_g(o[0]))}return i},[])}format(n){let i=this.map(o=>{let s=Pi(o,this.opts)[0]||{};if(s.start){let u=s.start.d,l=u.format(n);if(s.end){let c=s.end.d;u.isSame(c,"day")===!1&&(l+=" to "+c.format(n))}o.replaceWith(l)}return o});return new t(this.document,i.pointer,null,this.opts)}isBefore(n){let a=yf(this,n);return this.filter(i=>{let o=Pi(i,this.opts)[0]||{};return o.start&&o.start.d&&o.start.d.isBefore(a)})}isAfter(n){let a=yf(this,n);return this.filter(i=>{let o=Pi(i,this.opts)[0]||{};return o.start&&o.start.d&&o.start.d.isAfter(a)})}isSame(n,a){let i=yf(this,a);return this.filter(o=>{let s=Pi(o,this.opts)[0]||{};return s.start&&s.start.d&&s.start.d.isSame(i,n)})}}e.prototype.dates=function(r){let n=QO(this);return new t(this.document,n.pointer,null,r)}},i6=function(e){e=e.clone();let t=e.match("#Time+").match("[<hour>#Cardinal] [<min>(thirty|fifteen)]");if(t.found){let r=t.groups("hour"),n=t.groups("min"),a=r.values().get()[0];if(a>0&&a<=12){let i=n.values().get()[0],o=`${a}:${i}`;t.replaceWith(o)}}if(!e.numbers)console.warn(`Warning: compromise .numbers() not loaded.
|
|
24
|
-
This plugin requires >= v14`);else{let r=e.numbers();r.toNumber(),r.toCardinal(!1)}return e.contractions&&e.contractions().expand(),e.adverbs().remove(),e.replace("week end","weekend",!0).tag("Date"),e.replace("up to","upto",!0).tag("Date"),e.has("once (a|an) #Duration")===!1&&e.match("[(a|an)] #Duration",0).replaceWith("1").compute("lexicon"),e.match("@hasDash").insertAfter("to").tag("Date"),e},o6=function(e){return e.match("#Time+ (am|pm)?")},bf=function(e,t={}){e=i6(e);let r=fd(e,t);if(!r.result)return{time:null,"24h":null};let n=pt.now().time(r.result);return{time:r.result,"24h":n.format("time-24"),hour:n.hour(),minute:n.minute()}},Ig=(e,t)=>typeof t=="number"?e.eq(t):e,s6=function(e){class t extends e{constructor(n,a,i,o){super(n,a,i),this.viewType="Times",this.opts=o||{}}format(n){let i=this.map(o=>{let s=bf(o)||{};if(s.time){let u=pt.now().time(s.time),l=s.time;n==="24h"?l=u.format("time-24"):l=u.format(n),o=o.not("#Preposition"),o.replaceWith(l)}return o});return new t(this.document,i.pointer,null,this.opts)}get(n){return Ig(this,n).map(bf)}json(n={}){return this.map(a=>{let i=a.toView().json(n)[0]||{};return n&&n.time!==!1&&(i.time=bf(a)),i},[])}}e.prototype.times=function(r){let n=o6(this);return n=Ig(n,r),new t(this.document,n.pointer)}},zg={century:!0,day:!0,decade:!0,hour:!0,millisecond:!0,minute:!0,month:!0,second:!0,weekend:!0,week:!0,year:!0,quarter:!0,season:!0};let ji={m:"minute",h:"hour",hr:"hour",min:"minute",sec:"second","week end":"weekend",wk:"week",yr:"year",qtr:"quarter"};Object.keys(ji).forEach(e=>{ji[e+"s"]=ji[e]});const jg=function(e){let t={},r=e.match("#Value+ #Duration");if(r.found)r.forEach(n=>{let a=n.numbers().get()[0],i=n.terms().last().text("reduced");i=i.replace(/ies$/,"y"),i=i.replace(/s$/,""),ji.hasOwnProperty(i)&&(i=ji[i]),zg.hasOwnProperty(i)&&a!==null&&(t[i]=a)});else if(e.match("(#Duration && /[0-9][a-z]+$/)").found){let a=e.text(),i=a.match(/([0-9]+)/),o=a.match(/([a-z]+)/);i&&o&&(i=i[0]||null,o=o[0]||null,ji.hasOwnProperty(o)&&(o=ji[o]),zg.hasOwnProperty(o)&&i!==null&&(t[o]=Number(i)))}return t},u6=function(e){class t extends e{constructor(n,a,i){super(n,a,i),this.context={}}json(n={}){return this.map(a=>{let i=a.toView().json(n)[0]||{};return n&&n.duration!==!1&&(i.duration=jg(a)),i},[])}get(n){let a=[];return this.forEach(i=>{let o=jg(i);a.push(o)}),typeof n=="number"?a[n]:a}}e.prototype.durations=function(r){let n=this.match("#Value+ #Duration (and? #Value+ #Duration)?");return n=n.notIf("#DateShift"),typeof r=="number"&&(n=n.eq(r)),new t(this.document,n.pointer)}},l6=function(e){a6(e),s6(e),u6(e)},qg="(start|end|middle|starting|ending|midpoint|beginning)",ba=(e,t)=>{e.found===!0&&e.forEach(r=>{let n=r.text("reduced"),a=parseInt(n,10);a&&a>1e3&&a<3e3&&r.tag("Year",t)})},Wu=(e,t)=>{e.found===!0&&e.forEach(r=>{let n=r.text("reduced"),a=parseInt(n,10);a&&a>1900&&a<2030&&r.tag("Year",t)})},c6=function(e){e.match("(march|april|may) (and|to|or|through|until)? (march|april|may)").tag("Date").match("(march|april|may)").tag("Month","march|april|may");let t=e.if("#Cardinal");if(t.found===!0){let n=t.match("#Date #Value [#Cardinal]",0);ba(n,"date-value-year"),n=t.match("#Date [#Cardinal]",0),Wu(n,"date-year"),n=t.match(`${qg} of [#Cardinal]`),Wu(n,"section-year"),n=t.match("#Month #Value [#Cardinal]",0),ba(n,"month-value-year"),n=t.match("#Month #Value to #Value [#Cardinal]",0),ba(n,"month-range-year"),n=t.match("(in|of|by|during|before|starting|ending|for|year|since) [#Cardinal]",0),ba(n,"in-year-1"),n=t.match("(q1|q2|q3|q4) [#Cardinal]",0),ba(n,"in-year-2"),n=t.match("#Ordinal quarter of? [#Cardinal]",0),ba(n,"in-year-3"),n=t.match("the year [#Cardinal]",0),ba(n,"in-year-4"),n=t.match("it (is|was) [#Cardinal]",0),Wu(n,"in-year-5"),t.match(`${qg} of #Year`).tag("Date");let a=t.match("between [#Cardinal] and [#Cardinal]");ba(a.groups("0"),"between-year-and-year-1"),ba(a.groups("1"),"between-year-and-year-2")}let r=e.match("^/^20[012][0-9]$/$");return Wu(r,"2020-ish"),e},yn=function(e,t){e.found&&(e.tag("Date",t),e.numbers().lessThan(31).ifNo("#Year").tag("#Time",t))},f6=function(e){let t=e.if("#Date");if(t.found){let r=t.if("#NumberRange");if(r.found){let a=r.match("[#NumberRange+] (on|by|at)? #WeekDay",0);yn(a,"3-4-tuesday"),a=r.match("[#NumberRange+] (on|by|at)? #Month #Value",0),yn(a,"3-4 mar 3"),a=r.match("[#NumberRange] to (#NumberRange && #Time)",0),yn(a,"3-4pm"),a=r.match("(#NumberRange && #Time) to [#NumberRange]",0),yn(a,"3pm-4")}let n=t.match("(from|between) #Cardinal and #Cardinal (in|on)? (#WeekDay|tomorrow|yesterday)");yn(n,"from 9-5 tues"),n=e.match("#Cardinal to #Cardinal (#WeekDay|tomorrow|yesterday)"),yn(n,"9-5 tues"),n=t.match("(from|between) [#NumericValue] (to|and) #Time",0).tag("Time","4-to-5pm"),yn(n,"from 9-5pm"),n=t.match("(#WeekDay|tomorrow|yesterday) (from|between)? (#Cardinal|#Time) (and|to) (#Cardinal|#Time)"),yn(n,"tues 3-5"),n=t.match("#Month #Value+ (from|between) [<time>(#Cardinal|#Time) (and|to) (#Cardinal|#Time)]").group("time"),yn(n,"sep 4 from 9-5"),n=t.match("#Time to #Cardinal on? #Date"),yn(n,"3pm-4 wed"),n=t.match("#Cardinal to #Time on? #Date"),yn(n,"3-4pm wed"),n=t.match("#Cardinal to #Cardinal on? (#WeekDay|#Month #Value)"),yn(n,"3-4 wed")}return e},m6=["act","aft","akst","anat","art","azot","azt","bnt","bot","bt","cast","cat","cct","chast","chut","ckt","cvt","cxt","davt","eat","ect","fjt","fkst","fnt","gamt","get","gft","gilt","gyt","hast","hncu","hneg","hnnomx","hnog","hnpm","hnpmx","hntn","hovt","iot","irkt","jst","kgt","kost","lint","magt","mart","mawt","mmt","nct","nft","novt","npt","nrt","nut","nzst","omst","pet","pett","phot","phst","pont","pwt","ret","sakt","samt","sbt","sct","sret","srt","syot","taht","tft","tjt","tkt","tlt","tmt","tot","tvt","ulat","vut","wakt","wat","wet","wft","wit","wst","yekt"].reduce((e,t)=>(e[t]=!0,e),{}),d6=function(e){let t=e.match("#Time [#Acronym]",0);if(t.found){let r=t.text("reduced");m6[r]===!0&&t.tag("Timezone","tz-abbr")}},h6="fix-tagger",p6=function(e){if(e.has("#Date")){let t=e.match("#Date+ by #Date+");t.found&&!t.has("^due")&&t.match("^#Date+").unTag("Date","by-monday");let r=e.match("#Date+");r.has("^between")&&!r.has("and .")&&r.unTag("Date",h6),r.has("(minutes|seconds|weeks|hours|days|months)")&&!r.has("#Value #Duration")&&r.match("(minutes|seconds|weeks|hours|days|months)").unTag("Date","log-hours"),r.has("about #Holiday")&&r.match("about").unTag("#Date","about-thanksgiving"),r.match("#Date+").match("^the").unTag("Date")}return e},wf="(in|by|before|during|on|until|after|of|within|all)",Rg="(last|next|this|previous|current|upcoming|coming)",xf="(start|end|middle|starting|ending|midpoint|beginning|mid)",Df="(spring|summer|winter|fall|autumn)",Lg="(yesterday|today|tomorrow)";let g6=[{match:"in the (night|evening|morning|afternoon|day|daytime)",tag:"Time",reason:"in-the-night"},{match:"(#Value|#Time) (am|pm)",tag:"Time",reason:"value-ampm"},{match:"(tue|thu)",tag:"WeekDay",reason:"misc-weekday"},{match:"#Month #Date+",tag:"Date",reason:"correction-numberRange"},{match:"#Value of #Month",tag:"Date",unTag:"Time",reason:"value-of-month"},{match:"#Cardinal #Month",tag:"Date",reason:"cardinal-month"},{match:"#Month #Value (and|or|to)? #Value+",tag:"Date",reason:"value-to-value"},{match:"#Month the #Value",tag:"Date",reason:"month-the-value"},{match:"[(march|may)] to? #Date",group:0,tag:"Month",reason:"march-to"},{match:"^(march|may)$",tag:"Month",reason:"single-march"},{match:"#Month or #Month",tag:"Date",reason:"month-or-month"},{match:"(#WeekDay|#Month) #Value",ifNo:"#Money",tag:"Date",reason:"date-value"},{match:"#Value (#WeekDay|#Month)",ifNo:"#Money",tag:"Date",reason:"value-date"},{match:"#Value (#WeekDay|#Duration) back",tag:"#Date",reason:"3-back"},{match:"for #Value #Duration",tag:"Date",reason:"for-x-duration"},{match:"#Value #Duration (before|ago|hence|back)",tag:"Date",reason:"val-duration-past"},{match:`${wf}? #Value #Duration`,tag:"Date",reason:"value-duration"},{match:"in? #Value to #Value #Duration time?",tag:"Date",reason:"6-to-8-years"},{match:"#Value #Duration old",unTag:"Date",reason:"val-years-old"},{match:`${wf}? ${Rg} ${Df}`,tag:"Date",reason:"thisNext-season"},{match:`the? ${xf} of ${Df}`,tag:"Date",reason:"section-season"},{match:`${Df} ${wf}? #Cardinal`,tag:"Date",reason:"season-year"},{match:"#Date the? #Ordinal",tag:"Date",reason:"correction"},{match:`${Rg} #Date`,tag:"Date",reason:"thisNext-date"},{match:"due? (by|before|after|until) #Date",tag:"Date",reason:"by"},{match:"(last|next|this|previous|current|upcoming|coming|the) #Date",tag:"Date",reason:"next-feb"},{match:`#Preposition? the? ${xf} of #Date`,tag:"Date",reason:"section-of"},{match:"#Ordinal #Duration in #Date",tag:"Date",reason:"duration-in"},{match:"(early|late) (at|in)? the? #Date",tag:"Time",reason:"early-evening"},{match:"#Date [(by|before|after|at|@|about) #Cardinal]",group:0,tag:"Time",reason:"date-before-Cardinal"},{match:"#Date (#Preposition|to) #Date",ifNo:"#Duration",tag:"Date",reason:"date-prep-date"},{match:"(by|before|after|at|@|about) #Time",tag:"Time",reason:"preposition-time"},{match:"(in|after) /^[0-9]+(min|sec|wk)s?/",tag:"Date",reason:"shift-units"},{match:"#Date [(now|night|sometime)]",group:0,tag:"Time",reason:"date-now"},{match:"(from|starting|until|by) now",tag:"Date",reason:"for-now"},{match:"(each|every) night",tag:"Date",reason:"for-now"},{match:"#Date [(am|pm)]",group:0,tag:"Time",reason:"date-am"},{match:`[${xf}] #Date`,group:0,tag:"Date",reason:"mid-sept"},{match:"#Month #Value to #Value of? #Year?",tag:"Date",reason:"june 5 to 7th"},{match:"#Value to #Value of? #Month #Year?",tag:"Date",reason:"5 to 7th june"},{match:"#Value #Duration of #Date",tag:"Date",reason:"third week of may"},{match:"#Value+ #Duration (after|before|into|later|afterwards|ago)?",tag:"Date",reason:"two days after"},{match:"#Value #Date",tag:"Date",reason:"two days"},{match:"#Date #Value",tag:"Date",reason:"june 5th"},{match:"#Date #Preposition #Value",tag:"Date",reason:"tuesday at 5"},{match:"#Date (after|before|during|on|in) #Value",tag:"Date",reason:"tomorrow before 3"},{match:"#Value (year|month|week|day) and a half",tag:"Date",reason:"a year and a half"},{match:"#Value and a half (years|months|weeks|days)",tag:"Date",reason:"5 and a half years"},{match:"on the #Ordinal",tag:"Date",reason:"on the fifth"},{match:"#Month #Value+ (and|or) #Value",tag:"Date",reason:"date-or-date"},{match:"#Value+ (and|or) #Value of #Month ",tag:"Date",reason:"date-and-date"},{match:"(spring|summer|winter|fall|autumn|springtime|wintertime|summertime)",tag:"Season",reason:"date-tag1"},{match:"(q1|q2|q3|q4)",tag:"FinancialQuarter",reason:"date-tag2"},{match:"(this|next|last|current) quarter",tag:"FinancialQuarter",reason:"date-tag3"},{match:"(this|next|last|current) season",tag:"Season",reason:"date-tag4"},{match:"#Date #Preposition #Date",tag:"Date",reason:"friday to sunday"},{match:"(once|twice) (a|an|each) #Date",tag:"Date",reason:"once a day"},{match:"a #Duration",tag:"Date",reason:"a year"},{match:"(between|from) #Date",tag:"Date",reason:"between x and y"},{match:"(to|until|upto) #Date",tag:"Date",reason:"between x and y2"},{match:"between #Date+ and #Date+",tag:"Date",reason:"between x and y3"},{match:"#Month and #Month #Year",tag:"Date",reason:"x and y4"},{match:"the? #Date after next one?",tag:"Date",reason:"day after next"},{match:"(about|approx|approximately|around) #Date",tag:"Date",reason:"approximately june"},{match:"(by|until|on|in|at|during|over|every|each|due) the? #Date",ifNo:"#PhrasalVerb",tag:"Date",reason:"until june"},{match:"(by|until|after|before|during|on|in|following|since) (next|this|last)? #Date",ifNo:"#PhrasalVerb",tag:"Date",reason:"until last june"},{match:"this? (last|next|past|this|previous|current|upcoming|coming|the) #Date",tag:"Date",reason:"next september"},{match:"(starting|beginning|ending) #Date",tag:"Date",reason:"starting this june"},{match:"the? (start|end|middle|beginning) of (last|next|this|the) #Date",tag:"Date",reason:"start of june"},{match:"(the|this) #Date",tag:"Date",reason:"this coming june"},{match:"#Date up to #Date",tag:"Date",reason:"january up to june"},{match:"#Cardinal oclock",tag:"Time",reason:"2 oclock"},{match:"#Value (in|at) the? (morning|evening|night|nighttime)",tag:"Time",reason:"3 in the morning"},{match:"(5|10|15|20|five|ten|fifteen|quarter|twenty|half) (after|past) #Cardinal",tag:"Time",reason:"ten to seven"},{match:"(at|by|before) (5|10|15|20|five|ten|fifteen|twenty|quarter|half) (after|past|to)",tag:"Time",reason:"at-20-past"},{match:"#Date [at #Cardinal]",group:0,ifNo:"#Year",tag:"Time",reason:" tuesday at 4"},{match:"half an (hour|minute|second)",tag:"Date",reason:"half an hour"},{match:"(in|for|by|near|at) #Timezone",tag:"Date",reason:"in eastern time"},{match:"#Time to #Time",tag:"Date",reason:"3pm to 4pm"},{match:"#Time [(sharp|on the dot)]",group:0,tag:"Time",reason:"4pm sharp"},{match:"(at|around|near|#Date) [#Cardinal (thirty|fifteen) (am|pm)?]",group:0,tag:"Time",reason:"around four thirty"},{match:"#Cardinal (thirty|fifteen) (am|pm)",tag:"Time",reason:"four thirty am"},{match:"[#Cardinal (thirty|fifteen)] #Date",group:0,tag:"Time",reason:"four thirty tomorrow"},{match:"(anytime|sometime) (before|after|near) [#Cardinal]",group:0,tag:"Time",reason:"antime-after-3"},{match:"(#Cardinal|a|an) #Duration (before|after|ago|from|hence|back)",tag:"DateShift",reason:"nine weeks frow now"},{match:"in (around|about|maybe|perhaps)? #Cardinal #Duration",tag:"DateShift",reason:"in two weeks"},{match:"in (a|an) #Duration",tag:"DateShift",reason:"in a week"},{match:"[(a|an) #Duration from] #Date",group:0,tag:"DateShift",reason:"an hour from now"},{match:"(a|an) #Duration ago",tag:"DateShift",reason:"a month ago"},{match:"in half (a|an) #Duration",tag:"DateShift",reason:"in half an hour"},{match:"in a (few|couple) of? #Duration",tag:"DateShift",reason:"in a few weeks"},{match:"[#Duration (after|before)] #Date",group:0,tag:"DateShift",reason:"day after tomorrow"},{match:"#Month #Ordinal and #Ordinal",tag:"Date",reason:"ord-and-ord"},{match:"every other #Duration",tag:"Date",reason:"every-other"},{match:"(every|any|each|a) (day|weekday|week day|weekend|weekend day)",tag:"Date",reason:"any-weekday"},{match:"(every|any|each|a) (#WeekDay)",tag:"Date",reason:"any-wednesday"},{match:"(every|any|each|a) (#Duration)",tag:"Date",reason:"any-week"},{match:"[(wed|sat)] (#Month|#Year|on|between|during|from)",group:0,tag:"WeekDay",reason:"wed"},{match:"^day$",unTag:"Date",reason:"spa-day"},{match:"(in|of|by|for)? (#Possessive && #Date)",unTag:"Date",reason:"tomorrows meeting"},{match:`${Lg} [#Value]$`,unTag:"Date",group:0,reason:"yesterday-7"},{match:`^[#Value] ${Lg}$`,group:0,unTag:"Date",reason:"7 yesterday"},{match:"on #Cardinal$",unTag:"Date",reason:"on 5"},{match:"[this] tomorrow",group:0,unTag:"Date",reason:"this-tomorrow"},{match:"(q1|q2|q3|q4) #Year",tag:"Date",reason:"q2 2016"},{match:"^[#Value] (this|next|last)",group:0,unTag:"Date",reason:"4 next"},{match:"(last|this|next) #Duration [#Value]",group:0,unTag:"Date",reason:"this month 7"},{match:"[!#Month] #Value (last|this|next) #Date",group:0,unTag:"Date",reason:"7 this month"},{match:"(in|over) the #Duration #Date+?",unTag:"Date",reason:"over-the-duration"},{match:"#Ordinal quarter of? #Year",unTag:"Fraction"},{match:"(from|by|before) now",unTag:"Time",tag:"Date"},{match:"#Value of? (this|next|last) #Date",tag:"Date"},{match:"(first|initial|second|latter) half of #Month",tag:"Date"}],Nf=null;const Hg=function(e){let{world:t}=e;Nf=Nf||t.methods.one.buildNet(g6,t),e.sweep(Nf)},v6=function(e){return e.cache(),Hg(e),Hg(e),c6(e),f6(e),d6(e),p6(e),e.uncache(),e.match("#Cardinal #Duration and? #DateShift").tag("DateShift","three days before"),e.match("#DateShift and #Cardinal #Duration").tag("DateShift","three days and two weeks"),e.match("#Time [(sharp|on the dot)]").tag("Time","4pm sharp"),e},y6={dates:v6},b6={FinancialQuarter:{is:"Date",not:["Fraction"]},Season:{is:"Date"},Year:{is:"Date",not:["RomanNumeral"]},Holiday:{is:"Date",also:"Noun"},DateShift:{is:"Date",not:["Timezone","Holiday"]}},Be="America/",ht="Asia/",Wt="Europe/",bn="Africa/",dr="Australia/",na="Pacific/",w6={"british summer time":Wt+"London",bst:Wt+"London","british time":Wt+"London","britain time":Wt+"London","irish summer time":Wt+"Dublin","irish time":Wt+"Dublin","central european time":Wt+"Berlin",cet:Wt+"Berlin","central european summer time":Wt+"Berlin",cest:Wt+"Berlin","central europe":Wt+"Berlin","eastern european time":Wt+"Riga",eet:Wt+"Riga","eastern european summer time":Wt+"Riga",eest:Wt+"Riga","eastern europe time":Wt+"Riga","western european time":Wt+"Lisbon","western european summer time":Wt+"Lisbon","turkey standard time":Wt+"Istanbul","turkish time":Wt+"Istanbul",utc:bn+"Freetown","greenwich standard time":bn+"Freetown",gmt:bn+"Freetown","east africa time":bn+"Nairobi","east african time":bn+"Nairobi","eastern africa time":bn+"Nairobi","central africa time":bn+"Khartoum","central african time":bn+"Khartoum","south africa standard time":bn+"Johannesburg","west africa standard time":bn+"Lagos","western africa time":bn+"Lagos","west african time":bn+"Lagos","australian central standard time":dr+"Adelaide",acst:dr+"Adelaide","australian central daylight time":dr+"Adelaide",acdt:dr+"Adelaide","australian eastern standard time":dr+"Brisbane",aest:dr+"Brisbane","australian eastern daylight time":dr+"Brisbane",aedt:dr+"Brisbane","australian western standard time":dr+"Perth",awst:dr+"Perth","australian western daylight time":dr+"Perth",awdt:dr+"Perth","australian central western standard time":dr+"Eucla",acwst:dr+"Eucla","lord howe standard time":dr+"Lord_Howe",lhst:dr+"Lord_Howe","lord howe daylight time":dr+"Lord_Howe",lhdt:dr+"Lord_Howe","russian standard time":Wt+"Moscow",msk:Wt+"Moscow","central standard time":Be+"Chicago","central time":Be+"Chicago",cst:Be+"Havana","central daylight time":Be+"Chicago",cdt:Be+"Havana","mountain standard time":Be+"Denver","mountain time":Be+"Denver",mst:Be+"Denver","mountain daylight time":Be+"Denver",mdt:Be+"Denver","atlantic standard time":Be+"Halifax","atlantic time":Be+"Halifax",ast:ht+"Baghdad","atlantic daylight time":Be+"Halifax",adt:Be+"Halifax","eastern standard time":Be+"New_York","eastern time":Be+"New_York",est:Be+"New_York","eastern daylight time":Be+"New_York",edt:Be+"New_York","pacific time":Be+"Los_Angeles","pacific standard time":Be+"Los_Angeles",pst:Be+"Los_Angeles","pacific daylight time":Be+"Los_Angeles",pdt:Be+"Los_Angeles","alaskan standard time":Be+"Anchorage","alaskan time":Be+"Anchorage",ahst:Be+"Anchorage","alaskan daylight time":Be+"Anchorage",ahdt:Be+"Anchorage","hawaiian standard time":na+"Honolulu","hawaiian time":na+"Honolulu",hst:na+"Honolulu","aleutian time":na+"Honolulu","hawaii time":na+"Honolulu","newfoundland standard time":Be+"St_Johns","newfoundland time":Be+"St_Johns","newfoundland daylight time":Be+"St_Johns","brazil time":Be+"Sao_Paulo","brazilian time":Be+"Sao_Paulo","argentina time":Be+"Buenos_Aires","argentinian time":Be+"Buenos_Aires","amazon time":Be+"Manaus","amazonian time":Be+"Manaus","easter island standard time":"Chile/Easterisland","easter island summer time":"Chile/Easterisland",easst:"Chile/Easterisland","venezuelan standard time":Be+"Caracas","venezuelan time":Be+"Caracas","venezuela time":Be+"Caracas","paraguay time":Be+"Asuncion","paraguay summer time":Be+"Asuncion","cuba standard time":Be+"Havana","cuba time":Be+"Havana","cuba daylight time":Be+"Havana","cuban time":Be+"Havana","bolivia time":Be+"La_Paz","bolivian time":Be+"La_Paz","colombia time":Be+"Bogota","colombian time":Be+"Bogota","acre time":Be+"Eirunepe","peru time":Be+"Lima","chile standard time":Be+"Punta_Arenas","chile time":Be+"Punta_Arenas",clst:Be+"Punta_Arenas","chile summer time":Be+"Punta_Arenas",cldt:Be+"Punta_Arenas","uruguay time":Be+"Montevideo",uyt:Be+"Montevideo","arabic standard time":ht+"Baghdad","iran standard time":ht+"Tehran","iran time":ht+"Tehran","iran daylight time":ht+"Tehran","pakistan standard time":ht+"Karachi","pakistan time":ht+"Karachi","india standard time":ht+"Kolkata","indian time":ht+"Kolkata","indochina time":ht+"Bangkok","china standard time":ht+"Shanghai","alma-ata time":ht+"Almaty","oral time":ht+"Oral","orat time":ht+"Oral","yakutsk time":ht+"Yakutsk",yakt:ht+"Yakutsk","gulf standard time":ht+"Dubai","gulf time":ht+"Dubai","hong kong time":ht+"Hong_Kong","western indonesian time":ht+"Jakarta","indonesia time":ht+"Jakarta","central indonesian time":ht+"Makassar","israel daylight time":ht+"Jerusalem","israel standard time":ht+"Jerusalem","israel time":ht+"Jerusalem","krasnoyarsk time":ht+"Krasnoyarsk","malaysia time":ht+"Kuala_Lumpur","singapore time":ht+"Singapore","korea standard time":ht+"Seoul","korea time":ht+"Seoul",kst:ht+"Seoul","korean time":ht+"Seoul","uzbekistan time":ht+"Samarkand","vladivostok time":ht+"Vladivostok","maldives time":"Indian/Maldives","mauritius time":"Indian/Mauritius","marshall islands time":na+"Kwajalein","samoa standard time":na+"Midway","somoan time":na+"Midway","chamorro standard time":na+"Guam","papua new guinea time":na+"Bougainville"};let x6=pt().timezones,D6=Object.keys(x6).reduce((e,t)=>(e[t]=t,e),{});const N6=Object.assign({},w6,D6),A6=["weekday","summer","winter","autumn","all day","eod","eom","eoy","standard time","daylight time","tommorrow"],C6=["centuries","century","day","days","decade","decades","hour","hours","hr","hrs","millisecond","milliseconds","minute","minutes","min","mins","month","months","seconds","sec","secs","week end","week ends","weekend","weekends","week","weeks","wk","wks","year","years","yr","yrs","quarter","qtr","qtrs","season","seasons"],E6=["all hallows eve","all saints day","all sts day","april fools","armistice day","australia day","bastille day","boxing day","canada day","christmas eve","christmas","cinco de mayo","day of the dead","dia de muertos","dieciseis de septiembre","emancipation day","grito de dolores","groundhog day","halloween","harvey milk day","inauguration day","independence day","independents day","juneteenth","labour day","national freedom day","national nurses day","new years eve","new years","purple heart day","rememberance day","rosa parks day","saint andrews day","saint patricks day","saint stephens day","saint valentines day","st andrews day","st patricks day","st stephens day","st valentines day ","valentines day","valentines","veterans day","victoria day","womens equality day","xmas","epiphany","orthodox christmas day","orthodox new year","assumption of mary","all souls day","feast of the immaculate conception","feast of our lady of guadalupe","kwanzaa","imbolc","beltaine","lughnassadh","samhain","martin luther king day","mlk day","presidents day","mardi gras","tax day","commonwealth day","mothers day","memorial day","fathers day","columbus day","indigenous peoples day","canadian thanksgiving","election day","thanksgiving","t-day","turkey day","black friday","cyber monday","ash wednesday","palm sunday","maundy thursday","good friday","holy saturday","easter","easter sunday","easter monday","orthodox good friday","orthodox holy saturday","orthodox easter","orthodox easter monday","ascension day","pentecost","whitsunday","whit sunday","whit monday","trinity sunday","corpus christi","advent","tu bishvat","tu bshevat","purim","passover","yom hashoah","lag baomer","shavuot","tisha bav","rosh hashana","yom kippur","sukkot","shmini atzeret","simchat torah","chanukah","hanukkah","isra and miraj","lailat al-qadr","eid al-fitr","id al-Fitr","eid ul-Fitr","ramadan","eid al-adha","muharram","the prophets birthday","ostara","march equinox","vernal equinox","litha","june solistice","summer solistice","mabon","september equinox","fall equinox","autumnal equinox","yule","december solstice","winter solstice","chinese new year","diwali"],S6=["noon","midnight","morning","tonight","evening","afternoon","breakfast time","lunchtime","dinnertime","midday","eod","oclock","oclock","at night"];let Hw={"a couple":"Value",thur:"WeekDay",thurs:"WeekDay"};const Ys=function(e,t){e.forEach(r=>{Hw[r]=t})};Ys(Object.keys(N6),"Timezone");Ys(A6,"Date");Ys(C6,"Duration");Ys(E6,"Holiday");Ys(S6,"Time");const T6=[[/^[0-9]+(min|sec|hr|d)s?$/i,"Duration","30min"],[/^[0-9]{4}-[0-9]{2}$/,"Date","2012-06"],[/^[0-9]{2}h[0-9]{2}$/i,"Time","13h30"],[/^@[0-9]+:[0-9]{2}$/,"Time","@5:30"],[/^@[1-9]+(am|pm)$/,"Time","@5pm"],[/^(?:0[1-9]|[12]\d|3[01])\/(?:0[1-9]|[12]\d|3[01])$/,"Date","03/02"]],M6="3.7.1",Gg=e=>e?pt(e).format("{nice-day} {year}"):"-",bs="\x1B[0m",Af={magenta:e=>"\x1B[35m"+e+bs,cyan:e=>"\x1B[36m"+e+bs,yellow:e=>"\x1B[33m"+e+bs,dim:e=>"\x1B[2m"+e+bs,i:e=>"\x1B[3m"+e+bs},F6=function(e){e.dates().forEach(t=>{let r=t.dates().get()[0];console.log(`
|
|
25
|
-
────────`),t.debug("highlight");let n="";r&&r.start&&(n=" "+Af.magenta(Gg(r.start))),r&&r.end&&(n+=Af.dim(" → ")+Af.cyan(Gg(r.end))),console.log(n+`
|
|
26
|
-
`)})},P6={tags:b6,words:Hw,compute:y6,api:l6,mutate:e=>{e.model.two.regexText=e.model.two.regexText||[],e.model.two.regexText=e.model.two.regexText.concat(T6),e.methods.one.debug=e.methods.one.debug||{},e.methods.one.debug.dates=F6},hooks:["dates"],version:M6};function or(){return or=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},or.apply(null,arguments)}var Gw={relTol:1e-12,absTol:1e-15,matrix:"Matrix",number:"number",numberFallback:"number",precision:64,predictable:!1,randomSeed:null};function Hr(e,t){if(_l(e,t))return e[t];throw typeof e[t]=="function"&&dd(e,t)?new Error('Cannot access method "'+t+'" as a property'):new Error('No access to property "'+t+'"')}function Ro(e,t,r){if(_l(e,t))return e[t]=r,r;throw new Error('No access to property "'+t+'"')}function _l(e,t){return!O6(e)&&!Array.isArray(e)?!1:Pe($6,t)?!0:!(t in Object.prototype||t in Function.prototype)}function k6(e,t){if(!dd(e,t))throw new Error('No access to method "'+t+'"');return e[t]}function dd(e,t){return e==null||typeof e[t]!="function"||Pe(e,t)&&Object.getPrototypeOf&&t in Object.getPrototypeOf(e)?!1:Pe(B6,t)?!0:!(t in Object.prototype||t in Function.prototype)}function O6(e){return typeof e=="object"&&e&&e.constructor===Object}var $6={length:!0,name:!0},B6={toString:!0,valueOf:!0,toLocaleString:!0};class mc{constructor(t){this.wrappedObject=t,this[Symbol.iterator]=this.entries}keys(){return Object.keys(this.wrappedObject).filter(t=>this.has(t)).values()}get(t){return Hr(this.wrappedObject,t)}set(t,r){return Ro(this.wrappedObject,t,r),this}has(t){return _l(this.wrappedObject,t)&&t in this.wrappedObject}entries(){return Uw(this.keys(),t=>[t,this.get(t)])}forEach(t){for(var r of this.keys())t(this.get(r),r,this)}delete(t){_l(this.wrappedObject,t)&&delete this.wrappedObject[t]}clear(){for(var t of this.keys())this.delete(t)}get size(){return Object.keys(this.wrappedObject).length}}class Vw{constructor(t,r,n){this.a=t,this.b=r,this.bKeys=n,this[Symbol.iterator]=this.entries}get(t){return this.bKeys.has(t)?this.b.get(t):this.a.get(t)}set(t,r){return this.bKeys.has(t)?this.b.set(t,r):this.a.set(t,r),this}has(t){return this.b.has(t)||this.a.has(t)}keys(){return new Set([...this.a.keys(),...this.b.keys()])[Symbol.iterator]()}entries(){return Uw(this.keys(),t=>[t,this.get(t)])}forEach(t){for(var r of this.keys())t(this.get(r),r,this)}delete(t){return this.bKeys.has(t)?this.b.delete(t):this.a.delete(t)}clear(){this.a.clear(),this.b.clear()}get size(){return[...this.keys()].length}}function Uw(e,t){return{next:()=>{var r=e.next();return r.done?r:{value:t(r.value),done:!1}}}}function js(){return new Map}function _o(e){if(!e)return js();if(Kw(e))return e;if(hc(e))return new mc(e);throw new Error("createMap can create maps from objects or Maps")}function _6(e){if(e instanceof mc)return e.wrappedObject;var t={};for(var r of e.keys()){var n=e.get(r);Ro(t,r,n)}return t}function Ze(e){return typeof e=="number"}function Qe(e){return!e||typeof e!="object"||typeof e.constructor!="function"?!1:e.isBigNumber===!0&&typeof e.constructor.prototype=="object"&&e.constructor.prototype.isBigNumber===!0||typeof e.constructor.isDecimal=="function"&&e.constructor.isDecimal(e)===!0}function Ms(e){return typeof e=="bigint"}function ka(e){return e&&typeof e=="object"&&Object.getPrototypeOf(e).isComplex===!0||!1}function Zs(e){return e&&typeof e=="object"&&Object.getPrototypeOf(e).isFraction===!0||!1}function cn(e){return e&&e.constructor.prototype.isUnit===!0||!1}function Or(e){return typeof e=="string"}var Et=Array.isArray;function Re(e){return e&&e.constructor.prototype.isMatrix===!0||!1}function Fn(e){return Array.isArray(e)||Re(e)}function Il(e){return e&&e.isDenseMatrix&&e.constructor.prototype.isMatrix===!0||!1}function qi(e){return e&&e.isSparseMatrix&&e.constructor.prototype.isMatrix===!0||!1}function hd(e){return e&&e.constructor.prototype.isRange===!0||!1}function dc(e){return e&&e.constructor.prototype.isIndex===!0||!1}function I6(e){return typeof e=="boolean"}function z6(e){return e&&e.constructor.prototype.isResultSet===!0||!1}function Ww(e){return e&&e.constructor.prototype.isHelp===!0||!1}function Jw(e){return typeof e=="function"}function j6(e){return e instanceof Date}function q6(e){return e instanceof RegExp}function hc(e){return!!(e&&typeof e=="object"&&e.constructor===Object&&!ka(e)&&!Zs(e))}function Kw(e){return e?e instanceof Map||e instanceof mc||typeof e.set=="function"&&typeof e.get=="function"&&typeof e.keys=="function"&&typeof e.has=="function":!1}function R6(e){return e===null}function L6(e){return e===void 0}function Ji(e){return e&&e.isAccessorNode===!0&&e.constructor.prototype.isNode===!0||!1}function Cn(e){return e&&e.isArrayNode===!0&&e.constructor.prototype.isNode===!0||!1}function H6(e){return e&&e.isAssignmentNode===!0&&e.constructor.prototype.isNode===!0||!1}function G6(e){return e&&e.isBlockNode===!0&&e.constructor.prototype.isNode===!0||!1}function V6(e){return e&&e.isConditionalNode===!0&&e.constructor.prototype.isNode===!0||!1}function ct(e){return e&&e.isConstantNode===!0&&e.constructor.prototype.isNode===!0||!1}function Cm(e){return ct(e)||Yt(e)&&e.args.length===1&&ct(e.args[0])&&"-+~".includes(e.op)}function Qs(e){return e&&e.isFunctionAssignmentNode===!0&&e.constructor.prototype.isNode===!0||!1}function li(e){return e&&e.isFunctionNode===!0&&e.constructor.prototype.isNode===!0||!1}function Zo(e){return e&&e.isIndexNode===!0&&e.constructor.prototype.isNode===!0||!1}function Nt(e){return e&&e.isNode===!0&&e.constructor.prototype.isNode===!0||!1}function pc(e){return e&&e.isObjectNode===!0&&e.constructor.prototype.isNode===!0||!1}function Yt(e){return e&&e.isOperatorNode===!0&&e.constructor.prototype.isNode===!0||!1}function Ia(e){return e&&e.isParenthesisNode===!0&&e.constructor.prototype.isNode===!0||!1}function U6(e){return e&&e.isRangeNode===!0&&e.constructor.prototype.isNode===!0||!1}function W6(e){return e&&e.isRelationalNode===!0&&e.constructor.prototype.isNode===!0||!1}function yr(e){return e&&e.isSymbolNode===!0&&e.constructor.prototype.isNode===!0||!1}function Yw(e){return e&&e.constructor.prototype.isChain===!0||!1}function Tt(e){var t=typeof e;return t==="object"?e===null?"null":Qe(e)?"BigNumber":e.constructor&&e.constructor.name?e.constructor.name:"Object":t}function We(e){var t=typeof e;if(t==="number"||t==="bigint"||t==="string"||t==="boolean"||e===null||e===void 0)return e;if(typeof e.clone=="function")return e.clone();if(Array.isArray(e))return e.map(function(r){return We(r)});if(e instanceof Date)return new Date(e.valueOf());if(Qe(e))return e;if(hc(e))return J6(e,We);if(t==="function")return e;throw new TypeError("Cannot clone: unknown type of value (value: ".concat(e,")"))}function J6(e,t){var r={};for(var n in e)Pe(e,n)&&(r[n]=t(e[n]));return r}function Zw(e,t){for(var r in t)Pe(t,r)&&(e[r]=t[r]);return e}function za(e,t){var r,n,a;if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(n=0,a=e.length;n<a;n++)if(!za(e[n],t[n]))return!1;return!0}else{if(typeof e=="function")return e===t;if(e instanceof Object){if(Array.isArray(t)||!(t instanceof Object))return!1;for(r in e)if(!(r in t)||!za(e[r],t[r]))return!1;for(r in t)if(!(r in e))return!1;return!0}else return e===t}}function K6(e,t,r){var n=!0,a;Object.defineProperty(e,t,{get:function(){return n&&(a=r(),n=!1),a},set:function(o){a=o,n=!1},configurable:!0,enumerable:!0})}function Pe(e,t){return e&&Object.hasOwnProperty.call(e,t)}function Y6(e,t){for(var r={},n=0;n<t.length;n++){var a=t[n],i=e[a];i!==void 0&&(r[a]=i)}return r}var Z6=["Matrix","Array"],Q6=["number","BigNumber","Fraction"],me=function(t){if(t)throw new Error(`The global config is readonly.
|
|
27
|
-
Please create a mathjs instance if you want to change the default configuration.
|
|
28
|
-
Example:
|
|
29
|
-
|
|
30
|
-
import { create, all } from 'mathjs';
|
|
31
|
-
const mathjs = create(all);
|
|
32
|
-
mathjs.config({ number: 'BigNumber' });
|
|
33
|
-
`);return Object.freeze(Gw)};or(me,Gw,{MATRIX_OPTIONS:Z6,NUMBER_OPTIONS:Q6});function Vg(){return!0}function wn(){return!1}function wo(){}const Ug="Argument is not a typed-function.";function Qw(){function e(O){return typeof O=="object"&&O!==null&&O.constructor===Object}const t=[{name:"number",test:function(O){return typeof O=="number"}},{name:"string",test:function(O){return typeof O=="string"}},{name:"boolean",test:function(O){return typeof O=="boolean"}},{name:"Function",test:function(O){return typeof O=="function"}},{name:"Array",test:Array.isArray},{name:"Date",test:function(O){return O instanceof Date}},{name:"RegExp",test:function(O){return O instanceof RegExp}},{name:"Object",test:e},{name:"null",test:function(O){return O===null}},{name:"undefined",test:function(O){return O===void 0}}],r={name:"any",test:Vg,isAny:!0};let n,a,i=0,o={createCount:0};function s(O){const L=n.get(O);if(L)return L;let Y='Unknown type "'+O+'"';const ee=O.toLowerCase();let ne;for(ne of a)if(ne.toLowerCase()===ee){Y+='. Did you mean "'+ne+'" ?';break}throw new TypeError(Y)}function u(O){let L=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"any";const Y=L?s(L).index:a.length,ee=[];for(let le=0;le<O.length;++le){if(!O[le]||typeof O[le].name!="string"||typeof O[le].test!="function")throw new TypeError("Object with properties {name: string, test: function} expected");const ge=O[le].name;if(n.has(ge))throw new TypeError('Duplicate type name "'+ge+'"');ee.push(ge),n.set(ge,{name:ge,test:O[le].test,isAny:O[le].isAny,index:Y+le,conversionsTo:[]})}const ne=a.slice(Y);a=a.slice(0,Y).concat(ee).concat(ne);for(let le=Y+ee.length;le<a.length;++le)n.get(a[le]).index=le}function l(){n=new Map,a=[],i=0,u([r],!1)}l(),u(t);function c(){let O;for(O of a)n.get(O).conversionsTo=[];i=0}function f(O){const L=a.filter(Y=>{const ee=n.get(Y);return!ee.isAny&&ee.test(O)});return L.length?L:["any"]}function m(O){return O&&typeof O=="function"&&"_typedFunctionData"in O}function d(O,L,Y){if(!m(O))throw new TypeError(Ug);const ee=Y&&Y.exact,ne=Array.isArray(L)?L.join(","):L,le=w(ne),ge=g(le);if(!ee||ge in O.signatures){const lt=O._typedFunctionData.signatureMap.get(ge);if(lt)return lt}const ye=le.length;let Ae;if(ee){Ae=[];let lt;for(lt in O.signatures)Ae.push(O._typedFunctionData.signatureMap.get(lt))}else Ae=O._typedFunctionData.signatures;for(let lt=0;lt<ye;++lt){const Ie=le[lt],Ft=[];let T;for(T of Ae){const W=C(T.params,lt);if(!(!W||Ie.restParam&&!W.restParam)){if(!W.hasAny){const oe=y(W);if(Ie.types.some(he=>!oe.has(he.name)))continue}Ft.push(T)}}if(Ae=Ft,Ae.length===0)break}let be;for(be of Ae)if(be.params.length<=ye)return be;throw new TypeError("Signature not found (signature: "+(O.name||"unnamed")+"("+g(le,", ")+"))")}function p(O,L,Y){return d(O,L,Y).implementation}function h(O,L){const Y=s(L);if(Y.test(O))return O;const ee=Y.conversionsTo;if(ee.length===0)throw new Error("There are no conversions to "+L+" defined.");for(let ne=0;ne<ee.length;ne++)if(s(ee[ne].from).test(O))return ee[ne].convert(O);throw new Error("Cannot convert "+O+" to "+L)}function g(O){let L=arguments.length>1&&arguments[1]!==void 0?arguments[1]:",";return O.map(Y=>Y.name).join(L)}function b(O){const L=O.indexOf("...")===0,ee=(L?O.length>3?O.slice(3):"any":O).split("|").map(ye=>s(ye.trim()));let ne=!1,le=L?"...":"";return{types:ee.map(function(ye){return ne=ye.isAny||ne,le+=ye.name+"|",{name:ye.name,typeIndex:ye.index,test:ye.test,isAny:ye.isAny,conversion:null,conversionIndex:-1}}),name:le.slice(0,-1),hasAny:ne,hasConversion:!1,restParam:L}}function D(O){const L=O.types.map(ge=>ge.name),Y=z(L);let ee=O.hasAny,ne=O.name;const le=Y.map(function(ge){const ye=s(ge.from);return ee=ye.isAny||ee,ne+="|"+ge.from,{name:ge.from,typeIndex:ye.index,test:ye.test,isAny:ye.isAny,conversion:ge,conversionIndex:ge.index}});return{types:O.types.concat(le),name:ne,hasAny:ee,hasConversion:le.length>0,restParam:O.restParam}}function y(O){return O.typeSet||(O.typeSet=new Set,O.types.forEach(L=>O.typeSet.add(L.name))),O.typeSet}function w(O){const L=[];if(typeof O!="string")throw new TypeError("Signatures must be strings");const Y=O.trim();if(Y==="")return L;const ee=Y.split(",");for(let ne=0;ne<ee.length;++ne){const le=b(ee[ne].trim());if(le.restParam&&ne!==ee.length-1)throw new SyntaxError('Unexpected rest parameter "'+ee[ne]+'": only allowed for the last parameter');if(le.types.length===0)return null;L.push(le)}return L}function x(O){const L=H(O);return L?L.restParam:!1}function v(O){if(!O||O.types.length===0)return Vg;if(O.types.length===1)return s(O.types[0].name).test;if(O.types.length===2){const L=s(O.types[0].name).test,Y=s(O.types[1].name).test;return function(ne){return L(ne)||Y(ne)}}else{const L=O.types.map(function(Y){return s(Y.name).test});return function(ee){for(let ne=0;ne<L.length;ne++)if(L[ne](ee))return!0;return!1}}}function N(O){let L,Y,ee;if(x(O)){L=j(O).map(v);const ne=L.length,le=v(H(O)),ge=function(ye){for(let Ae=ne;Ae<ye.length;Ae++)if(!le(ye[Ae]))return!1;return!0};return function(Ae){for(let be=0;be<L.length;be++)if(!L[be](Ae[be]))return!1;return ge(Ae)&&Ae.length>=ne+1}}else return O.length===0?function(le){return le.length===0}:O.length===1?(Y=v(O[0]),function(le){return Y(le[0])&&le.length===1}):O.length===2?(Y=v(O[0]),ee=v(O[1]),function(le){return Y(le[0])&&ee(le[1])&&le.length===2}):(L=O.map(v),function(le){for(let ge=0;ge<L.length;ge++)if(!L[ge](le[ge]))return!1;return le.length===L.length})}function C(O,L){return L<O.length?O[L]:x(O)?H(O):null}function A(O,L){const Y=C(O,L);return Y?y(Y):new Set}function E(O){return O.conversion===null||O.conversion===void 0}function S(O,L){const Y=new Set;return O.forEach(ee=>{const ne=A(ee.params,L);let le;for(le of ne)Y.add(le)}),Y.has("any")?["any"]:Array.from(Y)}function F(O,L,Y){let ee,ne;const le=O||"unnamed";let ge=Y,ye;for(ye=0;ye<L.length;ye++){const Ie=[];if(ge.forEach(Ft=>{const T=C(Ft.params,ye),W=v(T);(ye<Ft.params.length||x(Ft.params))&&W(L[ye])&&Ie.push(Ft)}),Ie.length===0){if(ne=S(ge,ye),ne.length>0){const Ft=f(L[ye]);return ee=new TypeError("Unexpected type of argument in function "+le+" (expected: "+ne.join(" or ")+", actual: "+Ft.join(" | ")+", index: "+ye+")"),ee.data={category:"wrongType",fn:le,index:ye,actual:Ft,expected:ne},ee}}else ge=Ie}const Ae=ge.map(function(Ie){return x(Ie.params)?1/0:Ie.params.length});if(L.length<Math.min.apply(null,Ae))return ne=S(ge,ye),ee=new TypeError("Too few arguments in function "+le+" (expected: "+ne.join(" or ")+", index: "+L.length+")"),ee.data={category:"tooFewArgs",fn:le,index:L.length,expected:ne},ee;const be=Math.max.apply(null,Ae);if(L.length>be)return ee=new TypeError("Too many arguments in function "+le+" (expected: "+be+", actual: "+L.length+")"),ee.data={category:"tooManyArgs",fn:le,index:L.length,expectedLength:be},ee;const lt=[];for(let Ie=0;Ie<L.length;++Ie)lt.push(f(L[Ie]).join("|"));return ee=new TypeError('Arguments of type "'+lt.join(", ")+'" do not match any of the defined signatures of function '+le+"."),ee.data={category:"mismatch",actual:lt},ee}function k(O){let L=a.length+1;for(let Y=0;Y<O.types.length;Y++)E(O.types[Y])&&(L=Math.min(L,O.types[Y].typeIndex));return L}function B(O){let L=i+1;for(let Y=0;Y<O.types.length;Y++)E(O.types[Y])||(L=Math.min(L,O.types[Y].conversionIndex));return L}function $(O,L){if(O.hasAny){if(!L.hasAny)return 1}else if(L.hasAny)return-1;if(O.restParam){if(!L.restParam)return 1}else if(L.restParam)return-1;if(O.hasConversion){if(!L.hasConversion)return 1}else if(L.hasConversion)return-1;const Y=k(O)-k(L);if(Y<0)return-1;if(Y>0)return 1;const ee=B(O)-B(L);return ee<0?-1:ee>0?1:0}function M(O,L){const Y=O.params,ee=L.params,ne=H(Y),le=H(ee),ge=x(Y),ye=x(ee);if(ge&&ne.hasAny){if(!ye||!le.hasAny)return 1}else if(ye&&le.hasAny)return-1;let Ae=0,be=0,lt;for(lt of Y)lt.hasAny&&++Ae,lt.hasConversion&&++be;let Ie=0,Ft=0;for(lt of ee)lt.hasAny&&++Ie,lt.hasConversion&&++Ft;if(Ae!==Ie)return Ae-Ie;if(ge&&ne.hasConversion){if(!ye||!le.hasConversion)return 1}else if(ye&&le.hasConversion)return-1;if(be!==Ft)return be-Ft;if(ge){if(!ye)return 1}else if(ye)return-1;const T=(Y.length-ee.length)*(ge?-1:1);if(T!==0)return T;const W=[];let oe=0;for(let qe=0;qe<Y.length;++qe){const Ve=$(Y[qe],ee[qe]);W.push(Ve),oe+=Ve}if(oe!==0)return oe;let he;for(he of W)if(he!==0)return he;return 0}function z(O){if(O.length===0)return[];const L=O.map(s);O.length>1&&L.sort((ne,le)=>ne.index-le.index);let Y=L[0].conversionsTo;if(O.length===1)return Y;Y=Y.concat([]);const ee=new Set(O);for(let ne=1;ne<L.length;++ne){let le;for(le of L[ne].conversionsTo)ee.has(le.from)||(Y.push(le),ee.add(le.from))}return Y}function G(O,L){let Y=L;if(O.some(ne=>ne.hasConversion)){const ne=x(O),le=O.map(R);Y=function(){const ye=[],Ae=ne?arguments.length-1:arguments.length;for(let be=0;be<Ae;be++)ye[be]=le[be](arguments[be]);return ne&&(ye[Ae]=arguments[Ae].map(le[Ae])),L.apply(this,ye)}}let ee=Y;if(x(O)){const ne=O.length-1;ee=function(){return Y.apply(this,J(arguments,0,ne).concat([J(arguments,ne)]))}}return ee}function R(O){let L,Y,ee,ne;const le=[],ge=[];switch(O.types.forEach(function(ye){ye.conversion&&(le.push(s(ye.conversion.from).test),ge.push(ye.conversion.convert))}),ge.length){case 0:return function(Ae){return Ae};case 1:return L=le[0],ee=ge[0],function(Ae){return L(Ae)?ee(Ae):Ae};case 2:return L=le[0],Y=le[1],ee=ge[0],ne=ge[1],function(Ae){return L(Ae)?ee(Ae):Y(Ae)?ne(Ae):Ae};default:return function(Ae){for(let be=0;be<ge.length;be++)if(le[be](Ae))return ge[be](Ae);return Ae}}}function Z(O){function L(Y,ee,ne){if(ee<Y.length){const le=Y[ee];let ge=[];if(le.restParam){const ye=le.types.filter(E);ye.length<le.types.length&&ge.push({types:ye,name:"..."+ye.map(Ae=>Ae.name).join("|"),hasAny:ye.some(Ae=>Ae.isAny),hasConversion:!1,restParam:!0}),ge.push(le)}else ge=le.types.map(function(ye){return{types:[ye],name:ye.name,hasAny:ye.isAny,hasConversion:ye.conversion,restParam:!1}});return X(ge,function(ye){return L(Y,ee+1,ne.concat([ye]))})}else return[ne]}return L(O,0,[])}function te(O,L){const Y=Math.max(O.length,L.length);for(let ye=0;ye<Y;ye++){const Ae=A(O,ye),be=A(L,ye);let lt=!1,Ie;for(Ie of be)if(Ae.has(Ie)){lt=!0;break}if(!lt)return!1}const ee=O.length,ne=L.length,le=x(O),ge=x(L);return le?ge?ee===ne:ne>=ee:ge?ee>=ne:ee===ne}function P(O){return O.map(L=>ke(L)?we(L.referToSelf.callback):Me(L)?se(L.referTo.references,L.referTo.callback):L)}function V(O,L,Y){const ee=[];let ne;for(ne of O){let le=Y[ne];if(typeof le!="number")throw new TypeError('No definition for referenced signature "'+ne+'"');if(le=L[le],typeof le!="function")return!1;ee.push(le)}return ee}function _(O,L,Y){const ee=P(O),ne=new Array(ee.length).fill(!1);let le=!0;for(;le;){le=!1;let ge=!0;for(let ye=0;ye<ee.length;++ye){if(ne[ye])continue;const Ae=ee[ye];if(ke(Ae))ee[ye]=Ae.referToSelf.callback(Y),ee[ye].referToSelf=Ae.referToSelf,ne[ye]=!0,ge=!1;else if(Me(Ae)){const be=V(Ae.referTo.references,ee,L);be?(ee[ye]=Ae.referTo.callback.apply(this,be),ee[ye].referTo=Ae.referTo,ne[ye]=!0,ge=!1):le=!0}}if(ge&&le)throw new SyntaxError("Circular reference detected in resolving typed.referTo")}return ee}function ce(O){const L=/\bthis(\(|\.signatures\b)/;Object.keys(O).forEach(Y=>{const ee=O[Y];if(L.test(ee.toString()))throw new SyntaxError("Using `this` to self-reference a function is deprecated since typed-function@3. Use typed.referTo and typed.referToSelf instead.")})}function ae(O,L){if(o.createCount++,Object.keys(L).length===0)throw new SyntaxError("No signatures provided");o.warnAgainstDeprecatedThis&&ce(L);const Y=[],ee=[],ne={},le=[];let ge;for(ge in L){if(!Object.prototype.hasOwnProperty.call(L,ge))continue;const At=w(ge);if(!At)continue;Y.forEach(function(cs){if(te(cs,At))throw new TypeError('Conflicting signatures "'+g(cs)+'" and "'+g(At)+'".')}),Y.push(At);const Yr=ee.length;ee.push(L[ge]);const CN=At.map(D);let cu;for(cu of Z(CN)){const cs=g(cu);le.push({params:cu,name:cs,fn:Yr}),cu.every(EN=>!EN.hasConversion)&&(ne[cs]=Yr)}}le.sort(M);const ye=_(ee,ne,ls);let Ae;for(Ae in ne)Object.prototype.hasOwnProperty.call(ne,Ae)&&(ne[Ae]=ye[ne[Ae]]);const be=[],lt=new Map;for(Ae of le)lt.has(Ae.name)||(Ae.fn=ye[Ae.fn],be.push(Ae),lt.set(Ae.name,Ae));const Ie=be[0]&&be[0].params.length<=2&&!x(be[0].params),Ft=be[1]&&be[1].params.length<=2&&!x(be[1].params),T=be[2]&&be[2].params.length<=2&&!x(be[2].params),W=be[3]&&be[3].params.length<=2&&!x(be[3].params),oe=be[4]&&be[4].params.length<=2&&!x(be[4].params),he=be[5]&&be[5].params.length<=2&&!x(be[5].params),qe=Ie&&Ft&&T&&W&&oe&&he;for(let At=0;At<be.length;++At)be[At].test=N(be[At].params);const Ve=Ie?v(be[0].params[0]):wn,ar=Ft?v(be[1].params[0]):wn,Bc=T?v(be[2].params[0]):wn,XD=W?v(be[3].params[0]):wn,eN=oe?v(be[4].params[0]):wn,tN=he?v(be[5].params[0]):wn,rN=Ie?v(be[0].params[1]):wn,nN=Ft?v(be[1].params[1]):wn,aN=T?v(be[2].params[1]):wn,iN=W?v(be[3].params[1]):wn,oN=oe?v(be[4].params[1]):wn,sN=he?v(be[5].params[1]):wn;for(let At=0;At<be.length;++At)be[At].implementation=G(be[At].params,be[At].fn);const uN=Ie?be[0].implementation:wo,lN=Ft?be[1].implementation:wo,cN=T?be[2].implementation:wo,fN=W?be[3].implementation:wo,mN=oe?be[4].implementation:wo,dN=he?be[5].implementation:wo,hN=Ie?be[0].params.length:-1,pN=Ft?be[1].params.length:-1,gN=T?be[2].params.length:-1,vN=W?be[3].params.length:-1,yN=oe?be[4].params.length:-1,bN=he?be[5].params.length:-1,wN=qe?6:0,xN=be.length,DN=be.map(At=>At.test),NN=be.map(At=>At.implementation),AN=function(){for(let Yr=wN;Yr<xN;Yr++)if(DN[Yr](arguments))return NN[Yr].apply(this,arguments);return o.onMismatch(O,arguments,be)};function ls(At,Yr){return arguments.length===hN&&Ve(At)&&rN(Yr)?uN.apply(this,arguments):arguments.length===pN&&ar(At)&&nN(Yr)?lN.apply(this,arguments):arguments.length===gN&&Bc(At)&&aN(Yr)?cN.apply(this,arguments):arguments.length===vN&&XD(At)&&iN(Yr)?fN.apply(this,arguments):arguments.length===yN&&eN(At)&&oN(Yr)?mN.apply(this,arguments):arguments.length===bN&&tN(At)&&sN(Yr)?dN.apply(this,arguments):AN.apply(this,arguments)}try{Object.defineProperty(ls,"name",{value:O})}catch{}return ls.signatures=ne,ls._typedFunctionData={signatures:be,signatureMap:lt},ls}function ie(O,L,Y){throw F(O,L,Y)}function j(O){return J(O,0,O.length-1)}function H(O){return O[O.length-1]}function J(O,L,Y){return Array.prototype.slice.call(O,L,Y)}function Q(O,L){for(let Y=0;Y<O.length;Y++)if(L(O[Y]))return O[Y]}function X(O,L){return Array.prototype.concat.apply([],O.map(L))}function ue(){const O=j(arguments).map(Y=>g(w(Y))),L=H(arguments);if(typeof L!="function")throw new TypeError("Callback function expected as last argument");return se(O,L)}function se(O,L){return{referTo:{references:O,callback:L}}}function we(O){if(typeof O!="function")throw new TypeError("Callback function expected as first argument");return{referToSelf:{callback:O}}}function Me(O){return O&&typeof O.referTo=="object"&&Array.isArray(O.referTo.references)&&typeof O.referTo.callback=="function"}function ke(O){return O&&typeof O.referToSelf=="object"&&typeof O.referToSelf.callback=="function"}function Se(O,L){if(!O)return L;if(L&&L!==O){const Y=new Error("Function names do not match (expected: "+O+", actual: "+L+")");throw Y.data={actual:L,expected:O},Y}return O}function $e(O){let L;for(const Y in O)Object.prototype.hasOwnProperty.call(O,Y)&&(m(O[Y])||typeof O[Y].signature=="string")&&(L=Se(L,O[Y].name));return L}function q(O,L){let Y;for(Y in L)if(Object.prototype.hasOwnProperty.call(L,Y)){if(Y in O&&L[Y]!==O[Y]){const ee=new Error('Signature "'+Y+'" is defined twice');throw ee.data={signature:Y,sourceFunction:L[Y],destFunction:O[Y]},ee}O[Y]=L[Y]}}const K=o;o=function(O){const L=typeof O=="string",Y=L?1:0;let ee=L?O:"";const ne={};for(let le=Y;le<arguments.length;++le){const ge=arguments[le];let ye={},Ae;if(typeof ge=="function"?(Ae=ge.name,typeof ge.signature=="string"?ye[ge.signature]=ge:m(ge)&&(ye=ge.signatures)):e(ge)&&(ye=ge,L||(Ae=$e(ge))),Object.keys(ye).length===0){const be=new TypeError("Argument to 'typed' at index "+le+" is not a (typed) function, nor an object with signatures as keys and functions as values.");throw be.data={index:le,argument:ge},be}L||(ee=Se(ee,Ae)),q(ne,ye)}return ae(ee||"",ne)},o.create=Qw,o.createCount=K.createCount,o.onMismatch=ie,o.throwMismatchError=ie,o.createError=F,o.clear=l,o.clearConversions=c,o.addTypes=u,o._findType=s,o.referTo=ue,o.referToSelf=we,o.convert=h,o.findSignature=d,o.find=p,o.isTypedFunction=m,o.warnAgainstDeprecatedThis=!0,o.addType=function(O,L){let Y="any";L!==!1&&n.has("Object")&&(Y="Object"),o.addTypes([O],Y)};function re(O){if(!O||typeof O.from!="string"||typeof O.to!="string"||typeof O.convert!="function")throw new TypeError("Object with properties {from: string, to: string, convert: function} expected");if(O.to===O.from)throw new SyntaxError('Illegal to define conversion from "'+O.from+'" to itself.')}return o.addConversion=function(O){let L=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{override:!1};re(O);const Y=s(O.to),ee=Y.conversionsTo.find(ne=>ne.from===O.from);if(ee)if(L&&L.override)o.removeConversion({from:ee.from,to:O.to,convert:ee.convert});else throw new Error('There is already a conversion from "'+O.from+'" to "'+Y.name+'"');Y.conversionsTo.push({from:O.from,convert:O.convert,index:i++})},o.addConversions=function(O,L){O.forEach(Y=>o.addConversion(Y,L))},o.removeConversion=function(O){re(O);const L=s(O.to),Y=Q(L.conversionsTo,ne=>ne.from===O.from);if(!Y)throw new Error("Attempt to remove nonexistent conversion from "+O.from+" to "+O.to);if(Y.convert!==O.convert)throw new Error("Conversion to remove does not match existing conversion");const ee=L.conversionsTo.indexOf(Y);L.conversionsTo.splice(ee,1)},o.resolve=function(O,L){if(!m(O))throw new TypeError(Ug);const Y=O._typedFunctionData.signatures;for(let ee=0;ee<Y.length;++ee)if(Y[ee].test(L))return Y[ee];return null},o}const zl=Qw();function I(e,t,r,n){function a(i){var o=Y6(i,t.map(t9));return X6(e,t,i),r(o)}return a.isFactory=!0,a.fn=e,a.dependencies=t.slice().sort(),n&&(a.meta=n),a}function X6(e,t,r){var n=t.filter(i=>!e9(i)).every(i=>r[i]!==void 0);if(!n){var a=t.filter(i=>r[i]===void 0);throw new Error('Cannot create function "'.concat(e,'", ')+"some dependencies are missing: ".concat(a.map(i=>'"'.concat(i,'"')).join(", "),"."))}}function e9(e){return e&&e[0]==="?"}function t9(e){return e&&e[0]==="?"?e.slice(1):e}function Oe(e){return typeof e=="boolean"?!0:isFinite(e)?e===Math.round(e):!1}function hi(e,t){if(t.number==="bigint")try{BigInt(e)}catch{return t.numberFallback}return t.number}var ti=Math.sign||function(e){return e>0?1:e<0?-1:0},r9=Math.log2||function(t){return Math.log(t)/Math.LN2},n9=Math.log10||function(t){return Math.log(t)/Math.LN10},a9=Math.log1p||function(e){return Math.log(e+1)},i9=Math.cbrt||function(t){if(t===0)return t;var r=t<0,n;return r&&(t=-t),isFinite(t)?(n=Math.exp(Math.log(t)/3),n=(t/(n*n)+2*n)/3):n=t,r?-n:n},o9=Math.expm1||function(t){return t>=2e-4||t<=-2e-4?Math.exp(t)-1:t+t*t/2+t*t*t/6};function Cf(e,t,r){var n={2:"0b",8:"0o",16:"0x"},a=n[t],i="";if(r){if(r<1)throw new Error("size must be in greater than 0");if(!Oe(r))throw new Error("size must be an integer");if(e>2**(r-1)-1||e<-(2**(r-1)))throw new Error("Value must be in range [-2^".concat(r-1,", 2^").concat(r-1,"-1]"));if(!Oe(e))throw new Error("Value must be an integer");e<0&&(e=e+2**r),i="i".concat(r)}var o="";return e<0&&(e=-e,o="-"),"".concat(o).concat(a).concat(e.toString(t)).concat(i)}function Hi(e,t){if(typeof t=="function")return t(e);if(e===1/0)return"Infinity";if(e===-1/0)return"-Infinity";if(isNaN(e))return"NaN";var{notation:r,precision:n,wordSize:a}=Xw(t);switch(r){case"fixed":return ex(e,n);case"exponential":return tx(e,n);case"engineering":return s9(e,n);case"bin":return Cf(e,2,a);case"oct":return Cf(e,8,a);case"hex":return Cf(e,16,a);case"auto":return u9(e,n,t).replace(/((\.\d*?)(0+))($|e)/,function(){var i=arguments[2],o=arguments[4];return i!=="."?i+o:o});default:throw new Error('Unknown notation "'+r+'". Choose "auto", "exponential", "fixed", "bin", "oct", or "hex.')}}function Xw(e){var t="auto",r,n;if(e!==void 0)if(Ze(e))r=e;else if(Qe(e))r=e.toNumber();else if(hc(e))e.precision!==void 0&&(r=Wg(e.precision,()=>{throw new Error('Option "precision" must be a number or BigNumber')})),e.wordSize!==void 0&&(n=Wg(e.wordSize,()=>{throw new Error('Option "wordSize" must be a number or BigNumber')})),e.notation&&(t=e.notation);else throw new Error("Unsupported type of options, number, BigNumber, or object expected");return{notation:t,precision:r,wordSize:n}}function Xs(e){var t=String(e).toLowerCase().match(/^(-?)(\d+\.?\d*)(e([+-]?\d+))?$/);if(!t)throw new SyntaxError("Invalid number "+e);var r=t[1],n=t[2],a=parseFloat(t[4]||"0"),i=n.indexOf(".");a+=i!==-1?i-1:n.length-1;var o=n.replace(".","").replace(/^0*/,function(s){return a-=s.length,""}).replace(/0*$/,"").split("").map(function(s){return parseInt(s)});return o.length===0&&(o.push(0),a++),{sign:r,coefficients:o,exponent:a}}function s9(e,t){if(isNaN(e)||!isFinite(e))return String(e);var r=Xs(e),n=gc(r,t),a=n.exponent,i=n.coefficients,o=a%3===0?a:a<0?a-3-a%3:a-a%3;if(Ze(t))for(;t>i.length||a-o+1>i.length;)i.push(0);else for(var s=Math.abs(a-o)-(i.length-1),u=0;u<s;u++)i.push(0);for(var l=Math.abs(a-o),c=1;l>0;)c++,l--;var f=i.slice(c).join(""),m=Ze(t)&&f.length||f.match(/[1-9]/)?"."+f:"",d=i.slice(0,c).join("")+m+"e"+(a>=0?"+":"")+o.toString();return n.sign+d}function ex(e,t){if(isNaN(e)||!isFinite(e))return String(e);var r=Xs(e),n=typeof t=="number"?gc(r,r.exponent+1+t):r,a=n.coefficients,i=n.exponent+1,o=i+(t||0);return a.length<o&&(a=a.concat(Io(o-a.length))),i<0&&(a=Io(-i+1).concat(a),i=1),i<a.length&&a.splice(i,0,i===0?"0.":"."),n.sign+a.join("")}function tx(e,t){if(isNaN(e)||!isFinite(e))return String(e);var r=Xs(e),n=t?gc(r,t):r,a=n.coefficients,i=n.exponent;a.length<t&&(a=a.concat(Io(t-a.length)));var o=a.shift();return n.sign+o+(a.length>0?"."+a.join(""):"")+"e"+(i>=0?"+":"")+i}function u9(e,t,r){if(isNaN(e)||!isFinite(e))return String(e);var n=Jg(r?.lowerExp,-3),a=Jg(r?.upperExp,5),i=Xs(e),o=t?gc(i,t):i;if(o.exponent<n||o.exponent>=a)return tx(e,t);var s=o.coefficients,u=o.exponent;s.length<t&&(s=s.concat(Io(t-s.length))),s=s.concat(Io(u-s.length+1+(s.length<t?t-s.length:0))),s=Io(-u).concat(s);var l=u>0?u:0;return l<s.length-1&&s.splice(l+1,0,"."),o.sign+s.join("")}function gc(e,t){for(var r={sign:e.sign,coefficients:e.coefficients,exponent:e.exponent},n=r.coefficients;t<=0;)n.unshift(0),r.exponent++,t++;if(n.length>t){var a=n.splice(t,n.length-t);if(a[0]>=5){var i=t-1;for(n[i]++;n[i]===10;)n.pop(),i===0&&(n.unshift(0),r.exponent++,i++),i--,n[i]++}}return r}function Io(e){for(var t=[],r=0;r<e;r++)t.push(0);return t}function l9(e){return e.toExponential().replace(/e.*$/,"").replace(/^0\.?0*|\./,"").length}function Er(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1e-8,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;if(r<=0)throw new Error("Relative tolerance must be greater than 0");if(n<0)throw new Error("Absolute tolerance must be at least 0");return isNaN(e)||isNaN(t)?!1:!isFinite(e)||!isFinite(t)?e===t:e===t?!0:Math.abs(e-t)<=Math.max(r*Math.max(Math.abs(e),Math.abs(t)),n)}var c9=Math.acosh||function(e){return Math.log(Math.sqrt(e*e-1)+e)},f9=Math.asinh||function(e){return Math.log(Math.sqrt(e*e+1)+e)},m9=Math.atanh||function(e){return Math.log((1+e)/(1-e))/2},d9=Math.cosh||function(e){return(Math.exp(e)+Math.exp(-e))/2},h9=Math.sinh||function(e){return(Math.exp(e)-Math.exp(-e))/2},p9=Math.tanh||function(e){var t=Math.exp(2*e);return(t-1)/(t+1)};function g9(e,t){var r=!0,n=t>0?!0:t<0?!1:1/t===1/0;return r^n?-e:e}function Wg(e,t){if(Ze(e))return e;if(Qe(e))return e.toNumber();t()}function Jg(e,t){return Ze(e)?e:Qe(e)?e.toNumber():t}var rx=function(){return rx=zl.create,zl},v9=["?BigNumber","?Complex","?DenseMatrix","?Fraction"],y9=I("typed",v9,function(t){var{BigNumber:r,Complex:n,DenseMatrix:a,Fraction:i}=t,o=rx();return o.clear(),o.addTypes([{name:"number",test:Ze},{name:"Complex",test:ka},{name:"BigNumber",test:Qe},{name:"bigint",test:Ms},{name:"Fraction",test:Zs},{name:"Unit",test:cn},{name:"identifier",test:s=>Or&&/^(?:[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDDC0-\uDDF3\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDD4A-\uDD65\uDD6F-\uDD85\uDE80-\uDEA9\uDEB0\uDEB1\uDEC2-\uDEC4\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61\uDF80-\uDF89\uDF8B\uDF8E\uDF90-\uDFB5\uDFB7\uDFD1\uDFD3]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8\uDFC0-\uDFE0]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD80E\uD80F\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46\uDC60-\uDFFF]|\uD810[\uDC00-\uDFFA]|\uD811[\uDC00-\uDE46]|\uD818[\uDD00-\uDD1D]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDD40-\uDD6C\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDCFF-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDDD0-\uDDED\uDDF0\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF])(?:[0-9A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDDC0-\uDDF3\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDD4A-\uDD65\uDD6F-\uDD85\uDE80-\uDEA9\uDEB0\uDEB1\uDEC2-\uDEC4\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61\uDF80-\uDF89\uDF8B\uDF8E\uDF90-\uDFB5\uDFB7\uDFD1\uDFD3]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8\uDFC0-\uDFE0]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD80E\uD80F\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46\uDC60-\uDFFF]|\uD810[\uDC00-\uDFFA]|\uD811[\uDC00-\uDE46]|\uD818[\uDD00-\uDD1D]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDD40-\uDD6C\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDCFF-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDDD0-\uDDED\uDDF0\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF])*$/.test(s)},{name:"string",test:Or},{name:"Chain",test:Yw},{name:"Array",test:Et},{name:"Matrix",test:Re},{name:"DenseMatrix",test:Il},{name:"SparseMatrix",test:qi},{name:"Range",test:hd},{name:"Index",test:dc},{name:"boolean",test:I6},{name:"ResultSet",test:z6},{name:"Help",test:Ww},{name:"function",test:Jw},{name:"Date",test:j6},{name:"RegExp",test:q6},{name:"null",test:R6},{name:"undefined",test:L6},{name:"AccessorNode",test:Ji},{name:"ArrayNode",test:Cn},{name:"AssignmentNode",test:H6},{name:"BlockNode",test:G6},{name:"ConditionalNode",test:V6},{name:"ConstantNode",test:ct},{name:"FunctionNode",test:li},{name:"FunctionAssignmentNode",test:Qs},{name:"IndexNode",test:Zo},{name:"Node",test:Nt},{name:"ObjectNode",test:pc},{name:"OperatorNode",test:Yt},{name:"ParenthesisNode",test:Ia},{name:"RangeNode",test:U6},{name:"RelationalNode",test:W6},{name:"SymbolNode",test:yr},{name:"Map",test:Kw},{name:"Object",test:hc}]),o.addConversions([{from:"number",to:"BigNumber",convert:function(u){if(r||Ju(u),l9(u)>15)throw new TypeError("Cannot implicitly convert a number with >15 significant digits to BigNumber (value: "+u+"). Use function bignumber(x) to convert to BigNumber.");return new r(u)}},{from:"number",to:"Complex",convert:function(u){return n||Ku(u),new n(u,0)}},{from:"BigNumber",to:"Complex",convert:function(u){return n||Ku(u),new n(u.toNumber(),0)}},{from:"bigint",to:"number",convert:function(u){if(u>Number.MAX_SAFE_INTEGER)throw new TypeError("Cannot implicitly convert bigint to number: value exceeds the max safe integer value (value: "+u+")");return Number(u)}},{from:"bigint",to:"BigNumber",convert:function(u){return r||Ju(u),new r(u.toString())}},{from:"bigint",to:"Fraction",convert:function(u){return i||Yu(u),new i(u)}},{from:"Fraction",to:"BigNumber",convert:function(u){throw new TypeError("Cannot implicitly convert a Fraction to BigNumber or vice versa. Use function bignumber(x) to convert to BigNumber or fraction(x) to convert to Fraction.")}},{from:"Fraction",to:"Complex",convert:function(u){return n||Ku(u),new n(u.valueOf(),0)}},{from:"number",to:"Fraction",convert:function(u){i||Yu(u);var l=new i(u);if(l.valueOf()!==u)throw new TypeError("Cannot implicitly convert a number to a Fraction when there will be a loss of precision (value: "+u+"). Use function fraction(x) to convert to Fraction.");return l}},{from:"string",to:"number",convert:function(u){var l=Number(u);if(isNaN(l))throw new Error('Cannot convert "'+u+'" to a number');return l}},{from:"string",to:"BigNumber",convert:function(u){r||Ju(u);try{return new r(u)}catch{throw new Error('Cannot convert "'+u+'" to BigNumber')}}},{from:"string",to:"bigint",convert:function(u){try{return BigInt(u)}catch{throw new Error('Cannot convert "'+u+'" to BigInt')}}},{from:"string",to:"Fraction",convert:function(u){i||Yu(u);try{return new i(u)}catch{throw new Error('Cannot convert "'+u+'" to Fraction')}}},{from:"string",to:"Complex",convert:function(u){n||Ku(u);try{return new n(u)}catch{throw new Error('Cannot convert "'+u+'" to Complex')}}},{from:"boolean",to:"number",convert:function(u){return+u}},{from:"boolean",to:"BigNumber",convert:function(u){return r||Ju(u),new r(+u)}},{from:"boolean",to:"bigint",convert:function(u){return BigInt(+u)}},{from:"boolean",to:"Fraction",convert:function(u){return i||Yu(u),new i(+u)}},{from:"boolean",to:"string",convert:function(u){return String(u)}},{from:"Array",to:"Matrix",convert:function(u){return a||b9(),new a(u)}},{from:"Matrix",to:"Array",convert:function(u){return u.valueOf()}}]),o.onMismatch=(s,u,l)=>{var c=o.createError(s,u,l);if(["wrongType","mismatch"].includes(c.data.category)&&u.length===1&&Fn(u[0])&&l.some(m=>!m.params.includes(","))){var f=new TypeError("Function '".concat(s,"' doesn't apply to matrices. To call it ")+"elementwise on a matrix 'M', try 'map(M, ".concat(s,")'."));throw f.data=c.data,f}throw c},o.onMismatch=(s,u,l)=>{var c=o.createError(s,u,l);if(["wrongType","mismatch"].includes(c.data.category)&&u.length===1&&Fn(u[0])&&l.some(m=>!m.params.includes(","))){var f=new TypeError("Function '".concat(s,"' doesn't apply to matrices. To call it ")+"elementwise on a matrix 'M', try 'map(M, ".concat(s,")'."));throw f.data=c.data,f}throw c},o});function Ju(e){throw new Error("Cannot convert value ".concat(e," into a BigNumber: no class 'BigNumber' provided"))}function Ku(e){throw new Error("Cannot convert value ".concat(e," into a Complex number: no class 'Complex' provided"))}function b9(){throw new Error("Cannot convert array into a Matrix: no class 'DenseMatrix' provided")}function Yu(e){throw new Error("Cannot convert value ".concat(e," into a Fraction, no class 'Fraction' provided."))}var w9="ResultSet",x9=[],D9=I(w9,x9,()=>{function e(t){if(!(this instanceof e))throw new SyntaxError("Constructor must be called with the new operator");this.entries=t||[]}return e.prototype.type="ResultSet",e.prototype.isResultSet=!0,e.prototype.valueOf=function(){return this.entries},e.prototype.toString=function(){return"["+this.entries.map(String).join(", ")+"]"},e.prototype.toJSON=function(){return{mathjs:"ResultSet",entries:this.entries}},e.fromJSON=function(t){return new e(t.entries)},e},{isClass:!0});/*!
|
|
34
|
-
* decimal.js v10.6.0
|
|
35
|
-
* An arbitrary-precision Decimal type for JavaScript.
|
|
36
|
-
* https://github.com/MikeMcl/decimal.js
|
|
37
|
-
* Copyright (c) 2025 Michael Mclaughlin <M8ch88l@gmail.com>
|
|
38
|
-
* MIT Licence
|
|
39
|
-
*/var ko=9e15,pi=1e9,Em="0123456789abcdef",jl="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",ql="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Sm={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-ko,maxE:ko,crypto:!1},nx,Fa,Ye=!0,vc="[DecimalError] ",ci=vc+"Invalid argument: ",ax=vc+"Precision limit exceeded",ix=vc+"crypto unavailable",ox="[object Decimal]",_r=Math.floor,ir=Math.pow,N9=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,A9=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,C9=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,sx=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Vn=1e7,He=7,E9=9007199254740991,S9=jl.length-1,Tm=ql.length-1,pe={toStringTag:ox};pe.absoluteValue=pe.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),je(e)};pe.ceil=function(){return je(new this.constructor(this),this.e+1,2)};pe.clampedTo=pe.clamp=function(e,t){var r,n=this,a=n.constructor;if(e=new a(e),t=new a(t),!e.s||!t.s)return new a(NaN);if(e.gt(t))throw Error(ci+t);return r=n.cmp(e),r<0?e:n.cmp(t)>0?t:new a(n)};pe.comparedTo=pe.cmp=function(e){var t,r,n,a,i=this,o=i.d,s=(e=new i.constructor(e)).d,u=i.s,l=e.s;if(!o||!s)return!u||!l?NaN:u!==l?u:o===s?0:!o^u<0?1:-1;if(!o[0]||!s[0])return o[0]?u:s[0]?-l:0;if(u!==l)return u;if(i.e!==e.e)return i.e>e.e^u<0?1:-1;for(n=o.length,a=s.length,t=0,r=n<a?n:a;t<r;++t)if(o[t]!==s[t])return o[t]>s[t]^u<0?1:-1;return n===a?0:n>a^u<0?1:-1};pe.cosine=pe.cos=function(){var e,t,r=this,n=r.constructor;return r.d?r.d[0]?(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+He,n.rounding=1,r=T9(n,mx(n,r)),n.precision=e,n.rounding=t,je(Fa==2||Fa==3?r.neg():r,e,t,!0)):new n(1):new n(NaN)};pe.cubeRoot=pe.cbrt=function(){var e,t,r,n,a,i,o,s,u,l,c=this,f=c.constructor;if(!c.isFinite()||c.isZero())return new f(c);for(Ye=!1,i=c.s*ir(c.s*c,1/3),!i||Math.abs(i)==1/0?(r=Nr(c.d),e=c.e,(i=(e-r.length+1)%3)&&(r+=i==1||i==-2?"0":"00"),i=ir(r,1/3),e=_r((e+1)/3)-(e%3==(e<0?-1:2)),i==1/0?r="5e"+e:(r=i.toExponential(),r=r.slice(0,r.indexOf("e")+1)+e),n=new f(r),n.s=c.s):n=new f(i.toString()),o=(e=f.precision)+3;;)if(s=n,u=s.times(s).times(s),l=u.plus(c),n=Bt(l.plus(c).times(s),l.plus(u),o+2,1),Nr(s.d).slice(0,o)===(r=Nr(n.d)).slice(0,o))if(r=r.slice(o-3,o+1),r=="9999"||!a&&r=="4999"){if(!a&&(je(s,e+1,0),s.times(s).times(s).eq(c))){n=s;break}o+=4,a=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(je(n,e+1,1),t=!n.times(n).times(n).eq(c));break}return Ye=!0,je(n,e,f.rounding,t)};pe.decimalPlaces=pe.dp=function(){var e,t=this.d,r=NaN;if(t){if(e=t.length-1,r=(e-_r(this.e/He))*He,e=t[e],e)for(;e%10==0;e/=10)r--;r<0&&(r=0)}return r};pe.dividedBy=pe.div=function(e){return Bt(this,new this.constructor(e))};pe.dividedToIntegerBy=pe.divToInt=function(e){var t=this,r=t.constructor;return je(Bt(t,new r(e),0,1,1),r.precision,r.rounding)};pe.equals=pe.eq=function(e){return this.cmp(e)===0};pe.floor=function(){return je(new this.constructor(this),this.e+1,3)};pe.greaterThan=pe.gt=function(e){return this.cmp(e)>0};pe.greaterThanOrEqualTo=pe.gte=function(e){var t=this.cmp(e);return t==1||t===0};pe.hyperbolicCosine=pe.cosh=function(){var e,t,r,n,a,i=this,o=i.constructor,s=new o(1);if(!i.isFinite())return new o(i.s?1/0:NaN);if(i.isZero())return s;r=o.precision,n=o.rounding,o.precision=r+Math.max(i.e,i.sd())+4,o.rounding=1,a=i.d.length,a<32?(e=Math.ceil(a/3),t=(1/bc(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),i=Lo(o,1,i.times(t),new o(1),!0);for(var u,l=e,c=new o(8);l--;)u=i.times(i),i=s.minus(u.times(c.minus(u.times(c))));return je(i,o.precision=r,o.rounding=n,!0)};pe.hyperbolicSine=pe.sinh=function(){var e,t,r,n,a=this,i=a.constructor;if(!a.isFinite()||a.isZero())return new i(a);if(t=i.precision,r=i.rounding,i.precision=t+Math.max(a.e,a.sd())+4,i.rounding=1,n=a.d.length,n<3)a=Lo(i,2,a,a,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,a=a.times(1/bc(5,e)),a=Lo(i,2,a,a,!0);for(var o,s=new i(5),u=new i(16),l=new i(20);e--;)o=a.times(a),a=a.times(s.plus(o.times(u.times(o).plus(l))))}return i.precision=t,i.rounding=r,je(a,t,r,!0)};pe.hyperbolicTangent=pe.tanh=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+7,n.rounding=1,Bt(r.sinh(),r.cosh(),n.precision=e,n.rounding=t)):new n(r.s)};pe.inverseCosine=pe.acos=function(){var e=this,t=e.constructor,r=e.abs().cmp(1),n=t.precision,a=t.rounding;return r!==-1?r===0?e.isNeg()?ia(t,n,a):new t(0):new t(NaN):e.isZero()?ia(t,n+4,a).times(.5):(t.precision=n+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=n,t.rounding=a,e.times(2))};pe.inverseHyperbolicCosine=pe.acosh=function(){var e,t,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(e=n.precision,t=n.rounding,n.precision=e+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,Ye=!1,r=r.times(r).minus(1).sqrt().plus(r),Ye=!0,n.precision=e,n.rounding=t,r.ln()):new n(r)};pe.inverseHyperbolicSine=pe.asinh=function(){var e,t,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,Ye=!1,r=r.times(r).plus(1).sqrt().plus(r),Ye=!0,n.precision=e,n.rounding=t,r.ln())};pe.inverseHyperbolicTangent=pe.atanh=function(){var e,t,r,n,a=this,i=a.constructor;return a.isFinite()?a.e>=0?new i(a.abs().eq(1)?a.s/0:a.isZero()?a:NaN):(e=i.precision,t=i.rounding,n=a.sd(),Math.max(n,e)<2*-a.e-1?je(new i(a),e,t,!0):(i.precision=r=n-a.e,a=Bt(a.plus(1),new i(1).minus(a),r+e,1),i.precision=e+4,i.rounding=1,a=a.ln(),i.precision=e,i.rounding=t,a.times(.5))):new i(NaN)};pe.inverseSine=pe.asin=function(){var e,t,r,n,a=this,i=a.constructor;return a.isZero()?new i(a):(t=a.abs().cmp(1),r=i.precision,n=i.rounding,t!==-1?t===0?(e=ia(i,r+4,n).times(.5),e.s=a.s,e):new i(NaN):(i.precision=r+6,i.rounding=1,a=a.div(new i(1).minus(a.times(a)).sqrt().plus(1)).atan(),i.precision=r,i.rounding=n,a.times(2)))};pe.inverseTangent=pe.atan=function(){var e,t,r,n,a,i,o,s,u,l=this,c=l.constructor,f=c.precision,m=c.rounding;if(l.isFinite()){if(l.isZero())return new c(l);if(l.abs().eq(1)&&f+4<=Tm)return o=ia(c,f+4,m).times(.25),o.s=l.s,o}else{if(!l.s)return new c(NaN);if(f+4<=Tm)return o=ia(c,f+4,m).times(.5),o.s=l.s,o}for(c.precision=s=f+10,c.rounding=1,r=Math.min(28,s/He+2|0),e=r;e;--e)l=l.div(l.times(l).plus(1).sqrt().plus(1));for(Ye=!1,t=Math.ceil(s/He),n=1,u=l.times(l),o=new c(l),a=l;e!==-1;)if(a=a.times(u),i=o.minus(a.div(n+=2)),a=a.times(u),o=i.plus(a.div(n+=2)),o.d[t]!==void 0)for(e=t;o.d[e]===i.d[e]&&e--;);return r&&(o=o.times(2<<r-1)),Ye=!0,je(o,c.precision=f,c.rounding=m,!0)};pe.isFinite=function(){return!!this.d};pe.isInteger=pe.isInt=function(){return!!this.d&&_r(this.e/He)>this.d.length-2};pe.isNaN=function(){return!this.s};pe.isNegative=pe.isNeg=function(){return this.s<0};pe.isPositive=pe.isPos=function(){return this.s>0};pe.isZero=function(){return!!this.d&&this.d[0]===0};pe.lessThan=pe.lt=function(e){return this.cmp(e)<0};pe.lessThanOrEqualTo=pe.lte=function(e){return this.cmp(e)<1};pe.logarithm=pe.log=function(e){var t,r,n,a,i,o,s,u,l=this,c=l.constructor,f=c.precision,m=c.rounding,d=5;if(e==null)e=new c(10),t=!0;else{if(e=new c(e),r=e.d,e.s<0||!r||!r[0]||e.eq(1))return new c(NaN);t=e.eq(10)}if(r=l.d,l.s<0||!r||!r[0]||l.eq(1))return new c(r&&!r[0]?-1/0:l.s!=1?NaN:r?0:1/0);if(t)if(r.length>1)i=!0;else{for(a=r[0];a%10===0;)a/=10;i=a!==1}if(Ye=!1,s=f+d,o=ri(l,s),n=t?Rl(c,s+10):ri(e,s),u=Bt(o,n,s,1),qs(u.d,a=f,m))do if(s+=10,o=ri(l,s),n=t?Rl(c,s+10):ri(e,s),u=Bt(o,n,s,1),!i){+Nr(u.d).slice(a+1,a+15)+1==1e14&&(u=je(u,f+1,0));break}while(qs(u.d,a+=10,m));return Ye=!0,je(u,f,m)};pe.minus=pe.sub=function(e){var t,r,n,a,i,o,s,u,l,c,f,m,d=this,p=d.constructor;if(e=new p(e),!d.d||!e.d)return!d.s||!e.s?e=new p(NaN):d.d?e.s=-e.s:e=new p(e.d||d.s!==e.s?d:NaN),e;if(d.s!=e.s)return e.s=-e.s,d.plus(e);if(l=d.d,m=e.d,s=p.precision,u=p.rounding,!l[0]||!m[0]){if(m[0])e.s=-e.s;else if(l[0])e=new p(d);else return new p(u===3?-0:0);return Ye?je(e,s,u):e}if(r=_r(e.e/He),c=_r(d.e/He),l=l.slice(),i=c-r,i){for(f=i<0,f?(t=l,i=-i,o=m.length):(t=m,r=c,o=l.length),n=Math.max(Math.ceil(s/He),o)+2,i>n&&(i=n,t.length=1),t.reverse(),n=i;n--;)t.push(0);t.reverse()}else{for(n=l.length,o=m.length,f=n<o,f&&(o=n),n=0;n<o;n++)if(l[n]!=m[n]){f=l[n]<m[n];break}i=0}for(f&&(t=l,l=m,m=t,e.s=-e.s),o=l.length,n=m.length-o;n>0;--n)l[o++]=0;for(n=m.length;n>i;){if(l[--n]<m[n]){for(a=n;a&&l[--a]===0;)l[a]=Vn-1;--l[a],l[n]+=Vn}l[n]-=m[n]}for(;l[--o]===0;)l.pop();for(;l[0]===0;l.shift())--r;return l[0]?(e.d=l,e.e=yc(l,r),Ye?je(e,s,u):e):new p(u===3?-0:0)};pe.modulo=pe.mod=function(e){var t,r=this,n=r.constructor;return e=new n(e),!r.d||!e.s||e.d&&!e.d[0]?new n(NaN):!e.d||r.d&&!r.d[0]?je(new n(r),n.precision,n.rounding):(Ye=!1,n.modulo==9?(t=Bt(r,e.abs(),0,3,1),t.s*=e.s):t=Bt(r,e,0,n.modulo,1),t=t.times(e),Ye=!0,r.minus(t))};pe.naturalExponential=pe.exp=function(){return Mm(this)};pe.naturalLogarithm=pe.ln=function(){return ri(this)};pe.negated=pe.neg=function(){var e=new this.constructor(this);return e.s=-e.s,je(e)};pe.plus=pe.add=function(e){var t,r,n,a,i,o,s,u,l,c,f=this,m=f.constructor;if(e=new m(e),!f.d||!e.d)return!f.s||!e.s?e=new m(NaN):f.d||(e=new m(e.d||f.s===e.s?f:NaN)),e;if(f.s!=e.s)return e.s=-e.s,f.minus(e);if(l=f.d,c=e.d,s=m.precision,u=m.rounding,!l[0]||!c[0])return c[0]||(e=new m(f)),Ye?je(e,s,u):e;if(i=_r(f.e/He),n=_r(e.e/He),l=l.slice(),a=i-n,a){for(a<0?(r=l,a=-a,o=c.length):(r=c,n=i,o=l.length),i=Math.ceil(s/He),o=i>o?i+1:o+1,a>o&&(a=o,r.length=1),r.reverse();a--;)r.push(0);r.reverse()}for(o=l.length,a=c.length,o-a<0&&(a=o,r=c,c=l,l=r),t=0;a;)t=(l[--a]=l[a]+c[a]+t)/Vn|0,l[a]%=Vn;for(t&&(l.unshift(t),++n),o=l.length;l[--o]==0;)l.pop();return e.d=l,e.e=yc(l,n),Ye?je(e,s,u):e};pe.precision=pe.sd=function(e){var t,r=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(ci+e);return r.d?(t=ux(r.d),e&&r.e+1>t&&(t=r.e+1)):t=NaN,t};pe.round=function(){var e=this,t=e.constructor;return je(new t(e),e.e+1,t.rounding)};pe.sine=pe.sin=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+He,n.rounding=1,r=F9(n,mx(n,r)),n.precision=e,n.rounding=t,je(Fa>2?r.neg():r,e,t,!0)):new n(NaN)};pe.squareRoot=pe.sqrt=function(){var e,t,r,n,a,i,o=this,s=o.d,u=o.e,l=o.s,c=o.constructor;if(l!==1||!s||!s[0])return new c(!l||l<0&&(!s||s[0])?NaN:s?o:1/0);for(Ye=!1,l=Math.sqrt(+o),l==0||l==1/0?(t=Nr(s),(t.length+u)%2==0&&(t+="0"),l=Math.sqrt(t),u=_r((u+1)/2)-(u<0||u%2),l==1/0?t="5e"+u:(t=l.toExponential(),t=t.slice(0,t.indexOf("e")+1)+u),n=new c(t)):n=new c(l.toString()),r=(u=c.precision)+3;;)if(i=n,n=i.plus(Bt(o,i,r+2,1)).times(.5),Nr(i.d).slice(0,r)===(t=Nr(n.d)).slice(0,r))if(t=t.slice(r-3,r+1),t=="9999"||!a&&t=="4999"){if(!a&&(je(i,u+1,0),i.times(i).eq(o))){n=i;break}r+=4,a=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(je(n,u+1,1),e=!n.times(n).eq(o));break}return Ye=!0,je(n,u,c.rounding,e)};pe.tangent=pe.tan=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+10,n.rounding=1,r=r.sin(),r.s=1,r=Bt(r,new n(1).minus(r.times(r)).sqrt(),e+10,0),n.precision=e,n.rounding=t,je(Fa==2||Fa==4?r.neg():r,e,t,!0)):new n(NaN)};pe.times=pe.mul=function(e){var t,r,n,a,i,o,s,u,l,c=this,f=c.constructor,m=c.d,d=(e=new f(e)).d;if(e.s*=c.s,!m||!m[0]||!d||!d[0])return new f(!e.s||m&&!m[0]&&!d||d&&!d[0]&&!m?NaN:!m||!d?e.s/0:e.s*0);for(r=_r(c.e/He)+_r(e.e/He),u=m.length,l=d.length,u<l&&(i=m,m=d,d=i,o=u,u=l,l=o),i=[],o=u+l,n=o;n--;)i.push(0);for(n=l;--n>=0;){for(t=0,a=u+n;a>n;)s=i[a]+d[n]*m[a-n-1]+t,i[a--]=s%Vn|0,t=s/Vn|0;i[a]=(i[a]+t)%Vn|0}for(;!i[--o];)i.pop();return t?++r:i.shift(),e.d=i,e.e=yc(i,r),Ye?je(e,f.precision,f.rounding):e};pe.toBinary=function(e,t){return pd(this,2,e,t)};pe.toDecimalPlaces=pe.toDP=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(nn(e,0,pi),t===void 0?t=n.rounding:nn(t,0,8),je(r,e+r.e+1,t))};pe.toExponential=function(e,t){var r,n=this,a=n.constructor;return e===void 0?r=ua(n,!0):(nn(e,0,pi),t===void 0?t=a.rounding:nn(t,0,8),n=je(new a(n),e+1,t),r=ua(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+r:r};pe.toFixed=function(e,t){var r,n,a=this,i=a.constructor;return e===void 0?r=ua(a):(nn(e,0,pi),t===void 0?t=i.rounding:nn(t,0,8),n=je(new i(a),e+a.e+1,t),r=ua(n,!1,e+n.e+1)),a.isNeg()&&!a.isZero()?"-"+r:r};pe.toFraction=function(e){var t,r,n,a,i,o,s,u,l,c,f,m,d=this,p=d.d,h=d.constructor;if(!p)return new h(d);if(l=r=new h(1),n=u=new h(0),t=new h(n),i=t.e=ux(p)-d.e-1,o=i%He,t.d[0]=ir(10,o<0?He+o:o),e==null)e=i>0?t:l;else{if(s=new h(e),!s.isInt()||s.lt(l))throw Error(ci+s);e=s.gt(t)?i>0?t:l:s}for(Ye=!1,s=new h(Nr(p)),c=h.precision,h.precision=i=p.length*He*2;f=Bt(s,t,0,1,1),a=r.plus(f.times(n)),a.cmp(e)!=1;)r=n,n=a,a=l,l=u.plus(f.times(a)),u=a,a=t,t=s.minus(f.times(a)),s=a;return a=Bt(e.minus(r),n,0,1,1),u=u.plus(a.times(l)),r=r.plus(a.times(n)),u.s=l.s=d.s,m=Bt(l,n,i,1).minus(d).abs().cmp(Bt(u,r,i,1).minus(d).abs())<1?[l,n]:[u,r],h.precision=c,Ye=!0,m};pe.toHexadecimal=pe.toHex=function(e,t){return pd(this,16,e,t)};pe.toNearest=function(e,t){var r=this,n=r.constructor;if(r=new n(r),e==null){if(!r.d)return r;e=new n(1),t=n.rounding}else{if(e=new n(e),t===void 0?t=n.rounding:nn(t,0,8),!r.d)return e.s?r:e;if(!e.d)return e.s&&(e.s=r.s),e}return e.d[0]?(Ye=!1,r=Bt(r,e,0,t,1).times(e),Ye=!0,je(r)):(e.s=r.s,r=e),r};pe.toNumber=function(){return+this};pe.toOctal=function(e,t){return pd(this,8,e,t)};pe.toPower=pe.pow=function(e){var t,r,n,a,i,o,s=this,u=s.constructor,l=+(e=new u(e));if(!s.d||!e.d||!s.d[0]||!e.d[0])return new u(ir(+s,l));if(s=new u(s),s.eq(1))return s;if(n=u.precision,i=u.rounding,e.eq(1))return je(s,n,i);if(t=_r(e.e/He),t>=e.d.length-1&&(r=l<0?-l:l)<=E9)return a=lx(u,s,r,n),e.s<0?new u(1).div(a):je(a,n,i);if(o=s.s,o<0){if(t<e.d.length-1)return new u(NaN);if((e.d[t]&1)==0&&(o=1),s.e==0&&s.d[0]==1&&s.d.length==1)return s.s=o,s}return r=ir(+s,l),t=r==0||!isFinite(r)?_r(l*(Math.log("0."+Nr(s.d))/Math.LN10+s.e+1)):new u(r+"").e,t>u.maxE+1||t<u.minE-1?new u(t>0?o/0:0):(Ye=!1,u.rounding=s.s=1,r=Math.min(12,(t+"").length),a=Mm(e.times(ri(s,n+r)),n),a.d&&(a=je(a,n+5,1),qs(a.d,n,i)&&(t=n+10,a=je(Mm(e.times(ri(s,t+r)),t),t+5,1),+Nr(a.d).slice(n+1,n+15)+1==1e14&&(a=je(a,n+1,0)))),a.s=o,Ye=!0,u.rounding=i,je(a,n,i))};pe.toPrecision=function(e,t){var r,n=this,a=n.constructor;return e===void 0?r=ua(n,n.e<=a.toExpNeg||n.e>=a.toExpPos):(nn(e,1,pi),t===void 0?t=a.rounding:nn(t,0,8),n=je(new a(n),e,t),r=ua(n,e<=n.e||n.e<=a.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+r:r};pe.toSignificantDigits=pe.toSD=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(nn(e,1,pi),t===void 0?t=n.rounding:nn(t,0,8)),je(new n(r),e,t)};pe.toString=function(){var e=this,t=e.constructor,r=ua(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+r:r};pe.truncated=pe.trunc=function(){return je(new this.constructor(this),this.e+1,1)};pe.valueOf=pe.toJSON=function(){var e=this,t=e.constructor,r=ua(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+r:r};function Nr(e){var t,r,n,a=e.length-1,i="",o=e[0];if(a>0){for(i+=o,t=1;t<a;t++)n=e[t]+"",r=He-n.length,r&&(i+=Ka(r)),i+=n;o=e[t],n=o+"",r=He-n.length,r&&(i+=Ka(r))}else if(o===0)return"0";for(;o%10===0;)o/=10;return i+o}function nn(e,t,r){if(e!==~~e||e<t||e>r)throw Error(ci+e)}function qs(e,t,r,n){var a,i,o,s;for(i=e[0];i>=10;i/=10)--t;return--t<0?(t+=He,a=0):(a=Math.ceil((t+1)/He),t%=He),i=ir(10,He-t),s=e[a]%i|0,n==null?t<3?(t==0?s=s/100|0:t==1&&(s=s/10|0),o=r<4&&s==99999||r>3&&s==49999||s==5e4||s==0):o=(r<4&&s+1==i||r>3&&s+1==i/2)&&(e[a+1]/i/100|0)==ir(10,t-2)-1||(s==i/2||s==0)&&(e[a+1]/i/100|0)==0:t<4?(t==0?s=s/1e3|0:t==1?s=s/100|0:t==2&&(s=s/10|0),o=(n||r<4)&&s==9999||!n&&r>3&&s==4999):o=((n||r<4)&&s+1==i||!n&&r>3&&s+1==i/2)&&(e[a+1]/i/1e3|0)==ir(10,t-3)-1,o}function bl(e,t,r){for(var n,a=[0],i,o=0,s=e.length;o<s;){for(i=a.length;i--;)a[i]*=t;for(a[0]+=Em.indexOf(e.charAt(o++)),n=0;n<a.length;n++)a[n]>r-1&&(a[n+1]===void 0&&(a[n+1]=0),a[n+1]+=a[n]/r|0,a[n]%=r)}return a.reverse()}function T9(e,t){var r,n,a;if(t.isZero())return t;n=t.d.length,n<32?(r=Math.ceil(n/3),a=(1/bc(4,r)).toString()):(r=16,a="2.3283064365386962890625e-10"),e.precision+=r,t=Lo(e,1,t.times(a),new e(1));for(var i=r;i--;){var o=t.times(t);t=o.times(o).minus(o).times(8).plus(1)}return e.precision-=r,t}var Bt=(function(){function e(n,a,i){var o,s=0,u=n.length;for(n=n.slice();u--;)o=n[u]*a+s,n[u]=o%i|0,s=o/i|0;return s&&n.unshift(s),n}function t(n,a,i,o){var s,u;if(i!=o)u=i>o?1:-1;else for(s=u=0;s<i;s++)if(n[s]!=a[s]){u=n[s]>a[s]?1:-1;break}return u}function r(n,a,i,o){for(var s=0;i--;)n[i]-=s,s=n[i]<a[i]?1:0,n[i]=s*o+n[i]-a[i];for(;!n[0]&&n.length>1;)n.shift()}return function(n,a,i,o,s,u){var l,c,f,m,d,p,h,g,b,D,y,w,x,v,N,C,A,E,S,F,k=n.constructor,B=n.s==a.s?1:-1,$=n.d,M=a.d;if(!$||!$[0]||!M||!M[0])return new k(!n.s||!a.s||($?M&&$[0]==M[0]:!M)?NaN:$&&$[0]==0||!M?B*0:B/0);for(u?(d=1,c=n.e-a.e):(u=Vn,d=He,c=_r(n.e/d)-_r(a.e/d)),S=M.length,A=$.length,b=new k(B),D=b.d=[],f=0;M[f]==($[f]||0);f++);if(M[f]>($[f]||0)&&c--,i==null?(v=i=k.precision,o=k.rounding):s?v=i+(n.e-a.e)+1:v=i,v<0)D.push(1),p=!0;else{if(v=v/d+2|0,f=0,S==1){for(m=0,M=M[0],v++;(f<A||m)&&v--;f++)N=m*u+($[f]||0),D[f]=N/M|0,m=N%M|0;p=m||f<A}else{for(m=u/(M[0]+1)|0,m>1&&(M=e(M,m,u),$=e($,m,u),S=M.length,A=$.length),C=S,y=$.slice(0,S),w=y.length;w<S;)y[w++]=0;F=M.slice(),F.unshift(0),E=M[0],M[1]>=u/2&&++E;do m=0,l=t(M,y,S,w),l<0?(x=y[0],S!=w&&(x=x*u+(y[1]||0)),m=x/E|0,m>1?(m>=u&&(m=u-1),h=e(M,m,u),g=h.length,w=y.length,l=t(h,y,g,w),l==1&&(m--,r(h,S<g?F:M,g,u))):(m==0&&(l=m=1),h=M.slice()),g=h.length,g<w&&h.unshift(0),r(y,h,w,u),l==-1&&(w=y.length,l=t(M,y,S,w),l<1&&(m++,r(y,S<w?F:M,w,u))),w=y.length):l===0&&(m++,y=[0]),D[f++]=m,l&&y[0]?y[w++]=$[C]||0:(y=[$[C]],w=1);while((C++<A||y[0]!==void 0)&&v--);p=y[0]!==void 0}D[0]||D.shift()}if(d==1)b.e=c,nx=p;else{for(f=1,m=D[0];m>=10;m/=10)f++;b.e=f+c*d-1,je(b,s?i+b.e+1:i,o,p)}return b}})();function je(e,t,r,n){var a,i,o,s,u,l,c,f,m,d=e.constructor;e:if(t!=null){if(f=e.d,!f)return e;for(a=1,s=f[0];s>=10;s/=10)a++;if(i=t-a,i<0)i+=He,o=t,c=f[m=0],u=c/ir(10,a-o-1)%10|0;else if(m=Math.ceil((i+1)/He),s=f.length,m>=s)if(n){for(;s++<=m;)f.push(0);c=u=0,a=1,i%=He,o=i-He+1}else break e;else{for(c=s=f[m],a=1;s>=10;s/=10)a++;i%=He,o=i-He+a,u=o<0?0:c/ir(10,a-o-1)%10|0}if(n=n||t<0||f[m+1]!==void 0||(o<0?c:c%ir(10,a-o-1)),l=r<4?(u||n)&&(r==0||r==(e.s<0?3:2)):u>5||u==5&&(r==4||n||r==6&&(i>0?o>0?c/ir(10,a-o):0:f[m-1])%10&1||r==(e.s<0?8:7)),t<1||!f[0])return f.length=0,l?(t-=e.e+1,f[0]=ir(10,(He-t%He)%He),e.e=-t||0):f[0]=e.e=0,e;if(i==0?(f.length=m,s=1,m--):(f.length=m+1,s=ir(10,He-i),f[m]=o>0?(c/ir(10,a-o)%ir(10,o)|0)*s:0),l)for(;;)if(m==0){for(i=1,o=f[0];o>=10;o/=10)i++;for(o=f[0]+=s,s=1;o>=10;o/=10)s++;i!=s&&(e.e++,f[0]==Vn&&(f[0]=1));break}else{if(f[m]+=s,f[m]!=Vn)break;f[m--]=0,s=1}for(i=f.length;f[--i]===0;)f.pop()}return Ye&&(e.e>d.maxE?(e.d=null,e.e=NaN):e.e<d.minE&&(e.e=0,e.d=[0])),e}function ua(e,t,r){if(!e.isFinite())return fx(e);var n,a=e.e,i=Nr(e.d),o=i.length;return t?(r&&(n=r-o)>0?i=i.charAt(0)+"."+i.slice(1)+Ka(n):o>1&&(i=i.charAt(0)+"."+i.slice(1)),i=i+(e.e<0?"e":"e+")+e.e):a<0?(i="0."+Ka(-a-1)+i,r&&(n=r-o)>0&&(i+=Ka(n))):a>=o?(i+=Ka(a+1-o),r&&(n=r-a-1)>0&&(i=i+"."+Ka(n))):((n=a+1)<o&&(i=i.slice(0,n)+"."+i.slice(n)),r&&(n=r-o)>0&&(a+1===o&&(i+="."),i+=Ka(n))),i}function yc(e,t){var r=e[0];for(t*=He;r>=10;r/=10)t++;return t}function Rl(e,t,r){if(t>S9)throw Ye=!0,r&&(e.precision=r),Error(ax);return je(new e(jl),t,1,!0)}function ia(e,t,r){if(t>Tm)throw Error(ax);return je(new e(ql),t,r,!0)}function ux(e){var t=e.length-1,r=t*He+1;if(t=e[t],t){for(;t%10==0;t/=10)r--;for(t=e[0];t>=10;t/=10)r++}return r}function Ka(e){for(var t="";e--;)t+="0";return t}function lx(e,t,r,n){var a,i=new e(1),o=Math.ceil(n/He+4);for(Ye=!1;;){if(r%2&&(i=i.times(t),Yg(i.d,o)&&(a=!0)),r=_r(r/2),r===0){r=i.d.length-1,a&&i.d[r]===0&&++i.d[r];break}t=t.times(t),Yg(t.d,o)}return Ye=!0,i}function Kg(e){return e.d[e.d.length-1]&1}function cx(e,t,r){for(var n,a,i=new e(t[0]),o=0;++o<t.length;){if(a=new e(t[o]),!a.s){i=a;break}n=i.cmp(a),(n===r||n===0&&i.s===r)&&(i=a)}return i}function Mm(e,t){var r,n,a,i,o,s,u,l=0,c=0,f=0,m=e.constructor,d=m.rounding,p=m.precision;if(!e.d||!e.d[0]||e.e>17)return new m(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(t==null?(Ye=!1,u=p):u=t,s=new m(.03125);e.e>-2;)e=e.times(s),f+=5;for(n=Math.log(ir(2,f))/Math.LN10*2+5|0,u+=n,r=i=o=new m(1),m.precision=u;;){if(i=je(i.times(e),u,1),r=r.times(++c),s=o.plus(Bt(i,r,u,1)),Nr(s.d).slice(0,u)===Nr(o.d).slice(0,u)){for(a=f;a--;)o=je(o.times(o),u,1);if(t==null)if(l<3&&qs(o.d,u-n,d,l))m.precision=u+=10,r=i=s=new m(1),c=0,l++;else return je(o,m.precision=p,d,Ye=!0);else return m.precision=p,o}o=s}}function ri(e,t){var r,n,a,i,o,s,u,l,c,f,m,d=1,p=10,h=e,g=h.d,b=h.constructor,D=b.rounding,y=b.precision;if(h.s<0||!g||!g[0]||!h.e&&g[0]==1&&g.length==1)return new b(g&&!g[0]?-1/0:h.s!=1?NaN:g?0:h);if(t==null?(Ye=!1,c=y):c=t,b.precision=c+=p,r=Nr(g),n=r.charAt(0),Math.abs(i=h.e)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)h=h.times(e),r=Nr(h.d),n=r.charAt(0),d++;i=h.e,n>1?(h=new b("0."+r),i++):h=new b(n+"."+r.slice(1))}else return l=Rl(b,c+2,y).times(i+""),h=ri(new b(n+"."+r.slice(1)),c-p).plus(l),b.precision=y,t==null?je(h,y,D,Ye=!0):h;for(f=h,u=o=h=Bt(h.minus(1),h.plus(1),c,1),m=je(h.times(h),c,1),a=3;;){if(o=je(o.times(m),c,1),l=u.plus(Bt(o,new b(a),c,1)),Nr(l.d).slice(0,c)===Nr(u.d).slice(0,c))if(u=u.times(2),i!==0&&(u=u.plus(Rl(b,c+2,y).times(i+""))),u=Bt(u,new b(d),c,1),t==null)if(qs(u.d,c-p,D,s))b.precision=c+=p,l=o=h=Bt(f.minus(1),f.plus(1),c,1),m=je(h.times(h),c,1),a=s=1;else return je(u,b.precision=y,D,Ye=!0);else return b.precision=y,u;u=l,a+=2}}function fx(e){return String(e.s*e.s/0)}function wl(e,t){var r,n,a;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;n++);for(a=t.length;t.charCodeAt(a-1)===48;--a);if(t=t.slice(n,a),t){if(a-=n,e.e=r=r-n-1,e.d=[],n=(r+1)%He,r<0&&(n+=He),n<a){for(n&&e.d.push(+t.slice(0,n)),a-=He;n<a;)e.d.push(+t.slice(n,n+=He));t=t.slice(n),n=He-t.length}else n-=a;for(;n--;)t+="0";e.d.push(+t),Ye&&(e.e>e.constructor.maxE?(e.d=null,e.e=NaN):e.e<e.constructor.minE&&(e.e=0,e.d=[0]))}else e.e=0,e.d=[0];return e}function M9(e,t){var r,n,a,i,o,s,u,l,c;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),sx.test(t))return wl(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(A9.test(t))r=16,t=t.toLowerCase();else if(N9.test(t))r=2;else if(C9.test(t))r=8;else throw Error(ci+t);for(i=t.search(/p/i),i>0?(u=+t.slice(i+1),t=t.substring(2,i)):t=t.slice(2),i=t.indexOf("."),o=i>=0,n=e.constructor,o&&(t=t.replace(".",""),s=t.length,i=s-i,a=lx(n,new n(r),i,i*2)),l=bl(t,r,Vn),c=l.length-1,i=c;l[i]===0;--i)l.pop();return i<0?new n(e.s*0):(e.e=yc(l,c),e.d=l,Ye=!1,o&&(e=Bt(e,a,s*4)),u&&(e=e.times(Math.abs(u)<54?ir(2,u):fi.pow(2,u))),Ye=!0,e)}function F9(e,t){var r,n=t.d.length;if(n<3)return t.isZero()?t:Lo(e,2,t,t);r=1.4*Math.sqrt(n),r=r>16?16:r|0,t=t.times(1/bc(5,r)),t=Lo(e,2,t,t);for(var a,i=new e(5),o=new e(16),s=new e(20);r--;)a=t.times(t),t=t.times(i.plus(a.times(o.times(a).minus(s))));return t}function Lo(e,t,r,n,a){var i,o,s,u,l=e.precision,c=Math.ceil(l/He);for(Ye=!1,u=r.times(r),s=new e(n);;){if(o=Bt(s.times(u),new e(t++*t++),l,1),s=a?n.plus(o):n.minus(o),n=Bt(o.times(u),new e(t++*t++),l,1),o=s.plus(n),o.d[c]!==void 0){for(i=c;o.d[i]===s.d[i]&&i--;);if(i==-1)break}i=s,s=n,n=o,o=i}return Ye=!0,o.d.length=c+1,o}function bc(e,t){for(var r=e;--t;)r*=e;return r}function mx(e,t){var r,n=t.s<0,a=ia(e,e.precision,1),i=a.times(.5);if(t=t.abs(),t.lte(i))return Fa=n?4:1,t;if(r=t.divToInt(a),r.isZero())Fa=n?3:2;else{if(t=t.minus(r.times(a)),t.lte(i))return Fa=Kg(r)?n?2:3:n?4:1,t;Fa=Kg(r)?n?1:4:n?3:2}return t.minus(a).abs()}function pd(e,t,r,n){var a,i,o,s,u,l,c,f,m,d=e.constructor,p=r!==void 0;if(p?(nn(r,1,pi),n===void 0?n=d.rounding:nn(n,0,8)):(r=d.precision,n=d.rounding),!e.isFinite())c=fx(e);else{for(c=ua(e),o=c.indexOf("."),p?(a=2,t==16?r=r*4-3:t==8&&(r=r*3-2)):a=t,o>=0&&(c=c.replace(".",""),m=new d(1),m.e=c.length-o,m.d=bl(ua(m),10,a),m.e=m.d.length),f=bl(c,10,a),i=u=f.length;f[--u]==0;)f.pop();if(!f[0])c=p?"0p+0":"0";else{if(o<0?i--:(e=new d(e),e.d=f,e.e=i,e=Bt(e,m,r,n,0,a),f=e.d,i=e.e,l=nx),o=f[r],s=a/2,l=l||f[r+1]!==void 0,l=n<4?(o!==void 0||l)&&(n===0||n===(e.s<0?3:2)):o>s||o===s&&(n===4||l||n===6&&f[r-1]&1||n===(e.s<0?8:7)),f.length=r,l)for(;++f[--r]>a-1;)f[r]=0,r||(++i,f.unshift(1));for(u=f.length;!f[u-1];--u);for(o=0,c="";o<u;o++)c+=Em.charAt(f[o]);if(p){if(u>1)if(t==16||t==8){for(o=t==16?4:3,--u;u%o;u++)c+="0";for(f=bl(c,a,t),u=f.length;!f[u-1];--u);for(o=1,c="1.";o<u;o++)c+=Em.charAt(f[o])}else c=c.charAt(0)+"."+c.slice(1);c=c+(i<0?"p":"p+")+i}else if(i<0){for(;++i;)c="0"+c;c="0."+c}else if(++i>u)for(i-=u;i--;)c+="0";else i<u&&(c=c.slice(0,i)+"."+c.slice(i))}c=(t==16?"0x":t==2?"0b":t==8?"0o":"")+c}return e.s<0?"-"+c:c}function Yg(e,t){if(e.length>t)return e.length=t,!0}function P9(e){return new this(e).abs()}function k9(e){return new this(e).acos()}function O9(e){return new this(e).acosh()}function $9(e,t){return new this(e).plus(t)}function B9(e){return new this(e).asin()}function _9(e){return new this(e).asinh()}function I9(e){return new this(e).atan()}function z9(e){return new this(e).atanh()}function j9(e,t){e=new this(e),t=new this(t);var r,n=this.precision,a=this.rounding,i=n+4;return!e.s||!t.s?r=new this(NaN):!e.d&&!t.d?(r=ia(this,i,1).times(t.s>0?.25:.75),r.s=e.s):!t.d||e.isZero()?(r=t.s<0?ia(this,n,a):new this(0),r.s=e.s):!e.d||t.isZero()?(r=ia(this,i,1).times(.5),r.s=e.s):t.s<0?(this.precision=i,this.rounding=1,r=this.atan(Bt(e,t,i,1)),t=ia(this,i,1),this.precision=n,this.rounding=a,r=e.s<0?r.minus(t):r.plus(t)):r=this.atan(Bt(e,t,i,1)),r}function q9(e){return new this(e).cbrt()}function R9(e){return je(e=new this(e),e.e+1,2)}function L9(e,t,r){return new this(e).clamp(t,r)}function H9(e){if(!e||typeof e!="object")throw Error(vc+"Object expected");var t,r,n,a=e.defaults===!0,i=["precision",1,pi,"rounding",0,8,"toExpNeg",-ko,0,"toExpPos",0,ko,"maxE",0,ko,"minE",-ko,0,"modulo",0,9];for(t=0;t<i.length;t+=3)if(r=i[t],a&&(this[r]=Sm[r]),(n=e[r])!==void 0)if(_r(n)===n&&n>=i[t+1]&&n<=i[t+2])this[r]=n;else throw Error(ci+r+": "+n);if(r="crypto",a&&(this[r]=Sm[r]),(n=e[r])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[r]=!0;else throw Error(ix);else this[r]=!1;else throw Error(ci+r+": "+n);return this}function G9(e){return new this(e).cos()}function V9(e){return new this(e).cosh()}function dx(e){var t,r,n;function a(i){var o,s,u,l=this;if(!(l instanceof a))return new a(i);if(l.constructor=a,Zg(i)){l.s=i.s,Ye?!i.d||i.e>a.maxE?(l.e=NaN,l.d=null):i.e<a.minE?(l.e=0,l.d=[0]):(l.e=i.e,l.d=i.d.slice()):(l.e=i.e,l.d=i.d?i.d.slice():i.d);return}if(u=typeof i,u==="number"){if(i===0){l.s=1/i<0?-1:1,l.e=0,l.d=[0];return}if(i<0?(i=-i,l.s=-1):l.s=1,i===~~i&&i<1e7){for(o=0,s=i;s>=10;s/=10)o++;Ye?o>a.maxE?(l.e=NaN,l.d=null):o<a.minE?(l.e=0,l.d=[0]):(l.e=o,l.d=[i]):(l.e=o,l.d=[i]);return}if(i*0!==0){i||(l.s=NaN),l.e=NaN,l.d=null;return}return wl(l,i.toString())}if(u==="string")return(s=i.charCodeAt(0))===45?(i=i.slice(1),l.s=-1):(s===43&&(i=i.slice(1)),l.s=1),sx.test(i)?wl(l,i):M9(l,i);if(u==="bigint")return i<0?(i=-i,l.s=-1):l.s=1,wl(l,i.toString());throw Error(ci+i)}if(a.prototype=pe,a.ROUND_UP=0,a.ROUND_DOWN=1,a.ROUND_CEIL=2,a.ROUND_FLOOR=3,a.ROUND_HALF_UP=4,a.ROUND_HALF_DOWN=5,a.ROUND_HALF_EVEN=6,a.ROUND_HALF_CEIL=7,a.ROUND_HALF_FLOOR=8,a.EUCLID=9,a.config=a.set=H9,a.clone=dx,a.isDecimal=Zg,a.abs=P9,a.acos=k9,a.acosh=O9,a.add=$9,a.asin=B9,a.asinh=_9,a.atan=I9,a.atanh=z9,a.atan2=j9,a.cbrt=q9,a.ceil=R9,a.clamp=L9,a.cos=G9,a.cosh=V9,a.div=U9,a.exp=W9,a.floor=J9,a.hypot=K9,a.ln=Y9,a.log=Z9,a.log10=X9,a.log2=Q9,a.max=e8,a.min=t8,a.mod=r8,a.mul=n8,a.pow=a8,a.random=i8,a.round=o8,a.sign=s8,a.sin=u8,a.sinh=l8,a.sqrt=c8,a.sub=f8,a.sum=m8,a.tan=d8,a.tanh=h8,a.trunc=p8,e===void 0&&(e={}),e&&e.defaults!==!0)for(n=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],t=0;t<n.length;)e.hasOwnProperty(r=n[t++])||(e[r]=this[r]);return a.config(e),a}function U9(e,t){return new this(e).div(t)}function W9(e){return new this(e).exp()}function J9(e){return je(e=new this(e),e.e+1,3)}function K9(){var e,t,r=new this(0);for(Ye=!1,e=0;e<arguments.length;)if(t=new this(arguments[e++]),t.d)r.d&&(r=r.plus(t.times(t)));else{if(t.s)return Ye=!0,new this(1/0);r=t}return Ye=!0,r.sqrt()}function Zg(e){return e instanceof fi||e&&e.toStringTag===ox||!1}function Y9(e){return new this(e).ln()}function Z9(e,t){return new this(e).log(t)}function Q9(e){return new this(e).log(2)}function X9(e){return new this(e).log(10)}function e8(){return cx(this,arguments,-1)}function t8(){return cx(this,arguments,1)}function r8(e,t){return new this(e).mod(t)}function n8(e,t){return new this(e).mul(t)}function a8(e,t){return new this(e).pow(t)}function i8(e){var t,r,n,a,i=0,o=new this(1),s=[];if(e===void 0?e=this.precision:nn(e,1,pi),n=Math.ceil(e/He),this.crypto)if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(n));i<n;)a=t[i],a>=429e7?t[i]=crypto.getRandomValues(new Uint32Array(1))[0]:s[i++]=a%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(n*=4);i<n;)a=t[i]+(t[i+1]<<8)+(t[i+2]<<16)+((t[i+3]&127)<<24),a>=214e7?crypto.randomBytes(4).copy(t,i):(s.push(a%1e7),i+=4);i=n/4}else throw Error(ix);else for(;i<n;)s[i++]=Math.random()*1e7|0;for(n=s[--i],e%=He,n&&e&&(a=ir(10,He-e),s[i]=(n/a|0)*a);s[i]===0;i--)s.pop();if(i<0)r=0,s=[0];else{for(r=-1;s[0]===0;r-=He)s.shift();for(n=1,a=s[0];a>=10;a/=10)n++;n<He&&(r-=He-n)}return o.e=r,o.d=s,o}function o8(e){return je(e=new this(e),e.e+1,this.rounding)}function s8(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function u8(e){return new this(e).sin()}function l8(e){return new this(e).sinh()}function c8(e){return new this(e).sqrt()}function f8(e,t){return new this(e).sub(t)}function m8(){var e=0,t=arguments,r=new this(t[e]);for(Ye=!1;r.s&&++e<t.length;)r=r.plus(t[e]);return Ye=!0,je(r,this.precision,this.rounding)}function d8(e){return new this(e).tan()}function h8(e){return new this(e).tanh()}function p8(e){return je(e=new this(e),e.e+1,1)}pe[Symbol.for("nodejs.util.inspect.custom")]=pe.toString;pe[Symbol.toStringTag]="Decimal";var fi=pe.constructor=dx(Sm);jl=new fi(jl);ql=new fi(ql);var g8="BigNumber",v8=["?on","config"],y8=I(g8,v8,e=>{var{on:t,config:r}=e,n=fi.clone({precision:r.precision,modulo:fi.EUCLID});return n.prototype=Object.create(n.prototype),n.prototype.type="BigNumber",n.prototype.isBigNumber=!0,n.prototype.toJSON=function(){return{mathjs:"BigNumber",value:this.toString()}},n.fromJSON=function(a){return new n(a.value)},t&&t("config",function(a,i){a.precision!==i.precision&&n.config({precision:a.precision})}),n},{isClass:!0});const kr=Math.cosh||function(e){return Math.abs(e)<1e-9?1-e:(Math.exp(e)+Math.exp(-e))*.5},xn=Math.sinh||function(e){return Math.abs(e)<1e-9?e:(Math.exp(e)-Math.exp(-e))*.5},b8=function(e){const t=Math.PI/4;if(-t>e||e>t)return Math.cos(e)-1;const r=e*e;return r*(r*(r*(r*(r*(r*(r*(r/20922789888e3-1/87178291200)+1/479001600)-1/3628800)+1/40320)-1/720)+1/24)-1/2)},Ef=function(e,t){return e=Math.abs(e),t=Math.abs(t),e<t&&([e,t]=[t,e]),e<1e8?Math.sqrt(e*e+t*t):(t/=e,e*Math.sqrt(1+t*t))},xo=function(){throw SyntaxError("Invalid Param")};function Sf(e,t){const r=Math.abs(e),n=Math.abs(t);return e===0?Math.log(n):t===0?Math.log(r):r<3e3&&n<3e3?Math.log(e*e+t*t)*.5:(e=e*.5,t=t*.5,.5*Math.log(e*e+t*t)+Math.LN2)}const w8={re:0,im:0},ki=function(e,t){const r=w8;if(e==null)r.re=r.im=0;else if(t!==void 0)r.re=e,r.im=t;else switch(typeof e){case"object":if("im"in e&&"re"in e)r.re=e.re,r.im=e.im;else if("abs"in e&&"arg"in e){if(!isFinite(e.abs)&&isFinite(e.arg))return fe.INFINITY;r.re=e.abs*Math.cos(e.arg),r.im=e.abs*Math.sin(e.arg)}else if("r"in e&&"phi"in e){if(!isFinite(e.r)&&isFinite(e.phi))return fe.INFINITY;r.re=e.r*Math.cos(e.phi),r.im=e.r*Math.sin(e.phi)}else e.length===2?(r.re=e[0],r.im=e[1]):xo();break;case"string":r.im=r.re=0;const n=e.replace(/_/g,"").match(/\d+\.?\d*e[+-]?\d+|\d+\.?\d*|\.\d+|./g);let a=1,i=0;n===null&&xo();for(let o=0;o<n.length;o++){const s=n[o];s===" "||s===" "||s===`
|
|
40
|
-
`||(s==="+"?a++:s==="-"?i++:s==="i"||s==="I"?(a+i===0&&xo(),n[o+1]!==" "&&!isNaN(n[o+1])?(r.im+=parseFloat((i%2?"-":"")+n[o+1]),o++):r.im+=parseFloat((i%2?"-":"")+"1"),a=i=0):((a+i===0||isNaN(s))&&xo(),n[o+1]==="i"||n[o+1]==="I"?(r.im+=parseFloat((i%2?"-":"")+s),o++):r.re+=parseFloat((i%2?"-":"")+s),a=i=0))}a+i>0&&xo();break;case"number":r.im=0,r.re=e;break;default:xo()}return isNaN(r.re)||isNaN(r.im),r};function fe(e,t){if(!(this instanceof fe))return new fe(e,t);const r=ki(e,t);this.re=r.re,this.im=r.im}fe.prototype={re:0,im:0,sign:function(){const e=Ef(this.re,this.im);return new fe(this.re/e,this.im/e)},add:function(e,t){const r=ki(e,t),n=this.isInfinite(),a=!(isFinite(r.re)&&isFinite(r.im));return n||a?n&&a?fe.NAN:fe.INFINITY:new fe(this.re+r.re,this.im+r.im)},sub:function(e,t){const r=ki(e,t),n=this.isInfinite(),a=!(isFinite(r.re)&&isFinite(r.im));return n||a?n&&a?fe.NAN:fe.INFINITY:new fe(this.re-r.re,this.im-r.im)},mul:function(e,t){const r=ki(e,t),n=this.isInfinite(),a=!(isFinite(r.re)&&isFinite(r.im)),i=this.re===0&&this.im===0,o=r.re===0&&r.im===0;return n&&o||a&&i?fe.NAN:n||a?fe.INFINITY:r.im===0&&this.im===0?new fe(this.re*r.re,0):new fe(this.re*r.re-this.im*r.im,this.re*r.im+this.im*r.re)},div:function(e,t){const r=ki(e,t),n=this.isInfinite(),a=!(isFinite(r.re)&&isFinite(r.im)),i=this.re===0&&this.im===0,o=r.re===0&&r.im===0;if(i&&o||n&&a)return fe.NAN;if(o||n)return fe.INFINITY;if(i||a)return fe.ZERO;if(r.im===0)return new fe(this.re/r.re,this.im/r.re);if(Math.abs(r.re)<Math.abs(r.im)){const s=r.re/r.im,u=r.re*s+r.im;return new fe((this.re*s+this.im)/u,(this.im*s-this.re)/u)}else{const s=r.im/r.re,u=r.im*s+r.re;return new fe((this.re+this.im*s)/u,(this.im-this.re*s)/u)}},pow:function(e,t){const r=ki(e,t),n=this.re===0&&this.im===0;if(r.re===0&&r.im===0)return fe.ONE;if(r.im===0){if(this.im===0&&this.re>0)return new fe(Math.pow(this.re,r.re),0);if(this.re===0)switch((r.re%4+4)%4){case 0:return new fe(Math.pow(this.im,r.re),0);case 1:return new fe(0,Math.pow(this.im,r.re));case 2:return new fe(-Math.pow(this.im,r.re),0);case 3:return new fe(0,-Math.pow(this.im,r.re))}}if(n&&r.re>0)return fe.ZERO;const i=Math.atan2(this.im,this.re),o=Sf(this.re,this.im);let s=Math.exp(r.re*o-r.im*i),u=r.im*o+r.re*i;return new fe(s*Math.cos(u),s*Math.sin(u))},sqrt:function(){const e=this.re,t=this.im;if(t===0)return e>=0?new fe(Math.sqrt(e),0):new fe(0,Math.sqrt(-e));const r=Ef(e,t);let n=Math.sqrt(.5*(r+Math.abs(e))),a=Math.abs(t)/(2*n);return e>=0?new fe(n,t<0?-a:a):new fe(a,t<0?-n:n)},exp:function(){const e=Math.exp(this.re);return this.im===0?new fe(e,0):new fe(e*Math.cos(this.im),e*Math.sin(this.im))},expm1:function(){const e=this.re,t=this.im;return new fe(Math.expm1(e)*Math.cos(t)+b8(t),Math.exp(e)*Math.sin(t))},log:function(){const e=this.re,t=this.im;return t===0&&e>0?new fe(Math.log(e),0):new fe(Sf(e,t),Math.atan2(t,e))},abs:function(){return Ef(this.re,this.im)},arg:function(){return Math.atan2(this.im,this.re)},sin:function(){const e=this.re,t=this.im;return new fe(Math.sin(e)*kr(t),Math.cos(e)*xn(t))},cos:function(){const e=this.re,t=this.im;return new fe(Math.cos(e)*kr(t),-Math.sin(e)*xn(t))},tan:function(){const e=2*this.re,t=2*this.im,r=Math.cos(e)+kr(t);return new fe(Math.sin(e)/r,xn(t)/r)},cot:function(){const e=2*this.re,t=2*this.im,r=Math.cos(e)-kr(t);return new fe(-Math.sin(e)/r,xn(t)/r)},sec:function(){const e=this.re,t=this.im,r=.5*kr(2*t)+.5*Math.cos(2*e);return new fe(Math.cos(e)*kr(t)/r,Math.sin(e)*xn(t)/r)},csc:function(){const e=this.re,t=this.im,r=.5*kr(2*t)-.5*Math.cos(2*e);return new fe(Math.sin(e)*kr(t)/r,-Math.cos(e)*xn(t)/r)},asin:function(){const e=this.re,t=this.im,r=new fe(t*t-e*e+1,-2*e*t).sqrt(),n=new fe(r.re-t,r.im+e).log();return new fe(n.im,-n.re)},acos:function(){const e=this.re,t=this.im,r=new fe(t*t-e*e+1,-2*e*t).sqrt(),n=new fe(r.re-t,r.im+e).log();return new fe(Math.PI/2-n.im,n.re)},atan:function(){const e=this.re,t=this.im;if(e===0){if(t===1)return new fe(0,1/0);if(t===-1)return new fe(0,-1/0)}const r=e*e+(1-t)*(1-t),n=new fe((1-t*t-e*e)/r,-2*e/r).log();return new fe(-.5*n.im,.5*n.re)},acot:function(){const e=this.re,t=this.im;if(t===0)return new fe(Math.atan2(1,e),0);const r=e*e+t*t;return r!==0?new fe(e/r,-t/r).atan():new fe(e!==0?e/0:0,t!==0?-t/0:0).atan()},asec:function(){const e=this.re,t=this.im;if(e===0&&t===0)return new fe(0,1/0);const r=e*e+t*t;return r!==0?new fe(e/r,-t/r).acos():new fe(e!==0?e/0:0,t!==0?-t/0:0).acos()},acsc:function(){const e=this.re,t=this.im;if(e===0&&t===0)return new fe(Math.PI/2,1/0);const r=e*e+t*t;return r!==0?new fe(e/r,-t/r).asin():new fe(e!==0?e/0:0,t!==0?-t/0:0).asin()},sinh:function(){const e=this.re,t=this.im;return new fe(xn(e)*Math.cos(t),kr(e)*Math.sin(t))},cosh:function(){const e=this.re,t=this.im;return new fe(kr(e)*Math.cos(t),xn(e)*Math.sin(t))},tanh:function(){const e=2*this.re,t=2*this.im,r=kr(e)+Math.cos(t);return new fe(xn(e)/r,Math.sin(t)/r)},coth:function(){const e=2*this.re,t=2*this.im,r=kr(e)-Math.cos(t);return new fe(xn(e)/r,-Math.sin(t)/r)},csch:function(){const e=this.re,t=this.im,r=Math.cos(2*t)-kr(2*e);return new fe(-2*xn(e)*Math.cos(t)/r,2*kr(e)*Math.sin(t)/r)},sech:function(){const e=this.re,t=this.im,r=Math.cos(2*t)+kr(2*e);return new fe(2*kr(e)*Math.cos(t)/r,-2*xn(e)*Math.sin(t)/r)},asinh:function(){let e=this.im;this.im=-this.re,this.re=e;const t=this.asin();return this.re=-this.im,this.im=e,e=t.re,t.re=-t.im,t.im=e,t},acosh:function(){const e=this.acos();if(e.im<=0){const t=e.re;e.re=-e.im,e.im=t}else{const t=e.im;e.im=-e.re,e.re=t}return e},atanh:function(){const e=this.re,t=this.im,r=e>1&&t===0,n=1-e,a=1+e,i=n*n+t*t,o=i!==0?new fe((a*n-t*t)/i,(t*n+a*t)/i):new fe(e!==-1?e/0:0,t!==0?t/0:0),s=o.re;return o.re=Sf(o.re,o.im)/2,o.im=Math.atan2(o.im,s)/2,r&&(o.im=-o.im),o},acoth:function(){const e=this.re,t=this.im;if(e===0&&t===0)return new fe(0,Math.PI/2);const r=e*e+t*t;return r!==0?new fe(e/r,-t/r).atanh():new fe(e!==0?e/0:0,t!==0?-t/0:0).atanh()},acsch:function(){const e=this.re,t=this.im;if(t===0)return new fe(e!==0?Math.log(e+Math.sqrt(e*e+1)):1/0,0);const r=e*e+t*t;return r!==0?new fe(e/r,-t/r).asinh():new fe(e!==0?e/0:0,t!==0?-t/0:0).asinh()},asech:function(){const e=this.re,t=this.im;if(this.isZero())return fe.INFINITY;const r=e*e+t*t;return r!==0?new fe(e/r,-t/r).acosh():new fe(e!==0?e/0:0,t!==0?-t/0:0).acosh()},inverse:function(){if(this.isZero())return fe.INFINITY;if(this.isInfinite())return fe.ZERO;const e=this.re,t=this.im,r=e*e+t*t;return new fe(e/r,-t/r)},conjugate:function(){return new fe(this.re,-this.im)},neg:function(){return new fe(-this.re,-this.im)},ceil:function(e){return e=Math.pow(10,e||0),new fe(Math.ceil(this.re*e)/e,Math.ceil(this.im*e)/e)},floor:function(e){return e=Math.pow(10,e||0),new fe(Math.floor(this.re*e)/e,Math.floor(this.im*e)/e)},round:function(e){return e=Math.pow(10,e||0),new fe(Math.round(this.re*e)/e,Math.round(this.im*e)/e)},equals:function(e,t){const r=ki(e,t);return Math.abs(r.re-this.re)<=fe.EPSILON&&Math.abs(r.im-this.im)<=fe.EPSILON},clone:function(){return new fe(this.re,this.im)},toString:function(){let e=this.re,t=this.im,r="";return this.isNaN()?"NaN":this.isInfinite()?"Infinity":(Math.abs(e)<fe.EPSILON&&(e=0),Math.abs(t)<fe.EPSILON&&(t=0),t===0?r+e:(e!==0?(r+=e,r+=" ",t<0?(t=-t,r+="-"):r+="+",r+=" "):t<0&&(t=-t,r+="-"),t!==1&&(r+=t),r+"i"))},toVector:function(){return[this.re,this.im]},valueOf:function(){return this.im===0?this.re:null},isNaN:function(){return isNaN(this.re)||isNaN(this.im)},isZero:function(){return this.im===0&&this.re===0},isFinite:function(){return isFinite(this.re)&&isFinite(this.im)},isInfinite:function(){return!this.isFinite()}};fe.ZERO=new fe(0,0);fe.ONE=new fe(1,0);fe.I=new fe(0,1);fe.PI=new fe(Math.PI,0);fe.E=new fe(Math.E,0);fe.INFINITY=new fe(1/0,1/0);fe.NAN=new fe(NaN,NaN);fe.EPSILON=1e-15;var x8="Complex",D8=[],N8=I(x8,D8,()=>(Object.defineProperty(fe,"name",{value:"Complex"}),fe.prototype.constructor=fe,fe.prototype.type="Complex",fe.prototype.isComplex=!0,fe.prototype.toJSON=function(){return{mathjs:"Complex",re:this.re,im:this.im}},fe.prototype.toPolar=function(){return{r:this.abs(),phi:this.arg()}},fe.prototype.format=function(e){var t="",r=this.im,n=this.re,a=Hi(this.re,e),i=Hi(this.im,e),o=Ze(e)?e:e?e.precision:null;if(o!==null){var s=Math.pow(10,-o);Math.abs(n/r)<s&&(n=0),Math.abs(r/n)<s&&(r=0)}return r===0?t=a:n===0?r===1?t="i":r===-1?t="-i":t=i+"i":r<0?r===-1?t=a+" - i":t=a+" - "+i.substring(1)+"i":r===1?t=a+" + i":t=a+" + "+i+"i",t},fe.fromPolar=function(e){switch(arguments.length){case 1:{var t=arguments[0];if(typeof t=="object")return fe(t);throw new TypeError("Input has to be an object with r and phi keys.")}case 2:{var r=arguments[0],n=arguments[1];if(Ze(r)){if(cn(n)&&n.hasBase("ANGLE")&&(n=n.toNumber("rad")),Ze(n))return new fe({r,phi:n});throw new TypeError("Phi is not a number nor an angle unit.")}else throw new TypeError("Radius r is not a number.")}default:throw new SyntaxError("Wrong number of arguments in function fromPolar")}},fe.prototype.valueOf=fe.prototype.toString,fe.fromJSON=function(e){return new fe(e)},fe.compare=function(e,t){return e.re>t.re?1:e.re<t.re?-1:e.im>t.im?1:e.im<t.im?-1:0},fe),{isClass:!0});typeof BigInt>"u"&&(BigInt=function(e){if(isNaN(e))throw new Error("");return e});const _e=BigInt(0),st=BigInt(1),gr=BigInt(2),Fs=BigInt(3),Oo=BigInt(5),Xr=BigInt(10);BigInt(Number.MAX_SAFE_INTEGER);const A8=2e3,Te={s:st,n:_e,d:st};function wa(e,t){try{e=BigInt(e)}catch{throw Ja()}return e*t}function jn(e){return typeof e=="bigint"?e:Math.floor(e)}function Lt(e,t){if(t===_e)throw gd();const r=Object.create(An.prototype);r.s=e<_e?-st:st,e=e<_e?-e:e;const n=$i(e,t);return r.n=e/n,r.d=t/n,r}const C8=[gr*gr,gr,gr*gr,gr,gr*gr,gr*Fs,gr,gr*Fs];function Do(e){const t=Object.create(null);if(e<=st)return t[e]=st,t;const r=n=>{t[n]=(t[n]||_e)+st};for(;e%gr===_e;)r(gr),e/=gr;for(;e%Fs===_e;)r(Fs),e/=Fs;for(;e%Oo===_e;)r(Oo),e/=Oo;for(let n=0,a=gr+Oo;a*a<=e;){for(;e%a===_e;)r(a),e/=a;a+=C8[n],n=n+1&7}return e>st&&r(e),t}const pr=function(e,t){let r=_e,n=st,a=st;if(e!=null)if(t!==void 0){if(typeof e=="bigint")r=e;else{if(isNaN(e))throw Ja();if(e%1!==0)throw Qg();r=BigInt(e)}if(typeof t=="bigint")n=t;else{if(isNaN(t))throw Ja();if(t%1!==0)throw Qg();n=BigInt(t)}a=r*n}else if(typeof e=="object"){if("d"in e&&"n"in e)r=BigInt(e.n),n=BigInt(e.d),"s"in e&&(r*=BigInt(e.s));else if(0 in e)r=BigInt(e[0]),1 in e&&(n=BigInt(e[1]));else if(typeof e=="bigint")r=e;else throw Ja();a=r*n}else if(typeof e=="number"){if(isNaN(e))throw Ja();if(e<0&&(a=-st,e=-e),e%1===0)r=BigInt(e);else{let i=1,o=0,s=1,u=1,l=1,c=1e7;for(e>=1&&(i=10**Math.floor(1+Math.log10(e)),e/=i);s<=c&&l<=c;){let f=(o+u)/(s+l);if(e===f){s+l<=c?(r=o+u,n=s+l):l>s?(r=u,n=l):(r=o,n=s);break}else e>f?(o+=u,s+=l):(u+=o,l+=s),s>c?(r=u,n=l):(r=o,n=s)}r=BigInt(r)*BigInt(i),n=BigInt(n)}}else if(typeof e=="string"){let i=0,o=_e,s=_e,u=_e,l=st,c=st,f=e.replace(/_/g,"").match(/\d+|./g);if(f===null)throw Ja();if(f[i]==="-"?(a=-st,i++):f[i]==="+"&&i++,f.length===i+1?s=wa(f[i++],a):f[i+1]==="."||f[i]==="."?(f[i]!=="."&&(o=wa(f[i++],a)),i++,(i+1===f.length||f[i+1]==="("&&f[i+3]===")"||f[i+1]==="'"&&f[i+3]==="'")&&(s=wa(f[i],a),l=Xr**BigInt(f[i].length),i++),(f[i]==="("&&f[i+2]===")"||f[i]==="'"&&f[i+2]==="'")&&(u=wa(f[i+1],a),c=Xr**BigInt(f[i+1].length)-st,i+=3)):f[i+1]==="/"||f[i+1]===":"?(s=wa(f[i],a),l=wa(f[i+2],st),i+=3):f[i+3]==="/"&&f[i+1]===" "&&(o=wa(f[i],a),s=wa(f[i+2],a),l=wa(f[i+4],st),i+=5),f.length<=i)n=l*c,a=r=u+n*o+c*s;else throw Ja()}else if(typeof e=="bigint")r=e,a=e,n=st;else throw Ja();if(n===_e)throw gd();Te.s=a<_e?-st:st,Te.n=r<_e?-r:r,Te.d=n<_e?-n:n};function E8(e,t,r){let n=st;for(;t>_e;e=e*e%r,t>>=st)t&st&&(n=n*e%r);return n}function S8(e,t){for(;t%gr===_e;t/=gr);for(;t%Oo===_e;t/=Oo);if(t===st)return _e;let r=Xr%t,n=1;for(;r!==st;n++)if(r=r*Xr%t,n>A8)return _e;return BigInt(n)}function T8(e,t,r){let n=st,a=E8(Xr,r,t);for(let i=0;i<300;i++){if(n===a)return BigInt(i);n=n*Xr%t,a=a*Xr%t}return 0}function $i(e,t){if(!e)return t;if(!t)return e;for(;;){if(e%=t,!e)return t;if(t%=e,!t)return e}}function An(e,t){if(pr(e,t),this instanceof An)e=$i(Te.d,Te.n),this.s=Te.s,this.n=Te.n/e,this.d=Te.d/e;else return Lt(Te.s*Te.n,Te.d)}const gd=function(){return new Error("Division by Zero")},Ja=function(){return new Error("Invalid argument")},Qg=function(){return new Error("Parameters must be integer")};An.prototype={s:st,n:_e,d:st,abs:function(){return Lt(this.n,this.d)},neg:function(){return Lt(-this.s*this.n,this.d)},add:function(e,t){return pr(e,t),Lt(this.s*this.n*Te.d+Te.s*this.d*Te.n,this.d*Te.d)},sub:function(e,t){return pr(e,t),Lt(this.s*this.n*Te.d-Te.s*this.d*Te.n,this.d*Te.d)},mul:function(e,t){return pr(e,t),Lt(this.s*Te.s*this.n*Te.n,this.d*Te.d)},div:function(e,t){return pr(e,t),Lt(this.s*Te.s*this.n*Te.d,this.d*Te.n)},clone:function(){return Lt(this.s*this.n,this.d)},mod:function(e,t){if(e===void 0)return Lt(this.s*this.n%this.d,st);if(pr(e,t),_e===Te.n*this.d)throw gd();return Lt(this.s*(Te.d*this.n)%(Te.n*this.d),Te.d*this.d)},gcd:function(e,t){return pr(e,t),Lt($i(Te.n,this.n)*$i(Te.d,this.d),Te.d*this.d)},lcm:function(e,t){return pr(e,t),Te.n===_e&&this.n===_e?Lt(_e,st):Lt(Te.n*this.n,$i(Te.n,this.n)*$i(Te.d,this.d))},inverse:function(){return Lt(this.s*this.d,this.n)},pow:function(e,t){if(pr(e,t),Te.d===st)return Te.s<_e?Lt((this.s*this.d)**Te.n,this.n**Te.n):Lt((this.s*this.n)**Te.n,this.d**Te.n);if(this.s<_e)return null;let r=Do(this.n),n=Do(this.d),a=st,i=st;for(let o in r)if(o!=="1"){if(o==="0"){a=_e;break}if(r[o]*=Te.n,r[o]%Te.d===_e)r[o]/=Te.d;else return null;a*=BigInt(o)**r[o]}for(let o in n)if(o!=="1"){if(n[o]*=Te.n,n[o]%Te.d===_e)n[o]/=Te.d;else return null;i*=BigInt(o)**n[o]}return Te.s<_e?Lt(i,a):Lt(a,i)},log:function(e,t){if(pr(e,t),this.s<=_e||Te.s<=_e)return null;const r=Object.create(null),n=Do(Te.n),a=Do(Te.d),i=Do(this.n),o=Do(this.d);for(const l in a)n[l]=(n[l]||_e)-a[l];for(const l in o)i[l]=(i[l]||_e)-o[l];for(const l in n)l!=="1"&&(r[l]=!0);for(const l in i)l!=="1"&&(r[l]=!0);let s=null,u=null;for(const l in r){const c=n[l]||_e,f=i[l]||_e;if(c===_e){if(f!==_e)return null;continue}let m=f,d=c;const p=$i(m,d);if(m/=p,d/=p,s===null&&u===null)s=m,u=d;else if(m*u!==s*d)return null}return s!==null&&u!==null?Lt(s,u):null},equals:function(e,t){return pr(e,t),this.s*this.n*Te.d===Te.s*Te.n*this.d},lt:function(e,t){return pr(e,t),this.s*this.n*Te.d<Te.s*Te.n*this.d},lte:function(e,t){return pr(e,t),this.s*this.n*Te.d<=Te.s*Te.n*this.d},gt:function(e,t){return pr(e,t),this.s*this.n*Te.d>Te.s*Te.n*this.d},gte:function(e,t){return pr(e,t),this.s*this.n*Te.d>=Te.s*Te.n*this.d},compare:function(e,t){pr(e,t);let r=this.s*this.n*Te.d-Te.s*Te.n*this.d;return(_e<r)-(r<_e)},ceil:function(e){return e=Xr**BigInt(e||0),Lt(jn(this.s*e*this.n/this.d)+(e*this.n%this.d>_e&&this.s>=_e?st:_e),e)},floor:function(e){return e=Xr**BigInt(e||0),Lt(jn(this.s*e*this.n/this.d)-(e*this.n%this.d>_e&&this.s<_e?st:_e),e)},round:function(e){return e=Xr**BigInt(e||0),Lt(jn(this.s*e*this.n/this.d)+this.s*((this.s>=_e?st:_e)+gr*(e*this.n%this.d)>this.d?st:_e),e)},roundTo:function(e,t){pr(e,t);const r=this.n*Te.d,n=this.d*Te.n,a=r%n;let i=jn(r/n);return a+a>=n&&i++,Lt(this.s*i*Te.n,Te.d)},divisible:function(e,t){return pr(e,t),Te.n===_e?!1:this.n*Te.d%(Te.n*this.d)===_e},valueOf:function(){return Number(this.s*this.n)/Number(this.d)},toString:function(e=15){let t=this.n,r=this.d,n=S8(t,r),a=T8(t,r,n),i=this.s<_e?"-":"";if(i+=jn(t/r),t%=r,t*=Xr,t&&(i+="."),n){for(let o=a;o--;)i+=jn(t/r),t%=r,t*=Xr;i+="(";for(let o=n;o--;)i+=jn(t/r),t%=r,t*=Xr;i+=")"}else for(let o=e;t&&o--;)i+=jn(t/r),t%=r,t*=Xr;return i},toFraction:function(e=!1){let t=this.n,r=this.d,n=this.s<_e?"-":"";if(r===st)n+=t;else{const a=jn(t/r);e&&a>_e&&(n+=a,n+=" ",t%=r),n+=t,n+="/",n+=r}return n},toLatex:function(e=!1){let t=this.n,r=this.d,n=this.s<_e?"-":"";if(r===st)n+=t;else{const a=jn(t/r);e&&a>_e&&(n+=a,t%=r),n+="\\frac{",n+=t,n+="}{",n+=r,n+="}"}return n},toContinued:function(){let e=this.n,t=this.d;const r=[];for(;t;){r.push(jn(e/t));const n=e%t;e=t,t=n}return r},simplify:function(e=.001){const t=BigInt(Math.ceil(1/e)),r=this.abs(),n=r.toContinued();for(let a=1;a<n.length;a++){let i=Lt(n[a-1],st);for(let s=a-2;s>=0;s--)i=i.inverse().add(n[s]);let o=i.sub(r);if(o.n*t<o.d)return i.mul(this.s)}return this}};var M8="Fraction",F8=[],P8=I(M8,F8,()=>(Object.defineProperty(An,"name",{value:"Fraction"}),An.prototype.constructor=An,An.prototype.type="Fraction",An.prototype.isFraction=!0,An.prototype.toJSON=function(){return{mathjs:"Fraction",n:String(this.s*this.n),d:String(this.d)}},An.fromJSON=function(e){return new An(e)},An),{isClass:!0}),k8="Range",O8=[],$8=I(k8,O8,()=>{function e(t,r,n){if(!(this instanceof e))throw new SyntaxError("Constructor must be called with the new operator");var a=t!=null,i=r!=null,o=n!=null;if(a){if(Qe(t))t=t.toNumber();else if(typeof t!="number"&&!Ms(t))throw new TypeError("Parameter start must be a number or bigint")}if(i){if(Qe(r))r=r.toNumber();else if(typeof r!="number"&&!Ms(r))throw new TypeError("Parameter end must be a number or bigint")}if(o){if(Qe(n))n=n.toNumber();else if(typeof n!="number"&&!Ms(n))throw new TypeError("Parameter step must be a number or bigint")}this.start=a?parseFloat(t):0,this.end=i?parseFloat(r):0,this.step=o?parseFloat(n):1}return e.prototype.type="Range",e.prototype.isRange=!0,e.parse=function(t){if(typeof t!="string")return null;var r=t.split(":"),n=r.map(function(i){return parseFloat(i)}),a=n.some(function(i){return isNaN(i)});if(a)return null;switch(n.length){case 2:return new e(n[0],n[1]);case 3:return new e(n[0],n[2],n[1]);default:return null}},e.prototype.clone=function(){return new e(this.start,this.end,this.step)},e.prototype.size=function(){var t=0,r=this.start,n=this.step,a=this.end,i=a-r;return ti(n)===ti(i)?t=Math.ceil(i/n):i===0&&(t=0),isNaN(t)&&(t=0),[t]},e.prototype.min=function(){var t=this.size()[0];if(t>0)return this.step>0?this.start:this.start+(t-1)*this.step},e.prototype.max=function(){var t=this.size()[0];if(t>0)return this.step>0?this.start+(t-1)*this.step:this.start},e.prototype.forEach=function(t){var r=this.start,n=this.step,a=this.end,i=0;if(n>0)for(;r<a;)t(r,[i],this),r+=n,i++;else if(n<0)for(;r>a;)t(r,[i],this),r+=n,i++},e.prototype.map=function(t){var r=[];return this.forEach(function(n,a,i){r[a[0]]=t(n,a,i)}),r},e.prototype.toArray=function(){var t=[];return this.forEach(function(r,n){t[n[0]]=r}),t},e.prototype.valueOf=function(){return this.toArray()},e.prototype.format=function(t){var r=Hi(this.start,t);return this.step!==1&&(r+=":"+Hi(this.step,t)),r+=":"+Hi(this.end,t),r},e.prototype.toString=function(){return this.format()},e.prototype.toJSON=function(){return{mathjs:"Range",start:this.start,end:this.end,step:this.step}},e.fromJSON=function(t){return new e(t.start,t.end,t.step)},e},{isClass:!0}),B8="Matrix",_8=[],I8=I(B8,_8,()=>{function e(){if(!(this instanceof e))throw new SyntaxError("Constructor must be called with the new operator")}return e.prototype.type="Matrix",e.prototype.isMatrix=!0,e.prototype.storage=function(){throw new Error("Cannot invoke storage on a Matrix interface")},e.prototype.datatype=function(){throw new Error("Cannot invoke datatype on a Matrix interface")},e.prototype.create=function(t,r){throw new Error("Cannot invoke create on a Matrix interface")},e.prototype.subset=function(t,r,n){throw new Error("Cannot invoke subset on a Matrix interface")},e.prototype.get=function(t){throw new Error("Cannot invoke get on a Matrix interface")},e.prototype.set=function(t,r,n){throw new Error("Cannot invoke set on a Matrix interface")},e.prototype.resize=function(t,r){throw new Error("Cannot invoke resize on a Matrix interface")},e.prototype.reshape=function(t,r){throw new Error("Cannot invoke reshape on a Matrix interface")},e.prototype.clone=function(){throw new Error("Cannot invoke clone on a Matrix interface")},e.prototype.size=function(){throw new Error("Cannot invoke size on a Matrix interface")},e.prototype.map=function(t,r){throw new Error("Cannot invoke map on a Matrix interface")},e.prototype.forEach=function(t){throw new Error("Cannot invoke forEach on a Matrix interface")},e.prototype[Symbol.iterator]=function(){throw new Error("Cannot iterate a Matrix interface")},e.prototype.toArray=function(){throw new Error("Cannot invoke toArray on a Matrix interface")},e.prototype.valueOf=function(){throw new Error("Cannot invoke valueOf on a Matrix interface")},e.prototype.format=function(t){throw new Error("Cannot invoke format on a Matrix interface")},e.prototype.toString=function(){throw new Error("Cannot invoke toString on a Matrix interface")},e},{isClass:!0});function Tf(e,t,r){var n=e.constructor,a=new n(2),i="";if(r){if(r<1)throw new Error("size must be in greater than 0");if(!Oe(r))throw new Error("size must be an integer");if(e.greaterThan(a.pow(r-1).sub(1))||e.lessThan(a.pow(r-1).mul(-1)))throw new Error("Value must be in range [-2^".concat(r-1,", 2^").concat(r-1,"-1]"));if(!e.isInteger())throw new Error("Value must be an integer");e.lessThan(0)&&(e=e.add(a.pow(r))),i="i".concat(r)}switch(t){case 2:return"".concat(e.toBinary()).concat(i);case 8:return"".concat(e.toOctal()).concat(i);case 16:return"".concat(e.toHexadecimal()).concat(i);default:throw new Error("Base ".concat(t," not supported "))}}function z8(e,t){if(typeof t=="function")return t(e);if(!e.isFinite())return e.isNaN()?"NaN":e.gt(0)?"Infinity":"-Infinity";var{notation:r,precision:n,wordSize:a}=Xw(t);switch(r){case"fixed":return q8(e,n);case"exponential":return Xg(e,n);case"engineering":return j8(e,n);case"bin":return Tf(e,2,a);case"oct":return Tf(e,8,a);case"hex":return Tf(e,16,a);case"auto":{var i=e0(t?.lowerExp,-3),o=e0(t?.upperExp,5);if(e.isZero())return"0";var s,u=e.toSignificantDigits(n),l=u.e;return l>=i&&l<o?s=u.toFixed():s=Xg(e,n),s.replace(/((\.\d*?)(0+))($|e)/,function(){var c=arguments[2],f=arguments[4];return c!=="."?c+f:f})}default:throw new Error('Unknown notation "'+r+'". Choose "auto", "exponential", "fixed", "bin", "oct", or "hex.')}}function j8(e,t){var r=e.e,n=r%3===0?r:r<0?r-3-r%3:r-r%3,a=e.mul(Math.pow(10,-n)),i=a.toPrecision(t);if(i.includes("e")){var o=e.constructor;i=new o(i).toFixed()}return i+"e"+(r>=0?"+":"")+n.toString()}function Xg(e,t){return t!==void 0?e.toExponential(t-1):e.toExponential()}function q8(e,t){return e.toFixed(t)}function e0(e,t){return Ze(e)?e:Qe(e)?e.toNumber():t}function R8(e,t){var r=e.length-t.length,n=e.length;return e.substring(r,n)===t}function nt(e,t){var r=L8(e,t);return t&&typeof t=="object"&&"truncate"in t&&r.length>t.truncate?r.substring(0,t.truncate-3)+"...":r}function L8(e,t){if(typeof e=="number")return Hi(e,t);if(Qe(e))return z8(e,t);if(H8(e))return!t||t.fraction!=="decimal"?"".concat(e.s*e.n,"/").concat(e.d):e.toString();if(Array.isArray(e))return hx(e,t);if(Or(e))return $o(e);if(typeof e=="function")return e.syntax?String(e.syntax):"function";if(e&&typeof e=="object"){if(typeof e.format=="function")return e.format(t);if(e&&e.toString(t)!=={}.toString())return e.toString(t);var r=Object.keys(e).map(n=>$o(n)+": "+nt(e[n],t));return"{"+r.join(", ")+"}"}return String(e)}function $o(e){for(var t=String(e),r="",n=0;n<t.length;){var a=t.charAt(n);r+=a in t0?t0[a]:a,n++}return'"'+r+'"'}var t0={'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"};function Tn(e){var t=String(e);return t=t.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">"),t}function hx(e,t){if(Array.isArray(e)){for(var r="[",n=e.length,a=0;a<n;a++)a!==0&&(r+=", "),r+=hx(e[a],t);return r+="]",r}else return nt(e,t)}function H8(e){return e&&typeof e=="object"&&typeof e.s=="bigint"&&typeof e.n=="bigint"&&typeof e.d=="bigint"||!1}function Fm(e,t){if(!Or(e))throw new TypeError("Unexpected type of argument in function compareText (expected: string or Array or Matrix, actual: "+Tt(e)+", index: 0)");if(!Or(t))throw new TypeError("Unexpected type of argument in function compareText (expected: string or Array or Matrix, actual: "+Tt(t)+", index: 1)");return e===t?0:e>t?1:-1}function at(e,t,r){if(!(this instanceof at))throw new SyntaxError("Constructor must be called with the new operator");this.actual=e,this.expected=t,this.relation=r,this.message="Dimension mismatch ("+(Array.isArray(e)?"["+e.join(", ")+"]":e)+" "+(this.relation||"!=")+" "+(Array.isArray(t)?"["+t.join(", ")+"]":t)+")",this.stack=new Error().stack}at.prototype=new RangeError;at.prototype.constructor=RangeError;at.prototype.name="DimensionError";at.prototype.isDimensionError=!0;function Jn(e,t,r){if(!(this instanceof Jn))throw new SyntaxError("Constructor must be called with the new operator");this.index=e,arguments.length<3?(this.min=0,this.max=t):(this.min=t,this.max=r),this.min!==void 0&&this.index<this.min?this.message="Index out of range ("+this.index+" < "+this.min+")":this.max!==void 0&&this.index>=this.max?this.message="Index out of range ("+this.index+" > "+(this.max-1)+")":this.message="Index out of range ("+this.index+")",this.stack=new Error().stack}Jn.prototype=new RangeError;Jn.prototype.constructor=RangeError;Jn.prototype.name="IndexError";Jn.prototype.isIndexError=!0;function Ue(e){for(var t=[];Array.isArray(e);)t.push(e.length),e=e[0];return t}function px(e,t,r){var n,a=e.length;if(a!==t[r])throw new at(a,t[r]);if(r<t.length-1){var i=r+1;for(n=0;n<a;n++){var o=e[n];if(!Array.isArray(o))throw new at(t.length-1,t.length,"<");px(e[n],t,i)}}else for(n=0;n<a;n++)if(Array.isArray(e[n]))throw new at(t.length+1,t.length,">")}function r0(e,t){var r=t.length===0;if(r){if(Array.isArray(e))throw new at(e.length,0)}else px(e,t,0)}function Ll(e,t){var r=e.isMatrix?e._size:Ue(e),n=t._sourceSize;n.forEach((a,i)=>{if(a!==null&&a!==r[i])throw new at(a,r[i])})}function Ot(e,t){if(e!==void 0){if(!Ze(e)||!Oe(e))throw new TypeError("Index must be an integer (value: "+e+")");if(e<0||typeof t=="number"&&e>=t)throw new Jn(e,t)}}function Ho(e){for(var t=0;t<e._dimensions.length;++t){var r=e._dimensions[t];if(r._data&&Et(r._data)){if(r._size[0]===0)return!0}else if(r.isRange){if(r.start===r.end)return!0}else if(Or(r)&&r.length===0)return!0}return!1}function Go(e,t,r){if(!Array.isArray(t))throw new TypeError("Array expected");if(t.length===0)throw new Error("Resizing to scalar is not supported");t.forEach(function(a){if(!Ze(a)||!Oe(a)||a<0)throw new TypeError("Invalid size, must contain positive integers (size: "+nt(t)+")")}),(Ze(e)||Qe(e))&&(e=[e]);var n=r!==void 0?r:0;return Pm(e,t,0,n),e}function Pm(e,t,r,n){var a,i,o=e.length,s=t[r],u=Math.min(o,s);if(e.length=s,r<t.length-1){var l=r+1;for(a=0;a<u;a++)i=e[a],Array.isArray(i)||(i=[i],e[a]=i),Pm(i,t,l,n);for(a=u;a<s;a++)i=[],e[a]=i,Pm(i,t,l,n)}else{for(a=0;a<u;a++)for(;Array.isArray(e[a]);)e[a]=e[a][0];for(a=u;a<s;a++)e[a]=n}}function vd(e,t){var r=dt(e,!0),n=r.length;if(!Array.isArray(e)||!Array.isArray(t))throw new TypeError("Array expected");if(t.length===0)throw new at(0,n,"!=");t=yd(t,n);var a=gx(t);if(n!==a)throw new at(a,n,"!=");try{return G8(r,t)}catch(i){throw i instanceof at?new at(a,n,"!="):i}}function yd(e,t){var r=gx(e),n=e.slice(),a=-1,i=e.indexOf(a),o=e.indexOf(a,i+1)>=0;if(o)throw new Error("More than one wildcard in sizes");var s=i>=0,u=t%r===0;if(s)if(u)n[i]=-t/r;else throw new Error("Could not replace wildcard, since "+t+" is no multiple of "+-r);return n}function gx(e){return e.reduce((t,r)=>t*r,1)}function G8(e,t){for(var r=e,n,a=t.length-1;a>0;a--){var i=t[a];n=[];for(var o=r.length/i,s=0;s<o;s++)n.push(r.slice(s*i,(s+1)*i));r=n}return r}function Hl(e,t){for(var r=Ue(e);Array.isArray(e)&&e.length===1;)e=e[0],r.shift();for(var n=r.length;r[n-1]===1;)n--;return n<r.length&&(e=vx(e,n,0),r.length=n),e}function vx(e,t,r){var n,a;if(r<t){var i=r+1;for(n=0,a=e.length;n<a;n++)e[n]=vx(e[n],t,i)}else for(;Array.isArray(e);)e=e[0];return e}function yx(e,t,r,n){var a=n||Ue(e);if(r)for(var i=0;i<r;i++)e=[e],a.unshift(1);for(e=bx(e,t,0);a.length<t;)a.push(1);return e}function bx(e,t,r){var n,a;if(Array.isArray(e)){var i=r+1;for(n=0,a=e.length;n<a;n++)e[n]=bx(e[n],t,i)}else for(var o=r;o<t;o++)e=[e];return e}function dt(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!Array.isArray(e))return e;if(typeof t!="boolean")throw new TypeError("Boolean expected for second argument of flatten");var r=[];return t?a(e):n(e),r;function n(i){for(var o=0;o<i.length;o++){var s=i[o];Array.isArray(s)?n(s):r.push(s)}}function a(i){if(Array.isArray(i[0]))for(var o=0;o<i.length;o++)a(i[o]);else for(var s=0;s<i.length;s++)r.push(i[s])}}function ii(e,t){return Array.prototype.map.call(e,t)}function wx(e,t){Array.prototype.forEach.call(e,t)}function n0(e,t){if(Ue(e).length!==1)throw new Error("Only one dimensional matrices supported");return Array.prototype.filter.call(e,t)}function a0(e,t){if(Ue(e).length!==1)throw new Error("Only one dimensional matrices supported");return Array.prototype.filter.call(e,r=>t.test(r))}function i0(e,t){return Array.prototype.join.call(e,t)}function Vo(e){if(!Array.isArray(e))throw new TypeError("Array input expected");if(e.length===0)return e;var t=[],r=0;t[0]={value:e[0],identifier:0};for(var n=1;n<e.length;n++)e[n]===e[n-1]?r++:r=0,t.push({value:e[n],identifier:r});return t}function Gl(e){if(!Array.isArray(e))throw new TypeError("Array input expected");if(e.length===0)return e;for(var t=[],r=0;r<e.length;r++)t.push(e[r].value);return t}function wc(e,t){for(var r,n=0,a=0;a<e.length;a++){var i=e[a],o=Array.isArray(i);if(a===0&&o&&(n=i.length),o&&i.length!==n)return;var s=o?wc(i,t):t(i);if(r===void 0)r=s;else if(r!==s)return"mixed"}return r}function xx(e,t,r,n){if(n<r){if(e.length!==t.length)throw new at(e.length,t.length);for(var a=[],i=0;i<e.length;i++)a[i]=xx(e[i],t[i],r,n+1);return a}else return e.concat(t)}function Dx(){var e=Array.prototype.slice.call(arguments,0,-1),t=Array.prototype.slice.call(arguments,-1);if(e.length===1)return e[0];if(e.length>1)return e.slice(1).reduce(function(r,n){return xx(r,n,t,0)},e[0]);throw new Error("Wrong number of arguments in function concat")}function bd(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];for(var n=t.map(m=>m.length),a=Math.max(...n),i=new Array(a).fill(null),o=0;o<t.length;o++)for(var s=t[o],u=n[o],l=0;l<u;l++){var c=a-u+l;s[l]>i[c]&&(i[c]=s[l])}for(var f=0;f<t.length;f++)Nx(t[f],i);return i}function Nx(e,t){for(var r=t.length,n=e.length,a=0;a<n;a++){var i=r-n+a;if(e[a]<t[i]&&e[a]>1||e[a]>t[i])throw new Error("shape mismatch: mismatch is found in arg with shape (".concat(e,") not possible to broadcast dimension ").concat(n," with size ").concat(e[a]," to size ").concat(t[i]))}}function Ri(e,t){var r=Ue(e);if(za(r,t))return e;Nx(r,t);var n=bd(r,t),a=n.length,i=[...Array(a-r.length).fill(1),...r],o=U8(e);r.length<a&&(o=vd(o,i),r=Ue(o));for(var s=0;s<a;s++)r[s]<n[s]&&(o=V8(o,n[s],s),r=Ue(o));return o}function V8(e,t,r){return Dx(...Array(t).fill(e),r)}function wd(e,t){if(!Array.isArray(e))throw new Error("Array expected");var r=Ue(e);if(t.length!==r.length)throw new at(t.length,r.length);for(var n=0;n<t.length;n++)Ot(t[n],r[n]);return t.reduce((a,i)=>a[i],e)}function km(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(e.length===0)return[];if(r)return i(e);var n=[];return a(e,0);function a(o,s){if(Array.isArray(o)){for(var u=o.length,l=Array(u),c=0;c<u;c++)n[s]=c,l[c]=a(o[c],s+1);return l}else return t(o,n.slice(0,s),e)}function i(o){if(Array.isArray(o)){for(var s=o.length,u=Array(s),l=0;l<s;l++)u[l]=i(o[l]);return u}else return t(o)}}function Ax(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(e.length===0)return;if(r){i(e);return}var n=[];a(e,0);function a(o,s){if(Array.isArray(o))for(var u=o.length,l=0;l<u;l++)n[s]=l,a(o[l],s+1);else t(o,n.slice(0,s),e)}function i(o){if(Array.isArray(o))for(var s=o.length,u=0;u<s;u++)i(o[u]);else t(o)}}function U8(e){return or([],e)}function Ki(e,t,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(zl.isTypedFunction(e)){var a;if(n)a=1;else{var i=(t.isMatrix?t.size():Ue(t)).map(()=>0),o=t.isMatrix?t.get(i):wd(t,i);a=K8(e,o,i,t)}var s;if(t.isMatrix&&t.dataType!=="mixed"&&t.dataType!==void 0){var u=W8(e,a);s=u!==void 0?u:e}else s=e;return a>=1&&a<=3?{isUnary:a===1,fn:function(){for(var c=arguments.length,f=new Array(c),m=0;m<c;m++)f[m]=arguments[m];return o0(s,f.slice(0,a),r,e.name)}}:{isUnary:!1,fn:function(){for(var c=arguments.length,f=new Array(c),m=0;m<c;m++)f[m]=arguments[m];return o0(s,f,r,e.name)}}}return n===void 0?{isUnary:J8(e),fn:e}:{isUnary:n,fn:e}}function W8(e,t){var r=[];if(Object.entries(e.signatures).forEach(n=>{var[a,i]=n;a.split(",").length===t&&r.push(i)}),r.length===1)return r[0]}function J8(e){if(e.length!==1)return!1;var t=e.toString();if(/arguments/.test(t))return!1;var r=t.match(/\(.*?\)/);return!/\.\.\./.test(r)}function K8(e,t,r,n){for(var a=[t,r,n],i=3;i>0;i--){var o=a.slice(0,i);if(zl.resolve(e,o)!==null)return i}}function o0(e,t,r,n){try{return e(...t)}catch(a){Y8(a,t,r,n)}}function Y8(e,t,r,n){var a;if(e instanceof TypeError&&((a=e.data)===null||a===void 0?void 0:a.category)==="wrongType"){var i=[];throw i.push("value: ".concat(Tt(t[0]))),t.length>=2&&i.push("index: ".concat(Tt(t[1]))),t.length>=3&&i.push("array: ".concat(Tt(t[2]))),new TypeError("Function ".concat(r," cannot apply callback arguments ")+"".concat(n,"(").concat(i.join(", "),") at index ").concat(JSON.stringify(t[1])))}else throw new TypeError("Function ".concat(r," cannot apply callback arguments ")+"to function ".concat(n,": ").concat(e.message))}var Z8="DenseMatrix",Q8=["Matrix"],X8=I(Z8,Q8,e=>{var{Matrix:t}=e;function r(c,f){if(!(this instanceof r))throw new SyntaxError("Constructor must be called with the new operator");if(f&&!Or(f))throw new Error("Invalid datatype: "+f);if(Re(c))c.type==="DenseMatrix"?(this._data=We(c._data),this._size=We(c._size),this._datatype=f||c._datatype):(this._data=c.toArray(),this._size=c.size(),this._datatype=f||c._datatype);else if(c&&Et(c.data)&&Et(c.size))this._data=c.data,this._size=c.size,r0(this._data,this._size),this._datatype=f||c.datatype;else if(Et(c))this._data=l(c),this._size=Ue(this._data),r0(this._data,this._size),this._datatype=f;else{if(c)throw new TypeError("Unsupported type of data ("+Tt(c)+")");this._data=[],this._size=[0],this._datatype=f}}r.prototype=new t,r.prototype.createDenseMatrix=function(c,f){return new r(c,f)},Object.defineProperty(r,"name",{value:"DenseMatrix"}),r.prototype.constructor=r,r.prototype.type="DenseMatrix",r.prototype.isDenseMatrix=!0,r.prototype.getDataType=function(){return wc(this._data,Tt)},r.prototype.storage=function(){return"dense"},r.prototype.datatype=function(){return this._datatype},r.prototype.create=function(c,f){return new r(c,f)},r.prototype.subset=function(c,f,m){switch(arguments.length){case 1:return n(this,c);case 2:case 3:return i(this,c,f,m);default:throw new SyntaxError("Wrong number of arguments")}},r.prototype.get=function(c){return wd(this._data,c)},r.prototype.set=function(c,f,m){if(!Et(c))throw new TypeError("Array expected");if(c.length<this._size.length)throw new at(c.length,this._size.length,"<");var d,p,h,g=c.map(function(D){return D+1});u(this,g,m);var b=this._data;for(d=0,p=c.length-1;d<p;d++)h=c[d],Ot(h,b.length),b=b[h];return h=c[c.length-1],Ot(h,b.length),b[h]=f,this};function n(c,f){if(!dc(f))throw new TypeError("Invalid index");var m=f.isScalar();if(m)return c.get(f.min());var d=f.size();if(d.length!==c._size.length)throw new at(d.length,c._size.length);for(var p=f.min(),h=f.max(),g=0,b=c._size.length;g<b;g++)Ot(p[g],c._size[g]),Ot(h[g],c._size[g]);var D=new r([]),y=a(c._data,f);return D._size=y.size,D._datatype=c._datatype,D._data=y.data,D}function a(c,f){var m=f.size().length-1,d=Array(m);return{data:p(c),size:d};function p(h){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,b=f.dimension(g);return d[g]=b.size()[0],g<m?b.map(D=>(Ot(D,h.length),p(h[D],g+1))).valueOf():b.map(D=>(Ot(D,h.length),h[D])).valueOf()}}function i(c,f,m,d){if(!f||f.isIndex!==!0)throw new TypeError("Invalid index");var p=f.size(),h=f.isScalar(),g;if(Re(m)?(g=m.size(),m=m.valueOf()):g=Ue(m),h){if(g.length!==0)throw new TypeError("Scalar expected");c.set(f.min(),m,d)}else{if(!za(g,p))try{g.length===0?m=Ri([m],p):m=Ri(m,p),g=Ue(m)}catch{}if(p.length<c._size.length)throw new at(p.length,c._size.length,"<");if(g.length<p.length){for(var b=0,D=0;p[b]===1&&g[b]===1;)b++;for(;p[b]===1;)D++,b++;m=yx(m,p.length,D,g)}if(!za(p,g))throw new at(p,g,">");var y=f.max().map(function(w){return w+1});u(c,y,d),o(c._data,f,m)}return c}function o(c,f,m){var d=f.size().length-1;p(c,m);function p(h,g){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,D=f.dimension(b);b<d?D.forEach((y,w)=>{Ot(y,h.length),p(h[y],g[w[0]],b+1)}):D.forEach((y,w)=>{Ot(y,h.length),h[y]=g[w[0]]})}}r.prototype.resize=function(c,f,m){if(!Fn(c))throw new TypeError("Array or Matrix expected");var d=c.valueOf().map(h=>Array.isArray(h)&&h.length===1?h[0]:h),p=m?this.clone():this;return s(p,d,f)};function s(c,f,m){if(f.length===0){for(var d=c._data;Et(d);)d=d[0];return d}return c._size=f.slice(0),c._data=Go(c._data,c._size,m),c}r.prototype.reshape=function(c,f){var m=f?this.clone():this;m._data=vd(m._data,c);var d=m._size.reduce((p,h)=>p*h);return m._size=yd(c,d),m};function u(c,f,m){for(var d=c._size.slice(0),p=!1;d.length<f.length;)d.push(0),p=!0;for(var h=0,g=f.length;h<g;h++)f[h]>d[h]&&(d[h]=f[h],p=!0);p&&s(c,d,m)}r.prototype.clone=function(){var c=new r({data:We(this._data),size:We(this._size),datatype:this._datatype});return c},r.prototype.size=function(){return this._size.slice(0)},r.prototype.map=function(c){var f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,m=this,d=m._size.length-1;if(d<0)return m.clone();var p=Ki(c,m,"map",f),h=p.fn,g=m.create(void 0,m._datatype);if(g._size=m._size,f||p.isUnary)return g._data=v(m._data),g;if(d===0){for(var b=m.valueOf(),D=Array(b.length),y=0;y<b.length;y++)D[y]=h(b[y],[y],m);return g._data=D,g}var w=[];return g._data=x(m._data),g;function x(N){var C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,A=Array(N.length);if(C<d)for(var E=0;E<N.length;E++)w[C]=E,A[E]=x(N[E],C+1);else for(var S=0;S<N.length;S++)w[C]=S,A[S]=h(N[S],w.slice(),m);return A}function v(N){var C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,A=Array(N.length);if(C<d)for(var E=0;E<N.length;E++)A[E]=v(N[E],C+1);else for(var S=0;S<N.length;S++)A[S]=h(N[S]);return A}},r.prototype.forEach=function(c){var f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,m=this,d=m._size.length-1;if(d<0)return;var p=Ki(c,m,"map",f),h=p.fn;if(f||p.isUnary){y(m._data);return}if(d===0){for(var g=0;g<m._data.length;g++)h(m._data[g],[g],m);return}var b=[];D(m._data);function D(w){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(x<d)for(var v=0;v<w.length;v++)b[x]=v,D(w[v],x+1);else for(var N=0;N<w.length;N++)b[x]=N,h(w[N],b.slice(),m)}function y(w){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(x<d)for(var v=0;v<w.length;v++)y(w[v],x+1);else for(var N=0;N<w.length;N++)h(w[N])}},r.prototype[Symbol.iterator]=function*(){var c=this._size.length-1;if(!(c<0)){if(c===0){for(var f=0;f<this._data.length;f++)yield{value:this._data[f],index:[f]};return}for(var m=Array(c+1).fill(0),d=this._size.reduce((D,y)=>D*y,1),p=0;p<d;p++){for(var h=this._data,g=0;g<c;g++)h=h[m[g]];yield{value:h[m[c]],index:m.slice()};for(var b=c;b>=0&&(m[b]++,!(m[b]<this._size[b]));b--)m[b]=0}}},r.prototype.rows=function(){var c=[],f=this.size();if(f.length!==2)throw new TypeError("Rows can only be returned for a 2D matrix.");var m=this._data;for(var d of m)c.push(new r([d],this._datatype));return c},r.prototype.columns=function(){var c=this,f=[],m=this.size();if(m.length!==2)throw new TypeError("Rows can only be returned for a 2D matrix.");for(var d=this._data,p=function(b){var D=d.map(y=>[y[b]]);f.push(new r(D,c._datatype))},h=0;h<m[1];h++)p(h);return f},r.prototype.toArray=function(){return We(this._data)},r.prototype.valueOf=function(){return this._data},r.prototype.format=function(c){return nt(this._data,c)},r.prototype.toString=function(){return nt(this._data)},r.prototype.toJSON=function(){return{mathjs:"DenseMatrix",data:this._data,size:this._size,datatype:this._datatype}},r.prototype.diagonal=function(c){if(c){if(Qe(c)&&(c=c.toNumber()),!Ze(c)||!Oe(c))throw new TypeError("The parameter k must be an integer number")}else c=0;for(var f=c>0?c:0,m=c<0?-c:0,d=this._size[0],p=this._size[1],h=Math.min(d-m,p-f),g=[],b=0;b<h;b++)g[b]=this._data[b+m][b+f];return new r({data:g,size:[h],datatype:this._datatype})},r.diagonal=function(c,f,m,d){if(!Et(c))throw new TypeError("Array expected, size parameter");if(c.length!==2)throw new Error("Only two dimensions matrix are supported");if(c=c.map(function(N){if(Qe(N)&&(N=N.toNumber()),!Ze(N)||!Oe(N)||N<1)throw new Error("Size values must be positive integers");return N}),m){if(Qe(m)&&(m=m.toNumber()),!Ze(m)||!Oe(m))throw new TypeError("The parameter k must be an integer number")}else m=0;var p=m>0?m:0,h=m<0?-m:0,g=c[0],b=c[1],D=Math.min(g-h,b-p),y;if(Et(f)){if(f.length!==D)throw new Error("Invalid value array length");y=function(C){return f[C]}}else if(Re(f)){var w=f.size();if(w.length!==1||w[0]!==D)throw new Error("Invalid matrix length");y=function(C){return f.get([C])}}else y=function(){return f};d||(d=Qe(y(0))?y(0).mul(0):0);var x=[];if(c.length>0){x=Go(x,c,d);for(var v=0;v<D;v++)x[v+h][v+p]=y(v)}return new r({data:x,size:[g,b]})},r.fromJSON=function(c){return new r(c)},r.prototype.swapRows=function(c,f){if(!Ze(c)||!Oe(c)||!Ze(f)||!Oe(f))throw new Error("Row index must be positive integers");if(this._size.length!==2)throw new Error("Only two dimensional matrix is supported");return Ot(c,this._size[0]),Ot(f,this._size[0]),r._swapRows(c,f,this._data),this},r._swapRows=function(c,f,m){var d=m[c];m[c]=m[f],m[f]=d};function l(c){return Re(c)?l(c.valueOf()):Et(c)?c.map(l):c}return r},{isClass:!0}),s0="clone",eI=["typed"],tI=I(s0,eI,e=>{var{typed:t}=e;return t(s0,{any:We})});function Cx(e){var t=e.length,r=e[0].length,n,a,i=[];for(a=0;a<r;a++){var o=[];for(n=0;n<t;n++)o.push(e[n][a]);i.push(o)}return i}function Qo(e){for(var t=0;t<e.length;t++)if(Fn(e[t]))return!0;return!1}function mi(e,t){Re(e)?e.forEach(r=>t(r),!1,!0):Ax(e,t,!0)}function Xe(e,t,r){if(!r)return Re(e)?e.map(a=>t(a),!1,!0):km(e,t,!0);var n=a=>a===0?a:t(a);return Re(e)?e.map(a=>n(a),!1,!0):km(e,n,!0)}function xc(e,t,r){var n=Array.isArray(e)?Ue(e):e.size();if(t<0||t>=n.length)throw new Jn(t,n.length);return Re(e)?e.create(Vl(e.valueOf(),t,r),e.datatype()):Vl(e,t,r)}function Vl(e,t,r){var n,a,i,o;if(t<=0)if(Array.isArray(e[0])){for(o=Cx(e),a=[],n=0;n<o.length;n++)a[n]=Vl(o[n],t-1,r);return a}else{for(i=e[0],n=1;n<e.length;n++)i=r(i,e[n]);return i}else{for(a=[],n=0;n<e.length;n++)a[n]=Vl(e[n],t-1,r);return a}}function u0(e,t,r,n,a,i,o,s,u,l,c){var f=e._values,m=e._index,d=e._ptr,p,h,g,b;if(n)for(h=d[t],g=d[t+1],p=h;p<g;p++)b=m[p],r[b]!==i?(r[b]=i,o.push(b),n[b]=f[p]):(n[b]=s(n[b],f[p]),a[b]=i);else for(h=d[t],g=d[t+1],p=h;p<g;p++)b=m[p],r[b]!==i?(r[b]=i,o.push(b)):a[b]=i}var l0="isInteger",rI=["typed"],nI=I(l0,rI,e=>{var{typed:t}=e;return t(l0,{number:Oe,BigNumber:function(n){return n.isInt()},bigint:function(n){return!0},Fraction:function(n){return n.d===1n},"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r))})}),Kn="number",Xo="number, number";function Ex(e){return Math.abs(e)}Ex.signature=Kn;function Sx(e,t){return e+t}Sx.signature=Xo;function Tx(e,t){return e-t}Tx.signature=Xo;function Mx(e,t){return e*t}Mx.signature=Xo;function Fx(e){return-e}Fx.signature=Kn;function Px(e){return e}Px.signature=Kn;function Ns(e){return i9(e)}Ns.signature=Kn;function kx(e){return e*e*e}kx.signature=Kn;function Ox(e){return Math.exp(e)}Ox.signature=Kn;function $x(e){return o9(e)}$x.signature=Kn;function Bx(e,t){if(!Oe(e)||!Oe(t))throw new Error("Parameters in function lcm must be integer numbers");if(e===0||t===0)return 0;for(var r,n=e*t;t!==0;)r=t,t=e%r,e=r;return Math.abs(n/e)}Bx.signature=Xo;function c0(e,t){return t?Math.log(e)/Math.log(t):Math.log(e)}function Ul(e){return n9(e)}Ul.signature=Kn;function Om(e){return r9(e)}Om.signature=Kn;function f0(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2,r=t<0;if(r&&(t=-t),t===0)throw new Error("Root must be non-zero");if(e<0&&Math.abs(t)%2!==1)throw new Error("Root must be odd when a is negative.");if(e===0)return r?1/0:0;if(!isFinite(e))return r?0:e;var n=Math.pow(Math.abs(e),1/t);return n=e<0?-n:n,r?1/n:n}function $m(e){return ti(e)}$m.signature=Kn;function _x(e){return e*e}_x.signature=Kn;function Ix(e,t){var r,n,a,i=0,o=1,s=1,u=0;if(!Oe(e)||!Oe(t))throw new Error("Parameters in function xgcd must be integer numbers");for(;t;)n=Math.floor(e/t),a=e-n*t,r=i,i=o-n*i,o=r,r=s,s=u-n*s,u=r,e=t,t=a;var l;return e<0?l=[-e,-o,-u]:l=[e,e?o:0,u],l}Ix.signature=Xo;function zx(e,t){return e*e<1&&t===1/0||e*e>1&&t===-1/0?0:Math.pow(e,t)}zx.signature=Xo;function ws(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!Oe(t)||t<0||t>15)throw new Error("Number of decimals in function round must be an integer from 0 to 15 inclusive");return parseFloat(ex(e,t))}var aI="number",es="number, number";function jx(e,t){if(!Oe(e)||!Oe(t))throw new Error("Integers expected in function bitAnd");return e&t}jx.signature=es;function qx(e){if(!Oe(e))throw new Error("Integer expected in function bitNot");return~e}qx.signature=aI;function Rx(e,t){if(!Oe(e)||!Oe(t))throw new Error("Integers expected in function bitOr");return e|t}Rx.signature=es;function Lx(e,t){if(!Oe(e)||!Oe(t))throw new Error("Integers expected in function bitXor");return e^t}Lx.signature=es;function Hx(e,t){if(!Oe(e)||!Oe(t))throw new Error("Integers expected in function leftShift");return e<<t}Hx.signature=es;function Gx(e,t){if(!Oe(e)||!Oe(t))throw new Error("Integers expected in function rightArithShift");return e>>t}Gx.signature=es;function Vx(e,t){if(!Oe(e)||!Oe(t))throw new Error("Integers expected in function rightLogShift");return e>>>t}Vx.signature=es;function Pa(e,t){if(t<e)return 1;if(t===e)return t;var r=t+e>>1;return Pa(e,r)*Pa(r+1,t)}function Ux(e,t){if(!Oe(e)||e<0)throw new TypeError("Positive integer value expected in function combinations");if(!Oe(t)||t<0)throw new TypeError("Positive integer value expected in function combinations");if(t>e)throw new TypeError("k must be less than or equal to n");for(var r=e-t,n=1,a=t<r?r+1:t+1,i=2,o=t<r?t:r,s=a;s<=e;++s)for(n*=s;i<=o&&n%i===0;)n/=i,++i;return i<=o&&(n/=Pa(i,o)),n}Ux.signature="number, number";var iI=Math.PI,oI=2*Math.PI,sI=Math.E,uI=1.618033988749895,lI="number",xd="number, number";function Wx(e){return!e}Wx.signature=lI;function Bm(e,t){return!!(e||t)}Bm.signature=xd;function _m(e,t){return!!e!=!!t}_m.signature=xd;function Im(e,t){return!!(e&&t)}Im.signature=xd;function Wl(e){var t;if(Oe(e))return e<=0?isFinite(e)?1/0:NaN:e>171?1/0:Pa(1,e-1);if(e<.5)return Math.PI/(Math.sin(Math.PI*e)*Wl(1-e));if(e>=171.35)return 1/0;if(e>85){var r=e*e,n=r*e,a=n*e,i=a*e;return Math.sqrt(2*Math.PI/e)*Math.pow(e/Math.E,e)*(1+1/(12*e)+1/(288*r)-139/(51840*n)-571/(2488320*a)+163879/(209018880*i)+5246819/(75246796800*i*e))}--e,t=zo[0];for(var o=1;o<zo.length;++o)t+=zo[o]/(e+o);var s=e+Jx+.5;return Math.sqrt(2*Math.PI)*Math.pow(s,e+.5)*Math.exp(-s)*t}Wl.signature="number";var Jx=4.7421875,zo=[.9999999999999971,57.15623566586292,-59.59796035547549,14.136097974741746,-.4919138160976202,3399464998481189e-20,4652362892704858e-20,-9837447530487956e-20,.0001580887032249125,-.00021026444172410488,.00021743961811521265,-.0001643181065367639,8441822398385275e-20,-26190838401581408e-21,36899182659531625e-22],Kx=.9189385332046728,cI=5,fI=7,m0=[1.000000000190015,76.18009172947146,-86.50532032941678,24.01409824083091,-1.231739572450155,.001208650973866179,-5395239384953e-18];function Jl(e){if(e<0)return NaN;if(e===0)return 1/0;if(!isFinite(e))return e;if(e<.5)return Math.log(Math.PI/Math.sin(Math.PI*e))-Jl(1-e);e=e-1;for(var t=e+cI+.5,r=m0[0],n=fI-1;n>=1;n--)r+=m0[n]/(e+n);return Kx+(e+.5)*Math.log(t)-t+Math.log(r)}Jl.signature="number";var Ir="number";function Yx(e){return c9(e)}Yx.signature=Ir;function Zx(e){return Math.atan(1/e)}Zx.signature=Ir;function Qx(e){return isFinite(e)?(Math.log((e+1)/e)+Math.log(e/(e-1)))/2:0}Qx.signature=Ir;function Xx(e){return Math.asin(1/e)}Xx.signature=Ir;function e2(e){var t=1/e;return Math.log(t+Math.sqrt(t*t+1))}e2.signature=Ir;function t2(e){return Math.acos(1/e)}t2.signature=Ir;function r2(e){var t=1/e,r=Math.sqrt(t*t-1);return Math.log(r+t)}r2.signature=Ir;function n2(e){return f9(e)}n2.signature=Ir;function a2(e){return m9(e)}a2.signature=Ir;function i2(e){return 1/Math.tan(e)}i2.signature=Ir;function o2(e){var t=Math.exp(2*e);return(t+1)/(t-1)}o2.signature=Ir;function s2(e){return 1/Math.sin(e)}s2.signature=Ir;function u2(e){return e===0?Number.POSITIVE_INFINITY:Math.abs(2/(Math.exp(e)-Math.exp(-e)))*ti(e)}u2.signature=Ir;function l2(e){return 1/Math.cos(e)}l2.signature=Ir;function c2(e){return 2/(Math.exp(e)+Math.exp(-e))}c2.signature=Ir;function f2(e){return h9(e)}f2.signature=Ir;var Dd="number";function m2(e){return e<0}m2.signature=Dd;function d2(e){return e>0}d2.signature=Dd;function h2(e){return Number.isNaN(e)}h2.signature=Dd;function Pn(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1e-9,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;if(r<=0)throw new Error("Relative tolerance must be greater than 0");if(n<0)throw new Error("Absolute tolerance must be at least 0");return e.isNaN()||t.isNaN()?!1:!e.isFinite()||!t.isFinite()?e.eq(t):e.eq(t)?!0:e.minus(t).abs().lte(e.constructor.max(e.constructor.max(e.abs(),t.abs()).mul(r),n))}var d0="isNegative",mI=["typed","config"],dI=I(d0,mI,e=>{var{typed:t,config:r}=e;return t(d0,{number:n=>Er(n,0,r.relTol,r.absTol)?!1:m2(n),BigNumber:n=>Pn(n,new n.constructor(0),r.relTol,r.absTol)?!1:n.isNeg()&&!n.isZero()&&!n.isNaN(),bigint:n=>n<0n,Fraction:n=>n.s<0n,Unit:t.referToSelf(n=>a=>t.find(n,a.valueType())(a.value)),"Array | Matrix":t.referToSelf(n=>a=>Xe(a,n))})}),h0="isNumeric",hI=["typed"],pI=I(h0,hI,e=>{var{typed:t}=e;return t(h0,{"number | BigNumber | bigint | Fraction | boolean":()=>!0,"Complex | Unit | string | null | undefined | Node":()=>!1,"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r))})}),p0="hasNumericValue",gI=["typed","isNumeric"],vI=I(p0,gI,e=>{var{typed:t,isNumeric:r}=e;return t(p0,{boolean:()=>!0,string:function(a){return a.trim().length>0&&!isNaN(Number(a))},any:function(a){return r(a)}})}),g0="isPositive",yI=["typed","config"],bI=I(g0,yI,e=>{var{typed:t,config:r}=e;return t(g0,{number:n=>Er(n,0,r.relTol,r.absTol)?!1:d2(n),BigNumber:n=>Pn(n,new n.constructor(0),r.relTol,r.absTol)?!1:!n.isNeg()&&!n.isZero()&&!n.isNaN(),bigint:n=>n>0n,Fraction:n=>n.s>0n&&n.n>0n,Unit:t.referToSelf(n=>a=>t.find(n,a.valueType())(a.value)),"Array | Matrix":t.referToSelf(n=>a=>Xe(a,n))})}),v0="isZero",wI=["typed","equalScalar"],xI=I(v0,wI,e=>{var{typed:t,equalScalar:r}=e;return t(v0,{"number | BigNumber | Complex | Fraction":n=>r(n,0),bigint:n=>n===0n,Unit:t.referToSelf(n=>a=>t.find(n,a.valueType())(a.value)),"Array | Matrix":t.referToSelf(n=>a=>Xe(a,n))})}),y0="isNaN",DI=["typed"],NI=I(y0,DI,e=>{var{typed:t}=e;return t(y0,{number:h2,BigNumber:function(n){return n.isNaN()},bigint:function(n){return!1},Fraction:function(n){return!1},Complex:function(n){return n.isNaN()},Unit:function(n){return Number.isNaN(n.value)},"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r))})}),b0="typeOf",AI=["typed"],CI=I(b0,AI,e=>{var{typed:t}=e;return t(b0,{any:Tt})});function EI(e,t,r,n){return Er(e.re,t.re,r,n)&&Er(e.im,t.im,r,n)}var ts=I("compareUnits",["typed"],e=>{var{typed:t}=e;return{"Unit, Unit":t.referToSelf(r=>(n,a)=>{if(!n.equalBase(a))throw new Error("Cannot compare units with different base");return t.find(r,[n.valueType(),a.valueType()])(n.value,a.value)})}}),Kl="equalScalar",SI=["typed","config"],TI=I(Kl,SI,e=>{var{typed:t,config:r}=e,n=ts({typed:t});return t(Kl,{"boolean, boolean":function(i,o){return i===o},"number, number":function(i,o){return Er(i,o,r.relTol,r.absTol)},"BigNumber, BigNumber":function(i,o){return i.eq(o)||Pn(i,o,r.relTol,r.absTol)},"bigint, bigint":function(i,o){return i===o},"Fraction, Fraction":function(i,o){return i.equals(o)},"Complex, Complex":function(i,o){return EI(i,o,r.relTol,r.absTol)}},n)});I(Kl,["typed","config"],e=>{var{typed:t,config:r}=e;return t(Kl,{"number, number":function(a,i){return Er(a,i,r.relTol,r.absTol)}})});var MI="SparseMatrix",FI=["typed","equalScalar","Matrix"],PI=I(MI,FI,e=>{var{typed:t,equalScalar:r,Matrix:n}=e;function a(h,g){if(!(this instanceof a))throw new SyntaxError("Constructor must be called with the new operator");if(g&&!Or(g))throw new Error("Invalid datatype: "+g);if(Re(h))i(this,h,g);else if(h&&Et(h.index)&&Et(h.ptr)&&Et(h.size))this._values=h.values,this._index=h.index,this._ptr=h.ptr,this._size=h.size,this._datatype=g||h.datatype;else if(Et(h))o(this,h,g);else{if(h)throw new TypeError("Unsupported type of data ("+Tt(h)+")");this._values=[],this._index=[],this._ptr=[0],this._size=[0,0],this._datatype=g}}function i(h,g,b){g.type==="SparseMatrix"?(h._values=g._values?We(g._values):void 0,h._index=We(g._index),h._ptr=We(g._ptr),h._size=We(g._size),h._datatype=b||g._datatype):o(h,g.valueOf(),b||g._datatype)}function o(h,g,b){h._values=[],h._index=[],h._ptr=[],h._datatype=b;var D=g.length,y=0,w=r,x=0;if(Or(b)&&(w=t.find(r,[b,b])||r,x=t.convert(0,b)),D>0){var v=0;do{h._ptr.push(h._index.length);for(var N=0;N<D;N++){var C=g[N];if(Et(C)){if(v===0&&y<C.length&&(y=C.length),v<C.length){var A=C[v];w(A,x)||(h._values.push(A),h._index.push(N))}}else v===0&&y<1&&(y=1),w(C,x)||(h._values.push(C),h._index.push(N))}v++}while(v<y)}h._ptr.push(h._index.length),h._size=[D,y]}a.prototype=new n,a.prototype.createSparseMatrix=function(h,g){return new a(h,g)},Object.defineProperty(a,"name",{value:"SparseMatrix"}),a.prototype.constructor=a,a.prototype.type="SparseMatrix",a.prototype.isSparseMatrix=!0,a.prototype.getDataType=function(){return wc(this._values,Tt)},a.prototype.storage=function(){return"sparse"},a.prototype.datatype=function(){return this._datatype},a.prototype.create=function(h,g){return new a(h,g)},a.prototype.density=function(){var h=this._size[0],g=this._size[1];return h!==0&&g!==0?this._index.length/(h*g):0},a.prototype.subset=function(h,g,b){if(!this._values)throw new Error("Cannot invoke subset on a Pattern only matrix");switch(arguments.length){case 1:return s(this,h);case 2:case 3:return u(this,h,g,b);default:throw new SyntaxError("Wrong number of arguments")}};function s(h,g){if(!dc(g))throw new TypeError("Invalid index");var b=g.isScalar();if(b)return h.get(g.min());var D=g.size();if(D.length!==h._size.length)throw new at(D.length,h._size.length);var y,w,x,v,N=g.min(),C=g.max();for(y=0,w=h._size.length;y<w;y++)Ot(N[y],h._size[y]),Ot(C[y],h._size[y]);var A=h._values,E=h._index,S=h._ptr,F=g.dimension(0),k=g.dimension(1),B=[],$=[];F.forEach(function(R,Z){$[R]=Z[0],B[R]=!0});var M=A?[]:void 0,z=[],G=[];return k.forEach(function(R){for(G.push(z.length),x=S[R],v=S[R+1];x<v;x++)y=E[x],B[y]===!0&&(z.push($[y]),M&&M.push(A[x]))}),G.push(z.length),new a({values:M,index:z,ptr:G,size:D,datatype:h._datatype})}function u(h,g,b,D){if(!g||g.isIndex!==!0)throw new TypeError("Invalid index");var y=g.size(),w=g.isScalar(),x;if(Re(b)?(x=b.size(),b=b.toArray()):x=Ue(b),w){if(x.length!==0)throw new TypeError("Scalar expected");h.set(g.min(),b,D)}else{if(y.length!==1&&y.length!==2)throw new at(y.length,h._size.length,"<");if(x.length<y.length){for(var v=0,N=0;y[v]===1&&x[v]===1;)v++;for(;y[v]===1;)N++,v++;b=yx(b,y.length,N,x)}if(!za(y,x))throw new at(y,x,">");if(y.length===1){var C=g.dimension(0);C.forEach(function(S,F){Ot(S),h.set([S,0],b[F[0]],D)})}else{var A=g.dimension(0),E=g.dimension(1);A.forEach(function(S,F){Ot(S),E.forEach(function(k,B){Ot(k),h.set([S,k],b[F[0]][B[0]],D)})})}}return h}a.prototype.get=function(h){if(!Et(h))throw new TypeError("Array expected");if(h.length!==this._size.length)throw new at(h.length,this._size.length);if(!this._values)throw new Error("Cannot invoke get on a Pattern only matrix");var g=h[0],b=h[1];Ot(g,this._size[0]),Ot(b,this._size[1]);var D=l(g,this._ptr[b],this._ptr[b+1],this._index);return D<this._ptr[b+1]&&this._index[D]===g?this._values[D]:0},a.prototype.set=function(h,g,b){if(!Et(h))throw new TypeError("Array expected");if(h.length!==this._size.length)throw new at(h.length,this._size.length);if(!this._values)throw new Error("Cannot invoke set on a Pattern only matrix");var D=h[0],y=h[1],w=this._size[0],x=this._size[1],v=r,N=0;Or(this._datatype)&&(v=t.find(r,[this._datatype,this._datatype])||r,N=t.convert(0,this._datatype)),(D>w-1||y>x-1)&&(m(this,Math.max(D+1,w),Math.max(y+1,x),b),w=this._size[0],x=this._size[1]),Ot(D,w),Ot(y,x);var C=l(D,this._ptr[y],this._ptr[y+1],this._index);return C<this._ptr[y+1]&&this._index[C]===D?v(g,N)?c(C,y,this._values,this._index,this._ptr):this._values[C]=g:v(g,N)||f(C,D,y,g,this._values,this._index,this._ptr),this};function l(h,g,b,D){if(b-g===0)return b;for(var y=g;y<b;y++)if(D[y]===h)return y;return g}function c(h,g,b,D,y){b.splice(h,1),D.splice(h,1);for(var w=g+1;w<y.length;w++)y[w]--}function f(h,g,b,D,y,w,x){y.splice(h,0,D),w.splice(h,0,g);for(var v=b+1;v<x.length;v++)x[v]++}a.prototype.resize=function(h,g,b){if(!Fn(h))throw new TypeError("Array or Matrix expected");var D=h.valueOf().map(w=>Array.isArray(w)&&w.length===1?w[0]:w);if(D.length!==2)throw new Error("Only two dimensions matrix are supported");D.forEach(function(w){if(!Ze(w)||!Oe(w)||w<0)throw new TypeError("Invalid size, must contain positive integers (size: "+nt(D)+")")});var y=b?this.clone():this;return m(y,D[0],D[1],g)};function m(h,g,b,D){var y=D||0,w=r,x=0;Or(h._datatype)&&(w=t.find(r,[h._datatype,h._datatype])||r,x=t.convert(0,h._datatype),y=t.convert(y,h._datatype));var v=!w(y,x),N=h._size[0],C=h._size[1],A,E,S;if(b>C){for(E=C;E<b;E++)if(h._ptr[E]=h._values.length,v)for(A=0;A<N;A++)h._values.push(y),h._index.push(A);h._ptr[b]=h._values.length}else b<C&&(h._ptr.splice(b+1,C-b),h._values.splice(h._ptr[b],h._values.length),h._index.splice(h._ptr[b],h._index.length));if(C=b,g>N){if(v){var F=0;for(E=0;E<C;E++){h._ptr[E]=h._ptr[E]+F,S=h._ptr[E+1]+F;var k=0;for(A=N;A<g;A++,k++)h._values.splice(S+k,0,y),h._index.splice(S+k,0,A),F++}h._ptr[C]=h._values.length}}else if(g<N){var B=0;for(E=0;E<C;E++){h._ptr[E]=h._ptr[E]-B;var $=h._ptr[E],M=h._ptr[E+1]-B;for(S=$;S<M;S++)A=h._index[S],A>g-1&&(h._values.splice(S,1),h._index.splice(S,1),B++)}h._ptr[E]=h._values.length}return h._size[0]=g,h._size[1]=b,h}a.prototype.reshape=function(h,g){if(!Et(h))throw new TypeError("Array expected");if(h.length!==2)throw new Error("Sparse matrices can only be reshaped in two dimensions");h.forEach(function(R){if(!Ze(R)||!Oe(R)||R<=-2||R===0)throw new TypeError("Invalid size, must contain positive integers or -1 (size: "+nt(h)+")")});var b=this._size[0]*this._size[1];h=yd(h,b);var D=h[0]*h[1];if(b!==D)throw new Error("Reshaping sparse matrix will result in the wrong number of elements");var y=g?this.clone():this;if(this._size[0]===h[0]&&this._size[1]===h[1])return y;for(var w=[],x=0;x<y._ptr.length;x++)for(var v=0;v<y._ptr[x+1]-y._ptr[x];v++)w.push(x);for(var N=y._values.slice(),C=y._index.slice(),A=0;A<y._index.length;A++){var E=C[A],S=w[A],F=E*y._size[1]+S;w[A]=F%h[1],C[A]=Math.floor(F/h[1])}y._values.length=0,y._index.length=0,y._ptr.length=h[1]+1,y._size=h.slice();for(var k=0;k<y._ptr.length;k++)y._ptr[k]=0;for(var B=0;B<N.length;B++){var $=C[B],M=w[B],z=N[B],G=l($,y._ptr[M],y._ptr[M+1],y._index);f(G,$,M,z,y._values,y._index,y._ptr)}return y},a.prototype.clone=function(){var h=new a({values:this._values?We(this._values):void 0,index:We(this._index),ptr:We(this._ptr),size:We(this._size),datatype:this._datatype});return h},a.prototype.size=function(){return this._size.slice(0)},a.prototype.map=function(h,g){if(!this._values)throw new Error("Cannot invoke map on a Pattern only matrix");var b=this,D=this._size[0],y=this._size[1],w=Ki(h,b,"map"),x=function(N,C,A){return w.fn(N,[C,A],b)};return d(this,0,D-1,0,y-1,x,g)};function d(h,g,b,D,y,w,x){var v=[],N=[],C=[],A=r,E=0;Or(h._datatype)&&(A=t.find(r,[h._datatype,h._datatype])||r,E=t.convert(0,h._datatype));for(var S=function(V,_,ce){var ae=w(V,_,ce);A(ae,E)||(v.push(ae),N.push(_))},F=D;F<=y;F++){C.push(v.length);var k=h._ptr[F],B=h._ptr[F+1];if(x)for(var $=k;$<B;$++){var M=h._index[$];M>=g&&M<=b&&S(h._values[$],M-g,F-D)}else{for(var z={},G=k;G<B;G++){var R=h._index[G];z[R]=h._values[G]}for(var Z=g;Z<=b;Z++){var te=Z in z?z[Z]:0;S(te,Z-g,F-D)}}}return C.push(v.length),new a({values:v,index:N,ptr:C,size:[b-g+1,y-D+1]})}a.prototype.forEach=function(h,g){if(!this._values)throw new Error("Cannot invoke forEach on a Pattern only matrix");for(var b=this,D=this._size[0],y=this._size[1],w=Ki(h,b,"forEach"),x=0;x<y;x++){var v=this._ptr[x],N=this._ptr[x+1];if(g)for(var C=v;C<N;C++){var A=this._index[C];w.fn(this._values[C],[A,x],b)}else{for(var E={},S=v;S<N;S++){var F=this._index[S];E[F]=this._values[S]}for(var k=0;k<D;k++){var B=k in E?E[k]:0;w.fn(B,[k,x],b)}}}},a.prototype[Symbol.iterator]=function*(){if(!this._values)throw new Error("Cannot iterate a Pattern only matrix");for(var h=this._size[1],g=0;g<h;g++)for(var b=this._ptr[g],D=this._ptr[g+1],y=b;y<D;y++){var w=this._index[y];yield{value:this._values[y],index:[w,g]}}},a.prototype.toArray=function(){return p(this._values,this._index,this._ptr,this._size,!0)},a.prototype.valueOf=function(){return p(this._values,this._index,this._ptr,this._size,!1)};function p(h,g,b,D,y){var w=D[0],x=D[1],v=[],N,C;for(N=0;N<w;N++)for(v[N]=[],C=0;C<x;C++)v[N][C]=0;for(C=0;C<x;C++)for(var A=b[C],E=b[C+1],S=A;S<E;S++)N=g[S],v[N][C]=h?y?We(h[S]):h[S]:1;return v}return a.prototype.format=function(h){for(var g=this._size[0],b=this._size[1],D=this.density(),y="Sparse Matrix ["+nt(g,h)+" x "+nt(b,h)+"] density: "+nt(D,h)+`
|
|
41
|
-
`,w=0;w<b;w++)for(var x=this._ptr[w],v=this._ptr[w+1],N=x;N<v;N++){var C=this._index[N];y+=`
|
|
42
|
-
(`+nt(C,h)+", "+nt(w,h)+") ==> "+(this._values?nt(this._values[N],h):"X")}return y},a.prototype.toString=function(){return nt(this.toArray())},a.prototype.toJSON=function(){return{mathjs:"SparseMatrix",values:this._values,index:this._index,ptr:this._ptr,size:this._size,datatype:this._datatype}},a.prototype.diagonal=function(h){if(h){if(Qe(h)&&(h=h.toNumber()),!Ze(h)||!Oe(h))throw new TypeError("The parameter k must be an integer number")}else h=0;var g=h>0?h:0,b=h<0?-h:0,D=this._size[0],y=this._size[1],w=Math.min(D-b,y-g),x=[],v=[],N=[];N[0]=0;for(var C=g;C<y&&x.length<w;C++)for(var A=this._ptr[C],E=this._ptr[C+1],S=A;S<E;S++){var F=this._index[S];if(F===C-g+b){x.push(this._values[S]),v[x.length-1]=F-b;break}}return N.push(x.length),new a({values:x,index:v,ptr:N,size:[w,1]})},a.fromJSON=function(h){return new a(h)},a.diagonal=function(h,g,b,D,y){if(!Et(h))throw new TypeError("Array expected, size parameter");if(h.length!==2)throw new Error("Only two dimensions matrix are supported");if(h=h.map(function(R){if(Qe(R)&&(R=R.toNumber()),!Ze(R)||!Oe(R)||R<1)throw new Error("Size values must be positive integers");return R}),b){if(Qe(b)&&(b=b.toNumber()),!Ze(b)||!Oe(b))throw new TypeError("The parameter k must be an integer number")}else b=0;var w=r,x=0;Or(y)&&(w=t.find(r,[y,y])||r,x=t.convert(0,y));var v=b>0?b:0,N=b<0?-b:0,C=h[0],A=h[1],E=Math.min(C-N,A-v),S;if(Et(g)){if(g.length!==E)throw new Error("Invalid value array length");S=function(Z){return g[Z]}}else if(Re(g)){var F=g.size();if(F.length!==1||F[0]!==E)throw new Error("Invalid matrix length");S=function(Z){return g.get([Z])}}else S=function(){return g};for(var k=[],B=[],$=[],M=0;M<A;M++){$.push(k.length);var z=M-v;if(z>=0&&z<E){var G=S(z);w(G,x)||(B.push(z+N),k.push(G))}}return $.push(k.length),new a({values:k,index:B,ptr:$,size:[C,A]})},a.prototype.swapRows=function(h,g){if(!Ze(h)||!Oe(h)||!Ze(g)||!Oe(g))throw new Error("Row index must be positive integers");if(this._size.length!==2)throw new Error("Only two dimensional matrix is supported");return Ot(h,this._size[0]),Ot(g,this._size[0]),a._swapRows(h,g,this._size[1],this._values,this._index,this._ptr),this},a._forEachRow=function(h,g,b,D,y){for(var w=D[h],x=D[h+1],v=w;v<x;v++)y(b[v],g[v])},a._swapRows=function(h,g,b,D,y,w){for(var x=0;x<b;x++){var v=w[x],N=w[x+1],C=l(h,v,N,y),A=l(g,v,N,y);if(C<N&&A<N&&y[C]===h&&y[A]===g){if(D){var E=D[C];D[C]=D[A],D[A]=E}continue}if(C<N&&y[C]===h&&(A>=N||y[A]!==g)){var S=D?D[C]:void 0;y.splice(A,0,g),D&&D.splice(A,0,S),y.splice(A<=C?C+1:C,1),D&&D.splice(A<=C?C+1:C,1);continue}if(A<N&&y[A]===g&&(C>=N||y[C]!==h)){var F=D?D[A]:void 0;y.splice(C,0,h),D&&D.splice(C,0,F),y.splice(C<=A?A+1:A,1),D&&D.splice(C<=A?A+1:A,1)}}},a},{isClass:!0}),kI="number",OI=["typed"];function $I(e){var t=e.match(/(0[box])([0-9a-fA-F]*)\.([0-9a-fA-F]*)/);if(t){var r={"0b":2,"0o":8,"0x":16}[t[1]],n=t[2],a=t[3];return{input:e,radix:r,integerPart:n,fractionalPart:a}}else return null}function BI(e){for(var t=parseInt(e.integerPart,e.radix),r=0,n=0;n<e.fractionalPart.length;n++){var a=parseInt(e.fractionalPart[n],e.radix);r+=a/Math.pow(e.radix,n+1)}var i=t+r;if(isNaN(i))throw new SyntaxError('String "'+e.input+'" is not a valid number');return i}var _I=I(kI,OI,e=>{var{typed:t}=e,r=t("number",{"":function(){return 0},number:function(a){return a},string:function(a){if(a==="NaN")return NaN;var i=$I(a);if(i)return BI(i);var o=0,s=a.match(/(0[box][0-9a-fA-F]*)i([0-9]*)/);s&&(o=Number(s[2]),a=s[1]);var u=Number(a);if(isNaN(u))throw new SyntaxError('String "'+a+'" is not a valid number');if(s){if(u>2**o-1)throw new SyntaxError('String "'.concat(a,'" is out of range'));u>=2**(o-1)&&(u=u-2**o)}return u},BigNumber:function(a){return a.toNumber()},bigint:function(a){return Number(a)},Fraction:function(a){return a.valueOf()},Unit:t.referToSelf(n=>a=>{var i=a.clone();return i.value=n(a.value),i}),null:function(a){return 0},"Unit, string | Unit":function(a,i){return a.toNumber(i)},"Array | Matrix":t.referToSelf(n=>a=>Xe(a,n))});return r.fromJSON=function(n){return parseFloat(n.value)},r}),II="bigint",zI=["typed"],jI=I(II,zI,e=>{var{typed:t}=e,r=t("bigint",{"":function(){return 0n},bigint:function(a){return a},number:function(a){return BigInt(a.toFixed())},BigNumber:function(a){return BigInt(a.round().toString())},Fraction:function(a){return BigInt(a.valueOf().toFixed())},"string | boolean":function(a){return BigInt(a)},null:function(a){return 0n},"Array | Matrix":t.referToSelf(n=>a=>Xe(a,n))});return r.fromJSON=function(n){return BigInt(n.value)},r}),w0="string",qI=["typed"],RI=I(w0,qI,e=>{var{typed:t}=e;return t(w0,{"":function(){return""},number:Hi,null:function(n){return"null"},boolean:function(n){return n+""},string:function(n){return n},"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r)),any:function(n){return String(n)}})}),x0="boolean",LI=["typed"],HI=I(x0,LI,e=>{var{typed:t}=e;return t(x0,{"":function(){return!1},boolean:function(n){return n},number:function(n){return!!n},null:function(n){return!1},BigNumber:function(n){return!n.isZero()},string:function(n){var a=n.toLowerCase();if(a==="true")return!0;if(a==="false")return!1;var i=Number(n);if(n!==""&&!isNaN(i))return!!i;throw new Error('Cannot convert "'+n+'" to a boolean')},"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r))})}),GI="bignumber",VI=["typed","BigNumber"],UI=I(GI,VI,e=>{var{typed:t,BigNumber:r}=e;return t("bignumber",{"":function(){return new r(0)},number:function(a){return new r(a+"")},string:function(a){var i=a.match(/(0[box][0-9a-fA-F]*)i([0-9]*)/);if(i){var o=i[2],s=r(i[1]),u=new r(2).pow(Number(o));if(s.gt(u.sub(1)))throw new SyntaxError('String "'.concat(a,'" is out of range'));var l=new r(2).pow(Number(o)-1);return s.gte(l)?s.sub(u):s}return new r(a)},BigNumber:function(a){return a},bigint:function(a){return new r(a.toString())},Unit:t.referToSelf(n=>a=>{var i=a.clone();return i.value=n(a.value),i}),Fraction:function(a){return new r(String(a.n)).div(String(a.d)).times(String(a.s))},null:function(a){return new r(0)},"Array | Matrix":t.referToSelf(n=>a=>Xe(a,n))})}),WI="complex",JI=["typed","Complex"],KI=I(WI,JI,e=>{var{typed:t,Complex:r}=e;return t("complex",{"":function(){return r.ZERO},number:function(a){return new r(a,0)},"number, number":function(a,i){return new r(a,i)},"BigNumber, BigNumber":function(a,i){return new r(a.toNumber(),i.toNumber())},Fraction:function(a){return new r(a.valueOf(),0)},Complex:function(a){return a.clone()},string:function(a){return r(a)},null:function(a){return r(0)},Object:function(a){if("re"in a&&"im"in a)return new r(a.re,a.im);if("r"in a&&"phi"in a||"abs"in a&&"arg"in a)return new r(a);throw new Error("Expected object with properties (re and im) or (r and phi) or (abs and arg)")},"Array | Matrix":t.referToSelf(n=>a=>Xe(a,n))})}),YI="fraction",ZI=["typed","Fraction"],QI=I(YI,ZI,e=>{var{typed:t,Fraction:r}=e;return t("fraction",{number:function(a){if(!isFinite(a)||isNaN(a))throw new Error(a+" cannot be represented as a fraction");return new r(a)},string:function(a){return new r(a)},"number, number":function(a,i){return new r(a,i)},"bigint, bigint":function(a,i){return new r(a,i)},null:function(a){return new r(0)},BigNumber:function(a){return new r(a.toString())},bigint:function(a){return new r(a.toString())},Fraction:function(a){return a},Unit:t.referToSelf(n=>a=>{var i=a.clone();return i.value=n(a.value),i}),Object:function(a){return new r(a)},"Array | Matrix":t.referToSelf(n=>a=>Xe(a,n))})}),D0="matrix",XI=["typed","Matrix","DenseMatrix","SparseMatrix"],e7=I(D0,XI,e=>{var{typed:t,Matrix:r,DenseMatrix:n,SparseMatrix:a}=e;return t(D0,{"":function(){return i([])},string:function(s){return i([],s)},"string, string":function(s,u){return i([],s,u)},Array:function(s){return i(s)},Matrix:function(s){return i(s,s.storage())},"Array | Matrix, string":i,"Array | Matrix, string, string":i});function i(o,s,u){if(s==="dense"||s==="default"||s===void 0)return new n(o,u);if(s==="sparse")return new a(o,u);throw new TypeError("Unknown matrix type "+JSON.stringify(s)+".")}}),N0="matrixFromFunction",t7=["typed","matrix","isZero"],r7=I(N0,t7,e=>{var{typed:t,matrix:r,isZero:n}=e;return t(N0,{"Array | Matrix, function, string, string":function(o,s,u,l){return a(o,s,u,l)},"Array | Matrix, function, string":function(o,s,u){return a(o,s,u)},"Matrix, function":function(o,s){return a(o,s,"dense")},"Array, function":function(o,s){return a(o,s,"dense").toArray()},"Array | Matrix, string, function":function(o,s,u){return a(o,u,s)},"Array | Matrix, string, string, function":function(o,s,u,l){return a(o,l,s,u)}});function a(i,o,s,u){var l;return u!==void 0?l=r(s,u):l=r(s),l.resize(i),l.forEach(function(c,f){var m=o(f);n(m)||l.set(f,m)}),l}}),A0="matrixFromRows",n7=["typed","matrix","flatten","size"],a7=I(A0,n7,e=>{var{typed:t,matrix:r,flatten:n,size:a}=e;return t(A0,{"...Array":function(u){return i(u)},"...Matrix":function(u){return r(i(u.map(l=>l.toArray())))}});function i(s){if(s.length===0)throw new TypeError("At least one row is needed to construct a matrix.");var u=o(s[0]),l=[];for(var c of s){var f=o(c);if(f!==u)throw new TypeError("The vectors had different length: "+(u|0)+" ≠ "+(f|0));l.push(n(c))}return l}function o(s){var u=a(s);if(u.length===1)return u[0];if(u.length===2){if(u[0]===1)return u[1];if(u[1]===1)return u[0];throw new TypeError("At least one of the arguments is not a vector.")}else throw new TypeError("Only one- or two-dimensional vectors are supported.")}}),C0="matrixFromColumns",i7=["typed","matrix","flatten","size"],o7=I(C0,i7,e=>{var{typed:t,matrix:r,flatten:n,size:a}=e;return t(C0,{"...Array":function(u){return i(u)},"...Matrix":function(u){return r(i(u.map(l=>l.toArray())))}});function i(s){if(s.length===0)throw new TypeError("At least one column is needed to construct a matrix.");for(var u=o(s[0]),l=[],c=0;c<u;c++)l[c]=[];for(var f of s){var m=o(f);if(m!==u)throw new TypeError("The vectors had different length: "+(u|0)+" ≠ "+(m|0));for(var d=n(f),p=0;p<u;p++)l[p].push(d[p])}return l}function o(s){var u=a(s);if(u.length===1)return u[0];if(u.length===2){if(u[0]===1)return u[1];if(u[1]===1)return u[0];throw new TypeError("At least one of the arguments is not a vector.")}else throw new TypeError("Only one- or two-dimensional vectors are supported.")}}),E0="splitUnit",s7=["typed"],u7=I(E0,s7,e=>{var{typed:t}=e;return t(E0,{"Unit, Array":function(n,a){return n.splitUnit(a)}})}),S0="unaryMinus",l7=["typed"],c7=I(S0,l7,e=>{var{typed:t}=e;return t(S0,{number:Fx,"Complex | BigNumber | Fraction":r=>r.neg(),bigint:r=>-r,Unit:t.referToSelf(r=>n=>{var a=n.clone();return a.value=t.find(r,a.valueType())(n.value),a}),"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r,!0))})}),T0="unaryPlus",f7=["typed","config","numeric"],m7=I(T0,f7,e=>{var{typed:t,config:r,numeric:n}=e;return t(T0,{number:Px,Complex:function(i){return i},BigNumber:function(i){return i},bigint:function(i){return i},Fraction:function(i){return i},Unit:function(i){return i.clone()},"Array | Matrix":t.referToSelf(a=>i=>Xe(i,a,!0)),boolean:function(i){return n(i?1:0,r.number)},string:function(i){return n(i,hi(i,r))}})}),M0="abs",d7=["typed"],h7=I(M0,d7,e=>{var{typed:t}=e;return t(M0,{number:Ex,"Complex | BigNumber | Fraction | Unit":r=>r.abs(),bigint:r=>r<0n?-r:r,"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r,!0))})}),F0="mapSlices",p7=["typed","isInteger"],zm=I(F0,p7,e=>{var{typed:t,isInteger:r}=e;return t(F0,{"Array | Matrix, number | BigNumber, function":function(a,i,o){if(!r(i))throw new TypeError("Integer number expected for dimension");var s=Array.isArray(a)?Ue(a):a.size();if(i<0||i>=s.length)throw new Jn(i,s.length);return Re(a)?a.create(Yl(a.valueOf(),i,o),a.datatype()):Yl(a,i,o)}})},{formerly:"apply"});function Yl(e,t,r){var n,a,i;if(t<=0)if(Array.isArray(e[0])){for(i=g7(e),a=[],n=0;n<i.length;n++)a[n]=Yl(i[n],t-1,r);return a}else return r(e);else{for(a=[],n=0;n<e.length;n++)a[n]=Yl(e[n],t-1,r);return a}}function g7(e){var t=e.length,r=e[0].length,n,a,i=[];for(a=0;a<r;a++){var o=[];for(n=0;n<t;n++)o.push(e[n][a]);i.push(o)}return i}var P0="addScalar",v7=["typed"],y7=I(P0,v7,e=>{var{typed:t}=e;return t(P0,{"number, number":Sx,"Complex, Complex":function(n,a){return n.add(a)},"BigNumber, BigNumber":function(n,a){return n.plus(a)},"bigint, bigint":function(n,a){return n+a},"Fraction, Fraction":function(n,a){return n.add(a)},"Unit, Unit":t.referToSelf(r=>(n,a)=>{if(n.value===null||n.value===void 0)throw new Error("Parameter x contains a unit with undefined value");if(a.value===null||a.value===void 0)throw new Error("Parameter y contains a unit with undefined value");if(!n.equalBase(a))throw new Error("Units do not match");var i=n.clone();return i.value=t.find(r,[i.valueType(),a.valueType()])(i.value,a.value),i.fixPrefix=!1,i})})}),k0="subtractScalar",b7=["typed"],w7=I(k0,b7,e=>{var{typed:t}=e;return t(k0,{"number, number":Tx,"Complex, Complex":function(n,a){return n.sub(a)},"BigNumber, BigNumber":function(n,a){return n.minus(a)},"bigint, bigint":function(n,a){return n-a},"Fraction, Fraction":function(n,a){return n.sub(a)},"Unit, Unit":t.referToSelf(r=>(n,a)=>{if(n.value===null||n.value===void 0)throw new Error("Parameter x contains a unit with undefined value");if(a.value===null||a.value===void 0)throw new Error("Parameter y contains a unit with undefined value");if(!n.equalBase(a))throw new Error("Units do not match");var i=n.clone();return i.value=t.find(r,[i.valueType(),a.valueType()])(i.value,a.value),i.fixPrefix=!1,i})})}),O0="cbrt",x7=["config","typed","isNegative","unaryMinus","matrix","Complex","BigNumber","Fraction"],D7=I(O0,x7,e=>{var{config:t,typed:r,isNegative:n,unaryMinus:a,matrix:i,Complex:o,BigNumber:s,Fraction:u}=e;return r(O0,{number:Ns,Complex:l,"Complex, boolean":l,BigNumber:function(m){return m.cbrt()},Unit:c});function l(f,m){var d=f.arg()/3,p=f.abs(),h=new o(Ns(p),0).mul(new o(0,d).exp());if(m){var g=[h,new o(Ns(p),0).mul(new o(0,d+Math.PI*2/3).exp()),new o(Ns(p),0).mul(new o(0,d-Math.PI*2/3).exp())];return t.matrix==="Array"?g:i(g)}else return h}function c(f){if(f.value&&ka(f.value)){var m=f.clone();return m.value=1,m=m.pow(1/3),m.value=l(f.value),m}else{var d=n(f.value);d&&(f.value=a(f.value));var p;Qe(f.value)?p=new s(1).div(3):Zs(f.value)?p=new u(1,3):p=1/3;var h=f.pow(p);return d&&(h.value=a(h.value)),h}}}),N7="matAlgo11xS0s",A7=["typed","equalScalar"],Sr=I(N7,A7,e=>{var{typed:t,equalScalar:r}=e;return function(a,i,o,s){var u=a._values,l=a._index,c=a._ptr,f=a._size,m=a._datatype;if(!u)throw new Error("Cannot perform operation on Pattern Sparse Matrix and Scalar value");var d=f[0],p=f[1],h,g=r,b=0,D=o;typeof m=="string"&&(h=m,g=t.find(r,[h,h]),b=t.convert(0,h),i=t.convert(i,h),D=t.find(o,[h,h]));for(var y=[],w=[],x=[],v=0;v<p;v++){x[v]=w.length;for(var N=c[v],C=c[v+1],A=N;A<C;A++){var E=l[A],S=s?D(i,u[A]):D(u[A],i);g(S,b)||(w.push(E),y.push(S))}}return x[p]=w.length,a.createSparseMatrix({values:y,index:w,ptr:x,size:[d,p],datatype:h})}}),C7="matAlgo12xSfs",E7=["typed","DenseMatrix"],sr=I(C7,E7,e=>{var{typed:t,DenseMatrix:r}=e;return function(a,i,o,s){var u=a._values,l=a._index,c=a._ptr,f=a._size,m=a._datatype;if(!u)throw new Error("Cannot perform operation on Pattern Sparse Matrix and Scalar value");var d=f[0],p=f[1],h,g=o;typeof m=="string"&&(h=m,i=t.convert(i,h),g=t.find(o,[h,h]));for(var b=[],D=[],y=[],w=0;w<p;w++){for(var x=w+1,v=c[w],N=c[w+1],C=v;C<N;C++){var A=l[C];D[A]=u[C],y[A]=x}for(var E=0;E<d;E++)w===0&&(b[E]=[]),y[E]===x?b[E][w]=s?g(i,D[E]):g(D[E],i):b[E][w]=s?g(i,0):g(0,i)}return new r({data:b,size:[d,p],datatype:h})}}),S7="matAlgo14xDs",T7=["typed"],Yn=I(S7,T7,e=>{var{typed:t}=e;return function(a,i,o,s){var u=a._data,l=a._size,c=a._datatype,f,m=o;typeof c=="string"&&(f=c,i=t.convert(i,f),m=t.find(o,[f,f]));var d=l.length>0?r(m,0,l,l[0],u,i,s):[];return a.createDenseMatrix({data:d,size:We(l),datatype:f})};function r(n,a,i,o,s,u,l){var c=[];if(a===i.length-1)for(var f=0;f<o;f++)c[f]=l?n(u,s[f]):n(s[f],u);else for(var m=0;m<o;m++)c[m]=r(n,a+1,i,i[a+1],s[m],u,l);return c}}),jm="ceil",M7=["typed","config","round","matrix","equalScalar","zeros","DenseMatrix"],F7=new fi(10),P7=I(jm,["typed","config","round"],e=>{var{typed:t,config:r,round:n}=e;function a(i){var o=Math.ceil(i),s=n(i);return o===s?o:Er(i,s,r.relTol,r.absTol)&&!Er(i,o,r.relTol,r.absTol)?s:o}return t(jm,{number:a,"number, number":function(o,s){if(!Oe(s))throw new RangeError("number of decimals in function ceil must be an integer");if(s<0||s>15)throw new RangeError("number of decimals in ceil number must be in range 0-15");var u=10**s;return a(o*u)/u}})}),k7=I(jm,M7,e=>{var{typed:t,config:r,round:n,matrix:a,equalScalar:i,zeros:o,DenseMatrix:s}=e,u=Sr({typed:t,equalScalar:i}),l=sr({typed:t,DenseMatrix:s}),c=Yn({typed:t}),f=P7({typed:t,config:r,round:n});function m(d){var p=(b,D)=>Pn(b,D,r.relTol,r.absTol),h=d.ceil(),g=n(d);return h.eq(g)?h:p(d,g)&&!p(d,h)?g:h}return t("ceil",{number:f.signatures.number,"number,number":f.signatures["number,number"],Complex:function(p){return p.ceil()},"Complex, number":function(p,h){return p.ceil(h)},"Complex, BigNumber":function(p,h){return p.ceil(h.toNumber())},BigNumber:m,"BigNumber, BigNumber":function(p,h){var g=F7.pow(h);return m(p.mul(g)).div(g)},bigint:d=>d,"bigint, number":(d,p)=>d,"bigint, BigNumber":(d,p)=>d,Fraction:function(p){return p.ceil()},"Fraction, number":function(p,h){return p.ceil(h)},"Fraction, BigNumber":function(p,h){return p.ceil(h.toNumber())},"Unit, number, Unit":t.referToSelf(d=>function(p,h,g){var b=p.toNumeric(g);return g.multiply(d(b,h))}),"Unit, BigNumber, Unit":t.referToSelf(d=>(p,h,g)=>d(p,h.toNumber(),g)),"Array | Matrix, number | BigNumber, Unit":t.referToSelf(d=>(p,h,g)=>Xe(p,b=>d(b,h,g),!0)),"Array | Matrix | Unit, Unit":t.referToSelf(d=>(p,h)=>d(p,0,h)),"Array | Matrix":t.referToSelf(d=>p=>Xe(p,d,!0)),"Array, number | BigNumber":t.referToSelf(d=>(p,h)=>Xe(p,g=>d(g,h),!0)),"SparseMatrix, number | BigNumber":t.referToSelf(d=>(p,h)=>u(p,h,d,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(d=>(p,h)=>c(p,h,d,!1)),"number | Complex | Fraction | BigNumber, Array":t.referToSelf(d=>(p,h)=>c(a(h),p,d,!0).valueOf()),"number | Complex | Fraction | BigNumber, Matrix":t.referToSelf(d=>(p,h)=>i(p,0)?o(h.size(),h.storage()):h.storage()==="dense"?c(h,p,d,!0):l(h,p,d,!0))})}),$0="cube",O7=["typed"],$7=I($0,O7,e=>{var{typed:t}=e;return t($0,{number:kx,Complex:function(n){return n.mul(n).mul(n)},BigNumber:function(n){return n.times(n).times(n)},bigint:function(n){return n*n*n},Fraction:function(n){return n.pow(3)},Unit:function(n){return n.pow(3)}})}),B0="exp",B7=["typed"],_7=I(B0,B7,e=>{var{typed:t}=e;return t(B0,{number:Ox,Complex:function(n){return n.exp()},BigNumber:function(n){return n.exp()}})}),_0="expm1",I7=["typed","Complex"],z7=I(_0,I7,e=>{var{typed:t,Complex:r}=e;return t(_0,{number:$x,Complex:function(a){var i=Math.exp(a.re);return new r(i*Math.cos(a.im)-1,i*Math.sin(a.im))},BigNumber:function(a){return a.exp().minus(1)}})}),qm="fix",j7=["typed","Complex","matrix","ceil","floor","equalScalar","zeros","DenseMatrix"],q7=I(qm,["typed","ceil","floor"],e=>{var{typed:t,ceil:r,floor:n}=e;return t(qm,{number:function(i){return i>0?n(i):r(i)},"number, number":function(i,o){return i>0?n(i,o):r(i,o)}})}),R7=I(qm,j7,e=>{var{typed:t,Complex:r,matrix:n,ceil:a,floor:i,equalScalar:o,zeros:s,DenseMatrix:u}=e,l=sr({typed:t,DenseMatrix:u}),c=Yn({typed:t}),f=q7({typed:t,ceil:a,floor:i});return t("fix",{number:f.signatures.number,"number, number | BigNumber":f.signatures["number,number"],Complex:function(d){return new r(d.re>0?Math.floor(d.re):Math.ceil(d.re),d.im>0?Math.floor(d.im):Math.ceil(d.im))},"Complex, number":function(d,p){return new r(d.re>0?i(d.re,p):a(d.re,p),d.im>0?i(d.im,p):a(d.im,p))},"Complex, BigNumber":function(d,p){var h=p.toNumber();return new r(d.re>0?i(d.re,h):a(d.re,h),d.im>0?i(d.im,h):a(d.im,h))},BigNumber:function(d){return d.isNegative()?a(d):i(d)},"BigNumber, number | BigNumber":function(d,p){return d.isNegative()?a(d,p):i(d,p)},bigint:m=>m,"bigint, number":(m,d)=>m,"bigint, BigNumber":(m,d)=>m,Fraction:function(d){return d.s<0n?d.ceil():d.floor()},"Fraction, number | BigNumber":function(d,p){return d.s<0n?a(d,p):i(d,p)},"Unit, number, Unit":t.referToSelf(m=>function(d,p,h){var g=d.toNumeric(h);return h.multiply(m(g,p))}),"Unit, BigNumber, Unit":t.referToSelf(m=>(d,p,h)=>m(d,p.toNumber(),h)),"Array | Matrix, number | BigNumber, Unit":t.referToSelf(m=>(d,p,h)=>Xe(d,g=>m(g,p,h),!0)),"Array | Matrix | Unit, Unit":t.referToSelf(m=>(d,p)=>m(d,0,p)),"Array | Matrix":t.referToSelf(m=>d=>Xe(d,m,!0)),"Array | Matrix, number | BigNumber":t.referToSelf(m=>(d,p)=>Xe(d,h=>m(h,p),!0)),"number | Complex | Fraction | BigNumber, Array":t.referToSelf(m=>(d,p)=>c(n(p),d,m,!0).valueOf()),"number | Complex | Fraction | BigNumber, Matrix":t.referToSelf(m=>(d,p)=>o(d,0)?s(p.size(),p.storage()):p.storage()==="dense"?c(p,d,m,!0):l(p,d,m,!0))})}),Rm="floor",L7=["typed","config","round","matrix","equalScalar","zeros","DenseMatrix"],H7=new fi(10),G7=I(Rm,["typed","config","round"],e=>{var{typed:t,config:r,round:n}=e;function a(i){var o=Math.floor(i),s=n(i);return o===s?o:Er(i,s,r.relTol,r.absTol)&&!Er(i,o,r.relTol,r.absTol)?s:o}return t(Rm,{number:a,"number, number":function(o,s){if(!Oe(s))throw new RangeError("number of decimals in function floor must be an integer");if(s<0||s>15)throw new RangeError("number of decimals in floor number must be in range 0 - 15");var u=10**s;return a(o*u)/u}})}),p2=I(Rm,L7,e=>{var{typed:t,config:r,round:n,matrix:a,equalScalar:i,zeros:o,DenseMatrix:s}=e,u=Sr({typed:t,equalScalar:i}),l=sr({typed:t,DenseMatrix:s}),c=Yn({typed:t}),f=G7({typed:t,config:r,round:n});function m(d){var p=(b,D)=>Pn(b,D,r.relTol,r.absTol),h=d.floor(),g=n(d);return h.eq(g)?h:p(d,g)&&!p(d,h)?g:h}return t("floor",{number:f.signatures.number,"number,number":f.signatures["number,number"],Complex:function(p){return p.floor()},"Complex, number":function(p,h){return p.floor(h)},"Complex, BigNumber":function(p,h){return p.floor(h.toNumber())},BigNumber:m,"BigNumber, BigNumber":function(p,h){var g=H7.pow(h);return m(p.mul(g)).div(g)},bigint:d=>d,"bigint, number":(d,p)=>d,"bigint, BigNumber":(d,p)=>d,Fraction:function(p){return p.floor()},"Fraction, number":function(p,h){return p.floor(h)},"Fraction, BigNumber":function(p,h){return p.floor(h.toNumber())},"Unit, number, Unit":t.referToSelf(d=>function(p,h,g){var b=p.toNumeric(g);return g.multiply(d(b,h))}),"Unit, BigNumber, Unit":t.referToSelf(d=>(p,h,g)=>d(p,h.toNumber(),g)),"Array | Matrix, number | BigNumber, Unit":t.referToSelf(d=>(p,h,g)=>Xe(p,b=>d(b,h,g),!0)),"Array | Matrix | Unit, Unit":t.referToSelf(d=>(p,h)=>d(p,0,h)),"Array | Matrix":t.referToSelf(d=>p=>Xe(p,d,!0)),"Array, number | BigNumber":t.referToSelf(d=>(p,h)=>Xe(p,g=>d(g,h),!0)),"SparseMatrix, number | BigNumber":t.referToSelf(d=>(p,h)=>u(p,h,d,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(d=>(p,h)=>c(p,h,d,!1)),"number | Complex | Fraction | BigNumber, Array":t.referToSelf(d=>(p,h)=>c(a(h),p,d,!0).valueOf()),"number | Complex | Fraction | BigNumber, Matrix":t.referToSelf(d=>(p,h)=>i(p,0)?o(h.size(),h.storage()):h.storage()==="dense"?c(h,p,d,!0):l(h,p,d,!0))})}),V7="matAlgo02xDS0",U7=["typed","equalScalar"],Zn=I(V7,U7,e=>{var{typed:t,equalScalar:r}=e;return function(a,i,o,s){var u=a._data,l=a._size,c=a._datatype||a.getDataType(),f=i._values,m=i._index,d=i._ptr,p=i._size,h=i._datatype||i._data===void 0?i._datatype:i.getDataType();if(l.length!==p.length)throw new at(l.length,p.length);if(l[0]!==p[0]||l[1]!==p[1])throw new RangeError("Dimension mismatch. Matrix A ("+l+") must match Matrix B ("+p+")");if(!f)throw new Error("Cannot perform operation on Dense Matrix and Pattern Sparse Matrix");var g=l[0],b=l[1],D,y=r,w=0,x=o;typeof c=="string"&&c===h&&c!=="mixed"&&(D=c,y=t.find(r,[D,D]),w=t.convert(0,D),x=t.find(o,[D,D]));for(var v=[],N=[],C=[],A=0;A<b;A++){C[A]=N.length;for(var E=d[A],S=d[A+1],F=E;F<S;F++){var k=m[F],B=s?x(f[F],u[k][A]):x(u[k][A],f[F]);y(B,w)||(N.push(k),v.push(B))}}return C[b]=N.length,i.createSparseMatrix({values:v,index:N,ptr:C,size:[g,b],datatype:c===a._datatype&&h===i._datatype?D:void 0})}}),W7="matAlgo03xDSf",J7=["typed"],Wr=I(W7,J7,e=>{var{typed:t}=e;return function(n,a,i,o){var s=n._data,u=n._size,l=n._datatype||n.getDataType(),c=a._values,f=a._index,m=a._ptr,d=a._size,p=a._datatype||a._data===void 0?a._datatype:a.getDataType();if(u.length!==d.length)throw new at(u.length,d.length);if(u[0]!==d[0]||u[1]!==d[1])throw new RangeError("Dimension mismatch. Matrix A ("+u+") must match Matrix B ("+d+")");if(!c)throw new Error("Cannot perform operation on Dense Matrix and Pattern Sparse Matrix");var h=u[0],g=u[1],b,D=0,y=i;typeof l=="string"&&l===p&&l!=="mixed"&&(b=l,D=t.convert(0,b),y=t.find(i,[b,b]));for(var w=[],x=0;x<h;x++)w[x]=[];for(var v=[],N=[],C=0;C<g;C++){for(var A=C+1,E=m[C],S=m[C+1],F=E;F<S;F++){var k=f[F];v[k]=o?y(c[F],s[k][C]):y(s[k][C],c[F]),N[k]=A}for(var B=0;B<h;B++)N[B]===A?w[B][C]=v[B]:w[B][C]=o?y(D,s[B][C]):y(s[B][C],D)}return n.createDenseMatrix({data:w,size:[h,g],datatype:l===n._datatype&&p===a._datatype?b:void 0})}}),K7="matAlgo05xSfSf",Y7=["typed","equalScalar"],Dc=I(K7,Y7,e=>{var{typed:t,equalScalar:r}=e;return function(a,i,o){var s=a._values,u=a._index,l=a._ptr,c=a._size,f=a._datatype||a._data===void 0?a._datatype:a.getDataType(),m=i._values,d=i._index,p=i._ptr,h=i._size,g=i._datatype||i._data===void 0?i._datatype:i.getDataType();if(c.length!==h.length)throw new at(c.length,h.length);if(c[0]!==h[0]||c[1]!==h[1])throw new RangeError("Dimension mismatch. Matrix A ("+c+") must match Matrix B ("+h+")");var b=c[0],D=c[1],y,w=r,x=0,v=o;typeof f=="string"&&f===g&&f!=="mixed"&&(y=f,w=t.find(r,[y,y]),x=t.convert(0,y),v=t.find(o,[y,y]));var N=s&&m?[]:void 0,C=[],A=[],E=N?[]:void 0,S=N?[]:void 0,F=[],k=[],B,$,M,z;for($=0;$<D;$++){A[$]=C.length;var G=$+1;for(M=l[$],z=l[$+1];M<z;M++)B=u[M],C.push(B),F[B]=G,E&&(E[B]=s[M]);for(M=p[$],z=p[$+1];M<z;M++)B=d[M],F[B]!==G&&C.push(B),k[B]=G,S&&(S[B]=m[M]);if(N)for(M=A[$];M<C.length;){B=C[M];var R=F[B],Z=k[B];if(R===G||Z===G){var te=R===G?E[B]:x,P=Z===G?S[B]:x,V=v(te,P);w(V,x)?C.splice(M,1):(N.push(V),M++)}}}return A[D]=C.length,a.createSparseMatrix({values:N,index:C,ptr:A,size:[b,D],datatype:f===a._datatype&&g===i._datatype?y:void 0})}}),Z7="matAlgo13xDD",Q7=["typed"],X7=I(Z7,Q7,e=>{var{typed:t}=e;return function(a,i,o){var s=a._data,u=a._size,l=a._datatype,c=i._data,f=i._size,m=i._datatype,d=[];if(u.length!==f.length)throw new at(u.length,f.length);for(var p=0;p<u.length;p++){if(u[p]!==f[p])throw new RangeError("Dimension mismatch. Matrix A ("+u+") must match Matrix B ("+f+")");d[p]=u[p]}var h,g=o;typeof l=="string"&&l===m&&(h=l,g=t.find(o,[h,h]));var b=d.length>0?r(g,0,d,d[0],s,c):[];return a.createDenseMatrix({data:b,size:d,datatype:h})};function r(n,a,i,o,s,u){var l=[];if(a===i.length-1)for(var c=0;c<o;c++)l[c]=n(s[c],u[c]);else for(var f=0;f<o;f++)l[f]=r(n,a+1,i,i[a+1],s[f],u[f]);return l}});function hr(e,t){if(za(e.size(),t.size()))return[e,t];var r=bd(e.size(),t.size());return[e,t].map(n=>ez(n,r))}function ez(e,t){return za(e.size(),t)?e:e.create(Ri(e.valueOf(),t),e.datatype())}var tz="matrixAlgorithmSuite",rz=["typed","matrix"],$t=I(tz,rz,e=>{var{typed:t,matrix:r}=e,n=X7({typed:t}),a=Yn({typed:t});return function(o){var s=o.elop,u=o.SD||o.DS,l;s?(l={"DenseMatrix, DenseMatrix":(d,p)=>n(...hr(d,p),s),"Array, Array":(d,p)=>n(...hr(r(d),r(p)),s).valueOf(),"Array, DenseMatrix":(d,p)=>n(...hr(r(d),p),s),"DenseMatrix, Array":(d,p)=>n(...hr(d,r(p)),s)},o.SS&&(l["SparseMatrix, SparseMatrix"]=(d,p)=>o.SS(...hr(d,p),s,!1)),o.DS&&(l["DenseMatrix, SparseMatrix"]=(d,p)=>o.DS(...hr(d,p),s,!1),l["Array, SparseMatrix"]=(d,p)=>o.DS(...hr(r(d),p),s,!1)),u&&(l["SparseMatrix, DenseMatrix"]=(d,p)=>u(...hr(p,d),s,!0),l["SparseMatrix, Array"]=(d,p)=>u(...hr(r(p),d),s,!0))):(l={"DenseMatrix, DenseMatrix":t.referToSelf(d=>(p,h)=>n(...hr(p,h),d)),"Array, Array":t.referToSelf(d=>(p,h)=>n(...hr(r(p),r(h)),d).valueOf()),"Array, DenseMatrix":t.referToSelf(d=>(p,h)=>n(...hr(r(p),h),d)),"DenseMatrix, Array":t.referToSelf(d=>(p,h)=>n(...hr(p,r(h)),d))},o.SS&&(l["SparseMatrix, SparseMatrix"]=t.referToSelf(d=>(p,h)=>o.SS(...hr(p,h),d,!1))),o.DS&&(l["DenseMatrix, SparseMatrix"]=t.referToSelf(d=>(p,h)=>o.DS(...hr(p,h),d,!1)),l["Array, SparseMatrix"]=t.referToSelf(d=>(p,h)=>o.DS(...hr(r(p),h),d,!1))),u&&(l["SparseMatrix, DenseMatrix"]=t.referToSelf(d=>(p,h)=>u(...hr(h,p),d,!0)),l["SparseMatrix, Array"]=t.referToSelf(d=>(p,h)=>u(...hr(r(h),p),d,!0))));var c=o.scalar||"any",f=o.Ds||o.Ss;f&&(s?(l["DenseMatrix,"+c]=(d,p)=>a(d,p,s,!1),l[c+", DenseMatrix"]=(d,p)=>a(p,d,s,!0),l["Array,"+c]=(d,p)=>a(r(d),p,s,!1).valueOf(),l[c+", Array"]=(d,p)=>a(r(p),d,s,!0).valueOf()):(l["DenseMatrix,"+c]=t.referToSelf(d=>(p,h)=>a(p,h,d,!1)),l[c+", DenseMatrix"]=t.referToSelf(d=>(p,h)=>a(h,p,d,!0)),l["Array,"+c]=t.referToSelf(d=>(p,h)=>a(r(p),h,d,!1).valueOf()),l[c+", Array"]=t.referToSelf(d=>(p,h)=>a(r(h),p,d,!0).valueOf())));var m=o.sS!==void 0?o.sS:o.Ss;return s?(o.Ss&&(l["SparseMatrix,"+c]=(d,p)=>o.Ss(d,p,s,!1)),m&&(l[c+", SparseMatrix"]=(d,p)=>m(p,d,s,!0))):(o.Ss&&(l["SparseMatrix,"+c]=t.referToSelf(d=>(p,h)=>o.Ss(p,h,d,!1))),m&&(l[c+", SparseMatrix"]=t.referToSelf(d=>(p,h)=>m(h,p,d,!0)))),s&&s.signatures&&Zw(l,s.signatures),l}}),I0="mod",nz=["typed","config","round","matrix","equalScalar","zeros","DenseMatrix","concat"],g2=I(I0,nz,e=>{var{typed:t,config:r,round:n,matrix:a,equalScalar:i,zeros:o,DenseMatrix:s,concat:u}=e,l=p2({typed:t,config:r,round:n,matrix:a,equalScalar:i,zeros:o,DenseMatrix:s}),c=Zn({typed:t,equalScalar:i}),f=Wr({typed:t}),m=Dc({typed:t,equalScalar:i}),d=Sr({typed:t,equalScalar:i}),p=sr({typed:t,DenseMatrix:s}),h=$t({typed:t,matrix:a,concat:u});return t(I0,{"number, number":g,"BigNumber, BigNumber":function(D,y){return y.isZero()?D:D.sub(y.mul(l(D.div(y))))},"bigint, bigint":function(D,y){if(y===0n)return D;if(D<0){var w=D%y;return w===0n?w:w+y}return D%y},"Fraction, Fraction":function(D,y){return y.equals(0)?D:D.sub(y.mul(l(D.div(y))))}},h({SS:m,DS:f,SD:c,Ss:d,sS:p}));function g(b,D){return D===0?b:b-D*l(b/D)}}),az="matAlgo01xDSid",iz=["typed"],gi=I(az,iz,e=>{var{typed:t}=e;return function(n,a,i,o){var s=n._data,u=n._size,l=n._datatype||n.getDataType(),c=a._values,f=a._index,m=a._ptr,d=a._size,p=a._datatype||a._data===void 0?a._datatype:a.getDataType();if(u.length!==d.length)throw new at(u.length,d.length);if(u[0]!==d[0]||u[1]!==d[1])throw new RangeError("Dimension mismatch. Matrix A ("+u+") must match Matrix B ("+d+")");if(!c)throw new Error("Cannot perform operation on Dense Matrix and Pattern Sparse Matrix");var h=u[0],g=u[1],b=typeof l=="string"&&l!=="mixed"&&l===p?l:void 0,D=b?t.find(i,[b,b]):i,y,w,x=[];for(y=0;y<h;y++)x[y]=[];var v=[],N=[];for(w=0;w<g;w++){for(var C=w+1,A=m[w],E=m[w+1],S=A;S<E;S++)y=f[S],v[y]=o?D(c[S],s[y][w]):D(s[y][w],c[S]),N[y]=C;for(y=0;y<h;y++)N[y]===C?x[y][w]=v[y]:x[y][w]=s[y][w]}return n.createDenseMatrix({data:x,size:[h,g],datatype:l===n._datatype&&p===a._datatype?b:void 0})}}),oz="matAlgo04xSidSid",sz=["typed","equalScalar"],Nd=I(oz,sz,e=>{var{typed:t,equalScalar:r}=e;return function(a,i,o){var s=a._values,u=a._index,l=a._ptr,c=a._size,f=a._datatype||a._data===void 0?a._datatype:a.getDataType(),m=i._values,d=i._index,p=i._ptr,h=i._size,g=i._datatype||i._data===void 0?i._datatype:i.getDataType();if(c.length!==h.length)throw new at(c.length,h.length);if(c[0]!==h[0]||c[1]!==h[1])throw new RangeError("Dimension mismatch. Matrix A ("+c+") must match Matrix B ("+h+")");var b=c[0],D=c[1],y,w=r,x=0,v=o;typeof f=="string"&&f===g&&f!=="mixed"&&(y=f,w=t.find(r,[y,y]),x=t.convert(0,y),v=t.find(o,[y,y]));var N=s&&m?[]:void 0,C=[],A=[],E=s&&m?[]:void 0,S=s&&m?[]:void 0,F=[],k=[],B,$,M,z,G;for($=0;$<D;$++){A[$]=C.length;var R=$+1;for(z=l[$],G=l[$+1],M=z;M<G;M++)B=u[M],C.push(B),F[B]=R,E&&(E[B]=s[M]);for(z=p[$],G=p[$+1],M=z;M<G;M++)if(B=d[M],F[B]===R){if(E){var Z=v(E[B],m[M]);w(Z,x)?F[B]=null:E[B]=Z}}else C.push(B),k[B]=R,S&&(S[B]=m[M]);if(E&&S)for(M=A[$];M<C.length;)B=C[M],F[B]===R?(N[M]=E[B],M++):k[B]===R?(N[M]=S[B],M++):C.splice(M,1)}return A[D]=C.length,a.createSparseMatrix({values:N,index:C,ptr:A,size:[b,D],datatype:f===a._datatype&&g===i._datatype?y:void 0})}}),uz="matAlgo10xSids",lz=["typed","DenseMatrix"],Xi=I(uz,lz,e=>{var{typed:t,DenseMatrix:r}=e;return function(a,i,o,s){var u=a._values,l=a._index,c=a._ptr,f=a._size,m=a._datatype;if(!u)throw new Error("Cannot perform operation on Pattern Sparse Matrix and Scalar value");var d=f[0],p=f[1],h,g=o;typeof m=="string"&&(h=m,i=t.convert(i,h),g=t.find(o,[h,h]));for(var b=[],D=[],y=[],w=0;w<p;w++){for(var x=w+1,v=c[w],N=c[w+1],C=v;C<N;C++){var A=l[C];D[A]=u[C],y[A]=x}for(var E=0;E<d;E++)w===0&&(b[E]=[]),y[E]===x?b[E][w]=s?g(i,D[E]):g(D[E],i):b[E][w]=i}return new r({data:b,size:[d,p],datatype:h})}});function eo(e,t,r,n){if(!(this instanceof eo))throw new SyntaxError("Constructor must be called with the new operator");this.fn=e,this.count=t,this.min=r,this.max=n,this.message="Wrong number of arguments in function "+e+" ("+t+" provided, "+r+(n!=null?"-"+n:"")+" expected)",this.stack=new Error().stack}eo.prototype=new Error;eo.prototype.constructor=Error;eo.prototype.name="ArgumentsError";eo.prototype.isArgumentsError=!0;var z0="gcd",cz=["typed","config","round","matrix","equalScalar","zeros","BigNumber","DenseMatrix","concat"],Mf="number | BigNumber | Fraction | Matrix | Array",fz="".concat(Mf,", ").concat(Mf,", ...").concat(Mf);function j0(e){return!e.some(t=>Array.isArray(t))}var mz=I(z0,cz,e=>{var{typed:t,matrix:r,config:n,round:a,equalScalar:i,zeros:o,BigNumber:s,DenseMatrix:u,concat:l}=e,c=g2({typed:t,config:n,round:a,matrix:r,equalScalar:i,zeros:o,DenseMatrix:u,concat:l}),f=gi({typed:t}),m=Nd({typed:t,equalScalar:i}),d=Xi({typed:t,DenseMatrix:u}),p=$t({typed:t,matrix:r,concat:l});return t(z0,{"number, number":h,"BigNumber, BigNumber":g,"Fraction, Fraction":(b,D)=>b.gcd(D)},p({SS:m,DS:f,Ss:d}),{[fz]:t.referToSelf(b=>(D,y,w)=>{for(var x=b(D,y),v=0;v<w.length;v++)x=b(x,w[v]);return x}),Array:t.referToSelf(b=>D=>{if(D.length===1&&Array.isArray(D[0])&&j0(D[0]))return b(...D[0]);if(j0(D))return b(...D);throw new eo("gcd() supports only 1d matrices!")}),Matrix:t.referToSelf(b=>D=>b(D.toArray()))});function h(b,D){if(!Oe(b)||!Oe(D))throw new Error("Parameters in function gcd must be integer numbers");for(var y;D!==0;)y=c(b,D),b=D,D=y;return b<0?-b:b}function g(b,D){if(!b.isInt()||!D.isInt())throw new Error("Parameters in function gcd must be integer numbers");for(var y=new s(0);!D.isZero();){var w=c(b,D);b=D,D=w}return b.lt(y)?b.neg():b}}),dz="matAlgo06xS0S0",hz=["typed","equalScalar"],Nc=I(dz,hz,e=>{var{typed:t,equalScalar:r}=e;return function(a,i,o){var s=a._values,u=a._size,l=a._datatype||a._data===void 0?a._datatype:a.getDataType(),c=i._values,f=i._size,m=i._datatype||i._data===void 0?i._datatype:i.getDataType();if(u.length!==f.length)throw new at(u.length,f.length);if(u[0]!==f[0]||u[1]!==f[1])throw new RangeError("Dimension mismatch. Matrix A ("+u+") must match Matrix B ("+f+")");var d=u[0],p=u[1],h,g=r,b=0,D=o;typeof l=="string"&&l===m&&l!=="mixed"&&(h=l,g=t.find(r,[h,h]),b=t.convert(0,h),D=t.find(o,[h,h]));for(var y=s&&c?[]:void 0,w=[],x=[],v=y?[]:void 0,N=[],C=[],A=0;A<p;A++){x[A]=w.length;var E=A+1;if(u0(a,A,N,v,C,E,w,D),u0(i,A,N,v,C,E,w,D),v)for(var S=x[A];S<w.length;){var F=w[S];if(C[F]===E){var k=v[F];g(k,b)?w.splice(S,1):(y.push(k),S++)}else w.splice(S,1)}else for(var B=x[A];B<w.length;){var $=w[B];C[$]!==E?w.splice(B,1):B++}}return x[p]=w.length,a.createSparseMatrix({values:y,index:w,ptr:x,size:[d,p],datatype:l===a._datatype&&m===i._datatype?h:void 0})}}),q0="lcm",pz=["typed","matrix","equalScalar","concat"],gz=I(q0,pz,e=>{var{typed:t,matrix:r,equalScalar:n,concat:a}=e,i=Zn({typed:t,equalScalar:n}),o=Nc({typed:t,equalScalar:n}),s=Sr({typed:t,equalScalar:n}),u=$t({typed:t,matrix:r,concat:a}),l="number | BigNumber | Fraction | Matrix | Array",c={};return c["".concat(l,", ").concat(l,", ...").concat(l)]=t.referToSelf(m=>(d,p,h)=>{for(var g=m(d,p),b=0;b<h.length;b++)g=m(g,h[b]);return g}),t(q0,{"number, number":Bx,"BigNumber, BigNumber":f,"Fraction, Fraction":(m,d)=>m.lcm(d)},u({SS:o,DS:i,Ss:s}),c);function f(m,d){if(!m.isInt()||!d.isInt())throw new Error("Parameters in function lcm must be integer numbers");if(m.isZero())return m;if(d.isZero())return d;for(var p=m.times(d);!d.isZero();){var h=d;d=m.mod(h),m=h}return p.div(m).abs()}});function Ad(e,t,r,n){return function(a){if(a>0||r.predictable){if(a<=0)return NaN;var i=a.toString(16),o=i.substring(0,15);return e*(i.length-o.length)+t(+("0x"+o))}return n(a.toNumber())}}var R0="log10",vz=["typed","config","Complex"],yz=Ul(16),bz=I(R0,vz,e=>{var{typed:t,config:r,Complex:n}=e;function a(o){return o.log().div(Math.LN10)}function i(o){return a(new n(o,0))}return t(R0,{number:function(s){return s>=0||r.predictable?Ul(s):i(s)},bigint:Ad(yz,Ul,r,i),Complex:a,BigNumber:function(s){return!s.isNegative()||r.predictable?s.log():i(s.toNumber())},"Array | Matrix":t.referToSelf(o=>s=>Xe(s,o))})}),L0="log2",wz=["typed","config","Complex"],xz=I(L0,wz,e=>{var{typed:t,config:r,Complex:n}=e;function a(o){return i(new n(o,0))}return t(L0,{number:function(s){return s>=0||r.predictable?Om(s):a(s)},bigint:Ad(4,Om,r,a),Complex:i,BigNumber:function(s){return!s.isNegative()||r.predictable?s.log(2):a(s.toNumber())},"Array | Matrix":t.referToSelf(o=>s=>Xe(s,o))});function i(o){var s=Math.sqrt(o.re*o.re+o.im*o.im);return new n(Math.log2?Math.log2(s):Math.log(s)/Math.LN2,Math.atan2(o.im,o.re)/Math.LN2)}}),Dz="multiplyScalar",Nz=["typed"],Az=I(Dz,Nz,e=>{var{typed:t}=e;return t("multiplyScalar",{"number, number":Mx,"Complex, Complex":function(n,a){return n.mul(a)},"BigNumber, BigNumber":function(n,a){return n.times(a)},"bigint, bigint":function(n,a){return n*a},"Fraction, Fraction":function(n,a){return n.mul(a)},"number | Fraction | BigNumber | Complex, Unit":(r,n)=>n.multiply(r),"Unit, number | Fraction | BigNumber | Complex | Unit":(r,n)=>r.multiply(n)})}),H0="multiply",Cz=["typed","matrix","addScalar","multiplyScalar","equalScalar","dot"],Ez=I(H0,Cz,e=>{var{typed:t,matrix:r,addScalar:n,multiplyScalar:a,equalScalar:i,dot:o}=e,s=Sr({typed:t,equalScalar:i}),u=Yn({typed:t});function l(x,v){switch(x.length){case 1:switch(v.length){case 1:if(x[0]!==v[0])throw new RangeError("Dimension mismatch in multiplication. Vectors must have the same length");break;case 2:if(x[0]!==v[0])throw new RangeError("Dimension mismatch in multiplication. Vector length ("+x[0]+") must match Matrix rows ("+v[0]+")");break;default:throw new Error("Can only multiply a 1 or 2 dimensional matrix (Matrix B has "+v.length+" dimensions)")}break;case 2:switch(v.length){case 1:if(x[1]!==v[0])throw new RangeError("Dimension mismatch in multiplication. Matrix columns ("+x[1]+") must match Vector length ("+v[0]+")");break;case 2:if(x[1]!==v[0])throw new RangeError("Dimension mismatch in multiplication. Matrix A columns ("+x[1]+") must match Matrix B rows ("+v[0]+")");break;default:throw new Error("Can only multiply a 1 or 2 dimensional matrix (Matrix B has "+v.length+" dimensions)")}break;default:throw new Error("Can only multiply a 1 or 2 dimensional matrix (Matrix A has "+x.length+" dimensions)")}}function c(x,v,N){if(N===0)throw new Error("Cannot multiply two empty vectors");return o(x,v)}function f(x,v){if(v.storage()!=="dense")throw new Error("Support for SparseMatrix not implemented");return m(x,v)}function m(x,v){var N=x._data,C=x._size,A=x._datatype||x.getDataType(),E=v._data,S=v._size,F=v._datatype||v.getDataType(),k=C[0],B=S[1],$,M=n,z=a;A&&F&&A===F&&typeof A=="string"&&A!=="mixed"&&($=A,M=t.find(n,[$,$]),z=t.find(a,[$,$]));for(var G=[],R=0;R<B;R++){for(var Z=z(N[0],E[0][R]),te=1;te<k;te++)Z=M(Z,z(N[te],E[te][R]));G[R]=Z}return x.createDenseMatrix({data:G,size:[B],datatype:A===x._datatype&&F===v._datatype?$:void 0})}var d=t("_multiplyMatrixVector",{"DenseMatrix, any":h,"SparseMatrix, any":D}),p=t("_multiplyMatrixMatrix",{"DenseMatrix, DenseMatrix":g,"DenseMatrix, SparseMatrix":b,"SparseMatrix, DenseMatrix":y,"SparseMatrix, SparseMatrix":w});function h(x,v){var N=x._data,C=x._size,A=x._datatype||x.getDataType(),E=v._data,S=v._datatype||v.getDataType(),F=C[0],k=C[1],B,$=n,M=a;A&&S&&A===S&&typeof A=="string"&&A!=="mixed"&&(B=A,$=t.find(n,[B,B]),M=t.find(a,[B,B]));for(var z=[],G=0;G<F;G++){for(var R=N[G],Z=M(R[0],E[0]),te=1;te<k;te++)Z=$(Z,M(R[te],E[te]));z[G]=Z}return x.createDenseMatrix({data:z,size:[F],datatype:A===x._datatype&&S===v._datatype?B:void 0})}function g(x,v){var N=x._data,C=x._size,A=x._datatype||x.getDataType(),E=v._data,S=v._size,F=v._datatype||v.getDataType(),k=C[0],B=C[1],$=S[1],M,z=n,G=a;A&&F&&A===F&&typeof A=="string"&&A!=="mixed"&&A!=="mixed"&&(M=A,z=t.find(n,[M,M]),G=t.find(a,[M,M]));for(var R=[],Z=0;Z<k;Z++){var te=N[Z];R[Z]=[];for(var P=0;P<$;P++){for(var V=G(te[0],E[0][P]),_=1;_<B;_++)V=z(V,G(te[_],E[_][P]));R[Z][P]=V}}return x.createDenseMatrix({data:R,size:[k,$],datatype:A===x._datatype&&F===v._datatype?M:void 0})}function b(x,v){var N=x._data,C=x._size,A=x._datatype||x.getDataType(),E=v._values,S=v._index,F=v._ptr,k=v._size,B=v._datatype||v._data===void 0?v._datatype:v.getDataType();if(!E)throw new Error("Cannot multiply Dense Matrix times Pattern only Matrix");var $=C[0],M=k[1],z,G=n,R=a,Z=i,te=0;A&&B&&A===B&&typeof A=="string"&&A!=="mixed"&&(z=A,G=t.find(n,[z,z]),R=t.find(a,[z,z]),Z=t.find(i,[z,z]),te=t.convert(0,z));for(var P=[],V=[],_=[],ce=v.createSparseMatrix({values:P,index:V,ptr:_,size:[$,M],datatype:A===x._datatype&&B===v._datatype?z:void 0}),ae=0;ae<M;ae++){_[ae]=V.length;var ie=F[ae],j=F[ae+1];if(j>ie)for(var H=0,J=0;J<$;J++){for(var Q=J+1,X=void 0,ue=ie;ue<j;ue++){var se=S[ue];H!==Q?(X=R(N[J][se],E[ue]),H=Q):X=G(X,R(N[J][se],E[ue]))}H===Q&&!Z(X,te)&&(V.push(J),P.push(X))}}return _[M]=V.length,ce}function D(x,v){var N=x._values,C=x._index,A=x._ptr,E=x._datatype||x._data===void 0?x._datatype:x.getDataType();if(!N)throw new Error("Cannot multiply Pattern only Matrix times Dense Matrix");var S=v._data,F=v._datatype||v.getDataType(),k=x._size[0],B=v._size[0],$=[],M=[],z=[],G,R=n,Z=a,te=i,P=0;E&&F&&E===F&&typeof E=="string"&&E!=="mixed"&&(G=E,R=t.find(n,[G,G]),Z=t.find(a,[G,G]),te=t.find(i,[G,G]),P=t.convert(0,G));var V=[],_=[];z[0]=0;for(var ce=0;ce<B;ce++){var ae=S[ce];if(!te(ae,P))for(var ie=A[ce],j=A[ce+1],H=ie;H<j;H++){var J=C[H];_[J]?V[J]=R(V[J],Z(ae,N[H])):(_[J]=!0,M.push(J),V[J]=Z(ae,N[H]))}}for(var Q=M.length,X=0;X<Q;X++){var ue=M[X];$[X]=V[ue]}return z[1]=M.length,x.createSparseMatrix({values:$,index:M,ptr:z,size:[k,1],datatype:E===x._datatype&&F===v._datatype?G:void 0})}function y(x,v){var N=x._values,C=x._index,A=x._ptr,E=x._datatype||x._data===void 0?x._datatype:x.getDataType();if(!N)throw new Error("Cannot multiply Pattern only Matrix times Dense Matrix");var S=v._data,F=v._datatype||v.getDataType(),k=x._size[0],B=v._size[0],$=v._size[1],M,z=n,G=a,R=i,Z=0;E&&F&&E===F&&typeof E=="string"&&E!=="mixed"&&(M=E,z=t.find(n,[M,M]),G=t.find(a,[M,M]),R=t.find(i,[M,M]),Z=t.convert(0,M));for(var te=[],P=[],V=[],_=x.createSparseMatrix({values:te,index:P,ptr:V,size:[k,$],datatype:E===x._datatype&&F===v._datatype?M:void 0}),ce=[],ae=[],ie=0;ie<$;ie++){V[ie]=P.length;for(var j=ie+1,H=0;H<B;H++){var J=S[H][ie];if(!R(J,Z))for(var Q=A[H],X=A[H+1],ue=Q;ue<X;ue++){var se=C[ue];ae[se]!==j?(ae[se]=j,P.push(se),ce[se]=G(J,N[ue])):ce[se]=z(ce[se],G(J,N[ue]))}}for(var we=V[ie],Me=P.length,ke=we;ke<Me;ke++){var Se=P[ke];te[ke]=ce[Se]}}return V[$]=P.length,_}function w(x,v){var N=x._values,C=x._index,A=x._ptr,E=x._datatype||x._data===void 0?x._datatype:x.getDataType(),S=v._values,F=v._index,k=v._ptr,B=v._datatype||v._data===void 0?v._datatype:v.getDataType(),$=x._size[0],M=v._size[1],z=N&&S,G,R=n,Z=a;E&&B&&E===B&&typeof E=="string"&&E!=="mixed"&&(G=E,R=t.find(n,[G,G]),Z=t.find(a,[G,G]));for(var te=z?[]:void 0,P=[],V=[],_=x.createSparseMatrix({values:te,index:P,ptr:V,size:[$,M],datatype:E===x._datatype&&B===v._datatype?G:void 0}),ce=z?[]:void 0,ae=[],ie,j,H,J,Q,X,ue,se,we=0;we<M;we++){V[we]=P.length;var Me=we+1;for(Q=k[we],X=k[we+1],J=Q;J<X;J++)if(se=F[J],z)for(j=A[se],H=A[se+1],ie=j;ie<H;ie++)ue=C[ie],ae[ue]!==Me?(ae[ue]=Me,P.push(ue),ce[ue]=Z(S[J],N[ie])):ce[ue]=R(ce[ue],Z(S[J],N[ie]));else for(j=A[se],H=A[se+1],ie=j;ie<H;ie++)ue=C[ie],ae[ue]!==Me&&(ae[ue]=Me,P.push(ue));if(z)for(var ke=V[we],Se=P.length,$e=ke;$e<Se;$e++){var q=P[$e];te[$e]=ce[q]}}return V[M]=P.length,_}return t(H0,a,{"Array, Array":t.referTo("Matrix, Matrix",x=>(v,N)=>{l(Ue(v),Ue(N));var C=x(r(v),r(N));return Re(C)?C.valueOf():C}),"Matrix, Matrix":function(v,N){var C=v.size(),A=N.size();return l(C,A),C.length===1?A.length===1?c(v,N,C[0]):f(v,N):A.length===1?d(v,N):p(v,N)},"Matrix, Array":t.referTo("Matrix,Matrix",x=>(v,N)=>x(v,r(N))),"Array, Matrix":t.referToSelf(x=>(v,N)=>x(r(v,N.storage()),N)),"SparseMatrix, any":function(v,N){return s(v,N,a,!1)},"DenseMatrix, any":function(v,N){return u(v,N,a,!1)},"any, SparseMatrix":function(v,N){return s(N,v,a,!0)},"any, DenseMatrix":function(v,N){return u(N,v,a,!0)},"Array, any":function(v,N){return u(r(v),N,a,!1).valueOf()},"any, Array":function(v,N){return u(r(N),v,a,!0).valueOf()},"any, any":a,"any, any, ...any":t.referToSelf(x=>(v,N,C)=>{for(var A=x(v,N),E=0;E<C.length;E++)A=x(A,C[E]);return A})})}),G0="nthRoot",Sz=["typed","matrix","equalScalar","BigNumber","concat"],Tz=I(G0,Sz,e=>{var{typed:t,matrix:r,equalScalar:n,BigNumber:a,concat:i}=e,o=gi({typed:t}),s=Zn({typed:t,equalScalar:n}),u=Nc({typed:t,equalScalar:n}),l=Sr({typed:t,equalScalar:n}),c=$t({typed:t,matrix:r,concat:i});function f(){throw new Error("Complex number not supported in function nthRoot. Use nthRoots instead.")}return t(G0,{number:f0,"number, number":f0,BigNumber:d=>m(d,new a(2)),"BigNumber, BigNumber":m,Complex:f,"Complex, number":f,Array:t.referTo("DenseMatrix,number",d=>p=>d(r(p),2).valueOf()),DenseMatrix:t.referTo("DenseMatrix,number",d=>p=>d(p,2)),SparseMatrix:t.referTo("SparseMatrix,number",d=>p=>d(p,2)),"SparseMatrix, SparseMatrix":t.referToSelf(d=>(p,h)=>{if(h.density()===1)return u(p,h,d);throw new Error("Root must be non-zero")}),"DenseMatrix, SparseMatrix":t.referToSelf(d=>(p,h)=>{if(h.density()===1)return o(p,h,d,!1);throw new Error("Root must be non-zero")}),"Array, SparseMatrix":t.referTo("DenseMatrix,SparseMatrix",d=>(p,h)=>d(r(p),h)),"number | BigNumber, SparseMatrix":t.referToSelf(d=>(p,h)=>{if(h.density()===1)return l(h,p,d,!0);throw new Error("Root must be non-zero")})},c({scalar:"number | BigNumber",SD:s,Ss:l,sS:!1}));function m(d,p){var h=a.precision,g=a.clone({precision:h+2}),b=new a(0),D=new g(1),y=p.isNegative();if(y&&(p=p.neg()),p.isZero())throw new Error("Root must be non-zero");if(d.isNegative()&&!p.abs().mod(2).equals(1))throw new Error("Root must be odd when a is negative.");if(d.isZero())return y?new g(1/0):0;if(!d.isFinite())return y?b:d;var w=d.abs().pow(D.div(p));return w=d.isNeg()?w.neg():w,new a((y?D.div(w):w).toPrecision(h))}}),V0="sign",Mz=["typed","BigNumber","Fraction","complex"],Fz=I(V0,Mz,e=>{var{typed:t,BigNumber:r,complex:n,Fraction:a}=e;return t(V0,{number:$m,Complex:function(o){return o.im===0?n($m(o.re)):o.sign()},BigNumber:function(o){return new r(o.cmp(0))},bigint:function(o){return o>0n?1n:o<0n?-1n:0n},Fraction:function(o){return o.n===0n?new a(0):new a(o.s)},"Array | Matrix":t.referToSelf(i=>o=>Xe(o,i,!0)),Unit:t.referToSelf(i=>o=>{if(!o._isDerived()&&o.units[0].unit.offset!==0)throw new TypeError("sign is ambiguous for units with offset");return t.find(i,o.valueType())(o.value)})})}),Pz="sqrt",kz=["config","typed","Complex"],Oz=I(Pz,kz,e=>{var{config:t,typed:r,Complex:n}=e;return r("sqrt",{number:a,Complex:function(o){return o.sqrt()},BigNumber:function(o){return!o.isNegative()||t.predictable?o.sqrt():a(o.toNumber())},Unit:function(o){return o.pow(.5)}});function a(i){return isNaN(i)?NaN:i>=0||t.predictable?Math.sqrt(i):new n(i,0).sqrt()}}),U0="square",$z=["typed"],Bz=I(U0,$z,e=>{var{typed:t}=e;return t(U0,{number:_x,Complex:function(n){return n.mul(n)},BigNumber:function(n){return n.times(n)},bigint:function(n){return n*n},Fraction:function(n){return n.mul(n)},Unit:function(n){return n.pow(2)}})}),W0="subtract",_z=["typed","matrix","equalScalar","subtractScalar","unaryMinus","DenseMatrix","concat"],Iz=I(W0,_z,e=>{var{typed:t,matrix:r,equalScalar:n,subtractScalar:a,unaryMinus:i,DenseMatrix:o,concat:s}=e,u=gi({typed:t}),l=Wr({typed:t}),c=Dc({typed:t,equalScalar:n}),f=Xi({typed:t,DenseMatrix:o}),m=sr({typed:t,DenseMatrix:o}),d=$t({typed:t,matrix:r,concat:s});return t(W0,{"any, any":a},d({elop:a,SS:c,DS:u,SD:l,Ss:m,sS:f}))}),J0="xgcd",zz=["typed","config","matrix","BigNumber"],jz=I(J0,zz,e=>{var{typed:t,config:r,matrix:n,BigNumber:a}=e;return t(J0,{"number, number":function(s,u){var l=Ix(s,u);return r.matrix==="Array"?l:n(l)},"BigNumber, BigNumber":i});function i(o,s){var u,l,c,f=new a(0),m=new a(1),d=f,p=m,h=m,g=f;if(!o.isInt()||!s.isInt())throw new Error("Parameters in function xgcd must be integer numbers");for(;!s.isZero();)l=o.div(s).floor(),c=o.mod(s),u=d,d=p.minus(l.times(d)),p=u,u=h,h=g.minus(l.times(h)),g=u,o=s,s=c;var b;return o.lt(f)?b=[o.neg(),p.neg(),g.neg()]:b=[o,o.isZero()?0:p,g],r.matrix==="Array"?b:n(b)}}),K0="invmod",qz=["typed","config","BigNumber","xgcd","equal","smaller","mod","add","isInteger"],Rz=I(K0,qz,e=>{var{typed:t,config:r,BigNumber:n,xgcd:a,equal:i,smaller:o,mod:s,add:u,isInteger:l}=e;return t(K0,{"number, number":c,"BigNumber, BigNumber":c});function c(f,m){if(!l(f)||!l(m))throw new Error("Parameters in function invmod must be integer numbers");if(f=s(f,m),i(m,0))throw new Error("Divisor must be non zero");var d=a(f,m);d=d.valueOf();var[p,h]=d;return i(p,n(1))?(h=s(h,m),o(h,n(0))&&(h=u(h,m)),h):NaN}}),Lz="matAlgo09xS0Sf",Hz=["typed","equalScalar"],v2=I(Lz,Hz,e=>{var{typed:t,equalScalar:r}=e;return function(a,i,o){var s=a._values,u=a._index,l=a._ptr,c=a._size,f=a._datatype||a._data===void 0?a._datatype:a.getDataType(),m=i._values,d=i._index,p=i._ptr,h=i._size,g=i._datatype||i._data===void 0?i._datatype:i.getDataType();if(c.length!==h.length)throw new at(c.length,h.length);if(c[0]!==h[0]||c[1]!==h[1])throw new RangeError("Dimension mismatch. Matrix A ("+c+") must match Matrix B ("+h+")");var b=c[0],D=c[1],y,w=r,x=0,v=o;typeof f=="string"&&f===g&&f!=="mixed"&&(y=f,w=t.find(r,[y,y]),x=t.convert(0,y),v=t.find(o,[y,y]));var N=s&&m?[]:void 0,C=[],A=[],E=N?[]:void 0,S=[],F,k,B,$,M;for(k=0;k<D;k++){A[k]=C.length;var z=k+1;if(E)for($=p[k],M=p[k+1],B=$;B<M;B++)F=d[B],S[F]=z,E[F]=m[B];for($=l[k],M=l[k+1],B=$;B<M;B++)if(F=u[B],E){var G=S[F]===z?E[F]:x,R=v(s[B],G);w(R,x)||(C.push(F),N.push(R))}else C.push(F)}return A[D]=C.length,a.createSparseMatrix({values:N,index:C,ptr:A,size:[b,D],datatype:f===a._datatype&&g===i._datatype?y:void 0})}}),Y0="dotMultiply",Gz=["typed","matrix","equalScalar","multiplyScalar","concat"],Vz=I(Y0,Gz,e=>{var{typed:t,matrix:r,equalScalar:n,multiplyScalar:a,concat:i}=e,o=Zn({typed:t,equalScalar:n}),s=v2({typed:t,equalScalar:n}),u=Sr({typed:t,equalScalar:n}),l=$t({typed:t,matrix:r,concat:i});return t(Y0,l({elop:a,SS:s,DS:o,Ss:u}))});function Uz(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw new Error("Integers expected in function bitAnd");var r=e.constructor;if(e.isNaN()||t.isNaN())return new r(NaN);if(e.isZero()||t.eq(-1)||e.eq(t))return e;if(t.isZero()||e.eq(-1))return t;if(!e.isFinite()||!t.isFinite()){if(!e.isFinite()&&!t.isFinite())return e.isNegative()===t.isNegative()?e:new r(0);if(!e.isFinite())return t.isNegative()?e:e.isNegative()?new r(0):t;if(!t.isFinite())return e.isNegative()?t:t.isNegative()?new r(0):e}return Cd(e,t,function(n,a){return n&a})}function Rs(e){if(e.isFinite()&&!e.isInteger())throw new Error("Integer expected in function bitNot");var t=e.constructor,r=t.precision;t.config({precision:1e9});var n=e.plus(new t(1));return n.s=-n.s||null,t.config({precision:r}),n}function Wz(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw new Error("Integers expected in function bitOr");var r=e.constructor;if(e.isNaN()||t.isNaN())return new r(NaN);var n=new r(-1);return e.isZero()||t.eq(n)||e.eq(t)?t:t.isZero()||e.eq(n)?e:!e.isFinite()||!t.isFinite()?!e.isFinite()&&!e.isNegative()&&t.isNegative()||e.isNegative()&&!t.isNegative()&&!t.isFinite()?n:e.isNegative()&&t.isNegative()?e.isFinite()?e:t:e.isFinite()?t:e:Cd(e,t,function(a,i){return a|i})}function Cd(e,t,r){var n=e.constructor,a,i,o=+(e.s<0),s=+(t.s<0);if(o){a=Zu(Rs(e));for(var u=0;u<a.length;++u)a[u]^=1}else a=Zu(e);if(s){i=Zu(Rs(t));for(var l=0;l<i.length;++l)i[l]^=1}else i=Zu(t);var c,f,m;a.length<=i.length?(c=a,f=i,m=o):(c=i,f=a,m=s);var d=c.length,p=f.length,h=r(o,s)^1,g=new n(h^1),b=new n(1),D=new n(2),y=n.precision;for(n.config({precision:1e9});d>0;)r(c[--d],f[--p])===h&&(g=g.plus(b)),b=b.times(D);for(;p>0;)r(m,f[--p])===h&&(g=g.plus(b)),b=b.times(D);return n.config({precision:y}),h===0&&(g.s=-g.s),g}function Zu(e){for(var t=e.d,r=t[0]+"",n=1;n<t.length;++n){for(var a=t[n]+"",i=7-a.length;i--;)a="0"+a;r+=a}for(var o=r.length;r.charAt(o)==="0";)o--;var s=e.e,u=r.slice(0,o+1||1),l=u.length;if(s>0)if(++s>l)for(s-=l;s--;)u+="0";else s<l&&(u=u.slice(0,s)+"."+u.slice(s));for(var c=[0],f=0;f<u.length;){for(var m=c.length;m--;)c[m]*=10;c[0]+=parseInt(u.charAt(f++));for(var d=0;d<c.length;++d)c[d]>1&&((c[d+1]===null||c[d+1]===void 0)&&(c[d+1]=0),c[d+1]+=c[d]>>1,c[d]&=1)}return c.reverse()}function Jz(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw new Error("Integers expected in function bitXor");var r=e.constructor;if(e.isNaN()||t.isNaN())return new r(NaN);if(e.isZero())return t;if(t.isZero())return e;if(e.eq(t))return new r(0);var n=new r(-1);return e.eq(n)?Rs(t):t.eq(n)?Rs(e):!e.isFinite()||!t.isFinite()?!e.isFinite()&&!t.isFinite()?n:new r(e.isNegative()===t.isNegative()?1/0:-1/0):Cd(e,t,function(a,i){return a^i})}function Kz(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw new Error("Integers expected in function leftShift");var r=e.constructor;return e.isNaN()||t.isNaN()||t.isNegative()&&!t.isZero()?new r(NaN):e.isZero()||t.isZero()?e:!e.isFinite()&&!t.isFinite()?new r(NaN):t.lt(55)?e.times(Math.pow(2,t.toNumber())+""):e.times(new r(2).pow(t))}function Yz(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw new Error("Integers expected in function rightArithShift");var r=e.constructor;return e.isNaN()||t.isNaN()||t.isNegative()&&!t.isZero()?new r(NaN):e.isZero()||t.isZero()?e:t.isFinite()?t.lt(55)?e.div(Math.pow(2,t.toNumber())+"").floor():e.div(new r(2).pow(t)).floor():e.isNegative()?new r(-1):e.isFinite()?new r(0):new r(NaN)}var Z0="bitAnd",Zz=["typed","matrix","equalScalar","concat"],y2=I(Z0,Zz,e=>{var{typed:t,matrix:r,equalScalar:n,concat:a}=e,i=Zn({typed:t,equalScalar:n}),o=Nc({typed:t,equalScalar:n}),s=Sr({typed:t,equalScalar:n}),u=$t({typed:t,matrix:r,concat:a});return t(Z0,{"number, number":jx,"BigNumber, BigNumber":Uz,"bigint, bigint":(l,c)=>l&c},u({SS:o,DS:i,Ss:s}))}),Q0="bitNot",Qz=["typed"],Xz=I(Q0,Qz,e=>{var{typed:t}=e;return t(Q0,{number:qx,BigNumber:Rs,bigint:r=>~r,"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r))})}),X0="bitOr",ej=["typed","matrix","equalScalar","DenseMatrix","concat"],b2=I(X0,ej,e=>{var{typed:t,matrix:r,equalScalar:n,DenseMatrix:a,concat:i}=e,o=gi({typed:t}),s=Nd({typed:t,equalScalar:n}),u=Xi({typed:t,DenseMatrix:a}),l=$t({typed:t,matrix:r,concat:i});return t(X0,{"number, number":Rx,"BigNumber, BigNumber":Wz,"bigint, bigint":(c,f)=>c|f},l({SS:s,DS:o,Ss:u}))}),tj="matAlgo07xSSf",rj=["typed","SparseMatrix"],la=I(tj,rj,e=>{var{typed:t,SparseMatrix:r}=e;return function(i,o,s){var u=i._size,l=i._datatype||i._data===void 0?i._datatype:i.getDataType(),c=o._size,f=o._datatype||o._data===void 0?o._datatype:o.getDataType();if(u.length!==c.length)throw new at(u.length,c.length);if(u[0]!==c[0]||u[1]!==c[1])throw new RangeError("Dimension mismatch. Matrix A ("+u+") must match Matrix B ("+c+")");var m=u[0],d=u[1],p,h=0,g=s;typeof l=="string"&&l===f&&l!=="mixed"&&(p=l,h=t.convert(0,p),g=t.find(s,[p,p]));for(var b=[],D=[],y=new Array(d+1).fill(0),w=[],x=[],v=[],N=[],C=0;C<d;C++){var A=C+1,E=0;n(i,C,v,w,A),n(o,C,N,x,A);for(var S=0;S<m;S++){var F=v[S]===A?w[S]:h,k=N[S]===A?x[S]:h,B=g(F,k);B!==0&&B!==!1&&(D.push(S),b.push(B),E++)}y[C+1]=y[C]+E}return new r({values:b,index:D,ptr:y,size:[m,d],datatype:l===i._datatype&&f===o._datatype?p:void 0})};function n(a,i,o,s,u){for(var l=a._values,c=a._index,f=a._ptr,m=f[i],d=f[i+1];m<d;m++){var p=c[m];o[p]=u,s[p]=l[m]}}}),ev="bitXor",nj=["typed","matrix","DenseMatrix","concat","SparseMatrix"],aj=I(ev,nj,e=>{var{typed:t,matrix:r,DenseMatrix:n,concat:a,SparseMatrix:i}=e,o=Wr({typed:t}),s=la({typed:t,SparseMatrix:i}),u=sr({typed:t,DenseMatrix:n}),l=$t({typed:t,matrix:r,concat:a});return t(ev,{"number, number":Lx,"BigNumber, BigNumber":Jz,"bigint, bigint":(c,f)=>c^f},l({SS:s,DS:o,Ss:u}))}),tv="arg",ij=["typed"],oj=I(tv,ij,e=>{var{typed:t}=e;return t(tv,{number:function(n){return Math.atan2(0,n)},BigNumber:function(n){return n.constructor.atan2(0,n)},Complex:function(n){return n.arg()},"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r))})}),rv="conj",sj=["typed"],uj=I(rv,sj,e=>{var{typed:t}=e;return t(rv,{"number | BigNumber | Fraction":r=>r,Complex:r=>r.conjugate(),Unit:t.referToSelf(r=>n=>new n.constructor(r(n.toNumeric()),n.formatUnits())),"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r))})}),nv="im",lj=["typed"],cj=I(nv,lj,e=>{var{typed:t}=e;return t(nv,{number:()=>0,"BigNumber | Fraction":r=>r.mul(0),Complex:r=>r.im,"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r))})}),av="re",fj=["typed"],mj=I(av,fj,e=>{var{typed:t}=e;return t(av,{"number | BigNumber | Fraction":r=>r,Complex:r=>r.re,"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r))})}),iv="not",dj=["typed"],hj=I(iv,dj,e=>{var{typed:t}=e;return t(iv,{"null | undefined":()=>!0,number:Wx,Complex:function(n){return n.re===0&&n.im===0},BigNumber:function(n){return n.isZero()||n.isNaN()},bigint:r=>!r,Unit:t.referToSelf(r=>n=>t.find(r,n.valueType())(n.value)),"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r))})}),ov="or",pj=["typed","matrix","equalScalar","DenseMatrix","concat"],w2=I(ov,pj,e=>{var{typed:t,matrix:r,equalScalar:n,DenseMatrix:a,concat:i}=e,o=Wr({typed:t}),s=Dc({typed:t,equalScalar:n}),u=sr({typed:t,DenseMatrix:a}),l=$t({typed:t,matrix:r,concat:i});return t(ov,{"number, number":Bm,"Complex, Complex":function(f,m){return f.re!==0||f.im!==0||m.re!==0||m.im!==0},"BigNumber, BigNumber":function(f,m){return!f.isZero()&&!f.isNaN()||!m.isZero()&&!m.isNaN()},"bigint, bigint":Bm,"Unit, Unit":t.referToSelf(c=>(f,m)=>c(f.value||0,m.value||0))},l({SS:s,DS:o,Ss:u}))}),sv="xor",gj=["typed","matrix","DenseMatrix","concat","SparseMatrix"],vj=I(sv,gj,e=>{var{typed:t,matrix:r,DenseMatrix:n,concat:a,SparseMatrix:i}=e,o=Wr({typed:t}),s=la({typed:t,SparseMatrix:i}),u=sr({typed:t,DenseMatrix:n}),l=$t({typed:t,matrix:r,concat:a});return t(sv,{"number, number":_m,"Complex, Complex":function(f,m){return(f.re!==0||f.im!==0)!=(m.re!==0||m.im!==0)},"bigint, bigint":_m,"BigNumber, BigNumber":function(f,m){return(!f.isZero()&&!f.isNaN())!=(!m.isZero()&&!m.isNaN())},"Unit, Unit":t.referToSelf(c=>(f,m)=>c(f.value||0,m.value||0))},l({SS:s,DS:o,Ss:u}))}),uv="concat",yj=["typed","matrix","isInteger"],x2=I(uv,yj,e=>{var{typed:t,matrix:r,isInteger:n}=e;return t(uv,{"...Array | Matrix | number | BigNumber":function(i){var o,s=i.length,u=-1,l,c=!1,f=[];for(o=0;o<s;o++){var m=i[o];if(Re(m)&&(c=!0),Ze(m)||Qe(m)){if(o!==s-1)throw new Error("Dimension must be specified as last argument");if(l=u,u=m.valueOf(),!n(u))throw new TypeError("Integer number expected for dimension");if(u<0||o>0&&u>l)throw new Jn(u,l+1)}else{var d=We(m).valueOf(),p=Ue(d);if(f[o]=d,l=u,u=p.length-1,o>0&&u!==l)throw new at(l+1,u+1)}}if(f.length===0)throw new SyntaxError("At least one matrix expected");for(var h=f.shift();f.length;)h=Dx(h,f.shift(),u);return c?r(h):h},"...string":function(i){return i.join("")}})}),lv="column",bj=["typed","Index","matrix","range"],D2=I(lv,bj,e=>{var{typed:t,Index:r,matrix:n,range:a}=e;return t(lv,{"Matrix, number":i,"Array, number":function(s,u){return i(n(We(s)),u).valueOf()}});function i(o,s){if(o.size().length!==2)throw new Error("Only two dimensional matrix is supported");Ot(s,o.size()[1]);var u=a(0,o.size()[0]),l=new r(u,s),c=o.subset(l);return Re(c)?c:n([[c]])}}),cv="count",wj=["typed","size","prod"],xj=I(cv,wj,e=>{var{typed:t,size:r,prod:n}=e;return t(cv,{string:function(i){return i.length},"Matrix | Array":function(i){return n(r(i))}})}),fv="cross",Dj=["typed","matrix","subtract","multiply"],Nj=I(fv,Dj,e=>{var{typed:t,matrix:r,subtract:n,multiply:a}=e;return t(fv,{"Matrix, Matrix":function(s,u){return r(i(s.toArray(),u.toArray()))},"Matrix, Array":function(s,u){return r(i(s.toArray(),u))},"Array, Matrix":function(s,u){return r(i(s,u.toArray()))},"Array, Array":i});function i(o,s){var u=Math.max(Ue(o).length,Ue(s).length);o=Hl(o),s=Hl(s);var l=Ue(o),c=Ue(s);if(l.length!==1||c.length!==1||l[0]!==3||c[0]!==3)throw new RangeError("Vectors with length 3 expected (Size A = ["+l.join(", ")+"], B = ["+c.join(", ")+"])");var f=[n(a(o[1],s[2]),a(o[2],s[1])),n(a(o[2],s[0]),a(o[0],s[2])),n(a(o[0],s[1]),a(o[1],s[0]))];return u>1?[f]:f}}),mv="diag",Aj=["typed","matrix","DenseMatrix","SparseMatrix"],Cj=I(mv,Aj,e=>{var{typed:t,matrix:r,DenseMatrix:n,SparseMatrix:a}=e;return t(mv,{Array:function(l){return i(l,0,Ue(l),null)},"Array, number":function(l,c){return i(l,c,Ue(l),null)},"Array, BigNumber":function(l,c){return i(l,c.toNumber(),Ue(l),null)},"Array, string":function(l,c){return i(l,0,Ue(l),c)},"Array, number, string":function(l,c,f){return i(l,c,Ue(l),f)},"Array, BigNumber, string":function(l,c,f){return i(l,c.toNumber(),Ue(l),f)},Matrix:function(l){return i(l,0,l.size(),l.storage())},"Matrix, number":function(l,c){return i(l,c,l.size(),l.storage())},"Matrix, BigNumber":function(l,c){return i(l,c.toNumber(),l.size(),l.storage())},"Matrix, string":function(l,c){return i(l,0,l.size(),c)},"Matrix, number, string":function(l,c,f){return i(l,c,l.size(),f)},"Matrix, BigNumber, string":function(l,c,f){return i(l,c.toNumber(),l.size(),f)}});function i(u,l,c,f){if(!Oe(l))throw new TypeError("Second parameter in function diag must be an integer");var m=l>0?l:0,d=l<0?-l:0;switch(c.length){case 1:return o(u,l,f,c[0],d,m);case 2:return s(u,l,f,c,d,m)}throw new RangeError("Matrix for function diag must be 2 dimensional")}function o(u,l,c,f,m,d){var p=[f+m,f+d];if(c&&c!=="sparse"&&c!=="dense")throw new TypeError("Unknown matrix type ".concat(c,'"'));var h=c==="sparse"?a.diagonal(p,u,l):n.diagonal(p,u,l);return c!==null?h:h.valueOf()}function s(u,l,c,f,m,d){if(Re(u)){var p=u.diagonal(l);return c!==null?c!==p.storage()?r(p,c):p:p.valueOf()}for(var h=Math.min(f[0]-m,f[1]-d),g=[],b=0;b<h;b++)g[b]=u[b+m][b+d];return c!==null?r(g):g}}),Ej="filter",Sj=["typed"],N2=I(Ej,Sj,e=>{var{typed:t}=e;return t("filter",{"Array, function":dv,"Matrix, function":function(n,a){return n.create(dv(n.valueOf(),a),n.datatype())},"Array, RegExp":a0,"Matrix, RegExp":function(n,a){return n.create(a0(n.valueOf(),a),n.datatype())}})});function dv(e,t){var r=Ki(t,e,"filter");return r.isUnary?n0(e,r.fn):n0(e,function(n,a,i){return r.fn(n,[a],i)})}var hv="flatten",Tj=["typed"],Mj=I(hv,Tj,e=>{var{typed:t}=e;return t(hv,{Array:function(n){return dt(n)},Matrix:function(n){return n.create(dt(n.valueOf(),!0),n.datatype())}})}),Lm="forEach",Fj=["typed"],A2=I(Lm,Fj,e=>{var{typed:t}=e;return t(Lm,{"Array, function":Pj,"Matrix, function":function(n,a){n.forEach(a)}})});function Pj(e,t){var r=Ki(t,e,Lm);Ax(e,r.fn,r.isUnary)}var pv="getMatrixDataType",kj=["typed"],Oj=I(pv,kj,e=>{var{typed:t}=e;return t(pv,{Array:function(n){return wc(n,Tt)},Matrix:function(n){return n.getDataType()}})}),gv="identity",$j=["typed","config","matrix","BigNumber","DenseMatrix","SparseMatrix"],Bj=I(gv,$j,e=>{var{typed:t,config:r,matrix:n,BigNumber:a,DenseMatrix:i,SparseMatrix:o}=e;return t(gv,{"":function(){return r.matrix==="Matrix"?n([]):[]},string:function(c){return n(c)},"number | BigNumber":function(c){return u(c,c,r.matrix==="Matrix"?"dense":void 0)},"number | BigNumber, string":function(c,f){return u(c,c,f)},"number | BigNumber, number | BigNumber":function(c,f){return u(c,f,r.matrix==="Matrix"?"dense":void 0)},"number | BigNumber, number | BigNumber, string":function(c,f,m){return u(c,f,m)},Array:function(c){return s(c)},"Array, string":function(c,f){return s(c,f)},Matrix:function(c){return s(c.valueOf(),c.storage())},"Matrix, string":function(c,f){return s(c.valueOf(),f)}});function s(l,c){switch(l.length){case 0:return c?n(c):[];case 1:return u(l[0],l[0],c);case 2:return u(l[0],l[1],c);default:throw new Error("Vector containing two values expected")}}function u(l,c,f){var m=Qe(l)||Qe(c)?a:null;if(Qe(l)&&(l=l.toNumber()),Qe(c)&&(c=c.toNumber()),!Oe(l)||l<1)throw new Error("Parameters in function identity must be positive integers");if(!Oe(c)||c<1)throw new Error("Parameters in function identity must be positive integers");var d=m?new a(1):1,p=m?new m(0):0,h=[l,c];if(f){if(f==="sparse")return o.diagonal(h,d,0,p);if(f==="dense")return i.diagonal(h,d,0,p);throw new TypeError('Unknown matrix type "'.concat(f,'"'))}for(var g=Go([],h,p),b=l<c?l:c,D=0;D<b;D++)g[D][D]=d;return g}}),vv="kron",_j=["typed","matrix","multiplyScalar"],Ij=I(vv,_j,e=>{var{typed:t,matrix:r,multiplyScalar:n}=e;return t(vv,{"Matrix, Matrix":function(o,s){return r(a(o.toArray(),s.toArray()))},"Matrix, Array":function(o,s){return r(a(o.toArray(),s))},"Array, Matrix":function(o,s){return r(a(o,s.toArray()))},"Array, Array":a});function a(i,o){if(Ue(i).length===1&&(i=[i]),Ue(o).length===1&&(o=[o]),Ue(i).length>2||Ue(o).length>2)throw new RangeError("Vectors with dimensions greater then 2 are not supported expected (Size x = "+JSON.stringify(i.length)+", y = "+JSON.stringify(o.length)+")");var s=[],u=[];return i.map(function(l){return o.map(function(c){return u=[],s.push(u),l.map(function(f){return c.map(function(m){return u.push(n(f,m))})})})})&&s}}),Ff="map",zj=["typed"],C2=I(Ff,zj,e=>{var{typed:t}=e;return t(Ff,{"Array, function":n,"Matrix, function":function(i,o){return i.map(o)},"Array|Matrix, Array|Matrix, ...Array|Matrix|function":(a,i,o)=>r([a,i,...o.slice(0,o.length-1)],o[o.length-1])});function r(a,i){if(typeof i!="function")throw new Error("Last argument must be a callback function");var o=a[0].isMatrix,s=bd(...a.map(w=>w.isMatrix?w.size():Ue(w))),u=o?(w,x)=>w.get(x):wd,l=o?a.map(w=>w.isMatrix?w.create(Ri(w.toArray(),s),w.datatype()):a[0].create(Ri(w.valueOf(),s))):a.map(w=>w.isMatrix?Ri(w.toArray(),s):Ri(w,s)),c;if(t.isTypedFunction(i)){var f=s.map(()=>0),m=l.map(w=>u(w,f)),d=y(i,m,f,l);c=b(d)}else{var p=a.length,h=D(i,p);c=b(h)}var g=(w,x)=>c([w,...l.slice(1).map(v=>u(v,x))],x);if(o)return l[0].map(g);return n(l[0],g);function b(w){switch(w){case 0:return x=>i(...x);case 1:return(x,v)=>i(...x,v);case 2:return(x,v)=>i(...x,v,...l)}}function D(w,x){return w.length>x+1?2:w.length===x+1?1:0}function y(w,x,v,N){return t.resolve(w,[...x,v,...N])!==null?2:t.resolve(w,[...x,v])!==null?1:(t.resolve(w,x)!==null,0)}}function n(a,i){var o=Ki(i,a,Ff);return km(a,o.fn,o.isUnary)}}),yv="diff",jj=["typed","matrix","subtract","number"],E2=I(yv,jj,e=>{var{typed:t,matrix:r,subtract:n,number:a}=e;return t(yv,{"Array | Matrix":function(c){return Re(c)?r(o(c.toArray())):o(c)},"Array | Matrix, number":function(c,f){if(!Oe(f))throw new RangeError("Dimension must be a whole number");return Re(c)?r(i(c.toArray(),f)):i(c,f)},"Array, BigNumber":t.referTo("Array,number",l=>(c,f)=>l(c,a(f))),"Matrix, BigNumber":t.referTo("Matrix,number",l=>(c,f)=>l(c,a(f)))});function i(l,c){if(Re(l)&&(l=l.toArray()),!Array.isArray(l))throw RangeError("Array/Matrix does not have that many dimensions");if(c>0){var f=[];return l.forEach(m=>{f.push(i(m,c-1))}),f}else{if(c===0)return o(l);throw RangeError("Cannot have negative dimension")}}function o(l){for(var c=[],f=l.length,m=1;m<f;m++)c.push(s(l[m-1],l[m]));return c}function s(l,c){Re(l)&&(l=l.toArray()),Re(c)&&(c=c.toArray());var f=Array.isArray(l),m=Array.isArray(c);if(f&&m)return u(l,c);if(!f&&!m)return n(c,l);throw TypeError("Cannot calculate difference between 1 array and 1 non-array")}function u(l,c){if(l.length!==c.length)throw RangeError("Not all sub-arrays have the same length");for(var f=[],m=l.length,d=0;d<m;d++)f.push(s(l[d],c[d]));return f}}),qj="ones",Rj=["typed","config","matrix","BigNumber"],Lj=I(qj,Rj,e=>{var{typed:t,config:r,matrix:n,BigNumber:a}=e;return t("ones",{"":function(){return r.matrix==="Array"?i([]):i([],"default")},"...number | BigNumber | string":function(l){var c=l[l.length-1];if(typeof c=="string"){var f=l.pop();return i(l,f)}else return r.matrix==="Array"?i(l):i(l,"default")},Array:i,Matrix:function(l){var c=l.storage();return i(l.valueOf(),c)},"Array | Matrix, string":function(l,c){return i(l.valueOf(),c)}});function i(u,l){var c=o(u),f=c?new a(1):1;if(s(u),l){var m=n(l);return u.length>0?m.resize(u,f):m}else{var d=[];return u.length>0?Go(d,u,f):d}}function o(u){var l=!1;return u.forEach(function(c,f,m){Qe(c)&&(l=!0,m[f]=c.toNumber())}),l}function s(u){u.forEach(function(l){if(typeof l!="number"||!Oe(l)||l<0)throw new Error("Parameters in function ones must be positive integers")})}});function Ed(){throw new Error('No "bignumber" implementation available')}function S2(){throw new Error('No "fraction" implementation available')}function T2(){throw new Error('No "matrix" implementation available')}var bv="range",Hj=["typed","config","?matrix","?bignumber","smaller","smallerEq","larger","largerEq","add","isPositive"],M2=I(bv,Hj,e=>{var{typed:t,config:r,matrix:n,bignumber:a,smaller:i,smallerEq:o,larger:s,largerEq:u,add:l,isPositive:c}=e;return t(bv,{string:m,"string, boolean":m,number:function(g){throw new TypeError("Too few arguments to function range(): ".concat(g))},boolean:function(g){throw new TypeError("Unexpected type of argument 1 to function range(): ".concat(g,", number|bigint|BigNumber|Fraction"))},"number, number":function(g,b){return f(d(g,b,1,!1))},"number, number, number":function(g,b,D){return f(d(g,b,D,!1))},"number, number, boolean":function(g,b,D){return f(d(g,b,1,D))},"number, number, number, boolean":function(g,b,D,y){return f(d(g,b,D,y))},"bigint, bigint|number":function(g,b){return f(d(g,b,1n,!1))},"number, bigint":function(g,b){return f(d(BigInt(g),b,1n,!1))},"bigint, bigint|number, bigint|number":function(g,b,D){return f(d(g,b,BigInt(D),!1))},"number, bigint, bigint|number":function(g,b,D){return f(d(BigInt(g),b,BigInt(D),!1))},"bigint, bigint|number, boolean":function(g,b,D){return f(d(g,b,1n,D))},"number, bigint, boolean":function(g,b,D){return f(d(BigInt(g),b,1n,D))},"bigint, bigint|number, bigint|number, boolean":function(g,b,D,y){return f(d(g,b,BigInt(D),y))},"number, bigint, bigint|number, boolean":function(g,b,D,y){return f(d(BigInt(g),b,BigInt(D),y))},"BigNumber, BigNumber":function(g,b){var D=g.constructor;return f(d(g,b,new D(1),!1))},"BigNumber, BigNumber, BigNumber":function(g,b,D){return f(d(g,b,D,!1))},"BigNumber, BigNumber, boolean":function(g,b,D){var y=g.constructor;return f(d(g,b,new y(1),D))},"BigNumber, BigNumber, BigNumber, boolean":function(g,b,D,y){return f(d(g,b,D,y))},"Fraction, Fraction":function(g,b){return f(d(g,b,1,!1))},"Fraction, Fraction, Fraction":function(g,b,D){return f(d(g,b,D,!1))},"Fraction, Fraction, boolean":function(g,b,D){return f(d(g,b,1,D))},"Fraction, Fraction, Fraction, boolean":function(g,b,D,y){return f(d(g,b,D,y))},"Unit, Unit, Unit":function(g,b,D){return f(d(g,b,D,!1))},"Unit, Unit, Unit, boolean":function(g,b,D,y){return f(d(g,b,D,y))}});function f(h){return r.matrix==="Matrix"?n?n(h):T2():h}function m(h,g){var b=p(h);if(!b)throw new SyntaxError('String "'+h+'" is no valid range');return r.number==="BigNumber"?(a===void 0&&Ed(),f(d(a(b.start),a(b.end),a(b.step)))):f(d(b.start,b.end,b.step,g))}function d(h,g,b,D){for(var y=[],w=c(b)?D?o:i:D?u:s,x=h;w(x,g);)y.push(x),x=l(x,b);return y}function p(h){var g=h.split(":"),b=g.map(function(y){return Number(y)}),D=b.some(function(y){return isNaN(y)});if(D)return null;switch(b.length){case 2:return{start:b[0],end:b[1],step:1};case 3:return{start:b[0],end:b[2],step:b[1]};default:return null}}}),wv="reshape",Gj=["typed","isInteger","matrix"],Vj=I(wv,Gj,e=>{var{typed:t,isInteger:r}=e;return t(wv,{"Matrix, Array":function(a,i){return a.reshape(i,!0)},"Array, Array":function(a,i){return i.forEach(function(o){if(!r(o))throw new TypeError("Invalid size for dimension: "+o)}),vd(a,i)}})}),Uj="resize",Wj=["config","matrix"],Jj=I(Uj,Wj,e=>{var{config:t,matrix:r}=e;return function(i,o,s){if(arguments.length!==2&&arguments.length!==3)throw new eo("resize",arguments.length,2,3);if(Re(o)&&(o=o.valueOf()),Qe(o[0])&&(o=o.map(function(c){return Qe(c)?c.toNumber():c})),Re(i))return i.resize(o,s,!0);if(typeof i=="string")return n(i,o,s);var u=Array.isArray(i)?!1:t.matrix!=="Array";if(o.length===0){for(;Array.isArray(i);)i=i[0];return We(i)}else{Array.isArray(i)||(i=[i]),i=We(i);var l=Go(i,o,s);return u?r(l):l}};function n(a,i,o){if(o!==void 0){if(typeof o!="string"||o.length!==1)throw new TypeError("Single character expected as defaultValue")}else o=" ";if(i.length!==1)throw new at(i.length,1);var s=i[0];if(typeof s!="number"||!Oe(s))throw new TypeError("Invalid size, must contain positive integers (size: "+nt(i)+")");if(a.length>s)return a.substring(0,s);if(a.length<s){for(var u=a,l=0,c=s-a.length;l<c;l++)u+=o;return u}else return a}}),xv="rotate",Kj=["typed","multiply","rotationMatrix"],Yj=I(xv,Kj,e=>{var{typed:t,multiply:r,rotationMatrix:n}=e;return t(xv,{"Array , number | BigNumber | Complex | Unit":function(o,s){a(o,2);var u=r(n(s),o);return u.toArray()},"Matrix , number | BigNumber | Complex | Unit":function(o,s){return a(o,2),r(n(s),o)},"Array, number | BigNumber | Complex | Unit, Array | Matrix":function(o,s,u){a(o,3);var l=r(n(s,u),o);return l},"Matrix, number | BigNumber | Complex | Unit, Array | Matrix":function(o,s,u){return a(o,3),r(n(s,u),o)}});function a(i,o){var s=Array.isArray(i)?Ue(i):i.size();if(s.length>2)throw new RangeError("Vector must be of dimensions 1x".concat(o));if(s.length===2&&s[1]!==1)throw new RangeError("Vector must be of dimensions 1x".concat(o));if(s[0]!==o)throw new RangeError("Vector must be of dimensions 1x".concat(o))}}),Dv="rotationMatrix",Zj=["typed","config","multiplyScalar","addScalar","unaryMinus","norm","matrix","BigNumber","DenseMatrix","SparseMatrix","cos","sin"],Qj=I(Dv,Zj,e=>{var{typed:t,config:r,multiplyScalar:n,addScalar:a,unaryMinus:i,norm:o,BigNumber:s,matrix:u,DenseMatrix:l,SparseMatrix:c,cos:f,sin:m}=e;return t(Dv,{"":function(){return r.matrix==="Matrix"?u([]):[]},string:function(y){return u(y)},"number | BigNumber | Complex | Unit":function(y){return d(y,r.matrix==="Matrix"?"dense":void 0)},"number | BigNumber | Complex | Unit, string":function(y,w){return d(y,w)},"number | BigNumber | Complex | Unit, Array":function(y,w){var x=u(w);return p(x),b(y,x,void 0)},"number | BigNumber | Complex | Unit, Matrix":function(y,w){p(w);var x=w.storage()||(r.matrix==="Matrix"?"dense":void 0);return b(y,w,x)},"number | BigNumber | Complex | Unit, Array, string":function(y,w,x){var v=u(w);return p(v),b(y,v,x)},"number | BigNumber | Complex | Unit, Matrix, string":function(y,w,x){return p(w),b(y,w,x)}});function d(D,y){var w=Qe(D),x=w?new s(-1):-1,v=f(D),N=m(D),C=[[v,n(x,N)],[N,v]];return g(C,y)}function p(D){var y=D.size();if(y.length<1||y[0]!==3)throw new RangeError("Vector must be of dimensions 1x3")}function h(D){return D.reduce((y,w)=>n(y,w))}function g(D,y){if(y){if(y==="sparse")return new c(D);if(y==="dense")return new l(D);throw new TypeError('Unknown matrix type "'.concat(y,'"'))}return D}function b(D,y,w){var x=o(y);if(x===0)throw new RangeError("Rotation around zero vector");var v=Qe(D)?s:null,N=v?new v(1):1,C=v?new v(-1):-1,A=v?new v(y.get([0])/x):y.get([0])/x,E=v?new v(y.get([1])/x):y.get([1])/x,S=v?new v(y.get([2])/x):y.get([2])/x,F=f(D),k=a(N,i(F)),B=m(D),$=a(F,h([A,A,k])),M=a(h([A,E,k]),h([C,S,B])),z=a(h([A,S,k]),h([E,B])),G=a(h([A,E,k]),h([S,B])),R=a(F,h([E,E,k])),Z=a(h([E,S,k]),h([C,A,B])),te=a(h([A,S,k]),h([C,E,B])),P=a(h([E,S,k]),h([A,B])),V=a(F,h([S,S,k])),_=[[$,M,z],[G,R,Z],[te,P,V]];return g(_,w)}}),Nv="row",Xj=["typed","Index","matrix","range"],F2=I(Nv,Xj,e=>{var{typed:t,Index:r,matrix:n,range:a}=e;return t(Nv,{"Matrix, number":i,"Array, number":function(s,u){return i(n(We(s)),u).valueOf()}});function i(o,s){if(o.size().length!==2)throw new Error("Only two dimensional matrix is supported");Ot(s,o.size()[0]);var u=a(0,o.size()[1]),l=new r(s,u),c=o.subset(l);return Re(c)?c:n([[c]])}}),Av="size",eq=["typed","config","?matrix"],tq=I(Av,eq,e=>{var{typed:t,config:r,matrix:n}=e;return t(Av,{Matrix:function(i){return i.create(i.size(),"number")},Array:Ue,string:function(i){return r.matrix==="Array"?[i.length]:n([i.length],"dense","number")},"number | Complex | BigNumber | Unit | boolean | null":function(i){return r.matrix==="Array"?[]:n?n([],"dense","number"):T2()}})}),Cv="squeeze",rq=["typed"],nq=I(Cv,rq,e=>{var{typed:t}=e;return t(Cv,{Array:function(n){return Hl(We(n))},Matrix:function(n){var a=Hl(n.toArray());return Array.isArray(a)?n.create(a,n.datatype()):a},any:function(n){return We(n)}})}),Ev="subset",aq=["typed","matrix","zeros","add"],P2=I(Ev,aq,e=>{var{typed:t,matrix:r,zeros:n,add:a}=e;return t(Ev,{"Matrix, Index":function(s,u){return Ho(u)?r():(Ll(s,u),s.subset(u))},"Array, Index":t.referTo("Matrix, Index",function(o){return function(s,u){var l=o(r(s),u);return u.isScalar()?l:l.valueOf()}}),"Object, Index":oq,"string, Index":iq,"Matrix, Index, any, any":function(s,u,l,c){return Ho(u)?s:(Ll(s,u),s.clone().subset(u,i(l,u),c))},"Array, Index, any, any":t.referTo("Matrix, Index, any, any",function(o){return function(s,u,l,c){var f=o(r(s),u,l,c);return f.isMatrix?f.valueOf():f}}),"Array, Index, any":t.referTo("Matrix, Index, any, any",function(o){return function(s,u,l){return o(r(s),u,l,void 0).valueOf()}}),"Matrix, Index, any":t.referTo("Matrix, Index, any, any",function(o){return function(s,u,l){return o(s,u,l,void 0)}}),"string, Index, string":Sv,"string, Index, string, string":Sv,"Object, Index, any":sq});function i(o,s){if(typeof o=="string")throw new Error("can't boradcast a string");if(s._isScalar)return o;var u=s.size();if(u.every(l=>l>0))try{return a(o,n(u))}catch{return o}else return o}});function iq(e,t){if(!dc(t))throw new TypeError("Index expected");if(Ho(t))return"";if(Ll(Array.from(e),t),t.size().length!==1)throw new at(t.size().length,1);var r=e.length;Ot(t.min()[0],r),Ot(t.max()[0],r);var n=t.dimension(0),a="";return n.forEach(function(i){a+=e.charAt(i)}),a}function Sv(e,t,r,n){if(!t||t.isIndex!==!0)throw new TypeError("Index expected");if(Ho(t))return e;if(Ll(Array.from(e),t),t.size().length!==1)throw new at(t.size().length,1);if(n!==void 0){if(typeof n!="string"||n.length!==1)throw new TypeError("Single character expected as defaultValue")}else n=" ";var a=t.dimension(0),i=a.size()[0];if(i!==r.length)throw new at(a.size()[0],r.length);var o=e.length;Ot(t.min()[0]),Ot(t.max()[0]);for(var s=[],u=0;u<o;u++)s[u]=e.charAt(u);if(a.forEach(function(f,m){s[f]=r.charAt(m[0])}),s.length>o)for(var l=o-1,c=s.length;l<c;l++)s[l]||(s[l]=n);return s.join("")}function oq(e,t){if(!Ho(t)){if(t.size().length!==1)throw new at(t.size(),1);var r=t.dimension(0);if(typeof r!="string")throw new TypeError("String expected as index to retrieve an object property");return Hr(e,r)}}function sq(e,t,r){if(Ho(t))return e;if(t.size().length!==1)throw new at(t.size(),1);var n=t.dimension(0);if(typeof n!="string")throw new TypeError("String expected as index to retrieve an object property");var a=We(e);return Ro(a,n,r),a}var Tv="transpose",uq=["typed","matrix"],lq=I(Tv,uq,e=>{var{typed:t,matrix:r}=e;return t(Tv,{Array:o=>n(r(o)).valueOf(),Matrix:n,any:We});function n(o){var s=o.size(),u;switch(s.length){case 1:u=o.clone();break;case 2:{var l=s[0],c=s[1];if(c===0)throw new RangeError("Cannot transpose a 2D matrix with no columns (size: "+nt(s)+")");switch(o.storage()){case"dense":u=a(o,l,c);break;case"sparse":u=i(o,l,c);break}}break;default:throw new RangeError("Matrix must be a vector or two dimensional (size: "+nt(s)+")")}return u}function a(o,s,u){for(var l=o._data,c=[],f,m=0;m<u;m++){f=c[m]=[];for(var d=0;d<s;d++)f[d]=We(l[d][m])}return o.createDenseMatrix({data:c,size:[u,s],datatype:o._datatype})}function i(o,s,u){for(var l=o._values,c=o._index,f=o._ptr,m=l?[]:void 0,d=[],p=[],h=[],g=0;g<s;g++)h[g]=0;var b,D,y;for(b=0,D=c.length;b<D;b++)h[c[b]]++;for(var w=0,x=0;x<s;x++)p.push(w),w+=h[x],h[x]=p[x];for(p.push(w),y=0;y<u;y++)for(var v=f[y],N=f[y+1],C=v;C<N;C++){var A=h[c[C]]++;d[A]=y,l&&(m[A]=We(l[C]))}return o.createSparseMatrix({values:m,index:d,ptr:p,size:[u,s],datatype:o._datatype})}}),Mv="ctranspose",cq=["typed","transpose","conj"],fq=I(Mv,cq,e=>{var{typed:t,transpose:r,conj:n}=e;return t(Mv,{any:function(i){return n(r(i))}})}),Fv="zeros",mq=["typed","config","matrix","BigNumber"],dq=I(Fv,mq,e=>{var{typed:t,config:r,matrix:n,BigNumber:a}=e;return t(Fv,{"":function(){return r.matrix==="Array"?i([]):i([],"default")},"...number | BigNumber | string":function(l){var c=l[l.length-1];if(typeof c=="string"){var f=l.pop();return i(l,f)}else return r.matrix==="Array"?i(l):i(l,"default")},Array:i,Matrix:function(l){var c=l.storage();return i(l.valueOf(),c)},"Array | Matrix, string":function(l,c){return i(l.valueOf(),c)}});function i(u,l){var c=o(u),f=c?new a(0):0;if(s(u),l){var m=n(l);return u.length>0?m.resize(u,f):m}else{var d=[];return u.length>0?Go(d,u,f):d}}function o(u){var l=!1;return u.forEach(function(c,f,m){Qe(c)&&(l=!0,m[f]=c.toNumber())}),l}function s(u){u.forEach(function(l){if(typeof l!="number"||!Oe(l)||l<0)throw new Error("Parameters in function zeros must be positive integers")})}}),Pv="fft",hq=["typed","matrix","addScalar","multiplyScalar","divideScalar","exp","tau","i","dotDivide","conj","pow","ceil","log2"],pq=I(Pv,hq,e=>{var{typed:t,matrix:r,addScalar:n,multiplyScalar:a,divideScalar:i,exp:o,tau:s,i:u,dotDivide:l,conj:c,pow:f,ceil:m,log2:d}=e;return t(Pv,{Array:p,Matrix:function(y){return y.create(p(y.valueOf()),y.datatype())}});function p(D){var y=Ue(D);return y.length===1?b(D,y[0]):h(D.map(w=>p(w,y.slice(1))),0)}function h(D,y){var w=Ue(D);if(y!==0)return new Array(w[0]).fill(0).map((v,N)=>h(D[N],y-1));if(w.length===1)return b(D);function x(v){var N=Ue(v);return new Array(N[1]).fill(0).map((C,A)=>new Array(N[0]).fill(0).map((E,S)=>v[S][A]))}return x(h(x(D),1))}function g(D){for(var y=D.length,w=o(i(a(-1,a(u,s)),y)),x=[],v=1-y;v<y;v++)x.push(f(w,i(f(v,2),2)));for(var N=f(2,m(d(y+y-1))),C=[...new Array(y).fill(0).map((M,z)=>a(D[z],x[y-1+z])),...new Array(N-y).fill(0)],A=[...new Array(y+y-1).fill(0).map((M,z)=>i(1,x[z])),...new Array(N-(y+y-1)).fill(0)],E=b(C),S=b(A),F=new Array(N).fill(0).map((M,z)=>a(E[z],S[z])),k=l(c(p(c(F))),N),B=[],$=y-1;$<y+y-1;$++)B.push(a(k[$],x[$]));return B}function b(D){var y=D.length;if(y===1)return[D[0]];if(y%2===0){for(var w=[...b(D.filter((C,A)=>A%2===0)),...b(D.filter((C,A)=>A%2===1))],x=0;x<y/2;x++){var v=w[x],N=a(w[x+y/2],o(a(a(s,u),i(-x,y))));w[x]=n(v,N),w[x+y/2]=n(v,a(-1,N))}return w}else return g(D)}}),kv="ifft",gq=["typed","fft","dotDivide","conj"],vq=I(kv,gq,e=>{var{typed:t,fft:r,dotDivide:n,conj:a}=e;return t(kv,{"Array | Matrix":function(o){var s=Re(o)?o.size():Ue(o);return n(a(r(a(o))),s.reduce((u,l)=>u*l,1))}})});function Ls(e){"@babel/helpers - typeof";return Ls=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ls(e)}function yq(e,t){if(Ls(e)!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(Ls(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function bq(e){var t=yq(e,"string");return Ls(t)=="symbol"?t:t+""}function nr(e,t,r){return(t=bq(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Ov(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function wq(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ov(Object(r),!0).forEach(function(n){nr(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ov(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var xq="solveODE",Dq=["typed","add","subtract","multiply","divide","max","map","abs","isPositive","isNegative","larger","smaller","matrix","bignumber","unaryMinus"],Nq=I(xq,Dq,e=>{var{typed:t,add:r,subtract:n,multiply:a,divide:i,max:o,map:s,abs:u,isPositive:l,isNegative:c,larger:f,smaller:m,matrix:d,bignumber:p,unaryMinus:h}=e;function g(C){return function(A,E,S,F){var k=!(E.length===2&&(E.every(v)||E.every(cn)));if(k)throw new Error('"tspan" must be an Array of two numeric values or two units [tStart, tEnd]');var B=E[0],$=E[1],M=f($,B),z=F.firstStep;if(z!==void 0&&!l(z))throw new Error('"firstStep" must be positive');var G=F.maxStep;if(G!==void 0&&!l(G))throw new Error('"maxStep" must be positive');var R=F.minStep;if(R&&c(R))throw new Error('"minStep" must be positive or zero');var Z=[B,$,z,R,G].filter(O=>O!==void 0);if(!(Z.every(v)||Z.every(cn)))throw new Error('Inconsistent type of "t" dependant variables');for(var te=1,P=F.tol?F.tol:1e-4,V=F.minDelta?F.minDelta:.2,_=F.maxDelta?F.maxDelta:5,ce=F.maxIter?F.maxIter:1e4,ae=[B,$,...S,G,R].some(Qe),[ie,j,H,J]=ae?[p(C.a),p(C.c),p(C.b),p(C.bp)]:[C.a,C.c,C.b,C.bp],Q=z?M?z:h(z):i(n($,B),te),X=[B],ue=[S],se=n(H,J),we=0,Me=0,ke=w(M),Se=x(M);ke(X[we],$);){var $e=[];Q=Se(X[we],$,Q),$e.push(A(X[we],ue[we]));for(var q=1;q<j.length;++q)$e.push(A(r(X[we],a(j[q],Q)),r(ue[we],a(Q,ie[q],$e))));var K=o(u(s(a(se,$e),O=>cn(O)?O.value:O)));K<P&&P/K>1/4&&(X.push(r(X[we],Q)),ue.push(r(ue[we],a(Q,H,$e))),we++);var re=.84*(P/K)**(1/5);if(m(re,V)?re=V:f(re,_)&&(re=_),re=ae?p(re):re,Q=a(Q,re),G&&f(u(Q),G)?Q=M?G:h(G):R&&m(u(Q),R)&&(Q=M?R:h(R)),Me++,Me>ce)throw new Error("Maximum number of iterations reached, try changing options")}return{t:X,y:ue}}}function b(C,A,E,S){var F=[[],[.5],[0,.75],[.2222222222222222,.3333333333333333,.4444444444444444]],k=[null,1/2,3/4,1],B=[2/9,1/3,4/9,0],$=[7/24,1/4,1/3,1/8],M={a:F,c:k,b:B,bp:$};return g(M)(C,A,E,S)}function D(C,A,E,S){var F=[[],[.2],[.075,.225],[.9777777777777777,-3.7333333333333334,3.5555555555555554],[2.9525986892242035,-11.595793324188385,9.822892851699436,-.2908093278463649],[2.8462752525252526,-10.757575757575758,8.906422717743473,.2784090909090909,-.2735313036020583],[.09114583333333333,0,.44923629829290207,.6510416666666666,-.322376179245283,.13095238095238096]],k=[null,1/5,3/10,4/5,8/9,1,1],B=[35/384,0,500/1113,125/192,-2187/6784,11/84,0],$=[5179/57600,0,7571/16695,393/640,-92097/339200,187/2100,1/40],M={a:F,c:k,b:B,bp:$};return g(M)(C,A,E,S)}function y(C,A,E,S){var F=S.method?S.method:"RK45",k={RK23:b,RK45:D};if(F.toUpperCase()in k){var B=wq({},S);return delete B.method,k[F.toUpperCase()](C,A,E,B)}else{var $=Object.keys(k).map(z=>'"'.concat(z,'"')),M="".concat($.slice(0,-1).join(", ")," and ").concat($.slice(-1));throw new Error('Unavailable method "'.concat(F,'". Available methods are ').concat(M))}}function w(C){return C?m:f}function x(C){var A=C?f:m;return function(E,S,F){var k=r(E,F);return A(k,S)?n(S,E):F}}function v(C){return Qe(C)||Ze(C)}function N(C,A,E,S){var F=y(C,A.toArray(),E.toArray(),S);return{t:d(F.t),y:d(F.y)}}return t("solveODE",{"function, Array, Array, Object":y,"function, Matrix, Matrix, Object":N,"function, Array, Array":(C,A,E)=>y(C,A,E,{}),"function, Matrix, Matrix":(C,A,E)=>N(C,A,E,{}),"function, Array, number | BigNumber | Unit":(C,A,E)=>{var S=y(C,A,[E],{});return{t:S.t,y:S.y.map(F=>F[0])}},"function, Matrix, number | BigNumber | Unit":(C,A,E)=>{var S=y(C,A.toArray(),[E],{});return{t:d(S.t),y:d(S.y.map(F=>F[0]))}},"function, Array, number | BigNumber | Unit, Object":(C,A,E,S)=>{var F=y(C,A,[E],S);return{t:F.t,y:F.y.map(k=>k[0])}},"function, Matrix, number | BigNumber | Unit, Object":(C,A,E,S)=>{var F=y(C,A.toArray(),[E],S);return{t:d(F.t),y:d(F.y.map(k=>k[0]))}}})}),Aq="erf",Cq=["typed"],Eq=I(Aq,Cq,e=>{var{typed:t}=e;return t("name",{number:function(o){var s=Math.abs(o);return s>=Mq?ti(o):s<=Sq?ti(o)*r(s):s<=4?ti(o)*(1-n(s)):ti(o)*(1-a(s))},"Array | Matrix":t.referToSelf(i=>o=>Xe(o,i))});function r(i){var o=i*i,s=xa[0][4]*o,u=o,l;for(l=0;l<3;l+=1)s=(s+xa[0][l])*o,u=(u+No[0][l])*o;return i*(s+xa[0][3])/(u+No[0][3])}function n(i){var o=xa[1][8]*i,s=i,u;for(u=0;u<7;u+=1)o=(o+xa[1][u])*i,s=(s+No[1][u])*i;var l=(o+xa[1][7])/(s+No[1][7]),c=parseInt(i*16)/16,f=(i-c)*(i+c);return Math.exp(-c*c)*Math.exp(-f)*l}function a(i){var o=1/(i*i),s=xa[2][5]*o,u=o,l;for(l=0;l<4;l+=1)s=(s+xa[2][l])*o,u=(u+No[2][l])*o;var c=o*(s+xa[2][4])/(u+No[2][4]);c=(Tq-c)/i,o=parseInt(i*16)/16;var f=(i-o)*(i+o);return Math.exp(-o*o)*Math.exp(-f)*c}}),Sq=.46875,Tq=.5641895835477563,xa=[[3.1611237438705655,113.86415415105016,377.485237685302,3209.3775891384694,.18577770618460315],[.5641884969886701,8.883149794388377,66.11919063714163,298.6351381974001,881.952221241769,1712.0476126340707,2051.0783778260716,1230.3393547979972,21531153547440383e-24],[.30532663496123236,.36034489994980445,.12578172611122926,.016083785148742275,.0006587491615298378,.016315387137302097]],No=[[23.601290952344122,244.02463793444417,1282.6165260773723,2844.236833439171],[15.744926110709835,117.6939508913125,537.1811018620099,1621.3895745666903,3290.7992357334597,4362.619090143247,3439.3676741437216,1230.3393548037495],[2.568520192289822,1.8729528499234604,.5279051029514285,.06051834131244132,.0023352049762686918]],Mq=Math.pow(2,53),$v="zeta",Fq=["typed","config","multiply","pow","divide","factorial","equal","smallerEq","isNegative","gamma","sin","subtract","add","?Complex","?BigNumber","pi"],Pq=I($v,Fq,e=>{var{typed:t,config:r,multiply:n,pow:a,divide:i,factorial:o,equal:s,smallerEq:u,isNegative:l,gamma:c,sin:f,subtract:m,add:d,Complex:p,BigNumber:h,pi:g}=e;return t($v,{number:v=>b(v,N=>N,()=>20),BigNumber:v=>b(v,N=>new h(N),()=>Math.abs(Math.log10(r.relTol))),Complex:D});function b(v,N,C){return s(v,0)?N(-.5):s(v,1)?N(NaN):isFinite(v)?y(v,N,C,A=>A):l(v)?N(NaN):N(1)}function D(v){return v.re===0&&v.im===0?new p(-.5):v.re===1?new p(NaN,NaN):v.re===1/0&&v.im===0?new p(1):v.im===1/0||v.re===-1/0?new p(NaN,NaN):y(v,N=>N,N=>Math.round(1.3*15+.9*Math.abs(N.im)),N=>N.re)}function y(v,N,C,A){var E=C(v);if(A(v)>-(E-1)/2)return x(v,N(E),N);var S=n(a(2,v),a(N(g),m(v,1)));return S=n(S,f(n(i(N(g),2),v))),S=n(S,c(m(1,v))),n(S,y(m(1,v),N,C,A))}function w(v,N){for(var C=v,A=v;u(A,N);A=d(A,1)){var E=i(n(o(d(N,m(A,1))),a(4,A)),n(o(m(N,A)),o(n(2,A))));C=d(C,E)}return n(N,C)}function x(v,N,C){for(var A=i(1,n(w(C(0),N),m(1,a(2,m(1,v))))),E=C(0),S=C(1);u(S,N);S=d(S,1))E=d(E,i(n((-1)**(S-1),w(S,N)),a(S,v)));return n(A,E)}}),Bv="mode",kq=["typed","isNaN","isNumeric"],Oq=I(Bv,kq,e=>{var{typed:t,isNaN:r,isNumeric:n}=e;return t(Bv,{"Array | Matrix":a,"...":function(o){return a(o)}});function a(i){i=dt(i.valueOf());var o=i.length;if(o===0)throw new Error("Cannot calculate mode of an empty array");for(var s={},u=[],l=0,c=0;c<i.length;c++){var f=i[c];if(n(f)&&r(f))throw new Error("Cannot calculate mode of an array containing NaN values");f in s||(s[f]=0),s[f]++,s[f]===l?u.push(f):s[f]>l&&(l=s[f],u=[f])}return u}});function Ur(e,t,r){var n;return String(e).includes("Unexpected type")?(n=arguments.length>2?" (type: "+Tt(r)+", value: "+JSON.stringify(r)+")":" (type: "+e.data.actual+")",new TypeError("Cannot calculate "+t+", unexpected type of argument"+n)):String(e).includes("complex numbers")?(n=arguments.length>2?" (type: "+Tt(r)+", value: "+JSON.stringify(r)+")":"",new TypeError("Cannot calculate "+t+", no ordering relation is defined for complex numbers"+n)):e}var _v="prod",$q=["typed","config","multiplyScalar","numeric"],Bq=I(_v,$q,e=>{var{typed:t,config:r,multiplyScalar:n,numeric:a}=e;return t(_v,{"Array | Matrix":i,"Array | Matrix, number | BigNumber":function(s,u){throw new Error("prod(A, dim) is not yet supported")},"...":function(s){return i(s)}});function i(o){var s;if(mi(o,function(u){try{s=s===void 0?u:n(s,u)}catch(l){throw Ur(l,"prod",u)}}),typeof s=="string"&&(s=a(s,hi(s,r))),s===void 0)throw new Error("Cannot calculate prod of an empty array");return s}}),Iv="format",_q=["typed"],Iq=I(Iv,_q,e=>{var{typed:t}=e;return t(Iv,{any:nt,"any, Object | function | number | BigNumber":nt})}),zv="bin",zq=["typed","format"],jq=I(zv,zq,e=>{var{typed:t,format:r}=e;return t(zv,{"number | BigNumber":function(a){return r(a,{notation:"bin"})},"number | BigNumber, number | BigNumber":function(a,i){return r(a,{notation:"bin",wordSize:i})}})}),jv="oct",qq=["typed","format"],Rq=I(jv,qq,e=>{var{typed:t,format:r}=e;return t(jv,{"number | BigNumber":function(a){return r(a,{notation:"oct"})},"number | BigNumber, number | BigNumber":function(a,i){return r(a,{notation:"oct",wordSize:i})}})}),qv="hex",Lq=["typed","format"],Hq=I(qv,Lq,e=>{var{typed:t,format:r}=e;return t(qv,{"number | BigNumber":function(a){return r(a,{notation:"hex"})},"number | BigNumber, number | BigNumber":function(a,i){return r(a,{notation:"hex",wordSize:i})}})}),k2=/\$([\w.]+)/g,Rv="print",Gq=["typed"],O2=I(Rv,Gq,e=>{var{typed:t}=e;return t(Rv,{"string, Object | Array":Lv,"string, Object | Array, number | Object":Lv})});function Lv(e,t,r){return e.replace(k2,function(n,a){var i=a.split("."),o=t[i.shift()];for(o!==void 0&&o.isMatrix&&(o=o.toArray());i.length&&o!==void 0;){var s=i.shift();o=s?o[s]:o+"."}return o!==void 0?Or(o)?o:nt(o,r):n})}var Hv="to",Vq=["typed","matrix","concat"],Uq=I(Hv,Vq,e=>{var{typed:t,matrix:r,concat:n}=e,a=$t({typed:t,matrix:r,concat:n});return t(Hv,{"Unit, Unit | string":(i,o)=>i.to(o)},a({Ds:!0}))}),Gv="toBest",Wq=["typed"],Jq=I(Gv,Wq,e=>{var{typed:t}=e;return t(Gv,{Unit:r=>r.toBest(),"Unit, string":(r,n)=>r.toBest(n.split(",")),"Unit, string, Object":(r,n,a)=>r.toBest(n.split(","),a),"Unit, Array":(r,n)=>r.toBest(n),"Unit, Array, Object":(r,n,a)=>r.toBest(n,a)})}),Vv="isPrime",Kq=["typed"],Yq=I(Vv,Kq,e=>{var{typed:t}=e;return t(Vv,{number:function(n){if(n<=3)return n>1;if(n%2===0||n%3===0)return!1;for(var a=5;a*a<=n;a+=6)if(n%a===0||n%(a+2)===0)return!1;return!0},bigint:function(n){if(n<=3n)return n>1n;if(n%2n===0n||n%3n===0n)return!1;for(var a=5n;a*a<=n;a+=6n)if(n%a===0n||n%(a+2n)===0n)return!1;return!0},BigNumber:function(n){if(n.lte(3))return n.gt(1);if(n.mod(2).eq(0)||n.mod(3).eq(0))return!1;if(n.lt(Math.pow(2,32))){for(var a=n.toNumber(),i=5;i*i<=a;i+=6)if(a%i===0||a%(i+2)===0)return!1;return!0}function o(D,y,w){for(var x=1;!y.eq(0);)y.mod(2).eq(0)?(y=y.div(2),D=D.mul(D).mod(w)):(y=y.sub(1),x=D.mul(x).mod(w));return x}var s=n.constructor.clone({precision:n.toFixed(0).length*2});n=new s(n);for(var u=0,l=n.sub(1);l.mod(2).eq(0);)l=l.div(2),u+=1;var c=null;if(n.lt("3317044064679887385961981"))c=[2,3,5,7,11,13,17,19,23,29,31,37,41].filter(D=>D<n);else{var f=Math.min(n.toNumber()-2,Math.floor(2*Math.pow(n.toFixed(0).length*Math.log(10),2)));c=[];for(var m=2;m<=f;m+=1)c.push(f)}for(var d=0;d<c.length;d+=1){var p=c[d],h=o(n.sub(n).add(p),l,n);if(!h.eq(1)){for(var g=0,b=h;!b.eq(n.sub(1));g+=1,b=b.mul(b).mod(n))if(g===u-1)return!1}}return!0},"Array | Matrix":t.referToSelf(r=>n=>Xe(n,r))})}),Zq="numeric",Qq=["number","?bignumber","?fraction"],Xq=I(Zq,Qq,e=>{var{number:t,bignumber:r,fraction:n}=e,a={string:!0,number:!0,BigNumber:!0,Fraction:!0},i={number:o=>t(o),BigNumber:r?o=>r(o):Ed,bigint:o=>BigInt(o),Fraction:n?o=>n(o):S2};return function(s){var u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"number",l=arguments.length>2?arguments[2]:void 0;if(l!==void 0)throw new SyntaxError("numeric() takes one or two arguments");var c=Tt(s);if(!(c in a))throw new TypeError("Cannot convert "+s+' of type "'+c+'"; valid input types are '+Object.keys(a).join(", "));if(!(u in i))throw new TypeError("Cannot convert "+s+' to type "'+u+'"; valid output types are '+Object.keys(i).join(", "));return u===c?s:i[u](s)}}),Uv="divideScalar",eR=["typed","numeric"],tR=I(Uv,eR,e=>{var{typed:t,numeric:r}=e;return t(Uv,{"number, number":function(a,i){return a/i},"Complex, Complex":function(a,i){return a.div(i)},"BigNumber, BigNumber":function(a,i){return a.div(i)},"bigint, bigint":function(a,i){return a/i},"Fraction, Fraction":function(a,i){return a.div(i)},"Unit, number | Complex | Fraction | BigNumber | Unit":(n,a)=>n.divide(a),"number | Fraction | Complex | BigNumber, Unit":(n,a)=>a.divideInto(n)})}),Wv="pow",rR=["typed","config","identity","multiply","matrix","inv","fraction","number","Complex"],nR=I(Wv,rR,e=>{var{typed:t,config:r,identity:n,multiply:a,matrix:i,inv:o,number:s,fraction:u,Complex:l}=e;return t(Wv,{"number, number":c,"Complex, Complex":function(p,h){return p.pow(h)},"BigNumber, BigNumber":function(p,h){return h.isInteger()||p>=0||r.predictable?p.pow(h):new l(p.toNumber(),0).pow(h.toNumber(),0)},"bigint, bigint":(d,p)=>d**p,"Fraction, Fraction":function(p,h){var g=p.pow(h);if(g!=null)return g;if(r.predictable)throw new Error("Result of pow is non-rational and cannot be expressed as a fraction");return c(p.valueOf(),h.valueOf())},"Array, number":f,"Array, BigNumber":function(p,h){return f(p,h.toNumber())},"Matrix, number":m,"Matrix, BigNumber":function(p,h){return m(p,h.toNumber())},"Unit, number | BigNumber":function(p,h){return p.pow(h)}});function c(d,p){if(r.predictable&&!Oe(p)&&d<0)try{var h=u(p),g=s(h);if((p===g||Math.abs((p-g)/p)<1e-14)&&h.d%2n===1n)return(h.n%2n===0n?1:-1)*Math.pow(-d,p)}catch{}return r.predictable&&(d<-1&&p===1/0||d>-1&&d<0&&p===-1/0)?NaN:Oe(p)||d>=0||r.predictable?zx(d,p):d*d<1&&p===1/0||d*d>1&&p===-1/0?0:new l(d,0).pow(p,0)}function f(d,p){if(!Oe(p))throw new TypeError("For A^b, b must be an integer (value is "+p+")");var h=Ue(d);if(h.length!==2)throw new Error("For A^b, A must be 2 dimensional (A has "+h.length+" dimensions)");if(h[0]!==h[1])throw new Error("For A^b, A must be square (size is "+h[0]+"x"+h[1]+")");if(p<0)try{return f(o(d),-p)}catch(D){throw D.message==="Cannot calculate inverse, determinant is zero"?new TypeError("For A^b, when A is not invertible, b must be a positive integer (value is "+p+")"):D}for(var g=n(h[0]).valueOf(),b=d;p>=1;)(p&1)===1&&(g=a(b,g)),p>>=1,b=a(b,b);return g}function m(d,p){return i(f(d.valueOf(),p))}}),Ao="Number of decimals in function round must be an integer",Jv="round",aR=["typed","config","matrix","equalScalar","zeros","BigNumber","DenseMatrix"],iR=I(Jv,aR,e=>{var{typed:t,config:r,matrix:n,equalScalar:a,zeros:i,BigNumber:o,DenseMatrix:s}=e,u=Sr({typed:t,equalScalar:a}),l=sr({typed:t,DenseMatrix:s}),c=Yn({typed:t});function f(m){return Math.abs(Xs(m).exponent)}return t(Jv,{number:function(d){var p=ws(d,f(r.relTol)),h=Er(d,p,r.relTol,r.absTol)?p:d;return ws(h)},"number, number":function(d,p){var h=f(r.relTol);if(p>=h)return ws(d,p);var g=ws(d,h),b=Er(d,g,r.relTol,r.absTol)?g:d;return ws(b,p)},"number, BigNumber":function(d,p){if(!p.isInteger())throw new TypeError(Ao);return new o(d).toDecimalPlaces(p.toNumber())},Complex:function(d){return d.round()},"Complex, number":function(d,p){if(p%1)throw new TypeError(Ao);return d.round(p)},"Complex, BigNumber":function(d,p){if(!p.isInteger())throw new TypeError(Ao);var h=p.toNumber();return d.round(h)},BigNumber:function(d){var p=new o(d).toDecimalPlaces(f(r.relTol)),h=Pn(d,p,r.relTol,r.absTol)?p:d;return h.toDecimalPlaces(0)},"BigNumber, BigNumber":function(d,p){if(!p.isInteger())throw new TypeError(Ao);var h=f(r.relTol);if(p>=h)return d.toDecimalPlaces(p.toNumber());var g=d.toDecimalPlaces(h),b=Pn(d,g,r.relTol,r.absTol)?g:d;return b.toDecimalPlaces(p.toNumber())},bigint:m=>m,"bigint, number":(m,d)=>m,"bigint, BigNumber":(m,d)=>m,Fraction:function(d){return d.round()},"Fraction, number":function(d,p){if(p%1)throw new TypeError(Ao);return d.round(p)},"Fraction, BigNumber":function(d,p){if(!p.isInteger())throw new TypeError(Ao);return d.round(p.toNumber())},"Unit, number, Unit":t.referToSelf(m=>function(d,p,h){var g=d.toNumeric(h);return h.multiply(m(g,p))}),"Unit, BigNumber, Unit":t.referToSelf(m=>(d,p,h)=>m(d,p.toNumber(),h)),"Array | Matrix, number | BigNumber, Unit":t.referToSelf(m=>(d,p,h)=>Xe(d,g=>m(g,p,h),!0)),"Array | Matrix | Unit, Unit":t.referToSelf(m=>(d,p)=>m(d,0,p)),"Array | Matrix":t.referToSelf(m=>d=>Xe(d,m,!0)),"SparseMatrix, number | BigNumber":t.referToSelf(m=>(d,p)=>u(d,p,m,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(m=>(d,p)=>c(d,p,m,!1)),"Array, number | BigNumber":t.referToSelf(m=>(d,p)=>c(n(d),p,m,!1).valueOf()),"number | Complex | BigNumber | Fraction, SparseMatrix":t.referToSelf(m=>(d,p)=>a(d,0)?i(p.size(),p.storage()):l(p,d,m,!0)),"number | Complex | BigNumber | Fraction, DenseMatrix":t.referToSelf(m=>(d,p)=>a(d,0)?i(p.size(),p.storage()):c(p,d,m,!0)),"number | Complex | BigNumber | Fraction, Array":t.referToSelf(m=>(d,p)=>c(n(p),d,m,!0).valueOf())})}),Kv="log",oR=["config","typed","typeOf","divideScalar","Complex"],sR=Math.log(16),uR=I(Kv,oR,e=>{var{typed:t,typeOf:r,config:n,divideScalar:a,Complex:i}=e;function o(u){return u.log()}function s(u){return o(new i(u,0))}return t(Kv,{number:function(l){return l>=0||n.predictable?c0(l):s(l)},bigint:Ad(sR,c0,n,s),Complex:o,BigNumber:function(l){return!l.isNegative()||n.predictable?l.ln():s(l.toNumber())},"any, any":t.referToSelf(u=>(l,c)=>{if(r(l)==="Fraction"&&r(c)==="Fraction"){var f=l.log(c);if(f!==null)return f}return a(u(l),u(c))})})}),Yv="log1p",lR=["typed","config","divideScalar","log","Complex"],cR=I(Yv,lR,e=>{var{typed:t,config:r,divideScalar:n,log:a,Complex:i}=e;return t(Yv,{number:function(u){return u>=-1||r.predictable?a9(u):o(new i(u,0))},Complex:o,BigNumber:function(u){var l=u.plus(1);return!l.isNegative()||r.predictable?l.ln():o(new i(u.toNumber(),0))},"Array | Matrix":t.referToSelf(s=>u=>Xe(u,s)),"any, any":t.referToSelf(s=>(u,l)=>n(s(u),a(l)))});function o(s){var u=s.re+1;return new i(Math.log(Math.sqrt(u*u+s.im*s.im)),Math.atan2(s.im,u))}}),Zv="nthRoots",fR=["config","typed","divideScalar","Complex"],mR=I(Zv,fR,e=>{var{typed:t,config:r,divideScalar:n,Complex:a}=e,i=[function(u){return new a(u,0)},function(u){return new a(0,u)},function(u){return new a(-u,0)},function(u){return new a(0,-u)}];function o(s,u){if(u<0)throw new Error("Root must be greater than zero");if(u===0)throw new Error("Root must be non-zero");if(u%1!==0)throw new Error("Root must be an integer");if(s===0||s.abs()===0)return[new a(0,0)];var l=typeof s=="number",c;(l||s.re===0||s.im===0)&&(l?c=2*+(s<0):s.im===0?c=2*+(s.re<0):c=2*+(s.im<0)+1);for(var f=s.arg(),m=s.abs(),d=[],p=Math.pow(m,1/u),h=0;h<u;h++){var g=(c+4*h)/u;if(g===Math.round(g)){d.push(i[g%4](p));continue}d.push(new a({r:p,phi:(f+2*Math.PI*h)/u}))}return d}return t(Zv,{Complex:function(u){return o(u,2)},"Complex, number":o})}),Qv="dotPow",dR=["typed","equalScalar","matrix","pow","DenseMatrix","concat","SparseMatrix"],hR=I(Qv,dR,e=>{var{typed:t,equalScalar:r,matrix:n,pow:a,DenseMatrix:i,concat:o,SparseMatrix:s}=e,u=Wr({typed:t}),l=la({typed:t,SparseMatrix:s}),c=Sr({typed:t,equalScalar:r}),f=sr({typed:t,DenseMatrix:i}),m=$t({typed:t,matrix:n,concat:o}),d={};for(var p in a.signatures)Object.prototype.hasOwnProperty.call(a.signatures,p)&&!p.includes("Matrix")&&!p.includes("Array")&&(d[p]=a.signatures[p]);var h=t(d);return t(Qv,m({elop:h,SS:l,DS:u,Ss:c,sS:f}))}),Xv="dotDivide",pR=["typed","matrix","equalScalar","divideScalar","DenseMatrix","concat","SparseMatrix"],gR=I(Xv,pR,e=>{var{typed:t,matrix:r,equalScalar:n,divideScalar:a,DenseMatrix:i,concat:o,SparseMatrix:s}=e,u=Zn({typed:t,equalScalar:n}),l=Wr({typed:t}),c=la({typed:t,SparseMatrix:s}),f=Sr({typed:t,equalScalar:n}),m=sr({typed:t,DenseMatrix:i}),d=$t({typed:t,matrix:r,concat:o});return t(Xv,d({elop:a,SS:c,DS:l,SD:u,Ss:f,sS:m}))});function eu(e){var{DenseMatrix:t}=e;return function(n,a,i){var o=n.size();if(o.length!==2)throw new RangeError("Matrix must be two dimensional (size: "+nt(o)+")");var s=o[0],u=o[1];if(s!==u)throw new RangeError("Matrix must be square (size: "+nt(o)+")");var l=[];if(Re(a)){var c=a.size(),f=a._data;if(c.length===1){if(c[0]!==s)throw new RangeError("Dimension mismatch. Matrix columns must match vector length.");for(var m=0;m<s;m++)l[m]=[f[m]];return new t({data:l,size:[s,1],datatype:a._datatype})}if(c.length===2){if(c[0]!==s||c[1]!==1)throw new RangeError("Dimension mismatch. Matrix columns must match vector length.");if(Il(a)){if(i){l=[];for(var d=0;d<s;d++)l[d]=[f[d][0]];return new t({data:l,size:[s,1],datatype:a._datatype})}return a}if(qi(a)){for(var p=0;p<s;p++)l[p]=[0];for(var h=a._values,g=a._index,b=a._ptr,D=b[1],y=b[0];y<D;y++){var w=g[y];l[w][0]=h[y]}return new t({data:l,size:[s,1],datatype:a._datatype})}}throw new RangeError("Dimension mismatch. The right side has to be either 1- or 2-dimensional vector.")}if(Et(a)){var x=Ue(a);if(x.length===1){if(x[0]!==s)throw new RangeError("Dimension mismatch. Matrix columns must match vector length.");for(var v=0;v<s;v++)l[v]=[a[v]];return new t({data:l,size:[s,1]})}if(x.length===2){if(x[0]!==s||x[1]!==1)throw new RangeError("Dimension mismatch. Matrix columns must match vector length.");for(var N=0;N<s;N++)l[N]=[a[N][0]];return new t({data:l,size:[s,1]})}throw new RangeError("Dimension mismatch. The right side has to be either 1- or 2-dimensional vector.")}}}var e1="lsolve",vR=["typed","matrix","divideScalar","multiplyScalar","subtractScalar","equalScalar","DenseMatrix"],yR=I(e1,vR,e=>{var{typed:t,matrix:r,divideScalar:n,multiplyScalar:a,subtractScalar:i,equalScalar:o,DenseMatrix:s}=e,u=eu({DenseMatrix:s});return t(e1,{"SparseMatrix, Array | Matrix":function(m,d){return c(m,d)},"DenseMatrix, Array | Matrix":function(m,d){return l(m,d)},"Array, Array | Matrix":function(m,d){var p=r(m),h=l(p,d);return h.valueOf()}});function l(f,m){m=u(f,m,!0);for(var d=m._data,p=f._size[0],h=f._size[1],g=[],b=f._data,D=0;D<h;D++){var y=d[D][0]||0,w=void 0;if(o(y,0))w=0;else{var x=b[D][D];if(o(x,0))throw new Error("Linear system cannot be solved since matrix is singular");w=n(y,x);for(var v=D+1;v<p;v++)d[v]=[i(d[v][0]||0,a(w,b[v][D]))]}g[D]=[w]}return new s({data:g,size:[p,1]})}function c(f,m){m=u(f,m,!0);for(var d=m._data,p=f._size[0],h=f._size[1],g=f._values,b=f._index,D=f._ptr,y=[],w=0;w<h;w++){var x=d[w][0]||0;if(o(x,0))y[w]=[0];else{for(var v=0,N=[],C=[],A=D[w],E=D[w+1],S=A;S<E;S++){var F=b[S];F===w?v=g[S]:F>w&&(N.push(g[S]),C.push(F))}if(o(v,0))throw new Error("Linear system cannot be solved since matrix is singular");for(var k=n(x,v),B=0,$=C.length;B<$;B++){var M=C[B];d[M]=[i(d[M][0]||0,a(k,N[B]))]}y[w]=[k]}}return new s({data:y,size:[p,1]})}}),t1="usolve",bR=["typed","matrix","divideScalar","multiplyScalar","subtractScalar","equalScalar","DenseMatrix"],wR=I(t1,bR,e=>{var{typed:t,matrix:r,divideScalar:n,multiplyScalar:a,subtractScalar:i,equalScalar:o,DenseMatrix:s}=e,u=eu({DenseMatrix:s});return t(t1,{"SparseMatrix, Array | Matrix":function(m,d){return c(m,d)},"DenseMatrix, Array | Matrix":function(m,d){return l(m,d)},"Array, Array | Matrix":function(m,d){var p=r(m),h=l(p,d);return h.valueOf()}});function l(f,m){m=u(f,m,!0);for(var d=m._data,p=f._size[0],h=f._size[1],g=[],b=f._data,D=h-1;D>=0;D--){var y=d[D][0]||0,w=void 0;if(o(y,0))w=0;else{var x=b[D][D];if(o(x,0))throw new Error("Linear system cannot be solved since matrix is singular");w=n(y,x);for(var v=D-1;v>=0;v--)d[v]=[i(d[v][0]||0,a(w,b[v][D]))]}g[D]=[w]}return new s({data:g,size:[p,1]})}function c(f,m){m=u(f,m,!0);for(var d=m._data,p=f._size[0],h=f._size[1],g=f._values,b=f._index,D=f._ptr,y=[],w=h-1;w>=0;w--){var x=d[w][0]||0;if(o(x,0))y[w]=[0];else{for(var v=0,N=[],C=[],A=D[w],E=D[w+1],S=E-1;S>=A;S--){var F=b[S];F===w?v=g[S]:F<w&&(N.push(g[S]),C.push(F))}if(o(v,0))throw new Error("Linear system cannot be solved since matrix is singular");for(var k=n(x,v),B=0,$=C.length;B<$;B++){var M=C[B];d[M]=[i(d[M][0],a(k,N[B]))]}y[w]=[k]}}return new s({data:y,size:[p,1]})}}),r1="lsolveAll",xR=["typed","matrix","divideScalar","multiplyScalar","subtractScalar","equalScalar","DenseMatrix"],DR=I(r1,xR,e=>{var{typed:t,matrix:r,divideScalar:n,multiplyScalar:a,subtractScalar:i,equalScalar:o,DenseMatrix:s}=e,u=eu({DenseMatrix:s});return t(r1,{"SparseMatrix, Array | Matrix":function(m,d){return c(m,d)},"DenseMatrix, Array | Matrix":function(m,d){return l(m,d)},"Array, Array | Matrix":function(m,d){var p=r(m),h=l(p,d);return h.map(g=>g.valueOf())}});function l(f,m){for(var d=[u(f,m,!0)._data.map(C=>C[0])],p=f._data,h=f._size[0],g=f._size[1],b=0;b<g;b++)for(var D=d.length,y=0;y<D;y++){var w=d[y];if(o(p[b][b],0))if(o(w[b],0)){if(y===0){var v=[...w];v[b]=1;for(var N=b+1;N<g;N++)v[N]=i(v[N],p[N][b]);d.push(v)}}else{if(y===0)return[];d.splice(y,1),y-=1,D-=1}else{w[b]=n(w[b],p[b][b]);for(var x=b+1;x<g;x++)w[x]=i(w[x],a(w[b],p[x][b]))}}return d.map(C=>new s({data:C.map(A=>[A]),size:[h,1]}))}function c(f,m){for(var d=[u(f,m,!0)._data.map(te=>te[0])],p=f._size[0],h=f._size[1],g=f._values,b=f._index,D=f._ptr,y=0;y<h;y++)for(var w=d.length,x=0;x<w;x++){for(var v=d[x],N=[],C=[],A=D[y],E=D[y+1],S=0,F=A;F<E;F++){var k=b[F];k===y?S=g[F]:k>y&&(N.push(g[F]),C.push(k))}if(o(S,0))if(o(v[y],0)){if(x===0){var z=[...v];z[y]=1;for(var G=0,R=C.length;G<R;G++){var Z=C[G];z[Z]=i(z[Z],N[G])}d.push(z)}}else{if(x===0)return[];d.splice(x,1),x-=1,w-=1}else{v[y]=n(v[y],S);for(var B=0,$=C.length;B<$;B++){var M=C[B];v[M]=i(v[M],a(v[y],N[B]))}}}return d.map(te=>new s({data:te.map(P=>[P]),size:[p,1]}))}}),n1="usolveAll",NR=["typed","matrix","divideScalar","multiplyScalar","subtractScalar","equalScalar","DenseMatrix"],AR=I(n1,NR,e=>{var{typed:t,matrix:r,divideScalar:n,multiplyScalar:a,subtractScalar:i,equalScalar:o,DenseMatrix:s}=e,u=eu({DenseMatrix:s});return t(n1,{"SparseMatrix, Array | Matrix":function(m,d){return c(m,d)},"DenseMatrix, Array | Matrix":function(m,d){return l(m,d)},"Array, Array | Matrix":function(m,d){var p=r(m),h=l(p,d);return h.map(g=>g.valueOf())}});function l(f,m){for(var d=[u(f,m,!0)._data.map(C=>C[0])],p=f._data,h=f._size[0],g=f._size[1],b=g-1;b>=0;b--)for(var D=d.length,y=0;y<D;y++){var w=d[y];if(o(p[b][b],0))if(o(w[b],0)){if(y===0){var v=[...w];v[b]=1;for(var N=b-1;N>=0;N--)v[N]=i(v[N],p[N][b]);d.push(v)}}else{if(y===0)return[];d.splice(y,1),y-=1,D-=1}else{w[b]=n(w[b],p[b][b]);for(var x=b-1;x>=0;x--)w[x]=i(w[x],a(w[b],p[x][b]))}}return d.map(C=>new s({data:C.map(A=>[A]),size:[h,1]}))}function c(f,m){for(var d=[u(f,m,!0)._data.map(te=>te[0])],p=f._size[0],h=f._size[1],g=f._values,b=f._index,D=f._ptr,y=h-1;y>=0;y--)for(var w=d.length,x=0;x<w;x++){for(var v=d[x],N=[],C=[],A=D[y],E=D[y+1],S=0,F=E-1;F>=A;F--){var k=b[F];k===y?S=g[F]:k<y&&(N.push(g[F]),C.push(k))}if(o(S,0))if(o(v[y],0)){if(x===0){var z=[...v];z[y]=1;for(var G=0,R=C.length;G<R;G++){var Z=C[G];z[Z]=i(z[Z],N[G])}d.push(z)}}else{if(x===0)return[];d.splice(x,1),x-=1,w-=1}else{v[y]=n(v[y],S);for(var B=0,$=C.length;B<$;B++){var M=C[B];v[M]=i(v[M],a(v[y],N[B]))}}}return d.map(te=>new s({data:te.map(P=>[P]),size:[p,1]}))}}),CR="matAlgo08xS0Sid",ER=["typed","equalScalar"],Sd=I(CR,ER,e=>{var{typed:t,equalScalar:r}=e;return function(a,i,o){var s=a._values,u=a._index,l=a._ptr,c=a._size,f=a._datatype||a._data===void 0?a._datatype:a.getDataType(),m=i._values,d=i._index,p=i._ptr,h=i._size,g=i._datatype||i._data===void 0?i._datatype:i.getDataType();if(c.length!==h.length)throw new at(c.length,h.length);if(c[0]!==h[0]||c[1]!==h[1])throw new RangeError("Dimension mismatch. Matrix A ("+c+") must match Matrix B ("+h+")");if(!s||!m)throw new Error("Cannot perform operation on Pattern Sparse Matrices");var b=c[0],D=c[1],y,w=r,x=0,v=o;typeof f=="string"&&f===g&&f!=="mixed"&&(y=f,w=t.find(r,[y,y]),x=t.convert(0,y),v=t.find(o,[y,y]));for(var N=[],C=[],A=[],E=[],S=[],F,k,B,$,M=0;M<D;M++){A[M]=C.length;var z=M+1;for(k=l[M],B=l[M+1],F=k;F<B;F++)$=u[F],S[$]=z,E[$]=s[F],C.push($);for(k=p[M],B=p[M+1],F=k;F<B;F++)$=d[F],S[$]===z&&(E[$]=v(E[$],m[F]));for(F=A[M];F<C.length;){$=C[F];var G=E[$];w(G,x)?C.splice(F,1):(N.push(G),F++)}}return A[D]=C.length,a.createSparseMatrix({values:N,index:C,ptr:A,size:[b,D],datatype:f===a._datatype&&g===i._datatype?y:void 0})}}),Td=I("useMatrixForArrayScalar",["typed","matrix"],e=>{var{typed:t,matrix:r}=e;return{"Array, number":t.referTo("DenseMatrix, number",n=>(a,i)=>n(r(a),i).valueOf()),"Array, BigNumber":t.referTo("DenseMatrix, BigNumber",n=>(a,i)=>n(r(a),i).valueOf()),"number, Array":t.referTo("number, DenseMatrix",n=>(a,i)=>n(a,r(i)).valueOf()),"BigNumber, Array":t.referTo("BigNumber, DenseMatrix",n=>(a,i)=>n(a,r(i)).valueOf())}}),a1="leftShift",SR=["typed","matrix","equalScalar","zeros","DenseMatrix","concat"],TR=I(a1,SR,e=>{var{typed:t,matrix:r,equalScalar:n,zeros:a,DenseMatrix:i,concat:o}=e,s=gi({typed:t}),u=Zn({typed:t,equalScalar:n}),l=Sd({typed:t,equalScalar:n}),c=Xi({typed:t,DenseMatrix:i}),f=Sr({typed:t,equalScalar:n}),m=Yn({typed:t}),d=$t({typed:t,matrix:r,concat:o}),p=Td({typed:t,matrix:r});return t(a1,{"number, number":Hx,"BigNumber, BigNumber":Kz,"bigint, bigint":(h,g)=>h<<g,"SparseMatrix, number | BigNumber":t.referToSelf(h=>(g,b)=>n(b,0)?g.clone():f(g,b,h,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(h=>(g,b)=>n(b,0)?g.clone():m(g,b,h,!1)),"number | BigNumber, SparseMatrix":t.referToSelf(h=>(g,b)=>n(g,0)?a(b.size(),b.storage()):c(b,g,h,!0)),"number | BigNumber, DenseMatrix":t.referToSelf(h=>(g,b)=>n(g,0)?a(b.size(),b.storage()):m(b,g,h,!0))},p,d({SS:l,DS:s,SD:u}))}),i1="rightArithShift",MR=["typed","matrix","equalScalar","zeros","DenseMatrix","concat"],FR=I(i1,MR,e=>{var{typed:t,matrix:r,equalScalar:n,zeros:a,DenseMatrix:i,concat:o}=e,s=gi({typed:t}),u=Zn({typed:t,equalScalar:n}),l=Sd({typed:t,equalScalar:n}),c=Xi({typed:t,DenseMatrix:i}),f=Sr({typed:t,equalScalar:n}),m=Yn({typed:t}),d=$t({typed:t,matrix:r,concat:o}),p=Td({typed:t,matrix:r});return t(i1,{"number, number":Gx,"BigNumber, BigNumber":Yz,"bigint, bigint":(h,g)=>h>>g,"SparseMatrix, number | BigNumber":t.referToSelf(h=>(g,b)=>n(b,0)?g.clone():f(g,b,h,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(h=>(g,b)=>n(b,0)?g.clone():m(g,b,h,!1)),"number | BigNumber, SparseMatrix":t.referToSelf(h=>(g,b)=>n(g,0)?a(b.size(),b.storage()):c(b,g,h,!0)),"number | BigNumber, DenseMatrix":t.referToSelf(h=>(g,b)=>n(g,0)?a(b.size(),b.storage()):m(b,g,h,!0))},p,d({SS:l,DS:s,SD:u}))}),o1="rightLogShift",PR=["typed","matrix","equalScalar","zeros","DenseMatrix","concat"],kR=I(o1,PR,e=>{var{typed:t,matrix:r,equalScalar:n,zeros:a,DenseMatrix:i,concat:o}=e,s=gi({typed:t}),u=Zn({typed:t,equalScalar:n}),l=Sd({typed:t,equalScalar:n}),c=Xi({typed:t,DenseMatrix:i}),f=Sr({typed:t,equalScalar:n}),m=Yn({typed:t}),d=$t({typed:t,matrix:r,concat:o}),p=Td({typed:t,matrix:r});return t(o1,{"number, number":Vx,"SparseMatrix, number | BigNumber":t.referToSelf(h=>(g,b)=>n(b,0)?g.clone():f(g,b,h,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(h=>(g,b)=>n(b,0)?g.clone():m(g,b,h,!1)),"number | BigNumber, SparseMatrix":t.referToSelf(h=>(g,b)=>n(g,0)?a(b.size(),b.storage()):c(b,g,h,!0)),"number | BigNumber, DenseMatrix":t.referToSelf(h=>(g,b)=>n(g,0)?a(b.size(),b.storage()):m(b,g,h,!0))},p,d({SS:l,DS:s,SD:u}))}),s1="and",OR=["typed","matrix","equalScalar","zeros","not","concat"],$2=I(s1,OR,e=>{var{typed:t,matrix:r,equalScalar:n,zeros:a,not:i,concat:o}=e,s=Zn({typed:t,equalScalar:n}),u=Nc({typed:t,equalScalar:n}),l=Sr({typed:t,equalScalar:n}),c=Yn({typed:t}),f=$t({typed:t,matrix:r,concat:o});return t(s1,{"number, number":Im,"Complex, Complex":function(d,p){return(d.re!==0||d.im!==0)&&(p.re!==0||p.im!==0)},"BigNumber, BigNumber":function(d,p){return!d.isZero()&&!p.isZero()&&!d.isNaN()&&!p.isNaN()},"bigint, bigint":Im,"Unit, Unit":t.referToSelf(m=>(d,p)=>m(d.value||0,p.value||0)),"SparseMatrix, any":t.referToSelf(m=>(d,p)=>i(p)?a(d.size(),d.storage()):l(d,p,m,!1)),"DenseMatrix, any":t.referToSelf(m=>(d,p)=>i(p)?a(d.size(),d.storage()):c(d,p,m,!1)),"any, SparseMatrix":t.referToSelf(m=>(d,p)=>i(d)?a(d.size(),d.storage()):l(p,d,m,!0)),"any, DenseMatrix":t.referToSelf(m=>(d,p)=>i(d)?a(d.size(),d.storage()):c(p,d,m,!0)),"Array, any":t.referToSelf(m=>(d,p)=>m(r(d),p).valueOf()),"any, Array":t.referToSelf(m=>(d,p)=>m(d,r(p)).valueOf())},f({SS:u,DS:s}))}),Zl="compare",$R=["typed","config","matrix","equalScalar","BigNumber","Fraction","DenseMatrix","concat"],BR=I(Zl,$R,e=>{var{typed:t,config:r,equalScalar:n,matrix:a,BigNumber:i,Fraction:o,DenseMatrix:s,concat:u}=e,l=Wr({typed:t}),c=Dc({typed:t,equalScalar:n}),f=sr({typed:t,DenseMatrix:s}),m=$t({typed:t,matrix:a,concat:u}),d=ts({typed:t});return t(Zl,_R({typed:t,config:r}),{"boolean, boolean":function(h,g){return h===g?0:h>g?1:-1},"BigNumber, BigNumber":function(h,g){return Pn(h,g,r.relTol,r.absTol)?new i(0):new i(h.cmp(g))},"bigint, bigint":function(h,g){return h===g?0n:h>g?1n:-1n},"Fraction, Fraction":function(h,g){return new o(h.compare(g))},"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},d,m({SS:c,DS:l,Ss:f}))}),_R=I(Zl,["typed","config"],e=>{var{typed:t,config:r}=e;return t(Zl,{"number, number":function(a,i){return Er(a,i,r.relTol,r.absTol)?0:a>i?1:-1}})}),Pf,u1;function IR(){return u1||(u1=1,Pf=function e(t,r){var n=/(^([+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?)?$|^0x[0-9a-f]+$|\d+)/gi,a=/(^[ ]*|[ ]*$)/g,i=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,o=/^0x[0-9a-f]+$/i,s=/^0/,u=function(y){return e.insensitive&&(""+y).toLowerCase()||""+y},l=u(t).replace(a,"")||"",c=u(r).replace(a,"")||"",f=l.replace(n,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),m=c.replace(n,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),d=parseInt(l.match(o),16)||f.length!==1&&l.match(i)&&Date.parse(l),p=parseInt(c.match(o),16)||d&&c.match(i)&&Date.parse(c)||null,h,g;if(p){if(d<p)return-1;if(d>p)return 1}for(var b=0,D=Math.max(f.length,m.length);b<D;b++){if(h=!(f[b]||"").match(s)&&parseFloat(f[b])||f[b]||0,g=!(m[b]||"").match(s)&&parseFloat(m[b])||m[b]||0,isNaN(h)!==isNaN(g))return isNaN(h)?1:-1;if(typeof h!=typeof g&&(h+="",g+=""),h<g)return-1;if(h>g)return 1}return 0}),Pf}var zR=IR();const Co=oc.getDefaultExportFromCjs(zR);var l1="compareNatural",jR=["typed","compare"],qR=I(l1,jR,e=>{var{typed:t,compare:r}=e,n=r.signatures["boolean,boolean"];return t(l1,{"any, any":a});function a(u,l){var c=Tt(u),f=Tt(l),m;if((c==="number"||c==="BigNumber"||c==="Fraction")&&(f==="number"||f==="BigNumber"||f==="Fraction"))return m=r(u,l),m.toString()!=="0"?m>0?1:-1:Co(c,f);var d=["Array","DenseMatrix","SparseMatrix"];if(d.includes(c)||d.includes(f))return m=i(a,u,l),m!==0?m:Co(c,f);if(c!==f)return Co(c,f);if(c==="Complex")return RR(u,l);if(c==="Unit")return u.equalBase(l)?a(u.value,l.value):o(a,u.formatUnits(),l.formatUnits());if(c==="boolean")return n(u,l);if(c==="string")return Co(u,l);if(c==="Object")return s(a,u,l);if(c==="null"||c==="undefined")return 0;throw new TypeError('Unsupported type of value "'+c+'"')}function i(u,l,c){return qi(l)&&qi(c)?o(u,l.toJSON().values,c.toJSON().values):qi(l)?i(u,l.toArray(),c):qi(c)?i(u,l,c.toArray()):Il(l)?i(u,l.toJSON().data,c):Il(c)?i(u,l,c.toJSON().data):Array.isArray(l)?Array.isArray(c)?o(u,l,c):i(u,l,[c]):i(u,[l],c)}function o(u,l,c){for(var f=0,m=Math.min(l.length,c.length);f<m;f++){var d=u(l[f],c[f]);if(d!==0)return d}return l.length>c.length?1:l.length<c.length?-1:0}function s(u,l,c){var f=Object.keys(l),m=Object.keys(c);f.sort(Co),m.sort(Co);var d=o(u,f,m);if(d!==0)return d;for(var p=0;p<f.length;p++){var h=u(l[f[p]],c[m[p]]);if(h!==0)return h}return 0}});function RR(e,t){return e.re>t.re?1:e.re<t.re?-1:e.im>t.im?1:e.im<t.im?-1:0}var c1="compareText",LR=["typed","matrix","concat"];Fm.signature="any, any";var HR=I(c1,LR,e=>{var{typed:t,matrix:r,concat:n}=e,a=$t({typed:t,matrix:r,concat:n});return t(c1,Fm,a({elop:Fm,Ds:!0}))}),Ql="equal",GR=["typed","matrix","equalScalar","DenseMatrix","concat","SparseMatrix"],VR=I(Ql,GR,e=>{var{typed:t,matrix:r,equalScalar:n,DenseMatrix:a,concat:i,SparseMatrix:o}=e,s=Wr({typed:t}),u=la({typed:t,SparseMatrix:o}),l=sr({typed:t,DenseMatrix:a}),c=$t({typed:t,matrix:r,concat:i});return t(Ql,UR({typed:t,equalScalar:n}),c({elop:n,SS:u,DS:s,Ss:l}))}),UR=I(Ql,["typed","equalScalar"],e=>{var{typed:t,equalScalar:r}=e;return t(Ql,{"any, any":function(a,i){return a===null?i===null:i===null?a===null:a===void 0?i===void 0:i===void 0?a===void 0:r(a,i)}})}),f1="equalText",WR=["typed","compareText","isZero"],JR=I(f1,WR,e=>{var{typed:t,compareText:r,isZero:n}=e;return t(f1,{"any, any":function(i,o){return n(r(i,o))}})}),Xl="smaller",KR=["typed","config","bignumber","matrix","DenseMatrix","concat","SparseMatrix"],YR=I(Xl,KR,e=>{var{typed:t,config:r,bignumber:n,matrix:a,DenseMatrix:i,concat:o,SparseMatrix:s}=e,u=Wr({typed:t}),l=la({typed:t,SparseMatrix:s}),c=sr({typed:t,DenseMatrix:i}),f=$t({typed:t,matrix:a,concat:o}),m=ts({typed:t});function d(p,h){return p.lt(h)&&!Pn(p,h,r.relTol,r.absTol)}return t(Xl,ZR({typed:t,config:r}),{"boolean, boolean":(p,h)=>p<h,"BigNumber, BigNumber":d,"bigint, bigint":(p,h)=>p<h,"Fraction, Fraction":(p,h)=>p.compare(h)===-1,"Fraction, BigNumber":function(h,g){return d(n(h),g)},"BigNumber, Fraction":function(h,g){return d(h,n(g))},"Complex, Complex":function(h,g){throw new TypeError("No ordering relation is defined for complex numbers")}},m,f({SS:l,DS:u,Ss:c}))}),ZR=I(Xl,["typed","config"],e=>{var{typed:t,config:r}=e;return t(Xl,{"number, number":function(a,i){return a<i&&!Er(a,i,r.relTol,r.absTol)}})}),ec="smallerEq",QR=["typed","config","matrix","DenseMatrix","concat","SparseMatrix"],XR=I(ec,QR,e=>{var{typed:t,config:r,matrix:n,DenseMatrix:a,concat:i,SparseMatrix:o}=e,s=Wr({typed:t}),u=la({typed:t,SparseMatrix:o}),l=sr({typed:t,DenseMatrix:a}),c=$t({typed:t,matrix:n,concat:i}),f=ts({typed:t});return t(ec,eL({typed:t,config:r}),{"boolean, boolean":(m,d)=>m<=d,"BigNumber, BigNumber":function(d,p){return d.lte(p)||Pn(d,p,r.relTol,r.absTol)},"bigint, bigint":(m,d)=>m<=d,"Fraction, Fraction":(m,d)=>m.compare(d)!==1,"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},f,c({SS:u,DS:s,Ss:l}))}),eL=I(ec,["typed","config"],e=>{var{typed:t,config:r}=e;return t(ec,{"number, number":function(a,i){return a<=i||Er(a,i,r.relTol,r.absTol)}})}),tc="larger",tL=["typed","config","bignumber","matrix","DenseMatrix","concat","SparseMatrix"],rL=I(tc,tL,e=>{var{typed:t,config:r,bignumber:n,matrix:a,DenseMatrix:i,concat:o,SparseMatrix:s}=e,u=Wr({typed:t}),l=la({typed:t,SparseMatrix:s}),c=sr({typed:t,DenseMatrix:i}),f=$t({typed:t,matrix:a,concat:o}),m=ts({typed:t});function d(p,h){return p.gt(h)&&!Pn(p,h,r.relTol,r.absTol)}return t(tc,nL({typed:t,config:r}),{"boolean, boolean":(p,h)=>p>h,"BigNumber, BigNumber":d,"bigint, bigint":(p,h)=>p>h,"Fraction, Fraction":(p,h)=>p.compare(h)===1,"Fraction, BigNumber":function(h,g){return d(n(h),g)},"BigNumber, Fraction":function(h,g){return d(h,n(g))},"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},m,f({SS:l,DS:u,Ss:c}))}),nL=I(tc,["typed","config"],e=>{var{typed:t,config:r}=e;return t(tc,{"number, number":function(a,i){return a>i&&!Er(a,i,r.relTol,r.absTol)}})}),rc="largerEq",aL=["typed","config","matrix","DenseMatrix","concat","SparseMatrix"],iL=I(rc,aL,e=>{var{typed:t,config:r,matrix:n,DenseMatrix:a,concat:i,SparseMatrix:o}=e,s=Wr({typed:t}),u=la({typed:t,SparseMatrix:o}),l=sr({typed:t,DenseMatrix:a}),c=$t({typed:t,matrix:n,concat:i}),f=ts({typed:t});return t(rc,oL({typed:t,config:r}),{"boolean, boolean":(m,d)=>m>=d,"BigNumber, BigNumber":function(d,p){return d.gte(p)||Pn(d,p,r.relTol,r.absTol)},"bigint, bigint":function(d,p){return d>=p},"Fraction, Fraction":(m,d)=>m.compare(d)!==-1,"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},f,c({SS:u,DS:s,Ss:l}))}),oL=I(rc,["typed","config"],e=>{var{typed:t,config:r}=e;return t(rc,{"number, number":function(a,i){return a>=i||Er(a,i,r.relTol,r.absTol)}})}),m1="deepEqual",sL=["typed","equal"],uL=I(m1,sL,e=>{var{typed:t,equal:r}=e;return t(m1,{"any, any":function(i,o){return n(i.valueOf(),o.valueOf())}});function n(a,i){if(Array.isArray(a))if(Array.isArray(i)){var o=a.length;if(o!==i.length)return!1;for(var s=0;s<o;s++)if(!n(a[s],i[s]))return!1;return!0}else return!1;else return Array.isArray(i)?!1:r(a,i)}}),nc="unequal",lL=["typed","config","equalScalar","matrix","DenseMatrix","concat","SparseMatrix"],cL=I(nc,lL,e=>{var{typed:t,config:r,equalScalar:n,matrix:a,DenseMatrix:i,concat:o,SparseMatrix:s}=e,u=Wr({typed:t}),l=la({typed:t,SparseMatrix:s}),c=sr({typed:t,DenseMatrix:i}),f=$t({typed:t,matrix:a,concat:o});return t(nc,fL({typed:t,equalScalar:n}),f({elop:m,SS:l,DS:u,Ss:c}));function m(d,p){return!n(d,p)}}),fL=I(nc,["typed","equalScalar"],e=>{var{typed:t,equalScalar:r}=e;return t(nc,{"any, any":function(a,i){return a===null?i!==null:i===null?a!==null:a===void 0?i!==void 0:i===void 0?a!==void 0:!r(a,i)}})}),d1="partitionSelect",mL=["typed","isNumeric","isNaN","compare"],dL=I(d1,mL,e=>{var{typed:t,isNumeric:r,isNaN:n,compare:a}=e,i=a,o=(l,c)=>-a(l,c);return t(d1,{"Array | Matrix, number":function(c,f){return s(c,f,i)},"Array | Matrix, number, string":function(c,f,m){if(m==="asc")return s(c,f,i);if(m==="desc")return s(c,f,o);throw new Error('Compare string must be "asc" or "desc"')},"Array | Matrix, number, function":s});function s(l,c,f){if(!Oe(c)||c<0)throw new Error("k must be a non-negative integer");if(Re(l)){var m=l.size();if(m.length>1)throw new Error("Only one dimensional matrices supported");return u(l.valueOf(),c,f)}if(Array.isArray(l))return u(l,c,f)}function u(l,c,f){if(c>=l.length)throw new Error("k out of bounds");for(var m=0;m<l.length;m++)if(r(l[m])&&n(l[m]))return l[m];for(var d=0,p=l.length-1;d<p;){for(var h=d,g=p,b=l[Math.floor(Math.random()*(p-d+1))+d];h<g;)if(f(l[h],b)>=0){var D=l[g];l[g]=l[h],l[h]=D,--g}else++h;f(l[h],b)>0&&--h,c<=h?p=h:d=h+1}return l[c]}}),h1="sort",hL=["typed","matrix","compare","compareNatural"],pL=I(h1,hL,e=>{var{typed:t,matrix:r,compare:n,compareNatural:a}=e,i=n,o=(c,f)=>-n(c,f);return t(h1,{Array:function(f){return u(f),f.sort(i)},Matrix:function(f){return l(f),r(f.toArray().sort(i),f.storage())},"Array, function":function(f,m){return u(f),f.sort(m)},"Matrix, function":function(f,m){return l(f),r(f.toArray().sort(m),f.storage())},"Array, string":function(f,m){return u(f),f.sort(s(m))},"Matrix, string":function(f,m){return l(f),r(f.toArray().sort(s(m)),f.storage())}});function s(c){if(c==="asc")return i;if(c==="desc")return o;if(c==="natural")return a;throw new Error('String "asc", "desc", or "natural" expected')}function u(c){if(Ue(c).length!==1)throw new Error("One dimensional array expected")}function l(c){if(c.size().length!==1)throw new Error("One dimensional matrix expected")}}),p1="max",gL=["typed","config","numeric","larger","isNaN"],B2=I(p1,gL,e=>{var{typed:t,config:r,numeric:n,larger:a,isNaN:i}=e;return t(p1,{"Array | Matrix":s,"Array | Matrix, number | BigNumber":function(l,c){return xc(l,c.valueOf(),o)},"...":function(l){if(Qo(l))throw new TypeError("Scalar values expected in function max");return s(l)}});function o(u,l){try{return a(u,l)?u:l}catch(c){throw Ur(c,"max",l)}}function s(u){var l;if(mi(u,function(c){try{(i(c)||l===void 0||a(c,l))&&(l=c)}catch(f){throw Ur(f,"max",c)}}),l===void 0)throw new Error("Cannot calculate max of an empty array");return typeof l=="string"&&(l=n(l,hi(l,r))),l}}),g1="min",vL=["typed","config","numeric","smaller","isNaN"],_2=I(g1,vL,e=>{var{typed:t,config:r,numeric:n,smaller:a,isNaN:i}=e;return t(g1,{"Array | Matrix":s,"Array | Matrix, number | BigNumber":function(l,c){return xc(l,c.valueOf(),o)},"...":function(l){if(Qo(l))throw new TypeError("Scalar values expected in function min");return s(l)}});function o(u,l){try{return a(u,l)?u:l}catch(c){throw Ur(c,"min",l)}}function s(u){var l;if(mi(u,function(c){try{(i(c)||l===void 0||a(c,l))&&(l=c)}catch(f){throw Ur(f,"min",c)}}),l===void 0)throw new Error("Cannot calculate min of an empty array");return typeof l=="string"&&(l=n(l,hi(l,r))),l}}),yL="ImmutableDenseMatrix",bL=["smaller","DenseMatrix"],wL=I(yL,bL,e=>{var{smaller:t,DenseMatrix:r}=e;function n(a,i){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");if(i&&!Or(i))throw new Error("Invalid datatype: "+i);if(Re(a)||Et(a)){var o=new r(a,i);this._data=o._data,this._size=o._size,this._datatype=o._datatype,this._min=null,this._max=null}else if(a&&Et(a.data)&&Et(a.size))this._data=a.data,this._size=a.size,this._datatype=a.datatype,this._min=typeof a.min<"u"?a.min:null,this._max=typeof a.max<"u"?a.max:null;else{if(a)throw new TypeError("Unsupported type of data ("+Tt(a)+")");this._data=[],this._size=[0],this._datatype=i,this._min=null,this._max=null}}return n.prototype=new r,n.prototype.type="ImmutableDenseMatrix",n.prototype.isImmutableDenseMatrix=!0,n.prototype.subset=function(a){switch(arguments.length){case 1:{var i=r.prototype.subset.call(this,a);return Re(i)?new n({data:i._data,size:i._size,datatype:i._datatype}):i}case 2:case 3:throw new Error("Cannot invoke set subset on an Immutable Matrix instance");default:throw new SyntaxError("Wrong number of arguments")}},n.prototype.set=function(){throw new Error("Cannot invoke set on an Immutable Matrix instance")},n.prototype.resize=function(){throw new Error("Cannot invoke resize on an Immutable Matrix instance")},n.prototype.reshape=function(){throw new Error("Cannot invoke reshape on an Immutable Matrix instance")},n.prototype.clone=function(){return new n({data:We(this._data),size:We(this._size),datatype:this._datatype})},n.prototype.toJSON=function(){return{mathjs:"ImmutableDenseMatrix",data:this._data,size:this._size,datatype:this._datatype}},n.fromJSON=function(a){return new n(a)},n.prototype.swapRows=function(){throw new Error("Cannot invoke swapRows on an Immutable Matrix instance")},n.prototype.min=function(){if(this._min===null){var a=null;this.forEach(function(i){(a===null||t(i,a))&&(a=i)}),this._min=a!==null?a:void 0}return this._min},n.prototype.max=function(){if(this._max===null){var a=null;this.forEach(function(i){(a===null||t(a,i))&&(a=i)}),this._max=a!==null?a:void 0}return this._max},n},{isClass:!0}),xL="Index",DL=["ImmutableDenseMatrix","getMatrixDataType"],NL=I(xL,DL,e=>{var{ImmutableDenseMatrix:t,getMatrixDataType:r}=e;function n(i){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");this._dimensions=[],this._sourceSize=[],this._isScalar=!0;for(var o=0,s=arguments.length;o<s;o++){var u=arguments[o],l=Et(u),c=Re(u),f=typeof u,m=null;if(hd(u))this._dimensions.push(u),this._isScalar=!1;else if(l||c){var d=void 0;r(u)==="boolean"?(l&&(d=a(v1(u).valueOf())),c&&(d=a(v1(u._data).valueOf())),m=u.valueOf().length):d=a(u.valueOf()),this._dimensions.push(d);var p=d.size();(p.length!==1||p[0]!==1||m!==null)&&(this._isScalar=!1)}else if(f==="number")this._dimensions.push(a([u]));else if(f==="bigint")this._dimensions.push(a([Number(u)]));else if(f==="string")this._dimensions.push(u);else throw new TypeError("Dimension must be an Array, Matrix, number, bigint, string, or Range");this._sourceSize.push(m)}}n.prototype.type="Index",n.prototype.isIndex=!0;function a(i){for(var o=0,s=i.length;o<s;o++)if(typeof i[o]!="number"||!Oe(i[o]))throw new TypeError("Index parameters must be positive integer numbers");return new t(i)}return n.prototype.clone=function(){var i=new n;return i._dimensions=We(this._dimensions),i._isScalar=this._isScalar,i._sourceSize=this._sourceSize,i},n.create=function(i){var o=new n;return n.apply(o,i),o},n.prototype.size=function(){for(var i=[],o=0,s=this._dimensions.length;o<s;o++){var u=this._dimensions[o];i[o]=typeof u=="string"?1:u.size()[0]}return i},n.prototype.max=function(){for(var i=[],o=0,s=this._dimensions.length;o<s;o++){var u=this._dimensions[o];i[o]=typeof u=="string"?u:u.max()}return i},n.prototype.min=function(){for(var i=[],o=0,s=this._dimensions.length;o<s;o++){var u=this._dimensions[o];i[o]=typeof u=="string"?u:u.min()}return i},n.prototype.forEach=function(i){for(var o=0,s=this._dimensions.length;o<s;o++)i(this._dimensions[o],o,this)},n.prototype.dimension=function(i){return typeof i!="number"?null:this._dimensions[i]||null},n.prototype.isObjectProperty=function(){return this._dimensions.length===1&&typeof this._dimensions[0]=="string"},n.prototype.getObjectProperty=function(){return this.isObjectProperty()?this._dimensions[0]:null},n.prototype.isScalar=function(){return this._isScalar},n.prototype.toArray=function(){for(var i=[],o=0,s=this._dimensions.length;o<s;o++){var u=this._dimensions[o];i.push(typeof u=="string"?u:u.toArray())}return i},n.prototype.valueOf=n.prototype.toArray,n.prototype.toString=function(){for(var i=[],o=0,s=this._dimensions.length;o<s;o++){var u=this._dimensions[o];typeof u=="string"?i.push(JSON.stringify(u)):i.push(u.toString())}return"["+i.join(", ")+"]"},n.prototype.toJSON=function(){return{mathjs:"Index",dimensions:this._dimensions}},n.fromJSON=function(i){return n.create(i.dimensions)},n},{isClass:!0});function v1(e){var t=[];return e.forEach((r,n)=>{r&&t.push(n)}),t}var AL="FibonacciHeap",CL=["smaller","larger"],EL=I(AL,CL,e=>{var{smaller:t,larger:r}=e,n=1/Math.log((1+Math.sqrt(5))/2);function a(){if(!(this instanceof a))throw new SyntaxError("Constructor must be called with the new operator");this._minimum=null,this._size=0}a.prototype.type="FibonacciHeap",a.prototype.isFibonacciHeap=!0,a.prototype.insert=function(c,f){var m={key:c,value:f,degree:0};if(this._minimum){var d=this._minimum;m.left=d,m.right=d.right,d.right=m,m.right.left=m,t(c,d.key)&&(this._minimum=m)}else m.left=m,m.right=m,this._minimum=m;return this._size++,m},a.prototype.size=function(){return this._size},a.prototype.clear=function(){this._minimum=null,this._size=0},a.prototype.isEmpty=function(){return this._size===0},a.prototype.extractMinimum=function(){var c=this._minimum;if(c===null)return c;for(var f=this._minimum,m=c.degree,d=c.child;m>0;){var p=d.right;d.left.right=d.right,d.right.left=d.left,d.left=f,d.right=f.right,f.right=d,d.right.left=d,d.parent=null,d=p,m--}return c.left.right=c.right,c.right.left=c.left,c===c.right?f=null:(f=c.right,f=l(f,this._size)),this._size--,this._minimum=f,c},a.prototype.remove=function(c){this._minimum=i(this._minimum,c,-1),this.extractMinimum()};function i(c,f,m){f.key=m;var d=f.parent;return d&&t(f.key,d.key)&&(o(c,f,d),s(c,d)),t(f.key,c.key)&&(c=f),c}function o(c,f,m){f.left.right=f.right,f.right.left=f.left,m.degree--,m.child===f&&(m.child=f.right),m.degree===0&&(m.child=null),f.left=c,f.right=c.right,c.right=f,f.right.left=f,f.parent=null,f.mark=!1}function s(c,f){var m=f.parent;m&&(f.mark?(o(c,f,m),s(m)):f.mark=!0)}var u=function(f,m){f.left.right=f.right,f.right.left=f.left,f.parent=m,m.child?(f.left=m.child,f.right=m.child.right,m.child.right=f,f.right.left=f):(m.child=f,f.right=f,f.left=f),m.degree++,f.mark=!1};function l(c,f){var m=Math.floor(Math.log(f)*n)+1,d=new Array(m),p=0,h=c;if(h)for(p++,h=h.right;h!==c;)p++,h=h.right;for(var g;p>0;){for(var b=h.degree,D=h.right;g=d[b],!!g;){if(r(h.key,g.key)){var y=g;g=h,h=y}u(g,h),d[b]=null,b++}d[b]=h,h=D,p--}c=null;for(var w=0;w<m;w++)g=d[w],g&&(c?(g.left.right=g.right,g.right.left=g.left,g.left=c,g.right=c.right,c.right=g,g.right.left=g,t(g.key,c.key)&&(c=g)):c=g);return c}return a},{isClass:!0}),SL="Spa",TL=["addScalar","equalScalar","FibonacciHeap"],ML=I(SL,TL,e=>{var{addScalar:t,equalScalar:r,FibonacciHeap:n}=e;function a(){if(!(this instanceof a))throw new SyntaxError("Constructor must be called with the new operator");this._values=[],this._heap=new n}return a.prototype.type="Spa",a.prototype.isSpa=!0,a.prototype.set=function(i,o){if(this._values[i])this._values[i].value=o;else{var s=this._heap.insert(i,o);this._values[i]=s}},a.prototype.get=function(i){var o=this._values[i];return o?o.value:0},a.prototype.accumulate=function(i,o){var s=this._values[i];s?s.value=t(s.value,o):(s=this._heap.insert(i,o),this._values[i]=s)},a.prototype.forEach=function(i,o,s){var u=this._heap,l=this._values,c=[],f=u.extractMinimum();for(f&&c.push(f);f&&f.key<=o;)f.key>=i&&(r(f.value,0)||s(f.key,f.value,this)),f=u.extractMinimum(),f&&c.push(f);for(var m=0;m<c.length;m++){var d=c[m];f=u.insert(d.key,d.value),l[f.key]=f}},a.prototype.swap=function(i,o){var s=this._values[i],u=this._values[o];if(!s&&u)s=this._heap.insert(i,u.value),this._heap.remove(u),this._values[i]=s,this._values[o]=void 0;else if(s&&!u)u=this._heap.insert(o,s.value),this._heap.remove(s),this._values[o]=u,this._values[i]=void 0;else if(s&&u){var l=s.value;s.value=u.value,u.value=l}},a},{isClass:!0});function FL(e){var t=0,r=1,n=Object.create(null),a=Object.create(null),i=0,o=function(u){var l=a[u];if(l&&(delete n[l],delete a[u],--t,r===l)){if(!t){i=0,r=1;return}for(;!Object.prototype.hasOwnProperty.call(n,++r););}};return e=Math.abs(e),{hit:function(u){var l=a[u],c=++i;if(n[c]=u,a[u]=c,!l)return++t,t<=e?void 0:(u=n[r],o(u),u);if(delete n[l],r===l)for(;!Object.prototype.hasOwnProperty.call(n,++r););},delete:o,clear:function(){t=i=0,r=1,n=Object.create(null),a=Object.create(null)}}}function tu(e){var{hasher:t,limit:r}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return r=r??Number.POSITIVE_INFINITY,t=t??JSON.stringify,function n(){typeof n.cache!="object"&&(n.cache={values:new Map,lru:FL(r||Number.POSITIVE_INFINITY)});for(var a=[],i=0;i<arguments.length;i++)a[i]=arguments[i];var o=t(a);if(n.cache.values.has(o))return n.cache.lru.hit(o),n.cache.values.get(o);var s=e.apply(e,a);return n.cache.values.set(o,s),n.cache.values.delete(n.cache.lru.hit(o)),s}}var PL=tu(function(e){return new e(1).exp()},{hasher:Ac}),kL=tu(function(e){return new e(1).plus(new e(5).sqrt()).div(2)},{hasher:Ac}),Md=tu(function(e){return e.acos(-1)},{hasher:Ac}),OL=tu(function(e){return Md(e).times(2)},{hasher:Ac});function Ac(e){return e[0].precision}function y1(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function kf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?y1(Object(r),!0).forEach(function(n){nr(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):y1(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var $L="Unit",BL=["?on","config","addScalar","subtractScalar","multiplyScalar","divideScalar","pow","abs","fix","round","equal","isNumeric","format","toBest","number","Complex","BigNumber","Fraction"],_L=I($L,BL,e=>{var{on:t,config:r,addScalar:n,subtractScalar:a,multiplyScalar:i,divideScalar:o,pow:s,abs:u,fix:l,round:c,equal:f,isNumeric:m,format:d,toBest:p,number:h,Complex:g,BigNumber:b,Fraction:D}=e,y=h;function w(q,K){if(!(this instanceof w))throw new Error("Constructor must be called with the new operator");if(!(q==null||m(q)||ka(q)))throw new TypeError("First parameter in Unit constructor must be number, BigNumber, Fraction, Complex, or undefined");if(this.fixPrefix=!1,this.skipAutomaticSimplification=!0,K===void 0)this.units=[],this.dimensions=V.map(O=>0);else if(typeof K=="string"){var re=w.parse(K);this.units=re.units,this.dimensions=re.dimensions}else if(cn(K)&&K.value===null)this.fixPrefix=K.fixPrefix,this.skipAutomaticSimplification=K.skipAutomaticSimplification,this.dimensions=K.dimensions.slice(0),this.units=K.units.map(O=>or({},O));else throw new TypeError("Second parameter in Unit constructor must be a string or valueless Unit");this.value=this._normalize(q)}Object.defineProperty(w,"name",{value:"Unit"}),w.prototype.constructor=w,w.prototype.type="Unit",w.prototype.isUnit=!0;var x,v,N;function C(){for(;N===" "||N===" ";)S()}function A(q){return q>="0"&&q<="9"||q==="."}function E(q){return q>="0"&&q<="9"}function S(){v++,N=x.charAt(v)}function F(q){v=q,N=x.charAt(v)}function k(){var q="",K=v;if(N==="+"?S():N==="-"&&(q+=N,S()),!A(N))return F(K),null;if(N==="."){if(q+=N,S(),!E(N))return F(K),null}else{for(;E(N);)q+=N,S();N==="."&&(q+=N,S())}for(;E(N);)q+=N,S();if(N==="E"||N==="e"){var re="",O=v;if(re+=N,S(),(N==="+"||N==="-")&&(re+=N,S()),!E(N))return F(O),q;for(q=q+re;E(N);)q+=N,S()}return q}function B(){for(var q="";E(N)||w.isValidAlpha(N);)q+=N,S();var K=q.charAt(0);return w.isValidAlpha(K)?q:null}function $(q){return N===q?(S(),q):null}w.parse=function(q,K){if(K=K||{},x=q,v=-1,N="",typeof x!="string")throw new TypeError("Invalid argument in Unit.parse, string expected");var re=new w;re.units=[];var O=1,L=!1;S(),C();var Y=k(),ee=null;if(Y){if(r.number==="BigNumber")ee=new b(Y);else if(r.number==="Fraction")try{ee=new D(Y)}catch{ee=parseFloat(Y)}else ee=parseFloat(Y);C(),$("*")?(O=1,L=!0):$("/")&&(O=-1,L=!0)}for(var ne=[],le=1;;){for(C();N==="(";)ne.push(O),le*=O,O=1,S(),C();var ge=void 0;if(N){var ye=N;if(ge=B(),ge===null)throw new SyntaxError('Unexpected "'+ye+'" in "'+x+'" at index '+v.toString())}else break;var Ae=M(ge);if(Ae===null)throw new SyntaxError('Unit "'+ge+'" not found.');var be=O*le;if(C(),$("^")){C();var lt=k();if(lt===null)throw new SyntaxError('In "'+q+'", "^" must be followed by a floating-point number');be*=lt}re.units.push({unit:Ae.unit,prefix:Ae.prefix,power:be});for(var Ie=0;Ie<V.length;Ie++)re.dimensions[Ie]+=(Ae.unit.dimensions[Ie]||0)*be;for(C();N===")";){if(ne.length===0)throw new SyntaxError('Unmatched ")" in "'+x+'" at index '+v.toString());le/=ne.pop(),S(),C()}if(L=!1,$("*")?(O=1,L=!0):$("/")?(O=-1,L=!0):O=1,Ae.unit.base){var Ft=Ae.unit.base.key;Q.auto[Ft]={unit:Ae.unit,prefix:Ae.prefix}}}if(C(),N)throw new SyntaxError('Could not parse: "'+q+'"');if(L)throw new SyntaxError('Trailing characters: "'+q+'"');if(ne.length!==0)throw new SyntaxError('Unmatched "(" in "'+x+'"');if(re.units.length===0&&!K.allowNoUnits)throw new SyntaxError('"'+q+'" contains no units');return re.value=ee!==void 0?re._normalize(ee):null,re},w.prototype.clone=function(){var q=new w;q.fixPrefix=this.fixPrefix,q.skipAutomaticSimplification=this.skipAutomaticSimplification,q.value=We(this.value),q.dimensions=this.dimensions.slice(0),q.units=[];for(var K=0;K<this.units.length;K++){q.units[K]={};for(var re in this.units[K])Pe(this.units[K],re)&&(q.units[K][re]=this.units[K][re])}return q},w.prototype.valueType=function(){return Tt(this.value)},w.prototype._isDerived=function(){return this.units.length===0?!1:this.units.length>1||Math.abs(this.units[0].power-1)>1e-15},w.prototype._normalize=function(q){if(q==null||this.units.length===0)return q;for(var K=q,re=w._getNumberConverter(Tt(q)),O=0;O<this.units.length;O++){var L=re(this.units[O].unit.value),Y=re(this.units[O].prefix.value),ee=re(this.units[O].power);K=i(K,s(i(L,Y),ee))}return K},w.prototype._denormalize=function(q,K){if(q==null||this.units.length===0)return q;for(var re=q,O=w._getNumberConverter(Tt(q)),L=0;L<this.units.length;L++){var Y=O(this.units[L].unit.value),ee=O(this.units[L].prefix.value),ne=O(this.units[L].power);re=o(re,s(i(Y,ee),ne))}return re};var M=tu(q=>{if(Pe(j,q)){var K=j[q],re=K.prefixes[""];return{unit:K,prefix:re}}for(var O in j)if(Pe(j,O)&&R8(q,O)){var L=j[O],Y=q.length-O.length,ee=q.substring(0,Y),ne=Pe(L.prefixes,ee)?L.prefixes[ee]:void 0;if(ne!==void 0)return{unit:L,prefix:ne}}return null},{hasher:q=>q[0],limit:100});w.isValuelessUnit=function(q){return M(q)!==null},w.prototype.hasBase=function(q){if(typeof q=="string"&&(q=_[q]),!q)return!1;for(var K=0;K<V.length;K++)if(Math.abs((this.dimensions[K]||0)-(q.dimensions[K]||0))>1e-12)return!1;return!0},w.prototype.equalBase=function(q){for(var K=0;K<V.length;K++)if(Math.abs((this.dimensions[K]||0)-(q.dimensions[K]||0))>1e-12)return!1;return!0},w.prototype.equals=function(q){return this.equalBase(q)&&f(this.value,q.value)},w.prototype.multiply=function(q){for(var K=this.clone(),re=cn(q)?q:new w(q),O=0;O<V.length;O++)K.dimensions[O]=(this.dimensions[O]||0)+(re.dimensions[O]||0);for(var L=0;L<re.units.length;L++){var Y=kf({},re.units[L]);K.units.push(Y)}if(this.value!==null||re.value!==null){var ee=this.value===null?this._normalize(G(re.value)):this.value,ne=re.value===null?re._normalize(G(this.value)):re.value;K.value=i(ee,ne)}else K.value=null;return cn(q)&&(K.skipAutomaticSimplification=!1),z(K)},w.prototype.divideInto=function(q){return new w(q).divide(this)},w.prototype.divide=function(q){for(var K=this.clone(),re=cn(q)?q:new w(q),O=0;O<V.length;O++)K.dimensions[O]=(this.dimensions[O]||0)-(re.dimensions[O]||0);for(var L=0;L<re.units.length;L++){var Y=kf(kf({},re.units[L]),{},{power:-re.units[L].power});K.units.push(Y)}if(this.value!==null||re.value!==null){var ee=this.value===null?this._normalize(G(re.value)):this.value,ne=re.value===null?re._normalize(G(this.value)):re.value;K.value=o(ee,ne)}else K.value=null;return cn(q)&&(K.skipAutomaticSimplification=!1),z(K)},w.prototype.pow=function(q){for(var K=this.clone(),re=0;re<V.length;re++)K.dimensions[re]=(this.dimensions[re]||0)*q;for(var O=0;O<K.units.length;O++)K.units[O].power*=q;return K.value!==null?K.value=s(K.value,q):K.value=null,K.skipAutomaticSimplification=!1,z(K)};function z(q){return q.equalBase(_.NONE)&&q.value!==null&&!r.predictable?q.value:q}function G(q){var K=w._getNumberConverter(Tt(q));return K(1)}w.prototype.abs=function(){var q=this.clone();if(q.value!==null)if(q._isDerived()||q.units.length===0||q.units[0].unit.offset===0)q.value=u(q.value);else{var K=q._numberConverter(),re=K(q.units[0].unit.value),O=K(q.units[0].unit.offset),L=i(re,O);q.value=a(u(n(q.value,L)),L)}for(var Y in q.units)(q.units[Y].unit.name==="VA"||q.units[Y].unit.name==="VAR")&&(q.units[Y].unit=j.W);return q},w.prototype.to=function(q){var K=this.value===null?this._normalize(1):this.value,re;if(typeof q=="string")re=w.parse(q);else if(cn(q))re=q.clone();else throw new Error("String or Unit expected as parameter");if(!this.equalBase(re))throw new Error("Units do not match ('".concat(re.toString(),"' != '").concat(this.toString(),"')"));if(re.value!==null)throw new Error("Cannot convert to a unit with a value");if(this.value===null||this._isDerived()||this.units.length===0||re.units.length===0||this.units[0].unit.offset===re.units[0].unit.offset)re.value=We(K);else{var O=w._getNumberConverter(Tt(K)),L=this.units[0].unit.value,Y=this.units[0].unit.offset,ee=i(L,Y),ne=re.units[0].unit.value,le=re.units[0].unit.offset,ge=i(ne,le);re.value=n(K,O(a(ee,ge)))}return re.fixPrefix=!0,re.skipAutomaticSimplification=!0,re},w.prototype.toNumber=function(q){return y(this.toNumeric(q))},w.prototype.toNumeric=function(q){var K;return q?K=this.to(q):K=this.clone(),K._isDerived()||K.units.length===0?K._denormalize(K.value):K._denormalize(K.value,K.units[0].prefix.value)},w.prototype.toString=function(){return this.format()},w.prototype.toJSON=function(){return{mathjs:"Unit",value:this._denormalize(this.value),unit:this.units.length>0?this.formatUnits():null,fixPrefix:this.fixPrefix}},w.fromJSON=function(q){var K,re=new w(q.value,(K=q.unit)!==null&&K!==void 0?K:void 0);return re.fixPrefix=q.fixPrefix||!1,re},w.prototype.valueOf=w.prototype.toString,w.prototype.simplify=function(){var q=this.clone(),K=[],re;for(var O in X)if(Pe(X,O)&&q.hasBase(_[O])){re=O;break}if(re==="NONE")q.units=[];else{var L;if(re&&Pe(X,re)&&(L=X[re]),L)q.units=[{unit:L.unit,prefix:L.prefix,power:1}];else{for(var Y=!1,ee=0;ee<V.length;ee++){var ne=V[ee];Math.abs(q.dimensions[ee]||0)>1e-12&&(Pe(X,ne)?K.push({unit:X[ne].unit,prefix:X[ne].prefix,power:q.dimensions[ee]||0}):Y=!0)}K.length<q.units.length&&!Y&&(q.units=K)}}return q},w.prototype.toSI=function(){for(var q=this.clone(),K=[],re=0;re<V.length;re++){var O=V[re];if(Math.abs(q.dimensions[re]||0)>1e-12)if(Pe(Q.si,O))K.push({unit:Q.si[O].unit,prefix:Q.si[O].prefix,power:q.dimensions[re]||0});else throw new Error("Cannot express custom unit "+O+" in SI units")}return q.units=K,q.fixPrefix=!0,q.skipAutomaticSimplification=!0,this.value!==null?(q.value=null,this.to(q)):q},w.prototype.formatUnits=function(){for(var q="",K="",re=0,O=0,L=0;L<this.units.length;L++)this.units[L].power>0?(re++,q+=" "+this.units[L].prefix.name+this.units[L].unit.name,Math.abs(this.units[L].power-1)>1e-15&&(q+="^"+this.units[L].power)):this.units[L].power<0&&O++;if(O>0)for(var Y=0;Y<this.units.length;Y++)this.units[Y].power<0&&(re>0?(K+=" "+this.units[Y].prefix.name+this.units[Y].unit.name,Math.abs(this.units[Y].power+1)>1e-15&&(K+="^"+-this.units[Y].power)):(K+=" "+this.units[Y].prefix.name+this.units[Y].unit.name,K+="^"+this.units[Y].power));q=q.substr(1),K=K.substr(1),re>1&&O>0&&(q="("+q+")"),O>1&&re>0&&(K="("+K+")");var ee=q;return re>0&&O>0&&(ee+=" / "),ee+=K,ee},w.prototype.toBest=function(){var q=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],K=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(q&&!Array.isArray(q))throw new Error("Invalid unit type. Expected string or Unit.");var re=this.units[0].unit.prefixes;if(q&&q.length>0){var O=q.map(ee=>{var ne=null;if(typeof ee=="string"){if(ne=w.parse(ee),!ne)throw new Error("Invalid unit type. Expected compatible string or Unit.")}else if(!cn(ee))throw new Error("Invalid unit type. Expected compatible string or Unit.");ne===null&&(ne=ee.clone());try{return this.to(ne.formatUnits()),ne}catch{throw new Error("Invalid unit type. Expected compatible string or Unit.")}}),L=O.map(ee=>ee.units[0].prefix);this.units[0].unit.prefixes=L.reduce((ee,ne)=>(ee[ne.name]=ne,ee),{}),this.units[0].prefix=L[0]}var Y=R(this,K).simp;return this.units[0].unit.prefixes=re,Y.fixPrefix=!0,Y},w.prototype.format=function(q){var{simp:K,valueStr:re,unitStr:O}=R(this,q),L=re;return K.value&&ka(K.value)&&(L="("+L+")"),O.length>0&&L.length>0&&(L+=" "),L+=O,L};function R(q){var K=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},re=q.skipAutomaticSimplification||q.value===null?q.clone():q.simplify();Z(re),te(re,K.offset);var O=re._denormalize(re.value),L=re.value!==null?d(O,K||{}):"",Y=re.formatUnits();return{simp:re,valueStr:L,unitStr:Y}}function Z(q){var K=!1;typeof q.value<"u"&&q.value!==null&&ka(q.value)&&(K=Math.abs(q.value.re)<1e-14);for(var re in q.units)Pe(q.units,re)&&q.units[re].unit&&(q.units[re].unit.name==="VA"&&K?q.units[re].unit=j.VAR:q.units[re].unit.name==="VAR"&&!K&&(q.units[re].unit=j.VA))}function te(q,K){q.units.length===1&&!q.fixPrefix&&Math.abs(q.units[0].power-Math.round(q.units[0].power))<1e-14&&(q.units[0].prefix=q._bestPrefix(K))}w.prototype._bestPrefix=function(){var q=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1.2;if(this.units.length!==1)throw new Error("Can only compute the best prefix for single units with integer powers, like kg, s^2, N^-1, and so forth!");if(Math.abs(this.units[0].power-Math.round(this.units[0].power))>=1e-14)throw new Error("Can only compute the best prefix for single units with integer powers, like kg, s^2, N^-1, and so forth!");var K=this.value!==null?u(this.value):0,re=u(this.units[0].unit.value),O=this.units[0].prefix;if(K===0)return O;var L=this.units[0].power,Y=Math.log(K/Math.pow(O.value*re,L))/Math.LN10-q;if(Y>-2.200001&&Y<1.800001)return O;Y=Math.abs(Y);var ee=this.units[0].unit.prefixes;for(var ne in ee)if(Pe(ee,ne)){var le=ee[ne];if(le.scientific){var ge=Math.abs(Math.log(K/Math.pow(le.value*re,L))/Math.LN10-q);(ge<Y||ge===Y&&le.name.length<O.name.length)&&(O=le,Y=ge)}}return O},w.prototype.splitUnit=function(q){for(var K=this.clone(),re=[],O=0;O<q.length&&(K=K.to(q[O]),O!==q.length-1);O++){var L=K.toNumeric(),Y=c(L),ee=void 0,ne=f(Y,L);ne?ee=Y:ee=l(K.toNumeric());var le=new w(ee,q[O].toString());re.push(le),K=a(K,le)}for(var ge=0,ye=0;ye<re.length;ye++)ge=n(ge,re[ye].value);return f(ge,this.value)&&(K.value=0),re.push(K),re};var P={NONE:{"":{name:"",value:1,scientific:!0}},SHORT:{"":{name:"",value:1,scientific:!0},da:{name:"da",value:10,scientific:!1},h:{name:"h",value:100,scientific:!1},k:{name:"k",value:1e3,scientific:!0},M:{name:"M",value:1e6,scientific:!0},G:{name:"G",value:1e9,scientific:!0},T:{name:"T",value:1e12,scientific:!0},P:{name:"P",value:1e15,scientific:!0},E:{name:"E",value:1e18,scientific:!0},Z:{name:"Z",value:1e21,scientific:!0},Y:{name:"Y",value:1e24,scientific:!0},R:{name:"R",value:1e27,scientific:!0},Q:{name:"Q",value:1e30,scientific:!0},d:{name:"d",value:.1,scientific:!1},c:{name:"c",value:.01,scientific:!1},m:{name:"m",value:.001,scientific:!0},u:{name:"u",value:1e-6,scientific:!0},n:{name:"n",value:1e-9,scientific:!0},p:{name:"p",value:1e-12,scientific:!0},f:{name:"f",value:1e-15,scientific:!0},a:{name:"a",value:1e-18,scientific:!0},z:{name:"z",value:1e-21,scientific:!0},y:{name:"y",value:1e-24,scientific:!0},r:{name:"r",value:1e-27,scientific:!0},q:{name:"q",value:1e-30,scientific:!0}},LONG:{"":{name:"",value:1,scientific:!0},deca:{name:"deca",value:10,scientific:!1},hecto:{name:"hecto",value:100,scientific:!1},kilo:{name:"kilo",value:1e3,scientific:!0},mega:{name:"mega",value:1e6,scientific:!0},giga:{name:"giga",value:1e9,scientific:!0},tera:{name:"tera",value:1e12,scientific:!0},peta:{name:"peta",value:1e15,scientific:!0},exa:{name:"exa",value:1e18,scientific:!0},zetta:{name:"zetta",value:1e21,scientific:!0},yotta:{name:"yotta",value:1e24,scientific:!0},ronna:{name:"ronna",value:1e27,scientific:!0},quetta:{name:"quetta",value:1e30,scientific:!0},deci:{name:"deci",value:.1,scientific:!1},centi:{name:"centi",value:.01,scientific:!1},milli:{name:"milli",value:.001,scientific:!0},micro:{name:"micro",value:1e-6,scientific:!0},nano:{name:"nano",value:1e-9,scientific:!0},pico:{name:"pico",value:1e-12,scientific:!0},femto:{name:"femto",value:1e-15,scientific:!0},atto:{name:"atto",value:1e-18,scientific:!0},zepto:{name:"zepto",value:1e-21,scientific:!0},yocto:{name:"yocto",value:1e-24,scientific:!0},ronto:{name:"ronto",value:1e-27,scientific:!0},quecto:{name:"quecto",value:1e-30,scientific:!0}},SQUARED:{"":{name:"",value:1,scientific:!0},da:{name:"da",value:100,scientific:!1},h:{name:"h",value:1e4,scientific:!1},k:{name:"k",value:1e6,scientific:!0},M:{name:"M",value:1e12,scientific:!0},G:{name:"G",value:1e18,scientific:!0},T:{name:"T",value:1e24,scientific:!0},P:{name:"P",value:1e30,scientific:!0},E:{name:"E",value:1e36,scientific:!0},Z:{name:"Z",value:1e42,scientific:!0},Y:{name:"Y",value:1e48,scientific:!0},R:{name:"R",value:1e54,scientific:!0},Q:{name:"Q",value:1e60,scientific:!0},d:{name:"d",value:.01,scientific:!1},c:{name:"c",value:1e-4,scientific:!1},m:{name:"m",value:1e-6,scientific:!0},u:{name:"u",value:1e-12,scientific:!0},n:{name:"n",value:1e-18,scientific:!0},p:{name:"p",value:1e-24,scientific:!0},f:{name:"f",value:1e-30,scientific:!0},a:{name:"a",value:1e-36,scientific:!0},z:{name:"z",value:1e-42,scientific:!0},y:{name:"y",value:1e-48,scientific:!0},r:{name:"r",value:1e-54,scientific:!0},q:{name:"q",value:1e-60,scientific:!0}},CUBIC:{"":{name:"",value:1,scientific:!0},da:{name:"da",value:1e3,scientific:!1},h:{name:"h",value:1e6,scientific:!1},k:{name:"k",value:1e9,scientific:!0},M:{name:"M",value:1e18,scientific:!0},G:{name:"G",value:1e27,scientific:!0},T:{name:"T",value:1e36,scientific:!0},P:{name:"P",value:1e45,scientific:!0},E:{name:"E",value:1e54,scientific:!0},Z:{name:"Z",value:1e63,scientific:!0},Y:{name:"Y",value:1e72,scientific:!0},R:{name:"R",value:1e81,scientific:!0},Q:{name:"Q",value:1e90,scientific:!0},d:{name:"d",value:.001,scientific:!1},c:{name:"c",value:1e-6,scientific:!1},m:{name:"m",value:1e-9,scientific:!0},u:{name:"u",value:1e-18,scientific:!0},n:{name:"n",value:1e-27,scientific:!0},p:{name:"p",value:1e-36,scientific:!0},f:{name:"f",value:1e-45,scientific:!0},a:{name:"a",value:1e-54,scientific:!0},z:{name:"z",value:1e-63,scientific:!0},y:{name:"y",value:1e-72,scientific:!0},r:{name:"r",value:1e-81,scientific:!0},q:{name:"q",value:1e-90,scientific:!0}},BINARY_SHORT_SI:{"":{name:"",value:1,scientific:!0},k:{name:"k",value:1e3,scientific:!0},M:{name:"M",value:1e6,scientific:!0},G:{name:"G",value:1e9,scientific:!0},T:{name:"T",value:1e12,scientific:!0},P:{name:"P",value:1e15,scientific:!0},E:{name:"E",value:1e18,scientific:!0},Z:{name:"Z",value:1e21,scientific:!0},Y:{name:"Y",value:1e24,scientific:!0}},BINARY_SHORT_IEC:{"":{name:"",value:1,scientific:!0},Ki:{name:"Ki",value:1024,scientific:!0},Mi:{name:"Mi",value:Math.pow(1024,2),scientific:!0},Gi:{name:"Gi",value:Math.pow(1024,3),scientific:!0},Ti:{name:"Ti",value:Math.pow(1024,4),scientific:!0},Pi:{name:"Pi",value:Math.pow(1024,5),scientific:!0},Ei:{name:"Ei",value:Math.pow(1024,6),scientific:!0},Zi:{name:"Zi",value:Math.pow(1024,7),scientific:!0},Yi:{name:"Yi",value:Math.pow(1024,8),scientific:!0}},BINARY_LONG_SI:{"":{name:"",value:1,scientific:!0},kilo:{name:"kilo",value:1e3,scientific:!0},mega:{name:"mega",value:1e6,scientific:!0},giga:{name:"giga",value:1e9,scientific:!0},tera:{name:"tera",value:1e12,scientific:!0},peta:{name:"peta",value:1e15,scientific:!0},exa:{name:"exa",value:1e18,scientific:!0},zetta:{name:"zetta",value:1e21,scientific:!0},yotta:{name:"yotta",value:1e24,scientific:!0}},BINARY_LONG_IEC:{"":{name:"",value:1,scientific:!0},kibi:{name:"kibi",value:1024,scientific:!0},mebi:{name:"mebi",value:Math.pow(1024,2),scientific:!0},gibi:{name:"gibi",value:Math.pow(1024,3),scientific:!0},tebi:{name:"tebi",value:Math.pow(1024,4),scientific:!0},pebi:{name:"pebi",value:Math.pow(1024,5),scientific:!0},exi:{name:"exi",value:Math.pow(1024,6),scientific:!0},zebi:{name:"zebi",value:Math.pow(1024,7),scientific:!0},yobi:{name:"yobi",value:Math.pow(1024,8),scientific:!0}},BTU:{"":{name:"",value:1,scientific:!0},MM:{name:"MM",value:1e6,scientific:!0}}};P.SHORTLONG=or({},P.SHORT,P.LONG),P.BINARY_SHORT=or({},P.BINARY_SHORT_SI,P.BINARY_SHORT_IEC),P.BINARY_LONG=or({},P.BINARY_LONG_SI,P.BINARY_LONG_IEC);var V=["MASS","LENGTH","TIME","CURRENT","TEMPERATURE","LUMINOUS_INTENSITY","AMOUNT_OF_SUBSTANCE","ANGLE","BIT"],_={NONE:{dimensions:[0,0,0,0,0,0,0,0,0]},MASS:{dimensions:[1,0,0,0,0,0,0,0,0]},LENGTH:{dimensions:[0,1,0,0,0,0,0,0,0]},TIME:{dimensions:[0,0,1,0,0,0,0,0,0]},CURRENT:{dimensions:[0,0,0,1,0,0,0,0,0]},TEMPERATURE:{dimensions:[0,0,0,0,1,0,0,0,0]},LUMINOUS_INTENSITY:{dimensions:[0,0,0,0,0,1,0,0,0]},AMOUNT_OF_SUBSTANCE:{dimensions:[0,0,0,0,0,0,1,0,0]},FORCE:{dimensions:[1,1,-2,0,0,0,0,0,0]},SURFACE:{dimensions:[0,2,0,0,0,0,0,0,0]},VOLUME:{dimensions:[0,3,0,0,0,0,0,0,0]},ENERGY:{dimensions:[1,2,-2,0,0,0,0,0,0]},POWER:{dimensions:[1,2,-3,0,0,0,0,0,0]},PRESSURE:{dimensions:[1,-1,-2,0,0,0,0,0,0]},ELECTRIC_CHARGE:{dimensions:[0,0,1,1,0,0,0,0,0]},ELECTRIC_CAPACITANCE:{dimensions:[-1,-2,4,2,0,0,0,0,0]},ELECTRIC_POTENTIAL:{dimensions:[1,2,-3,-1,0,0,0,0,0]},ELECTRIC_RESISTANCE:{dimensions:[1,2,-3,-2,0,0,0,0,0]},ELECTRIC_INDUCTANCE:{dimensions:[1,2,-2,-2,0,0,0,0,0]},ELECTRIC_CONDUCTANCE:{dimensions:[-1,-2,3,2,0,0,0,0,0]},MAGNETIC_FLUX:{dimensions:[1,2,-2,-1,0,0,0,0,0]},MAGNETIC_FLUX_DENSITY:{dimensions:[1,0,-2,-1,0,0,0,0,0]},FREQUENCY:{dimensions:[0,0,-1,0,0,0,0,0,0]},ANGLE:{dimensions:[0,0,0,0,0,0,0,1,0]},BIT:{dimensions:[0,0,0,0,0,0,0,0,1]}};for(var ce in _)Pe(_,ce)&&(_[ce].key=ce);var ae={},ie={name:"",base:ae,value:1,offset:0,dimensions:V.map(q=>0)},j={meter:{name:"meter",base:_.LENGTH,prefixes:P.LONG,value:1,offset:0},inch:{name:"inch",base:_.LENGTH,prefixes:P.NONE,value:.0254,offset:0},foot:{name:"foot",base:_.LENGTH,prefixes:P.NONE,value:.3048,offset:0},yard:{name:"yard",base:_.LENGTH,prefixes:P.NONE,value:.9144,offset:0},mile:{name:"mile",base:_.LENGTH,prefixes:P.NONE,value:1609.344,offset:0},link:{name:"link",base:_.LENGTH,prefixes:P.NONE,value:.201168,offset:0},rod:{name:"rod",base:_.LENGTH,prefixes:P.NONE,value:5.0292,offset:0},chain:{name:"chain",base:_.LENGTH,prefixes:P.NONE,value:20.1168,offset:0},angstrom:{name:"angstrom",base:_.LENGTH,prefixes:P.NONE,value:1e-10,offset:0},m:{name:"m",base:_.LENGTH,prefixes:P.SHORT,value:1,offset:0},in:{name:"in",base:_.LENGTH,prefixes:P.NONE,value:.0254,offset:0},ft:{name:"ft",base:_.LENGTH,prefixes:P.NONE,value:.3048,offset:0},yd:{name:"yd",base:_.LENGTH,prefixes:P.NONE,value:.9144,offset:0},mi:{name:"mi",base:_.LENGTH,prefixes:P.NONE,value:1609.344,offset:0},li:{name:"li",base:_.LENGTH,prefixes:P.NONE,value:.201168,offset:0},rd:{name:"rd",base:_.LENGTH,prefixes:P.NONE,value:5.02921,offset:0},ch:{name:"ch",base:_.LENGTH,prefixes:P.NONE,value:20.1168,offset:0},mil:{name:"mil",base:_.LENGTH,prefixes:P.NONE,value:254e-7,offset:0},m2:{name:"m2",base:_.SURFACE,prefixes:P.SQUARED,value:1,offset:0},sqin:{name:"sqin",base:_.SURFACE,prefixes:P.NONE,value:64516e-8,offset:0},sqft:{name:"sqft",base:_.SURFACE,prefixes:P.NONE,value:.09290304,offset:0},sqyd:{name:"sqyd",base:_.SURFACE,prefixes:P.NONE,value:.83612736,offset:0},sqmi:{name:"sqmi",base:_.SURFACE,prefixes:P.NONE,value:2589988110336e-6,offset:0},sqrd:{name:"sqrd",base:_.SURFACE,prefixes:P.NONE,value:25.29295,offset:0},sqch:{name:"sqch",base:_.SURFACE,prefixes:P.NONE,value:404.6873,offset:0},sqmil:{name:"sqmil",base:_.SURFACE,prefixes:P.NONE,value:64516e-14,offset:0},acre:{name:"acre",base:_.SURFACE,prefixes:P.NONE,value:4046.86,offset:0},hectare:{name:"hectare",base:_.SURFACE,prefixes:P.NONE,value:1e4,offset:0},m3:{name:"m3",base:_.VOLUME,prefixes:P.CUBIC,value:1,offset:0},L:{name:"L",base:_.VOLUME,prefixes:P.SHORT,value:.001,offset:0},l:{name:"l",base:_.VOLUME,prefixes:P.SHORT,value:.001,offset:0},litre:{name:"litre",base:_.VOLUME,prefixes:P.LONG,value:.001,offset:0},cuin:{name:"cuin",base:_.VOLUME,prefixes:P.NONE,value:16387064e-12,offset:0},cuft:{name:"cuft",base:_.VOLUME,prefixes:P.NONE,value:.028316846592,offset:0},cuyd:{name:"cuyd",base:_.VOLUME,prefixes:P.NONE,value:.764554857984,offset:0},teaspoon:{name:"teaspoon",base:_.VOLUME,prefixes:P.NONE,value:5e-6,offset:0},tablespoon:{name:"tablespoon",base:_.VOLUME,prefixes:P.NONE,value:15e-6,offset:0},drop:{name:"drop",base:_.VOLUME,prefixes:P.NONE,value:5e-8,offset:0},gtt:{name:"gtt",base:_.VOLUME,prefixes:P.NONE,value:5e-8,offset:0},minim:{name:"minim",base:_.VOLUME,prefixes:P.NONE,value:61611519921875e-21,offset:0},fluiddram:{name:"fluiddram",base:_.VOLUME,prefixes:P.NONE,value:36966911953125e-19,offset:0},fluidounce:{name:"fluidounce",base:_.VOLUME,prefixes:P.NONE,value:295735295625e-16,offset:0},gill:{name:"gill",base:_.VOLUME,prefixes:P.NONE,value:.00011829411825,offset:0},cc:{name:"cc",base:_.VOLUME,prefixes:P.NONE,value:1e-6,offset:0},cup:{name:"cup",base:_.VOLUME,prefixes:P.NONE,value:.0002365882365,offset:0},pint:{name:"pint",base:_.VOLUME,prefixes:P.NONE,value:.000473176473,offset:0},quart:{name:"quart",base:_.VOLUME,prefixes:P.NONE,value:.000946352946,offset:0},gallon:{name:"gallon",base:_.VOLUME,prefixes:P.NONE,value:.003785411784,offset:0},beerbarrel:{name:"beerbarrel",base:_.VOLUME,prefixes:P.NONE,value:.117347765304,offset:0},oilbarrel:{name:"oilbarrel",base:_.VOLUME,prefixes:P.NONE,value:.158987294928,offset:0},hogshead:{name:"hogshead",base:_.VOLUME,prefixes:P.NONE,value:.238480942392,offset:0},g:{name:"g",base:_.MASS,prefixes:P.SHORT,value:.001,offset:0},gram:{name:"gram",base:_.MASS,prefixes:P.LONG,value:.001,offset:0},ton:{name:"ton",base:_.MASS,prefixes:P.SHORT,value:907.18474,offset:0},t:{name:"t",base:_.MASS,prefixes:P.SHORT,value:1e3,offset:0},tonne:{name:"tonne",base:_.MASS,prefixes:P.LONG,value:1e3,offset:0},grain:{name:"grain",base:_.MASS,prefixes:P.NONE,value:6479891e-11,offset:0},dram:{name:"dram",base:_.MASS,prefixes:P.NONE,value:.0017718451953125,offset:0},ounce:{name:"ounce",base:_.MASS,prefixes:P.NONE,value:.028349523125,offset:0},poundmass:{name:"poundmass",base:_.MASS,prefixes:P.NONE,value:.45359237,offset:0},hundredweight:{name:"hundredweight",base:_.MASS,prefixes:P.NONE,value:45.359237,offset:0},stick:{name:"stick",base:_.MASS,prefixes:P.NONE,value:.115,offset:0},stone:{name:"stone",base:_.MASS,prefixes:P.NONE,value:6.35029318,offset:0},gr:{name:"gr",base:_.MASS,prefixes:P.NONE,value:6479891e-11,offset:0},dr:{name:"dr",base:_.MASS,prefixes:P.NONE,value:.0017718451953125,offset:0},oz:{name:"oz",base:_.MASS,prefixes:P.NONE,value:.028349523125,offset:0},lbm:{name:"lbm",base:_.MASS,prefixes:P.NONE,value:.45359237,offset:0},cwt:{name:"cwt",base:_.MASS,prefixes:P.NONE,value:45.359237,offset:0},s:{name:"s",base:_.TIME,prefixes:P.SHORT,value:1,offset:0},min:{name:"min",base:_.TIME,prefixes:P.NONE,value:60,offset:0},h:{name:"h",base:_.TIME,prefixes:P.NONE,value:3600,offset:0},second:{name:"second",base:_.TIME,prefixes:P.LONG,value:1,offset:0},sec:{name:"sec",base:_.TIME,prefixes:P.LONG,value:1,offset:0},minute:{name:"minute",base:_.TIME,prefixes:P.NONE,value:60,offset:0},hour:{name:"hour",base:_.TIME,prefixes:P.NONE,value:3600,offset:0},day:{name:"day",base:_.TIME,prefixes:P.NONE,value:86400,offset:0},week:{name:"week",base:_.TIME,prefixes:P.NONE,value:7*86400,offset:0},month:{name:"month",base:_.TIME,prefixes:P.NONE,value:2629800,offset:0},year:{name:"year",base:_.TIME,prefixes:P.NONE,value:31557600,offset:0},decade:{name:"decade",base:_.TIME,prefixes:P.NONE,value:315576e3,offset:0},century:{name:"century",base:_.TIME,prefixes:P.NONE,value:315576e4,offset:0},millennium:{name:"millennium",base:_.TIME,prefixes:P.NONE,value:315576e5,offset:0},hertz:{name:"Hertz",base:_.FREQUENCY,prefixes:P.LONG,value:1,offset:0,reciprocal:!0},Hz:{name:"Hz",base:_.FREQUENCY,prefixes:P.SHORT,value:1,offset:0,reciprocal:!0},rad:{name:"rad",base:_.ANGLE,prefixes:P.SHORT,value:1,offset:0},radian:{name:"radian",base:_.ANGLE,prefixes:P.LONG,value:1,offset:0},deg:{name:"deg",base:_.ANGLE,prefixes:P.SHORT,value:null,offset:0},degree:{name:"degree",base:_.ANGLE,prefixes:P.LONG,value:null,offset:0},grad:{name:"grad",base:_.ANGLE,prefixes:P.SHORT,value:null,offset:0},gradian:{name:"gradian",base:_.ANGLE,prefixes:P.LONG,value:null,offset:0},cycle:{name:"cycle",base:_.ANGLE,prefixes:P.NONE,value:null,offset:0},arcsec:{name:"arcsec",base:_.ANGLE,prefixes:P.NONE,value:null,offset:0},arcmin:{name:"arcmin",base:_.ANGLE,prefixes:P.NONE,value:null,offset:0},A:{name:"A",base:_.CURRENT,prefixes:P.SHORT,value:1,offset:0},ampere:{name:"ampere",base:_.CURRENT,prefixes:P.LONG,value:1,offset:0},K:{name:"K",base:_.TEMPERATURE,prefixes:P.SHORT,value:1,offset:0},degC:{name:"degC",base:_.TEMPERATURE,prefixes:P.SHORT,value:1,offset:273.15},degF:{name:"degF",base:_.TEMPERATURE,prefixes:P.SHORT,value:new D(5,9),offset:459.67},degR:{name:"degR",base:_.TEMPERATURE,prefixes:P.SHORT,value:new D(5,9),offset:0},kelvin:{name:"kelvin",base:_.TEMPERATURE,prefixes:P.LONG,value:1,offset:0},celsius:{name:"celsius",base:_.TEMPERATURE,prefixes:P.LONG,value:1,offset:273.15},fahrenheit:{name:"fahrenheit",base:_.TEMPERATURE,prefixes:P.LONG,value:new D(5,9),offset:459.67},rankine:{name:"rankine",base:_.TEMPERATURE,prefixes:P.LONG,value:new D(5,9),offset:0},mol:{name:"mol",base:_.AMOUNT_OF_SUBSTANCE,prefixes:P.SHORT,value:1,offset:0},mole:{name:"mole",base:_.AMOUNT_OF_SUBSTANCE,prefixes:P.LONG,value:1,offset:0},cd:{name:"cd",base:_.LUMINOUS_INTENSITY,prefixes:P.SHORT,value:1,offset:0},candela:{name:"candela",base:_.LUMINOUS_INTENSITY,prefixes:P.LONG,value:1,offset:0},N:{name:"N",base:_.FORCE,prefixes:P.SHORT,value:1,offset:0},newton:{name:"newton",base:_.FORCE,prefixes:P.LONG,value:1,offset:0},dyn:{name:"dyn",base:_.FORCE,prefixes:P.SHORT,value:1e-5,offset:0},dyne:{name:"dyne",base:_.FORCE,prefixes:P.LONG,value:1e-5,offset:0},lbf:{name:"lbf",base:_.FORCE,prefixes:P.NONE,value:4.4482216152605,offset:0},poundforce:{name:"poundforce",base:_.FORCE,prefixes:P.NONE,value:4.4482216152605,offset:0},kip:{name:"kip",base:_.FORCE,prefixes:P.LONG,value:4448.2216,offset:0},kilogramforce:{name:"kilogramforce",base:_.FORCE,prefixes:P.NONE,value:9.80665,offset:0},J:{name:"J",base:_.ENERGY,prefixes:P.SHORT,value:1,offset:0},joule:{name:"joule",base:_.ENERGY,prefixes:P.LONG,value:1,offset:0},erg:{name:"erg",base:_.ENERGY,prefixes:P.SHORTLONG,value:1e-7,offset:0},Wh:{name:"Wh",base:_.ENERGY,prefixes:P.SHORT,value:3600,offset:0},BTU:{name:"BTU",base:_.ENERGY,prefixes:P.BTU,value:1055.05585262,offset:0},eV:{name:"eV",base:_.ENERGY,prefixes:P.SHORT,value:1602176565e-28,offset:0},electronvolt:{name:"electronvolt",base:_.ENERGY,prefixes:P.LONG,value:1602176565e-28,offset:0},W:{name:"W",base:_.POWER,prefixes:P.SHORT,value:1,offset:0},watt:{name:"watt",base:_.POWER,prefixes:P.LONG,value:1,offset:0},hp:{name:"hp",base:_.POWER,prefixes:P.NONE,value:745.6998715386,offset:0},VAR:{name:"VAR",base:_.POWER,prefixes:P.SHORT,value:g.I,offset:0},VA:{name:"VA",base:_.POWER,prefixes:P.SHORT,value:1,offset:0},Pa:{name:"Pa",base:_.PRESSURE,prefixes:P.SHORT,value:1,offset:0},psi:{name:"psi",base:_.PRESSURE,prefixes:P.NONE,value:6894.75729276459,offset:0},atm:{name:"atm",base:_.PRESSURE,prefixes:P.NONE,value:101325,offset:0},bar:{name:"bar",base:_.PRESSURE,prefixes:P.SHORTLONG,value:1e5,offset:0},torr:{name:"torr",base:_.PRESSURE,prefixes:P.NONE,value:133.322,offset:0},mmHg:{name:"mmHg",base:_.PRESSURE,prefixes:P.NONE,value:133.322,offset:0},mmH2O:{name:"mmH2O",base:_.PRESSURE,prefixes:P.NONE,value:9.80665,offset:0},cmH2O:{name:"cmH2O",base:_.PRESSURE,prefixes:P.NONE,value:98.0665,offset:0},coulomb:{name:"coulomb",base:_.ELECTRIC_CHARGE,prefixes:P.LONG,value:1,offset:0},C:{name:"C",base:_.ELECTRIC_CHARGE,prefixes:P.SHORT,value:1,offset:0},farad:{name:"farad",base:_.ELECTRIC_CAPACITANCE,prefixes:P.LONG,value:1,offset:0},F:{name:"F",base:_.ELECTRIC_CAPACITANCE,prefixes:P.SHORT,value:1,offset:0},volt:{name:"volt",base:_.ELECTRIC_POTENTIAL,prefixes:P.LONG,value:1,offset:0},V:{name:"V",base:_.ELECTRIC_POTENTIAL,prefixes:P.SHORT,value:1,offset:0},ohm:{name:"ohm",base:_.ELECTRIC_RESISTANCE,prefixes:P.SHORTLONG,value:1,offset:0},henry:{name:"henry",base:_.ELECTRIC_INDUCTANCE,prefixes:P.LONG,value:1,offset:0},H:{name:"H",base:_.ELECTRIC_INDUCTANCE,prefixes:P.SHORT,value:1,offset:0},siemens:{name:"siemens",base:_.ELECTRIC_CONDUCTANCE,prefixes:P.LONG,value:1,offset:0},S:{name:"S",base:_.ELECTRIC_CONDUCTANCE,prefixes:P.SHORT,value:1,offset:0},weber:{name:"weber",base:_.MAGNETIC_FLUX,prefixes:P.LONG,value:1,offset:0},Wb:{name:"Wb",base:_.MAGNETIC_FLUX,prefixes:P.SHORT,value:1,offset:0},tesla:{name:"tesla",base:_.MAGNETIC_FLUX_DENSITY,prefixes:P.LONG,value:1,offset:0},T:{name:"T",base:_.MAGNETIC_FLUX_DENSITY,prefixes:P.SHORT,value:1,offset:0},b:{name:"b",base:_.BIT,prefixes:P.BINARY_SHORT,value:1,offset:0},bits:{name:"bits",base:_.BIT,prefixes:P.BINARY_LONG,value:1,offset:0},B:{name:"B",base:_.BIT,prefixes:P.BINARY_SHORT,value:8,offset:0},bytes:{name:"bytes",base:_.BIT,prefixes:P.BINARY_LONG,value:8,offset:0}},H={meters:"meter",inches:"inch",feet:"foot",yards:"yard",miles:"mile",links:"link",rods:"rod",chains:"chain",angstroms:"angstrom",lt:"l",litres:"litre",liter:"litre",liters:"litre",teaspoons:"teaspoon",tablespoons:"tablespoon",minims:"minim",fldr:"fluiddram",fluiddrams:"fluiddram",floz:"fluidounce",fluidounces:"fluidounce",gi:"gill",gills:"gill",cp:"cup",cups:"cup",pt:"pint",pints:"pint",qt:"quart",quarts:"quart",gal:"gallon",gallons:"gallon",bbl:"beerbarrel",beerbarrels:"beerbarrel",obl:"oilbarrel",oilbarrels:"oilbarrel",hogsheads:"hogshead",gtts:"gtt",grams:"gram",tons:"ton",tonnes:"tonne",grains:"grain",drams:"dram",ounces:"ounce",poundmasses:"poundmass",hundredweights:"hundredweight",sticks:"stick",lb:"lbm",lbs:"lbm",kips:"kip",kgf:"kilogramforce",acres:"acre",hectares:"hectare",sqfeet:"sqft",sqyard:"sqyd",sqmile:"sqmi",sqmiles:"sqmi",mmhg:"mmHg",mmh2o:"mmH2O",cmh2o:"cmH2O",seconds:"second",secs:"second",minutes:"minute",mins:"minute",hours:"hour",hr:"hour",hrs:"hour",days:"day",weeks:"week",months:"month",years:"year",decades:"decade",centuries:"century",millennia:"millennium",hertz:"hertz",radians:"radian",degrees:"degree",gradians:"gradian",cycles:"cycle",arcsecond:"arcsec",arcseconds:"arcsec",arcminute:"arcmin",arcminutes:"arcmin",BTUs:"BTU",watts:"watt",joules:"joule",amperes:"ampere",amps:"ampere",amp:"ampere",coulombs:"coulomb",volts:"volt",ohms:"ohm",farads:"farad",webers:"weber",teslas:"tesla",electronvolts:"electronvolt",moles:"mole",bit:"bits",byte:"bytes"};function J(q){if(q.number==="BigNumber"){var K=Md(b);j.rad.value=new b(1),j.deg.value=K.div(180),j.grad.value=K.div(200),j.cycle.value=K.times(2),j.arcsec.value=K.div(648e3),j.arcmin.value=K.div(10800)}else j.rad.value=1,j.deg.value=Math.PI/180,j.grad.value=Math.PI/200,j.cycle.value=Math.PI*2,j.arcsec.value=Math.PI/648e3,j.arcmin.value=Math.PI/10800;j.radian.value=j.rad.value,j.degree.value=j.deg.value,j.gradian.value=j.grad.value}J(r),t&&t("config",function(q,K){q.number!==K.number&&J(q)});var Q={si:{NONE:{unit:ie,prefix:P.NONE[""]},LENGTH:{unit:j.m,prefix:P.SHORT[""]},MASS:{unit:j.g,prefix:P.SHORT.k},TIME:{unit:j.s,prefix:P.SHORT[""]},CURRENT:{unit:j.A,prefix:P.SHORT[""]},TEMPERATURE:{unit:j.K,prefix:P.SHORT[""]},LUMINOUS_INTENSITY:{unit:j.cd,prefix:P.SHORT[""]},AMOUNT_OF_SUBSTANCE:{unit:j.mol,prefix:P.SHORT[""]},ANGLE:{unit:j.rad,prefix:P.SHORT[""]},BIT:{unit:j.bits,prefix:P.SHORT[""]},FORCE:{unit:j.N,prefix:P.SHORT[""]},ENERGY:{unit:j.J,prefix:P.SHORT[""]},POWER:{unit:j.W,prefix:P.SHORT[""]},PRESSURE:{unit:j.Pa,prefix:P.SHORT[""]},ELECTRIC_CHARGE:{unit:j.C,prefix:P.SHORT[""]},ELECTRIC_CAPACITANCE:{unit:j.F,prefix:P.SHORT[""]},ELECTRIC_POTENTIAL:{unit:j.V,prefix:P.SHORT[""]},ELECTRIC_RESISTANCE:{unit:j.ohm,prefix:P.SHORT[""]},ELECTRIC_INDUCTANCE:{unit:j.H,prefix:P.SHORT[""]},ELECTRIC_CONDUCTANCE:{unit:j.S,prefix:P.SHORT[""]},MAGNETIC_FLUX:{unit:j.Wb,prefix:P.SHORT[""]},MAGNETIC_FLUX_DENSITY:{unit:j.T,prefix:P.SHORT[""]},FREQUENCY:{unit:j.Hz,prefix:P.SHORT[""]}}};Q.cgs=JSON.parse(JSON.stringify(Q.si)),Q.cgs.LENGTH={unit:j.m,prefix:P.SHORT.c},Q.cgs.MASS={unit:j.g,prefix:P.SHORT[""]},Q.cgs.FORCE={unit:j.dyn,prefix:P.SHORT[""]},Q.cgs.ENERGY={unit:j.erg,prefix:P.NONE[""]},Q.us=JSON.parse(JSON.stringify(Q.si)),Q.us.LENGTH={unit:j.ft,prefix:P.NONE[""]},Q.us.MASS={unit:j.lbm,prefix:P.NONE[""]},Q.us.TEMPERATURE={unit:j.degF,prefix:P.NONE[""]},Q.us.FORCE={unit:j.lbf,prefix:P.NONE[""]},Q.us.ENERGY={unit:j.BTU,prefix:P.BTU[""]},Q.us.POWER={unit:j.hp,prefix:P.NONE[""]},Q.us.PRESSURE={unit:j.psi,prefix:P.NONE[""]},Q.auto=JSON.parse(JSON.stringify(Q.si));var X=Q.auto;w.setUnitSystem=function(q){if(Pe(Q,q))X=Q[q];else throw new Error("Unit system "+q+" does not exist. Choices are: "+Object.keys(Q).join(", "))},w.getUnitSystem=function(){for(var q in Q)if(Pe(Q,q)&&Q[q]===X)return q},w.typeConverters={BigNumber:function(K){return K!=null&&K.isFraction?new b(String(K.n)).div(String(K.d)).times(String(K.s)):new b(K+"")},Fraction:function(K){return new D(K)},Complex:function(K){return K},number:function(K){return K!=null&&K.isFraction?h(K):K}},w.prototype._numberConverter=function(){var q=w.typeConverters[this.valueType()];if(q)return q;throw new TypeError('Unsupported Unit value type "'+this.valueType()+'"')},w._getNumberConverter=function(q){if(!w.typeConverters[q])throw new TypeError('Unsupported type "'+q+'"');return w.typeConverters[q]};for(var ue in j)if(Pe(j,ue)){var se=j[ue];se.dimensions=se.base.dimensions}for(var we in H)if(Pe(H,we)){var Me=j[H[we]],ke={};for(var Se in Me)Pe(Me,Se)&&(ke[Se]=Me[Se]);ke.name=we,j[we]=ke}w.isValidAlpha=function(K){return/^[a-zA-Z]$/.test(K)};function $e(q){for(var K=0;K<q.length;K++){if(N=q.charAt(K),K===0&&!w.isValidAlpha(N))throw new Error('Invalid unit name (must begin with alpha character): "'+q+'"');if(K>0&&!(w.isValidAlpha(N)||E(N)))throw new Error('Invalid unit name (only alphanumeric characters are allowed): "'+q+'"')}}return w.createUnit=function(q,K){if(typeof q!="object")throw new TypeError("createUnit expects first parameter to be of type 'Object'");if(K&&K.override){for(var re in q)if(Pe(q,re)&&w.deleteUnit(re),q[re].aliases)for(var O=0;O<q[re].aliases.length;O++)w.deleteUnit(q[re].aliases[O])}var L;for(var Y in q)Pe(q,Y)&&(L=w.createUnitSingle(Y,q[Y]));return L},w.createUnitSingle=function(q,K){if((typeof K>"u"||K===null)&&(K={}),typeof q!="string")throw new TypeError("createUnitSingle expects first parameter to be of type 'string'");if(Pe(j,q))throw new Error('Cannot create unit "'+q+'": a unit with that name already exists');$e(q);var re=null,O=[],L=0,Y,ee,ne;if(K&&K.type==="Unit")re=K.clone();else if(typeof K=="string")K!==""&&(Y=K);else if(typeof K=="object")Y=K.definition,ee=K.prefixes,L=K.offset,ne=K.baseName,K.aliases&&(O=K.aliases.valueOf());else throw new TypeError('Cannot create unit "'+q+'" from "'+K.toString()+'": expecting "string" or "Unit" or "Object"');if(O){for(var le=0;le<O.length;le++)if(Pe(j,O[le]))throw new Error('Cannot create alias "'+O[le]+'": a unit with that name already exists')}if(Y&&typeof Y=="string"&&!re)try{re=w.parse(Y,{allowNoUnits:!0})}catch(ar){throw ar.message='Could not create unit "'+q+'" from "'+Y+'": '+ar.message,ar}else Y&&Y.type==="Unit"&&(re=Y.clone());O=O||[],L=L||0,ee&&ee.toUpperCase?ee=P[ee.toUpperCase()]||P.NONE:ee=P.NONE;var ge={};if(re){ge={name:q,value:re.value,dimensions:re.dimensions.slice(0),prefixes:ee,offset:L};var lt=!1;for(var Ie in _)if(Pe(_,Ie)){for(var Ft=!0,T=0;T<V.length;T++)if(Math.abs((ge.dimensions[T]||0)-(_[Ie].dimensions[T]||0))>1e-12){Ft=!1;break}if(Ft){lt=!0,ge.base=_[Ie];break}}if(!lt){ne=ne||q+"_STUFF";var W={dimensions:re.dimensions.slice(0)};W.key=ne,_[ne]=W,X[ne]={unit:ge,prefix:P.NONE[""]},ge.base=_[ne]}}else{if(ne=ne||q+"_STUFF",V.indexOf(ne)>=0)throw new Error('Cannot create new base unit "'+q+'": a base unit with that name already exists (and cannot be overridden)');V.push(ne);for(var ye in _)Pe(_,ye)&&(_[ye].dimensions[V.length-1]=0);for(var Ae={dimensions:[]},be=0;be<V.length;be++)Ae.dimensions[be]=0;Ae.dimensions[V.length-1]=1,Ae.key=ne,_[ne]=Ae,ge={name:q,value:1,dimensions:_[ne].dimensions.slice(0),prefixes:ee,offset:L,base:_[ne]},X[ne]={unit:ge,prefix:P.NONE[""]}}w.UNITS[q]=ge;for(var oe=0;oe<O.length;oe++){var he=O[oe],qe={};for(var Ve in ge)Pe(ge,Ve)&&(qe[Ve]=ge[Ve]);qe.name=he,w.UNITS[he]=qe}return delete M.cache,new w(null,q)},w.deleteUnit=function(q){delete w.UNITS[q],delete M.cache},w.PREFIXES=P,w.BASE_DIMENSIONS=V,w.BASE_UNITS=_,w.UNIT_SYSTEMS=Q,w.UNITS=j,w},{isClass:!0}),b1="unit",IL=["typed","Unit"],zL=I(b1,IL,e=>{var{typed:t,Unit:r}=e;return t(b1,{Unit:function(a){return a.clone()},string:function(a){return r.isValuelessUnit(a)?new r(null,a):r.parse(a,{allowNoUnits:!0})},"number | BigNumber | Fraction | Complex, string | Unit":function(a,i){return new r(a,i)},"number | BigNumber | Fraction":function(a){return new r(a)},"Array | Matrix":t.referToSelf(n=>a=>Xe(a,n))})}),w1="sparse",jL=["typed","SparseMatrix"],qL=I(w1,jL,e=>{var{typed:t,SparseMatrix:r}=e;return t(w1,{"":function(){return new r([])},string:function(a){return new r([],a)},"Array | Matrix":function(a){return new r(a)},"Array | Matrix, string":function(a,i){return new r(a,i)}})}),x1="createUnit",RL=["typed","Unit"],LL=I(x1,RL,e=>{var{typed:t,Unit:r}=e;return t(x1,{"Object, Object":function(a,i){return r.createUnit(a,i)},Object:function(a){return r.createUnit(a,{})},"string, Unit | string | Object, Object":function(a,i,o){var s={};return s[a]=i,r.createUnit(s,o)},"string, Unit | string | Object":function(a,i){var o={};return o[a]=i,r.createUnit(o,{})},string:function(a){var i={};return i[a]={},r.createUnit(i,{})}})}),D1="acos",HL=["typed","config","Complex"],GL=I(D1,HL,e=>{var{typed:t,config:r,Complex:n}=e;return t(D1,{number:function(i){return i>=-1&&i<=1||r.predictable?Math.acos(i):new n(i,0).acos()},Complex:function(i){return i.acos()},BigNumber:function(i){return i.acos()}})}),N1="acosh",VL=["typed","config","Complex"],UL=I(N1,VL,e=>{var{typed:t,config:r,Complex:n}=e;return t(N1,{number:function(i){return i>=1||r.predictable?Yx(i):i<=-1?new n(Math.log(Math.sqrt(i*i-1)-i),Math.PI):new n(i,0).acosh()},Complex:function(i){return i.acosh()},BigNumber:function(i){return i.acosh()}})}),A1="acot",WL=["typed","BigNumber"],JL=I(A1,WL,e=>{var{typed:t,BigNumber:r}=e;return t(A1,{number:Zx,Complex:function(a){return a.acot()},BigNumber:function(a){return new r(1).div(a).atan()}})}),C1="acoth",KL=["typed","config","Complex","BigNumber"],YL=I(C1,KL,e=>{var{typed:t,config:r,Complex:n,BigNumber:a}=e;return t(C1,{number:function(o){return o>=1||o<=-1||r.predictable?Qx(o):new n(o,0).acoth()},Complex:function(o){return o.acoth()},BigNumber:function(o){return new a(1).div(o).atanh()}})}),E1="acsc",ZL=["typed","config","Complex","BigNumber"],QL=I(E1,ZL,e=>{var{typed:t,config:r,Complex:n,BigNumber:a}=e;return t(E1,{number:function(o){return o<=-1||o>=1||r.predictable?Xx(o):new n(o,0).acsc()},Complex:function(o){return o.acsc()},BigNumber:function(o){return new a(1).div(o).asin()}})}),S1="acsch",XL=["typed","BigNumber"],eH=I(S1,XL,e=>{var{typed:t,BigNumber:r}=e;return t(S1,{number:e2,Complex:function(a){return a.acsch()},BigNumber:function(a){return new r(1).div(a).asinh()}})}),T1="asec",tH=["typed","config","Complex","BigNumber"],rH=I(T1,tH,e=>{var{typed:t,config:r,Complex:n,BigNumber:a}=e;return t(T1,{number:function(o){return o<=-1||o>=1||r.predictable?t2(o):new n(o,0).asec()},Complex:function(o){return o.asec()},BigNumber:function(o){return new a(1).div(o).acos()}})}),M1="asech",nH=["typed","config","Complex","BigNumber"],aH=I(M1,nH,e=>{var{typed:t,config:r,Complex:n,BigNumber:a}=e;return t(M1,{number:function(o){if(o<=1&&o>=-1||r.predictable){var s=1/o;if(s>0||r.predictable)return r2(o);var u=Math.sqrt(s*s-1);return new n(Math.log(u-s),Math.PI)}return new n(o,0).asech()},Complex:function(o){return o.asech()},BigNumber:function(o){return new a(1).div(o).acosh()}})}),F1="asin",iH=["typed","config","Complex"],oH=I(F1,iH,e=>{var{typed:t,config:r,Complex:n}=e;return t(F1,{number:function(i){return i>=-1&&i<=1||r.predictable?Math.asin(i):new n(i,0).asin()},Complex:function(i){return i.asin()},BigNumber:function(i){return i.asin()}})}),sH="asinh",uH=["typed"],lH=I(sH,uH,e=>{var{typed:t}=e;return t("asinh",{number:n2,Complex:function(n){return n.asinh()},BigNumber:function(n){return n.asinh()}})}),cH="atan",fH=["typed"],mH=I(cH,fH,e=>{var{typed:t}=e;return t("atan",{number:function(n){return Math.atan(n)},Complex:function(n){return n.atan()},BigNumber:function(n){return n.atan()}})}),P1="atan2",dH=["typed","matrix","equalScalar","BigNumber","DenseMatrix","concat"],hH=I(P1,dH,e=>{var{typed:t,matrix:r,equalScalar:n,BigNumber:a,DenseMatrix:i,concat:o}=e,s=Zn({typed:t,equalScalar:n}),u=Wr({typed:t}),l=v2({typed:t,equalScalar:n}),c=Sr({typed:t,equalScalar:n}),f=sr({typed:t,DenseMatrix:i}),m=$t({typed:t,matrix:r,concat:o});return t(P1,{"number, number":Math.atan2,"BigNumber, BigNumber":(d,p)=>a.atan2(d,p)},m({scalar:"number | BigNumber",SS:l,DS:u,SD:s,Ss:c,sS:f}))}),k1="atanh",pH=["typed","config","Complex"],gH=I(k1,pH,e=>{var{typed:t,config:r,Complex:n}=e;return t(k1,{number:function(i){return i<=1&&i>=-1||r.predictable?a2(i):new n(i,0).atanh()},Complex:function(i){return i.atanh()},BigNumber:function(i){return i.atanh()}})}),rs=I("trigUnit",["typed"],e=>{var{typed:t}=e;return{Unit:t.referToSelf(r=>n=>{if(!n.hasBase(n.constructor.BASE_UNITS.ANGLE))throw new TypeError("Unit in function cot is no angle");return t.find(r,n.valueType())(n.value)})}}),O1="cos",vH=["typed"],yH=I(O1,vH,e=>{var{typed:t}=e,r=rs({typed:t});return t(O1,{number:Math.cos,"Complex | BigNumber":n=>n.cos()},r)}),$1="cosh",bH=["typed"],wH=I($1,bH,e=>{var{typed:t}=e;return t($1,{number:d9,"Complex | BigNumber":r=>r.cosh()})}),B1="cot",xH=["typed","BigNumber"],DH=I(B1,xH,e=>{var{typed:t,BigNumber:r}=e,n=rs({typed:t});return t(B1,{number:i2,Complex:a=>a.cot(),BigNumber:a=>new r(1).div(a.tan())},n)}),_1="coth",NH=["typed","BigNumber"],AH=I(_1,NH,e=>{var{typed:t,BigNumber:r}=e;return t(_1,{number:o2,Complex:n=>n.coth(),BigNumber:n=>new r(1).div(n.tanh())})}),I1="csc",CH=["typed","BigNumber"],EH=I(I1,CH,e=>{var{typed:t,BigNumber:r}=e,n=rs({typed:t});return t(I1,{number:s2,Complex:a=>a.csc(),BigNumber:a=>new r(1).div(a.sin())},n)}),z1="csch",SH=["typed","BigNumber"],TH=I(z1,SH,e=>{var{typed:t,BigNumber:r}=e;return t(z1,{number:u2,Complex:n=>n.csch(),BigNumber:n=>new r(1).div(n.sinh())})}),j1="sec",MH=["typed","BigNumber"],FH=I(j1,MH,e=>{var{typed:t,BigNumber:r}=e,n=rs({typed:t});return t(j1,{number:l2,Complex:a=>a.sec(),BigNumber:a=>new r(1).div(a.cos())},n)}),q1="sech",PH=["typed","BigNumber"],kH=I(q1,PH,e=>{var{typed:t,BigNumber:r}=e;return t(q1,{number:c2,Complex:n=>n.sech(),BigNumber:n=>new r(1).div(n.cosh())})}),R1="sin",OH=["typed"],$H=I(R1,OH,e=>{var{typed:t}=e,r=rs({typed:t});return t(R1,{number:Math.sin,"Complex | BigNumber":n=>n.sin()},r)}),L1="sinh",BH=["typed"],_H=I(L1,BH,e=>{var{typed:t}=e;return t(L1,{number:f2,"Complex | BigNumber":r=>r.sinh()})}),H1="tan",IH=["typed"],zH=I(H1,IH,e=>{var{typed:t}=e,r=rs({typed:t});return t(H1,{number:Math.tan,"Complex | BigNumber":n=>n.tan()},r)}),jH="tanh",qH=["typed"],RH=I(jH,qH,e=>{var{typed:t}=e;return t("tanh",{number:p9,"Complex | BigNumber":r=>r.tanh()})}),G1="setCartesian",LH=["typed","size","subset","compareNatural","Index","DenseMatrix"],HH=I(G1,LH,e=>{var{typed:t,size:r,subset:n,compareNatural:a,Index:i,DenseMatrix:o}=e;return t(G1,{"Array | Matrix, Array | Matrix":function(u,l){var c=[];if(n(r(u),new i(0))!==0&&n(r(l),new i(0))!==0){var f=dt(Array.isArray(u)?u:u.toArray()).sort(a),m=dt(Array.isArray(l)?l:l.toArray()).sort(a);c=[];for(var d=0;d<f.length;d++)for(var p=0;p<m.length;p++)c.push([f[d],m[p]])}return Array.isArray(u)&&Array.isArray(l)?c:new o(c)}})}),V1="setDifference",GH=["typed","size","subset","compareNatural","Index","DenseMatrix"],VH=I(V1,GH,e=>{var{typed:t,size:r,subset:n,compareNatural:a,Index:i,DenseMatrix:o}=e;return t(V1,{"Array | Matrix, Array | Matrix":function(u,l){var c;if(n(r(u),new i(0))===0)c=[];else{if(n(r(l),new i(0))===0)return dt(u.toArray());var f=Vo(dt(Array.isArray(u)?u:u.toArray()).sort(a)),m=Vo(dt(Array.isArray(l)?l:l.toArray()).sort(a));c=[];for(var d,p=0;p<f.length;p++){d=!1;for(var h=0;h<m.length;h++)if(a(f[p].value,m[h].value)===0&&f[p].identifier===m[h].identifier){d=!0;break}d||c.push(f[p])}}return Array.isArray(u)&&Array.isArray(l)?Gl(c):new o(Gl(c))}})}),U1="setDistinct",UH=["typed","size","subset","compareNatural","Index","DenseMatrix"],WH=I(U1,UH,e=>{var{typed:t,size:r,subset:n,compareNatural:a,Index:i,DenseMatrix:o}=e;return t(U1,{"Array | Matrix":function(u){var l;if(n(r(u),new i(0))===0)l=[];else{var c=dt(Array.isArray(u)?u:u.toArray()).sort(a);l=[],l.push(c[0]);for(var f=1;f<c.length;f++)a(c[f],c[f-1])!==0&&l.push(c[f])}return Array.isArray(u)?l:new o(l)}})}),W1="setIntersect",JH=["typed","size","subset","compareNatural","Index","DenseMatrix"],KH=I(W1,JH,e=>{var{typed:t,size:r,subset:n,compareNatural:a,Index:i,DenseMatrix:o}=e;return t(W1,{"Array | Matrix, Array | Matrix":function(u,l){var c;if(n(r(u),new i(0))===0||n(r(l),new i(0))===0)c=[];else{var f=Vo(dt(Array.isArray(u)?u:u.toArray()).sort(a)),m=Vo(dt(Array.isArray(l)?l:l.toArray()).sort(a));c=[];for(var d=0;d<f.length;d++)for(var p=0;p<m.length;p++)if(a(f[d].value,m[p].value)===0&&f[d].identifier===m[p].identifier){c.push(f[d]);break}}return Array.isArray(u)&&Array.isArray(l)?Gl(c):new o(Gl(c))}})}),J1="setIsSubset",YH=["typed","size","subset","compareNatural","Index"],ZH=I(J1,YH,e=>{var{typed:t,size:r,subset:n,compareNatural:a,Index:i}=e;return t(J1,{"Array | Matrix, Array | Matrix":function(s,u){if(n(r(s),new i(0))===0)return!0;if(n(r(u),new i(0))===0)return!1;for(var l=Vo(dt(Array.isArray(s)?s:s.toArray()).sort(a)),c=Vo(dt(Array.isArray(u)?u:u.toArray()).sort(a)),f,m=0;m<l.length;m++){f=!1;for(var d=0;d<c.length;d++)if(a(l[m].value,c[d].value)===0&&l[m].identifier===c[d].identifier){f=!0;break}if(f===!1)return!1}return!0}})}),K1="setMultiplicity",QH=["typed","size","subset","compareNatural","Index"],XH=I(K1,QH,e=>{var{typed:t,size:r,subset:n,compareNatural:a,Index:i}=e;return t(K1,{"number | BigNumber | Fraction | Complex, Array | Matrix":function(s,u){if(n(r(u),new i(0))===0)return 0;for(var l=dt(Array.isArray(u)?u:u.toArray()),c=0,f=0;f<l.length;f++)a(l[f],s)===0&&c++;return c}})}),Y1="setPowerset",eG=["typed","size","subset","compareNatural","Index"],tG=I(Y1,eG,e=>{var{typed:t,size:r,subset:n,compareNatural:a,Index:i}=e;return t(Y1,{"Array | Matrix":function(l){if(n(r(l),new i(0))===0)return[];for(var c=dt(Array.isArray(l)?l:l.toArray()).sort(a),f=[],m=0;m.toString(2).length<=c.length;)f.push(o(c,m.toString(2).split("").reverse())),m++;return s(f)}});function o(u,l){for(var c=[],f=0;f<l.length;f++)l[f]==="1"&&c.push(u[f]);return c}function s(u){for(var l=[],c=u.length-1;c>0;c--)for(var f=0;f<c;f++)u[f].length>u[f+1].length&&(l=u[f],u[f]=u[f+1],u[f+1]=l);return u}}),Z1="setSize",rG=["typed","compareNatural"],nG=I(Z1,rG,e=>{var{typed:t,compareNatural:r}=e;return t(Z1,{"Array | Matrix":function(a){return Array.isArray(a)?dt(a).length:dt(a.toArray()).length},"Array | Matrix, boolean":function(a,i){if(i===!1||a.length===0)return Array.isArray(a)?dt(a).length:dt(a.toArray()).length;for(var o=dt(Array.isArray(a)?a:a.toArray()).sort(r),s=1,u=1;u<o.length;u++)r(o[u],o[u-1])!==0&&s++;return s}})}),Q1="setSymDifference",aG=["typed","size","concat","subset","setDifference","Index"],iG=I(Q1,aG,e=>{var{typed:t,size:r,concat:n,subset:a,setDifference:i,Index:o}=e;return t(Q1,{"Array | Matrix, Array | Matrix":function(u,l){if(a(r(u),new o(0))===0)return dt(l);if(a(r(l),new o(0))===0)return dt(u);var c=dt(u),f=dt(l);return n(i(c,f),i(f,c))}})}),X1="setUnion",oG=["typed","size","concat","subset","setIntersect","setSymDifference","Index"],sG=I(X1,oG,e=>{var{typed:t,size:r,concat:n,subset:a,setIntersect:i,setSymDifference:o,Index:s}=e;return t(X1,{"Array | Matrix, Array | Matrix":function(l,c){if(a(r(l),new s(0))===0)return dt(c);if(a(r(c),new s(0))===0)return dt(l);var f=dt(l),m=dt(c);return n(o(f,m),i(f,m))}})}),ey="add",uG=["typed","matrix","addScalar","equalScalar","DenseMatrix","SparseMatrix","concat"],lG=I(ey,uG,e=>{var{typed:t,matrix:r,addScalar:n,equalScalar:a,DenseMatrix:i,SparseMatrix:o,concat:s}=e,u=gi({typed:t}),l=Nd({typed:t,equalScalar:a}),c=Xi({typed:t,DenseMatrix:i}),f=$t({typed:t,matrix:r,concat:s});return t(ey,{"any, any":n,"any, any, ...any":t.referToSelf(m=>(d,p,h)=>{for(var g=m(d,p),b=0;b<h.length;b++)g=m(g,h[b]);return g})},f({elop:n,DS:u,SS:l,Ss:c}))}),ty="hypot",cG=["typed","abs","addScalar","divideScalar","multiplyScalar","sqrt","smaller","isPositive"],fG=I(ty,cG,e=>{var{typed:t,abs:r,addScalar:n,divideScalar:a,multiplyScalar:i,sqrt:o,smaller:s,isPositive:u}=e;return t(ty,{"... number | BigNumber":l,Array:l,Matrix:c=>l(dt(c.toArray(),!0))});function l(c){for(var f=0,m=0,d=0;d<c.length;d++){if(ka(c[d]))throw new TypeError("Unexpected type of argument to hypot");var p=r(c[d]);s(m,p)?(f=i(f,i(a(m,p),a(m,p))),f=n(f,1),m=p):f=n(f,u(p)?i(a(p,m),a(p,m)):p)}return i(m,o(f))}}),ry="norm",mG=["typed","abs","add","pow","conj","sqrt","multiply","equalScalar","larger","smaller","matrix","ctranspose","eigs"],dG=I(ry,mG,e=>{var{typed:t,abs:r,add:n,pow:a,conj:i,sqrt:o,multiply:s,equalScalar:u,larger:l,smaller:c,matrix:f,ctranspose:m,eigs:d}=e;return t(ry,{number:Math.abs,Complex:function(C){return C.abs()},BigNumber:function(C){return C.abs()},boolean:function(C){return Math.abs(C)},Array:function(C){return v(f(C),2)},Matrix:function(C){return v(C,2)},"Array, number | BigNumber | string":function(C,A){return v(f(C),A)},"Matrix, number | BigNumber | string":function(C,A){return v(C,A)}});function p(N){var C=0;return N.forEach(function(A){var E=r(A);l(E,C)&&(C=E)},!0),C}function h(N){var C;return N.forEach(function(A){var E=r(A);(!C||c(E,C))&&(C=E)},!0),C||0}function g(N,C){if(C===Number.POSITIVE_INFINITY||C==="inf")return p(N);if(C===Number.NEGATIVE_INFINITY||C==="-inf")return h(N);if(C==="fro")return v(N,2);if(typeof C=="number"&&!isNaN(C)){if(!u(C,0)){var A=0;return N.forEach(function(E){A=n(a(r(E),C),A)},!0),a(A,1/C)}return Number.POSITIVE_INFINITY}throw new Error("Unsupported parameter value")}function b(N){var C=0;return N.forEach(function(A,E){C=n(C,s(A,i(A)))}),r(o(C))}function D(N){var C=[],A=0;return N.forEach(function(E,S){var F=S[1],k=n(C[F]||0,r(E));l(k,A)&&(A=k),C[F]=k},!0),A}function y(N){var C=N.size();if(C[0]!==C[1])throw new RangeError("Invalid matrix dimensions");var A=m(N),E=s(A,N),S=d(E).values.toArray(),F=S[S.length-1];return r(o(F))}function w(N){var C=[],A=0;return N.forEach(function(E,S){var F=S[0],k=n(C[F]||0,r(E));l(k,A)&&(A=k),C[F]=k},!0),A}function x(N,C){if(C===1)return D(N);if(C===Number.POSITIVE_INFINITY||C==="inf")return w(N);if(C==="fro")return b(N);if(C===2)return y(N);throw new Error("Unsupported parameter value "+C)}function v(N,C){var A=N.size();if(A.length===1)return g(N,C);if(A.length===2){if(A[0]&&A[1])return x(N,C);throw new RangeError("Invalid matrix dimensions")}}}),ny="dot",hG=["typed","addScalar","multiplyScalar","conj","size"],pG=I(ny,hG,e=>{var{typed:t,addScalar:r,multiplyScalar:n,conj:a,size:i}=e;return t(ny,{"Array | DenseMatrix, Array | DenseMatrix":s,"SparseMatrix, SparseMatrix":u});function o(c,f){var m=l(c),d=l(f),p,h;if(m.length===1)p=m[0];else if(m.length===2&&m[1]===1)p=m[0];else throw new RangeError("Expected a column vector, instead got a matrix of size ("+m.join(", ")+")");if(d.length===1)h=d[0];else if(d.length===2&&d[1]===1)h=d[0];else throw new RangeError("Expected a column vector, instead got a matrix of size ("+d.join(", ")+")");if(p!==h)throw new RangeError("Vectors must have equal length ("+p+" != "+h+")");if(p===0)throw new RangeError("Cannot calculate the dot product of empty vectors");return p}function s(c,f){var m=o(c,f),d=Re(c)?c._data:c,p=Re(c)?c._datatype||c.getDataType():void 0,h=Re(f)?f._data:f,g=Re(f)?f._datatype||f.getDataType():void 0,b=l(c).length===2,D=l(f).length===2,y=r,w=n;if(p&&g&&p===g&&typeof p=="string"&&p!=="mixed"){var x=p;y=t.find(r,[x,x]),w=t.find(n,[x,x])}if(!b&&!D){for(var v=w(a(d[0]),h[0]),N=1;N<m;N++)v=y(v,w(a(d[N]),h[N]));return v}if(!b&&D){for(var C=w(a(d[0]),h[0][0]),A=1;A<m;A++)C=y(C,w(a(d[A]),h[A][0]));return C}if(b&&!D){for(var E=w(a(d[0][0]),h[0]),S=1;S<m;S++)E=y(E,w(a(d[S][0]),h[S]));return E}if(b&&D){for(var F=w(a(d[0][0]),h[0][0]),k=1;k<m;k++)F=y(F,w(a(d[k][0]),h[k][0]));return F}}function u(c,f){o(c,f);for(var m=c._index,d=c._values,p=f._index,h=f._values,g=0,b=r,D=n,y=0,w=0;y<m.length&&w<p.length;){var x=m[y],v=p[w];if(x<v){y++;continue}if(x>v){w++;continue}x===v&&(g=b(g,D(d[y],h[w])),y++,w++)}return g}function l(c){return Re(c)?c.size():i(c)}}),gG="trace",vG=["typed","matrix","add"],yG=I(gG,vG,e=>{var{typed:t,matrix:r,add:n}=e;return t("trace",{Array:function(s){return a(r(s))},SparseMatrix:i,DenseMatrix:a,any:We});function a(o){var s=o._size,u=o._data;switch(s.length){case 1:if(s[0]===1)return We(u[0]);throw new RangeError("Matrix must be square (size: "+nt(s)+")");case 2:{var l=s[0],c=s[1];if(l===c){for(var f=0,m=0;m<l;m++)f=n(f,u[m][m]);return f}else throw new RangeError("Matrix must be square (size: "+nt(s)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+nt(s)+")")}}function i(o){var s=o._values,u=o._index,l=o._ptr,c=o._size,f=c[0],m=c[1];if(f===m){var d=0;if(s.length>0)for(var p=0;p<m;p++)for(var h=l[p],g=l[p+1],b=h;b<g;b++){var D=u[b];if(D===p){d=n(d,s[b]);break}if(D>p)break}return d}throw new RangeError("Matrix must be square (size: "+nt(c)+")")}}),ay="index",bG=["typed","Index"],wG=I(ay,bG,e=>{var{typed:t,Index:r}=e;return t(ay,{"...number | string | BigNumber | Range | Array | Matrix":function(a){var i=a.map(function(s){return Qe(s)?s.toNumber():Et(s)||Re(s)?s.map(function(u){return Qe(u)?u.toNumber():u}):s}),o=new r;return r.apply(o,i),o}})}),I2=new Set(["end"]),xG="Node",DG=["mathWithTransform"],NG=I(xG,DG,e=>{var{mathWithTransform:t}=e;function r(a){for(var i of[...I2])if(a.has(i))throw new Error('Scope contains an illegal symbol, "'+i+'" is a reserved keyword')}class n{get type(){return"Node"}get isNode(){return!0}evaluate(i){return this.compile().evaluate(i)}compile(){var i=this._compile(t,{}),o={},s=null;function u(l){var c=_o(l);return r(c),i(c,o,s)}return{evaluate:u}}_compile(i,o){throw new Error("Method _compile must be implemented by type "+this.type)}forEach(i){throw new Error("Cannot run forEach on a Node interface")}map(i){throw new Error("Cannot run map on a Node interface")}_ifNode(i){if(!Nt(i))throw new TypeError("Callback function must return a Node");return i}traverse(i){i(this,null,null);function o(s,u){s.forEach(function(l,c,f){u(l,c,f),o(l,u)})}o(this,i)}transform(i){function o(s,u,l){var c=i(s,u,l);return c!==s?c:s.map(o)}return o(this,null,null)}filter(i){var o=[];return this.traverse(function(s,u,l){i(s,u,l)&&o.push(s)}),o}clone(){throw new Error("Cannot clone a Node interface")}cloneDeep(){return this.map(function(i){return i.cloneDeep()})}equals(i){return i?this.type===i.type&&za(this,i):!1}toString(i){var o=this._getCustomString(i);return typeof o<"u"?o:this._toString(i)}_toString(){throw new Error("_toString not implemented for "+this.type)}toJSON(){throw new Error("Cannot serialize object: toJSON not implemented by "+this.type)}toHTML(i){var o=this._getCustomString(i);return typeof o<"u"?o:this._toHTML(i)}_toHTML(){throw new Error("_toHTML not implemented for "+this.type)}toTex(i){var o=this._getCustomString(i);return typeof o<"u"?o:this._toTex(i)}_toTex(i){throw new Error("_toTex not implemented for "+this.type)}_getCustomString(i){if(i&&typeof i=="object")switch(typeof i.handler){case"object":case"undefined":return;case"function":return i.handler(this,i);default:throw new TypeError("Object or function expected as callback")}}getIdentifier(){return this.type}getContent(){return this}}return n},{isClass:!0,isNode:!0});function Jr(e){return e&&e.isIndexError?new Jn(e.index+1,e.min+1,e.max!==void 0?e.max+1:void 0):e}function z2(e){var{subset:t}=e;return function(n,a){try{if(Array.isArray(n))return t(n,a);if(n&&typeof n.subset=="function")return n.subset(a);if(typeof n=="string")return t(n,a);if(typeof n=="object"){if(!a.isObjectProperty())throw new TypeError("Cannot apply a numeric index as object property");return Hr(n,a.getObjectProperty())}else throw new TypeError("Cannot apply index: unsupported type of object")}catch(i){throw Jr(i)}}}var Qu="AccessorNode",AG=["subset","Node"],CG=I(Qu,AG,e=>{var{subset:t,Node:r}=e,n=z2({subset:t});function a(o){return!(Ji(o)||Cn(o)||ct(o)||li(o)||pc(o)||Ia(o)||yr(o))}class i extends r{constructor(s,u){if(super(),!Nt(s))throw new TypeError('Node expected for parameter "object"');if(!Zo(u))throw new TypeError('IndexNode expected for parameter "index"');this.object=s,this.index=u}get name(){return this.index?this.index.isObjectProperty()?this.index.getObjectProperty():"":this.object.name||""}get type(){return Qu}get isAccessorNode(){return!0}_compile(s,u){var l=this.object._compile(s,u),c=this.index._compile(s,u);if(this.index.isObjectProperty()){var f=this.index.getObjectProperty();return function(d,p,h){return Hr(l(d,p,h),f)}}else return function(d,p,h){var g=l(d,p,h),b=c(d,p,g);return n(g,b)}}forEach(s){s(this.object,"object",this),s(this.index,"index",this)}map(s){return new i(this._ifNode(s(this.object,"object",this)),this._ifNode(s(this.index,"index",this)))}clone(){return new i(this.object,this.index)}_toString(s){var u=this.object.toString(s);return a(this.object)&&(u="("+u+")"),u+this.index.toString(s)}_toHTML(s){var u=this.object.toHTML(s);return a(this.object)&&(u='<span class="math-parenthesis math-round-parenthesis">(</span>'+u+'<span class="math-parenthesis math-round-parenthesis">)</span>'),u+this.index.toHTML(s)}_toTex(s){var u=this.object.toTex(s);return a(this.object)&&(u="\\left(' + object + '\\right)"),u+this.index.toTex(s)}toJSON(){return{mathjs:Qu,object:this.object,index:this.index}}static fromJSON(s){return new i(s.object,s.index)}}return nr(i,"name",Qu),i},{isClass:!0,isNode:!0}),Xu="ArrayNode",EG=["Node"],SG=I(Xu,EG,e=>{var{Node:t}=e;class r extends t{constructor(a){if(super(),this.items=a||[],!Array.isArray(this.items)||!this.items.every(Nt))throw new TypeError("Array containing Nodes expected")}get type(){return Xu}get isArrayNode(){return!0}_compile(a,i){var o=ii(this.items,function(l){return l._compile(a,i)}),s=a.config.matrix!=="Array";if(s){var u=a.matrix;return function(c,f,m){return u(ii(o,function(d){return d(c,f,m)}))}}else return function(c,f,m){return ii(o,function(d){return d(c,f,m)})}}forEach(a){for(var i=0;i<this.items.length;i++){var o=this.items[i];a(o,"items["+i+"]",this)}}map(a){for(var i=[],o=0;o<this.items.length;o++)i[o]=this._ifNode(a(this.items[o],"items["+o+"]",this));return new r(i)}clone(){return new r(this.items.slice(0))}_toString(a){var i=this.items.map(function(o){return o.toString(a)});return"["+i.join(", ")+"]"}toJSON(){return{mathjs:Xu,items:this.items}}static fromJSON(a){return new r(a.items)}_toHTML(a){var i=this.items.map(function(o){return o.toHTML(a)});return'<span class="math-parenthesis math-square-parenthesis">[</span>'+i.join('<span class="math-separator">,</span>')+'<span class="math-parenthesis math-square-parenthesis">]</span>'}_toTex(a){function i(o,s){var u=o.some(Cn)&&!o.every(Cn),l=s||u,c=l?"&":"\\\\",f=o.map(function(m){return m.items?i(m.items,!s):m.toTex(a)}).join(c);return u||!l||l&&!s?"\\begin{bmatrix}"+f+"\\end{bmatrix}":f}return i(this.items,!1)}}return nr(r,"name",Xu),r},{isClass:!0,isNode:!0});function TG(e){var{subset:t,matrix:r}=e;return function(a,i,o){try{if(Array.isArray(a)){var s=r(a).subset(i,o).valueOf();return s.forEach((u,l)=>{a[l]=u}),a}else{if(a&&typeof a.subset=="function")return a.subset(i,o);if(typeof a=="string")return t(a,i,o);if(typeof a=="object"){if(!i.isObjectProperty())throw TypeError("Cannot apply a numeric index as object property");return Ro(a,i.getObjectProperty(),o),a}else throw new TypeError("Cannot apply index: unsupported type of object")}}catch(u){throw Jr(u)}}}var Hn=[{AssignmentNode:{},FunctionAssignmentNode:{}},{ConditionalNode:{latexLeftParens:!1,latexRightParens:!1,latexParens:!1}},{"OperatorNode:or":{op:"or",associativity:"left",associativeWith:[]}},{"OperatorNode:xor":{op:"xor",associativity:"left",associativeWith:[]}},{"OperatorNode:and":{op:"and",associativity:"left",associativeWith:[]}},{"OperatorNode:bitOr":{op:"|",associativity:"left",associativeWith:[]}},{"OperatorNode:bitXor":{op:"^|",associativity:"left",associativeWith:[]}},{"OperatorNode:bitAnd":{op:"&",associativity:"left",associativeWith:[]}},{"OperatorNode:equal":{op:"==",associativity:"left",associativeWith:[]},"OperatorNode:unequal":{op:"!=",associativity:"left",associativeWith:[]},"OperatorNode:smaller":{op:"<",associativity:"left",associativeWith:[]},"OperatorNode:larger":{op:">",associativity:"left",associativeWith:[]},"OperatorNode:smallerEq":{op:"<=",associativity:"left",associativeWith:[]},"OperatorNode:largerEq":{op:">=",associativity:"left",associativeWith:[]},RelationalNode:{associativity:"left",associativeWith:[]}},{"OperatorNode:leftShift":{op:"<<",associativity:"left",associativeWith:[]},"OperatorNode:rightArithShift":{op:">>",associativity:"left",associativeWith:[]},"OperatorNode:rightLogShift":{op:">>>",associativity:"left",associativeWith:[]}},{"OperatorNode:to":{op:"to",associativity:"left",associativeWith:[]}},{RangeNode:{}},{"OperatorNode:add":{op:"+",associativity:"left",associativeWith:["OperatorNode:add","OperatorNode:subtract"]},"OperatorNode:subtract":{op:"-",associativity:"left",associativeWith:[]}},{"OperatorNode:multiply":{op:"*",associativity:"left",associativeWith:["OperatorNode:multiply","OperatorNode:divide","Operator:dotMultiply","Operator:dotDivide"]},"OperatorNode:divide":{op:"/",associativity:"left",associativeWith:[],latexLeftParens:!1,latexRightParens:!1,latexParens:!1},"OperatorNode:dotMultiply":{op:".*",associativity:"left",associativeWith:["OperatorNode:multiply","OperatorNode:divide","OperatorNode:dotMultiply","OperatorNode:doDivide"]},"OperatorNode:dotDivide":{op:"./",associativity:"left",associativeWith:[]},"OperatorNode:mod":{op:"mod",associativity:"left",associativeWith:[]}},{"OperatorNode:multiply":{associativity:"left",associativeWith:["OperatorNode:multiply","OperatorNode:divide","Operator:dotMultiply","Operator:dotDivide"]}},{"OperatorNode:unaryPlus":{op:"+",associativity:"right"},"OperatorNode:unaryMinus":{op:"-",associativity:"right"},"OperatorNode:bitNot":{op:"~",associativity:"right"},"OperatorNode:not":{op:"not",associativity:"right"}},{"OperatorNode:pow":{op:"^",associativity:"right",associativeWith:[],latexRightParens:!1},"OperatorNode:dotPow":{op:".^",associativity:"right",associativeWith:[]}},{"OperatorNode:factorial":{op:"!",associativity:"left"}},{"OperatorNode:ctranspose":{op:"'",associativity:"left"}}];function el(e,t){if(!t||t!=="auto")return e;for(var r=e;Ia(r);)r=r.content;return r}function St(e,t,r,n){var a=e;t!=="keep"&&(a=e.getContent());for(var i=a.getIdentifier(),o=null,s=0;s<Hn.length;s++)if(i in Hn[s]){o=s;break}if(i==="OperatorNode:multiply"&&a.implicit&&r!=="show"){var u=el(a.args[0],t);!(ct(u)&&n&&n.getIdentifier()==="OperatorNode:divide"&&Cm(el(n.args[0],t)))&&!(u.getIdentifier()==="OperatorNode:divide"&&Cm(el(u.args[0],t))&&ct(el(u.args[1])))&&(o+=1)}return o}function xs(e,t){var r=e;t!=="keep"&&(r=e.getContent());var n=r.getIdentifier(),a=St(r,t);if(a===null)return null;var i=Hn[a][n];if(Pe(i,"associativity")){if(i.associativity==="left")return"left";if(i.associativity==="right")return"right";throw Error("'"+n+"' has the invalid associativity '"+i.associativity+"'.")}return null}function Of(e,t,r){var n=r!=="keep"?e.getContent():e,a=r!=="keep"?e.getContent():t,i=n.getIdentifier(),o=a.getIdentifier(),s=St(n,r);if(s===null)return null;var u=Hn[s][i];if(Pe(u,"associativeWith")&&u.associativeWith instanceof Array){for(var l=0;l<u.associativeWith.length;l++)if(u.associativeWith[l]===o)return!0;return!1}return null}function MG(e){var t="OperatorNode:"+e;for(var r of Hn)if(t in r)return r[t].op;return null}var tl="AssignmentNode",FG=["subset","?matrix","Node"],PG=I(tl,FG,e=>{var{subset:t,matrix:r,Node:n}=e,a=z2({subset:t}),i=TG({subset:t,matrix:r});function o(u,l,c){l||(l="keep");var f=St(u,l,c),m=St(u.value,l,c);return l==="all"||m!==null&&m<=f}class s extends n{constructor(l,c,f){if(super(),this.object=l,this.index=f?c:null,this.value=f||c,!yr(l)&&!Ji(l))throw new TypeError('SymbolNode or AccessorNode expected as "object"');if(yr(l)&&l.name==="end")throw new Error('Cannot assign to symbol "end"');if(this.index&&!Zo(this.index))throw new TypeError('IndexNode expected as "index"');if(!Nt(this.value))throw new TypeError('Node expected as "value"')}get name(){return this.index?this.index.isObjectProperty()?this.index.getObjectProperty():"":this.object.name||""}get type(){return tl}get isAssignmentNode(){return!0}_compile(l,c){var f=this.object._compile(l,c),m=this.index?this.index._compile(l,c):null,d=this.value._compile(l,c),p=this.object.name;if(this.index)if(this.index.isObjectProperty()){var h=this.index.getObjectProperty();return function(w,x,v){var N=f(w,x,v),C=d(w,x,v);return Ro(N,h,C),C}}else{if(yr(this.object))return function(w,x,v){var N=f(w,x,v),C=d(w,x,v),A=m(w,x,N);return w.set(p,i(N,A,C)),C};var g=this.object.object._compile(l,c);if(this.object.index.isObjectProperty()){var b=this.object.index.getObjectProperty();return function(w,x,v){var N=g(w,x,v),C=Hr(N,b),A=m(w,x,C),E=d(w,x,v);return Ro(N,b,i(C,A,E)),E}}else{var D=this.object.index._compile(l,c);return function(w,x,v){var N=g(w,x,v),C=D(w,x,N),A=a(N,C),E=m(w,x,A),S=d(w,x,v);return i(N,C,i(A,E,S)),S}}}else{if(!yr(this.object))throw new TypeError("SymbolNode expected as object");return function(w,x,v){var N=d(w,x,v);return w.set(p,N),N}}}forEach(l){l(this.object,"object",this),this.index&&l(this.index,"index",this),l(this.value,"value",this)}map(l){var c=this._ifNode(l(this.object,"object",this)),f=this.index?this._ifNode(l(this.index,"index",this)):null,m=this._ifNode(l(this.value,"value",this));return new s(c,f,m)}clone(){return new s(this.object,this.index,this.value)}_toString(l){var c=this.object.toString(l),f=this.index?this.index.toString(l):"",m=this.value.toString(l);return o(this,l&&l.parenthesis,l&&l.implicit)&&(m="("+m+")"),c+f+" = "+m}toJSON(){return{mathjs:tl,object:this.object,index:this.index,value:this.value}}static fromJSON(l){return new s(l.object,l.index,l.value)}_toHTML(l){var c=this.object.toHTML(l),f=this.index?this.index.toHTML(l):"",m=this.value.toHTML(l);return o(this,l&&l.parenthesis,l&&l.implicit)&&(m='<span class="math-paranthesis math-round-parenthesis">(</span>'+m+'<span class="math-paranthesis math-round-parenthesis">)</span>'),c+f+'<span class="math-operator math-assignment-operator math-variable-assignment-operator math-binary-operator">=</span>'+m}_toTex(l){var c=this.object.toTex(l),f=this.index?this.index.toTex(l):"",m=this.value.toTex(l);return o(this,l&&l.parenthesis,l&&l.implicit)&&(m="\\left(".concat(m,"\\right)")),c+f+"="+m}}return nr(s,"name",tl),s},{isClass:!0,isNode:!0}),rl="BlockNode",kG=["ResultSet","Node"],OG=I(rl,kG,e=>{var{ResultSet:t,Node:r}=e;class n extends r{constructor(i){if(super(),!Array.isArray(i))throw new Error("Array expected");this.blocks=i.map(function(o){var s=o&&o.node,u=o&&o.visible!==void 0?o.visible:!0;if(!Nt(s))throw new TypeError('Property "node" must be a Node');if(typeof u!="boolean")throw new TypeError('Property "visible" must be a boolean');return{node:s,visible:u}})}get type(){return rl}get isBlockNode(){return!0}_compile(i,o){var s=ii(this.blocks,function(u){return{evaluate:u.node._compile(i,o),visible:u.visible}});return function(l,c,f){var m=[];return wx(s,function(p){var h=p.evaluate(l,c,f);p.visible&&m.push(h)}),new t(m)}}forEach(i){for(var o=0;o<this.blocks.length;o++)i(this.blocks[o].node,"blocks["+o+"].node",this)}map(i){for(var o=[],s=0;s<this.blocks.length;s++){var u=this.blocks[s],l=this._ifNode(i(u.node,"blocks["+s+"].node",this));o[s]={node:l,visible:u.visible}}return new n(o)}clone(){var i=this.blocks.map(function(o){return{node:o.node,visible:o.visible}});return new n(i)}_toString(i){return this.blocks.map(function(o){return o.node.toString(i)+(o.visible?"":";")}).join(`
|
|
43
|
-
`)}toJSON(){return{mathjs:rl,blocks:this.blocks}}static fromJSON(i){return new n(i.blocks)}_toHTML(i){return this.blocks.map(function(o){return o.node.toHTML(i)+(o.visible?"":'<span class="math-separator">;</span>')}).join('<span class="math-separator"><br /></span>')}_toTex(i){return this.blocks.map(function(o){return o.node.toTex(i)+(o.visible?"":";")}).join(`\\;\\;
|
|
44
|
-
`)}}return nr(n,"name",rl),n},{isClass:!0,isNode:!0}),nl="ConditionalNode",$G=["Node"],BG=I(nl,$G,e=>{var{Node:t}=e;function r(a){if(typeof a=="number"||typeof a=="boolean"||typeof a=="string")return!!a;if(a){if(Qe(a))return!a.isZero();if(ka(a))return!!(a.re||a.im);if(cn(a))return!!a.value}if(a==null)return!1;throw new TypeError('Unsupported type of condition "'+Tt(a)+'"')}class n extends t{constructor(i,o,s){if(super(),!Nt(i))throw new TypeError("Parameter condition must be a Node");if(!Nt(o))throw new TypeError("Parameter trueExpr must be a Node");if(!Nt(s))throw new TypeError("Parameter falseExpr must be a Node");this.condition=i,this.trueExpr=o,this.falseExpr=s}get type(){return nl}get isConditionalNode(){return!0}_compile(i,o){var s=this.condition._compile(i,o),u=this.trueExpr._compile(i,o),l=this.falseExpr._compile(i,o);return function(f,m,d){return r(s(f,m,d))?u(f,m,d):l(f,m,d)}}forEach(i){i(this.condition,"condition",this),i(this.trueExpr,"trueExpr",this),i(this.falseExpr,"falseExpr",this)}map(i){return new n(this._ifNode(i(this.condition,"condition",this)),this._ifNode(i(this.trueExpr,"trueExpr",this)),this._ifNode(i(this.falseExpr,"falseExpr",this)))}clone(){return new n(this.condition,this.trueExpr,this.falseExpr)}_toString(i){var o=i&&i.parenthesis?i.parenthesis:"keep",s=St(this,o,i&&i.implicit),u=this.condition.toString(i),l=St(this.condition,o,i&&i.implicit);(o==="all"||this.condition.type==="OperatorNode"||l!==null&&l<=s)&&(u="("+u+")");var c=this.trueExpr.toString(i),f=St(this.trueExpr,o,i&&i.implicit);(o==="all"||this.trueExpr.type==="OperatorNode"||f!==null&&f<=s)&&(c="("+c+")");var m=this.falseExpr.toString(i),d=St(this.falseExpr,o,i&&i.implicit);return(o==="all"||this.falseExpr.type==="OperatorNode"||d!==null&&d<=s)&&(m="("+m+")"),u+" ? "+c+" : "+m}toJSON(){return{mathjs:nl,condition:this.condition,trueExpr:this.trueExpr,falseExpr:this.falseExpr}}static fromJSON(i){return new n(i.condition,i.trueExpr,i.falseExpr)}_toHTML(i){var o=i&&i.parenthesis?i.parenthesis:"keep",s=St(this,o,i&&i.implicit),u=this.condition.toHTML(i),l=St(this.condition,o,i&&i.implicit);(o==="all"||this.condition.type==="OperatorNode"||l!==null&&l<=s)&&(u='<span class="math-parenthesis math-round-parenthesis">(</span>'+u+'<span class="math-parenthesis math-round-parenthesis">)</span>');var c=this.trueExpr.toHTML(i),f=St(this.trueExpr,o,i&&i.implicit);(o==="all"||this.trueExpr.type==="OperatorNode"||f!==null&&f<=s)&&(c='<span class="math-parenthesis math-round-parenthesis">(</span>'+c+'<span class="math-parenthesis math-round-parenthesis">)</span>');var m=this.falseExpr.toHTML(i),d=St(this.falseExpr,o,i&&i.implicit);return(o==="all"||this.falseExpr.type==="OperatorNode"||d!==null&&d<=s)&&(m='<span class="math-parenthesis math-round-parenthesis">(</span>'+m+'<span class="math-parenthesis math-round-parenthesis">)</span>'),u+'<span class="math-operator math-conditional-operator">?</span>'+c+'<span class="math-operator math-conditional-operator">:</span>'+m}_toTex(i){return"\\begin{cases} {"+this.trueExpr.toTex(i)+"}, &\\quad{\\text{if }\\;"+this.condition.toTex(i)+"}\\\\{"+this.falseExpr.toTex(i)+"}, &\\quad{\\text{otherwise}}\\end{cases}"}}return nr(n,"name",nl),n},{isClass:!0,isNode:!0}),$f,iy;function _G(){if(iy)return $f;iy=1;var e=Object.assign||function(a){for(var i=1;i<arguments.length;i++){var o=arguments[i];for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(a[s]=o[s])}return a},t={"{":"\\{","}":"\\}","\\":"\\textbackslash{}","#":"\\#",$:"\\$","%":"\\%","&":"\\&","^":"\\textasciicircum{}",_:"\\_","~":"\\textasciitilde{}"},r={"–":"\\--","—":"\\---"," ":"~"," ":"\\qquad{}","\r\n":"\\newline{}","\n":"\\newline{}"},n=function(i,o){return e({},i,o)};return $f=function(a){for(var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=i.preserveFormatting,s=o===void 0?!1:o,u=i.escapeMapFn,l=u===void 0?n:u,c=String(a),f="",m=l(e({},t),s?e({},r):{}),d=Object.keys(m),p=function(){var g=!1;d.forEach(function(b,D){g||c.length>=b.length&&c.slice(0,b.length)===b&&(f+=m[d[D]],c=c.slice(b.length,c.length),g=!0)}),g||(f+=c.slice(0,1),c=c.slice(1,c.length))};c;)p();return f},$f}var IG=_G();const zG=oc.getDefaultExportFromCjs(IG);var Hm={Alpha:"A",alpha:"\\alpha",Beta:"B",beta:"\\beta",Gamma:"\\Gamma",gamma:"\\gamma",Delta:"\\Delta",delta:"\\delta",Epsilon:"E",epsilon:"\\epsilon",varepsilon:"\\varepsilon",Zeta:"Z",zeta:"\\zeta",Eta:"H",eta:"\\eta",Theta:"\\Theta",theta:"\\theta",vartheta:"\\vartheta",Iota:"I",iota:"\\iota",Kappa:"K",kappa:"\\kappa",varkappa:"\\varkappa",Lambda:"\\Lambda",lambda:"\\lambda",Mu:"M",mu:"\\mu",Nu:"N",nu:"\\nu",Xi:"\\Xi",xi:"\\xi",Omicron:"O",omicron:"o",Pi:"\\Pi",pi:"\\pi",varpi:"\\varpi",Rho:"P",rho:"\\rho",varrho:"\\varrho",Sigma:"\\Sigma",sigma:"\\sigma",varsigma:"\\varsigma",Tau:"T",tau:"\\tau",Upsilon:"\\Upsilon",upsilon:"\\upsilon",Phi:"\\Phi",phi:"\\phi",varphi:"\\varphi",Chi:"X",chi:"\\chi",Psi:"\\Psi",psi:"\\psi",Omega:"\\Omega",omega:"\\omega",true:"\\mathrm{True}",false:"\\mathrm{False}",i:"i",inf:"\\infty",Inf:"\\infty",infinity:"\\infty",Infinity:"\\infty",oo:"\\infty",lim:"\\lim",undefined:"\\mathbf{?}"},mt={transpose:"^\\top",ctranspose:"^H",factorial:"!",pow:"^",dotPow:".^\\wedge",unaryPlus:"+",unaryMinus:"-",bitNot:"\\~",not:"\\neg",multiply:"\\cdot",divide:"\\frac",dotMultiply:".\\cdot",dotDivide:".:",mod:"\\mod",add:"+",subtract:"-",to:"\\rightarrow",leftShift:"<<",rightArithShift:">>",rightLogShift:">>>",equal:"=",unequal:"\\neq",smaller:"<",larger:">",smallerEq:"\\leq",largerEq:"\\geq",bitAnd:"\\&",bitXor:"\\underline{|}",bitOr:"|",and:"\\wedge",xor:"\\veebar",or:"\\vee"},oy={abs:{1:"\\left|${args[0]}\\right|"},add:{2:"\\left(${args[0]}".concat(mt.add,"${args[1]}\\right)")},cbrt:{1:"\\sqrt[3]{${args[0]}}"},ceil:{1:"\\left\\lceil${args[0]}\\right\\rceil"},cube:{1:"\\left(${args[0]}\\right)^3"},divide:{2:"\\frac{${args[0]}}{${args[1]}}"},dotDivide:{2:"\\left(${args[0]}".concat(mt.dotDivide,"${args[1]}\\right)")},dotMultiply:{2:"\\left(${args[0]}".concat(mt.dotMultiply,"${args[1]}\\right)")},dotPow:{2:"\\left(${args[0]}".concat(mt.dotPow,"${args[1]}\\right)")},exp:{1:"\\exp\\left(${args[0]}\\right)"},expm1:"\\left(e".concat(mt.pow,"{${args[0]}}-1\\right)"),fix:{1:"\\mathrm{${name}}\\left(${args[0]}\\right)"},floor:{1:"\\left\\lfloor${args[0]}\\right\\rfloor"},fraction:{2:"\\frac{${args[0]}}{${args[1]}}"},gcd:"\\gcd\\left(${args}\\right)",hypot:"\\hypot\\left(${args}\\right)",log:{1:"\\ln\\left(${args[0]}\\right)",2:"\\log_{${args[1]}}\\left(${args[0]}\\right)"},log10:{1:"\\log_{10}\\left(${args[0]}\\right)"},log1p:{1:"\\ln\\left(${args[0]}+1\\right)",2:"\\log_{${args[1]}}\\left(${args[0]}+1\\right)"},log2:"\\log_{2}\\left(${args[0]}\\right)",mod:{2:"\\left(${args[0]}".concat(mt.mod,"${args[1]}\\right)")},multiply:{2:"\\left(${args[0]}".concat(mt.multiply,"${args[1]}\\right)")},norm:{1:"\\left\\|${args[0]}\\right\\|",2:void 0},nthRoot:{2:"\\sqrt[${args[1]}]{${args[0]}}"},nthRoots:{2:"\\{y : y^${args[1]} = {${args[0]}}\\}"},pow:{2:"\\left(${args[0]}\\right)".concat(mt.pow,"{${args[1]}}")},round:{1:"\\left\\lfloor${args[0]}\\right\\rceil",2:void 0},sign:{1:"\\mathrm{${name}}\\left(${args[0]}\\right)"},sqrt:{1:"\\sqrt{${args[0]}}"},square:{1:"\\left(${args[0]}\\right)^2"},subtract:{2:"\\left(${args[0]}".concat(mt.subtract,"${args[1]}\\right)")},unaryMinus:{1:"".concat(mt.unaryMinus,"\\left(${args[0]}\\right)")},unaryPlus:{1:"".concat(mt.unaryPlus,"\\left(${args[0]}\\right)")},bitAnd:{2:"\\left(${args[0]}".concat(mt.bitAnd,"${args[1]}\\right)")},bitNot:{1:mt.bitNot+"\\left(${args[0]}\\right)"},bitOr:{2:"\\left(${args[0]}".concat(mt.bitOr,"${args[1]}\\right)")},bitXor:{2:"\\left(${args[0]}".concat(mt.bitXor,"${args[1]}\\right)")},leftShift:{2:"\\left(${args[0]}".concat(mt.leftShift,"${args[1]}\\right)")},rightArithShift:{2:"\\left(${args[0]}".concat(mt.rightArithShift,"${args[1]}\\right)")},rightLogShift:{2:"\\left(${args[0]}".concat(mt.rightLogShift,"${args[1]}\\right)")},bellNumbers:{1:"\\mathrm{B}_{${args[0]}}"},catalan:{1:"\\mathrm{C}_{${args[0]}}"},stirlingS2:{2:"\\mathrm{S}\\left(${args}\\right)"},arg:{1:"\\arg\\left(${args[0]}\\right)"},conj:{1:"\\left(${args[0]}\\right)^*"},im:{1:"\\Im\\left\\lbrace${args[0]}\\right\\rbrace"},re:{1:"\\Re\\left\\lbrace${args[0]}\\right\\rbrace"},and:{2:"\\left(${args[0]}".concat(mt.and,"${args[1]}\\right)")},not:{1:mt.not+"\\left(${args[0]}\\right)"},or:{2:"\\left(${args[0]}".concat(mt.or,"${args[1]}\\right)")},xor:{2:"\\left(${args[0]}".concat(mt.xor,"${args[1]}\\right)")},cross:{2:"\\left(${args[0]}\\right)\\times\\left(${args[1]}\\right)"},ctranspose:{1:"\\left(${args[0]}\\right)".concat(mt.ctranspose)},det:{1:"\\det\\left(${args[0]}\\right)"},dot:{2:"\\left(${args[0]}\\cdot${args[1]}\\right)"},expm:{1:"\\exp\\left(${args[0]}\\right)"},inv:{1:"\\left(${args[0]}\\right)^{-1}"},pinv:{1:"\\left(${args[0]}\\right)^{+}"},sqrtm:{1:"{${args[0]}}".concat(mt.pow,"{\\frac{1}{2}}")},trace:{1:"\\mathrm{tr}\\left(${args[0]}\\right)"},transpose:{1:"\\left(${args[0]}\\right)".concat(mt.transpose)},combinations:{2:"\\binom{${args[0]}}{${args[1]}}"},combinationsWithRep:{2:"\\left(\\!\\!{\\binom{${args[0]}}{${args[1]}}}\\!\\!\\right)"},factorial:{1:"\\left(${args[0]}\\right)".concat(mt.factorial)},gamma:{1:"\\Gamma\\left(${args[0]}\\right)"},lgamma:{1:"\\ln\\Gamma\\left(${args[0]}\\right)"},equal:{2:"\\left(${args[0]}".concat(mt.equal,"${args[1]}\\right)")},larger:{2:"\\left(${args[0]}".concat(mt.larger,"${args[1]}\\right)")},largerEq:{2:"\\left(${args[0]}".concat(mt.largerEq,"${args[1]}\\right)")},smaller:{2:"\\left(${args[0]}".concat(mt.smaller,"${args[1]}\\right)")},smallerEq:{2:"\\left(${args[0]}".concat(mt.smallerEq,"${args[1]}\\right)")},unequal:{2:"\\left(${args[0]}".concat(mt.unequal,"${args[1]}\\right)")},erf:{1:"erf\\left(${args[0]}\\right)"},max:"\\max\\left(${args}\\right)",min:"\\min\\left(${args}\\right)",variance:"\\mathrm{Var}\\left(${args}\\right)",acos:{1:"\\cos^{-1}\\left(${args[0]}\\right)"},acosh:{1:"\\cosh^{-1}\\left(${args[0]}\\right)"},acot:{1:"\\cot^{-1}\\left(${args[0]}\\right)"},acoth:{1:"\\coth^{-1}\\left(${args[0]}\\right)"},acsc:{1:"\\csc^{-1}\\left(${args[0]}\\right)"},acsch:{1:"\\mathrm{csch}^{-1}\\left(${args[0]}\\right)"},asec:{1:"\\sec^{-1}\\left(${args[0]}\\right)"},asech:{1:"\\mathrm{sech}^{-1}\\left(${args[0]}\\right)"},asin:{1:"\\sin^{-1}\\left(${args[0]}\\right)"},asinh:{1:"\\sinh^{-1}\\left(${args[0]}\\right)"},atan:{1:"\\tan^{-1}\\left(${args[0]}\\right)"},atan2:{2:"\\mathrm{atan2}\\left(${args}\\right)"},atanh:{1:"\\tanh^{-1}\\left(${args[0]}\\right)"},cos:{1:"\\cos\\left(${args[0]}\\right)"},cosh:{1:"\\cosh\\left(${args[0]}\\right)"},cot:{1:"\\cot\\left(${args[0]}\\right)"},coth:{1:"\\coth\\left(${args[0]}\\right)"},csc:{1:"\\csc\\left(${args[0]}\\right)"},csch:{1:"\\mathrm{csch}\\left(${args[0]}\\right)"},sec:{1:"\\sec\\left(${args[0]}\\right)"},sech:{1:"\\mathrm{sech}\\left(${args[0]}\\right)"},sin:{1:"\\sin\\left(${args[0]}\\right)"},sinh:{1:"\\sinh\\left(${args[0]}\\right)"},tan:{1:"\\tan\\left(${args[0]}\\right)"},tanh:{1:"\\tanh\\left(${args[0]}\\right)"},to:{2:"\\left(${args[0]}".concat(mt.to,"${args[1]}\\right)")},numeric:function(t,r){return t.args[0].toTex()},number:{0:"0",1:"\\left(${args[0]}\\right)",2:"\\left(\\left(${args[0]}\\right)${args[1]}\\right)"},string:{0:'\\mathtt{""}',1:"\\mathrm{string}\\left(${args[0]}\\right)"},bignumber:{0:"0",1:"\\left(${args[0]}\\right)"},bigint:{0:"0",1:"\\left(${args[0]}\\right)"},complex:{0:"0",1:"\\left(${args[0]}\\right)",2:"\\left(\\left(${args[0]}\\right)+".concat(Hm.i,"\\cdot\\left(${args[1]}\\right)\\right)")},matrix:{0:"\\begin{bmatrix}\\end{bmatrix}",1:"\\left(${args[0]}\\right)",2:"\\left(${args[0]}\\right)"},sparse:{0:"\\begin{bsparse}\\end{bsparse}",1:"\\left(${args[0]}\\right)"},unit:{1:"\\left(${args[0]}\\right)",2:"\\left(\\left(${args[0]}\\right)${args[1]}\\right)"}},jG="\\mathrm{${name}}\\left(${args}\\right)",sy={deg:"^\\circ"};function Gm(e){return zG(e,{preserveFormatting:!0})}function j2(e,t){return t=typeof t>"u"?!1:t,t?Pe(sy,e)?sy[e]:"\\mathrm{"+Gm(e)+"}":Pe(Hm,e)?Hm[e]:Gm(e)}var al="ConstantNode",qG=["Node"],RG=I(al,qG,e=>{var{Node:t}=e;class r extends t{constructor(a){super(),this.value=a}get type(){return al}get isConstantNode(){return!0}_compile(a,i){var o=this.value;return function(){return o}}forEach(a){}map(a){return this.clone()}clone(){return new r(this.value)}_toString(a){return nt(this.value,a)}_toHTML(a){var i=this._toString(a);switch(Tt(this.value)){case"number":case"bigint":case"BigNumber":case"Fraction":return'<span class="math-number">'+i+"</span>";case"string":return'<span class="math-string">'+i+"</span>";case"boolean":return'<span class="math-boolean">'+i+"</span>";case"null":return'<span class="math-null-symbol">'+i+"</span>";case"undefined":return'<span class="math-undefined">'+i+"</span>";default:return'<span class="math-symbol">'+i+"</span>"}}toJSON(){return{mathjs:al,value:this.value}}static fromJSON(a){return new r(a.value)}_toTex(a){var i=this._toString(a),o=Tt(this.value);switch(o){case"string":return"\\mathtt{"+Gm(i)+"}";case"number":case"BigNumber":{var s=o==="BigNumber"?this.value.isFinite():isFinite(this.value);if(!s)return this.value.valueOf()<0?"-\\infty":"\\infty";var u=i.toLowerCase().indexOf("e");return u!==-1?i.substring(0,u)+"\\cdot10^{"+i.substring(u+1)+"}":i}case"bigint":return i.toString();case"Fraction":return this.value.toLatex();default:return i}}}return nr(r,"name",al),r},{isClass:!0,isNode:!0}),il="FunctionAssignmentNode",LG=["typed","Node"],HG=I(il,LG,e=>{var{typed:t,Node:r}=e;function n(i,o,s){var u=St(i,o,s),l=St(i.expr,o,s);return o==="all"||l!==null&&l<=u}class a extends r{constructor(o,s,u){if(super(),typeof o!="string")throw new TypeError('String expected for parameter "name"');if(!Array.isArray(s))throw new TypeError('Array containing strings or objects expected for parameter "params"');if(!Nt(u))throw new TypeError('Node expected for parameter "expr"');if(I2.has(o))throw new Error('Illegal function name, "'+o+'" is a reserved keyword');var l=new Set;for(var c of s){var f=typeof c=="string"?c:c.name;if(l.has(f))throw new Error('Duplicate parameter name "'.concat(f,'"'));l.add(f)}this.name=o,this.params=s.map(function(m){return m&&m.name||m}),this.types=s.map(function(m){return m&&m.type||"any"}),this.expr=u}get type(){return il}get isFunctionAssignmentNode(){return!0}_compile(o,s){var u=Object.create(s);wx(this.params,function(h){u[h]=!0});var l=this.expr,c=l._compile(o,u),f=this.name,m=this.params,d=i0(this.types,","),p=f+"("+i0(this.params,", ")+")";return function(g,b,D){var y={};y[d]=function(){for(var x=Object.create(b),v=0;v<m.length;v++)x[m[v]]=arguments[v];return c(g,x,D)};var w=t(f,y);return w.syntax=p,w.expr=l.toString(),g.set(f,w),w}}forEach(o){o(this.expr,"expr",this)}map(o){var s=this._ifNode(o(this.expr,"expr",this));return new a(this.name,this.params.slice(0),s)}clone(){return new a(this.name,this.params.slice(0),this.expr)}_toString(o){var s=o&&o.parenthesis?o.parenthesis:"keep",u=this.expr.toString(o);return n(this,s,o&&o.implicit)&&(u="("+u+")"),this.name+"("+this.params.join(", ")+") = "+u}toJSON(){var o=this.types;return{mathjs:il,name:this.name,params:this.params.map(function(s,u){return{name:s,type:o[u]}}),expr:this.expr}}static fromJSON(o){return new a(o.name,o.params,o.expr)}_toHTML(o){for(var s=o&&o.parenthesis?o.parenthesis:"keep",u=[],l=0;l<this.params.length;l++)u.push('<span class="math-symbol math-parameter">'+Tn(this.params[l])+"</span>");var c=this.expr.toHTML(o);return n(this,s,o&&o.implicit)&&(c='<span class="math-parenthesis math-round-parenthesis">(</span>'+c+'<span class="math-parenthesis math-round-parenthesis">)</span>'),'<span class="math-function">'+Tn(this.name)+'</span><span class="math-parenthesis math-round-parenthesis">(</span>'+u.join('<span class="math-separator">,</span>')+'<span class="math-parenthesis math-round-parenthesis">)</span><span class="math-operator math-assignment-operator math-variable-assignment-operator math-binary-operator">=</span>'+c}_toTex(o){var s=o&&o.parenthesis?o.parenthesis:"keep",u=this.expr.toTex(o);return n(this,s,o&&o.implicit)&&(u="\\left(".concat(u,"\\right)")),"\\mathrm{"+this.name+"}\\left("+this.params.map(j2).join(",")+"\\right)="+u}}return nr(a,"name",il),a},{isClass:!0,isNode:!0}),ol="IndexNode",GG=["Node","size"],VG=I(ol,GG,e=>{var{Node:t,size:r}=e;class n extends t{constructor(i,o){if(super(),this.dimensions=i,this.dotNotation=o||!1,!Array.isArray(i)||!i.every(Nt))throw new TypeError('Array containing Nodes expected for parameter "dimensions"');if(this.dotNotation&&!this.isObjectProperty())throw new Error("dotNotation only applicable for object properties")}get type(){return ol}get isIndexNode(){return!0}_compile(i,o){var s=ii(this.dimensions,function(l,c){var f=l.filter(p=>p.isSymbolNode&&p.name==="end").length>0;if(f){var m=Object.create(o);m.end=!0;var d=l._compile(i,m);return function(h,g,b){if(!Re(b)&&!Et(b)&&!Or(b))throw new TypeError('Cannot resolve "end": context must be a Matrix, Array, or string but is '+Tt(b));var D=r(b).valueOf(),y=Object.create(g);return y.end=D[c],d(h,y,b)}}else return l._compile(i,o)}),u=Hr(i,"index");return function(c,f,m){var d=ii(s,function(p){return p(c,f,m)});return u(...d)}}forEach(i){for(var o=0;o<this.dimensions.length;o++)i(this.dimensions[o],"dimensions["+o+"]",this)}map(i){for(var o=[],s=0;s<this.dimensions.length;s++)o[s]=this._ifNode(i(this.dimensions[s],"dimensions["+s+"]",this));return new n(o,this.dotNotation)}clone(){return new n(this.dimensions.slice(0),this.dotNotation)}isObjectProperty(){return this.dimensions.length===1&&ct(this.dimensions[0])&&typeof this.dimensions[0].value=="string"}getObjectProperty(){return this.isObjectProperty()?this.dimensions[0].value:null}_toString(i){return this.dotNotation?"."+this.getObjectProperty():"["+this.dimensions.join(", ")+"]"}toJSON(){return{mathjs:ol,dimensions:this.dimensions,dotNotation:this.dotNotation}}static fromJSON(i){return new n(i.dimensions,i.dotNotation)}_toHTML(i){for(var o=[],s=0;s<this.dimensions.length;s++)o[s]=this.dimensions[s].toHTML();return this.dotNotation?'<span class="math-operator math-accessor-operator">.</span><span class="math-symbol math-property">'+Tn(this.getObjectProperty())+"</span>":'<span class="math-parenthesis math-square-parenthesis">[</span>'+o.join('<span class="math-separator">,</span>')+'<span class="math-parenthesis math-square-parenthesis">]</span>'}_toTex(i){var o=this.dimensions.map(function(s){return s.toTex(i)});return this.dotNotation?"."+this.getObjectProperty():"_{"+o.join(",")+"}"}}return nr(n,"name",ol),n},{isClass:!0,isNode:!0}),sl="ObjectNode",UG=["Node"],WG=I(sl,UG,e=>{var{Node:t}=e;class r extends t{constructor(a){if(super(),this.properties=a||{},a&&(typeof a!="object"||!Object.keys(a).every(function(i){return Nt(a[i])})))throw new TypeError("Object containing Nodes expected")}get type(){return sl}get isObjectNode(){return!0}_compile(a,i){var o={};for(var s in this.properties)if(Pe(this.properties,s)){var u=$o(s),l=JSON.parse(u),c=Hr(this.properties,s);o[l]=c._compile(a,i)}return function(m,d,p){var h={};for(var g in o)Pe(o,g)&&(h[g]=o[g](m,d,p));return h}}forEach(a){for(var i in this.properties)Pe(this.properties,i)&&a(this.properties[i],"properties["+$o(i)+"]",this)}map(a){var i={};for(var o in this.properties)Pe(this.properties,o)&&(i[o]=this._ifNode(a(this.properties[o],"properties["+$o(o)+"]",this)));return new r(i)}clone(){var a={};for(var i in this.properties)Pe(this.properties,i)&&(a[i]=this.properties[i]);return new r(a)}_toString(a){var i=[];for(var o in this.properties)Pe(this.properties,o)&&i.push($o(o)+": "+this.properties[o].toString(a));return"{"+i.join(", ")+"}"}toJSON(){return{mathjs:sl,properties:this.properties}}static fromJSON(a){return new r(a.properties)}_toHTML(a){var i=[];for(var o in this.properties)Pe(this.properties,o)&&i.push('<span class="math-symbol math-property">'+Tn(o)+'</span><span class="math-operator math-assignment-operator math-property-assignment-operator math-binary-operator">:</span>'+this.properties[o].toHTML(a));return'<span class="math-parenthesis math-curly-parenthesis">{</span>'+i.join('<span class="math-separator">,</span>')+'<span class="math-parenthesis math-curly-parenthesis">}</span>'}_toTex(a){var i=[];for(var o in this.properties)Pe(this.properties,o)&&i.push("\\mathbf{"+o+":} & "+this.properties[o].toTex(a)+"\\\\");var s="\\left\\{\\begin{array}{ll}"+i.join(`
|
|
45
|
-
`)+"\\end{array}\\right\\}";return s}}return nr(r,"name",sl),r},{isClass:!0,isNode:!0});function As(e,t){return new Vw(e,new mc(t),new Set(Object.keys(t)))}var ul="OperatorNode",JG=["Node"],KG=I(ul,JG,e=>{var{Node:t}=e;function r(i,o){var s=i;if(o==="auto")for(;Ia(s);)s=s.content;return ct(s)?!0:Yt(s)?r(s.args[0],o):!1}function n(i,o,s,u,l){var c=St(i,o,s),f=xs(i,o);if(o==="all"||u.length>2&&i.getIdentifier()!=="OperatorNode:add"&&i.getIdentifier()!=="OperatorNode:multiply")return u.map(function(E){switch(E.getContent().type){case"ArrayNode":case"ConstantNode":case"SymbolNode":case"ParenthesisNode":return!1;default:return!0}});var m;switch(u.length){case 0:m=[];break;case 1:{var d=St(u[0],o,s,i);if(l&&d!==null){var p,h;if(o==="keep"?(p=u[0].getIdentifier(),h=i.getIdentifier()):(p=u[0].getContent().getIdentifier(),h=i.getContent().getIdentifier()),Hn[c][h].latexLeftParens===!1){m=[!1];break}if(Hn[d][p].latexParens===!1){m=[!1];break}}if(d===null){m=[!1];break}if(d<=c){m=[!0];break}m=[!1]}break;case 2:{var g,b=St(u[0],o,s,i),D=Of(i,u[0],o);b===null?g=!1:b===c&&f==="right"&&!D||b<c?g=!0:g=!1;var y,w=St(u[1],o,s,i),x=Of(i,u[1],o);if(w===null?y=!1:w===c&&f==="left"&&!x||w<c?y=!0:y=!1,l){var v,N,C;o==="keep"?(v=i.getIdentifier(),N=i.args[0].getIdentifier(),C=i.args[1].getIdentifier()):(v=i.getContent().getIdentifier(),N=i.args[0].getContent().getIdentifier(),C=i.args[1].getContent().getIdentifier()),b!==null&&(Hn[c][v].latexLeftParens===!1&&(g=!1),Hn[b][N].latexParens===!1&&(g=!1)),w!==null&&(Hn[c][v].latexRightParens===!1&&(y=!1),Hn[w][C].latexParens===!1&&(y=!1))}m=[g,y]}break;default:(i.getIdentifier()==="OperatorNode:add"||i.getIdentifier()==="OperatorNode:multiply")&&(m=u.map(function(E){var S=St(E,o,s,i),F=Of(i,E,o),k=xs(E,o);return S===null?!1:c===S&&f===k&&!F?!0:S<c}));break}if(u.length>=2&&i.getIdentifier()==="OperatorNode:multiply"&&i.implicit&&o!=="all"&&s==="hide")for(var A=1;A<m.length;++A)r(u[A],o)&&!m[A-1]&&(o!=="keep"||!Ia(u[A-1]))&&(m[A]=!0);return m}class a extends t{constructor(o,s,u,l,c){if(super(),typeof o!="string")throw new TypeError('string expected for parameter "op"');if(typeof s!="string")throw new TypeError('string expected for parameter "fn"');if(!Array.isArray(u)||!u.every(Nt))throw new TypeError('Array containing Nodes expected for parameter "args"');this.implicit=l===!0,this.isPercentage=c===!0,this.op=o,this.fn=s,this.args=u||[]}get type(){return ul}get isOperatorNode(){return!0}_compile(o,s){if(typeof this.fn!="string"||!dd(o,this.fn))throw o[this.fn]?new Error('No access to function "'+this.fn+'"'):new Error("Function "+this.fn+' missing in provided namespace "math"');var u=Hr(o,this.fn),l=ii(this.args,function(p){return p._compile(o,s)});if(typeof u=="function"&&u.rawArgs===!0){var c=this.args;return function(h,g,b){return u(c,o,As(h,g))}}else if(l.length===1){var f=l[0];return function(h,g,b){return u(f(h,g,b))}}else if(l.length===2){var m=l[0],d=l[1];return function(h,g,b){return u(m(h,g,b),d(h,g,b))}}else return function(h,g,b){return u.apply(null,ii(l,function(D){return D(h,g,b)}))}}forEach(o){for(var s=0;s<this.args.length;s++)o(this.args[s],"args["+s+"]",this)}map(o){for(var s=[],u=0;u<this.args.length;u++)s[u]=this._ifNode(o(this.args[u],"args["+u+"]",this));return new a(this.op,this.fn,s,this.implicit,this.isPercentage)}clone(){return new a(this.op,this.fn,this.args.slice(0),this.implicit,this.isPercentage)}isUnary(){return this.args.length===1}isBinary(){return this.args.length===2}_toString(o){var s=o&&o.parenthesis?o.parenthesis:"keep",u=o&&o.implicit?o.implicit:"hide",l=this.args,c=n(this,s,u,l,!1);if(l.length===1){var f=xs(this,s),m=l[0].toString(o);c[0]&&(m="("+m+")");var d=/[a-zA-Z]+/.test(this.op);return f==="right"?this.op+(d?" ":"")+m:f==="left"?m+(d?" ":"")+this.op:m+this.op}else if(l.length===2){var p=l[0].toString(o),h=l[1].toString(o);return c[0]&&(p="("+p+")"),c[1]&&(h="("+h+")"),this.implicit&&this.getIdentifier()==="OperatorNode:multiply"&&u==="hide"?p+" "+h:p+" "+this.op+" "+h}else if(l.length>2&&(this.getIdentifier()==="OperatorNode:add"||this.getIdentifier()==="OperatorNode:multiply")){var g=l.map(function(b,D){return b=b.toString(o),c[D]&&(b="("+b+")"),b});return this.implicit&&this.getIdentifier()==="OperatorNode:multiply"&&u==="hide"?g.join(" "):g.join(" "+this.op+" ")}else return this.fn+"("+this.args.join(", ")+")"}toJSON(){return{mathjs:ul,op:this.op,fn:this.fn,args:this.args,implicit:this.implicit,isPercentage:this.isPercentage}}static fromJSON(o){return new a(o.op,o.fn,o.args,o.implicit,o.isPercentage)}_toHTML(o){var s=o&&o.parenthesis?o.parenthesis:"keep",u=o&&o.implicit?o.implicit:"hide",l=this.args,c=n(this,s,u,l,!1);if(l.length===1){var f=xs(this,s),m=l[0].toHTML(o);return c[0]&&(m='<span class="math-parenthesis math-round-parenthesis">(</span>'+m+'<span class="math-parenthesis math-round-parenthesis">)</span>'),f==="right"?'<span class="math-operator math-unary-operator math-lefthand-unary-operator">'+Tn(this.op)+"</span>"+m:m+'<span class="math-operator math-unary-operator math-righthand-unary-operator">'+Tn(this.op)+"</span>"}else if(l.length===2){var d=l[0].toHTML(o),p=l[1].toHTML(o);return c[0]&&(d='<span class="math-parenthesis math-round-parenthesis">(</span>'+d+'<span class="math-parenthesis math-round-parenthesis">)</span>'),c[1]&&(p='<span class="math-parenthesis math-round-parenthesis">(</span>'+p+'<span class="math-parenthesis math-round-parenthesis">)</span>'),this.implicit&&this.getIdentifier()==="OperatorNode:multiply"&&u==="hide"?d+'<span class="math-operator math-binary-operator math-implicit-binary-operator"></span>'+p:d+'<span class="math-operator math-binary-operator math-explicit-binary-operator">'+Tn(this.op)+"</span>"+p}else{var h=l.map(function(g,b){return g=g.toHTML(o),c[b]&&(g='<span class="math-parenthesis math-round-parenthesis">(</span>'+g+'<span class="math-parenthesis math-round-parenthesis">)</span>'),g});return l.length>2&&(this.getIdentifier()==="OperatorNode:add"||this.getIdentifier()==="OperatorNode:multiply")?this.implicit&&this.getIdentifier()==="OperatorNode:multiply"&&u==="hide"?h.join('<span class="math-operator math-binary-operator math-implicit-binary-operator"></span>'):h.join('<span class="math-operator math-binary-operator math-explicit-binary-operator">'+Tn(this.op)+"</span>"):'<span class="math-function">'+Tn(this.fn)+'</span><span class="math-paranthesis math-round-parenthesis">(</span>'+h.join('<span class="math-separator">,</span>')+'<span class="math-paranthesis math-round-parenthesis">)</span>'}}_toTex(o){var s=o&&o.parenthesis?o.parenthesis:"keep",u=o&&o.implicit?o.implicit:"hide",l=this.args,c=n(this,s,u,l,!0),f=mt[this.fn];if(f=typeof f>"u"?this.op:f,l.length===1){var m=xs(this,s),d=l[0].toTex(o);return c[0]&&(d="\\left(".concat(d,"\\right)")),m==="right"?f+d:d+f}else if(l.length===2){var p=l[0],h=p.toTex(o);c[0]&&(h="\\left(".concat(h,"\\right)"));var g=l[1],b=g.toTex(o);c[1]&&(b="\\left(".concat(b,"\\right)"));var D;switch(s==="keep"?D=p.getIdentifier():D=p.getContent().getIdentifier(),this.getIdentifier()){case"OperatorNode:divide":return f+"{"+h+"}{"+b+"}";case"OperatorNode:pow":switch(h="{"+h+"}",b="{"+b+"}",D){case"ConditionalNode":case"OperatorNode:divide":h="\\left(".concat(h,"\\right)")}break;case"OperatorNode:multiply":if(this.implicit&&u==="hide")return h+"~"+b}return h+f+b}else if(l.length>2&&(this.getIdentifier()==="OperatorNode:add"||this.getIdentifier()==="OperatorNode:multiply")){var y=l.map(function(w,x){return w=w.toTex(o),c[x]&&(w="\\left(".concat(w,"\\right)")),w});return this.getIdentifier()==="OperatorNode:multiply"&&this.implicit&&u==="hide"?y.join("~"):y.join(f)}else return"\\mathrm{"+this.fn+"}\\left("+l.map(function(w){return w.toTex(o)}).join(",")+"\\right)"}getIdentifier(){return this.type+":"+this.fn}}return nr(a,"name",ul),a},{isClass:!0,isNode:!0}),ll="ParenthesisNode",YG=["Node"],ZG=I(ll,YG,e=>{var{Node:t}=e;class r extends t{constructor(a){if(super(),!Nt(a))throw new TypeError('Node expected for parameter "content"');this.content=a}get type(){return ll}get isParenthesisNode(){return!0}_compile(a,i){return this.content._compile(a,i)}getContent(){return this.content.getContent()}forEach(a){a(this.content,"content",this)}map(a){var i=a(this.content,"content",this);return new r(i)}clone(){return new r(this.content)}_toString(a){return!a||a&&!a.parenthesis||a&&a.parenthesis==="keep"?"("+this.content.toString(a)+")":this.content.toString(a)}toJSON(){return{mathjs:ll,content:this.content}}static fromJSON(a){return new r(a.content)}_toHTML(a){return!a||a&&!a.parenthesis||a&&a.parenthesis==="keep"?'<span class="math-parenthesis math-round-parenthesis">(</span>'+this.content.toHTML(a)+'<span class="math-parenthesis math-round-parenthesis">)</span>':this.content.toHTML(a)}_toTex(a){return!a||a&&!a.parenthesis||a&&a.parenthesis==="keep"?"\\left(".concat(this.content.toTex(a),"\\right)"):this.content.toTex(a)}}return nr(r,"name",ll),r},{isClass:!0,isNode:!0}),cl="RangeNode",QG=["Node"],XG=I(cl,QG,e=>{var{Node:t}=e;function r(a,i,o){var s=St(a,i,o),u={},l=St(a.start,i,o);if(u.start=l!==null&&l<=s||i==="all",a.step){var c=St(a.step,i,o);u.step=c!==null&&c<=s||i==="all"}var f=St(a.end,i,o);return u.end=f!==null&&f<=s||i==="all",u}class n extends t{constructor(i,o,s){if(super(),!Nt(i))throw new TypeError("Node expected");if(!Nt(o))throw new TypeError("Node expected");if(s&&!Nt(s))throw new TypeError("Node expected");if(arguments.length>3)throw new Error("Too many arguments");this.start=i,this.end=o,this.step=s||null}get type(){return cl}get isRangeNode(){return!0}needsEnd(){var i=this.filter(function(o){return yr(o)&&o.name==="end"});return i.length>0}_compile(i,o){var s=i.range,u=this.start._compile(i,o),l=this.end._compile(i,o);if(this.step){var c=this.step._compile(i,o);return function(m,d,p){return s(u(m,d,p),l(m,d,p),c(m,d,p))}}else return function(m,d,p){return s(u(m,d,p),l(m,d,p))}}forEach(i){i(this.start,"start",this),i(this.end,"end",this),this.step&&i(this.step,"step",this)}map(i){return new n(this._ifNode(i(this.start,"start",this)),this._ifNode(i(this.end,"end",this)),this.step&&this._ifNode(i(this.step,"step",this)))}clone(){return new n(this.start,this.end,this.step&&this.step)}_toString(i){var o=i&&i.parenthesis?i.parenthesis:"keep",s=r(this,o,i&&i.implicit),u,l=this.start.toString(i);if(s.start&&(l="("+l+")"),u=l,this.step){var c=this.step.toString(i);s.step&&(c="("+c+")"),u+=":"+c}var f=this.end.toString(i);return s.end&&(f="("+f+")"),u+=":"+f,u}toJSON(){return{mathjs:cl,start:this.start,end:this.end,step:this.step}}static fromJSON(i){return new n(i.start,i.end,i.step)}_toHTML(i){var o=i&&i.parenthesis?i.parenthesis:"keep",s=r(this,o,i&&i.implicit),u,l=this.start.toHTML(i);if(s.start&&(l='<span class="math-parenthesis math-round-parenthesis">(</span>'+l+'<span class="math-parenthesis math-round-parenthesis">)</span>'),u=l,this.step){var c=this.step.toHTML(i);s.step&&(c='<span class="math-parenthesis math-round-parenthesis">(</span>'+c+'<span class="math-parenthesis math-round-parenthesis">)</span>'),u+='<span class="math-operator math-range-operator">:</span>'+c}var f=this.end.toHTML(i);return s.end&&(f='<span class="math-parenthesis math-round-parenthesis">(</span>'+f+'<span class="math-parenthesis math-round-parenthesis">)</span>'),u+='<span class="math-operator math-range-operator">:</span>'+f,u}_toTex(i){var o=i&&i.parenthesis?i.parenthesis:"keep",s=r(this,o,i&&i.implicit),u=this.start.toTex(i);if(s.start&&(u="\\left(".concat(u,"\\right)")),this.step){var l=this.step.toTex(i);s.step&&(l="\\left(".concat(l,"\\right)")),u+=":"+l}var c=this.end.toTex(i);return s.end&&(c="\\left(".concat(c,"\\right)")),u+=":"+c,u}}return nr(n,"name",cl),n},{isClass:!0,isNode:!0}),fl="RelationalNode",eV=["Node"],tV=I(fl,eV,e=>{var{Node:t}=e,r={equal:"==",unequal:"!=",smaller:"<",larger:">",smallerEq:"<=",largerEq:">="};class n extends t{constructor(i,o){if(super(),!Array.isArray(i))throw new TypeError("Parameter conditionals must be an array");if(!Array.isArray(o))throw new TypeError("Parameter params must be an array");if(i.length!==o.length-1)throw new TypeError("Parameter params must contain exactly one more element than parameter conditionals");this.conditionals=i,this.params=o}get type(){return fl}get isRelationalNode(){return!0}_compile(i,o){var s=this,u=this.params.map(l=>l._compile(i,o));return function(c,f,m){for(var d,p=u[0](c,f,m),h=0;h<s.conditionals.length;h++){d=p,p=u[h+1](c,f,m);var g=Hr(i,s.conditionals[h]);if(!g(d,p))return!1}return!0}}forEach(i){this.params.forEach((o,s)=>i(o,"params["+s+"]",this),this)}map(i){return new n(this.conditionals.slice(),this.params.map((o,s)=>this._ifNode(i(o,"params["+s+"]",this)),this))}clone(){return new n(this.conditionals,this.params)}_toString(i){for(var o=i&&i.parenthesis?i.parenthesis:"keep",s=St(this,o,i&&i.implicit),u=this.params.map(function(f,m){var d=St(f,o,i&&i.implicit);return o==="all"||d!==null&&d<=s?"("+f.toString(i)+")":f.toString(i)}),l=u[0],c=0;c<this.conditionals.length;c++)l+=" "+r[this.conditionals[c]],l+=" "+u[c+1];return l}toJSON(){return{mathjs:fl,conditionals:this.conditionals,params:this.params}}static fromJSON(i){return new n(i.conditionals,i.params)}_toHTML(i){for(var o=i&&i.parenthesis?i.parenthesis:"keep",s=St(this,o,i&&i.implicit),u=this.params.map(function(f,m){var d=St(f,o,i&&i.implicit);return o==="all"||d!==null&&d<=s?'<span class="math-parenthesis math-round-parenthesis">(</span>'+f.toHTML(i)+'<span class="math-parenthesis math-round-parenthesis">)</span>':f.toHTML(i)}),l=u[0],c=0;c<this.conditionals.length;c++)l+='<span class="math-operator math-binary-operator math-explicit-binary-operator">'+Tn(r[this.conditionals[c]])+"</span>"+u[c+1];return l}_toTex(i){for(var o=i&&i.parenthesis?i.parenthesis:"keep",s=St(this,o,i&&i.implicit),u=this.params.map(function(f,m){var d=St(f,o,i&&i.implicit);return o==="all"||d!==null&&d<=s?"\\left("+f.toTex(i)+"\right)":f.toTex(i)}),l=u[0],c=0;c<this.conditionals.length;c++)l+=mt[this.conditionals[c]]+u[c+1];return l}}return nr(n,"name",fl),n},{isClass:!0,isNode:!0}),rV="SymbolNode",nV=["math","?Unit","Node"],aV=I(rV,nV,e=>{var{math:t,Unit:r,Node:n}=e;function a(o){return r?r.isValuelessUnit(o):!1}class i extends n{constructor(s){if(super(),typeof s!="string")throw new TypeError('String expected for parameter "name"');this.name=s}get type(){return"SymbolNode"}get isSymbolNode(){return!0}_compile(s,u){var l=this.name;if(u[l]===!0)return function(f,m,d){return Hr(m,l)};if(l in s)return function(f,m,d){return f.has(l)?f.get(l):Hr(s,l)};var c=a(l);return function(f,m,d){return f.has(l)?f.get(l):c?new r(null,l):i.onUndefinedSymbol(l)}}forEach(s){}map(s){return this.clone()}static onUndefinedSymbol(s){throw new Error("Undefined symbol "+s)}clone(){return new i(this.name)}_toString(s){return this.name}_toHTML(s){var u=Tn(this.name);return u==="true"||u==="false"?'<span class="math-symbol math-boolean">'+u+"</span>":u==="i"?'<span class="math-symbol math-imaginary-symbol">'+u+"</span>":u==="Infinity"?'<span class="math-symbol math-infinity-symbol">'+u+"</span>":u==="NaN"?'<span class="math-symbol math-nan-symbol">'+u+"</span>":u==="null"?'<span class="math-symbol math-null-symbol">'+u+"</span>":u==="undefined"?'<span class="math-symbol math-undefined-symbol">'+u+"</span>":'<span class="math-symbol">'+u+"</span>"}toJSON(){return{mathjs:"SymbolNode",name:this.name}}static fromJSON(s){return new i(s.name)}_toTex(s){var u=!1;typeof t[this.name]>"u"&&a(this.name)&&(u=!0);var l=j2(this.name,u);return l[0]==="\\"?l:" "+l}}return i},{isClass:!0,isNode:!0}),ml="FunctionNode",iV=["math","Node","SymbolNode"],oV=I(ml,iV,e=>{var t,{math:r,Node:n,SymbolNode:a}=e,i=u=>nt(u,{truncate:78});function o(u,l,c){for(var f="",m=/\$(?:\{([a-z_][a-z_0-9]*)(?:\[([0-9]+)\])?\}|\$)/gi,d=0,p;(p=m.exec(u))!==null;)if(f+=u.substring(d,p.index),d=p.index,p[0]==="$$")f+="$",d++;else{d+=p[0].length;var h=l[p[1]];if(!h)throw new ReferenceError("Template: Property "+p[1]+" does not exist.");if(p[2]===void 0)switch(typeof h){case"string":f+=h;break;case"object":if(Nt(h))f+=h.toTex(c);else if(Array.isArray(h))f+=h.map(function(g,b){if(Nt(g))return g.toTex(c);throw new TypeError("Template: "+p[1]+"["+b+"] is not a Node.")}).join(",");else throw new TypeError("Template: "+p[1]+" has to be a Node, String or array of Nodes");break;default:throw new TypeError("Template: "+p[1]+" has to be a Node, String or array of Nodes")}else if(Nt(h[p[2]]&&h[p[2]]))f+=h[p[2]].toTex(c);else throw new TypeError("Template: "+p[1]+"["+p[2]+"] is not a Node.")}return f+=u.slice(d),f}class s extends n{constructor(l,c){if(super(),typeof l=="string"&&(l=new a(l)),!Nt(l))throw new TypeError('Node expected as parameter "fn"');if(!Array.isArray(c)||!c.every(Nt))throw new TypeError('Array containing Nodes expected for parameter "args"');this.fn=l,this.args=c||[]}get name(){return this.fn.name||""}get type(){return ml}get isFunctionNode(){return!0}_compile(l,c){var f=this.args.map(C=>C._compile(l,c));if(yr(this.fn)){var m=this.fn.name;if(c[m]){var b=this.args;return function(A,E,S){var F=Hr(E,m);if(typeof F!="function")throw new TypeError("Argument '".concat(m,"' was not a function; received: ").concat(i(F)));if(F.rawArgs)return F(b,l,As(A,E));var k=f.map(B=>B(A,E,S));return F.apply(F,k)}}else{var d=m in l?Hr(l,m):void 0,p=typeof d=="function"&&d.rawArgs===!0,h=C=>{var A;if(C.has(m))A=C.get(m);else if(m in l)A=Hr(l,m);else return s.onUndefinedFunction(m);if(typeof A=="function")return A;throw new TypeError("'".concat(m,`' is not a function; its value is:
|
|
46
|
-
`).concat(i(A)))};if(p){var g=this.args;return function(A,E,S){var F=h(A);if(F.rawArgs===!0)return F(g,l,As(A,E));var k=f.map(B=>B(A,E,S));return F(...k)}}else switch(f.length){case 0:return function(A,E,S){var F=h(A);return F()};case 1:return function(A,E,S){var F=h(A),k=f[0];return F(k(A,E,S))};case 2:return function(A,E,S){var F=h(A),k=f[0],B=f[1];return F(k(A,E,S),B(A,E,S))};default:return function(A,E,S){var F=h(A),k=f.map(B=>B(A,E,S));return F(...k)}}}}else if(Ji(this.fn)&&Zo(this.fn.index)&&this.fn.index.isObjectProperty()){var D=this.fn.object._compile(l,c),y=this.fn.index.getObjectProperty(),w=this.args;return function(A,E,S){var F=D(A,E,S),k=k6(F,y);if(k!=null&&k.rawArgs)return k(w,l,As(A,E));var B=f.map($=>$(A,E,S));return k.apply(F,B)}}else{var x=this.fn.toString(),v=this.fn._compile(l,c),N=this.args;return function(A,E,S){var F=v(A,E,S);if(typeof F!="function")throw new TypeError("Expression '".concat(x,"' did not evaluate to a function; value is:")+`
|
|
47
|
-
`.concat(i(F)));if(F.rawArgs)return F(N,l,As(A,E));var k=f.map(B=>B(A,E,S));return F.apply(F,k)}}}forEach(l){l(this.fn,"fn",this);for(var c=0;c<this.args.length;c++)l(this.args[c],"args["+c+"]",this)}map(l){for(var c=this._ifNode(l(this.fn,"fn",this)),f=[],m=0;m<this.args.length;m++)f[m]=this._ifNode(l(this.args[m],"args["+m+"]",this));return new s(c,f)}clone(){return new s(this.fn,this.args.slice(0))}toString(l){var c,f=this.fn.toString(l);return l&&typeof l.handler=="object"&&Pe(l.handler,f)&&(c=l.handler[f](this,l)),typeof c<"u"?c:super.toString(l)}_toString(l){var c=this.args.map(function(m){return m.toString(l)}),f=Qs(this.fn)?"("+this.fn.toString(l)+")":this.fn.toString(l);return f+"("+c.join(", ")+")"}toJSON(){return{mathjs:ml,fn:this.fn,args:this.args}}_toHTML(l){var c=this.args.map(function(f){return f.toHTML(l)});return'<span class="math-function">'+Tn(this.fn)+'</span><span class="math-paranthesis math-round-parenthesis">(</span>'+c.join('<span class="math-separator">,</span>')+'<span class="math-paranthesis math-round-parenthesis">)</span>'}toTex(l){var c;return l&&typeof l.handler=="object"&&Pe(l.handler,this.name)&&(c=l.handler[this.name](this,l)),typeof c<"u"?c:super.toTex(l)}_toTex(l){var c=this.args.map(function(d){return d.toTex(l)}),f;oy[this.name]&&(f=oy[this.name]),r[this.name]&&(typeof r[this.name].toTex=="function"||typeof r[this.name].toTex=="object"||typeof r[this.name].toTex=="string")&&(f=r[this.name].toTex);var m;switch(typeof f){case"function":m=f(this,l);break;case"string":m=o(f,this,l);break;case"object":switch(typeof f[c.length]){case"function":m=f[c.length](this,l);break;case"string":m=o(f[c.length],this,l);break}}return typeof m<"u"?m:o(jG,this,l)}getIdentifier(){return this.type+":"+this.name}}return t=s,nr(s,"name",ml),nr(s,"onUndefinedFunction",function(u){throw new Error("Undefined function "+u)}),nr(s,"fromJSON",function(u){return new t(u.fn,u.args)}),s},{isClass:!0,isNode:!0}),uy="parse",sV=["typed","numeric","config","AccessorNode","ArrayNode","AssignmentNode","BlockNode","ConditionalNode","ConstantNode","FunctionAssignmentNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","ParenthesisNode","RangeNode","RelationalNode","SymbolNode"],uV=I(uy,sV,e=>{var{typed:t,numeric:r,config:n,AccessorNode:a,ArrayNode:i,AssignmentNode:o,BlockNode:s,ConditionalNode:u,ConstantNode:l,FunctionAssignmentNode:c,FunctionNode:f,IndexNode:m,ObjectNode:d,OperatorNode:p,ParenthesisNode:h,RangeNode:g,RelationalNode:b,SymbolNode:D}=e,y=t(uy,{string:function(W){return te(W,{})},"Array | Matrix":function(W){return w(W,{})},"string, Object":function(W,oe){var he=oe.nodes!==void 0?oe.nodes:{};return te(W,he)},"Array | Matrix, Object":w});function w(T){var W=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},oe=W.nodes!==void 0?W.nodes:{};return Xe(T,function(he){if(typeof he!="string")throw new TypeError("String expected");return te(he,oe)})}var x={NULL:0,DELIMITER:1,NUMBER:2,SYMBOL:3,UNKNOWN:4},v={",":!0,"(":!0,")":!0,"[":!0,"]":!0,"{":!0,"}":!0,'"':!0,"'":!0,";":!0,"+":!0,"-":!0,"*":!0,".*":!0,"/":!0,"./":!0,"%":!0,"^":!0,".^":!0,"~":!0,"!":!0,"&":!0,"|":!0,"^|":!0,"=":!0,":":!0,"?":!0,"==":!0,"!=":!0,"<":!0,">":!0,"<=":!0,">=":!0,"<<":!0,">>":!0,">>>":!0},N={mod:!0,to:!0,in:!0,and:!0,xor:!0,or:!0,not:!0},C={true:!0,false:!1,null:null,undefined:void 0},A=["NaN","Infinity"],E={'"':'"',"'":"'","\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
48
|
-
`,r:"\r",t:" "};function S(){return{extraNodes:{},expression:"",comment:"",index:0,token:"",tokenType:x.NULL,nestingLevel:0,conditionalLevel:null}}function F(T,W){return T.expression.substr(T.index,W)}function k(T){return F(T,1)}function B(T){T.index++}function $(T){return T.expression.charAt(T.index-1)}function M(T){return T.expression.charAt(T.index+1)}function z(T){for(T.tokenType=x.NULL,T.token="",T.comment="";;){if(k(T)==="#")for(;k(T)!==`
|
|
49
|
-
`&&k(T)!=="";)T.comment+=k(T),B(T);if(y.isWhitespace(k(T),T.nestingLevel))B(T);else break}if(k(T)===""){T.tokenType=x.DELIMITER;return}if(k(T)===`
|
|
50
|
-
`&&!T.nestingLevel){T.tokenType=x.DELIMITER,T.token=k(T),B(T);return}var W=k(T),oe=F(T,2),he=F(T,3);if(he.length===3&&v[he]){T.tokenType=x.DELIMITER,T.token=he,B(T),B(T),B(T);return}if(oe.length===2&&v[oe]){T.tokenType=x.DELIMITER,T.token=oe,B(T),B(T);return}if(v[W]){T.tokenType=x.DELIMITER,T.token=W,B(T);return}if(y.isDigitDot(W)){T.tokenType=x.NUMBER;var qe=F(T,2);if(qe==="0b"||qe==="0o"||qe==="0x"){for(T.token+=k(T),B(T),T.token+=k(T),B(T);y.isHexDigit(k(T));)T.token+=k(T),B(T);if(k(T)===".")for(T.token+=".",B(T);y.isHexDigit(k(T));)T.token+=k(T),B(T);else if(k(T)==="i")for(T.token+="i",B(T);y.isDigit(k(T));)T.token+=k(T),B(T);return}if(k(T)==="."){if(T.token+=k(T),B(T),!y.isDigit(k(T))){T.tokenType=x.DELIMITER;return}}else{for(;y.isDigit(k(T));)T.token+=k(T),B(T);y.isDecimalMark(k(T),M(T))&&(T.token+=k(T),B(T))}for(;y.isDigit(k(T));)T.token+=k(T),B(T);if(k(T)==="E"||k(T)==="e"){if(y.isDigit(M(T))||M(T)==="-"||M(T)==="+"){if(T.token+=k(T),B(T),(k(T)==="+"||k(T)==="-")&&(T.token+=k(T),B(T)),!y.isDigit(k(T)))throw Ie(T,'Digit expected, got "'+k(T)+'"');for(;y.isDigit(k(T));)T.token+=k(T),B(T);if(y.isDecimalMark(k(T),M(T)))throw Ie(T,'Digit expected, got "'+k(T)+'"')}else if(y.isDecimalMark(M(T),T.expression.charAt(T.index+2)))throw B(T),Ie(T,'Digit expected, got "'+k(T)+'"')}return}if(y.isAlpha(k(T),$(T),M(T))){for(;y.isAlpha(k(T),$(T),M(T))||y.isDigit(k(T));)T.token+=k(T),B(T);Pe(N,T.token)?T.tokenType=x.DELIMITER:T.tokenType=x.SYMBOL;return}for(T.tokenType=x.UNKNOWN;k(T)!=="";)T.token+=k(T),B(T);throw Ie(T,'Syntax error in part "'+T.token+'"')}function G(T){do z(T);while(T.token===`
|
|
51
|
-
`)}function R(T){T.nestingLevel++}function Z(T){T.nestingLevel--}y.isAlpha=function(W,oe,he){return y.isValidLatinOrGreek(W)||y.isValidMathSymbol(W,he)||y.isValidMathSymbol(oe,W)},y.isValidLatinOrGreek=function(W){return/^[a-zA-Z_$\u00C0-\u02AF\u0370-\u03FF\u2100-\u214F]$/.test(W)},y.isValidMathSymbol=function(W,oe){return/^[\uD835]$/.test(W)&&/^[\uDC00-\uDFFF]$/.test(oe)&&/^[^\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDFCC\uDFCD]$/.test(oe)},y.isWhitespace=function(W,oe){return W===" "||W===" "||W===" "||W===`
|
|
52
|
-
`&&oe>0},y.isDecimalMark=function(W,oe){return W==="."&&oe!=="/"&&oe!=="*"&&oe!=="^"},y.isDigitDot=function(W){return W>="0"&&W<="9"||W==="."},y.isDigit=function(W){return W>="0"&&W<="9"},y.isHexDigit=function(W){return W>="0"&&W<="9"||W>="a"&&W<="f"||W>="A"&&W<="F"};function te(T,W){var oe=S();or(oe,{expression:T,extraNodes:W}),z(oe);var he=P(oe);if(oe.token!=="")throw oe.tokenType===x.DELIMITER?Ft(oe,"Unexpected operator "+oe.token):Ie(oe,'Unexpected part "'+oe.token+'"');return he}function P(T){var W,oe=[],he;for(T.token!==""&&T.token!==`
|
|
53
|
-
`&&T.token!==";"&&(W=V(T),T.comment&&(W.comment=T.comment));T.token===`
|
|
54
|
-
`||T.token===";";)oe.length===0&&W&&(he=T.token!==";",oe.push({node:W,visible:he})),z(T),T.token!==`
|
|
55
|
-
`&&T.token!==";"&&T.token!==""&&(W=V(T),T.comment&&(W.comment=T.comment),he=T.token!==";",oe.push({node:W,visible:he}));return oe.length>0?new s(oe):(W||(W=new l(void 0),T.comment&&(W.comment=T.comment)),W)}function V(T){var W,oe,he,qe,Ve=_(T);if(T.token==="="){if(yr(Ve))return W=Ve.name,G(T),he=V(T),new o(new D(W),he);if(Ji(Ve))return G(T),he=V(T),new o(Ve.object,Ve.index,he);if(li(Ve)&&yr(Ve.fn)&&(qe=!0,oe=[],W=Ve.name,Ve.args.forEach(function(ar,Bc){yr(ar)?oe[Bc]=ar.name:qe=!1}),qe))return G(T),he=V(T),new c(W,oe,he);throw Ie(T,"Invalid left hand side of assignment operator =")}return Ve}function _(T){for(var W=ce(T);T.token==="?";){var oe=T.conditionalLevel;T.conditionalLevel=T.nestingLevel,G(T);var he=W,qe=V(T);if(T.token!==":")throw Ie(T,"False part of conditional expression expected");T.conditionalLevel=null,G(T);var Ve=V(T);W=new u(he,qe,Ve),T.conditionalLevel=oe}return W}function ce(T){for(var W=ae(T);T.token==="or";)G(T),W=new p("or","or",[W,ae(T)]);return W}function ae(T){for(var W=ie(T);T.token==="xor";)G(T),W=new p("xor","xor",[W,ie(T)]);return W}function ie(T){for(var W=j(T);T.token==="and";)G(T),W=new p("and","and",[W,j(T)]);return W}function j(T){for(var W=H(T);T.token==="|";)G(T),W=new p("|","bitOr",[W,H(T)]);return W}function H(T){for(var W=J(T);T.token==="^|";)G(T),W=new p("^|","bitXor",[W,J(T)]);return W}function J(T){for(var W=Q(T);T.token==="&";)G(T),W=new p("&","bitAnd",[W,Q(T)]);return W}function Q(T){for(var W=[X(T)],oe=[],he={"==":"equal","!=":"unequal","<":"smaller",">":"larger","<=":"smallerEq",">=":"largerEq"};Pe(he,T.token);){var qe={name:T.token,fn:he[T.token]};oe.push(qe),G(T),W.push(X(T))}return W.length===1?W[0]:W.length===2?new p(oe[0].name,oe[0].fn,W):new b(oe.map(Ve=>Ve.fn),W)}function X(T){var W,oe,he,qe;W=ue(T);for(var Ve={"<<":"leftShift",">>":"rightArithShift",">>>":"rightLogShift"};Pe(Ve,T.token);)oe=T.token,he=Ve[oe],G(T),qe=[W,ue(T)],W=new p(oe,he,qe);return W}function ue(T){var W,oe,he,qe;W=se(T);for(var Ve={to:"to",in:"to"};Pe(Ve,T.token);)oe=T.token,he=Ve[oe],G(T),oe==="in"&&"])},;".includes(T.token)?W=new p("*","multiply",[W,new D("in")],!0):(qe=[W,se(T)],W=new p(oe,he,qe));return W}function se(T){var W,oe=[];if(T.token===":"?W=new l(1):W=we(T),T.token===":"&&T.conditionalLevel!==T.nestingLevel){for(oe.push(W);T.token===":"&&oe.length<3;)G(T),T.token===")"||T.token==="]"||T.token===","||T.token===""?oe.push(new D("end")):oe.push(we(T));oe.length===3?W=new g(oe[0],oe[2],oe[1]):W=new g(oe[0],oe[1])}return W}function we(T){var W,oe,he,qe;W=Me(T);for(var Ve={"+":"add","-":"subtract"};Pe(Ve,T.token);){oe=T.token,he=Ve[oe],G(T);var ar=Me(T);ar.isPercentage?qe=[W,new p("*","multiply",[W,ar])]:qe=[W,ar],W=new p(oe,he,qe)}return W}function Me(T){var W,oe,he,qe;W=ke(T),oe=W;for(var Ve={"*":"multiply",".*":"dotMultiply","/":"divide","./":"dotDivide","%":"mod",mod:"mod"};Pe(Ve,T.token);)if(he=T.token,qe=Ve[he],G(T),he==="%"&&T.tokenType===x.DELIMITER&&T.token!=="(")if(T.token!==""&&Ve[T.token]){var ar=new p("/","divide",[W,new l(100)],!1,!0);he=T.token,qe=Ve[he],G(T),oe=ke(T),W=new p(he,qe,[ar,oe])}else W=new p("/","divide",[W,new l(100)],!1,!0);else oe=ke(T),W=new p(he,qe,[W,oe]);return W}function ke(T){var W,oe;for(W=Se(T),oe=W;T.tokenType===x.SYMBOL||T.token==="in"&&ct(W)||T.token==="in"&&Yt(W)&&W.fn==="unaryMinus"&&ct(W.args[0])||T.tokenType===x.NUMBER&&!ct(oe)&&(!Yt(oe)||oe.op==="!")||T.token==="(";)oe=Se(T),W=new p("*","multiply",[W,oe],!0);return W}function Se(T){for(var W=$e(T),oe=W,he=[];T.token==="/"&&Cm(oe);)if(he.push(or({},T)),G(T),T.tokenType===x.NUMBER)if(he.push(or({},T)),G(T),T.tokenType===x.SYMBOL||T.token==="("||T.token==="in")or(T,he.pop()),he.pop(),oe=$e(T),W=new p("/","divide",[W,oe]);else{he.pop(),or(T,he.pop());break}else{or(T,he.pop());break}return W}function $e(T){var W,oe,he,qe={"-":"unaryMinus","+":"unaryPlus","~":"bitNot",not:"not"};return Pe(qe,T.token)?(he=qe[T.token],W=T.token,G(T),oe=[$e(T)],new p(W,he,oe)):q(T)}function q(T){var W,oe,he,qe;return W=K(T),(T.token==="^"||T.token===".^")&&(oe=T.token,he=oe==="^"?"pow":"dotPow",G(T),qe=[W,$e(T)],W=new p(oe,he,qe)),W}function K(T){var W,oe,he,qe;W=re(T);for(var Ve={"!":"factorial","'":"ctranspose"};Pe(Ve,T.token);)oe=T.token,he=Ve[oe],z(T),qe=[W],W=new p(oe,he,qe),W=L(T,W);return W}function re(T){var W=[];if(T.tokenType===x.SYMBOL&&Pe(T.extraNodes,T.token)){var oe=T.extraNodes[T.token];if(z(T),T.token==="("){if(W=[],R(T),z(T),T.token!==")")for(W.push(V(T));T.token===",";)z(T),W.push(V(T));if(T.token!==")")throw Ie(T,"Parenthesis ) expected");Z(T),z(T)}return new oe(W)}return O(T)}function O(T){var W,oe;return T.tokenType===x.SYMBOL||T.tokenType===x.DELIMITER&&T.token in N?(oe=T.token,z(T),Pe(C,oe)?W=new l(C[oe]):A.includes(oe)?W=new l(r(oe,"number")):W=new D(oe),W=L(T,W),W):Y(T)}function L(T,W,oe){for(var he;T.token==="("||T.token==="["||T.token===".";)if(he=[],T.token==="(")if(yr(W)||Ji(W)){if(R(T),z(T),T.token!==")")for(he.push(V(T));T.token===",";)z(T),he.push(V(T));if(T.token!==")")throw Ie(T,"Parenthesis ) expected");Z(T),z(T),W=new f(W,he)}else return W;else if(T.token==="["){if(R(T),z(T),T.token!=="]")for(he.push(V(T));T.token===",";)z(T),he.push(V(T));if(T.token!=="]")throw Ie(T,"Parenthesis ] expected");Z(T),z(T),W=new a(W,new m(he))}else{z(T);var qe=T.tokenType===x.SYMBOL||T.tokenType===x.DELIMITER&&T.token in N;if(!qe)throw Ie(T,"Property name expected after dot");he.push(new l(T.token)),z(T);var Ve=!0;W=new a(W,new m(he,Ve))}return W}function Y(T){var W,oe;return T.token==='"'||T.token==="'"?(oe=ee(T,T.token),W=new l(oe),W=L(T,W),W):ne(T)}function ee(T,W){for(var oe="";k(T)!==""&&k(T)!==W;)if(k(T)==="\\"){B(T);var he=k(T),qe=E[he];if(qe!==void 0)oe+=qe,T.index+=1;else if(he==="u"){var Ve=T.expression.slice(T.index+1,T.index+5);if(/^[0-9A-Fa-f]{4}$/.test(Ve))oe+=String.fromCharCode(parseInt(Ve,16)),T.index+=5;else throw Ie(T,"Invalid unicode character \\u".concat(Ve))}else throw Ie(T,"Bad escape character \\".concat(he))}else oe+=k(T),B(T);if(z(T),T.token!==W)throw Ie(T,"End of string ".concat(W," expected"));return z(T),oe}function ne(T){var W,oe,he,qe;if(T.token==="["){if(R(T),z(T),T.token!=="]"){var Ve=le(T);if(T.token===";"){for(he=1,oe=[Ve];T.token===";";)z(T),T.token!=="]"&&(oe[he]=le(T),he++);if(T.token!=="]")throw Ie(T,"End of matrix ] expected");Z(T),z(T),qe=oe[0].items.length;for(var ar=1;ar<he;ar++)if(oe[ar].items.length!==qe)throw Ft(T,"Column dimensions mismatch ("+oe[ar].items.length+" !== "+qe+")");W=new i(oe)}else{if(T.token!=="]")throw Ie(T,"End of matrix ] expected");Z(T),z(T),W=Ve}}else Z(T),z(T),W=new i([]);return L(T,W)}return ge(T)}function le(T){for(var W=[V(T)],oe=1;T.token===",";)z(T),T.token!=="]"&&T.token!==";"&&(W[oe]=V(T),oe++);return new i(W)}function ge(T){if(T.token==="{"){R(T);var W,oe={};do if(z(T),T.token!=="}"){if(T.token==='"'||T.token==="'")W=ee(T,T.token);else if(T.tokenType===x.SYMBOL||T.tokenType===x.DELIMITER&&T.token in N)W=T.token,z(T);else throw Ie(T,"Symbol or string expected as object key");if(T.token!==":")throw Ie(T,"Colon : expected after object key");z(T),oe[W]=V(T)}while(T.token===",");if(T.token!=="}")throw Ie(T,"Comma , or bracket } expected after object value");Z(T),z(T);var he=new d(oe);return he=L(T,he),he}return ye(T)}function ye(T){var W;if(T.tokenType===x.NUMBER){W=T.token,z(T);var oe=hi(W,n),he=r(W,oe);return new l(he)}return Ae(T)}function Ae(T){var W;if(T.token==="("){if(R(T),z(T),W=V(T),T.token!==")")throw Ie(T,"Parenthesis ) expected");return Z(T),z(T),W=new h(W),W=L(T,W),W}return be(T)}function be(T){throw T.token===""?Ie(T,"Unexpected end of expression"):Ie(T,"Value expected")}function lt(T){return T.index-T.token.length+1}function Ie(T,W){var oe=lt(T),he=new SyntaxError(W+" (char "+oe+")");return he.char=oe,he}function Ft(T,W){var oe=lt(T),he=new SyntaxError(W+" (char "+oe+")");return he.char=oe,he}return t.addConversion({from:"string",to:"Node",convert:y}),y}),ly="compile",lV=["typed","parse"],cV=I(ly,lV,e=>{var{typed:t,parse:r}=e;return t(ly,{string:function(a){return r(a).compile()},"Array | Matrix":function(a){return Xe(a,function(i){return r(i).compile()})}})}),cy="evaluate",fV=["typed","parse"],mV=I(cy,fV,e=>{var{typed:t,parse:r}=e;return t(cy,{string:function(a){var i=js();return r(a).compile().evaluate(i)},"string, Map | Object":function(a,i){return r(a).compile().evaluate(i)},"Array | Matrix":function(a){var i=js();return Xe(a,function(o){return r(o).compile().evaluate(i)})},"Array | Matrix, Map | Object":function(a,i){return Xe(a,function(o){return r(o).compile().evaluate(i)})}})}),dV="Parser",hV=["evaluate","parse"],pV=I(dV,hV,e=>{var{evaluate:t,parse:r}=e;function n(){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");Object.defineProperty(this,"scope",{value:js(),writable:!1})}n.prototype.type="Parser",n.prototype.isParser=!0,n.prototype.evaluate=function(i){return t(i,this.scope)},n.prototype.get=function(i){if(this.scope.has(i))return this.scope.get(i)},n.prototype.getAll=function(){return _6(this.scope)},n.prototype.getAllAsMap=function(){return this.scope};function a(i){if(i.length===0)return!1;for(var o=0;o<i.length;o++){var s=i.charAt(o-1),u=i.charAt(o),l=i.charAt(o+1),c=r.isAlpha(u,s,l)||o>0&&r.isDigit(u);if(!c)return!1}return!0}return n.prototype.set=function(i,o){if(!a(i))throw new Error("Invalid variable name: '".concat(i,"'. Variable names must follow the specified rules."));return this.scope.set(i,o),o},n.prototype.remove=function(i){this.scope.delete(i)},n.prototype.clear=function(){this.scope.clear()},n.prototype.toJSON=function(){var i={mathjs:"Parser",variables:{},functions:{}};for(var[o,s]of this.scope)if(Jw(s)){if(!gV(s))throw new Error("Cannot serialize external function ".concat(o));i.functions[o]="".concat(s.syntax," = ").concat(s.expr)}else i.variables[o]=s;return i},n.fromJSON=function(i){var o=new n;return Object.entries(i.variables).forEach(s=>{var[u,l]=s;return o.set(u,l)}),Object.entries(i.functions).forEach(s=>{var[u,l]=s;return o.evaluate(l)}),o},n},{isClass:!0});function gV(e){return typeof e=="function"&&typeof e.syntax=="string"&&typeof e.expr=="string"}var fy="parser",vV=["typed","Parser"],yV=I(fy,vV,e=>{var{typed:t,Parser:r}=e;return t(fy,{"":function(){return new r}})}),my="lup",bV=["typed","matrix","abs","addScalar","divideScalar","multiplyScalar","subtractScalar","larger","equalScalar","unaryMinus","DenseMatrix","SparseMatrix","Spa"],wV=I(my,bV,e=>{var{typed:t,matrix:r,abs:n,addScalar:a,divideScalar:i,multiplyScalar:o,subtractScalar:s,larger:u,equalScalar:l,unaryMinus:c,DenseMatrix:f,SparseMatrix:m,Spa:d}=e;return t(my,{DenseMatrix:function(b){return p(b)},SparseMatrix:function(b){return h(b)},Array:function(b){var D=r(b),y=p(D);return{L:y.L.valueOf(),U:y.U.valueOf(),p:y.p}}});function p(g){var b=g._size[0],D=g._size[1],y=Math.min(b,D),w=We(g._data),x=[],v=[b,y],N=[],C=[y,D],A,E,S,F=[];for(A=0;A<b;A++)F[A]=A;for(E=0;E<D;E++){if(E>0)for(A=0;A<b;A++){var k=Math.min(A,E),B=0;for(S=0;S<k;S++)B=a(B,o(w[A][S],w[S][E]));w[A][E]=s(w[A][E],B)}var $=E,M=0,z=0;for(A=E;A<b;A++){var G=w[A][E],R=n(G);u(R,M)&&($=A,M=R,z=G)}if(E!==$&&(F[E]=[F[$],F[$]=F[E]][0],f._swapRows(E,$,w)),E<b)for(A=E+1;A<b;A++){var Z=w[A][E];l(Z,0)||(w[A][E]=i(w[A][E],z))}}for(E=0;E<D;E++)for(A=0;A<b;A++){if(E===0&&(A<D&&(N[A]=[]),x[A]=[]),A<E){A<D&&(N[A][E]=w[A][E]),E<b&&(x[A][E]=0);continue}if(A===E){A<D&&(N[A][E]=w[A][E]),E<b&&(x[A][E]=1);continue}A<D&&(N[A][E]=0),E<b&&(x[A][E]=w[A][E])}var te=new f({data:x,size:v}),P=new f({data:N,size:C}),V=[];for(A=0,y=F.length;A<y;A++)V[F[A]]=A;return{L:te,U:P,p:V,toString:function(){return"L: "+this.L.toString()+`
|
|
56
|
-
U: `+this.U.toString()+`
|
|
57
|
-
P: `+this.p}}}function h(g){var b=g._size[0],D=g._size[1],y=Math.min(b,D),w=g._values,x=g._index,v=g._ptr,N=[],C=[],A=[],E=[b,y],S=[],F=[],k=[],B=[y,D],$,M,z,G=[],R=[];for($=0;$<b;$++)G[$]=$,R[$]=$;var Z=function(V,_){var ce=R[V],ae=R[_];G[ce]=_,G[ae]=V,R[V]=ae,R[_]=ce},te=function(){var V=new d;M<b&&(A.push(N.length),N.push(1),C.push(M)),k.push(S.length);var _=v[M],ce=v[M+1];for(z=_;z<ce;z++)$=x[z],V.set(G[$],w[z]);M>0&&V.forEach(0,M-1,function(H,J){m._forEachRow(H,N,C,A,function(Q,X){Q>H&&V.accumulate(Q,c(o(X,J)))})});var ae=M,ie=V.get(M),j=n(ie);V.forEach(M+1,b-1,function(H,J){var Q=n(J);u(Q,j)&&(ae=H,j=Q,ie=J)}),M!==ae&&(m._swapRows(M,ae,E[1],N,C,A),m._swapRows(M,ae,B[1],S,F,k),V.swap(M,ae),Z(M,ae)),V.forEach(0,b-1,function(H,J){H<=M?(S.push(J),F.push(H)):(J=i(J,ie),l(J,0)||(N.push(J),C.push(H)))})};for(M=0;M<D;M++)te();return k.push(S.length),A.push(N.length),{L:new m({values:N,index:C,ptr:A,size:E}),U:new m({values:S,index:F,ptr:k,size:B}),p:G,toString:function(){return"L: "+this.L.toString()+`
|
|
58
|
-
U: `+this.U.toString()+`
|
|
59
|
-
P: `+this.p}}}}),dy="qr",xV=["typed","matrix","zeros","identity","isZero","equal","sign","sqrt","conj","unaryMinus","addScalar","divideScalar","multiplyScalar","subtractScalar","complex"],DV=I(dy,xV,e=>{var{typed:t,matrix:r,zeros:n,identity:a,isZero:i,equal:o,sign:s,sqrt:u,conj:l,unaryMinus:c,addScalar:f,divideScalar:m,multiplyScalar:d,subtractScalar:p,complex:h}=e;return or(t(dy,{DenseMatrix:function(w){return b(w)},SparseMatrix:function(w){return D()},Array:function(w){var x=r(w),v=b(x);return{Q:v.Q.valueOf(),R:v.R.valueOf()}}}),{_denseQRimpl:g});function g(y){var w=y._size[0],x=y._size[1],v=a([w],"dense"),N=v._data,C=y.clone(),A=C._data,E,S,F,k=n([w],"");for(F=0;F<Math.min(x,w);++F){var B=A[F][F],$=c(o(B,0)?1:s(B)),M=l($),z=0;for(E=F;E<w;E++)z=f(z,d(A[E][F],l(A[E][F])));var G=d($,u(z));if(!i(G)){var R=p(B,G);for(k[F]=1,E=F+1;E<w;E++)k[E]=m(A[E][F],R);var Z=c(l(m(R,G))),te=void 0;for(S=F;S<x;S++){for(te=0,E=F;E<w;E++)te=f(te,d(l(k[E]),A[E][S]));for(te=d(te,Z),E=F;E<w;E++)A[E][S]=d(p(A[E][S],d(k[E],te)),M)}for(E=0;E<w;E++){for(te=0,S=F;S<w;S++)te=f(te,d(N[E][S],k[S]));for(te=d(te,Z),S=F;S<w;++S)N[E][S]=m(p(N[E][S],d(te,l(k[S]))),M)}}}return{Q:v,R:C,toString:function(){return"Q: "+this.Q.toString()+`
|
|
60
|
-
R: `+this.R.toString()}}}function b(y){var w=g(y),x=w.R._data;if(y._data.length>0)for(var v=x[0][0].type==="Complex"?h(0):0,N=0;N<x.length;++N)for(var C=0;C<N&&C<(x[0]||[]).length;++C)x[N][C]=v;return w}function D(y){throw new Error("qr not implemented for sparse matrices yet")}});function NV(e,t,r,n){e._values;for(var a=e._index,i=e._ptr,o=e._size,s=e._datatype,u=o[0],l=o[1],c=null,f=[],m=[],d=0,p=0;p<l;p++){m[p]=d;for(var h=r?r[p]:p,g=i[h],b=i[h+1],D=g;D<b;D++){var y=a[D];f[d]=y,d++}}return m[l]=d,e.createSparseMatrix({values:c,index:f,ptr:m,size:[u,l],datatype:s})}function q2(e,t,r,n,a,i,o){var s=0;for(r[o]=e;s>=0;){var u=r[o+s],l=r[n+u];l===-1?(s--,i[t++]=u):(r[n+u]=r[a+l],++s,r[o+s]=l)}return t}function AV(e,t){if(!e)return null;var r=0,n,a=[],i=[],o=0,s=t,u=2*t;for(n=0;n<t;n++)i[o+n]=-1;for(n=t-1;n>=0;n--)e[n]!==-1&&(i[s+n]=i[o+e[n]],i[o+e[n]]=n);for(n=0;n<t;n++)e[n]===-1&&(r=q2(n,r,i,o,s,a,u));return a}function CV(e,t){if(!e)return null;var r=e._index,n=e._ptr,a=e._size,i=a[0],o=a[1],s=[],u=[],l=0,c=o,f,m;for(f=0;f<i;f++)u[c+f]=-1;for(var d=0;d<o;d++){s[d]=-1,u[l+d]=-1;for(var p=n[d],h=n[d+1],g=p;g<h;g++){var b=r[g];for(f=u[c+b];f!==-1&&f<d;f=m)m=u[l+f],u[l+f]=d,m===-1&&(s[f]=d);u[c+b]=d}}return s}function EV(e,t,r){for(var n=e._values,a=e._index,i=e._ptr,o=e._size,s=o[1],u=0,l=0;l<s;l++){var c=i[l];for(i[l]=u;c<i[l+1];c++)t(a[c],l,n?n[c]:1,r)&&(a[u]=a[c],n&&(n[u]=n[c]),u++)}return i[s]=u,a.splice(u,a.length-u),n&&n.splice(u,n.length-u),u}function Ya(e){return-e-2}var SV="csAmd",TV=["add","multiply","transpose"],MV=I(SV,TV,e=>{var{add:t,multiply:r,transpose:n}=e;return function(c,f){if(!f||c<=0||c>3)return null;var m=f._size,d=m[0],p=m[1],h=0,g=Math.max(16,10*Math.sqrt(p));g=Math.min(p-2,g);var b=a(c,f,d,p,g);EV(b,u,null);for(var D=b._index,y=b._ptr,w=y[p],x=[],v=[],N=0,C=p+1,A=2*(p+1),E=3*(p+1),S=4*(p+1),F=5*(p+1),k=6*(p+1),B=7*(p+1),$=x,M=i(p,y,v,N,E,$,A,B,C,k,S,F),z=o(p,y,v,F,S,k,g,C,E,$,A),G=0,R,Z,te,P,V,_,ce,ae,ie,j,H,J,Q,X,ue,se;z<p;){for(te=-1;G<p&&(te=v[E+G])===-1;G++);v[A+te]!==-1&&($[v[A+te]]=-1),v[E+G]=v[A+te];var we=v[S+te],Me=v[C+te];z+=Me;var ke=0;v[C+te]=-Me;var Se=y[te],$e=we===0?Se:w,q=$e;for(P=1;P<=we+1;P++){for(P>we?(_=te,ce=Se,ae=v[N+te]-we):(_=D[Se++],ce=y[_],ae=v[N+_]),V=1;V<=ae;V++)R=D[ce++],!((ie=v[C+R])<=0)&&(ke+=ie,v[C+R]=-ie,D[q++]=R,v[A+R]!==-1&&($[v[A+R]]=$[R]),$[R]!==-1?v[A+$[R]]=v[A+R]:v[E+v[F+R]]=v[A+R]);_!==te&&(y[_]=Ya(te),v[k+_]=0)}for(we!==0&&(w=q),v[F+te]=ke,y[te]=$e,v[N+te]=q-$e,v[S+te]=-2,M=s(M,h,v,k,p),j=$e;j<q;j++)if(R=D[j],!((H=v[S+R])<=0)){ie=-v[C+R];var K=M-ie;for(Se=y[R],J=y[R]+H-1;Se<=J;Se++)_=D[Se],v[k+_]>=M?v[k+_]-=ie:v[k+_]!==0&&(v[k+_]=v[F+_]+K)}for(j=$e;j<q;j++){for(R=D[j],J=y[R],Q=J+v[S+R]-1,X=J,ue=0,se=0,Se=J;Se<=Q;Se++)if(_=D[Se],v[k+_]!==0){var re=v[k+_]-M;re>0?(se+=re,D[X++]=_,ue+=_):(y[_]=Ya(te),v[k+_]=0)}v[S+R]=X-J+1;var O=X,L=J+v[N+R];for(Se=Q+1;Se<L;Se++){Z=D[Se];var Y=v[C+Z];Y<=0||(se+=Y,D[X++]=Z,ue+=Z)}se===0?(y[R]=Ya(te),ie=-v[C+R],ke-=ie,Me+=ie,z+=ie,v[C+R]=0,v[S+R]=-1):(v[F+R]=Math.min(v[F+R],se),D[X]=D[O],D[O]=D[J],D[J]=te,v[N+R]=X-J+1,ue=(ue<0?-ue:ue)%p,v[A+R]=v[B+ue],v[B+ue]=R,$[R]=ue)}for(v[F+te]=ke,h=Math.max(h,ke),M=s(M+h,h,v,k,p),j=$e;j<q;j++)if(R=D[j],!(v[C+R]>=0))for(ue=$[R],R=v[B+ue],v[B+ue]=-1;R!==-1&&v[A+R]!==-1;R=v[A+R],M++){for(ae=v[N+R],H=v[S+R],Se=y[R]+1;Se<=y[R]+ae-1;Se++)v[k+D[Se]]=M;var ee=R;for(Z=v[A+R];Z!==-1;){var ne=v[N+Z]===ae&&v[S+Z]===H;for(Se=y[Z]+1;ne&&Se<=y[Z]+ae-1;Se++)v[k+D[Se]]!==M&&(ne=0);ne?(y[Z]=Ya(R),v[C+R]+=v[C+Z],v[C+Z]=0,v[S+Z]=-1,Z=v[A+Z],v[A+ee]=Z):(ee=Z,Z=v[A+Z])}}for(Se=$e,j=$e;j<q;j++)R=D[j],!((ie=-v[C+R])<=0)&&(v[C+R]=ie,se=v[F+R]+ke-ie,se=Math.min(se,p-z-ie),v[E+se]!==-1&&($[v[E+se]]=R),v[A+R]=v[E+se],$[R]=-1,v[E+se]=R,G=Math.min(G,se),v[F+R]=se,D[Se++]=R);v[C+te]=Me,(v[N+te]=Se-$e)===0&&(y[te]=-1,v[k+te]=0),we!==0&&(w=Se)}for(R=0;R<p;R++)y[R]=Ya(y[R]);for(Z=0;Z<=p;Z++)v[E+Z]=-1;for(Z=p;Z>=0;Z--)v[C+Z]>0||(v[A+Z]=v[E+y[Z]],v[E+y[Z]]=Z);for(_=p;_>=0;_--)v[C+_]<=0||y[_]!==-1&&(v[A+_]=v[E+y[_]],v[E+y[_]]=_);for(te=0,R=0;R<=p;R++)y[R]===-1&&(te=q2(R,te,v,E,A,x,k));return x.splice(x.length-1,1),x};function a(l,c,f,m,d){var p=n(c);if(l===1&&m===f)return t(c,p);if(l===2){for(var h=p._index,g=p._ptr,b=0,D=0;D<f;D++){var y=g[D];if(g[D]=b,!(g[D+1]-y>d))for(var w=g[D+1];y<w;y++)h[b++]=h[y]}return g[f]=b,c=n(p),r(p,c)}return r(p,c)}function i(l,c,f,m,d,p,h,g,b,D,y,w){for(var x=0;x<l;x++)f[m+x]=c[x+1]-c[x];f[m+l]=0;for(var v=0;v<=l;v++)f[d+v]=-1,p[v]=-1,f[h+v]=-1,f[g+v]=-1,f[b+v]=1,f[D+v]=1,f[y+v]=0,f[w+v]=f[m+v];var N=s(0,0,f,D,l);return f[y+l]=-2,c[l]=-1,f[D+l]=0,N}function o(l,c,f,m,d,p,h,g,b,D,y){for(var w=0,x=0;x<l;x++){var v=f[m+x];if(v===0)f[d+x]=-2,w++,c[x]=-1,f[p+x]=0;else if(v>h)f[g+x]=0,f[d+x]=-1,w++,c[x]=Ya(l),f[g+l]++;else{var N=f[b+v];N!==-1&&(D[N]=x),f[y+x]=f[b+v],f[b+v]=x}}return w}function s(l,c,f,m,d){if(l<2||l+c<0){for(var p=0;p<d;p++)f[m+p]!==0&&(f[m+p]=1);l=2}return l}function u(l,c){return l!==c}});function FV(e,t,r,n,a,i,o){var s,u,l=0,c;if(e<=t||r[n+t]<=r[a+e])return-1;r[a+e]=r[n+t];var f=r[i+e];if(r[i+e]=t,f===-1)l=1,c=e;else{for(l=2,c=f;c!==r[o+c];c=r[o+c]);for(s=f;s!==c;s=u)u=r[o+s],r[o+s]=c}return{jleaf:l,q:c}}var PV="csCounts",kV=["transpose"],OV=I(PV,kV,e=>{var{transpose:t}=e;return function(r,n,a,i){if(!r||!n||!a)return null;var o=r._size,s=o[0],u=o[1],l,c,f,m,d,p,h,g=4*u+(i?u+s+1:0),b=[],D=0,y=u,w=2*u,x=3*u,v=4*u,N=5*u+1;for(f=0;f<g;f++)b[f]=-1;var C=[],A=t(r),E=A._index,S=A._ptr;for(f=0;f<u;f++)for(c=a[f],C[c]=b[x+c]===-1?1:0;c!==-1&&b[x+c]===-1;c=n[c])b[x+c]=f;if(i){for(f=0;f<u;f++)b[a[f]]=f;for(l=0;l<s;l++){for(f=u,p=S[l],h=S[l+1],d=p;d<h;d++)f=Math.min(f,b[E[d]]);b[N+l]=b[v+f],b[v+f]=l}}for(l=0;l<u;l++)b[D+l]=l;for(f=0;f<u;f++){for(c=a[f],n[c]!==-1&&C[n[c]]--,m=i?b[v+f]:c;m!==-1;m=i?b[N+m]:-1)for(d=S[m];d<S[m+1];d++){l=E[d];var F=FV(l,c,b,x,y,w,D);F.jleaf>=1&&C[c]++,F.jleaf===2&&C[F.q]--}n[c]!==-1&&(b[D+c]=n[c])}for(c=0;c<u;c++)n[c]!==-1&&(C[n[c]]+=C[c]);return C}}),$V="csSqr",BV=["add","multiply","transpose"],_V=I($V,BV,e=>{var{add:t,multiply:r,transpose:n}=e,a=MV({add:t,multiply:r,transpose:n}),i=OV({transpose:n});return function(u,l,c){var f=l._ptr,m=l._size,d=m[1],p,h={};if(h.q=a(u,l),u&&!h.q)return null;if(c){var g=u?NV(l,null,h.q):l;h.parent=CV(g);var b=AV(h.parent,d);if(h.cp=i(g,h.parent,b,1),g&&h.parent&&h.cp&&o(g,h))for(h.unz=0,p=0;p<d;p++)h.unz+=h.cp[p]}else h.unz=4*f[d]+d,h.lnz=h.unz;return h};function o(s,u){var l=s._ptr,c=s._index,f=s._size,m=f[0],d=f[1];u.pinv=[],u.leftmost=[];var p=u.parent,h=u.pinv,g=u.leftmost,b=[],D=0,y=m,w=m+d,x=m+2*d,v,N,C,A,E;for(N=0;N<d;N++)b[y+N]=-1,b[w+N]=-1,b[x+N]=0;for(v=0;v<m;v++)g[v]=-1;for(N=d-1;N>=0;N--)for(A=l[N],E=l[N+1],C=A;C<E;C++)g[c[C]]=N;for(v=m-1;v>=0;v--)h[v]=-1,N=g[v],N!==-1&&(b[x+N]++===0&&(b[w+N]=v),b[D+v]=b[y+N],b[y+N]=v);for(u.lnz=0,u.m2=m,N=0;N<d;N++)if(v=b[y+N],u.lnz++,v<0&&(v=u.m2++),h[v]=N,!(--x[N]<=0)){u.lnz+=b[x+N];var S=p[N];S!==-1&&(b[x+S]===0&&(b[w+S]=b[w+N]),b[D+b[w+N]]=b[y+S],b[y+S]=b[D+v],b[x+S]+=b[x+N])}for(v=0;v<m;v++)h[v]<0&&(h[v]=N++);return!0}});function Vm(e,t){return e[t]<0}function R2(e,t){e[t]=Ya(e[t])}function hy(e){return e<0?Ya(e):e}function IV(e,t,r,n,a){var i=t._index,o=t._ptr,s=t._size,u=s[1],l,c,f,m=0;for(n[0]=e;m>=0;){e=n[m];var d=a?a[e]:e;Vm(o,e)||(R2(o,e),n[u+m]=d<0?0:hy(o[d]));var p=1;for(c=n[u+m],f=d<0?0:hy(o[d+1]);c<f;c++)if(l=i[c],!Vm(o,l)){n[u+m]=c,n[++m]=l,p=0;break}p&&(m--,n[--r]=e)}return r}function zV(e,t,r,n,a){var i=e._ptr,o=e._size,s=t._index,u=t._ptr,l=o[1],c,f,m,d=l;for(f=u[r],m=u[r+1],c=f;c<m;c++){var p=s[c];Vm(i,p)||(d=IV(p,e,d,n,a))}for(c=d;c<l;c++)R2(i,n[c]);return d}var jV="csSpsolve",qV=["divideScalar","multiply","subtract"],RV=I(jV,qV,e=>{var{divideScalar:t,multiply:r,subtract:n}=e;return function(i,o,s,u,l,c,f){var m=i._values,d=i._index,p=i._ptr,h=i._size,g=h[1],b=o._values,D=o._index,y=o._ptr,w,x,v,N,C=zV(i,o,s,u,c);for(w=C;w<g;w++)l[u[w]]=0;for(x=y[s],v=y[s+1],w=x;w<v;w++)l[D[w]]=b[w];for(var A=C;A<g;A++){var E=u[A],S=c?c[E]:E;if(!(S<0))for(x=p[S],v=p[S+1],l[E]=t(l[E],m[f?x:v-1]),w=f?x+1:x,N=f?v:v-1;w<N;w++){var F=d[w];l[F]=n(l[F],r(m[w],l[E]))}}return C}}),LV="csLu",HV=["abs","divideScalar","multiply","subtract","larger","largerEq","SparseMatrix"],GV=I(LV,HV,e=>{var{abs:t,divideScalar:r,multiply:n,subtract:a,larger:i,largerEq:o,SparseMatrix:s}=e,u=RV({divideScalar:r,multiply:n,subtract:a});return function(c,f,m){if(!c)return null;var d=c._size,p=d[1],h,g=100,b=100;f&&(h=f.q,g=f.lnz||g,b=f.unz||b);var D=[],y=[],w=[],x=new s({values:D,index:y,ptr:w,size:[p,p]}),v=[],N=[],C=[],A=new s({values:v,index:N,ptr:C,size:[p,p]}),E=[],S,F,k=[],B=[];for(S=0;S<p;S++)k[S]=0,E[S]=-1,w[S+1]=0;g=0,b=0;for(var $=0;$<p;$++){w[$]=g,C[$]=b;var M=h?h[$]:$,z=u(x,c,M,B,k,E,1),G=-1,R=-1;for(F=z;F<p;F++)if(S=B[F],E[S]<0){var Z=t(k[S]);i(Z,R)&&(R=Z,G=S)}else N[b]=E[S],v[b++]=k[S];if(G===-1||R<=0)return null;E[M]<0&&o(t(k[M]),n(R,m))&&(G=M);var te=k[G];for(N[b]=$,v[b++]=te,E[G]=$,y[g]=G,D[g++]=1,F=z;F<p;F++)S=B[F],E[S]<0&&(y[g]=S,D[g++]=r(k[S],te)),k[S]=0}for(w[p]=g,C[p]=b,F=0;F<g;F++)y[F]=E[y[F]];return D.splice(g,D.length-g),y.splice(g,y.length-g),v.splice(b,v.length-b),N.splice(b,N.length-b),{L:x,U:A,pinv:E}}}),py="slu",VV=["typed","abs","add","multiply","transpose","divideScalar","subtract","larger","largerEq","SparseMatrix"],UV=I(py,VV,e=>{var{typed:t,abs:r,add:n,multiply:a,transpose:i,divideScalar:o,subtract:s,larger:u,largerEq:l,SparseMatrix:c}=e,f=_V({add:n,multiply:a,transpose:i}),m=GV({abs:r,divideScalar:o,multiply:a,subtract:s,larger:u,largerEq:l,SparseMatrix:c});return t(py,{"SparseMatrix, number, number":function(p,h,g){if(!Oe(h)||h<0||h>3)throw new Error("Symbolic Ordering and Analysis order must be an integer number in the interval [0, 3]");if(g<0||g>1)throw new Error("Partial pivoting threshold must be a number from 0 to 1");var b=f(h,p,!1),D=m(p,b,g);return{L:D.L,U:D.U,p:D.pinv,q:b.q,toString:function(){return"L: "+this.L.toString()+`
|
|
61
|
-
U: `+this.U.toString()+`
|
|
62
|
-
p: `+this.p.toString()+(this.q?`
|
|
63
|
-
q: `+this.q.toString():"")+`
|
|
64
|
-
`}}}})});function gy(e,t){var r,n=t.length,a=[];if(e)for(r=0;r<n;r++)a[e[r]]=t[r];else for(r=0;r<n;r++)a[r]=t[r];return a}var vy="lusolve",WV=["typed","matrix","lup","slu","usolve","lsolve","DenseMatrix"],JV=I(vy,WV,e=>{var{typed:t,matrix:r,lup:n,slu:a,usolve:i,lsolve:o,DenseMatrix:s}=e,u=eu({DenseMatrix:s});return t(vy,{"Array, Array | Matrix":function(m,d){m=r(m);var p=n(m),h=c(p.L,p.U,p.p,null,d);return h.valueOf()},"DenseMatrix, Array | Matrix":function(m,d){var p=n(m);return c(p.L,p.U,p.p,null,d)},"SparseMatrix, Array | Matrix":function(m,d){var p=n(m);return c(p.L,p.U,p.p,null,d)},"SparseMatrix, Array | Matrix, number, number":function(m,d,p,h){var g=a(m,p,h);return c(g.L,g.U,g.p,g.q,d)},"Object, Array | Matrix":function(m,d){return c(m.L,m.U,m.p,m.q,d)}});function l(f){if(Re(f))return f;if(Et(f))return r(f);throw new TypeError("Invalid Matrix LU decomposition")}function c(f,m,d,p,h){f=l(f),m=l(m),d&&(h=u(f,h,!0),h._data=gy(d,h._data));var g=o(f,h),b=i(m,g);return p&&(b._data=gy(p,b._data)),b}}),yy="polynomialRoot",KV=["typed","isZero","equalScalar","add","subtract","multiply","divide","sqrt","unaryMinus","cbrt","typeOf","im","re"],YV=I(yy,KV,e=>{var{typed:t,isZero:r,equalScalar:n,add:a,subtract:i,multiply:o,divide:s,sqrt:u,unaryMinus:l,cbrt:c,typeOf:f,im:m,re:d}=e;return t(yy,{"number|Complex, ...number|Complex":(p,h)=>{for(var g=[p,...h];g.length>0&&r(g[g.length-1]);)g.pop();if(g.length<2)throw new RangeError("Polynomial [".concat(p,", ").concat(h,"] must have a non-zero non-constant coefficient"));switch(g.length){case 2:return[l(s(g[0],g[1]))];case 3:{var[b,D,y]=g,w=o(2,y),x=o(D,D),v=o(4,y,b);if(n(x,v))return[s(l(D),w)];var N=u(i(x,v));return[s(i(N,D),w),s(i(l(N),D),w)]}case 4:{var[C,A,E,S]=g,F=l(o(3,S)),k=o(E,E),B=o(3,S,A),$=a(o(2,E,E,E),o(27,S,S,C)),M=o(9,S,E,A);if(n(k,B)&&n($,M))return[s(E,F)];var z=i(k,B),G=i($,M),R=a(o(18,S,E,A,C),o(E,E,A,A)),Z=a(o(4,E,E,E,C),o(4,S,A,A,A),o(27,S,S,C,C));if(n(R,Z))return[s(i(o(4,S,E,A),a(o(9,S,S,C),o(E,E,E))),o(S,z)),s(i(o(9,S,C),o(E,A)),o(2,z))];var te;n(k,B)?te=G:te=s(a(G,u(i(o(G,G),o(4,z,z,z)))),2);var P=!0,V=c(te,P).toArray().map(_=>s(a(E,_,s(z,_)),F));return V.map(_=>f(_)==="Complex"&&n(d(_),d(_)+m(_))?d(_):_)}default:throw new RangeError("only implemented for cubic or lower-order polynomials, not ".concat(g))}}})}),ZV="Help",QV=["evaluate"],XV=I(ZV,QV,e=>{var{evaluate:t}=e;function r(n){if(!(this instanceof r))throw new SyntaxError("Constructor must be called with the new operator");if(!n)throw new Error('Argument "doc" missing');this.doc=n}return r.prototype.type="Help",r.prototype.isHelp=!0,r.prototype.toString=function(){var n=this.doc||{},a=`
|
|
65
|
-
`;if(n.name&&(a+="Name: "+n.name+`
|
|
66
|
-
|
|
67
|
-
`),n.category&&(a+="Category: "+n.category+`
|
|
68
|
-
|
|
69
|
-
`),n.description&&(a+=`Description:
|
|
70
|
-
`+n.description+`
|
|
71
|
-
|
|
72
|
-
`),n.syntax&&(a+=`Syntax:
|
|
73
|
-
`+n.syntax.join(`
|
|
74
|
-
`)+`
|
|
75
|
-
|
|
76
|
-
`),n.examples){a+=`Examples:
|
|
77
|
-
`;for(var i=!1,o=t("config()"),s={config:f=>(i=!0,t("config(newConfig)",{newConfig:f}))},u=0;u<n.examples.length;u++){var l=n.examples[u];a+=" "+l+`
|
|
78
|
-
`;var c=void 0;try{c=t(l,s)}catch(f){c=f}c!==void 0&&!Ww(c)&&(a+=" "+nt(c,{precision:14})+`
|
|
79
|
-
`)}a+=`
|
|
80
|
-
`,i&&t("config(originalConfig)",{originalConfig:o})}return n.mayThrow&&n.mayThrow.length&&(a+="Throws: "+n.mayThrow.join(", ")+`
|
|
81
|
-
|
|
82
|
-
`),n.seealso&&n.seealso.length&&(a+="See also: "+n.seealso.join(", ")+`
|
|
83
|
-
`),a},r.prototype.toJSON=function(){var n=We(this.doc);return n.mathjs="Help",n},r.fromJSON=function(n){var a={};return Object.keys(n).filter(i=>i!=="mathjs").forEach(i=>{a[i]=n[i]}),new r(a)},r.prototype.valueOf=r.prototype.toString,r},{isClass:!0}),eU="Chain",tU=["?on","math","typed"],rU=I(eU,tU,e=>{var{on:t,math:r,typed:n}=e;function a(l){if(!(this instanceof a))throw new SyntaxError("Constructor must be called with the new operator");Yw(l)?this.value=l.value:this.value=l}a.prototype.type="Chain",a.prototype.isChain=!0,a.prototype.done=function(){return this.value},a.prototype.valueOf=function(){return this.value},a.prototype.toString=function(){return nt(this.value)},a.prototype.toJSON=function(){return{mathjs:"Chain",value:this.value}},a.fromJSON=function(l){return new a(l.value)};function i(l,c){typeof c=="function"&&(a.prototype[l]=s(c))}function o(l,c){K6(a.prototype,l,function(){var m=c();if(typeof m=="function")return s(m)})}function s(l){return function(){if(arguments.length===0)return new a(l(this.value));for(var c=[this.value],f=0;f<arguments.length;f++)c[f+1]=arguments[f];if(n.isTypedFunction(l)){var m=n.resolve(l,c);if(m.params.length===1)throw new Error("chain function "+l.name+" cannot match rest parameter between chain value and additional arguments.");return new a(m.implementation.apply(l,c))}return new a(l.apply(l,c))}}a.createProxy=function(l,c){if(typeof l=="string")i(l,c);else{var f=function(p){Pe(l,p)&&u[p]===void 0&&o(p,()=>l[p])};for(var m in l)f(m)}};var u={expression:!0,docs:!0,type:!0,classes:!0,json:!0,error:!0,isChain:!0};return a.createProxy(r),t&&t("import",function(l,c,f){f||o(l,c)}),a},{isClass:!0}),by={name:"e",category:"Constants",syntax:["e"],description:"Euler's number, the base of the natural logarithm. Approximately equal to 2.71828",examples:["e","e ^ 2","exp(2)","log(e)"],seealso:["exp"]},nU={name:"false",category:"Constants",syntax:["false"],description:"Boolean value false",examples:["false"],seealso:["true"]},aU={name:"i",category:"Constants",syntax:["i"],description:"Imaginary unit, defined as i*i=-1. A complex number is described as a + b*i, where a is the real part, and b is the imaginary part.",examples:["i","i * i","sqrt(-1)"],seealso:[]},iU={name:"Infinity",category:"Constants",syntax:["Infinity"],description:"Infinity, a number which is larger than the maximum number that can be handled by a floating point number.",examples:["Infinity","1 / 0"],seealso:[]},oU={name:"LN10",category:"Constants",syntax:["LN10"],description:"Returns the natural logarithm of 10, approximately equal to 2.302",examples:["LN10","log(10)"],seealso:[]},sU={name:"LN2",category:"Constants",syntax:["LN2"],description:"Returns the natural logarithm of 2, approximately equal to 0.693",examples:["LN2","log(2)"],seealso:[]},uU={name:"LOG10E",category:"Constants",syntax:["LOG10E"],description:"Returns the base-10 logarithm of E, approximately equal to 0.434",examples:["LOG10E","log(e, 10)"],seealso:[]},lU={name:"LOG2E",category:"Constants",syntax:["LOG2E"],description:"Returns the base-2 logarithm of E, approximately equal to 1.442",examples:["LOG2E","log(e, 2)"],seealso:[]},cU={name:"NaN",category:"Constants",syntax:["NaN"],description:"Not a number",examples:["NaN","0 / 0"],seealso:[]},fU={name:"null",category:"Constants",syntax:["null"],description:"Value null",examples:["null"],seealso:["true","false"]},mU={name:"phi",category:"Constants",syntax:["phi"],description:"Phi is the golden ratio. Two quantities are in the golden ratio if their ratio is the same as the ratio of their sum to the larger of the two quantities. Phi is defined as `(1 + sqrt(5)) / 2` and is approximately 1.618034...",examples:["phi"],seealso:[]},wy={name:"pi",category:"Constants",syntax:["pi"],description:"The number pi is a mathematical constant that is the ratio of a circle's circumference to its diameter, and is approximately equal to 3.14159",examples:["pi","sin(pi/2)"],seealso:["tau"]},dU={name:"SQRT1_2",category:"Constants",syntax:["SQRT1_2"],description:"Returns the square root of 1/2, approximately equal to 0.707",examples:["SQRT1_2","sqrt(1/2)"],seealso:[]},hU={name:"SQRT2",category:"Constants",syntax:["SQRT2"],description:"Returns the square root of 2, approximately equal to 1.414",examples:["SQRT2","sqrt(2)"],seealso:[]},pU={name:"tau",category:"Constants",syntax:["tau"],description:"Tau is the ratio constant of a circle's circumference to radius, equal to 2 * pi, approximately 6.2832.",examples:["tau","2 * pi"],seealso:["pi"]},gU={name:"true",category:"Constants",syntax:["true"],description:"Boolean value true",examples:["true"],seealso:["false"]},vU={name:"version",category:"Constants",syntax:["version"],description:"A string with the version number of math.js",examples:["version"],seealso:[]},yU={name:"bignumber",category:"Construction",syntax:["bignumber(x)"],description:"Create a big number from a number or string.",examples:["0.1 + 0.2","bignumber(0.1) + bignumber(0.2)",'bignumber("7.2")','bignumber("7.2e500")',"bignumber([0.1, 0.2, 0.3])"],seealso:["boolean","bigint","complex","fraction","index","matrix","string","unit"]},bU={name:"bigint",category:"Construction",syntax:["bigint(x)"],description:"Create a bigint, an integer with an arbitrary number of digits, from a number or string.",examples:["123123123123123123 # a large number will lose digits",'bigint("123123123123123123")','bignumber(["1", "3", "5"])'],seealso:["boolean","bignumber","number","complex","fraction","index","matrix","string","unit"]},wU={name:"boolean",category:"Construction",syntax:["x","boolean(x)"],description:"Convert a string or number into a boolean.",examples:["boolean(0)","boolean(1)","boolean(3)",'boolean("true")','boolean("false")',"boolean([1, 0, 1, 1])"],seealso:["bignumber","complex","index","matrix","number","string","unit"]},xU={name:"complex",category:"Construction",syntax:["complex()","complex(re, im)","complex(string)"],description:"Create a complex number.",examples:["complex()","complex(2, 3)",'complex("7 - 2i")'],seealso:["bignumber","boolean","index","matrix","number","string","unit"]},DU={name:"createUnit",category:"Construction",syntax:["createUnit(definitions)","createUnit(name, definition)"],description:"Create a user-defined unit and register it with the Unit type.",examples:['createUnit("foo")','createUnit("knot", {definition: "0.514444444 m/s", aliases: ["knots", "kt", "kts"]})','createUnit("mph", "1 mile/hour")'],seealso:["unit","splitUnit"]},NU={name:"fraction",category:"Construction",syntax:["fraction(num)","fraction(matrix)","fraction(num,den)","fraction({n: num, d: den})"],description:"Create a fraction from a number or from integer numerator and denominator.",examples:["fraction(0.125)","fraction(1, 3) + fraction(2, 5)","fraction({n: 333, d: 53})","fraction([sqrt(9), sqrt(10), sqrt(11)])"],seealso:["bignumber","boolean","complex","index","matrix","string","unit"]},AU={name:"index",category:"Construction",syntax:["[start]","[start:end]","[start:step:end]","[start1, start 2, ...]","[start1:end1, start2:end2, ...]","[start1:step1:end1, start2:step2:end2, ...]"],description:"Create an index to get or replace a subset of a matrix",examples:["A = [1, 2, 3; 4, 5, 6]","A[1, :]","A[1, 2] = 50","A[1:2, 1:2] = 1","B = [1, 2, 3]","B[B>1 and B<3]"],seealso:["bignumber","boolean","complex","matrix","number","range","string","unit"]},CU={name:"matrix",category:"Construction",syntax:["[]","[a1, b1, ...; a2, b2, ...]","matrix()",'matrix("dense")',"matrix([...])"],description:"Create a matrix.",examples:["[]","[1, 2, 3]","[1, 2, 3; 4, 5, 6]","matrix()","matrix([3, 4])",'matrix([3, 4; 5, 6], "sparse")','matrix([3, 4; 5, 6], "sparse", "number")'],seealso:["bignumber","boolean","complex","index","number","string","unit","sparse"]},EU={name:"number",category:"Construction",syntax:["x","number(x)","number(unit, valuelessUnit)"],description:"Create a number or convert a string or boolean into a number.",examples:["2","2e3","4.05","number(2)",'number("7.2")',"number(true)","number([true, false, true, true])",'number(unit("52cm"), "m")'],seealso:["bignumber","bigint","boolean","complex","fraction","index","matrix","string","unit"]},SU={name:"sparse",category:"Construction",syntax:["sparse()","sparse([a1, b1, ...; a1, b2, ...])",'sparse([a1, b1, ...; a1, b2, ...], "number")'],description:"Create a sparse matrix.",examples:["sparse()","sparse([3, 4; 5, 6])",'sparse([3, 0; 5, 0], "number")'],seealso:["bignumber","boolean","complex","index","number","string","unit","matrix"]},TU={name:"splitUnit",category:"Construction",syntax:["splitUnit(unit: Unit, parts: Unit[])"],description:"Split a unit in an array of units whose sum is equal to the original unit.",examples:['splitUnit(1 m, ["feet", "inch"])'],seealso:["unit","createUnit"]},MU={name:"string",category:"Construction",syntax:['"text"',"string(x)"],description:"Create a string or convert a value to a string",examples:['"Hello World!"',"string(4.2)","string(3 + 2i)"],seealso:["bignumber","boolean","complex","index","matrix","number","unit"]},FU={name:"unit",category:"Construction",syntax:["value unit","unit(value, unit)","unit(string)"],description:"Create a unit.",examples:["5.5 mm","3 inch",'unit(7.1, "kilogram")','unit("23 deg")'],seealso:["bignumber","boolean","complex","index","matrix","number","string"]},PU={name:"config",category:"Core",syntax:["config()","config(options)"],description:"Get configuration or change configuration.",examples:["config()","1/3 + 1/4",'config({number: "Fraction"})',"1/3 + 1/4"],seealso:[]},kU={name:"import",category:"Core",syntax:["import(functions)","import(functions, options)"],description:"Import functions or constants from an object.",examples:["import({myFn: f(x)=x^2, myConstant: 32 })","myFn(2)","myConstant"],seealso:[]},OU={name:"typed",category:"Core",syntax:["typed(signatures)","typed(name, signatures)"],description:"Create a typed function.",examples:['double = typed({ "number": f(x)=x+x, "string": f(x)=concat(x,x) })',"double(2)",'double("hello")'],seealso:[]},$U={name:"derivative",category:"Algebra",syntax:["derivative(expr, variable)","derivative(expr, variable, {simplify: boolean})"],description:"Takes the derivative of an expression expressed in parser Nodes. The derivative will be taken over the supplied variable in the second parameter. If there are multiple variables in the expression, it will return a partial derivative.",examples:['derivative("2x^3", "x")','derivative("2x^3", "x", {simplify: false})','derivative("2x^2 + 3x + 4", "x")','derivative("sin(2x)", "x")','f = parse("x^2 + x")','x = parse("x")',"df = derivative(f, x)","df.evaluate({x: 3})"],seealso:["simplify","parse","evaluate"]},BU={name:"leafCount",category:"Algebra",syntax:["leafCount(expr)"],description:"Computes the number of leaves in the parse tree of the given expression",examples:['leafCount("e^(i*pi)-1")','leafCount(parse("{a: 22/7, b: 10^(1/2)}"))'],seealso:["simplify"]},_U={name:"lsolve",category:"Algebra",syntax:["x=lsolve(L, b)"],description:"Finds one solution of the linear system L * x = b where L is an [n x n] lower triangular matrix and b is a [n] column vector.",examples:["a = [-2, 3; 2, 1]","b = [11, 9]","x = lsolve(a, b)"],seealso:["lsolveAll","lup","lusolve","usolve","matrix","sparse"]},IU={name:"lsolveAll",category:"Algebra",syntax:["x=lsolveAll(L, b)"],description:"Finds all solutions of the linear system L * x = b where L is an [n x n] lower triangular matrix and b is a [n] column vector.",examples:["a = [-2, 3; 2, 1]","b = [11, 9]","x = lsolve(a, b)"],seealso:["lsolve","lup","lusolve","usolve","matrix","sparse"]},zU={name:"lup",category:"Algebra",syntax:["lup(m)"],description:"Calculate the Matrix LU decomposition with partial pivoting. Matrix A is decomposed in three matrices (L, U, P) where P * A = L * U",examples:["lup([[2, 1], [1, 4]])","lup(matrix([[2, 1], [1, 4]]))","lup(sparse([[2, 1], [1, 4]]))"],seealso:["lusolve","lsolve","usolve","matrix","sparse","slu","qr"]},jU={name:"lusolve",category:"Algebra",syntax:["x=lusolve(A, b)","x=lusolve(lu, b)"],description:"Solves the linear system A * x = b where A is an [n x n] matrix and b is a [n] column vector.",examples:["a = [-2, 3; 2, 1]","b = [11, 9]","x = lusolve(a, b)"],seealso:["lup","slu","lsolve","usolve","matrix","sparse"]},qU={name:"polynomialRoot",category:"Algebra",syntax:["x=polynomialRoot(-6, 3)","x=polynomialRoot(4, -4, 1)","x=polynomialRoot(-8, 12, -6, 1)"],description:"Finds the roots of a univariate polynomial given by its coefficients starting from constant, linear, and so on, increasing in degree.",examples:["a = polynomialRoot(-6, 11, -6, 1)"],seealso:["cbrt","sqrt"]},RU={name:"qr",category:"Algebra",syntax:["qr(A)"],description:"Calculates the Matrix QR decomposition. Matrix `A` is decomposed in two matrices (`Q`, `R`) where `Q` is an orthogonal matrix and `R` is an upper triangular matrix.",examples:["qr([[1, -1, 4], [1, 4, -2], [1, 4, 2], [1, -1, 0]])"],seealso:["lup","slu","matrix"]},LU={name:"rationalize",category:"Algebra",syntax:["rationalize(expr)","rationalize(expr, scope)","rationalize(expr, scope, detailed)"],description:"Transform a rationalizable expression in a rational fraction. If rational fraction is one variable polynomial then converts the numerator and denominator in canonical form, with decreasing exponents, returning the coefficients of numerator.",examples:['rationalize("2x/y - y/(x+1)")','rationalize("2x/y - y/(x+1)", true)'],seealso:["simplify"]},HU={name:"resolve",category:"Algebra",syntax:["resolve(node, scope)"],description:"Recursively substitute variables in an expression tree.",examples:['resolve(parse("1 + x"), { x: 7 })','resolve(parse("size(text)"), { text: "Hello World" })','resolve(parse("x + y"), { x: parse("3z") })','resolve(parse("3x"), { x: parse("y+z"), z: parse("w^y") })'],seealso:["simplify","evaluate"],mayThrow:["ReferenceError"]},GU={name:"simplify",category:"Algebra",syntax:["simplify(expr)","simplify(expr, rules)"],description:"Simplify an expression tree.",examples:['simplify("3 + 2 / 4")','simplify("2x + x")','f = parse("x * (x + 2 + x)")',"simplified = simplify(f)","simplified.evaluate({x: 2})"],seealso:["simplifyCore","derivative","evaluate","parse","rationalize","resolve"]},VU={name:"simplifyConstant",category:"Algebra",syntax:["simplifyConstant(expr)","simplifyConstant(expr, options)"],description:"Replace constant subexpressions of node with their values.",examples:['simplifyConstant("(3-3)*x")','simplifyConstant(parse("z-cos(tau/8)"))'],seealso:["simplify","simplifyCore","evaluate"]},UU={name:"simplifyCore",category:"Algebra",syntax:["simplifyCore(node)"],description:"Perform simple one-pass simplifications on an expression tree.",examples:['simplifyCore(parse("0*x"))','simplifyCore(parse("(x+0)*2"))'],seealso:["simplify","simplifyConstant","evaluate"]},WU={name:"slu",category:"Algebra",syntax:["slu(A, order, threshold)"],description:"Calculate the Matrix LU decomposition with full pivoting. Matrix A is decomposed in two matrices (L, U) and two permutation vectors (pinv, q) where P * A * Q = L * U",examples:["slu(sparse([4.5, 0, 3.2, 0; 3.1, 2.9, 0, 0.9; 0, 1.7, 3, 0; 3.5, 0.4, 0, 1]), 1, 0.001)"],seealso:["lusolve","lsolve","usolve","matrix","sparse","lup","qr"]},JU={name:"symbolicEqual",category:"Algebra",syntax:["symbolicEqual(expr1, expr2)","symbolicEqual(expr1, expr2, options)"],description:"Returns true if the difference of the expressions simplifies to 0",examples:['symbolicEqual("x*y","y*x")','symbolicEqual("abs(x^2)", "x^2")','symbolicEqual("abs(x)", "x", {context: {abs: {trivial: true}}})'],seealso:["simplify","evaluate"]},KU={name:"usolve",category:"Algebra",syntax:["x=usolve(U, b)"],description:"Finds one solution of the linear system U * x = b where U is an [n x n] upper triangular matrix and b is a [n] column vector.",examples:["x=usolve(sparse([1, 1, 1, 1; 0, 1, 1, 1; 0, 0, 1, 1; 0, 0, 0, 1]), [1; 2; 3; 4])"],seealso:["usolveAll","lup","lusolve","lsolve","matrix","sparse"]},YU={name:"usolveAll",category:"Algebra",syntax:["x=usolve(U, b)"],description:"Finds all solutions of the linear system U * x = b where U is an [n x n] upper triangular matrix and b is a [n] column vector.",examples:["x=usolve(sparse([1, 1, 1, 1; 0, 1, 1, 1; 0, 0, 1, 1; 0, 0, 0, 1]), [1; 2; 3; 4])"],seealso:["usolve","lup","lusolve","lsolve","matrix","sparse"]},ZU={name:"abs",category:"Arithmetic",syntax:["abs(x)"],description:"Compute the absolute value.",examples:["abs(3.5)","abs(-4.2)"],seealso:["sign"]},QU={name:"add",category:"Operators",syntax:["x + y","add(x, y)"],description:"Add two values.",examples:["a = 2.1 + 3.6","a - 3.6","3 + 2i","3 cm + 2 inch",'"2.3" + "4"'],seealso:["subtract"]},XU={name:"cbrt",category:"Arithmetic",syntax:["cbrt(x)","cbrt(x, allRoots)"],description:"Compute the cubic root value. If x = y * y * y, then y is the cubic root of x. When `x` is a number or complex number, an optional second argument `allRoots` can be provided to return all three cubic roots. If not provided, the principal root is returned",examples:["cbrt(64)","cube(4)","cbrt(-8)","cbrt(2 + 3i)","cbrt(8i)","cbrt(8i, true)","cbrt(27 m^3)"],seealso:["square","sqrt","cube","multiply"]},eW={name:"ceil",category:"Arithmetic",syntax:["ceil(x)","ceil(x, n)","ceil(unit, valuelessUnit)","ceil(unit, n, valuelessUnit)"],description:"Round a value towards plus infinity. If x is complex, both real and imaginary part are rounded towards plus infinity.",examples:["ceil(3.2)","ceil(3.8)","ceil(-4.2)","ceil(3.241cm, cm)","ceil(3.241cm, 2, cm)"],seealso:["floor","fix","round"]},tW={name:"cube",category:"Arithmetic",syntax:["cube(x)"],description:"Compute the cube of a value. The cube of x is x * x * x.",examples:["cube(2)","2^3","2 * 2 * 2"],seealso:["multiply","square","pow"]},rW={name:"divide",category:"Operators",syntax:["x / y","divide(x, y)"],description:"Divide two values.",examples:["a = 2 / 3","a * 3","4.5 / 2","3 + 4 / 2","(3 + 4) / 2","18 km / 4.5"],seealso:["multiply"]},nW={name:"dotDivide",category:"Operators",syntax:["x ./ y","dotDivide(x, y)"],description:"Divide two values element wise.",examples:["a = [1, 2, 3; 4, 5, 6]","b = [2, 1, 1; 3, 2, 5]","a ./ b"],seealso:["multiply","dotMultiply","divide"]},aW={name:"dotMultiply",category:"Operators",syntax:["x .* y","dotMultiply(x, y)"],description:"Multiply two values element wise.",examples:["a = [1, 2, 3; 4, 5, 6]","b = [2, 1, 1; 3, 2, 5]","a .* b"],seealso:["multiply","divide","dotDivide"]},iW={name:"dotPow",category:"Operators",syntax:["x .^ y","dotPow(x, y)"],description:"Calculates the power of x to y element wise.",examples:["a = [1, 2, 3; 4, 5, 6]","a .^ 2"],seealso:["pow"]},oW={name:"exp",category:"Arithmetic",syntax:["exp(x)"],description:"Calculate the exponent of a value.",examples:["exp(1.3)","e ^ 1.3","log(exp(1.3))","x = 2.4","(exp(i*x) == cos(x) + i*sin(x)) # Euler's formula"],seealso:["expm","expm1","pow","log"]},sW={name:"expm",category:"Arithmetic",syntax:["exp(x)"],description:"Compute the matrix exponential, expm(A) = e^A. The matrix must be square. Not to be confused with exp(a), which performs element-wise exponentiation.",examples:["expm([[0,2],[0,0]])"],seealso:["exp"]},uW={name:"expm1",category:"Arithmetic",syntax:["expm1(x)"],description:"Calculate the value of subtracting 1 from the exponential value.",examples:["expm1(2)","pow(e, 2) - 1","log(expm1(2) + 1)"],seealso:["exp","pow","log"]},lW={name:"fix",category:"Arithmetic",syntax:["fix(x)","fix(x, n)","fix(unit, valuelessUnit)","fix(unit, n, valuelessUnit)"],description:"Round a value towards zero. If x is complex, both real and imaginary part are rounded towards zero.",examples:["fix(3.2)","fix(3.8)","fix(-4.2)","fix(-4.8)","fix(3.241cm, cm)","fix(3.241cm, 2, cm)"],seealso:["ceil","floor","round"]},cW={name:"floor",category:"Arithmetic",syntax:["floor(x)","floor(x, n)","floor(unit, valuelessUnit)","floor(unit, n, valuelessUnit)"],description:"Round a value towards minus infinity.If x is complex, both real and imaginary part are rounded towards minus infinity.",examples:["floor(3.2)","floor(3.8)","floor(-4.2)","floor(3.241cm, cm)","floor(3.241cm, 2, cm)"],seealso:["ceil","fix","round"]},fW={name:"gcd",category:"Arithmetic",syntax:["gcd(a, b)","gcd(a, b, c, ...)"],description:"Compute the greatest common divisor.",examples:["gcd(8, 12)","gcd(-4, 6)","gcd(25, 15, -10)"],seealso:["lcm","xgcd"]},mW={name:"hypot",category:"Arithmetic",syntax:["hypot(a, b, c, ...)","hypot([a, b, c, ...])"],description:"Calculate the hypotenuse of a list with values.",examples:["hypot(3, 4)","sqrt(3^2 + 4^2)","hypot(-2)","hypot([3, 4, 5])"],seealso:["abs","norm"]},dW={name:"invmod",category:"Arithmetic",syntax:["invmod(a, b)"],description:"Calculate the (modular) multiplicative inverse of a modulo b. Solution to the equation ax ≣ 1 (mod b)",examples:["invmod(8, 12)","invmod(7, 13)","invmod(15151, 15122)"],seealso:["gcd","xgcd"]},hW={name:"lcm",category:"Arithmetic",syntax:["lcm(x, y)"],description:"Compute the least common multiple.",examples:["lcm(4, 6)","lcm(6, 21)","lcm(6, 21, 5)"],seealso:["gcd"]},pW={name:"log",category:"Arithmetic",syntax:["log(x)","log(x, base)"],description:"Compute the logarithm of a value. If no base is provided, the natural logarithm of x is calculated. If base if provided, the logarithm is calculated for the specified base. log(x, base) is defined as log(x) / log(base).",examples:["log(3.5)","a = log(2.4)","exp(a)","10 ^ 4","log(10000, 10)","log(10000) / log(10)","b = log(1024, 2)","2 ^ b"],seealso:["exp","log1p","log2","log10"]},gW={name:"log10",category:"Arithmetic",syntax:["log10(x)"],description:"Compute the 10-base logarithm of a value.",examples:["log10(0.00001)","log10(10000)","10 ^ 4","log(10000) / log(10)","log(10000, 10)"],seealso:["exp","log"]},vW={name:"log1p",category:"Arithmetic",syntax:["log1p(x)","log1p(x, base)"],description:"Calculate the logarithm of a `value+1`",examples:["log1p(2.5)","exp(log1p(1.4))","pow(10, 4)","log1p(9999, 10)","log1p(9999) / log(10)"],seealso:["exp","log","log2","log10"]},yW={name:"log2",category:"Arithmetic",syntax:["log2(x)"],description:"Calculate the 2-base of a value. This is the same as calculating `log(x, 2)`.",examples:["log2(0.03125)","log2(16)","log2(16) / log2(2)","pow(2, 4)"],seealso:["exp","log1p","log","log10"]},bW={name:"mod",category:"Operators",syntax:["x % y","x mod y","mod(x, y)"],description:"Calculates the modulus, the remainder of an integer division.",examples:["7 % 3","11 % 2","10 mod 4","isOdd(x) = x % 2","isOdd(2)","isOdd(3)"],seealso:["divide"]},wW={name:"multiply",category:"Operators",syntax:["x * y","multiply(x, y)"],description:"multiply two values.",examples:["a = 2.1 * 3.4","a / 3.4","2 * 3 + 4","2 * (3 + 4)","3 * 2.1 km"],seealso:["divide"]},xW={name:"norm",category:"Arithmetic",syntax:["norm(x)","norm(x, p)"],description:"Calculate the norm of a number, vector or matrix.",examples:["abs(-3.5)","norm(-3.5)","norm(3 - 4i)","norm([1, 2, -3], Infinity)","norm([1, 2, -3], -Infinity)","norm([3, 4], 2)","norm([[1, 2], [3, 4]], 1)",'norm([[1, 2], [3, 4]], "inf")','norm([[1, 2], [3, 4]], "fro")']},DW={name:"nthRoot",category:"Arithmetic",syntax:["nthRoot(a)","nthRoot(a, root)"],description:'Calculate the nth root of a value. The principal nth root of a positive real number A, is the positive real solution of the equation "x^root = A".',examples:["4 ^ 3","nthRoot(64, 3)","nthRoot(9, 2)","sqrt(9)"],seealso:["nthRoots","pow","sqrt"]},NW={name:"nthRoots",category:"Arithmetic",syntax:["nthRoots(A)","nthRoots(A, root)"],description:'Calculate the nth roots of a value. An nth root of a positive real number A, is a positive real solution of the equation "x^root = A". This function returns an array of complex values.',examples:["nthRoots(1)","nthRoots(1, 3)"],seealso:["sqrt","pow","nthRoot"]},AW={name:"pow",category:"Operators",syntax:["x ^ y","pow(x, y)"],description:"Calculates the power of x to y, x^y.",examples:["2^3","2*2*2","1 + e ^ (pi * i)","pow([[1, 2], [4, 3]], 2)","pow([[1, 2], [4, 3]], -1)"],seealso:["multiply","nthRoot","nthRoots","sqrt"]},CW={name:"round",category:"Arithmetic",syntax:["round(x)","round(x, n)","round(unit, valuelessUnit)","round(unit, n, valuelessUnit)"],description:"round a value towards the nearest integer.If x is complex, both real and imaginary part are rounded towards the nearest integer. When n is specified, the value is rounded to n decimals.",examples:["round(3.2)","round(3.8)","round(-4.2)","round(-4.8)","round(pi, 3)","round(123.45678, 2)","round(3.241cm, 2, cm)","round([3.2, 3.8, -4.7])"],seealso:["ceil","floor","fix"]},EW={name:"sign",category:"Arithmetic",syntax:["sign(x)"],description:"Compute the sign of a value. The sign of a value x is 1 when x>0, -1 when x<0, and 0 when x=0.",examples:["sign(3.5)","sign(-4.2)","sign(0)"],seealso:["abs"]},SW={name:"sqrt",category:"Arithmetic",syntax:["sqrt(x)"],description:"Compute the square root value. If x = y * y, then y is the square root of x.",examples:["sqrt(25)","5 * 5","sqrt(-1)"],seealso:["square","sqrtm","multiply","nthRoot","nthRoots","pow"]},TW={name:"sqrtm",category:"Arithmetic",syntax:["sqrtm(x)"],description:"Calculate the principal square root of a square matrix. The principal square root matrix `X` of another matrix `A` is such that `X * X = A`.",examples:["sqrtm([[33, 24], [48, 57]])"],seealso:["sqrt","abs","square","multiply"]},MW={name:"sylvester",category:"Algebra",syntax:["sylvester(A,B,C)"],description:"Solves the real-valued Sylvester equation AX+XB=C for X",examples:["sylvester([[-1, -2], [1, 1]], [[-2, 1], [-1, 2]], [[-3, 2], [3, 0]])","A = [[-1, -2], [1, 1]]; B = [[2, -1], [1, -2]]; C = [[-3, 2], [3, 0]]","sylvester(A, B, C)"],seealso:["schur","lyap"]},FW={name:"schur",category:"Algebra",syntax:["schur(A)"],description:"Performs a real Schur decomposition of the real matrix A = UTU'",examples:["schur([[1, 0], [-4, 3]])","A = [[1, 0], [-4, 3]]","schur(A)"],seealso:["lyap","sylvester"]},PW={name:"lyap",category:"Algebra",syntax:["lyap(A,Q)"],description:"Solves the Continuous-time Lyapunov equation AP+PA'+Q=0 for P",examples:["lyap([[-2, 0], [1, -4]], [[3, 1], [1, 3]])","A = [[-2, 0], [1, -4]]","Q = [[3, 1], [1, 3]]","lyap(A,Q)"],seealso:["schur","sylvester"]},kW={name:"square",category:"Arithmetic",syntax:["square(x)"],description:"Compute the square of a value. The square of x is x * x.",examples:["square(3)","sqrt(9)","3^2","3 * 3"],seealso:["multiply","pow","sqrt","cube"]},OW={name:"subtract",category:"Operators",syntax:["x - y","subtract(x, y)"],description:"subtract two values.",examples:["a = 5.3 - 2","a + 2","2/3 - 1/6","2 * 3 - 3","2.1 km - 500m"],seealso:["add"]},$W={name:"unaryMinus",category:"Operators",syntax:["-x","unaryMinus(x)"],description:"Inverse the sign of a value. Converts booleans and strings to numbers.",examples:["-4.5","-(-5.6)",'-"22"'],seealso:["add","subtract","unaryPlus"]},BW={name:"unaryPlus",category:"Operators",syntax:["+x","unaryPlus(x)"],description:"Converts booleans and strings to numbers.",examples:["+true",'+"2"'],seealso:["add","subtract","unaryMinus"]},_W={name:"xgcd",category:"Arithmetic",syntax:["xgcd(a, b)"],description:"Calculate the extended greatest common divisor for two values. The result is an array [d, x, y] with 3 entries, where d is the greatest common divisor, and d = x * a + y * b.",examples:["xgcd(8, 12)","gcd(8, 12)","xgcd(36163, 21199)"],seealso:["gcd","lcm"]},IW={name:"bitAnd",category:"Bitwise",syntax:["x & y","bitAnd(x, y)"],description:"Bitwise AND operation. Performs the logical AND operation on each pair of the corresponding bits of the two given values by multiplying them. If both bits in the compared position are 1, the bit in the resulting binary representation is 1, otherwise, the result is 0",examples:["5 & 3","bitAnd(53, 131)","[1, 12, 31] & 42"],seealso:["bitNot","bitOr","bitXor","leftShift","rightArithShift","rightLogShift"]},zW={name:"bitNot",category:"Bitwise",syntax:["~x","bitNot(x)"],description:"Bitwise NOT operation. Performs a logical negation on each bit of the given value. Bits that are 0 become 1, and those that are 1 become 0.",examples:["~1","~2","bitNot([2, -3, 4])"],seealso:["bitAnd","bitOr","bitXor","leftShift","rightArithShift","rightLogShift"]},jW={name:"bitOr",category:"Bitwise",syntax:["x | y","bitOr(x, y)"],description:"Bitwise OR operation. Performs the logical inclusive OR operation on each pair of corresponding bits of the two given values. The result in each position is 1 if the first bit is 1 or the second bit is 1 or both bits are 1, otherwise, the result is 0.",examples:["5 | 3","bitOr([1, 2, 3], 4)"],seealso:["bitAnd","bitNot","bitXor","leftShift","rightArithShift","rightLogShift"]},qW={name:"bitXor",category:"Bitwise",syntax:["bitXor(x, y)"],description:"Bitwise XOR operation, exclusive OR. Performs the logical exclusive OR operation on each pair of corresponding bits of the two given values. The result in each position is 1 if only the first bit is 1 or only the second bit is 1, but will be 0 if both are 0 or both are 1.",examples:["bitOr(1, 2)","bitXor([2, 3, 4], 4)"],seealso:["bitAnd","bitNot","bitOr","leftShift","rightArithShift","rightLogShift"]},RW={name:"leftShift",category:"Bitwise",syntax:["x << y","leftShift(x, y)"],description:"Bitwise left logical shift of a value x by y number of bits.",examples:["4 << 1","8 >> 1"],seealso:["bitAnd","bitNot","bitOr","bitXor","rightArithShift","rightLogShift"]},LW={name:"rightArithShift",category:"Bitwise",syntax:["x >> y","rightArithShift(x, y)"],description:"Bitwise right arithmetic shift of a value x by y number of bits.",examples:["8 >> 1","4 << 1","-12 >> 2"],seealso:["bitAnd","bitNot","bitOr","bitXor","leftShift","rightLogShift"]},HW={name:"rightLogShift",category:"Bitwise",syntax:["x >>> y","rightLogShift(x, y)"],description:"Bitwise right logical shift of a value x by y number of bits.",examples:["8 >>> 1","4 << 1","-12 >>> 2"],seealso:["bitAnd","bitNot","bitOr","bitXor","leftShift","rightArithShift"]},GW={name:"bellNumbers",category:"Combinatorics",syntax:["bellNumbers(n)"],description:"The Bell Numbers count the number of partitions of a set. A partition is a pairwise disjoint subset of S whose union is S. `bellNumbers` only takes integer arguments. The following condition must be enforced: n >= 0.",examples:["bellNumbers(3)","bellNumbers(8)"],seealso:["stirlingS2"]},VW={name:"catalan",category:"Combinatorics",syntax:["catalan(n)"],description:"The Catalan Numbers enumerate combinatorial structures of many different types. catalan only takes integer arguments. The following condition must be enforced: n >= 0.",examples:["catalan(3)","catalan(8)"],seealso:["bellNumbers"]},UW={name:"composition",category:"Combinatorics",syntax:["composition(n, k)"],description:"The composition counts of n into k parts. composition only takes integer arguments. The following condition must be enforced: k <= n.",examples:["composition(5, 3)"],seealso:["combinations"]},WW={name:"stirlingS2",category:"Combinatorics",syntax:["stirlingS2(n, k)"],description:"he Stirling numbers of the second kind, counts the number of ways to partition a set of n labelled objects into k nonempty unlabelled subsets. `stirlingS2` only takes integer arguments. The following condition must be enforced: k <= n. If n = k or k = 1, then s(n,k) = 1.",examples:["stirlingS2(5, 3)"],seealso:["bellNumbers"]},JW={name:"arg",category:"Complex",syntax:["arg(x)"],description:"Compute the argument of a complex value. If x = a+bi, the argument is computed as atan2(b, a).",examples:["arg(2 + 2i)","atan2(3, 2)","arg(2 + 3i)"],seealso:["re","im","conj","abs"]},KW={name:"conj",category:"Complex",syntax:["conj(x)"],description:"Compute the complex conjugate of a complex value. If x = a+bi, the complex conjugate is a-bi.",examples:["conj(2 + 3i)","conj(2 - 3i)","conj(-5.2i)"],seealso:["re","im","abs","arg"]},YW={name:"im",category:"Complex",syntax:["im(x)"],description:"Get the imaginary part of a complex number.",examples:["im(2 + 3i)","re(2 + 3i)","im(-5.2i)","im(2.4)"],seealso:["re","conj","abs","arg"]},ZW={name:"re",category:"Complex",syntax:["re(x)"],description:"Get the real part of a complex number.",examples:["re(2 + 3i)","im(2 + 3i)","re(-5.2i)","re(2.4)"],seealso:["im","conj","abs","arg"]},QW={name:"evaluate",category:"Expression",syntax:["evaluate(expression)","evaluate(expression, scope)","evaluate([expr1, expr2, expr3, ...])","evaluate([expr1, expr2, expr3, ...], scope)"],description:"Evaluate an expression or an array with expressions.",examples:['evaluate("2 + 3")','evaluate("sqrt(16)")','evaluate("2 inch to cm")','evaluate("sin(x * pi)", { "x": 1/2 })','evaluate(["width=2", "height=4","width*height"])'],seealso:["parser","parse","compile"]},XW={name:"parser",category:"Expression",syntax:["parser()"],description:"Create a parser object that keeps a context of variables and their values, allowing the evaluation of expressions in that context.",examples:["myParser = parser()",'myParser.evaluate("sqrt(3^2 + 4^2)")','myParser.set("x", 3)','myParser.evaluate("y = x + 3")','myParser.evaluate(["y = x + 3", "y = y + 1"])','myParser.get("y")'],seealso:["evaluate","parse","compile"]},eJ={name:"parse",category:"Expression",syntax:["parse(expr)","parse(expr, options)","parse([expr1, expr2, expr3, ...])","parse([expr1, expr2, expr3, ...], options)"],description:"Parse an expression. Returns a node tree, which can be evaluated by invoking node.evaluate() or transformed into a functional object via node.compile().",examples:['node1 = parse("sqrt(3^2 + 4^2)")',"node1.evaluate()","code1 = node1.compile()","code1.evaluate()","scope = {a: 3, b: 4}",'node2 = parse("a * b")',"node2.evaluate(scope)","code2 = node2.compile()","code2.evaluate(scope)"],seealso:["parser","evaluate","compile"]},tJ={name:"compile",category:"Expression",syntax:["compile(expr) ","compile([expr1, expr2, expr3, ...])"],description:"Parse and compile an expression. Returns a an object with a function evaluate([scope]) to evaluate the compiled expression.",examples:['code1 = compile("sqrt(3^2 + 4^2)")',"code1.evaluate() ",'code2 = compile("a * b")',"code2.evaluate({a: 3, b: 4})"],seealso:["parser","parse","evaluate"]},rJ={name:"help",category:"Expression",syntax:["help(object)","help(string)"],description:"Display documentation on a function or data type.",examples:["help(sqrt)",'help("complex")'],seealso:[]},nJ={name:"distance",category:"Geometry",syntax:["distance([x1, y1], [x2, y2])","distance([[x1, y1], [x2, y2]])"],description:"Calculates the Euclidean distance between two points.",examples:["distance([0,0], [4,4])","distance([[0,0], [4,4]])"],seealso:[]},aJ={name:"intersect",category:"Geometry",syntax:["intersect(expr1, expr2, expr3, expr4)","intersect(expr1, expr2, expr3)"],description:"Computes the intersection point of lines and/or planes.",examples:["intersect([0, 0], [10, 10], [10, 0], [0, 10])","intersect([1, 0, 1], [4, -2, 2], [1, 1, 1, 6])"],seealso:[]},iJ={name:"and",category:"Logical",syntax:["x and y","and(x, y)"],description:"Logical and. Test whether two values are both defined with a nonzero/nonempty value.",examples:["true and false","true and true","2 and 4"],seealso:["not","or","xor"]},oJ={name:"not",category:"Logical",syntax:["not x","not(x)"],description:"Logical not. Flips the boolean value of given argument.",examples:["not true","not false","not 2","not 0"],seealso:["and","or","xor"]},sJ={name:"or",category:"Logical",syntax:["x or y","or(x, y)"],description:"Logical or. Test if at least one value is defined with a nonzero/nonempty value.",examples:["true or false","false or false","0 or 4"],seealso:["not","and","xor"]},uJ={name:"xor",category:"Logical",syntax:["x xor y","xor(x, y)"],description:"Logical exclusive or, xor. Test whether one and only one value is defined with a nonzero/nonempty value.",examples:["true xor false","false xor false","true xor true","0 xor 4"],seealso:["not","and","or"]},lJ={name:"mapSlices",category:"Matrix",syntax:["mapSlices(A, dim, callback)"],description:"Generate a matrix one dimension less than A by applying callback to each slice of A along dimension dim.",examples:["A = [[1, 2], [3, 4]]","mapSlices(A, 1, sum)","mapSlices(A, 2, prod)"],seealso:["map","forEach"]},cJ={name:"column",category:"Matrix",syntax:["column(x, index)"],description:"Return a column from a matrix or array.",examples:["A = [[1, 2], [3, 4]]","column(A, 1)","column(A, 2)"],seealso:["row","matrixFromColumns"]},fJ={name:"concat",category:"Matrix",syntax:["concat(A, B, C, ...)","concat(A, B, C, ..., dim)"],description:"Concatenate matrices. By default, the matrices are concatenated by the last dimension. The dimension on which to concatenate can be provided as last argument.",examples:["A = [1, 2; 5, 6]","B = [3, 4; 7, 8]","concat(A, B)","concat(A, B, 1)","concat(A, B, 2)"],seealso:["det","diag","identity","inv","ones","range","size","squeeze","subset","trace","transpose","zeros"]},mJ={name:"count",category:"Matrix",syntax:["count(x)"],description:"Count the number of elements of a matrix, array or string.",examples:["a = [1, 2; 3, 4; 5, 6]","count(a)","size(a)",'count("hello world")'],seealso:["size"]},dJ={name:"cross",category:"Matrix",syntax:["cross(A, B)"],description:"Calculate the cross product for two vectors in three dimensional space.",examples:["cross([1, 1, 0], [0, 1, 1])","cross([3, -3, 1], [4, 9, 2])","cross([2, 3, 4], [5, 6, 7])"],seealso:["multiply","dot"]},hJ={name:"ctranspose",category:"Matrix",syntax:["x'","ctranspose(x)"],description:"Complex Conjugate and Transpose a matrix",examples:["a = [1, 2, 3; 4, 5, 6]","a'","ctranspose(a)"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","subset","trace","zeros"]},pJ={name:"det",category:"Matrix",syntax:["det(x)"],description:"Calculate the determinant of a matrix",examples:["det([1, 2; 3, 4])","det([-2, 2, 3; -1, 1, 3; 2, 0, -1])"],seealso:["concat","diag","identity","inv","ones","range","size","squeeze","subset","trace","transpose","zeros"]},gJ={name:"diag",category:"Matrix",syntax:["diag(x)","diag(x, k)"],description:"Create a diagonal matrix or retrieve the diagonal of a matrix. When x is a vector, a matrix with the vector values on the diagonal will be returned. When x is a matrix, a vector with the diagonal values of the matrix is returned. When k is provided, the k-th diagonal will be filled in or retrieved, if k is positive, the values are placed on the super diagonal. When k is negative, the values are placed on the sub diagonal.",examples:["diag(1:3)","diag(1:3, 1)","a = [1, 2, 3; 4, 5, 6; 7, 8, 9]","diag(a)"],seealso:["concat","det","identity","inv","ones","range","size","squeeze","subset","trace","transpose","zeros"]},vJ={name:"diff",category:"Matrix",syntax:["diff(arr)","diff(arr, dim)"],description:["Create a new matrix or array with the difference of the passed matrix or array.","Dim parameter is optional and used to indicate the dimension of the array/matrix to apply the difference","If no dimension parameter is passed it is assumed as dimension 0","Dimension is zero-based in javascript and one-based in the parser","Arrays must be 'rectangular' meaning arrays like [1, 2]","If something is passed as a matrix it will be returned as a matrix but other than that all matrices are converted to arrays"],examples:["A = [1, 2, 4, 7, 0]","diff(A)","diff(A, 1)","B = [[1, 2], [3, 4]]","diff(B)","diff(B, 1)","diff(B, 2)","diff(B, bignumber(2))","diff([[1, 2], matrix([3, 4])], 2)"],seealso:["subtract","partitionSelect"]},yJ={name:"dot",category:"Matrix",syntax:["dot(A, B)","A * B"],description:"Calculate the dot product of two vectors. The dot product of A = [a1, a2, a3, ..., an] and B = [b1, b2, b3, ..., bn] is defined as dot(A, B) = a1 * b1 + a2 * b2 + a3 * b3 + ... + an * bn",examples:["dot([2, 4, 1], [2, 2, 3])","[2, 4, 1] * [2, 2, 3]"],seealso:["multiply","cross"]},bJ={name:"eigs",category:"Matrix",syntax:["eigs(x)"],description:"Calculate the eigenvalues and optionally eigenvectors of a square matrix",examples:["eigs([[5, 2.3], [2.3, 1]])","eigs([[1, 2, 3], [4, 5, 6], [7, 8, 9]], { precision: 1e-6, eigenvectors: false })"],seealso:["inv"]},wJ={name:"filter",category:"Matrix",syntax:["filter(x, test)"],description:"Filter items in a matrix.",examples:["isPositive(x) = x > 0","filter([6, -2, -1, 4, 3], isPositive)","filter([6, -2, 0, 1, 0], x != 0)"],seealso:["sort","map","forEach"]},xJ={name:"flatten",category:"Matrix",syntax:["flatten(x)"],description:"Flatten a multi dimensional matrix into a single dimensional matrix.",examples:["a = [1, 2, 3; 4, 5, 6]","size(a)","b = flatten(a)","size(b)"],seealso:["concat","resize","size","squeeze"]},DJ={name:"forEach",category:"Matrix",syntax:["forEach(x, callback)"],description:"Iterates over all elements of a matrix/array, and executes the given callback function.",examples:["numberOfPets = {}","addPet(n) = numberOfPets[n] = (numberOfPets[n] ? numberOfPets[n]:0 ) + 1;",'forEach(["Dog","Cat","Cat"], addPet)',"numberOfPets"],seealso:["map","sort","filter"]},NJ={name:"getMatrixDataType",category:"Matrix",syntax:["getMatrixDataType(x)"],description:'Find the data type of all elements in a matrix or array, for example "number" if all items are a number and "Complex" if all values are complex numbers. If a matrix contains more than one data type, it will return "mixed".',examples:["getMatrixDataType([1, 2, 3])","getMatrixDataType([[5 cm], [2 inch]])",'getMatrixDataType([1, "text"])',"getMatrixDataType([1, bignumber(4)])"],seealso:["matrix","sparse","typeOf"]},AJ={name:"identity",category:"Matrix",syntax:["identity(n)","identity(m, n)","identity([m, n])"],description:"Returns the identity matrix with size m-by-n. The matrix has ones on the diagonal and zeros elsewhere.",examples:["identity(3)","identity(3, 5)","a = [1, 2, 3; 4, 5, 6]","identity(size(a))"],seealso:["concat","det","diag","inv","ones","range","size","squeeze","subset","trace","transpose","zeros"]},CJ={name:"inv",category:"Matrix",syntax:["inv(x)"],description:"Calculate the inverse of a matrix",examples:["inv([1, 2; 3, 4])","inv(4)","1 / 4"],seealso:["concat","det","diag","identity","ones","range","size","squeeze","subset","trace","transpose","zeros"]},EJ={name:"pinv",category:"Matrix",syntax:["pinv(x)"],description:"Calculate the Moore–Penrose inverse of a matrix",examples:["pinv([1, 2; 3, 4])","pinv([[1, 0], [0, 1], [0, 1]])","pinv(4)"],seealso:["inv"]},SJ={name:"kron",category:"Matrix",syntax:["kron(x, y)"],description:"Calculates the Kronecker product of 2 matrices or vectors.",examples:["kron([[1, 0], [0, 1]], [[1, 2], [3, 4]])","kron([1,1], [2,3,4])"],seealso:["multiply","dot","cross"]},TJ={name:"map",category:"Matrix",syntax:["map(x, callback)","map(x, y, ..., callback)"],description:"Create a new matrix or array with the results of the callback function executed on each entry of the matrix/array or the matrices/arrays.",examples:["map([1, 2, 3], square)","map([1, 2], [3, 4], f(a,b) = a + b)"],seealso:["filter","forEach"]},MJ={name:"matrixFromColumns",category:"Matrix",syntax:["matrixFromColumns(...arr)","matrixFromColumns(row1, row2)","matrixFromColumns(row1, row2, row3)"],description:"Create a dense matrix from vectors as individual columns.",examples:["matrixFromColumns([1, 2, 3], [[4],[5],[6]])"],seealso:["matrix","matrixFromRows","matrixFromFunction","zeros"]},FJ={name:"matrixFromFunction",category:"Matrix",syntax:["matrixFromFunction(size, fn)","matrixFromFunction(size, fn, format)","matrixFromFunction(size, fn, format, datatype)","matrixFromFunction(size, format, fn)","matrixFromFunction(size, format, datatype, fn)"],description:"Create a matrix by evaluating a generating function at each index.",examples:["f(I) = I[1] - I[2]","matrixFromFunction([3,3], f)","g(I) = I[1] - I[2] == 1 ? 4 : 0",'matrixFromFunction([100, 100], "sparse", g)',"matrixFromFunction([5], random)"],seealso:["matrix","matrixFromRows","matrixFromColumns","zeros"]},PJ={name:"matrixFromRows",category:"Matrix",syntax:["matrixFromRows(...arr)","matrixFromRows(row1, row2)","matrixFromRows(row1, row2, row3)"],description:"Create a dense matrix from vectors as individual rows.",examples:["matrixFromRows([1, 2, 3], [[4],[5],[6]])"],seealso:["matrix","matrixFromColumns","matrixFromFunction","zeros"]},kJ={name:"ones",category:"Matrix",syntax:["ones(m)","ones(m, n)","ones(m, n, p, ...)","ones([m])","ones([m, n])","ones([m, n, p, ...])"],description:"Create a matrix containing ones.",examples:["ones(3)","ones(3, 5)","ones([2,3]) * 4.5","a = [1, 2, 3; 4, 5, 6]","ones(size(a))"],seealso:["concat","det","diag","identity","inv","range","size","squeeze","subset","trace","transpose","zeros"]},OJ={name:"partitionSelect",category:"Matrix",syntax:["partitionSelect(x, k)","partitionSelect(x, k, compare)"],description:"Partition-based selection of an array or 1D matrix. Will find the kth smallest value, and mutates the input array. Uses Quickselect.",examples:["partitionSelect([5, 10, 1], 2)",'partitionSelect(["C", "B", "A", "D"], 1, compareText)',"arr = [5, 2, 1]","partitionSelect(arr, 0) # returns 1, arr is now: [1, 2, 5]","arr","partitionSelect(arr, 1, 'desc') # returns 2, arr is now: [5, 2, 1]","arr"],seealso:["sort"]},$J={name:"range",category:"Type",syntax:["start:end","start:step:end","range(start, end)","range(start, end, step)","range(string)"],description:"Create a range. Lower bound of the range is included, upper bound is excluded.",examples:["1:5","3:-1:-3","range(3, 7)","range(0, 12, 2)",'range("4:10")',"range(1m, 1m, 3m)","a = [1, 2, 3, 4; 5, 6, 7, 8]","a[1:2, 1:2]"],seealso:["concat","det","diag","identity","inv","ones","size","squeeze","subset","trace","transpose","zeros"]},BJ={name:"reshape",category:"Matrix",syntax:["reshape(x, sizes)"],description:"Reshape a multi dimensional array to fit the specified dimensions.",examples:["reshape([1, 2, 3, 4, 5, 6], [2, 3])","reshape([[1, 2], [3, 4]], [1, 4])","reshape([[1, 2], [3, 4]], [4])","reshape([1, 2, 3, 4], [-1, 2])"],seealso:["size","squeeze","resize"]},_J={name:"resize",category:"Matrix",syntax:["resize(x, size)","resize(x, size, defaultValue)"],description:"Resize a matrix.",examples:["resize([1,2,3,4,5], [3])","resize([1,2,3], [5])","resize([1,2,3], [5], -1)","resize(2, [2, 3])",'resize("hello", [8], "!")'],seealso:["size","subset","squeeze","reshape"]},IJ={name:"rotate",category:"Matrix",syntax:["rotate(w, theta)","rotate(w, theta, v)"],description:"Returns a 2-D rotation matrix (2x2) for a given angle (in radians). Returns a 2-D rotation matrix (3x3) of a given angle (in radians) around given axis.",examples:["rotate([1, 0], pi / 2)",'rotate(matrix([1, 0]), unit("35deg"))','rotate([1, 0, 0], unit("90deg"), [0, 0, 1])','rotate(matrix([1, 0, 0]), unit("90deg"), matrix([0, 0, 1]))'],seealso:["matrix","rotationMatrix"]},zJ={name:"rotationMatrix",category:"Matrix",syntax:["rotationMatrix(theta)","rotationMatrix(theta, v)","rotationMatrix(theta, v, format)"],description:"Returns a 2-D rotation matrix (2x2) for a given angle (in radians). Returns a 2-D rotation matrix (3x3) of a given angle (in radians) around given axis.",examples:["rotationMatrix(pi / 2)",'rotationMatrix(unit("45deg"), [0, 0, 1])','rotationMatrix(1, matrix([0, 0, 1]), "sparse")'],seealso:["cos","sin"]},jJ={name:"row",category:"Matrix",syntax:["row(x, index)"],description:"Return a row from a matrix or array.",examples:["A = [[1, 2], [3, 4]]","row(A, 1)","row(A, 2)"],seealso:["column","matrixFromRows"]},qJ={name:"size",category:"Matrix",syntax:["size(x)"],description:"Calculate the size of a matrix.",examples:["size(2.3)",'size("hello world")',"a = [1, 2; 3, 4; 5, 6]","size(a)","size(1:6)"],seealso:["concat","count","det","diag","identity","inv","ones","range","squeeze","subset","trace","transpose","zeros"]},RJ={name:"sort",category:"Matrix",syntax:["sort(x)","sort(x, compare)"],description:'Sort the items in a matrix. Compare can be a string "asc", "desc", "natural", or a custom sort function.',examples:["sort([5, 10, 1])",'sort(["C", "B", "A", "D"], "natural")',"sortByLength(a, b) = size(a)[1] - size(b)[1]",'sort(["Langdon", "Tom", "Sara"], sortByLength)','sort(["10", "1", "2"], "natural")'],seealso:["map","filter","forEach"]},LJ={name:"squeeze",category:"Matrix",syntax:["squeeze(x)"],description:"Remove inner and outer singleton dimensions from a matrix.",examples:["a = zeros(3,2,1)","size(squeeze(a))","b = zeros(1,1,3)","size(squeeze(b))"],seealso:["concat","det","diag","identity","inv","ones","range","size","subset","trace","transpose","zeros"]},HJ={name:"subset",category:"Matrix",syntax:["value(index)","value(index) = replacement","subset(value, [index])","subset(value, [index], replacement)"],description:"Get or set a subset of the entries of a matrix or characters of a string. Indexes are one-based. There should be one index specification for each dimension of the target. Each specification can be a single index, a list of indices, or a range in colon notation `l:u`. In a range, both the lower bound l and upper bound u are included; and if a bound is omitted it defaults to the most extreme valid value. The cartesian product of the indices specified in each dimension determines the target of the operation.",examples:["d = [1, 2; 3, 4]","e = []","e[1, 1:2] = [5, 6]","e[2, :] = [7, 8]","f = d * e","f[2, 1]","f[:, 1]","f[[1,2], [1,3]] = [9, 10; 11, 12]","f"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","trace","transpose","zeros"]},GJ={name:"trace",category:"Matrix",syntax:["trace(A)"],description:"Calculate the trace of a matrix: the sum of the elements on the main diagonal of a square matrix.",examples:["A = [1, 2, 3; -1, 2, 3; 2, 0, 3]","trace(A)"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","subset","transpose","zeros"]},VJ={name:"transpose",category:"Matrix",syntax:["x'","transpose(x)"],description:"Transpose a matrix",examples:["a = [1, 2, 3; 4, 5, 6]","a'","transpose(a)"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","subset","trace","zeros"]},UJ={name:"zeros",category:"Matrix",syntax:["zeros(m)","zeros(m, n)","zeros(m, n, p, ...)","zeros([m])","zeros([m, n])","zeros([m, n, p, ...])"],description:"Create a matrix containing zeros.",examples:["zeros(3)","zeros(3, 5)","a = [1, 2, 3; 4, 5, 6]","zeros(size(a))"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","subset","trace","transpose"]},WJ={name:"fft",category:"Matrix",syntax:["fft(x)"],description:"Calculate N-dimensional Fourier transform",examples:["fft([[1, 0], [1, 0]])"],seealso:["ifft"]},JJ={name:"ifft",category:"Matrix",syntax:["ifft(x)"],description:"Calculate N-dimensional inverse Fourier transform",examples:["ifft([[2, 2], [0, 0]])"],seealso:["fft"]},KJ={name:"combinations",category:"Probability",syntax:["combinations(n, k)"],description:"Compute the number of combinations of n items taken k at a time",examples:["combinations(7, 5)"],seealso:["combinationsWithRep","permutations","factorial"]},YJ={name:"combinationsWithRep",category:"Probability",syntax:["combinationsWithRep(n, k)"],description:"Compute the number of combinations of n items taken k at a time with replacements.",examples:["combinationsWithRep(7, 5)"],seealso:["combinations","permutations","factorial"]},ZJ={name:"factorial",category:"Probability",syntax:["n!","factorial(n)"],description:"Compute the factorial of a value",examples:["5!","5 * 4 * 3 * 2 * 1","3!"],seealso:["combinations","combinationsWithRep","permutations","gamma"]},QJ={name:"gamma",category:"Probability",syntax:["gamma(n)"],description:"Compute the gamma function. For small values, the Lanczos approximation is used, and for large values the extended Stirling approximation.",examples:["gamma(4)","3!","gamma(1/2)","sqrt(pi)"],seealso:["factorial"]},XJ={name:"lgamma",category:"Probability",syntax:["lgamma(n)"],description:"Logarithm of the gamma function for real, positive numbers and complex numbers, using Lanczos approximation for numbers and Stirling series for complex numbers.",examples:["lgamma(4)","lgamma(1/2)","lgamma(i)","lgamma(complex(1.1, 2))"],seealso:["gamma"]},eK={name:"kldivergence",category:"Probability",syntax:["kldivergence(x, y)"],description:"Calculate the Kullback-Leibler (KL) divergence between two distributions.",examples:["kldivergence([0.7,0.5,0.4], [0.2,0.9,0.5])"],seealso:[]},tK={name:"multinomial",category:"Probability",syntax:["multinomial(A)"],description:"Multinomial Coefficients compute the number of ways of picking a1, a2, ..., ai unordered outcomes from `n` possibilities. multinomial takes one array of integers as an argument. The following condition must be enforced: every ai > 0.",examples:["multinomial([1, 2, 1])"],seealso:["combinations","factorial"]},rK={name:"permutations",category:"Probability",syntax:["permutations(n)","permutations(n, k)"],description:"Compute the number of permutations of n items taken k at a time",examples:["permutations(5)","permutations(5, 3)"],seealso:["combinations","combinationsWithRep","factorial"]},nK={name:"pickRandom",category:"Probability",syntax:["pickRandom(array)","pickRandom(array, number)","pickRandom(array, weights)","pickRandom(array, number, weights)","pickRandom(array, weights, number)"],description:"Pick a random entry from a given array.",examples:["pickRandom(0:10)","pickRandom([1, 3, 1, 6])","pickRandom([1, 3, 1, 6], 2)","pickRandom([1, 3, 1, 6], [2, 3, 2, 1])","pickRandom([1, 3, 1, 6], 2, [2, 3, 2, 1])","pickRandom([1, 3, 1, 6], [2, 3, 2, 1], 2)"],seealso:["random","randomInt"]},aK={name:"random",category:"Probability",syntax:["random()","random(max)","random(min, max)","random(size)","random(size, max)","random(size, min, max)"],description:"Return a random number.",examples:["random()","random(10, 20)","random([2, 3])"],seealso:["pickRandom","randomInt"]},iK={name:"randomInt",category:"Probability",syntax:["randomInt(max)","randomInt(min, max)","randomInt(size)","randomInt(size, max)","randomInt(size, min, max)"],description:"Return a random integer number",examples:["randomInt(10, 20)","randomInt([2, 3], 10)"],seealso:["pickRandom","random"]},oK={name:"compare",category:"Relational",syntax:["compare(x, y)"],description:"Compare two values. Returns 1 when x > y, -1 when x < y, and 0 when x == y.",examples:["compare(2, 3)","compare(3, 2)","compare(2, 2)","compare(5cm, 40mm)","compare(2, [1, 2, 3])"],seealso:["equal","unequal","smaller","smallerEq","largerEq","compareNatural","compareText"]},sK={name:"compareNatural",category:"Relational",syntax:["compareNatural(x, y)"],description:"Compare two values of any type in a deterministic, natural way. Returns 1 when x > y, -1 when x < y, and 0 when x == y.",examples:["compareNatural(2, 3)","compareNatural(3, 2)","compareNatural(2, 2)","compareNatural(5cm, 40mm)",'compareNatural("2", "10")',"compareNatural(2 + 3i, 2 + 4i)","compareNatural([1, 2, 4], [1, 2, 3])","compareNatural([1, 5], [1, 2, 3])","compareNatural([1, 2], [1, 2])","compareNatural({a: 2}, {a: 4})"],seealso:["equal","unequal","smaller","smallerEq","largerEq","compare","compareText"]},uK={name:"compareText",category:"Relational",syntax:["compareText(x, y)"],description:"Compare two strings lexically. Comparison is case sensitive. Returns 1 when x > y, -1 when x < y, and 0 when x == y.",examples:['compareText("B", "A")','compareText("A", "B")','compareText("A", "A")','compareText("2", "10")','compare("2", "10")',"compare(2, 10)",'compareNatural("2", "10")','compareText("B", ["A", "B", "C"])'],seealso:["compare","compareNatural"]},lK={name:"deepEqual",category:"Relational",syntax:["deepEqual(x, y)"],description:"Check equality of two matrices element wise. Returns true if the size of both matrices is equal and when and each of the elements are equal.",examples:["deepEqual([1,3,4], [1,3,4])","deepEqual([1,3,4], [1,3])"],seealso:["equal","unequal","smaller","larger","smallerEq","largerEq","compare"]},cK={name:"equal",category:"Relational",syntax:["x == y","equal(x, y)"],description:"Check equality of two values. Returns true if the values are equal, and false if not.",examples:["2+2 == 3","2+2 == 4","a = 3.2","b = 6-2.8","a == b","50cm == 0.5m"],seealso:["unequal","smaller","larger","smallerEq","largerEq","compare","deepEqual","equalText"]},fK={name:"equalText",category:"Relational",syntax:["equalText(x, y)"],description:"Check equality of two strings. Comparison is case sensitive. Returns true if the values are equal, and false if not.",examples:['equalText("Hello", "Hello")','equalText("a", "A")','equal("2e3", "2000")','equalText("2e3", "2000")','equalText("B", ["A", "B", "C"])'],seealso:["compare","compareNatural","compareText","equal"]},mK={name:"larger",category:"Relational",syntax:["x > y","larger(x, y)"],description:"Check if value x is larger than y. Returns true if x is larger than y, and false if not. Comparing a value with NaN returns false.",examples:["2 > 3","5 > 2*2","a = 3.3","b = 6-2.8","(a > b)","(b < a)","5 cm > 2 inch"],seealso:["equal","unequal","smaller","smallerEq","largerEq","compare"]},dK={name:"largerEq",category:"Relational",syntax:["x >= y","largerEq(x, y)"],description:"Check if value x is larger or equal to y. Returns true if x is larger or equal to y, and false if not.",examples:["2 >= 1+1","2 > 1+1","a = 3.2","b = 6-2.8","(a >= b)"],seealso:["equal","unequal","smallerEq","smaller","compare"]},hK={name:"smaller",category:"Relational",syntax:["x < y","smaller(x, y)"],description:"Check if value x is smaller than value y. Returns true if x is smaller than y, and false if not. Comparing a value with NaN returns false.",examples:["2 < 3","5 < 2*2","a = 3.3","b = 6-2.8","(a < b)","5 cm < 2 inch"],seealso:["equal","unequal","larger","smallerEq","largerEq","compare"]},pK={name:"smallerEq",category:"Relational",syntax:["x <= y","smallerEq(x, y)"],description:"Check if value x is smaller or equal to value y. Returns true if x is smaller than y, and false if not.",examples:["2 <= 1+1","2 < 1+1","a = 3.2","b = 6-2.8","(a <= b)"],seealso:["equal","unequal","larger","smaller","largerEq","compare"]},gK={name:"unequal",category:"Relational",syntax:["x != y","unequal(x, y)"],description:"Check unequality of two values. Returns true if the values are unequal, and false if they are equal.",examples:["2+2 != 3","2+2 != 4","a = 3.2","b = 6-2.8","a != b","50cm != 0.5m","5 cm != 2 inch"],seealso:["equal","smaller","larger","smallerEq","largerEq","compare","deepEqual"]},vK={name:"setCartesian",category:"Set",syntax:["setCartesian(set1, set2)"],description:"Create the cartesian product of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays and the values will be sorted in ascending order before the operation.",examples:["setCartesian([1, 2], [3, 4])"],seealso:["setUnion","setIntersect","setDifference","setPowerset"]},yK={name:"setDifference",category:"Set",syntax:["setDifference(set1, set2)"],description:"Create the difference of two (multi)sets: every element of set1, that is not the element of set2. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setDifference([1, 2, 3, 4], [3, 4, 5, 6])","setDifference([[1, 2], [3, 4]], [[3, 4], [5, 6]])"],seealso:["setUnion","setIntersect","setSymDifference"]},bK={name:"setDistinct",category:"Set",syntax:["setDistinct(set)"],description:"Collect the distinct elements of a multiset. A multi-dimension array will be converted to a single-dimension array before the operation.",examples:["setDistinct([1, 1, 1, 2, 2, 3])"],seealso:["setMultiplicity"]},wK={name:"setIntersect",category:"Set",syntax:["setIntersect(set1, set2)"],description:"Create the intersection of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setIntersect([1, 2, 3, 4], [3, 4, 5, 6])","setIntersect([[1, 2], [3, 4]], [[3, 4], [5, 6]])"],seealso:["setUnion","setDifference"]},xK={name:"setIsSubset",category:"Set",syntax:["setIsSubset(set1, set2)"],description:"Check whether a (multi)set is a subset of another (multi)set: every element of set1 is the element of set2. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setIsSubset([1, 2], [3, 4, 5, 6])","setIsSubset([3, 4], [3, 4, 5, 6])"],seealso:["setUnion","setIntersect","setDifference"]},DK={name:"setMultiplicity",category:"Set",syntax:["setMultiplicity(element, set)"],description:"Count the multiplicity of an element in a multiset. A multi-dimension array will be converted to a single-dimension array before the operation.",examples:["setMultiplicity(1, [1, 2, 2, 4])","setMultiplicity(2, [1, 2, 2, 4])"],seealso:["setDistinct","setSize"]},NK={name:"setPowerset",category:"Set",syntax:["setPowerset(set)"],description:"Create the powerset of a (multi)set: the powerset contains very possible subsets of a (multi)set. A multi-dimension array will be converted to a single-dimension array before the operation.",examples:["setPowerset([1, 2, 3])"],seealso:["setCartesian"]},AK={name:"setSize",category:"Set",syntax:["setSize(set)","setSize(set, unique)"],description:'Count the number of elements of a (multi)set. When the second parameter "unique" is true, count only the unique values. A multi-dimension array will be converted to a single-dimension array before the operation.',examples:["setSize([1, 2, 2, 4])","setSize([1, 2, 2, 4], true)"],seealso:["setUnion","setIntersect","setDifference"]},CK={name:"setSymDifference",category:"Set",syntax:["setSymDifference(set1, set2)"],description:"Create the symmetric difference of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setSymDifference([1, 2, 3, 4], [3, 4, 5, 6])","setSymDifference([[1, 2], [3, 4]], [[3, 4], [5, 6]])"],seealso:["setUnion","setIntersect","setDifference"]},EK={name:"setUnion",category:"Set",syntax:["setUnion(set1, set2)"],description:"Create the union of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setUnion([1, 2, 3, 4], [3, 4, 5, 6])","setUnion([[1, 2], [3, 4]], [[3, 4], [5, 6]])"],seealso:["setIntersect","setDifference"]},SK={name:"zpk2tf",category:"Signal",syntax:["zpk2tf(z, p, k)"],description:"Compute the transfer function of a zero-pole-gain model.",examples:["zpk2tf([1, 2], [-1, -2], 1)","zpk2tf([1, 2], [-1, -2])","zpk2tf([1 - 3i, 2 + 2i], [-1, -2])"],seealso:[]},TK={name:"freqz",category:"Signal",syntax:["freqz(b, a)","freqz(b, a, w)"],description:"Calculates the frequency response of a filter given its numerator and denominator coefficients.",examples:["freqz([1, 2], [1, 2, 3])","freqz([1, 2], [1, 2, 3], [0, 1])","freqz([1, 2], [1, 2, 3], 512)"],seealso:[]},MK={name:"erf",category:"Special",syntax:["erf(x)"],description:"Compute the erf function of a value using a rational Chebyshev approximations for different intervals of x",examples:["erf(0.2)","erf(-0.5)","erf(4)"],seealso:[]},FK={name:"zeta",category:"Special",syntax:["zeta(s)"],description:"Compute the Riemann Zeta Function using an infinite series and Riemann's Functional Equation for the entire complex plane",examples:["zeta(0.2)","zeta(-0.5)","zeta(4)"],seealso:[]},PK={name:"mad",category:"Statistics",syntax:["mad(a, b, c, ...)","mad(A)"],description:"Compute the median absolute deviation of a matrix or a list with values. The median absolute deviation is defined as the median of the absolute deviations from the median.",examples:["mad(10, 20, 30)","mad([1, 2, 3])"],seealso:["mean","median","std","abs"]},kK={name:"max",category:"Statistics",syntax:["max(a, b, c, ...)","max(A)","max(A, dimension)"],description:"Compute the maximum value of a list of values. If any NaN values are found, the function yields the last NaN in the input.",examples:["max(2, 3, 4, 1)","max([2, 3, 4, 1])","max([2, 5; 4, 3])","max([2, 5; 4, 3], 1)","max([2, 5; 4, 3], 2)","max(2.7, 7.1, -4.5, 2.0, 4.1)","min(2.7, 7.1, -4.5, 2.0, 4.1)"],seealso:["mean","median","min","prod","std","sum","variance"]},OK={name:"mean",category:"Statistics",syntax:["mean(a, b, c, ...)","mean(A)","mean(A, dimension)"],description:"Compute the arithmetic mean of a list of values.",examples:["mean(2, 3, 4, 1)","mean([2, 3, 4, 1])","mean([2, 5; 4, 3])","mean([2, 5; 4, 3], 1)","mean([2, 5; 4, 3], 2)","mean([1.0, 2.7, 3.2, 4.0])"],seealso:["max","median","min","prod","std","sum","variance"]},$K={name:"median",category:"Statistics",syntax:["median(a, b, c, ...)","median(A)"],description:"Compute the median of all values. The values are sorted and the middle value is returned. In case of an even number of values, the average of the two middle values is returned.",examples:["median(5, 2, 7)","median([3, -1, 5, 7])"],seealso:["max","mean","min","prod","std","sum","variance","quantileSeq"]},BK={name:"min",category:"Statistics",syntax:["min(a, b, c, ...)","min(A)","min(A, dimension)"],description:"Compute the minimum value of a list of values. If any NaN values are found, the function yields the last NaN in the input.",examples:["min(2, 3, 4, 1)","min([2, 3, 4, 1])","min([2, 5; 4, 3])","min([2, 5; 4, 3], 1)","min([2, 5; 4, 3], 2)","min(2.7, 7.1, -4.5, 2.0, 4.1)","max(2.7, 7.1, -4.5, 2.0, 4.1)"],seealso:["max","mean","median","prod","std","sum","variance"]},_K={name:"mode",category:"Statistics",syntax:["mode(a, b, c, ...)","mode(A)","mode(A, a, b, B, c, ...)"],description:"Computes the mode of all values as an array. In case mode being more than one, multiple values are returned in an array.",examples:["mode(2, 1, 4, 3, 1)","mode([1, 2.7, 3.2, 4, 2.7])","mode(1, 4, 6, 1, 6)"],seealso:["max","mean","min","median","prod","std","sum","variance"]},IK={name:"prod",category:"Statistics",syntax:["prod(a, b, c, ...)","prod(A)"],description:"Compute the product of all values.",examples:["prod(2, 3, 4)","prod([2, 3, 4])","prod([2, 5; 4, 3])"],seealso:["max","mean","min","median","min","std","sum","variance"]},zK={name:"quantileSeq",category:"Statistics",syntax:["quantileSeq(A, prob[, sorted])","quantileSeq(A, [prob1, prob2, ...][, sorted])","quantileSeq(A, N[, sorted])"],description:`Compute the prob order quantile of a matrix or a list with values. The sequence is sorted and the middle value is returned. Supported types of sequence values are: Number, BigNumber, Unit Supported types of probability are: Number, BigNumber.
|
|
84
|
-
|
|
85
|
-
In case of a (multi dimensional) array or matrix, the prob order quantile of all elements will be calculated.`,examples:["quantileSeq([3, -1, 5, 7], 0.5)","quantileSeq([3, -1, 5, 7], [1/3, 2/3])","quantileSeq([3, -1, 5, 7], 2)","quantileSeq([-1, 3, 5, 7], 0.5, true)"],seealso:["mean","median","min","max","prod","std","sum","variance"]},jK={name:"std",category:"Statistics",syntax:["std(a, b, c, ...)","std(A)","std(A, dimension)","std(A, normalization)","std(A, dimension, normalization)"],description:'Compute the standard deviation of all values, defined as std(A) = sqrt(variance(A)). Optional parameter normalization can be "unbiased" (default), "uncorrected", or "biased".',examples:["std(2, 4, 6)","std([2, 4, 6, 8])",'std([2, 4, 6, 8], "uncorrected")','std([2, 4, 6, 8], "biased")',"std([1, 2, 3; 4, 5, 6])"],seealso:["max","mean","min","median","prod","sum","variance"]},qK={name:"cumsum",category:"Statistics",syntax:["cumsum(a, b, c, ...)","cumsum(A)"],description:"Compute the cumulative sum of all values.",examples:["cumsum(2, 3, 4, 1)","cumsum([2, 3, 4, 1])","cumsum([1, 2; 3, 4])","cumsum([1, 2; 3, 4], 1)","cumsum([1, 2; 3, 4], 2)"],seealso:["max","mean","median","min","prod","std","sum","variance"]},RK={name:"sum",category:"Statistics",syntax:["sum(a, b, c, ...)","sum(A)","sum(A, dimension)"],description:"Compute the sum of all values.",examples:["sum(2, 3, 4, 1)","sum([2, 3, 4, 1])","sum([2, 5; 4, 3])"],seealso:["max","mean","median","min","prod","std","variance"]},LK={name:"variance",category:"Statistics",syntax:["variance(a, b, c, ...)","variance(A)","variance(A, dimension)","variance(A, normalization)","variance(A, dimension, normalization)"],description:'Compute the variance of all values. Optional parameter normalization can be "unbiased" (default), "uncorrected", or "biased".',examples:["variance(2, 4, 6)","variance([2, 4, 6, 8])",'variance([2, 4, 6, 8], "uncorrected")','variance([2, 4, 6, 8], "biased")',"variance([1, 2, 3; 4, 5, 6])"],seealso:["max","mean","min","median","min","prod","std","sum"]},HK={name:"corr",category:"Statistics",syntax:["corr(A,B)"],description:"Compute the correlation coefficient of a two list with values, For matrices, the matrix correlation coefficient is calculated.",examples:["corr([2, 4, 6, 8],[1, 2, 3, 6])","corr(matrix([[1, 2.2, 3, 4.8, 5], [1, 2, 3, 4, 5]]), matrix([[4, 5.3, 6.6, 7, 8], [1, 2, 3, 4, 5]]))"],seealso:["max","mean","min","median","min","prod","std","sum"]},GK={name:"acos",category:"Trigonometry",syntax:["acos(x)"],description:"Compute the inverse cosine of a value in radians.",examples:["acos(0.5)","acos(cos(2.3))"],seealso:["cos","atan","asin"]},VK={name:"acosh",category:"Trigonometry",syntax:["acosh(x)"],description:"Calculate the hyperbolic arccos of a value, defined as `acosh(x) = ln(sqrt(x^2 - 1) + x)`.",examples:["acosh(1.5)"],seealso:["cosh","asinh","atanh"]},UK={name:"acot",category:"Trigonometry",syntax:["acot(x)"],description:"Calculate the inverse cotangent of a value.",examples:["acot(0.5)","acot(cot(0.5))","acot(2)"],seealso:["cot","atan"]},WK={name:"acoth",category:"Trigonometry",syntax:["acoth(x)"],description:"Calculate the inverse hyperbolic tangent of a value, defined as `acoth(x) = (ln((x+1)/x) + ln(x/(x-1))) / 2`.",examples:["acoth(2)","acoth(0.5)"],seealso:["acsch","asech"]},JK={name:"acsc",category:"Trigonometry",syntax:["acsc(x)"],description:"Calculate the inverse cotangent of a value.",examples:["acsc(2)","acsc(csc(0.5))","acsc(0.5)"],seealso:["csc","asin","asec"]},KK={name:"acsch",category:"Trigonometry",syntax:["acsch(x)"],description:"Calculate the inverse hyperbolic cosecant of a value, defined as `acsch(x) = ln(1/x + sqrt(1/x^2 + 1))`.",examples:["acsch(0.5)"],seealso:["asech","acoth"]},YK={name:"asec",category:"Trigonometry",syntax:["asec(x)"],description:"Calculate the inverse secant of a value.",examples:["asec(0.5)","asec(sec(0.5))","asec(2)"],seealso:["acos","acot","acsc"]},ZK={name:"asech",category:"Trigonometry",syntax:["asech(x)"],description:"Calculate the inverse secant of a value.",examples:["asech(0.5)"],seealso:["acsch","acoth"]},QK={name:"asin",category:"Trigonometry",syntax:["asin(x)"],description:"Compute the inverse sine of a value in radians.",examples:["asin(0.5)","asin(sin(0.5))"],seealso:["sin","acos","atan"]},XK={name:"asinh",category:"Trigonometry",syntax:["asinh(x)"],description:"Calculate the hyperbolic arcsine of a value, defined as `asinh(x) = ln(x + sqrt(x^2 + 1))`.",examples:["asinh(0.5)"],seealso:["acosh","atanh"]},eY={name:"atan",category:"Trigonometry",syntax:["atan(x)"],description:"Compute the inverse tangent of a value in radians.",examples:["atan(0.5)","atan(tan(0.5))"],seealso:["tan","acos","asin"]},tY={name:"atan2",category:"Trigonometry",syntax:["atan2(y, x)"],description:"Computes the principal value of the arc tangent of y/x in radians.",examples:["atan2(2, 2) / pi","angle = 60 deg in rad","x = cos(angle)","y = sin(angle)","atan2(y, x)"],seealso:["sin","cos","tan"]},rY={name:"atanh",category:"Trigonometry",syntax:["atanh(x)"],description:"Calculate the hyperbolic arctangent of a value, defined as `atanh(x) = ln((1 + x)/(1 - x)) / 2`.",examples:["atanh(0.5)"],seealso:["acosh","asinh"]},nY={name:"cos",category:"Trigonometry",syntax:["cos(x)"],description:"Compute the cosine of x in radians.",examples:["cos(2)","cos(pi / 4) ^ 2","cos(180 deg)","cos(60 deg)","sin(0.2)^2 + cos(0.2)^2"],seealso:["acos","sin","tan"]},aY={name:"cosh",category:"Trigonometry",syntax:["cosh(x)"],description:"Compute the hyperbolic cosine of x in radians.",examples:["cosh(0.5)"],seealso:["sinh","tanh","coth"]},iY={name:"cot",category:"Trigonometry",syntax:["cot(x)"],description:"Compute the cotangent of x in radians. Defined as 1/tan(x)",examples:["cot(2)","1 / tan(2)"],seealso:["sec","csc","tan"]},oY={name:"coth",category:"Trigonometry",syntax:["coth(x)"],description:"Compute the hyperbolic cotangent of x in radians.",examples:["coth(2)","1 / tanh(2)"],seealso:["sech","csch","tanh"]},sY={name:"csc",category:"Trigonometry",syntax:["csc(x)"],description:"Compute the cosecant of x in radians. Defined as 1/sin(x)",examples:["csc(2)","1 / sin(2)"],seealso:["sec","cot","sin"]},uY={name:"csch",category:"Trigonometry",syntax:["csch(x)"],description:"Compute the hyperbolic cosecant of x in radians. Defined as 1/sinh(x)",examples:["csch(2)","1 / sinh(2)"],seealso:["sech","coth","sinh"]},lY={name:"sec",category:"Trigonometry",syntax:["sec(x)"],description:"Compute the secant of x in radians. Defined as 1/cos(x)",examples:["sec(2)","1 / cos(2)"],seealso:["cot","csc","cos"]},cY={name:"sech",category:"Trigonometry",syntax:["sech(x)"],description:"Compute the hyperbolic secant of x in radians. Defined as 1/cosh(x)",examples:["sech(2)","1 / cosh(2)"],seealso:["coth","csch","cosh"]},fY={name:"sin",category:"Trigonometry",syntax:["sin(x)"],description:"Compute the sine of x in radians.",examples:["sin(2)","sin(pi / 4) ^ 2","sin(90 deg)","sin(30 deg)","sin(0.2)^2 + cos(0.2)^2"],seealso:["asin","cos","tan"]},mY={name:"sinh",category:"Trigonometry",syntax:["sinh(x)"],description:"Compute the hyperbolic sine of x in radians.",examples:["sinh(0.5)"],seealso:["cosh","tanh"]},dY={name:"tan",category:"Trigonometry",syntax:["tan(x)"],description:"Compute the tangent of x in radians.",examples:["tan(0.5)","sin(0.5) / cos(0.5)","tan(pi / 4)","tan(45 deg)"],seealso:["atan","sin","cos"]},hY={name:"tanh",category:"Trigonometry",syntax:["tanh(x)"],description:"Compute the hyperbolic tangent of x in radians.",examples:["tanh(0.5)","sinh(0.5) / cosh(0.5)"],seealso:["sinh","cosh"]},pY={name:"to",category:"Units",syntax:["x to unit","to(x, unit)"],description:"Change the unit of a value.",examples:["5 inch to cm","3.2kg to g","16 bytes in bits"],seealso:[]},gY={name:"toBest",category:"Units",syntax:["toBest(x)","toBest(x, unitList)","toBest(x, unitList, options)"],description:"Converts to the most appropriate display unit.",examples:['toBest(unit(5000, "m"))','toBest(unit(3500000, "W"))','toBest(unit(0.000000123, "A"))','toBest(unit(10, "m"), "cm")','toBest(unit(10, "m"), "mm,km", {offset: 1.5})'],seealso:[]},vY={name:"bin",category:"Utils",syntax:["bin(value)"],description:"Format a number as binary",examples:["bin(2)"],seealso:["oct","hex"]},yY={name:"clone",category:"Utils",syntax:["clone(x)"],description:"Clone a variable. Creates a copy of primitive variables, and a deep copy of matrices",examples:["clone(3.5)","clone(2 - 4i)","clone(45 deg)","clone([1, 2; 3, 4])",'clone("hello world")'],seealso:[]},bY={name:"format",category:"Utils",syntax:["format(value)","format(value, precision)"],description:"Format a value of any type as string.",examples:["format(2.3)","format(3 - 4i)","format([])","format(pi, 3)"],seealso:["print"]},wY={name:"hasNumericValue",category:"Utils",syntax:["hasNumericValue(x)"],description:"Test whether a value is an numeric value. In case of a string, true is returned if the string contains a numeric value.",examples:["hasNumericValue(2)",'hasNumericValue("2")','isNumeric("2")',"hasNumericValue(0)","hasNumericValue(bignumber(500))","hasNumericValue(fraction(0.125))","hasNumericValue(2 + 3i)",'hasNumericValue([2.3, "foo", false])'],seealso:["isInteger","isZero","isNegative","isPositive","isNaN","isNumeric"]},xY={name:"hex",category:"Utils",syntax:["hex(value)"],description:"Format a number as hexadecimal",examples:["hex(240)"],seealso:["bin","oct"]},DY={name:"isInteger",category:"Utils",syntax:["isInteger(x)"],description:"Test whether a value is an integer number.",examples:["isInteger(2)","isInteger(3.5)","isInteger([3, 0.5, -2])"],seealso:["isNegative","isNumeric","isPositive","isZero"]},NY={name:"isNaN",category:"Utils",syntax:["isNaN(x)"],description:"Test whether a value is NaN (not a number)",examples:["isNaN(2)","isNaN(0 / 0)","isNaN(NaN)","isNaN(Infinity)"],seealso:["isNegative","isNumeric","isPositive","isZero"]},AY={name:"isNegative",category:"Utils",syntax:["isNegative(x)"],description:"Test whether a value is negative: smaller than zero.",examples:["isNegative(2)","isNegative(0)","isNegative(-4)","isNegative([3, 0.5, -2])"],seealso:["isInteger","isNumeric","isPositive","isZero"]},CY={name:"isNumeric",category:"Utils",syntax:["isNumeric(x)"],description:"Test whether a value is a numeric value. Returns true when the input is a number, BigNumber, Fraction, or boolean.",examples:["isNumeric(2)",'isNumeric("2")','hasNumericValue("2")',"isNumeric(0)","isNumeric(bignumber(500))","isNumeric(fraction(0.125))","isNumeric(2 + 3i)",'isNumeric([2.3, "foo", false])'],seealso:["isInteger","isZero","isNegative","isPositive","isNaN","hasNumericValue"]},EY={name:"isPositive",category:"Utils",syntax:["isPositive(x)"],description:"Test whether a value is positive: larger than zero.",examples:["isPositive(2)","isPositive(0)","isPositive(-4)","isPositive([3, 0.5, -2])"],seealso:["isInteger","isNumeric","isNegative","isZero"]},SY={name:"isPrime",category:"Utils",syntax:["isPrime(x)"],description:"Test whether a value is prime: has no divisors other than itself and one.",examples:["isPrime(3)","isPrime(-2)","isPrime([2, 17, 100])"],seealso:["isInteger","isNumeric","isNegative","isZero"]},TY={name:"isZero",category:"Utils",syntax:["isZero(x)"],description:"Test whether a value is zero.",examples:["isZero(2)","isZero(0)","isZero(-4)","isZero([3, 0, -2, 0])"],seealso:["isInteger","isNumeric","isNegative","isPositive"]},MY={name:"numeric",category:"Utils",syntax:["numeric(x)"],description:"Convert a numeric input to a specific numeric type: number, BigNumber, bigint, or Fraction.",examples:['numeric("4")','numeric("4", "number")','numeric("4", "bigint")','numeric("4", "BigNumber")','numeric("4", "Fraction")','numeric(4, "Fraction")','numeric(fraction(2, 5), "number")'],seealso:["number","bigint","fraction","bignumber","string","format"]},FY={name:"oct",category:"Utils",syntax:["oct(value)"],description:"Format a number as octal",examples:["oct(56)"],seealso:["bin","hex"]},PY={name:"print",category:"Utils",syntax:["print(template, values)","print(template, values, precision)"],description:"Interpolate values into a string template.",examples:['print("Lucy is $age years old", {age: 5})','print("The value of pi is $pi", {pi: pi}, 3)','print("Hello, $user.name!", {user: {name: "John"}})','print("Values: $1, $2, $3", [6, 9, 4])'],seealso:["format"]},kY={name:"typeOf",category:"Utils",syntax:["typeOf(x)"],description:"Get the type of a variable.",examples:["typeOf(3.5)","typeOf(2 - 4i)","typeOf(45 deg)",'typeOf("hello world")'],seealso:["getMatrixDataType"]},OY={name:"solveODE",category:"Numeric",syntax:["solveODE(func, tspan, y0)","solveODE(func, tspan, y0, options)"],description:"Numerical Integration of Ordinary Differential Equations.",examples:["f(t,y) = y","tspan = [0, 4]","solveODE(f, tspan, 1)","solveODE(f, tspan, [1, 2])",'solveODE(f, tspan, 1, { method:"RK23", maxStep:0.1 })'],seealso:["derivative","simplifyCore"]},$Y={bignumber:yU,bigint:bU,boolean:wU,complex:xU,createUnit:DU,fraction:NU,index:AU,matrix:CU,number:EU,sparse:SU,splitUnit:TU,string:MU,unit:FU,e:by,E:by,false:nU,i:aU,Infinity:iU,LN2:sU,LN10:oU,LOG2E:lU,LOG10E:uU,NaN:cU,null:fU,pi:wy,PI:wy,phi:mU,SQRT1_2:dU,SQRT2:hU,tau:pU,true:gU,version:vU,speedOfLight:{description:"Speed of light in vacuum",examples:["speedOfLight"]},gravitationConstant:{description:"Newtonian constant of gravitation",examples:["gravitationConstant"]},planckConstant:{description:"Planck constant",examples:["planckConstant"]},reducedPlanckConstant:{description:"Reduced Planck constant",examples:["reducedPlanckConstant"]},magneticConstant:{description:"Magnetic constant (vacuum permeability)",examples:["magneticConstant"]},electricConstant:{description:"Electric constant (vacuum permeability)",examples:["electricConstant"]},vacuumImpedance:{description:"Characteristic impedance of vacuum",examples:["vacuumImpedance"]},coulomb:{description:"Coulomb's constant. Deprecated in favor of coulombConstant",examples:["coulombConstant"]},coulombConstant:{description:"Coulomb's constant",examples:["coulombConstant"]},elementaryCharge:{description:"Elementary charge",examples:["elementaryCharge"]},bohrMagneton:{description:"Bohr magneton",examples:["bohrMagneton"]},conductanceQuantum:{description:"Conductance quantum",examples:["conductanceQuantum"]},inverseConductanceQuantum:{description:"Inverse conductance quantum",examples:["inverseConductanceQuantum"]},magneticFluxQuantum:{description:"Magnetic flux quantum",examples:["magneticFluxQuantum"]},nuclearMagneton:{description:"Nuclear magneton",examples:["nuclearMagneton"]},klitzing:{description:"Von Klitzing constant",examples:["klitzing"]},bohrRadius:{description:"Bohr radius",examples:["bohrRadius"]},classicalElectronRadius:{description:"Classical electron radius",examples:["classicalElectronRadius"]},electronMass:{description:"Electron mass",examples:["electronMass"]},fermiCoupling:{description:"Fermi coupling constant",examples:["fermiCoupling"]},fineStructure:{description:"Fine-structure constant",examples:["fineStructure"]},hartreeEnergy:{description:"Hartree energy",examples:["hartreeEnergy"]},protonMass:{description:"Proton mass",examples:["protonMass"]},deuteronMass:{description:"Deuteron Mass",examples:["deuteronMass"]},neutronMass:{description:"Neutron mass",examples:["neutronMass"]},quantumOfCirculation:{description:"Quantum of circulation",examples:["quantumOfCirculation"]},rydberg:{description:"Rydberg constant",examples:["rydberg"]},thomsonCrossSection:{description:"Thomson cross section",examples:["thomsonCrossSection"]},weakMixingAngle:{description:"Weak mixing angle",examples:["weakMixingAngle"]},efimovFactor:{description:"Efimov factor",examples:["efimovFactor"]},atomicMass:{description:"Atomic mass constant",examples:["atomicMass"]},avogadro:{description:"Avogadro's number",examples:["avogadro"]},boltzmann:{description:"Boltzmann constant",examples:["boltzmann"]},faraday:{description:"Faraday constant",examples:["faraday"]},firstRadiation:{description:"First radiation constant",examples:["firstRadiation"]},loschmidt:{description:"Loschmidt constant at T=273.15 K and p=101.325 kPa",examples:["loschmidt"]},gasConstant:{description:"Gas constant",examples:["gasConstant"]},molarPlanckConstant:{description:"Molar Planck constant",examples:["molarPlanckConstant"]},molarVolume:{description:"Molar volume of an ideal gas at T=273.15 K and p=101.325 kPa",examples:["molarVolume"]},sackurTetrode:{description:"Sackur-Tetrode constant at T=1 K and p=101.325 kPa",examples:["sackurTetrode"]},secondRadiation:{description:"Second radiation constant",examples:["secondRadiation"]},stefanBoltzmann:{description:"Stefan-Boltzmann constant",examples:["stefanBoltzmann"]},wienDisplacement:{description:"Wien displacement law constant",examples:["wienDisplacement"]},molarMass:{description:"Molar mass constant",examples:["molarMass"]},molarMassC12:{description:"Molar mass constant of carbon-12",examples:["molarMassC12"]},gravity:{description:"Standard acceleration of gravity (standard acceleration of free-fall on Earth)",examples:["gravity"]},planckLength:{description:"Planck length",examples:["planckLength"]},planckMass:{description:"Planck mass",examples:["planckMass"]},planckTime:{description:"Planck time",examples:["planckTime"]},planckCharge:{description:"Planck charge",examples:["planckCharge"]},planckTemperature:{description:"Planck temperature",examples:["planckTemperature"]},derivative:$U,lsolve:_U,lsolveAll:IU,lup:zU,lusolve:jU,leafCount:BU,polynomialRoot:qU,resolve:HU,simplify:GU,simplifyConstant:VU,simplifyCore:UU,symbolicEqual:JU,rationalize:LU,slu:WU,usolve:KU,usolveAll:YU,qr:RU,abs:ZU,add:QU,cbrt:XU,ceil:eW,cube:tW,divide:rW,dotDivide:nW,dotMultiply:aW,dotPow:iW,exp:oW,expm:sW,expm1:uW,fix:lW,floor:cW,gcd:fW,hypot:mW,lcm:hW,log:pW,log2:yW,log1p:vW,log10:gW,mod:bW,multiply:wW,norm:xW,nthRoot:DW,nthRoots:NW,pow:AW,round:CW,sign:EW,sqrt:SW,sqrtm:TW,square:kW,subtract:OW,unaryMinus:$W,unaryPlus:BW,xgcd:_W,invmod:dW,bitAnd:IW,bitNot:zW,bitOr:jW,bitXor:qW,leftShift:RW,rightArithShift:LW,rightLogShift:HW,bellNumbers:GW,catalan:VW,composition:UW,stirlingS2:WW,config:PU,import:kU,typed:OU,arg:JW,conj:KW,re:ZW,im:YW,evaluate:QW,help:rJ,parse:eJ,parser:XW,compile:tJ,distance:nJ,intersect:aJ,and:iJ,not:oJ,or:sJ,xor:uJ,mapSlices:lJ,concat:fJ,count:mJ,cross:dJ,column:cJ,ctranspose:hJ,det:pJ,diag:gJ,diff:vJ,dot:yJ,getMatrixDataType:NJ,identity:AJ,filter:wJ,flatten:xJ,forEach:DJ,inv:CJ,pinv:EJ,eigs:bJ,kron:SJ,matrixFromFunction:FJ,matrixFromRows:PJ,matrixFromColumns:MJ,map:TJ,ones:kJ,partitionSelect:OJ,range:$J,resize:_J,reshape:BJ,rotate:IJ,rotationMatrix:zJ,row:jJ,size:qJ,sort:RJ,squeeze:LJ,subset:HJ,trace:GJ,transpose:VJ,zeros:UJ,fft:WJ,ifft:JJ,sylvester:MW,schur:FW,lyap:PW,solveODE:OY,combinations:KJ,combinationsWithRep:YJ,factorial:ZJ,gamma:QJ,kldivergence:eK,lgamma:XJ,multinomial:tK,permutations:rK,pickRandom:nK,random:aK,randomInt:iK,compare:oK,compareNatural:sK,compareText:uK,deepEqual:lK,equal:cK,equalText:fK,larger:mK,largerEq:dK,smaller:hK,smallerEq:pK,unequal:gK,setCartesian:vK,setDifference:yK,setDistinct:bK,setIntersect:wK,setIsSubset:xK,setMultiplicity:DK,setPowerset:NK,setSize:AK,setSymDifference:CK,setUnion:EK,zpk2tf:SK,freqz:TK,erf:MK,zeta:FK,cumsum:qK,mad:PK,max:kK,mean:OK,median:$K,min:BK,mode:_K,prod:IK,quantileSeq:zK,std:jK,sum:RK,variance:LK,corr:HK,acos:GK,acosh:VK,acot:UK,acoth:WK,acsc:JK,acsch:KK,asec:YK,asech:ZK,asin:QK,asinh:XK,atan:eY,atanh:rY,atan2:tY,cos:nY,cosh:aY,cot:iY,coth:oY,csc:sY,csch:uY,sec:lY,sech:cY,sin:fY,sinh:mY,tan:dY,tanh:hY,to:pY,toBest:gY,clone:yY,format:bY,bin:vY,oct:FY,hex:xY,isNaN:NY,isInteger:DY,isNegative:AY,isNumeric:CY,hasNumericValue:wY,isPositive:EY,isPrime:SY,isZero:TY,print:PY,typeOf:kY,numeric:MY},xy="help",BY=["typed","mathWithTransform","Help"],_Y=I(xy,BY,e=>{var{typed:t,mathWithTransform:r,Help:n}=e;return t(xy,{any:function(i){var o,s=i;if(typeof i!="string"){for(o in r)if(Pe(r,o)&&i===r[o]){s=o;break}}var u=Hr($Y,s);if(!u){var l=typeof s=="function"?s.name:s;throw new Error('No documentation found on "'+l+'"')}return new n(u)}})}),Dy="chain",IY=["typed","Chain"],zY=I(Dy,IY,e=>{var{typed:t,Chain:r}=e;return t(Dy,{"":function(){return new r},any:function(a){return new r(a)}})}),Ny="det",jY=["typed","matrix","subtractScalar","multiply","divideScalar","isZero","unaryMinus"],qY=I(Ny,jY,e=>{var{typed:t,matrix:r,subtractScalar:n,multiply:a,divideScalar:i,isZero:o,unaryMinus:s}=e;return t(Ny,{any:function(c){return We(c)},"Array | Matrix":function(c){var f;switch(Re(c)?f=c.size():Array.isArray(c)?(c=r(c),f=c.size()):f=[],f.length){case 0:return We(c);case 1:if(f[0]===1)return We(c.valueOf()[0]);if(f[0]===0)return 1;throw new RangeError("Matrix must be square (size: "+nt(f)+")");case 2:{var m=f[0],d=f[1];if(m===d)return u(c.clone().valueOf(),m);if(d===0)return 1;throw new RangeError("Matrix must be square (size: "+nt(f)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+nt(f)+")")}}});function u(l,c,f){if(c===1)return We(l[0][0]);if(c===2)return n(a(l[0][0],l[1][1]),a(l[1][0],l[0][1]));for(var m=!1,d=new Array(c).fill(0).map((N,C)=>C),p=0;p<c;p++){var h=d[p];if(o(l[h][p])){var g=void 0;for(g=p+1;g<c;g++)if(!o(l[d[g]][p])){h=d[g],d[g]=d[p],d[p]=h,m=!m;break}if(g===c)return l[h][p]}for(var b=l[h][p],D=p===0?1:l[d[p-1]][p-1],y=p+1;y<c;y++)for(var w=d[y],x=p+1;x<c;x++)l[w][x]=i(n(a(l[w][x],b),a(l[w][p],l[h][x])),D)}var v=l[d[c-1]][c-1];return m?s(v):v}}),Ay="inv",RY=["typed","matrix","divideScalar","addScalar","multiply","unaryMinus","det","identity","abs"],LY=I(Ay,RY,e=>{var{typed:t,matrix:r,divideScalar:n,addScalar:a,multiply:i,unaryMinus:o,det:s,identity:u,abs:l}=e;return t(Ay,{"Array | Matrix":function(m){var d=Re(m)?m.size():Ue(m);switch(d.length){case 1:if(d[0]===1)return Re(m)?r([n(1,m.valueOf()[0])]):[n(1,m[0])];throw new RangeError("Matrix must be square (size: "+nt(d)+")");case 2:{var p=d[0],h=d[1];if(p===h)return Re(m)?r(c(m.valueOf(),p,h),m.storage()):c(m,p,h);throw new RangeError("Matrix must be square (size: "+nt(d)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+nt(d)+")")}},any:function(m){return n(1,m)}});function c(f,m,d){var p,h,g,b,D;if(m===1){if(b=f[0][0],b===0)throw Error("Cannot calculate inverse, determinant is zero");return[[n(1,b)]]}else if(m===2){var y=s(f);if(y===0)throw Error("Cannot calculate inverse, determinant is zero");return[[n(f[1][1],y),n(o(f[0][1]),y)],[n(o(f[1][0]),y),n(f[0][0],y)]]}else{var w=f.concat();for(p=0;p<m;p++)w[p]=w[p].concat();for(var x=u(m).valueOf(),v=0;v<d;v++){var N=l(w[v][v]),C=v;for(p=v+1;p<m;)l(w[p][v])>N&&(N=l(w[p][v]),C=p),p++;if(N===0)throw Error("Cannot calculate inverse, determinant is zero");p=C,p!==v&&(D=w[v],w[v]=w[p],w[p]=D,D=x[v],x[v]=x[p],x[p]=D);var A=w[v],E=x[v];for(p=0;p<m;p++){var S=w[p],F=x[p];if(p!==v){if(S[v]!==0){for(g=n(o(S[v]),A[v]),h=v;h<d;h++)S[h]=a(S[h],i(g,A[h]));for(h=0;h<d;h++)F[h]=a(F[h],i(g,E[h]))}}else{for(g=A[v],h=v;h<d;h++)S[h]=n(S[h],g);for(h=0;h<d;h++)F[h]=n(F[h],g)}}}return x}}}),Cy="pinv",HY=["typed","matrix","inv","deepEqual","equal","dotDivide","dot","ctranspose","divideScalar","multiply","add","Complex"],GY=I(Cy,HY,e=>{var{typed:t,matrix:r,inv:n,deepEqual:a,equal:i,dotDivide:o,dot:s,ctranspose:u,divideScalar:l,multiply:c,add:f,Complex:m}=e;return t(Cy,{"Array | Matrix":function(y){var w=Re(y)?y.size():Ue(y);switch(w.length){case 1:return b(y)?u(y):w[0]===1?n(y):o(u(y),s(y,y));case 2:{if(b(y))return u(y);var x=w[0],v=w[1];if(x===v)try{return n(y)}catch(N){if(!(N instanceof Error&&N.message.match(/Cannot calculate inverse, determinant is zero/)))throw N}return Re(y)?r(d(y.valueOf(),x,v),y.storage()):d(y,x,v)}default:throw new RangeError("Matrix must be two dimensional (size: "+nt(w)+")")}},any:function(y){return i(y,0)?We(y):l(1,y)}});function d(D,y,w){var{C:x,F:v}=h(D,y,w),N=c(n(c(u(x),x)),u(x)),C=c(u(v),n(c(v,u(v))));return c(C,N)}function p(D,y,w){for(var x=We(D),v=0,N=0;N<y;N++){if(w<=v)return x;for(var C=N;g(x[C][v]);)if(C++,y===C&&(C=N,v++,w===v))return x;[x[C],x[N]]=[x[N],x[C]];for(var A=x[N][v],E=0;E<w;E++)x[N][E]=o(x[N][E],A);for(var S=0;S<y;S++)if(S!==N){A=x[S][v];for(var F=0;F<w;F++)x[S][F]=f(x[S][F],c(-1,c(A,x[N][F])))}v++}return x}function h(D,y,w){var x=p(D,y,w),v=D.map((C,A)=>C.filter((E,S)=>S<y&&!g(s(x[S],x[S])))),N=x.filter((C,A)=>!g(s(x[A],x[A])));return{C:v,F:N}}function g(D){return i(f(D,m(1,1)),f(0,m(1,1)))}function b(D){return a(f(D,m(1,1)),f(c(D,0),m(1,1)))}});function VY(e){var{addScalar:t,subtract:r,flatten:n,multiply:a,multiplyScalar:i,divideScalar:o,sqrt:s,abs:u,bignumber:l,diag:c,size:f,reshape:m,inv:d,qr:p,usolve:h,usolveAll:g,equal:b,complex:D,larger:y,smaller:w,matrixFromColumns:x,dot:v}=e;function N(P,V,_,ce){var ae=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,ie=C(P,V,_,ce,ae);A(P,V,_,ce,ae,ie);var{values:j,C:H}=E(P,V,_,ce,ae);if(ae){var J=S(P,V,H,ie,j,_,ce);return{values:j,eigenvectors:J}}return{values:j}}function C(P,V,_,ce,ae){var ie=ce==="BigNumber",j=ce==="Complex",H=ie?l(0):0,J=ie?l(1):j?D(1):1,Q=ie?l(1):1,X=ie?l(10):2,ue=i(X,X),se;ae&&(se=Array(V).fill(J));for(var we=!1;!we;){we=!0;for(var Me=0;Me<V;Me++){for(var ke=H,Se=H,$e=0;$e<V;$e++)Me!==$e&&(ke=t(ke,u(P[$e][Me])),Se=t(Se,u(P[Me][$e])));if(!b(ke,0)&&!b(Se,0)){for(var q=Q,K=ke,re=o(Se,X),O=i(Se,X);w(K,re);)K=i(K,ue),q=i(q,X);for(;y(K,O);)K=o(K,ue),q=o(q,X);var L=w(o(t(K,Se),q),i(t(ke,Se),.95));if(L){we=!1;for(var Y=o(1,q),ee=0;ee<V;ee++)Me!==ee&&(P[Me][ee]=i(P[Me][ee],Y),P[ee][Me]=i(P[ee][Me],q));ae&&(se[Me]=i(se[Me],Y))}}}}return ae?c(se):null}function A(P,V,_,ce,ae,ie){var j=ce==="BigNumber",H=ce==="Complex",J=j?l(0):H?D(0):0;j&&(_=l(_));for(var Q=0;Q<V-2;Q++){for(var X=0,ue=J,se=Q+1;se<V;se++){var we=P[se][Q];w(u(ue),u(we))&&(ue=we,X=se)}if(!w(u(ue),_)){if(X!==Q+1){var Me=P[X];P[X]=P[Q+1],P[Q+1]=Me;for(var ke=0;ke<V;ke++){var Se=P[ke][X];P[ke][X]=P[ke][Q+1],P[ke][Q+1]=Se}if(ae){var $e=ie[X];ie[X]=ie[Q+1],ie[Q+1]=$e}}for(var q=Q+2;q<V;q++){var K=o(P[q][Q],ue);if(K!==0){for(var re=0;re<V;re++)P[q][re]=r(P[q][re],i(K,P[Q+1][re]));for(var O=0;O<V;O++)P[O][Q+1]=t(P[O][Q+1],i(K,P[O][q]));if(ae)for(var L=0;L<V;L++)ie[q][L]=r(ie[q][L],i(K,ie[Q+1][L]))}}}}return ie}function E(P,V,_,ce,ae){var ie=ce==="BigNumber",j=ce==="Complex",H=ie?l(1):j?D(1):1;ie&&(_=l(_));for(var J=We(P),Q=[],X=V,ue=[],se=ae?c(Array(V).fill(H)):void 0,we=ae?c(Array(X).fill(H)):void 0,Me=0;Me<=100;){Me+=1;for(var ke=J[X-1][X-1],Se=0;Se<X;Se++)J[Se][Se]=r(J[Se][Se],ke);var{Q:$e,R:q}=p(J);J=a(q,$e);for(var K=0;K<X;K++)J[K][K]=t(J[K][K],ke);if(ae&&(we=a(we,$e)),X===1||w(u(J[X-1][X-2]),_)){Me=0,Q.push(J[X-1][X-1]),ae&&(ue.unshift([[1]]),B(we,V),se=a(se,we),X>1&&(we=c(Array(X-1).fill(H)))),X-=1,J.pop();for(var re=0;re<X;re++)J[re].pop()}else if(X===2||w(u(J[X-2][X-3]),_)){Me=0;var O=F(J[X-2][X-2],J[X-2][X-1],J[X-1][X-2],J[X-1][X-1]);Q.push(...O),ae&&(ue.unshift(k(J[X-2][X-2],J[X-2][X-1],J[X-1][X-2],J[X-1][X-1],O[0],O[1],_,ce)),B(we,V),se=a(se,we),X>2&&(we=c(Array(X-2).fill(H)))),X-=2,J.pop(),J.pop();for(var L=0;L<X;L++)J[L].pop(),J[L].pop()}if(X===0)break}if(Q.sort((ne,le)=>+r(u(ne),u(le))),Me>100){var Y=Error("The eigenvalues failed to converge. Only found these eigenvalues: "+Q.join(", "));throw Y.values=Q,Y.vectors=[],Y}var ee=ae?a(se,$(ue,V)):void 0;return{values:Q,C:ee}}function S(P,V,_,ce,ae,ie,j){var H=d(_),J=a(H,P,_),Q=j==="BigNumber",X=j==="Complex",ue=Q?l(0):X?D(0):0,se=Q?l(1):X?D(1):1,we=[],Me=[];for(var ke of ae){var Se=M(we,ke,b);Se===-1?(we.push(ke),Me.push(1)):Me[Se]+=1}for(var $e=[],q=we.length,K=Array(V).fill(ue),re=c(Array(V).fill(se)),O=function(){var ee=we[L],ne=r(J,a(ee,re)),le=g(ne,K);for(le.shift();le.length<Me[L];){var ge=z(ne,V,le,ie,j);if(ge===null)break;le.push(ge)}var ye=a(d(ce),_);le=le.map(Ae=>a(ye,Ae)),$e.push(...le.map(Ae=>({value:ee,vector:n(Ae)})))},L=0;L<q;L++)O();return $e}function F(P,V,_,ce){var ae=t(P,ce),ie=r(i(P,ce),i(V,_)),j=i(ae,.5),H=i(s(r(i(ae,ae),i(4,ie))),.5);return[t(j,H),r(j,H)]}function k(P,V,_,ce,ae,ie,j,H){var J=H==="BigNumber",Q=H==="Complex",X=J?l(0):Q?D(0):0,ue=J?l(1):Q?D(1):1;if(w(u(_),j))return[[ue,X],[X,ue]];if(y(u(r(ae,ie)),j))return[[r(ae,ce),r(ie,ce)],[_,_]];var se=r(P,ae),we=r(ce,ae);return w(u(V),j)&&w(u(we),j)?[[se,ue],[_,X]]:[[V,X],[we,ue]]}function B(P,V){for(var _=0;_<P.length;_++)P[_].push(...Array(V-P[_].length).fill(0));for(var ce=P.length;ce<V;ce++)P.push(Array(V).fill(0)),P[ce][ce]=1;return P}function $(P,V){for(var _=[],ce=0;ce<V;ce++)_[ce]=Array(V).fill(0);var ae=0;for(var ie of P){for(var j=ie.length,H=0;H<j;H++)for(var J=0;J<j;J++)_[ae+H][ae+J]=ie[H][J];ae+=j}return _}function M(P,V,_){for(var ce=0;ce<P.length;ce++)if(_(P[ce],V))return ce;return-1}function z(P,V,_,ce,ae){for(var ie=ae==="BigNumber"?l(1e3):1e3,j,H=0;H<5;++H){j=G(V,_,ae);try{j=h(P,j)}catch{continue}if(y(Z(j),ie))break}if(H>=5)return null;for(H=0;;){var J=h(P,j);if(w(Z(R(j,[J])),ce))break;if(++H>=10)return null;j=te(J)}return j}function G(P,V,_){var ce=_==="BigNumber",ae=_==="Complex",ie=Array(P).fill(0).map(j=>2*Math.random()-1);return ce&&(ie=ie.map(j=>l(j))),ae&&(ie=ie.map(j=>D(j))),ie=R(ie,V),te(ie,_)}function R(P,V){var _=f(P);for(var ce of V)ce=m(ce,_),P=r(P,a(o(v(ce,P),v(ce,ce)),ce));return P}function Z(P){return u(s(v(P,P)))}function te(P,V){var _=V==="BigNumber",ce=V==="Complex",ae=_?l(1):ce?D(1):1;return a(o(ae,Z(P)),P)}return N}function UY(e){var{config:t,addScalar:r,subtract:n,abs:a,atan:i,cos:o,sin:s,multiplyScalar:u,inv:l,bignumber:c,multiply:f,add:m}=e;function d(A,E){var S=arguments.length>2&&arguments[2]!==void 0?arguments[2]:t.relTol,F=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0;if(F==="number")return p(A,S,k);if(F==="BigNumber")return h(A,S,k);throw TypeError("Unsupported data type: "+F)}function p(A,E,S){var F=A.length,k=Math.abs(E/F),B,$;if(S){$=new Array(F);for(var M=0;M<F;M++)$[M]=Array(F).fill(0),$[M][M]=1}for(var z=v(A);Math.abs(z[1])>=Math.abs(k);){var G=z[0][0],R=z[0][1];B=g(A[G][G],A[R][R],A[G][R]),A=x(A,B,G,R),S&&($=D($,B,G,R)),z=v(A)}for(var Z=Array(F).fill(0),te=0;te<F;te++)Z[te]=A[te][te];return C(We(Z),$,S)}function h(A,E,S){var F=A.length,k=a(E/F),B,$;if(S){$=new Array(F);for(var M=0;M<F;M++)$[M]=Array(F).fill(0),$[M][M]=1}for(var z=N(A);a(z[1])>=a(k);){var G=z[0][0],R=z[0][1];B=b(A[G][G],A[R][R],A[G][R]),A=w(A,B,G,R),S&&($=y($,B,G,R)),z=N(A)}for(var Z=Array(F).fill(0),te=0;te<F;te++)Z[te]=A[te][te];return C(We(Z),$,S)}function g(A,E,S){var F=E-A;return Math.abs(F)<=t.relTol?Math.PI/4:.5*Math.atan(2*S/(E-A))}function b(A,E,S){var F=n(E,A);return a(F)<=t.relTol?c(-1).acos().div(4):u(.5,i(f(2,S,l(F))))}function D(A,E,S,F){for(var k=A.length,B=Math.cos(E),$=Math.sin(E),M=Array(k).fill(0),z=Array(k).fill(0),G=0;G<k;G++)M[G]=B*A[G][S]-$*A[G][F],z[G]=$*A[G][S]+B*A[G][F];for(var R=0;R<k;R++)A[R][S]=M[R],A[R][F]=z[R];return A}function y(A,E,S,F){for(var k=A.length,B=o(E),$=s(E),M=Array(k).fill(c(0)),z=Array(k).fill(c(0)),G=0;G<k;G++)M[G]=n(u(B,A[G][S]),u($,A[G][F])),z[G]=r(u($,A[G][S]),u(B,A[G][F]));for(var R=0;R<k;R++)A[R][S]=M[R],A[R][F]=z[R];return A}function w(A,E,S,F){for(var k=A.length,B=c(o(E)),$=c(s(E)),M=u(B,B),z=u($,$),G=Array(k).fill(c(0)),R=Array(k).fill(c(0)),Z=f(c(2),B,$,A[S][F]),te=r(n(u(M,A[S][S]),Z),u(z,A[F][F])),P=m(u(z,A[S][S]),Z,u(M,A[F][F])),V=0;V<k;V++)G[V]=n(u(B,A[S][V]),u($,A[F][V])),R[V]=r(u($,A[S][V]),u(B,A[F][V]));A[S][S]=te,A[F][F]=P,A[S][F]=c(0),A[F][S]=c(0);for(var _=0;_<k;_++)_!==S&&_!==F&&(A[S][_]=G[_],A[_][S]=G[_],A[F][_]=R[_],A[_][F]=R[_]);return A}function x(A,E,S,F){for(var k=A.length,B=Math.cos(E),$=Math.sin(E),M=B*B,z=$*$,G=Array(k).fill(0),R=Array(k).fill(0),Z=M*A[S][S]-2*B*$*A[S][F]+z*A[F][F],te=z*A[S][S]+2*B*$*A[S][F]+M*A[F][F],P=0;P<k;P++)G[P]=B*A[S][P]-$*A[F][P],R[P]=$*A[S][P]+B*A[F][P];A[S][S]=Z,A[F][F]=te,A[S][F]=0,A[F][S]=0;for(var V=0;V<k;V++)V!==S&&V!==F&&(A[S][V]=G[V],A[V][S]=G[V],A[F][V]=R[V],A[V][F]=R[V]);return A}function v(A){for(var E=A.length,S=0,F=[0,1],k=0;k<E;k++)for(var B=k+1;B<E;B++)Math.abs(S)<Math.abs(A[k][B])&&(S=Math.abs(A[k][B]),F=[k,B]);return[F,S]}function N(A){for(var E=A.length,S=0,F=[0,1],k=0;k<E;k++)for(var B=k+1;B<E;B++)a(S)<a(A[k][B])&&(S=a(A[k][B]),F=[k,B]);return[F,S]}function C(A,E,S){var F=A.length,k=Array(F),B;if(S){B=Array(F);for(var $=0;$<F;$++)B[$]=Array(F)}for(var M=0;M<F;M++){for(var z=0,G=A[0],R=0;R<A.length;R++)a(A[R])<a(G)&&(z=R,G=A[z]);if(k[M]=A.splice(z,1)[0],S)for(var Z=0;Z<F;Z++)B[M][Z]=E[Z][z],E[Z].splice(z,1)}if(!S)return{values:k};var te=B.map((P,V)=>({value:k[V],vector:P}));return{values:k,eigenvectors:te}}return d}var WY="eigs",JY=["config","typed","matrix","addScalar","equal","subtract","abs","atan","cos","sin","multiplyScalar","divideScalar","inv","bignumber","multiply","add","larger","column","flatten","number","complex","sqrt","diag","size","reshape","qr","usolve","usolveAll","im","re","smaller","matrixFromColumns","dot"],KY=I(WY,JY,e=>{var{config:t,typed:r,matrix:n,addScalar:a,subtract:i,equal:o,abs:s,atan:u,cos:l,sin:c,multiplyScalar:f,divideScalar:m,inv:d,bignumber:p,multiply:h,add:g,larger:b,column:D,flatten:y,number:w,complex:x,sqrt:v,diag:N,size:C,reshape:A,qr:E,usolve:S,usolveAll:F,im:k,re:B,smaller:$,matrixFromColumns:M,dot:z}=e,G=UY({config:t,addScalar:a,subtract:i,abs:s,atan:u,cos:l,sin:c,multiplyScalar:f,inv:d,bignumber:p,multiply:h,add:g}),R=VY({addScalar:a,subtract:i,multiply:h,multiplyScalar:f,flatten:y,divideScalar:m,sqrt:v,abs:s,bignumber:p,diag:N,size:C,reshape:A,qr:E,inv:d,usolve:S,usolveAll:F,equal:o,complex:x,larger:b,smaller:$,matrixFromColumns:M,dot:z});return r("eigs",{Array:function(ie){return Z(n(ie))},"Array, number|BigNumber":function(ie,j){return Z(n(ie),{precision:j})},"Array, Object"(ae,ie){return Z(n(ae),ie)},Matrix:function(ie){return Z(ie,{matricize:!0})},"Matrix, number|BigNumber":function(ie,j){return Z(ie,{precision:j,matricize:!0})},"Matrix, Object":function(ie,j){var H={matricize:!0};return or(H,j),Z(ie,H)}});function Z(ae){var ie,j=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},H="eigenvectors"in j?j.eigenvectors:!0,J=(ie=j.precision)!==null&&ie!==void 0?ie:t.relTol,Q=te(ae,J,H);return j.matricize&&(Q.values=n(Q.values),H&&(Q.eigenvectors=Q.eigenvectors.map(X=>{var{value:ue,vector:se}=X;return{value:ue,vector:n(se)}}))),H&&Object.defineProperty(Q,"vectors",{enumerable:!1,get:()=>{throw new Error("eigs(M).vectors replaced with eigs(M).eigenvectors")}}),Q}function te(ae,ie,j){var H=ae.toArray(),J=ae.size();if(J.length!==2||J[0]!==J[1])throw new RangeError("Matrix must be square (size: ".concat(nt(J),")"));var Q=J[0];if(V(H,Q,ie)&&(_(H,Q),P(H,Q,ie))){var X=ce(ae,H,Q);return G(H,Q,ie,X,j)}var ue=ce(ae,H,Q);return R(H,Q,ie,ue,j)}function P(ae,ie,j){for(var H=0;H<ie;H++)for(var J=H;J<ie;J++)if(b(p(s(i(ae[H][J],ae[J][H]))),j))return!1;return!0}function V(ae,ie,j){for(var H=0;H<ie;H++)for(var J=0;J<ie;J++)if(b(p(s(k(ae[H][J]))),j))return!1;return!0}function _(ae,ie){for(var j=0;j<ie;j++)for(var H=0;H<ie;H++)ae[j][H]=B(ae[j][H])}function ce(ae,ie,j){var H=ae.datatype();if(H==="number"||H==="BigNumber"||H==="Complex")return H;for(var J=!1,Q=!1,X=!1,ue=0;ue<j;ue++)for(var se=0;se<j;se++){var we=ie[ue][se];if(Ze(we)||Zs(we))J=!0;else if(Qe(we))Q=!0;else if(ka(we))X=!0;else throw TypeError("Unsupported type in Matrix: "+Tt(we))}if(Q&&X&&console.warn("Complex BigNumbers not supported, this operation will lose precission."),X){for(var Me=0;Me<j;Me++)for(var ke=0;ke<j;ke++)ie[Me][ke]=x(ie[Me][ke]);return"Complex"}if(Q){for(var Se=0;Se<j;Se++)for(var $e=0;$e<j;$e++)ie[Se][$e]=p(ie[Se][$e]);return"BigNumber"}if(J){for(var q=0;q<j;q++)for(var K=0;K<j;K++)ie[q][K]=w(ie[q][K]);return"number"}else throw TypeError("Matrix contains unsupported types only.")}}),Ey="expm",YY=["typed","abs","add","identity","inv","multiply"],ZY=I(Ey,YY,e=>{var{typed:t,abs:r,add:n,identity:a,inv:i,multiply:o}=e;return t(Ey,{Matrix:function(f){var m=f.size();if(m.length!==2||m[0]!==m[1])throw new RangeError("Matrix must be square (size: "+nt(m)+")");for(var d=m[0],p=1e-15,h=s(f),g=u(h,p),b=g.q,D=g.j,y=o(f,Math.pow(2,-D)),w=a(d),x=a(d),v=1,N=y,C=-1,A=1;A<=b;A++)A>1&&(N=o(N,y),C=-C),v=v*(b-A+1)/((2*b-A+1)*A),w=n(w,o(v,N)),x=n(x,o(v*C,N));for(var E=o(i(x),w),S=0;S<D;S++)E=o(E,E);return qi(f)?f.createSparseMatrix(E):E}});function s(c){for(var f=c.size()[0],m=0,d=0;d<f;d++){for(var p=0,h=0;h<f;h++)p+=r(c.get([d,h]));m=Math.max(p,m)}return m}function u(c,f){for(var m=30,d=0;d<m;d++)for(var p=0;p<=d;p++){var h=d-p;if(l(c,p,h)<f)return{q:p,j:h}}throw new Error("Could not find acceptable parameters to compute the matrix exponential (try increasing maxSearchSize in expm.js)")}function l(c,f,m){for(var d=1,p=2;p<=f;p++)d*=p;for(var h=d,g=f+1;g<=2*f;g++)h*=g;var b=h*(2*f+1);return 8*Math.pow(c/Math.pow(2,m),2*f)*d*d/(h*b)}}),Sy="sqrtm",QY=["typed","abs","add","multiply","map","sqrt","subtract","inv","size","max","identity"],XY=I(Sy,QY,e=>{var{typed:t,abs:r,add:n,multiply:a,map:i,sqrt:o,subtract:s,inv:u,size:l,max:c,identity:f}=e,m=1e3,d=1e-6;function p(h){var g,b=0,D=h,y=f(l(h));do{var w=D;if(D=a(.5,n(w,u(y))),y=a(.5,n(y,u(w))),g=c(r(s(D,w))),g>d&&++b>m)throw new Error("computing square root of matrix: iterative method could not converge")}while(g>d);return D}return t(Sy,{"Array | Matrix":function(g){var b=Re(g)?g.size():Ue(g);switch(b.length){case 1:if(b[0]===1)return i(g,o);throw new RangeError("Matrix must be square (size: "+nt(b)+")");case 2:{var D=b[0],y=b[1];if(D===y)return p(g);throw new RangeError("Matrix must be square (size: "+nt(b)+")")}default:throw new RangeError("Matrix must be at most two dimensional (size: "+nt(b)+")")}}})}),Ty="sylvester",eZ=["typed","schur","matrixFromColumns","matrix","multiply","range","concat","transpose","index","subset","add","subtract","identity","lusolve","abs"],tZ=I(Ty,eZ,e=>{var{typed:t,schur:r,matrixFromColumns:n,matrix:a,multiply:i,range:o,concat:s,transpose:u,index:l,subset:c,add:f,subtract:m,identity:d,lusolve:p,abs:h}=e;return t(Ty,{"Matrix, Matrix, Matrix":g,"Array, Matrix, Matrix":function(D,y,w){return g(a(D),y,w)},"Array, Array, Matrix":function(D,y,w){return g(a(D),a(y),w)},"Array, Matrix, Array":function(D,y,w){return g(a(D),y,a(w))},"Matrix, Array, Matrix":function(D,y,w){return g(D,a(y),w)},"Matrix, Array, Array":function(D,y,w){return g(D,a(y),a(w))},"Matrix, Matrix, Array":function(D,y,w){return g(D,y,a(w))},"Array, Array, Array":function(D,y,w){return g(a(D),a(y),a(w)).toArray()}});function g(b,D,y){for(var w=D.size()[0],x=b.size()[0],v=r(b),N=v.T,C=v.U,A=r(i(-1,D)),E=A.T,S=A.U,F=i(i(u(C),y),S),k=o(0,x),B=[],$=(X,ue)=>s(X,ue,1),M=(X,ue)=>s(X,ue,0),z=0;z<w;z++)if(z<w-1&&h(c(E,l(z+1,z)))>1e-5){for(var G=M(c(F,l(k,z)),c(F,l(k,z+1))),R=0;R<z;R++)G=f(G,M(i(B[R],c(E,l(R,z))),i(B[R],c(E,l(R,z+1)))));var Z=i(d(x),i(-1,c(E,l(z,z)))),te=i(d(x),i(-1,c(E,l(z+1,z)))),P=i(d(x),i(-1,c(E,l(z,z+1)))),V=i(d(x),i(-1,c(E,l(z+1,z+1)))),_=M($(f(N,Z),te),$(P,f(N,V))),ce=p(_,G);B[z]=ce.subset(l(o(0,x),0)),B[z+1]=ce.subset(l(o(x,2*x),0)),z++}else{for(var ae=c(F,l(k,z)),ie=0;ie<z;ie++)ae=f(ae,i(B[ie],c(E,l(ie,z))));var j=c(E,l(z,z)),H=m(N,i(j,d(x)));B[z]=p(H,ae)}var J=a(n(...B)),Q=i(C,i(J,u(S)));return Q}}),My="schur",rZ=["typed","matrix","identity","multiply","qr","norm","subtract"],nZ=I(My,rZ,e=>{var{typed:t,matrix:r,identity:n,multiply:a,qr:i,norm:o,subtract:s}=e;return t(My,{Array:function(c){var f=u(r(c));return{U:f.U.valueOf(),T:f.T.valueOf()}},Matrix:function(c){return u(c)}});function u(l){var c=l.size()[0],f=l,m=n(c),d=0,p;do{p=f;var h=i(f),g=h.Q,b=h.R;if(f=a(b,g),m=a(m,g),d++>100)break}while(o(s(f,p))>1e-4);return{U:m,T:f}}}),Fy="lyap",aZ=["typed","matrix","sylvester","multiply","transpose"],iZ=I(Fy,aZ,e=>{var{typed:t,matrix:r,sylvester:n,multiply:a,transpose:i}=e;return t(Fy,{"Matrix, Matrix":function(s,u){return n(s,i(s),a(-1,u))},"Array, Matrix":function(s,u){return n(r(s),i(r(s)),a(-1,u))},"Matrix, Array":function(s,u){return n(s,i(r(s)),r(a(-1,u)))},"Array, Array":function(s,u){return n(r(s),i(r(s)),r(a(-1,u))).toArray()}})}),oZ="divide",sZ=["typed","matrix","multiply","equalScalar","divideScalar","inv"],uZ=I(oZ,sZ,e=>{var{typed:t,matrix:r,multiply:n,equalScalar:a,divideScalar:i,inv:o}=e,s=Sr({typed:t,equalScalar:a}),u=Yn({typed:t});return t("divide",Zw({"Array | Matrix, Array | Matrix":function(c,f){return n(c,o(f))},"DenseMatrix, any":function(c,f){return u(c,f,i,!1)},"SparseMatrix, any":function(c,f){return s(c,f,i,!1)},"Array, any":function(c,f){return u(r(c),f,i,!1).valueOf()},"any, Array | Matrix":function(c,f){return n(c,o(f))}},i.signatures))}),Py="distance",lZ=["typed","addScalar","subtractScalar","divideScalar","multiplyScalar","deepEqual","sqrt","abs"],cZ=I(Py,lZ,e=>{var{typed:t,addScalar:r,subtractScalar:n,multiplyScalar:a,divideScalar:i,deepEqual:o,sqrt:s,abs:u}=e;return t(Py,{"Array, Array, Array":function(x,v,N){if(x.length===2&&v.length===2&&N.length===2){if(!c(x))throw new TypeError("Array with 2 numbers or BigNumbers expected for first argument");if(!c(v))throw new TypeError("Array with 2 numbers or BigNumbers expected for second argument");if(!c(N))throw new TypeError("Array with 2 numbers or BigNumbers expected for third argument");if(o(v,N))throw new TypeError("LinePoint1 should not be same with LinePoint2");var C=n(N[1],v[1]),A=n(v[0],N[0]),E=n(a(N[0],v[1]),a(v[0],N[1]));return g(x[0],x[1],C,A,E)}else throw new TypeError("Invalid Arguments: Try again")},"Object, Object, Object":function(x,v,N){if(Object.keys(x).length===2&&Object.keys(v).length===2&&Object.keys(N).length===2){if(!c(x))throw new TypeError("Values of pointX and pointY should be numbers or BigNumbers");if(!c(v))throw new TypeError("Values of lineOnePtX and lineOnePtY should be numbers or BigNumbers");if(!c(N))throw new TypeError("Values of lineTwoPtX and lineTwoPtY should be numbers or BigNumbers");if(o(p(v),p(N)))throw new TypeError("LinePoint1 should not be same with LinePoint2");if("pointX"in x&&"pointY"in x&&"lineOnePtX"in v&&"lineOnePtY"in v&&"lineTwoPtX"in N&&"lineTwoPtY"in N){var C=n(N.lineTwoPtY,v.lineOnePtY),A=n(v.lineOnePtX,N.lineTwoPtX),E=n(a(N.lineTwoPtX,v.lineOnePtY),a(v.lineOnePtX,N.lineTwoPtY));return g(x.pointX,x.pointY,C,A,E)}else throw new TypeError("Key names do not match")}else throw new TypeError("Invalid Arguments: Try again")},"Array, Array":function(x,v){if(x.length===2&&v.length===3){if(!c(x))throw new TypeError("Array with 2 numbers or BigNumbers expected for first argument");if(!f(v))throw new TypeError("Array with 3 numbers or BigNumbers expected for second argument");return g(x[0],x[1],v[0],v[1],v[2])}else if(x.length===3&&v.length===6){if(!f(x))throw new TypeError("Array with 3 numbers or BigNumbers expected for first argument");if(!d(v))throw new TypeError("Array with 6 numbers or BigNumbers expected for second argument");return b(x[0],x[1],x[2],v[0],v[1],v[2],v[3],v[4],v[5])}else if(x.length===v.length&&x.length>0){if(!m(x))throw new TypeError("All values of an array should be numbers or BigNumbers");if(!m(v))throw new TypeError("All values of an array should be numbers or BigNumbers");return D(x,v)}else throw new TypeError("Invalid Arguments: Try again")},"Object, Object":function(x,v){if(Object.keys(x).length===2&&Object.keys(v).length===3){if(!c(x))throw new TypeError("Values of pointX and pointY should be numbers or BigNumbers");if(!f(v))throw new TypeError("Values of xCoeffLine, yCoeffLine and constant should be numbers or BigNumbers");if("pointX"in x&&"pointY"in x&&"xCoeffLine"in v&&"yCoeffLine"in v&&"constant"in v)return g(x.pointX,x.pointY,v.xCoeffLine,v.yCoeffLine,v.constant);throw new TypeError("Key names do not match")}else if(Object.keys(x).length===3&&Object.keys(v).length===6){if(!f(x))throw new TypeError("Values of pointX, pointY and pointZ should be numbers or BigNumbers");if(!d(v))throw new TypeError("Values of x0, y0, z0, a, b and c should be numbers or BigNumbers");if("pointX"in x&&"pointY"in x&&"x0"in v&&"y0"in v&&"z0"in v&&"a"in v&&"b"in v&&"c"in v)return b(x.pointX,x.pointY,x.pointZ,v.x0,v.y0,v.z0,v.a,v.b,v.c);throw new TypeError("Key names do not match")}else if(Object.keys(x).length===2&&Object.keys(v).length===2){if(!c(x))throw new TypeError("Values of pointOneX and pointOneY should be numbers or BigNumbers");if(!c(v))throw new TypeError("Values of pointTwoX and pointTwoY should be numbers or BigNumbers");if("pointOneX"in x&&"pointOneY"in x&&"pointTwoX"in v&&"pointTwoY"in v)return D([x.pointOneX,x.pointOneY],[v.pointTwoX,v.pointTwoY]);throw new TypeError("Key names do not match")}else if(Object.keys(x).length===3&&Object.keys(v).length===3){if(!f(x))throw new TypeError("Values of pointOneX, pointOneY and pointOneZ should be numbers or BigNumbers");if(!f(v))throw new TypeError("Values of pointTwoX, pointTwoY and pointTwoZ should be numbers or BigNumbers");if("pointOneX"in x&&"pointOneY"in x&&"pointOneZ"in x&&"pointTwoX"in v&&"pointTwoY"in v&&"pointTwoZ"in v)return D([x.pointOneX,x.pointOneY,x.pointOneZ],[v.pointTwoX,v.pointTwoY,v.pointTwoZ]);throw new TypeError("Key names do not match")}else throw new TypeError("Invalid Arguments: Try again")},Array:function(x){if(!h(x))throw new TypeError("Incorrect array format entered for pairwise distance calculation");return y(x)}});function l(w){return typeof w=="number"||Qe(w)}function c(w){return w.constructor!==Array&&(w=p(w)),l(w[0])&&l(w[1])}function f(w){return w.constructor!==Array&&(w=p(w)),l(w[0])&&l(w[1])&&l(w[2])}function m(w){return Array.isArray(w)||(w=p(w)),w.every(l)}function d(w){return w.constructor!==Array&&(w=p(w)),l(w[0])&&l(w[1])&&l(w[2])&&l(w[3])&&l(w[4])&&l(w[5])}function p(w){for(var x=Object.keys(w),v=[],N=0;N<x.length;N++)v.push(w[x[N]]);return v}function h(w){if(w[0].length===2&&l(w[0][0])&&l(w[0][1])){if(w.some(x=>x.length!==2||!l(x[0])||!l(x[1])))return!1}else if(w[0].length===3&&l(w[0][0])&&l(w[0][1])&&l(w[0][2])){if(w.some(x=>x.length!==3||!l(x[0])||!l(x[1])||!l(x[2])))return!1}else return!1;return!0}function g(w,x,v,N,C){var A=u(r(r(a(v,w),a(N,x)),C)),E=s(r(a(v,v),a(N,N)));return i(A,E)}function b(w,x,v,N,C,A,E,S,F){var k=[n(a(n(C,x),F),a(n(A,v),S)),n(a(n(A,v),E),a(n(N,w),F)),n(a(n(N,w),S),a(n(C,x),E))];k=s(r(r(a(k[0],k[0]),a(k[1],k[1])),a(k[2],k[2])));var B=s(r(r(a(E,E),a(S,S)),a(F,F)));return i(k,B)}function D(w,x){for(var v=w.length,N=0,C=0,A=0;A<v;A++)C=n(w[A],x[A]),N=r(a(C,C),N);return s(N)}function y(w){for(var x=[],v=[],N=[],C=0;C<w.length-1;C++)for(var A=C+1;A<w.length;A++)w[0].length===2?(v=[w[C][0],w[C][1]],N=[w[A][0],w[A][1]]):w[0].length===3&&(v=[w[C][0],w[C][1],w[C][2]],N=[w[A][0],w[A][1],w[A][2]]),x.push(D(v,N));return x}}),fZ="intersect",mZ=["typed","config","abs","add","addScalar","matrix","multiply","multiplyScalar","divideScalar","subtract","smaller","equalScalar","flatten","isZero","isNumeric"],dZ=I(fZ,mZ,e=>{var{typed:t,config:r,abs:n,add:a,addScalar:i,matrix:o,multiply:s,multiplyScalar:u,divideScalar:l,subtract:c,smaller:f,equalScalar:m,flatten:d,isZero:p,isNumeric:h}=e;return t("intersect",{"Array, Array, Array":g,"Array, Array, Array, Array":b,"Matrix, Matrix, Matrix":function(S,F,k){var B=g(S.valueOf(),F.valueOf(),k.valueOf());return B===null?null:o(B)},"Matrix, Matrix, Matrix, Matrix":function(S,F,k,B){var $=b(S.valueOf(),F.valueOf(),k.valueOf(),B.valueOf());return $===null?null:o($)}});function g(E,S,F){if(E=D(E),S=D(S),F=D(F),!w(E))throw new TypeError("Array with 3 numbers or BigNumbers expected for first argument");if(!w(S))throw new TypeError("Array with 3 numbers or BigNumbers expected for second argument");if(!x(F))throw new TypeError("Array with 4 numbers expected as third argument");return A(E[0],E[1],E[2],S[0],S[1],S[2],F[0],F[1],F[2],F[3])}function b(E,S,F,k){if(E=D(E),S=D(S),F=D(F),k=D(k),E.length===2){if(!y(E))throw new TypeError("Array with 2 numbers or BigNumbers expected for first argument");if(!y(S))throw new TypeError("Array with 2 numbers or BigNumbers expected for second argument");if(!y(F))throw new TypeError("Array with 2 numbers or BigNumbers expected for third argument");if(!y(k))throw new TypeError("Array with 2 numbers or BigNumbers expected for fourth argument");return v(E,S,F,k)}else if(E.length===3){if(!w(E))throw new TypeError("Array with 3 numbers or BigNumbers expected for first argument");if(!w(S))throw new TypeError("Array with 3 numbers or BigNumbers expected for second argument");if(!w(F))throw new TypeError("Array with 3 numbers or BigNumbers expected for third argument");if(!w(k))throw new TypeError("Array with 3 numbers or BigNumbers expected for fourth argument");return C(E[0],E[1],E[2],S[0],S[1],S[2],F[0],F[1],F[2],k[0],k[1],k[2])}else throw new TypeError("Arrays with two or thee dimensional points expected")}function D(E){return E.length===1?E[0]:E.length>1&&Array.isArray(E[0])&&E.every(S=>Array.isArray(S)&&S.length===1)?d(E):E}function y(E){return E.length===2&&h(E[0])&&h(E[1])}function w(E){return E.length===3&&h(E[0])&&h(E[1])&&h(E[2])}function x(E){return E.length===4&&h(E[0])&&h(E[1])&&h(E[2])&&h(E[3])}function v(E,S,F,k){var B=E,$=F,M=c(B,S),z=c($,k),G=c(u(M[0],z[1]),u(z[0],M[1]));if(p(G)||f(n(G),r.relTol))return null;var R=u(z[0],B[1]),Z=u(z[1],B[0]),te=u(z[0],$[1]),P=u(z[1],$[0]),V=l(i(c(c(R,Z),te),P),G);return a(s(M,V),B)}function N(E,S,F,k,B,$,M,z,G,R,Z,te){var P=u(c(E,S),c(F,k)),V=u(c(B,$),c(M,z)),_=u(c(G,R),c(Z,te));return i(i(P,V),_)}function C(E,S,F,k,B,$,M,z,G,R,Z,te){var P=N(E,M,R,M,S,z,Z,z,F,G,te,G),V=N(R,M,k,E,Z,z,B,S,te,G,$,F),_=N(E,M,k,E,S,z,B,S,F,G,$,F),ce=N(R,M,R,M,Z,z,Z,z,te,G,te,G),ae=N(k,E,k,E,B,S,B,S,$,F,$,F),ie=c(u(P,V),u(_,ce)),j=c(u(ae,ce),u(V,V));if(p(j))return null;var H=l(ie,j),J=l(i(P,u(H,V)),ce),Q=i(E,u(H,c(k,E))),X=i(S,u(H,c(B,S))),ue=i(F,u(H,c($,F))),se=i(M,u(J,c(R,M))),we=i(z,u(J,c(Z,z))),Me=i(G,u(J,c(te,G)));return m(Q,se)&&m(X,we)&&m(ue,Me)?[Q,X,ue]:null}function A(E,S,F,k,B,$,M,z,G,R){var Z=u(E,M),te=u(k,M),P=u(S,z),V=u(B,z),_=u(F,G),ce=u($,G),ae=c(c(c(R,Z),P),_),ie=c(c(c(i(i(te,V),ce),Z),P),_),j=l(ae,ie),H=i(E,u(j,c(k,E))),J=i(S,u(j,c(B,S))),Q=i(F,u(j,c($,F)));return[H,J,Q]}}),ky="sum",hZ=["typed","config","add","numeric"],L2=I(ky,hZ,e=>{var{typed:t,config:r,add:n,numeric:a}=e;return t(ky,{"Array | Matrix":i,"Array | Matrix, number | BigNumber":o,"...":function(u){if(Qo(u))throw new TypeError("Scalar values expected in function sum");return i(u)}});function i(s){var u;return mi(s,function(l){try{u=u===void 0?l:n(u,l)}catch(c){throw Ur(c,"sum",l)}}),u===void 0&&(u=a(0,r.number)),typeof u=="string"&&(u=a(u,hi(u,r))),u}function o(s,u){try{var l=xc(s,u,n);return l}catch(c){throw Ur(c,"sum")}}}),dl="cumsum",pZ=["typed","add","unaryPlus"],H2=I(dl,pZ,e=>{var{typed:t,add:r,unaryPlus:n}=e;return t(dl,{Array:a,Matrix:function(l){return l.create(a(l.valueOf(),l.datatype()))},"Array, number | BigNumber":o,"Matrix, number | BigNumber":function(l,c){return l.create(o(l.valueOf(),c),l.datatype())},"...":function(l){if(Qo(l))throw new TypeError("All values expected to be scalar in function cumsum");return a(l)}});function a(u){try{return i(u)}catch(l){throw Ur(l,dl)}}function i(u){if(u.length===0)return[];for(var l=[n(u[0])],c=1;c<u.length;++c)l.push(r(l[c-1],u[c]));return l}function o(u,l){var c=Ue(u);if(l<0||l>=c.length)throw new Jn(l,c.length);try{return s(u,l)}catch(f){throw Ur(f,dl)}}function s(u,l){var c,f,m;if(l<=0){var d=u[0][0];if(Array.isArray(d)){for(m=Cx(u),f=[],c=0;c<m.length;c++)f[c]=s(m[c],l-1);return f}else return i(u)}else{for(f=[],c=0;c<u.length;c++)f[c]=s(u[c],l-1);return f}}}),Oy="mean",gZ=["typed","add","divide"],G2=I(Oy,gZ,e=>{var{typed:t,add:r,divide:n}=e;return t(Oy,{"Array | Matrix":i,"Array | Matrix, number | BigNumber":a,"...":function(s){if(Qo(s))throw new TypeError("Scalar values expected in function mean");return i(s)}});function a(o,s){try{var u=xc(o,s,r),l=Array.isArray(o)?Ue(o):o.size();return n(u,l[s])}catch(c){throw Ur(c,"mean")}}function i(o){var s,u=0;if(mi(o,function(l){try{s=s===void 0?l:r(s,l),u++}catch(c){throw Ur(c,"mean",l)}}),u===0)throw new Error("Cannot calculate the mean of an empty array");return n(s,u)}}),$y="median",vZ=["typed","add","divide","compare","partitionSelect"],yZ=I($y,vZ,e=>{var{typed:t,add:r,divide:n,compare:a,partitionSelect:i}=e;function o(l){try{l=dt(l.valueOf());var c=l.length;if(c===0)throw new Error("Cannot calculate median of an empty array");if(c%2===0){for(var f=c/2-1,m=i(l,f+1),d=l[f],p=0;p<f;++p)a(l[p],d)>0&&(d=l[p]);return u(d,m)}else{var h=i(l,(c-1)/2);return s(h)}}catch(g){throw Ur(g,"median")}}var s=t({"number | BigNumber | Complex | Unit":function(c){return c}}),u=t({"number | BigNumber | Complex | Unit, number | BigNumber | Complex | Unit":function(c,f){return n(r(c,f),2)}});return t($y,{"Array | Matrix":o,"Array | Matrix, number | BigNumber":function(c,f){throw new Error("median(A, dim) is not yet supported")},"...":function(c){if(Qo(c))throw new TypeError("Scalar values expected in function median");return o(c)}})}),By="mad",bZ=["typed","abs","map","median","subtract"],wZ=I(By,bZ,e=>{var{typed:t,abs:r,map:n,median:a,subtract:i}=e;return t(By,{"Array | Matrix":o,"...":function(u){return o(u)}});function o(s){if(s=dt(s.valueOf()),s.length===0)throw new Error("Cannot calculate median absolute deviation (mad) of an empty array");try{var u=a(s);return a(n(s,function(l){return r(i(l,u))}))}catch(l){throw l instanceof TypeError&&l.message.includes("median")?new TypeError(l.message.replace("median","mad")):Ur(l,"mad")}}}),Bf="unbiased",_y="variance",xZ=["typed","add","subtract","multiply","divide","mapSlices","isNaN"],V2=I(_y,xZ,e=>{var{typed:t,add:r,subtract:n,multiply:a,divide:i,mapSlices:o,isNaN:s}=e;return t(_y,{"Array | Matrix":function(f){return u(f,Bf)},"Array | Matrix, string":u,"Array | Matrix, number | BigNumber":function(f,m){return l(f,m,Bf)},"Array | Matrix, number | BigNumber, string":l,"...":function(f){return u(f,Bf)}});function u(c,f){var m,d=0;if(c.length===0)throw new SyntaxError("Function variance requires one or more parameters (0 provided)");if(mi(c,function(g){try{m=m===void 0?g:r(m,g),d++}catch(b){throw Ur(b,"variance",g)}}),d===0)throw new Error("Cannot calculate variance of an empty array");var p=i(m,d);if(m=void 0,mi(c,function(g){var b=n(g,p);m=m===void 0?a(b,b):r(m,a(b,b))}),s(m))return m;switch(f){case"uncorrected":return i(m,d);case"biased":return i(m,d+1);case"unbiased":{var h=Qe(m)?m.mul(0):0;return d===1?h:i(m,d-1)}default:throw new Error('Unknown normalization "'+f+'". Choose "unbiased" (default), "uncorrected", or "biased".')}}function l(c,f,m){try{if(c.length===0)throw new SyntaxError("Function variance requires one or more parameters (0 provided)");return o(c,f,d=>u(d,m))}catch(d){throw Ur(d,"variance")}}}),Iy="quantileSeq",DZ=["typed","?bignumber","add","subtract","divide","multiply","partitionSelect","compare","isInteger","smaller","smallerEq","larger","mapSlices"],U2=I(Iy,DZ,e=>{var{typed:t,bignumber:r,add:n,subtract:a,divide:i,multiply:o,partitionSelect:s,compare:u,isInteger:l,smaller:c,smallerEq:f,larger:m,mapSlices:d}=e;return t(Iy,{"Array | Matrix, number | BigNumber":(D,y)=>h(D,y,!1),"Array | Matrix, number | BigNumber, number":(D,y,w)=>p(D,y,!1,w,h),"Array | Matrix, number | BigNumber, boolean":h,"Array | Matrix, number | BigNumber, boolean, number":(D,y,w,x)=>p(D,y,w,x,h),"Array | Matrix, Array | Matrix":(D,y)=>g(D,y,!1),"Array | Matrix, Array | Matrix, number":(D,y,w)=>p(D,y,!1,w,g),"Array | Matrix, Array | Matrix, boolean":g,"Array | Matrix, Array | Matrix, boolean, number":(D,y,w,x)=>p(D,y,w,x,g)});function p(D,y,w,x,v){return d(D,x,N=>v(N,y,w))}function h(D,y,w){var x,v=D.valueOf();if(c(y,0))throw new Error("N/prob must be non-negative");if(f(y,1))return Ze(y)?b(v,y,w):r(b(v,y,w));if(m(y,1)){if(!l(y))throw new Error("N must be a positive integer");if(m(y,4294967295))throw new Error("N must be less than or equal to 2^32-1, as that is the maximum length of an Array");var N=n(y,1);x=[];for(var C=0;c(C,y);C++){var A=i(C+1,N);x.push(b(v,A,w))}return Ze(y)?x:r(x)}}function g(D,y,w){for(var x=D.valueOf(),v=y.valueOf(),N=[],C=0;C<v.length;++C)N.push(b(x,v[C],w));return N}function b(D,y,w){var x=dt(D),v=x.length;if(v===0)throw new Error("Cannot calculate quantile of an empty sequence");var N=Ze(y)?y*(v-1):y.times(v-1),C=Ze(y)?Math.floor(N):N.floor().toNumber(),A=Ze(y)?N%1:N.minus(C);if(l(N))return w?x[N]:s(x,Ze(y)?N:N.valueOf());var E,S;if(w)E=x[C],S=x[C+1];else{S=s(x,C+1),E=x[C];for(var F=0;F<C;++F)u(x[F],E)>0&&(E=x[F])}return n(o(E,a(1,A)),o(S,A))}}),zy="std",NZ=["typed","map","sqrt","variance"],W2=I(zy,NZ,e=>{var{typed:t,map:r,sqrt:n,variance:a}=e;return t(zy,{"Array | Matrix":i,"Array | Matrix, string":i,"Array | Matrix, number | BigNumber":i,"Array | Matrix, number | BigNumber, string":i,"...":function(s){return i(s)}});function i(o,s){if(o.length===0)throw new SyntaxError("Function std requires one or more parameters (0 provided)");try{var u=a.apply(null,arguments);return Fn(u)?r(u,n):n(u)}catch(l){throw l instanceof TypeError&&l.message.includes(" variance")?new TypeError(l.message.replace(" variance"," std")):l}}}),jy="corr",AZ=["typed","matrix","mean","sqrt","sum","add","subtract","multiply","pow","divide"],CZ=I(jy,AZ,e=>{var{typed:t,matrix:r,sqrt:n,sum:a,add:i,subtract:o,multiply:s,pow:u,divide:l}=e;return t(jy,{"Array, Array":function(d,p){return c(d,p)},"Matrix, Matrix":function(d,p){var h=c(d.toArray(),p.toArray());return Array.isArray(h)?r(h):h}});function c(m,d){var p=[];if(Array.isArray(m[0])&&Array.isArray(d[0])){if(m.length!==d.length)throw new SyntaxError("Dimension mismatch. Array A and B must have the same length.");for(var h=0;h<m.length;h++){if(m[h].length!==d[h].length)throw new SyntaxError("Dimension mismatch. Array A and B must have the same number of elements.");p.push(f(m[h],d[h]))}return p}else{if(m.length!==d.length)throw new SyntaxError("Dimension mismatch. Array A and B must have the same number of elements.");return f(m,d)}}function f(m,d){var p=m.length,h=a(m),g=a(d),b=m.reduce((v,N,C)=>i(v,s(N,d[C])),0),D=a(m.map(v=>u(v,2))),y=a(d.map(v=>u(v,2))),w=o(s(p,b),s(h,g)),x=n(s(o(s(p,D),u(h,2)),o(s(p,y),u(g,2))));return l(w,x)}}),qy="combinations",EZ=["typed"],SZ=I(qy,EZ,e=>{var{typed:t}=e;return t(qy,{"number, number":Ux,"BigNumber, BigNumber":function(n,a){var i=n.constructor,o,s,u=n.minus(a),l=new i(1);if(!Ry(n)||!Ry(a))throw new TypeError("Positive integer value expected in function combinations");if(a.gt(n))throw new TypeError("k must be less than n in function combinations");if(o=l,a.lt(u))for(s=l;s.lte(u);s=s.plus(l))o=o.times(a.plus(s)).dividedBy(s);else for(s=l;s.lte(a);s=s.plus(l))o=o.times(u.plus(s)).dividedBy(s);return o}})});function Ry(e){return e.isInteger()&&e.gte(0)}var Ly="combinationsWithRep",TZ=["typed"],MZ=I(Ly,TZ,e=>{var{typed:t}=e;return t(Ly,{"number, number":function(n,a){if(!Oe(n)||n<0)throw new TypeError("Positive integer value expected in function combinationsWithRep");if(!Oe(a)||a<0)throw new TypeError("Positive integer value expected in function combinationsWithRep");if(n<1)throw new TypeError("k must be less than or equal to n + k - 1");if(a<n-1){var i=Pa(n,n+a-1);return i/Pa(1,a)}var o=Pa(a+1,n+a-1);return o/Pa(1,n-1)},"BigNumber, BigNumber":function(n,a){var i=n.constructor,o,s,u=new i(1),l=n.minus(u);if(!Hy(n)||!Hy(a))throw new TypeError("Positive integer value expected in function combinationsWithRep");if(n.lt(u))throw new TypeError("k must be less than or equal to n + k - 1 in function combinationsWithRep");if(o=u,a.lt(l))for(s=u;s.lte(l);s=s.plus(u))o=o.times(a.plus(s)).dividedBy(s);else for(s=u;s.lte(a);s=s.plus(u))o=o.times(l.plus(s)).dividedBy(s);return o}})});function Hy(e){return e.isInteger()&&e.gte(0)}var Gy="gamma",FZ=["typed","config","multiplyScalar","pow","BigNumber","Complex"],PZ=I(Gy,FZ,e=>{var{typed:t,config:r,multiplyScalar:n,pow:a,BigNumber:i,Complex:o}=e;function s(l){if(l.im===0)return Wl(l.re);if(l.re<.5){var c=new o(1-l.re,-l.im),f=new o(Math.PI*l.re,Math.PI*l.im);return new o(Math.PI).div(f.sin()).div(s(c))}l=new o(l.re-1,l.im);for(var m=new o(zo[0],0),d=1;d<zo.length;++d){var p=new o(zo[d],0);m=m.add(p.div(l.add(d)))}var h=new o(l.re+Jx+.5,l.im),g=Math.sqrt(2*Math.PI),b=h.pow(l.add(.5)),D=h.neg().exp();return m.mul(g).mul(b).mul(D)}return t(Gy,{number:Wl,Complex:s,BigNumber:function(c){if(c.isInteger())return c.isNegative()||c.isZero()?new i(1/0):u(c.minus(1));if(!c.isFinite())return new i(c.isNegative()?NaN:1/0);throw new Error("Integer BigNumber expected")}});function u(l){if(l<8)return new i([1,1,2,6,24,120,720,5040][l]);var c=r.precision+(Math.log(l.toNumber())|0),f=i.clone({precision:c});if(l%2===1)return l.times(u(new i(l-1)));for(var m=l,d=new f(l),p=l.toNumber();m>2;)m-=2,p+=m,d=d.times(p);return new i(d.toPrecision(i.precision))}}),Vy="lgamma",kZ=["Complex","typed"],OZ=I(Vy,kZ,e=>{var{Complex:t,typed:r}=e,n=7,a=7,i=[-.029550653594771242,.00641025641025641,-.0019175269175269176,.0008417508417508417,-.0005952380952380953,.0007936507936507937,-.002777777777777778,.08333333333333333];return r(Vy,{number:Jl,Complex:o,BigNumber:function(){throw new Error("mathjs doesn't yet provide an implementation of the algorithm lgamma for BigNumber")}});function o(l){var c=6.283185307179586,f=1.1447298858494002,m=.1;if(l.isNaN())return new t(NaN,NaN);if(l.im===0)return new t(Jl(l.re),0);if(l.re>=n||Math.abs(l.im)>=a)return s(l);if(l.re<=m){var d=g9(c,l.im)*Math.floor(.5*l.re+.25),p=l.mul(Math.PI).sin().log(),h=o(new t(1-l.re,-l.im));return new t(f,d).sub(p).sub(h)}else return l.im>=0?u(l):u(l.conjugate()).conjugate()}function s(l){for(var c=l.sub(.5).mul(l.log()).sub(l).add(Kx),f=new t(1,0).div(l),m=f.div(l),d=i[0],p=i[1],h=2*m.re,g=m.re*m.re+m.im*m.im,b=2;b<8;b++){var D=p;p=-g*d+i[b],d=h*d+D}var y=f.mul(m.mul(d).add(p));return c.add(y)}function u(l){var c=0,f=0,m=l;for(l=l.add(1);l.re<=n;){m=m.mul(l);var d=m.im<0?1:0;d!==0&&f===0&&c++,f=d,l=l.add(1)}return s(l).sub(m.log()).sub(new t(0,c*2*Math.PI*1))}}),Uy="factorial",$Z=["typed","gamma"],BZ=I(Uy,$Z,e=>{var{typed:t,gamma:r}=e;return t(Uy,{number:function(a){if(a<0)throw new Error("Value must be non-negative");return r(a+1)},BigNumber:function(a){if(a.isNegative())throw new Error("Value must be non-negative");return r(a.plus(1))},"Array | Matrix":t.referToSelf(n=>a=>Xe(a,n))})}),Wy="kldivergence",_Z=["typed","matrix","divide","sum","multiply","map","dotDivide","log","isNumeric"],IZ=I(Wy,_Z,e=>{var{typed:t,matrix:r,divide:n,sum:a,multiply:i,map:o,dotDivide:s,log:u,isNumeric:l}=e;return t(Wy,{"Array, Array":function(m,d){return c(r(m),r(d))},"Matrix, Array":function(m,d){return c(m,r(d))},"Array, Matrix":function(m,d){return c(r(m),d)},"Matrix, Matrix":function(m,d){return c(m,d)}});function c(f,m){var d=m.size().length,p=f.size().length;if(d>1)throw new Error("first object must be one dimensional");if(p>1)throw new Error("second object must be one dimensional");if(d!==p)throw new Error("Length of two vectors must be equal");var h=a(f);if(h===0)throw new Error("Sum of elements in first object must be non zero");var g=a(m);if(g===0)throw new Error("Sum of elements in second object must be non zero");var b=n(f,a(f)),D=n(m,a(m)),y=a(i(b,o(s(b,D),w=>u(w))));return l(y)?y:Number.NaN}}),Jy="multinomial",zZ=["typed","add","divide","multiply","factorial","isInteger","isPositive"],jZ=I(Jy,zZ,e=>{var{typed:t,add:r,divide:n,multiply:a,factorial:i,isInteger:o,isPositive:s}=e;return t(Jy,{"Array | Matrix":function(l){var c=0,f=1;return mi(l,function(m){if(!o(m)||!s(m))throw new TypeError("Positive integer value expected in function multinomial");c=r(c,m),f=a(f,i(m))}),n(i(c),f)}})}),Ky="permutations",qZ=["typed","factorial"],RZ=I(Ky,qZ,e=>{var{typed:t,factorial:r}=e;return t(Ky,{"number | BigNumber":r,"number, number":function(a,i){if(!Oe(a)||a<0)throw new TypeError("Positive integer value expected in function permutations");if(!Oe(i)||i<0)throw new TypeError("Positive integer value expected in function permutations");if(i>a)throw new TypeError("second argument k must be less than or equal to first argument n");return Pa(a-i+1,a)},"BigNumber, BigNumber":function(a,i){var o,s;if(!Yy(a)||!Yy(i))throw new TypeError("Positive integer value expected in function permutations");if(i.gt(a))throw new TypeError("second argument k must be less than or equal to first argument n");var u=a.mul(0).add(1);for(o=u,s=a.minus(i).plus(1);s.lte(a);s=s.plus(1))o=o.times(s);return o}})});function Yy(e){return e.isInteger()&&e.gte(0)}var xl={exports:{}},LZ=xl.exports,Zy;function HZ(){return Zy||(Zy=1,(function(e){(function(t,r,n){function a(u){var l=this,c=s();l.next=function(){var f=2091639*l.s0+l.c*23283064365386963e-26;return l.s0=l.s1,l.s1=l.s2,l.s2=f-(l.c=f|0)},l.c=1,l.s0=c(" "),l.s1=c(" "),l.s2=c(" "),l.s0-=c(u),l.s0<0&&(l.s0+=1),l.s1-=c(u),l.s1<0&&(l.s1+=1),l.s2-=c(u),l.s2<0&&(l.s2+=1),c=null}function i(u,l){return l.c=u.c,l.s0=u.s0,l.s1=u.s1,l.s2=u.s2,l}function o(u,l){var c=new a(u),f=l&&l.state,m=c.next;return m.int32=function(){return c.next()*4294967296|0},m.double=function(){return m()+(m()*2097152|0)*11102230246251565e-32},m.quick=m,f&&(typeof f=="object"&&i(f,c),m.state=function(){return i(c,{})}),m}function s(){var u=4022871197,l=function(c){c=String(c);for(var f=0;f<c.length;f++){u+=c.charCodeAt(f);var m=.02519603282416938*u;u=m>>>0,m-=u,m*=u,u=m>>>0,m-=u,u+=m*4294967296}return(u>>>0)*23283064365386963e-26};return l}r&&r.exports?r.exports=o:this.alea=o})(LZ,e)})(xl)),xl.exports}var Dl={exports:{}},GZ=Dl.exports,Qy;function VZ(){return Qy||(Qy=1,(function(e){(function(t,r,n){function a(s){var u=this,l="";u.x=0,u.y=0,u.z=0,u.w=0,u.next=function(){var f=u.x^u.x<<11;return u.x=u.y,u.y=u.z,u.z=u.w,u.w^=u.w>>>19^f^f>>>8},s===(s|0)?u.x=s:l+=s;for(var c=0;c<l.length+64;c++)u.x^=l.charCodeAt(c)|0,u.next()}function i(s,u){return u.x=s.x,u.y=s.y,u.z=s.z,u.w=s.w,u}function o(s,u){var l=new a(s),c=u&&u.state,f=function(){return(l.next()>>>0)/4294967296};return f.double=function(){do var m=l.next()>>>11,d=(l.next()>>>0)/4294967296,p=(m+d)/(1<<21);while(p===0);return p},f.int32=l.next,f.quick=f,c&&(typeof c=="object"&&i(c,l),f.state=function(){return i(l,{})}),f}r&&r.exports?r.exports=o:this.xor128=o})(GZ,e)})(Dl)),Dl.exports}var Nl={exports:{}},UZ=Nl.exports,Xy;function WZ(){return Xy||(Xy=1,(function(e){(function(t,r,n){function a(s){var u=this,l="";u.next=function(){var f=u.x^u.x>>>2;return u.x=u.y,u.y=u.z,u.z=u.w,u.w=u.v,(u.d=u.d+362437|0)+(u.v=u.v^u.v<<4^(f^f<<1))|0},u.x=0,u.y=0,u.z=0,u.w=0,u.v=0,s===(s|0)?u.x=s:l+=s;for(var c=0;c<l.length+64;c++)u.x^=l.charCodeAt(c)|0,c==l.length&&(u.d=u.x<<10^u.x>>>4),u.next()}function i(s,u){return u.x=s.x,u.y=s.y,u.z=s.z,u.w=s.w,u.v=s.v,u.d=s.d,u}function o(s,u){var l=new a(s),c=u&&u.state,f=function(){return(l.next()>>>0)/4294967296};return f.double=function(){do var m=l.next()>>>11,d=(l.next()>>>0)/4294967296,p=(m+d)/(1<<21);while(p===0);return p},f.int32=l.next,f.quick=f,c&&(typeof c=="object"&&i(c,l),f.state=function(){return i(l,{})}),f}r&&r.exports?r.exports=o:this.xorwow=o})(UZ,e)})(Nl)),Nl.exports}var Al={exports:{}},JZ=Al.exports,eb;function KZ(){return eb||(eb=1,(function(e){(function(t,r,n){function a(s){var u=this;u.next=function(){var c=u.x,f=u.i,m,d;return m=c[f],m^=m>>>7,d=m^m<<24,m=c[f+1&7],d^=m^m>>>10,m=c[f+3&7],d^=m^m>>>3,m=c[f+4&7],d^=m^m<<7,m=c[f+7&7],m=m^m<<13,d^=m^m<<9,c[f]=d,u.i=f+1&7,d};function l(c,f){var m,d=[];if(f===(f|0))d[0]=f;else for(f=""+f,m=0;m<f.length;++m)d[m&7]=d[m&7]<<15^f.charCodeAt(m)+d[m+1&7]<<13;for(;d.length<8;)d.push(0);for(m=0;m<8&&d[m]===0;++m);for(m==8?d[7]=-1:d[m],c.x=d,c.i=0,m=256;m>0;--m)c.next()}l(u,s)}function i(s,u){return u.x=s.x.slice(),u.i=s.i,u}function o(s,u){s==null&&(s=+new Date);var l=new a(s),c=u&&u.state,f=function(){return(l.next()>>>0)/4294967296};return f.double=function(){do var m=l.next()>>>11,d=(l.next()>>>0)/4294967296,p=(m+d)/(1<<21);while(p===0);return p},f.int32=l.next,f.quick=f,c&&(c.x&&i(c,l),f.state=function(){return i(l,{})}),f}r&&r.exports?r.exports=o:this.xorshift7=o})(JZ,e)})(Al)),Al.exports}var Cl={exports:{}},YZ=Cl.exports,tb;function ZZ(){return tb||(tb=1,(function(e){(function(t,r,n){function a(s){var u=this;u.next=function(){var c=u.w,f=u.X,m=u.i,d,p;return u.w=c=c+1640531527|0,p=f[m+34&127],d=f[m=m+1&127],p^=p<<13,d^=d<<17,p^=p>>>15,d^=d>>>12,p=f[m]=p^d,u.i=m,p+(c^c>>>16)|0};function l(c,f){var m,d,p,h,g,b=[],D=128;for(f===(f|0)?(d=f,f=null):(f=f+"\0",d=0,D=Math.max(D,f.length)),p=0,h=-32;h<D;++h)f&&(d^=f.charCodeAt((h+32)%f.length)),h===0&&(g=d),d^=d<<10,d^=d>>>15,d^=d<<4,d^=d>>>13,h>=0&&(g=g+1640531527|0,m=b[h&127]^=d+g,p=m==0?p+1:0);for(p>=128&&(b[(f&&f.length||0)&127]=-1),p=127,h=512;h>0;--h)d=b[p+34&127],m=b[p=p+1&127],d^=d<<13,m^=m<<17,d^=d>>>15,m^=m>>>12,b[p]=d^m;c.w=g,c.X=b,c.i=p}l(u,s)}function i(s,u){return u.i=s.i,u.w=s.w,u.X=s.X.slice(),u}function o(s,u){s==null&&(s=+new Date);var l=new a(s),c=u&&u.state,f=function(){return(l.next()>>>0)/4294967296};return f.double=function(){do var m=l.next()>>>11,d=(l.next()>>>0)/4294967296,p=(m+d)/(1<<21);while(p===0);return p},f.int32=l.next,f.quick=f,c&&(c.X&&i(c,l),f.state=function(){return i(l,{})}),f}r&&r.exports?r.exports=o:this.xor4096=o})(YZ,e)})(Cl)),Cl.exports}var El={exports:{}},QZ=El.exports,rb;function XZ(){return rb||(rb=1,(function(e){(function(t,r,n){function a(s){var u=this,l="";u.next=function(){var f=u.b,m=u.c,d=u.d,p=u.a;return f=f<<25^f>>>7^m,m=m-d|0,d=d<<24^d>>>8^p,p=p-f|0,u.b=f=f<<20^f>>>12^m,u.c=m=m-d|0,u.d=d<<16^m>>>16^p,u.a=p-f|0},u.a=0,u.b=0,u.c=-1640531527,u.d=1367130551,s===Math.floor(s)?(u.a=s/4294967296|0,u.b=s|0):l+=s;for(var c=0;c<l.length+20;c++)u.b^=l.charCodeAt(c)|0,u.next()}function i(s,u){return u.a=s.a,u.b=s.b,u.c=s.c,u.d=s.d,u}function o(s,u){var l=new a(s),c=u&&u.state,f=function(){return(l.next()>>>0)/4294967296};return f.double=function(){do var m=l.next()>>>11,d=(l.next()>>>0)/4294967296,p=(m+d)/(1<<21);while(p===0);return p},f.int32=l.next,f.quick=f,c&&(typeof c=="object"&&i(c,l),f.state=function(){return i(l,{})}),f}r&&r.exports?r.exports=o:this.tychei=o})(QZ,e)})(El)),El.exports}var Sl={exports:{}};const eQ={},tQ=Object.freeze(Object.defineProperty({__proto__:null,default:eQ},Symbol.toStringTag,{value:"Module"})),rQ=oc.getAugmentedNamespace(tQ);var nQ=Sl.exports,nb;function aQ(){return nb||(nb=1,(function(e){(function(t,r,n){var a=256,i=6,o=52,s="random",u=n.pow(a,i),l=n.pow(2,o),c=l*2,f=a-1,m;function d(w,x,v){var N=[];x=x==!0?{entropy:!0}:x||{};var C=b(g(x.entropy?[w,y(r)]:w??D(),3),N),A=new p(N),E=function(){for(var S=A.g(i),F=u,k=0;S<l;)S=(S+k)*a,F*=a,k=A.g(1);for(;S>=c;)S/=2,F/=2,k>>>=1;return(S+k)/F};return E.int32=function(){return A.g(4)|0},E.quick=function(){return A.g(4)/4294967296},E.double=E,b(y(A.S),r),(x.pass||v||function(S,F,k,B){return B&&(B.S&&h(B,A),S.state=function(){return h(A,{})}),k?(n[s]=S,F):S})(E,C,"global"in x?x.global:this==n,x.state)}function p(w){var x,v=w.length,N=this,C=0,A=N.i=N.j=0,E=N.S=[];for(v||(w=[v++]);C<a;)E[C]=C++;for(C=0;C<a;C++)E[C]=E[A=f&A+w[C%v]+(x=E[C])],E[A]=x;(N.g=function(S){for(var F,k=0,B=N.i,$=N.j,M=N.S;S--;)F=M[B=f&B+1],k=k*a+M[f&(M[B]=M[$=f&$+F])+(M[$]=F)];return N.i=B,N.j=$,k})(a)}function h(w,x){return x.i=w.i,x.j=w.j,x.S=w.S.slice(),x}function g(w,x){var v=[],N=typeof w,C;if(x&&N=="object")for(C in w)try{v.push(g(w[C],x-1))}catch{}return v.length?v:N=="string"?w:w+"\0"}function b(w,x){for(var v=w+"",N,C=0;C<v.length;)x[f&C]=f&(N^=x[f&C]*19)+v.charCodeAt(C++);return y(x)}function D(){try{var w;return m&&(w=m.randomBytes)?w=w(a):(w=new Uint8Array(a),(t.crypto||t.msCrypto).getRandomValues(w)),y(w)}catch{var x=t.navigator,v=x&&x.plugins;return[+new Date,t,v,t.screen,y(r)]}}function y(w){return String.fromCharCode.apply(0,w)}if(b(n.random(),r),e.exports){e.exports=d;try{m=rQ}catch{}}else n["seed"+s]=d})(typeof self<"u"?self:nQ,[],Math)})(Sl)),Sl.exports}var _f,ab;function iQ(){if(ab)return _f;ab=1;var e=HZ(),t=VZ(),r=WZ(),n=KZ(),a=ZZ(),i=XZ(),o=aQ();return o.alea=e,o.xor128=t,o.xorwow=r,o.xorshift7=n,o.xor4096=a,o.tychei=i,_f=o,_f}var oQ=iQ();const J2=oc.getDefaultExportFromCjs(oQ);var sQ=J2(Date.now());function Uo(e){var t;function r(a){t=a===null?sQ:J2(String(a))}r(e);function n(){return t()}return n}var ib="pickRandom",uQ=["typed","config","?on"],lQ=I(ib,uQ,e=>{var{typed:t,config:r,on:n}=e,a=Uo(r.randomSeed);return n&&n("config",function(o,s){o.randomSeed!==s.randomSeed&&(a=Uo(o.randomSeed))}),t(ib,{"Array | Matrix":function(s){return i(s,{})},"Array | Matrix, Object":function(s,u){return i(s,u)},"Array | Matrix, number":function(s,u){return i(s,{number:u})},"Array | Matrix, Array | Matrix":function(s,u){return i(s,{weights:u})},"Array | Matrix, Array | Matrix, number":function(s,u,l){return i(s,{number:l,weights:u})},"Array | Matrix, number, Array | Matrix":function(s,u,l){return i(s,{number:u,weights:l})}});function i(o,s){var{number:u,weights:l,elementWise:c=!0}=s,f=typeof u>"u";f&&(u=1);var m=Re(o)?o.create:Re(l)?l.create:null;o=o.valueOf(),l&&(l=l.valueOf()),c===!0&&(o=dt(o),l=dt(l));var d=0;if(typeof l<"u"){if(l.length!==o.length)throw new Error("Weights must have the same length as possibles");for(var p=0,h=l.length;p<h;p++){if(!Ze(l[p])||l[p]<0)throw new Error("Weights must be an array of positive numbers");d+=l[p]}}for(var g=o.length,b=[],D;b.length<u;){if(typeof l>"u")D=o[Math.floor(a()*g)];else for(var y=a()*d,w=0,x=o.length;w<x;w++)if(y-=l[w],y<0){D=o[w];break}b.push(D)}return f?b[0]:m?m(b):b}});function Fd(e,t){var r=[];if(e=e.slice(0),e.length>1)for(var n=0,a=e.shift();n<a;n++)r.push(Fd(e,t));else for(var i=0,o=e.shift();i<o;i++)r.push(t());return r}var ob="random",cQ=["typed","config","?on"],fQ=I(ob,cQ,e=>{var{typed:t,config:r,on:n}=e,a=Uo(r.randomSeed);return n&&n("config",function(s,u){s.randomSeed!==u.randomSeed&&(a=Uo(s.randomSeed))}),t(ob,{"":()=>o(0,1),number:s=>o(0,s),"number, number":(s,u)=>o(s,u),"Array | Matrix":s=>i(s,0,1),"Array | Matrix, number":(s,u)=>i(s,0,u),"Array | Matrix, number, number":(s,u,l)=>i(s,u,l)});function i(s,u,l){var c=Fd(s.valueOf(),()=>o(u,l));return Re(s)?s.create(c,"number"):c}function o(s,u){return s+a()*(u-s)}}),sb="randomInt",mQ=["typed","config","log2","?on"],dQ=I(sb,mQ,e=>{var{typed:t,config:r,log2:n,on:a}=e,i=Uo(r.randomSeed);return a&&a("config",function(l,c){l.randomSeed!==c.randomSeed&&(i=Uo(l.randomSeed))}),t(sb,{"":()=>s(0,2),number:l=>s(0,l),"number, number":(l,c)=>s(l,c),bigint:l=>u(0n,l),"bigint, bigint":u,"Array | Matrix":l=>o(l,0,1),"Array | Matrix, number":(l,c)=>o(l,0,c),"Array | Matrix, number, number":(l,c,f)=>o(l,c,f)});function o(l,c,f){var m=Fd(l.valueOf(),()=>s(c,f));return Re(l)?l.create(m,"number"):m}function s(l,c){return Math.floor(l+i()*(c-l))}function u(l,c){var f=2n**30n,m=c-l;if(m<=f)return l+BigInt(s(0,Number(m)));for(var d=n(m),p=m;p>=m;){p=0n;for(var h=0;h<d;++h)p=2n*p+(i()<.5?0n:1n)}return l+p}}),ub="stirlingS2",hQ=["typed","addScalar","subtractScalar","multiplyScalar","divideScalar","pow","factorial","combinations","isNegative","isInteger","number","?bignumber","larger"],pQ=I(ub,hQ,e=>{var{typed:t,addScalar:r,subtractScalar:n,multiplyScalar:a,divideScalar:i,pow:o,factorial:s,combinations:u,isNegative:l,isInteger:c,number:f,bignumber:m,larger:d}=e,p=[],h=[];return t(ub,{"number | BigNumber, number | BigNumber":function(b,D){if(!c(b)||l(b)||!c(D)||l(D))throw new TypeError("Non-negative integer value expected in function stirlingS2");if(d(D,b))throw new TypeError("k must be less than or equal to n in function stirlingS2");var y=!(Ze(b)&&Ze(D)),w=y?h:p,x=y?m:f,v=f(b),N=f(D);if(w[v]&&w[v].length>N)return w[v][N];for(var C=0;C<=v;++C)if(w[C]||(w[C]=[x(C===0?1:0)]),C!==0)for(var A=w[C],E=w[C-1],S=A.length;S<=C&&S<=N;++S)S===C?A[S]=1:A[S]=r(a(x(S),E[S]),E[S-1]);return w[v][N]}})}),lb="bellNumbers",gQ=["typed","addScalar","isNegative","isInteger","stirlingS2"],vQ=I(lb,gQ,e=>{var{typed:t,addScalar:r,isNegative:n,isInteger:a,stirlingS2:i}=e;return t(lb,{"number | BigNumber":function(s){if(!a(s)||n(s))throw new TypeError("Non-negative integer value expected in function bellNumbers");for(var u=0,l=0;l<=s;l++)u=r(u,i(s,l));return u}})}),cb="catalan",yQ=["typed","addScalar","divideScalar","multiplyScalar","combinations","isNegative","isInteger"],bQ=I(cb,yQ,e=>{var{typed:t,addScalar:r,divideScalar:n,multiplyScalar:a,combinations:i,isNegative:o,isInteger:s}=e;return t(cb,{"number | BigNumber":function(l){if(!s(l)||o(l))throw new TypeError("Non-negative integer value expected in function catalan");return n(i(a(l,2),l),r(l,1))}})}),fb="composition",wQ=["typed","addScalar","combinations","isNegative","isPositive","isInteger","larger"],xQ=I(fb,wQ,e=>{var{typed:t,addScalar:r,combinations:n,isPositive:a,isNegative:i,isInteger:o,larger:s}=e;return t(fb,{"number | BigNumber, number | BigNumber":function(l,c){if(!o(l)||!a(l)||!o(c)||!a(c))throw new TypeError("Positive integer value expected in function composition");if(s(c,l))throw new TypeError("k must be less than or equal to n in function composition");return n(r(l,-1),r(c,-1))}})}),mb="leafCount",DQ=["parse","typed"],NQ=I(mb,DQ,e=>{var{parse:t,typed:r}=e;function n(a){var i=0;return a.forEach(o=>{i+=n(o)}),i||1}return r(mb,{Node:function(i){return n(i)}})});function db(e){return ct(e)||Yt(e)&&e.isUnary()&&ct(e.args[0])}function ac(e){return!!(ct(e)||(li(e)||Yt(e))&&e.args.every(ac)||Ia(e)&&ac(e.content))}function hb(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function If(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?hb(Object(r),!0).forEach(function(n){nr(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):hb(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var AQ="simplifyUtil",CQ=["FunctionNode","OperatorNode","SymbolNode"],Pd=I(AQ,CQ,e=>{var{FunctionNode:t,OperatorNode:r,SymbolNode:n}=e,a=!0,i=!1,o="defaultF",s={add:{trivial:a,total:a,commutative:a,associative:a},unaryPlus:{trivial:a,total:a,commutative:a,associative:a},subtract:{trivial:i,total:a,commutative:i,associative:i},multiply:{trivial:a,total:a,commutative:a,associative:a},divide:{trivial:i,total:a,commutative:i,associative:i},paren:{trivial:a,total:a,commutative:a,associative:i},defaultF:{trivial:i,total:a,commutative:i,associative:i}},u={divide:{total:i},log:{total:i}},l={subtract:{total:i},abs:{trivial:a},log:{total:a}};function c(y,w){var x=arguments.length>2&&arguments[2]!==void 0?arguments[2]:s,v=o;if(typeof y=="string"?v=y:Yt(y)?v=y.fn.toString():li(y)?v=y.name:Ia(y)&&(v="paren"),Pe(x,v)){var N=x[v];if(Pe(N,w))return N[w];if(Pe(s,v))return s[v][w]}if(Pe(x,o)){var C=x[o];return Pe(C,w)?C[w]:s[o][w]}if(Pe(s,v)){var A=s[v];if(Pe(A,w))return A[w]}return s[o][w]}function f(y){var w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:s;return c(y,"commutative",w)}function m(y){var w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:s;return c(y,"associative",w)}function d(y,w){var x=If({},y);for(var v in w)Pe(y,v)?x[v]=If(If({},w[v]),y[v]):x[v]=w[v];return x}function p(y,w){if(!y.args||y.args.length===0)return y;y.args=h(y,w);for(var x=0;x<y.args.length;x++)p(y.args[x],w)}function h(y,w){var x,v=[],N=function(A){for(var E=0;E<A.args.length;E++){var S=A.args[E];Yt(S)&&x===S.op?N(S):v.push(S)}};return m(y,w)?(x=y.op,N(y),v):y.args}function g(y,w){if(!(!y.args||y.args.length===0)){for(var x=D(y),v=y.args.length,N=0;N<v;N++)g(y.args[N],w);if(v>2&&m(y,w)){for(var C=y.args.pop();y.args.length>0;)C=x([y.args.pop(),C]);y.args=C.args}}}function b(y,w){if(!(!y.args||y.args.length===0)){for(var x=D(y),v=y.args.length,N=0;N<v;N++)b(y.args[N],w);if(v>2&&m(y,w)){for(var C=y.args.shift();y.args.length>0;)C=x([C,y.args.shift()]);y.args=C.args}}}function D(y){return Yt(y)?function(w){try{return new r(y.op,y.fn,w,y.implicit)}catch(x){return console.error(x),[]}}:function(w){return new t(new n(y.name),w)}}return{createMakeNodeFunction:D,hasProperty:c,isCommutative:f,isAssociative:m,mergeContext:d,flatten:p,allChildren:h,unflattenr:g,unflattenl:b,defaultContext:s,realContext:u,positiveContext:l}}),EQ="simplify",SQ=["typed","parse","equal","resolve","simplifyConstant","simplifyCore","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","ParenthesisNode","SymbolNode","replacer"],TQ=I(EQ,SQ,e=>{var{typed:t,parse:r,equal:n,resolve:a,simplifyConstant:i,simplifyCore:o,AccessorNode:s,ArrayNode:u,ConstantNode:l,FunctionNode:c,IndexNode:f,ObjectNode:m,OperatorNode:d,ParenthesisNode:p,SymbolNode:h,replacer:g}=e,{hasProperty:b,isCommutative:D,isAssociative:y,mergeContext:w,flatten:x,unflattenr:v,unflattenl:N,createMakeNodeFunction:C,defaultContext:A,realContext:E,positiveContext:S}=Pd({FunctionNode:c,OperatorNode:d,SymbolNode:h});t.addConversion({from:"Object",to:"Map",convert:_o});var F=t("simplify",{Node:R,"Node, Map":(j,H)=>R(j,!1,H),"Node, Map, Object":(j,H,J)=>R(j,!1,H,J),"Node, Array":R,"Node, Array, Map":R,"Node, Array, Map, Object":R});t.removeConversion({from:"Object",to:"Map",convert:_o}),F.defaultContext=A,F.realContext=E,F.positiveContext=S;function k(j){return j.transform(function(H){return Ia(H)?k(H.content):H})}var B={true:!0,false:!0,e:!0,i:!0,Infinity:!0,LN2:!0,LN10:!0,LOG2E:!0,LOG10E:!0,NaN:!0,phi:!0,pi:!0,SQRT1_2:!0,SQRT2:!0,tau:!0};F.rules=[o,{l:"log(e)",r:"1"},{s:"n-n1 -> n+-n1",assuming:{subtract:{total:!0}}},{s:"n-n -> 0",assuming:{subtract:{total:!1}}},{s:"-(cl*v) -> v * (-cl)",assuming:{multiply:{commutative:!0},subtract:{total:!0}}},{s:"-(cl*v) -> (-cl) * v",assuming:{multiply:{commutative:!1},subtract:{total:!0}}},{s:"-(v*cl) -> v * (-cl)",assuming:{multiply:{commutative:!1},subtract:{total:!0}}},{l:"-(n1/n2)",r:"-n1/n2"},{l:"-v",r:"v * (-1)"},{l:"(n1 + n2)*(-1)",r:"n1*(-1) + n2*(-1)",repeat:!0},{l:"n/n1^n2",r:"n*n1^-n2"},{l:"n/n1",r:"n*n1^-1"},{s:"(n1*n2)^n3 -> n1^n3 * n2^n3",assuming:{multiply:{commutative:!0}}},{s:"(n1*n2)^(-1) -> n2^(-1) * n1^(-1)",assuming:{multiply:{commutative:!1}}},{s:"(n ^ n1) ^ n2 -> n ^ (n1 * n2)",assuming:{divide:{total:!0}}},{l:" vd * ( vd * n1 + n2)",r:"vd^2 * n1 + vd * n2"},{s:" vd * (vd^n4 * n1 + n2) -> vd^(1+n4) * n1 + vd * n2",assuming:{divide:{total:!0}}},{s:"vd^n3 * ( vd * n1 + n2) -> vd^(n3+1) * n1 + vd^n3 * n2",assuming:{divide:{total:!0}}},{s:"vd^n3 * (vd^n4 * n1 + n2) -> vd^(n3+n4) * n1 + vd^n3 * n2",assuming:{divide:{total:!0}}},{l:"n*n",r:"n^2"},{s:"n * n^n1 -> n^(n1+1)",assuming:{divide:{total:!0}}},{s:"n^n1 * n^n2 -> n^(n1+n2)",assuming:{divide:{total:!0}}},i,{s:"n+n -> 2*n",assuming:{add:{total:!0}}},{l:"n+-n",r:"0"},{l:"vd*n + vd",r:"vd*(n+1)"},{l:"n3*n1 + n3*n2",r:"n3*(n1+n2)"},{l:"n3^(-n4)*n1 + n3 * n2",r:"n3^(-n4)*(n1 + n3^(n4+1) *n2)"},{l:"n3^(-n4)*n1 + n3^n5 * n2",r:"n3^(-n4)*(n1 + n3^(n4+n5)*n2)"},{s:"n*vd + vd -> (n+1)*vd",assuming:{multiply:{commutative:!1}}},{s:"vd + n*vd -> (1+n)*vd",assuming:{multiply:{commutative:!1}}},{s:"n1*n3 + n2*n3 -> (n1+n2)*n3",assuming:{multiply:{commutative:!1}}},{s:"n^n1 * n -> n^(n1+1)",assuming:{divide:{total:!0},multiply:{commutative:!1}}},{s:"n1*n3^(-n4) + n2 * n3 -> (n1 + n2*n3^(n4 + 1))*n3^(-n4)",assuming:{multiply:{commutative:!1}}},{s:"n1*n3^(-n4) + n2 * n3^n5 -> (n1 + n2*n3^(n4 + n5))*n3^(-n4)",assuming:{multiply:{commutative:!1}}},{l:"n*cd + cd",r:"(n+1)*cd"},{s:"cd*n + cd -> cd*(n+1)",assuming:{multiply:{commutative:!1}}},{s:"cd + cd*n -> cd*(1+n)",assuming:{multiply:{commutative:!1}}},i,{s:"(-n)*n1 -> -(n*n1)",assuming:{subtract:{total:!0}}},{s:"n1*(-n) -> -(n1*n)",assuming:{subtract:{total:!0},multiply:{commutative:!1}}},{s:"ce+ve -> ve+ce",assuming:{add:{commutative:!0}},imposeContext:{add:{commutative:!1}}},{s:"vd*cd -> cd*vd",assuming:{multiply:{commutative:!0}},imposeContext:{multiply:{commutative:!1}}},{l:"n+-n1",r:"n-n1"},{l:"n+-(n1)",r:"n-(n1)"},{s:"n*(n1^-1) -> n/n1",assuming:{multiply:{commutative:!0}}},{s:"n*n1^-n2 -> n/n1^n2",assuming:{multiply:{commutative:!0}}},{s:"n^-1 -> 1/n",assuming:{multiply:{commutative:!0}}},{l:"n^1",r:"n"},{s:"n*(n1/n2) -> (n*n1)/n2",assuming:{multiply:{associative:!0}}},{s:"n-(n1+n2) -> n-n1-n2",assuming:{addition:{associative:!0,commutative:!0}}},{l:"1*n",r:"n",imposeContext:{multiply:{commutative:!0}}},{s:"n1/(n2/n3) -> (n1*n3)/n2",assuming:{multiply:{associative:!0}}},{l:"n1/(-n2)",r:"-n1/n2"}];function $(j,H){var J={};if(j.s){var Q=j.s.split("->");if(Q.length===2)J.l=Q[0],J.r=Q[1];else throw SyntaxError("Could not parse rule: "+j.s)}else J.l=j.l,J.r=j.r;J.l=k(r(J.l)),J.r=k(r(J.r));for(var X of["imposeContext","repeat","assuming"])X in j&&(J[X]=j[X]);if(j.evaluate&&(J.evaluate=r(j.evaluate)),y(J.l,H)){var ue=!D(J.l,H),se;ue&&(se=G());var we=C(J.l),Me=G();J.expanded={},J.expanded.l=we([J.l,Me]),x(J.expanded.l,H),v(J.expanded.l,H),J.expanded.r=we([J.r,Me]),ue&&(J.expandedNC1={},J.expandedNC1.l=we([se,J.l]),J.expandedNC1.r=we([se,J.r]),J.expandedNC2={},J.expandedNC2.l=we([se,J.expanded.l]),J.expandedNC2.r=we([se,J.expanded.r]))}return J}function M(j,H){for(var J=[],Q=0;Q<j.length;Q++){var X=j[Q],ue=void 0,se=typeof X;switch(se){case"string":X={s:X};case"object":ue=$(X,H);break;case"function":ue=X;break;default:throw TypeError("Unsupported type of rule: "+se)}J.push(ue)}return J}var z=0;function G(){return new h("_p"+z++)}function R(j,H){var J=arguments.length>2&&arguments[2]!==void 0?arguments[2]:js(),Q=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},X=Q.consoleDebug;H=M(H||F.rules,Q.context);var ue=a(j,J);ue=k(ue);for(var se={},we=ue.toString({parenthesis:"all"});!se[we];){se[we]=!0,z=0;var Me=we;X&&console.log("Working on: ",we);for(var ke=0;ke<H.length;ke++){var Se="";if(typeof H[ke]=="function"?(ue=H[ke](ue,Q),X&&(Se=H[ke].name)):(x(ue,Q.context),ue=te(ue,H[ke],Q.context),X&&(Se="".concat(H[ke].l.toString()," -> ").concat(H[ke].r.toString()))),X){var $e=ue.toString({parenthesis:"all"});$e!==Me&&(console.log("Applying",Se,"produced",$e),Me=$e)}N(ue,Q.context)}we=ue.toString({parenthesis:"all"})}return ue}function Z(j,H,J){var Q=j;if(j)for(var X=0;X<j.length;++X){var ue=te(j[X],H,J);ue!==j[X]&&(Q===j&&(Q=j.slice()),Q[X]=ue)}return Q}function te(j,H,J){if(H.assuming){for(var Q in H.assuming)for(var X in H.assuming[Q])if(b(Q,X,J)!==H.assuming[Q][X])return j}var ue=w(H.imposeContext,J),se=j;if(se instanceof d||se instanceof c){var we=Z(se.args,H,J);we!==se.args&&(se=se.clone(),se.args=we)}else if(se instanceof p){if(se.content){var Me=te(se.content,H,J);Me!==se.content&&(se=new p(Me))}}else if(se instanceof u){var ke=Z(se.items,H,J);ke!==se.items&&(se=new u(ke))}else if(se instanceof s){var Se=se.object;se.object&&(Se=te(se.object,H,J));var $e=se.index;se.index&&($e=te(se.index,H,J)),(Se!==se.object||$e!==se.index)&&(se=new s(Se,$e))}else if(se instanceof f){var q=Z(se.dimensions,H,J);q!==se.dimensions&&(se=new f(q))}else if(se instanceof m){var K=!1,re={};for(var O in se.properties)re[O]=te(se.properties[O],H,J),re[O]!==se.properties[O]&&(K=!0);K&&(se=new m(re))}var L=H.r,Y=ae(H.l,se,ue)[0];if(!Y&&H.expanded&&(L=H.expanded.r,Y=ae(H.expanded.l,se,ue)[0]),!Y&&H.expandedNC1&&(L=H.expandedNC1.r,Y=ae(H.expandedNC1.l,se,ue)[0],Y||(L=H.expandedNC2.r,Y=ae(H.expandedNC2.l,se,ue)[0])),Y){var ee=se.implicit;se=L.clone(),ee&&"implicit"in L&&(se.implicit=!0),se=se.transform(function(ne){return ne.isSymbolNode&&Pe(Y.placeholders,ne.name)?Y.placeholders[ne.name].clone():ne})}return H.repeat&&se!==j&&(se=te(se,H,J)),se}function P(j,H){var J=[],Q,X,ue=C(j);if(D(j,H))for(var se=0;se<j.args.length;se++)X=j.args.slice(0),X.splice(se,1),Q=X.length===1?X[0]:ue(X),J.push(ue([j.args[se],Q]));else for(var we=1;we<j.args.length;we++){var Me=j.args[0];we>1&&(Me=ue(j.args.slice(0,we))),X=j.args.slice(we),Q=X.length===1?X[0]:ue(X),J.push(ue([Me,Q]))}return J}function V(j,H){var J={placeholders:{}};if(!j.placeholders&&!H.placeholders)return J;if(j.placeholders){if(!H.placeholders)return j}else return H;for(var Q in j.placeholders)if(Pe(j.placeholders,Q)&&(J.placeholders[Q]=j.placeholders[Q],Pe(H.placeholders,Q)&&!ie(j.placeholders[Q],H.placeholders[Q])))return null;for(var X in H.placeholders)Pe(H.placeholders,X)&&(J.placeholders[X]=H.placeholders[X]);return J}function _(j,H){var J=[];if(j.length===0||H.length===0)return J;for(var Q,X=0;X<j.length;X++)for(var ue=0;ue<H.length;ue++)Q=V(j[X],H[ue]),Q&&J.push(Q);return J}function ce(j){if(j.length===0)return j;for(var H=j.reduce(_),J=[],Q={},X=0;X<H.length;X++){var ue=JSON.stringify(H[X],g);Q[ue]||(Q[ue]=!0,J.push(H[X]))}return J}function ae(j,H,J,Q){var X=[{placeholders:{}}];if(j instanceof d&&H instanceof d||j instanceof c&&H instanceof c){if(j instanceof d){if(j.op!==H.op||j.fn!==H.fn)return[]}else if(j instanceof c&&j.name!==H.name)return[];if(H.args.length===1&&j.args.length===1||!y(H,J)&&H.args.length===j.args.length||Q){for(var ue=[],se=0;se<j.args.length;se++){var we=ae(j.args[se],H.args[se],J);if(we.length===0)break;ue.push(we)}if(ue.length!==j.args.length){if(!D(H,J)||j.args.length===1)return[];if(j.args.length>2)throw new Error("permuting >2 commutative non-associative rule arguments not yet implemented");var Me=ae(j.args[0],H.args[1],J);if(Me.length===0)return[];var ke=ae(j.args[1],H.args[0],J);if(ke.length===0)return[];ue=[Me,ke]}X=ce(ue)}else if(H.args.length>=2&&j.args.length===2){for(var Se=P(H,J),$e=[],q=0;q<Se.length;q++){var K=ae(j,Se[q],J,!0);$e=$e.concat(K)}return $e}else{if(j.args.length>2)throw Error("Unexpected non-binary associative function: "+j.toString());return[]}}else if(j instanceof h){if(j.name.length===0)throw new Error("Symbol in rule has 0 length...!?");if(B[j.name]){if(j.name!==H.name)return[]}else switch(j.name[1]>="a"&&j.name[1]<="z"?j.name.substring(0,2):j.name[0]){case"n":case"_p":X[0].placeholders[j.name]=H;break;case"c":case"cl":if(ct(H))X[0].placeholders[j.name]=H;else return[];break;case"v":if(!ct(H))X[0].placeholders[j.name]=H;else return[];break;case"vl":if(yr(H))X[0].placeholders[j.name]=H;else return[];break;case"cd":if(db(H))X[0].placeholders[j.name]=H;else return[];break;case"vd":if(!db(H))X[0].placeholders[j.name]=H;else return[];break;case"ce":if(ac(H))X[0].placeholders[j.name]=H;else return[];break;case"ve":if(!ac(H))X[0].placeholders[j.name]=H;else return[];break;default:throw new Error("Invalid symbol in rule: "+j.name)}}else if(j instanceof l){if(!n(j.value,H.value))return[]}else return[];return X}function ie(j,H){if(j instanceof l&&H instanceof l){if(!n(j.value,H.value))return!1}else if(j instanceof h&&H instanceof h){if(j.name!==H.name)return!1}else if(j instanceof d&&H instanceof d||j instanceof c&&H instanceof c){if(j instanceof d){if(j.op!==H.op||j.fn!==H.fn)return!1}else if(j instanceof c&&j.name!==H.name)return!1;if(j.args.length!==H.args.length)return!1;for(var J=0;J<j.args.length;J++)if(!ie(j.args[J],H.args[J]))return!1}else return!1;return!0}return F}),MQ="simplifyConstant",FQ=["typed","config","mathWithTransform","matrix","?fraction","?bignumber","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","SymbolNode"],PQ=I(MQ,FQ,e=>{var{typed:t,config:r,mathWithTransform:n,matrix:a,fraction:i,bignumber:o,AccessorNode:s,ArrayNode:u,ConstantNode:l,FunctionNode:c,IndexNode:f,ObjectNode:m,OperatorNode:d,SymbolNode:p}=e,{isCommutative:h,isAssociative:g,allChildren:b,createMakeNodeFunction:D}=Pd({FunctionNode:c,OperatorNode:d,SymbolNode:p}),y=t("simplifyConstant",{Node:$=>N(B($,{})),"Node, Object":function(M,z){return N(B(M,z))}});function w($){return Zs($)?$.valueOf():$ instanceof Array?$.map(w):Re($)?a(w($.valueOf())):$}function x($,M,z){try{return n[$].apply(null,M)}catch{return M=M.map(w),A(n[$].apply(null,M),z)}}var v=t({Fraction:S,number:function(M){return M<0?E(new l(-M)):new l(M)},BigNumber:function(M){return M<0?E(new l(-M)):new l(M)},bigint:function(M){return M<0n?E(new l(-M)):new l(M)},Complex:function(M){throw new Error("Cannot convert Complex number to Node")},string:function(M){return new l(M)},Matrix:function(M){return new u(M.valueOf().map(z=>v(z)))}});function N($){return Nt($)?$:v($)}function C($,M){var z=M&&M.exactFractions!==!1;if(z&&isFinite($)&&i){var G=i($),R=M&&typeof M.fractionsLimit=="number"?M.fractionsLimit:1/0;if(G.valueOf()===$&&G.n<R&&G.d<R)return G}return $}var A=t({"string, Object":function(M,z){var G=hi(M,r);if(G==="BigNumber")return o===void 0&&Ed(),o(M);if(G==="bigint")return BigInt(M);if(G==="Fraction")return i===void 0&&S2(),i(M);var R=parseFloat(M);return C(R,z)},"Fraction, Object":function(M,z){return M},"BigNumber, Object":function(M,z){return M},"number, Object":function(M,z){return C(M,z)},"bigint, Object":function(M,z){return M},"Complex, Object":function(M,z){return M.im!==0?M:C(M.re,z)},"Matrix, Object":function(M,z){return a(C(M.valueOf()))},"Array, Object":function(M,z){return M.map(C)}});function E($){return new d("-","unaryMinus",[$])}function S($){var M=R=>r.number==="BigNumber"&&o?o(R):Number(R),z=$.s*$.n,G=z<0n?new d("-","unaryMinus",[new l(-M(z))]):new l(M(z));return $.d===1n?G:new d("/","divide",[G,new l(M($.d))])}function F($,M,z){if(!Zo(M))return new s(N($),N(M));if(Cn($)||Re($)){for(var G=Array.from(M.dimensions);G.length>0;)if(ct(G[0])&&typeof G[0].value!="string"){var R=A(G.shift().value,z);Cn($)?$=$.items[R-1]:($=$.valueOf()[R-1],$ instanceof Array&&($=a($)))}else if(G.length>1&&ct(G[1])&&typeof G[1].value!="string"){var Z=A(G[1].value,z),te=[],P=Cn($)?$.items:$.valueOf();for(var V of P)if(Cn(V))te.push(V.items[Z-1]);else if(Re($))te.push(V[Z-1]);else break;if(te.length===P.length)Cn($)?$=new u(te):$=a(te),G.splice(1,1);else break}else break;return G.length===M.dimensions.length?new s(N($),M):G.length>0?(M=new f(G),new s(N($),M)):$}if(pc($)&&M.dimensions.length===1&&ct(M.dimensions[0])){var _=M.dimensions[0].value;return _ in $.properties?$.properties[_]:new l}return new s(N($),M)}function k($,M,z,G){var R=M.shift(),Z=M.reduce((te,P)=>{if(!Nt(P)){var V=te.pop();if(Nt(V))return[V,P];try{return te.push(x($,[V,P],G)),te}catch{te.push(V)}}te.push(N(te.pop()));var _=te.length===1?te[0]:z(te);return[z([_,N(P)])]},[R]);return Z.length===1?Z[0]:z([Z[0],v(Z[1])])}function B($,M){switch($.type){case"SymbolNode":return $;case"ConstantNode":switch(typeof $.value){case"number":return A($.value,M);case"bigint":return A($.value,M);case"string":return $.value;default:if(!isNaN($.value))return A($.value,M)}return $;case"FunctionNode":if(n[$.name]&&n[$.name].rawArgs)return $;{var z=["add","multiply"];if(!z.includes($.name)){var G=$.args.map(Q=>B(Q,M));if(!G.some(Nt))try{return x($.name,G,M)}catch{}if($.name==="size"&&G.length===1&&Cn(G[0])){for(var R=[],Z=G[0];Cn(Z);)R.push(Z.items.length),Z=Z.items[0];return a(R)}return new c($.name,G.map(N))}}case"OperatorNode":{var te=$.fn.toString(),P,V,_=D($);if(Yt($)&&$.isUnary())P=[B($.args[0],M)],Nt(P[0])?V=_(P):V=x(te,P,M);else if(g($,M.context))if(P=b($,M.context),P=P.map(Q=>B(Q,M)),h(te,M.context)){for(var ce=[],ae=[],ie=0;ie<P.length;ie++)Nt(P[ie])?ae.push(P[ie]):ce.push(P[ie]);ce.length>1?(V=k(te,ce,_,M),ae.unshift(V),V=k(te,ae,_,M)):V=k(te,P,_,M)}else V=k(te,P,_,M);else P=$.args.map(Q=>B(Q,M)),V=k(te,P,_,M);return V}case"ParenthesisNode":return B($.content,M);case"AccessorNode":return F(B($.object,M),B($.index,M),M);case"ArrayNode":{var j=$.items.map(Q=>B(Q,M));return j.some(Nt)?new u(j.map(N)):a(j)}case"IndexNode":return new f($.dimensions.map(Q=>y(Q,M)));case"ObjectNode":{var H={};for(var J in $.properties)H[J]=y($.properties[J],M);return new m(H)}case"AssignmentNode":case"BlockNode":case"FunctionAssignmentNode":case"RangeNode":case"ConditionalNode":default:throw new Error("Unimplemented node type in simplifyConstant: ".concat($.type))}}return y}),pb="simplifyCore",kQ=["typed","parse","equal","isZero","add","subtract","multiply","divide","pow","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","ParenthesisNode","SymbolNode"],OQ=I(pb,kQ,e=>{var{typed:t,parse:r,equal:n,isZero:a,add:i,subtract:o,multiply:s,divide:u,pow:l,AccessorNode:c,ArrayNode:f,ConstantNode:m,FunctionNode:d,IndexNode:p,ObjectNode:h,OperatorNode:g,ParenthesisNode:b,SymbolNode:D}=e,y=new m(0),w=new m(1),x=new m(!0),v=new m(!1);function N(S){return Yt(S)&&["and","not","or"].includes(S.op)}var{hasProperty:C,isCommutative:A}=Pd({FunctionNode:d,OperatorNode:g,SymbolNode:D});function E(S){var F=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},k=F?F.context:void 0;if(C(S,"trivial",k)){if(li(S)&&S.args.length===1)return E(S.args[0],F);var B=!1,$=0;if(S.forEach(ae=>{++$,$===1&&(B=E(ae,F))}),$===1)return B}var M=S;if(li(M)){var z=MG(M.name);if(z){if(M.args.length>2&&C(M,"associative",k))for(;M.args.length>2;){var G=M.args.pop(),R=M.args.pop();M.args.push(new g(z,M.name,[G,R]))}M=new g(z,M.name,M.args)}else return new d(E(M.fn),M.args.map(ae=>E(ae,F)))}if(Yt(M)&&M.isUnary()){var Z=E(M.args[0],F);if(M.op==="~"&&Yt(Z)&&Z.isUnary()&&Z.op==="~"||M.op==="not"&&Yt(Z)&&Z.isUnary()&&Z.op==="not"&&N(Z.args[0]))return Z.args[0];var te=!0;if(M.op==="-"&&Yt(Z)&&(Z.isBinary()&&Z.fn==="subtract"&&(M=new g("-","subtract",[Z.args[1],Z.args[0]]),te=!1),Z.isUnary()&&Z.op==="-"))return Z.args[0];if(te)return new g(M.op,M.fn,[Z])}if(Yt(M)&&M.isBinary()){var P=E(M.args[0],F),V=E(M.args[1],F);if(M.op==="+"){if(ct(P)&&a(P.value))return V;if(ct(V)&&a(V.value))return P;Yt(V)&&V.isUnary()&&V.op==="-"&&(V=V.args[0],M=new g("-","subtract",[P,V]))}if(M.op==="-")return Yt(V)&&V.isUnary()&&V.op==="-"?E(new g("+","add",[P,V.args[0]]),F):ct(P)&&a(P.value)?E(new g("-","unaryMinus",[V])):ct(V)&&a(V.value)?P:new g(M.op,M.fn,[P,V]);if(M.op==="*"){if(ct(P)){if(a(P.value))return y;if(n(P.value,1))return V}if(ct(V)){if(a(V.value))return y;if(n(V.value,1))return P;if(A(M,k))return new g(M.op,M.fn,[V,P],M.implicit)}return new g(M.op,M.fn,[P,V],M.implicit)}if(M.op==="/")return ct(P)&&a(P.value)?y:ct(V)&&n(V.value,1)?P:new g(M.op,M.fn,[P,V]);if(M.op==="^"&&ct(V)){if(a(V.value))return w;if(n(V.value,1))return P}if(M.op==="and"){if(ct(P))if(P.value){if(N(V))return V;if(ct(V))return V.value?x:v}else return v;if(ct(V))if(V.value){if(N(P))return P}else return v}if(M.op==="or"){if(ct(P)){if(P.value)return x;if(N(V))return V}if(ct(V)){if(V.value)return x;if(N(P))return P}}return new g(M.op,M.fn,[P,V])}if(Yt(M))return new g(M.op,M.fn,M.args.map(ae=>E(ae,F)));if(Cn(M))return new f(M.items.map(ae=>E(ae,F)));if(Ji(M))return new c(E(M.object,F),E(M.index,F));if(Zo(M))return new p(M.dimensions.map(ae=>E(ae,F)));if(pc(M)){var _={};for(var ce in M.properties)_[ce]=E(M.properties[ce],F);return new h(_)}return M}return t(pb,{Node:E,"Node,Object":E})}),$Q="resolve",BQ=["typed","parse","ConstantNode","FunctionNode","OperatorNode","ParenthesisNode"],_Q=I($Q,BQ,e=>{var{typed:t,parse:r,ConstantNode:n,FunctionNode:a,OperatorNode:i,ParenthesisNode:o}=e;function s(u,l){var c=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Set;if(!l)return u;if(yr(u)){if(c.has(u.name)){var f=Array.from(c).join(", ");throw new ReferenceError("recursive loop of variable definitions among {".concat(f,"}"))}var m=l.get(u.name);if(Nt(m)){var d=new Set(c);return d.add(u.name),s(m,l,d)}else return typeof m=="number"?r(String(m)):m!==void 0?new n(m):u}else if(Yt(u)){var p=u.args.map(function(g){return s(g,l,c)});return new i(u.op,u.fn,p,u.implicit)}else{if(Ia(u))return new o(s(u.content,l,c));if(li(u)){var h=u.args.map(function(g){return s(g,l,c)});return new a(u.name,h)}}return u.map(g=>s(g,l,c))}return t("resolve",{Node:s,"Node, Map | null | undefined":s,"Node, Object":(u,l)=>s(u,_o(l)),"Array | Matrix":t.referToSelf(u=>l=>l.map(c=>u(c))),"Array | Matrix, null | undefined":t.referToSelf(u=>l=>l.map(c=>u(c))),"Array, Object":t.referTo("Array,Map",u=>(l,c)=>u(l,_o(c))),"Matrix, Object":t.referTo("Matrix,Map",u=>(l,c)=>u(l,_o(c))),"Array | Matrix, Map":t.referToSelf(u=>(l,c)=>l.map(f=>u(f,c)))})}),gb="symbolicEqual",IQ=["parse","simplify","typed","OperatorNode"],zQ=I(gb,IQ,e=>{var{parse:t,simplify:r,typed:n,OperatorNode:a}=e;function i(o,s){var u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},l=new a("-","subtract",[o,s]),c=r(l,{},u);return ct(c)&&!c.value}return n(gb,{"Node, Node":i,"Node, Node, Object":i})}),vb="derivative",jQ=["typed","config","parse","simplify","equal","isZero","numeric","ConstantNode","FunctionNode","OperatorNode","ParenthesisNode","SymbolNode"],qQ=I(vb,jQ,e=>{var{typed:t,config:r,parse:n,simplify:a,equal:i,isZero:o,numeric:s,ConstantNode:u,FunctionNode:l,OperatorNode:c,ParenthesisNode:f,SymbolNode:m}=e;function d(w,x){var v=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{simplify:!0},N=new Map,C=x.name;function A(S){var F=N.get(S);if(F!==void 0)return F;var k=b(A,S,C);return N.set(S,k),k}var E=D(w,A);return v.simplify?a(E):E}function p(w){var x=n(w);if(!x.isSymbolNode)throw new TypeError("Invalid variable. "+"Cannot parse ".concat(JSON.stringify(w)," into a variable in function derivative"));return x}var h=t(vb,{"Node, SymbolNode":d,"Node, SymbolNode, Object":d,"Node, string":(w,x)=>d(w,p(x)),"Node, string, Object":(w,x,v)=>d(w,p(x),v)});h._simplify=!0,h.toTex=function(w){return g.apply(null,w.args)};var g=t("_derivTex",{"Node, SymbolNode":function(x,v){return ct(x)&&Tt(x.value)==="string"?g(n(x.value).toString(),v.toString(),1):g(x.toTex(),v.toString(),1)},"Node, ConstantNode":function(x,v){if(Tt(v.value)==="string")return g(x,n(v.value));throw new Error("The second parameter to 'derivative' is a non-string constant")},"Node, SymbolNode, ConstantNode":function(x,v,N){return g(x.toString(),v.name,N.value)},"string, string, number":function(x,v,N){var C;return N===1?C="{d\\over d"+v+"}":C="{d^{"+N+"}\\over d"+v+"^{"+N+"}}",C+"\\left[".concat(x,"\\right]")}}),b=t("_isConst",{"function, ConstantNode, string":function(){return!0},"function, SymbolNode, string":function(x,v,N){return v.name!==N},"function, ParenthesisNode, string":function(x,v,N){return x(v.content,N)},"function, FunctionAssignmentNode, string":function(x,v,N){return v.params.includes(N)?x(v.expr,N):!0},"function, FunctionNode | OperatorNode, string":function(x,v,N){return v.args.every(C=>x(C,N))}}),D=t("_derivative",{"ConstantNode, function":function(){return y(0)},"SymbolNode, function":function(x,v){return v(x)?y(0):y(1)},"ParenthesisNode, function":function(x,v){return new f(D(x.content,v))},"FunctionAssignmentNode, function":function(x,v){return v(x)?y(0):D(x.expr,v)},"FunctionNode, function":function(x,v){if(v(x))return y(0);var N=x.args[0],C,A=!1,E=!1,S;switch(x.name){case"cbrt":A=!0,S=new c("*","multiply",[y(3),new c("^","pow",[N,new c("/","divide",[y(2),y(3)])])]);break;case"sqrt":case"nthRoot":if(x.args.length===1)A=!0,S=new c("*","multiply",[y(2),new l("sqrt",[N])]);else if(x.args.length===2)return C=new c("/","divide",[y(1),x.args[1]]),D(new c("^","pow",[N,C]),v);break;case"log10":C=y(10);case"log":if(!C&&x.args.length===1)S=N.clone(),A=!0;else if(x.args.length===1&&C||x.args.length===2&&v(x.args[1]))S=new c("*","multiply",[N.clone(),new l("log",[C||x.args[1]])]),A=!0;else if(x.args.length===2)return D(new c("/","divide",[new l("log",[N]),new l("log",[x.args[1]])]),v);break;case"pow":if(x.args.length===2)return D(new c("^","pow",[N,x.args[1]]),v);break;case"exp":S=new l("exp",[N.clone()]);break;case"sin":S=new l("cos",[N.clone()]);break;case"cos":S=new c("-","unaryMinus",[new l("sin",[N.clone()])]);break;case"tan":S=new c("^","pow",[new l("sec",[N.clone()]),y(2)]);break;case"sec":S=new c("*","multiply",[x,new l("tan",[N.clone()])]);break;case"csc":E=!0,S=new c("*","multiply",[x,new l("cot",[N.clone()])]);break;case"cot":E=!0,S=new c("^","pow",[new l("csc",[N.clone()]),y(2)]);break;case"asin":A=!0,S=new l("sqrt",[new c("-","subtract",[y(1),new c("^","pow",[N.clone(),y(2)])])]);break;case"acos":A=!0,E=!0,S=new l("sqrt",[new c("-","subtract",[y(1),new c("^","pow",[N.clone(),y(2)])])]);break;case"atan":A=!0,S=new c("+","add",[new c("^","pow",[N.clone(),y(2)]),y(1)]);break;case"asec":A=!0,S=new c("*","multiply",[new l("abs",[N.clone()]),new l("sqrt",[new c("-","subtract",[new c("^","pow",[N.clone(),y(2)]),y(1)])])]);break;case"acsc":A=!0,E=!0,S=new c("*","multiply",[new l("abs",[N.clone()]),new l("sqrt",[new c("-","subtract",[new c("^","pow",[N.clone(),y(2)]),y(1)])])]);break;case"acot":A=!0,E=!0,S=new c("+","add",[new c("^","pow",[N.clone(),y(2)]),y(1)]);break;case"sinh":S=new l("cosh",[N.clone()]);break;case"cosh":S=new l("sinh",[N.clone()]);break;case"tanh":S=new c("^","pow",[new l("sech",[N.clone()]),y(2)]);break;case"sech":E=!0,S=new c("*","multiply",[x,new l("tanh",[N.clone()])]);break;case"csch":E=!0,S=new c("*","multiply",[x,new l("coth",[N.clone()])]);break;case"coth":E=!0,S=new c("^","pow",[new l("csch",[N.clone()]),y(2)]);break;case"asinh":A=!0,S=new l("sqrt",[new c("+","add",[new c("^","pow",[N.clone(),y(2)]),y(1)])]);break;case"acosh":A=!0,S=new l("sqrt",[new c("-","subtract",[new c("^","pow",[N.clone(),y(2)]),y(1)])]);break;case"atanh":A=!0,S=new c("-","subtract",[y(1),new c("^","pow",[N.clone(),y(2)])]);break;case"asech":A=!0,E=!0,S=new c("*","multiply",[N.clone(),new l("sqrt",[new c("-","subtract",[y(1),new c("^","pow",[N.clone(),y(2)])])])]);break;case"acsch":A=!0,E=!0,S=new c("*","multiply",[new l("abs",[N.clone()]),new l("sqrt",[new c("+","add",[new c("^","pow",[N.clone(),y(2)]),y(1)])])]);break;case"acoth":A=!0,E=!0,S=new c("-","subtract",[y(1),new c("^","pow",[N.clone(),y(2)])]);break;case"abs":S=new c("/","divide",[new l(new m("abs"),[N.clone()]),N.clone()]);break;case"gamma":default:throw new Error('Cannot process function "'+x.name+'" in derivative: the function is not supported, undefined, or the number of arguments passed to it are not supported')}var F,k;A?(F="/",k="divide"):(F="*",k="multiply");var B=D(N,v);return E&&(B=new c("-","unaryMinus",[B])),new c(F,k,[B,S])},"OperatorNode, function":function(x,v){if(v(x))return y(0);if(x.op==="+")return new c(x.op,x.fn,x.args.map(function(M){return D(M,v)}));if(x.op==="-"){if(x.isUnary())return new c(x.op,x.fn,[D(x.args[0],v)]);if(x.isBinary())return new c(x.op,x.fn,[D(x.args[0],v),D(x.args[1],v)])}if(x.op==="*"){var N=x.args.filter(function(M){return v(M)});if(N.length>0){var C=x.args.filter(function(M){return!v(M)}),A=C.length===1?C[0]:new c("*","multiply",C),E=N.concat(D(A,v));return new c("*","multiply",E)}return new c("+","add",x.args.map(function(M){return new c("*","multiply",x.args.map(function(z){return z===M?D(z,v):z.clone()}))}))}if(x.op==="/"&&x.isBinary()){var S=x.args[0],F=x.args[1];return v(F)?new c("/","divide",[D(S,v),F]):v(S)?new c("*","multiply",[new c("-","unaryMinus",[S]),new c("/","divide",[D(F,v),new c("^","pow",[F.clone(),y(2)])])]):new c("/","divide",[new c("-","subtract",[new c("*","multiply",[D(S,v),F.clone()]),new c("*","multiply",[S.clone(),D(F,v)])]),new c("^","pow",[F.clone(),y(2)])])}if(x.op==="^"&&x.isBinary()){var k=x.args[0],B=x.args[1];if(v(k))return ct(k)&&(o(k.value)||i(k.value,1))?y(0):new c("*","multiply",[x,new c("*","multiply",[new l("log",[k.clone()]),D(B.clone(),v)])]);if(v(B)){if(ct(B)){if(o(B.value))return y(0);if(i(B.value,1))return D(k,v)}var $=new c("^","pow",[k.clone(),new c("-","subtract",[B,y(1)])]);return new c("*","multiply",[B.clone(),new c("*","multiply",[D(k,v),$])])}return new c("*","multiply",[new c("^","pow",[k.clone(),B.clone()]),new c("+","add",[new c("*","multiply",[D(k,v),new c("/","divide",[B.clone(),k.clone()])]),new c("*","multiply",[D(B,v),new l("log",[k.clone()])])])])}throw new Error('Cannot process operator "'+x.op+'" in derivative: the operator is not supported, undefined, or the number of arguments passed to it are not supported')}});function y(w,x){return new u(s(w,hi(String(w),r)))}return h}),yb="rationalize",RQ=["config","typed","equal","isZero","add","subtract","multiply","divide","pow","parse","simplifyConstant","simplifyCore","simplify","?bignumber","?fraction","mathWithTransform","matrix","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","SymbolNode","ParenthesisNode"],LQ=I(yb,RQ,e=>{var{config:t,typed:r,equal:n,isZero:a,add:i,subtract:o,multiply:s,divide:u,pow:l,parse:c,simplifyConstant:f,simplifyCore:m,simplify:d,fraction:p,bignumber:h,mathWithTransform:g,matrix:b,AccessorNode:D,ArrayNode:y,ConstantNode:w,FunctionNode:x,IndexNode:v,ObjectNode:N,OperatorNode:C,SymbolNode:A,ParenthesisNode:E}=e;function S(M){var z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},G=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,R=k(),Z=F(M,z,!0,R.firstRules),te=Z.variables.length,P={exactFractions:!1},V={exactFractions:!0};if(M=Z.expression,te>=1){M=B(M);var _,ce,ae=!0,ie=!1;M=d(M,R.firstRules,{},P);for(var j;ce=ae?R.distrDivRules:R.sucDivRules,M=d(M,ce,{},V),ae=!ae,j=M.toString(),j!==_;)ie=!0,_=j;ie&&(M=d(M,R.firstRulesAgain,{},P)),M=d(M,R.finalRules,{},P)}var H=[],J={};return M.type==="OperatorNode"&&M.isBinary()&&M.op==="/"?(te===1&&(M.args[0]=$(M.args[0],H),M.args[1]=$(M.args[1])),G&&(J.numerator=M.args[0],J.denominator=M.args[1])):(te===1&&(M=$(M,H)),G&&(J.numerator=M,J.denominator=null)),G?(J.coefficients=H,J.variables=Z.variables,J.expression=M,J):M}return r(yb,{Node:S,"Node, boolean":(M,z)=>S(M,{},z),"Node, Object":S,"Node, Object, boolean":S});function F(M,z,G,R){var Z=[],te=d(M,R,z,{exactFractions:!1});G=!!G;var P="+-*"+(G?"/":"");_(te);var V={};return V.expression=te,V.variables=Z,V;function _(ce){var ae=ce.type;if(ae==="FunctionNode")throw new Error("There is an unsolved function call");if(ae==="OperatorNode")if(ce.op==="^"){if(ce.args[1].type!=="ConstantNode"||!Oe(parseFloat(ce.args[1].value)))throw new Error("There is a non-integer exponent");_(ce.args[0])}else{if(!P.includes(ce.op))throw new Error("Operator "+ce.op+" invalid in polynomial expression");for(var ie=0;ie<ce.args.length;ie++)_(ce.args[ie])}else if(ae==="SymbolNode"){var j=ce.name,H=Z.indexOf(j);H===-1&&Z.push(j)}else if(ae==="ParenthesisNode")_(ce.content);else if(ae!=="ConstantNode")throw new Error("type "+ae+" is not allowed in polynomial expression")}}function k(){var M=[m,{l:"n+n",r:"2*n"},{l:"n+-n",r:"0"},f,{l:"n*(n1^-1)",r:"n/n1"},{l:"n*n1^-n2",r:"n/n1^n2"},{l:"n1^-1",r:"1/n1"},{l:"n*(n1/n2)",r:"(n*n1)/n2"},{l:"1*n",r:"n"}],z=[{l:"(-n1)/(-n2)",r:"n1/n2"},{l:"(-n1)*(-n2)",r:"n1*n2"},{l:"n1--n2",r:"n1+n2"},{l:"n1-n2",r:"n1+(-n2)"},{l:"(n1+n2)*n3",r:"(n1*n3 + n2*n3)"},{l:"n1*(n2+n3)",r:"(n1*n2+n1*n3)"},{l:"c1*n + c2*n",r:"(c1+c2)*n"},{l:"c1*n + n",r:"(c1+1)*n"},{l:"c1*n - c2*n",r:"(c1-c2)*n"},{l:"c1*n - n",r:"(c1-1)*n"},{l:"v/c",r:"(1/c)*v"},{l:"v/-c",r:"-(1/c)*v"},{l:"-v*-c",r:"c*v"},{l:"-v*c",r:"-c*v"},{l:"v*-c",r:"-c*v"},{l:"v*c",r:"c*v"},{l:"-(-n1*n2)",r:"(n1*n2)"},{l:"-(n1*n2)",r:"(-n1*n2)"},{l:"-(-n1+n2)",r:"(n1-n2)"},{l:"-(n1+n2)",r:"(-n1-n2)"},{l:"(n1^n2)^n3",r:"(n1^(n2*n3))"},{l:"-(-n1/n2)",r:"(n1/n2)"},{l:"-(n1/n2)",r:"(-n1/n2)"}],G=[{l:"(n1/n2 + n3/n4)",r:"((n1*n4 + n3*n2)/(n2*n4))"},{l:"(n1/n2 + n3)",r:"((n1 + n3*n2)/n2)"},{l:"(n1 + n2/n3)",r:"((n1*n3 + n2)/n3)"}],R=[{l:"(n1/(n2/n3))",r:"((n1*n3)/n2)"},{l:"(n1/n2/n3)",r:"(n1/(n2*n3))"}],Z={};return Z.firstRules=M.concat(z,R),Z.distrDivRules=G,Z.sucDivRules=R,Z.firstRulesAgain=M.concat(z),Z.finalRules=[m,{l:"n*-n",r:"-n^2"},{l:"n*n",r:"n^2"},f,{l:"n*-n^n1",r:"-n^(n1+1)"},{l:"n*n^n1",r:"n^(n1+1)"},{l:"n^n1*-n^n2",r:"-n^(n1+n2)"},{l:"n^n1*n^n2",r:"n^(n1+n2)"},{l:"n^n1*-n",r:"-n^(n1+1)"},{l:"n^n1*n",r:"n^(n1+1)"},{l:"n^n1/-n",r:"-n^(n1-1)"},{l:"n^n1/n",r:"n^(n1-1)"},{l:"n/-n^n1",r:"-n^(1-n1)"},{l:"n/n^n1",r:"n^(1-n1)"},{l:"n^n1/-n^n2",r:"n^(n1-n2)"},{l:"n^n1/n^n2",r:"n^(n1-n2)"},{l:"n1+(-n2*n3)",r:"n1-n2*n3"},{l:"v*(-c)",r:"-c*v"},{l:"n1+-n2",r:"n1-n2"},{l:"v*c",r:"c*v"},{l:"(n1^n2)^n3",r:"(n1^(n2*n3))"}],Z}function B(M,z,G){var R=M.type,Z=arguments.length>1;if(R==="OperatorNode"&&M.isBinary()){var te=!1,P;if(M.op==="^"&&(M.args[0].type==="ParenthesisNode"||M.args[0].type==="OperatorNode")&&M.args[1].type==="ConstantNode"&&(P=parseFloat(M.args[1].value),te=P>=2&&Oe(P)),te){if(P>2){var V=M.args[0],_=new C("^","pow",[M.args[0].cloneDeep(),new w(P-1)]);M=new C("*","multiply",[V,_])}else M=new C("*","multiply",[M.args[0],M.args[0].cloneDeep()]);Z&&(G==="content"?z.content=M:z.args[G]=M)}}if(R==="ParenthesisNode")B(M.content,M,"content");else if(R!=="ConstantNode"&&R!=="SymbolNode")for(var ce=0;ce<M.args.length;ce++)B(M.args[ce],M,ce);if(!Z)return M}function $(M,z){z===void 0&&(z=[]),z[0]=0;var G={};G.cte=1,G.oper="+",G.fire="";var R=0,Z="";j(M,null,G),R=z.length-1;for(var te=!0,P,V=R;V>=0;V--)if(z[V]!==0){var _=new w(te?z[V]:Math.abs(z[V])),ce=z[V]<0?"-":"+";if(V>0){var ae=new A(Z);if(V>1){var ie=new w(V);ae=new C("^","pow",[ae,ie])}z[V]===-1&&te?_=new C("-","unaryMinus",[ae]):Math.abs(z[V])===1?_=ae:_=new C("*","multiply",[_,ae])}te?P=_:ce==="+"?P=new C("+","add",[P,_]):P=new C("-","subtract",[P,_]),te=!1}if(te)return new w(0);return P;function j(H,J,Q){var X=H.type;if(X==="FunctionNode")throw new Error("There is an unsolved function call");if(X==="OperatorNode"){if(!"+-*^".includes(H.op))throw new Error("Operator "+H.op+" invalid");if(J!==null){if((H.fn==="unaryMinus"||H.fn==="pow")&&J.fn!=="add"&&J.fn!=="subtract"&&J.fn!=="multiply")throw new Error("Invalid "+H.op+" placing");if((H.fn==="subtract"||H.fn==="add"||H.fn==="multiply")&&J.fn!=="add"&&J.fn!=="subtract")throw new Error("Invalid "+H.op+" placing");if((H.fn==="subtract"||H.fn==="add"||H.fn==="unaryMinus")&&Q.noFil!==0)throw new Error("Invalid "+H.op+" placing")}(H.op==="^"||H.op==="*")&&(Q.fire=H.op);for(var ue=0;ue<H.args.length;ue++)H.fn==="unaryMinus"&&(Q.oper="-"),(H.op==="+"||H.fn==="subtract")&&(Q.fire="",Q.cte=1,Q.oper=ue===0?"+":H.op),Q.noFil=ue,j(H.args[ue],H,Q)}else if(X==="SymbolNode"){if(H.name!==Z&&Z!=="")throw new Error("There is more than one variable");if(Z=H.name,J===null){z[1]=1;return}if(J.op==="^"&&Q.noFil!==0)throw new Error("In power the variable should be the first parameter");if(J.op==="*"&&Q.noFil!==1)throw new Error("In multiply the variable should be the second parameter");(Q.fire===""||Q.fire==="*")&&(R<1&&(z[1]=0),z[1]+=Q.cte*(Q.oper==="+"?1:-1),R=Math.max(1,R))}else if(X==="ConstantNode"){var se=parseFloat(H.value);if(J===null){z[0]=se;return}if(J.op==="^"){if(Q.noFil!==1)throw new Error("Constant cannot be powered");if(!Oe(se)||se<=0)throw new Error("Non-integer exponent is not allowed");for(var we=R+1;we<se;we++)z[we]=0;se>R&&(z[se]=0),z[se]+=Q.cte*(Q.oper==="+"?1:-1),R=Math.max(se,R);return}Q.cte=se,Q.fire===""&&(z[0]+=Q.cte*(Q.oper==="+"?1:-1))}else throw new Error("Type "+X+" is not allowed")}}}),bb="zpk2tf",HQ=["typed","add","multiply","Complex","number"],GQ=I(bb,HQ,e=>{var{typed:t,add:r,multiply:n,Complex:a,number:i}=e;return t(bb,{"Array,Array,number":function(l,c,f){return o(l,c,f)},"Array,Array":function(l,c){return o(l,c,1)},"Matrix,Matrix,number":function(l,c,f){return o(l.valueOf(),c.valueOf(),f)},"Matrix,Matrix":function(l,c){return o(l.valueOf(),c.valueOf(),1)}});function o(u,l,c){u.some(D=>D.type==="BigNumber")&&(u=u.map(D=>i(D))),l.some(D=>D.type==="BigNumber")&&(l=l.map(D=>i(D)));for(var f=[a(1,0)],m=[a(1,0)],d=0;d<u.length;d++){var p=u[d];typeof p=="number"&&(p=a(p,0)),f=s(f,[a(1,0),a(-p.re,-p.im)])}for(var h=0;h<l.length;h++){var g=l[h];typeof g=="number"&&(g=a(g,0)),m=s(m,[a(1,0),a(-g.re,-g.im)])}for(var b=0;b<f.length;b++)f[b]=n(f[b],c);return[f,m]}function s(u,l){for(var c=[],f=0;f<u.length+l.length-1;f++){c[f]=a(0,0);for(var m=0;m<u.length;m++)f-m>=0&&f-m<l.length&&(c[f]=r(c[f],n(u[m],l[f-m])))}return c}}),wb="freqz",VQ=["typed","add","multiply","Complex","divide","matrix"],UQ=I(wb,VQ,e=>{var{typed:t,add:r,multiply:n,Complex:a,divide:i,matrix:o}=e;return t(wb,{"Array, Array":function(c,f){var m=u(512);return s(c,f,m)},"Array, Array, Array":function(c,f,m){return s(c,f,m)},"Array, Array, number":function(c,f,m){if(m<0)throw new Error("w must be a positive number");var d=u(m);return s(c,f,d)},"Matrix, Matrix":function(c,f){var m=u(512),{w:d,h:p}=s(c.valueOf(),f.valueOf(),m);return{w:o(d),h:o(p)}},"Matrix, Matrix, Matrix":function(c,f,m){var{h:d}=s(c.valueOf(),f.valueOf(),m.valueOf());return{h:o(d),w:o(m)}},"Matrix, Matrix, number":function(c,f,m){if(m<0)throw new Error("w must be a positive number");var d=u(m),{h:p}=s(c.valueOf(),f.valueOf(),d);return{h:o(p),w:o(d)}}});function s(l,c,f){for(var m=[],d=[],p=0;p<f.length;p++){for(var h=a(0,0),g=a(0,0),b=0;b<l.length;b++)h=r(h,n(l[b],a(Math.cos(-b*f[p]),Math.sin(-b*f[p]))));for(var D=0;D<c.length;D++)g=r(g,n(c[D],a(Math.cos(-D*f[p]),Math.sin(-D*f[p]))));m.push(h),d.push(g)}for(var y=[],w=0;w<m.length;w++)y.push(i(m[w],d[w]));return{h:y,w:f}}function u(l){for(var c=[],f=0;f<l;f++)c.push(f/l*Math.PI);return c}}),WQ="reviver",JQ=["classes"],KQ=I(WQ,JQ,e=>{var{classes:t}=e;return function(n,a){var i=t[a&&a.mathjs];return i&&typeof i.fromJSON=="function"?i.fromJSON(a):a}}),YQ="replacer",ZQ=[],QQ=I(YQ,ZQ,()=>function(t,r){return typeof r=="number"&&(!isFinite(r)||isNaN(r))?{mathjs:"number",value:String(r)}:typeof r=="bigint"?{mathjs:"bigint",value:String(r)}:r}),XQ="14.7.0",eX=I("true",[],()=>!0),tX=I("false",[],()=>!1),rX=I("null",[],()=>null),nX=hn("Infinity",["config","?BigNumber"],e=>{var{config:t,BigNumber:r}=e;return t.number==="BigNumber"?new r(1/0):1/0}),aX=hn("NaN",["config","?BigNumber"],e=>{var{config:t,BigNumber:r}=e;return t.number==="BigNumber"?new r(NaN):NaN}),iX=hn("pi",["config","?BigNumber"],e=>{var{config:t,BigNumber:r}=e;return t.number==="BigNumber"?Md(r):iI}),oX=hn("tau",["config","?BigNumber"],e=>{var{config:t,BigNumber:r}=e;return t.number==="BigNumber"?OL(r):oI}),sX=hn("e",["config","?BigNumber"],e=>{var{config:t,BigNumber:r}=e;return t.number==="BigNumber"?PL(r):sI}),uX=hn("phi",["config","?BigNumber"],e=>{var{config:t,BigNumber:r}=e;return t.number==="BigNumber"?kL(r):uI}),lX=hn("LN2",["config","?BigNumber"],e=>{var{config:t,BigNumber:r}=e;return t.number==="BigNumber"?new r(2).ln():Math.LN2}),cX=hn("LN10",["config","?BigNumber"],e=>{var{config:t,BigNumber:r}=e;return t.number==="BigNumber"?new r(10).ln():Math.LN10}),fX=hn("LOG2E",["config","?BigNumber"],e=>{var{config:t,BigNumber:r}=e;return t.number==="BigNumber"?new r(1).div(new r(2).ln()):Math.LOG2E}),mX=hn("LOG10E",["config","?BigNumber"],e=>{var{config:t,BigNumber:r}=e;return t.number==="BigNumber"?new r(1).div(new r(10).ln()):Math.LOG10E}),dX=hn("SQRT1_2",["config","?BigNumber"],e=>{var{config:t,BigNumber:r}=e;return t.number==="BigNumber"?new r("0.5").sqrt():Math.SQRT1_2}),hX=hn("SQRT2",["config","?BigNumber"],e=>{var{config:t,BigNumber:r}=e;return t.number==="BigNumber"?new r(2).sqrt():Math.SQRT2}),pX=hn("i",["Complex"],e=>{var{Complex:t}=e;return t.I}),gX=I("version",[],()=>XQ);function hn(e,t,r){return I(e,t,r,{recreateOnConfigChange:!0})}var vX=Je("speedOfLight","299792458","m s^-1"),yX=Je("gravitationConstant","6.67430e-11","m^3 kg^-1 s^-2"),bX=Je("planckConstant","6.62607015e-34","J s"),wX=Je("reducedPlanckConstant","1.0545718176461565e-34","J s"),xX=Je("magneticConstant","1.25663706212e-6","N A^-2"),DX=Je("electricConstant","8.8541878128e-12","F m^-1"),NX=Je("vacuumImpedance","376.730313667","ohm"),AX=Je("coulomb","8.987551792261171e9","N m^2 C^-2"),CX=Je("coulombConstant","8.987551792261171e9","N m^2 C^-2"),EX=Je("elementaryCharge","1.602176634e-19","C"),SX=Je("bohrMagneton","9.2740100783e-24","J T^-1"),TX=Je("conductanceQuantum","7.748091729863649e-5","S"),MX=Je("inverseConductanceQuantum","12906.403729652257","ohm"),FX=Je("magneticFluxQuantum","2.0678338484619295e-15","Wb"),PX=Je("nuclearMagneton","5.0507837461e-27","J T^-1"),kX=Je("klitzing","25812.807459304513","ohm"),OX=Je("bohrRadius","5.29177210903e-11","m"),$X=Je("classicalElectronRadius","2.8179403262e-15","m"),BX=Je("electronMass","9.1093837015e-31","kg"),_X=Je("fermiCoupling","1.1663787e-5","GeV^-2"),IX=Cc("fineStructure",.0072973525693),zX=Je("hartreeEnergy","4.3597447222071e-18","J"),jX=Je("protonMass","1.67262192369e-27","kg"),qX=Je("deuteronMass","3.3435830926e-27","kg"),RX=Je("neutronMass","1.6749271613e-27","kg"),LX=Je("quantumOfCirculation","3.6369475516e-4","m^2 s^-1"),HX=Je("rydberg","10973731.568160","m^-1"),GX=Je("thomsonCrossSection","6.6524587321e-29","m^2"),VX=Cc("weakMixingAngle",.2229),UX=Cc("efimovFactor",22.7),WX=Je("atomicMass","1.66053906660e-27","kg"),JX=Je("avogadro","6.02214076e23","mol^-1"),KX=Je("boltzmann","1.380649e-23","J K^-1"),YX=Je("faraday","96485.33212331001","C mol^-1"),ZX=Je("firstRadiation","3.7417718521927573e-16","W m^2"),QX=Je("loschmidt","2.686780111798444e25","m^-3"),XX=Je("gasConstant","8.31446261815324","J K^-1 mol^-1"),eee=Je("molarPlanckConstant","3.990312712893431e-10","J s mol^-1"),tee=Je("molarVolume","0.022413969545014137","m^3 mol^-1"),ree=Cc("sackurTetrode",-1.16487052358),nee=Je("secondRadiation","0.014387768775039337","m K"),aee=Je("stefanBoltzmann","5.67037441918443e-8","W m^-2 K^-4"),iee=Je("wienDisplacement","2.897771955e-3","m K"),oee=Je("molarMass","0.99999999965e-3","kg mol^-1"),see=Je("molarMassC12","11.9999999958e-3","kg mol^-1"),uee=Je("gravity","9.80665","m s^-2"),lee=Je("planckLength","1.616255e-35","m"),cee=Je("planckMass","2.176435e-8","kg"),fee=Je("planckTime","5.391245e-44","s"),mee=Je("planckCharge","1.87554603778e-18","C"),dee=Je("planckTemperature","1.416785e+32","K");function Je(e,t,r){var n=["config","Unit","BigNumber"];return I(e,n,a=>{var{config:i,Unit:o,BigNumber:s}=a,u=i.number==="BigNumber"?new s(t):parseFloat(t),l=new o(u,r);return l.fixPrefix=!0,l})}function Cc(e,t){var r=["config","BigNumber"];return I(e,r,n=>{var{config:a,BigNumber:i}=n;return a.number==="BigNumber"?new i(t):t})}function xb(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function hee(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?xb(Object(r),!0).forEach(function(n){nr(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):xb(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var pee="mapSlices",gee=["typed","isInteger"],vee=I(pee,gee,e=>{var{typed:t,isInteger:r}=e,n=zm({typed:t,isInteger:r});return t("mapSlices",{"...any":function(i){var o=i[1];Ze(o)?i[1]=o-1:Qe(o)&&(i[1]=o.minus(1));try{return n.apply(null,i)}catch(s){throw Jr(s)}}})},hee({isTransformFunction:!0},zm.meta)),yee="column",bee=["typed","Index","matrix","range"],wee=I(yee,bee,e=>{var{typed:t,Index:r,matrix:n,range:a}=e,i=D2({typed:t,Index:r,matrix:n,range:a});return t("column",{"...any":function(s){var u=s.length-1,l=s[u];Ze(l)&&(s[u]=l-1);try{return i.apply(null,s)}catch(c){throw Jr(c)}}})},{isTransformFunction:!0});function kd(e,t,r){var n=e.filter(function(u){return yr(u)&&!(u.name in t)&&!r.has(u.name)})[0];if(!n)throw new Error('No undefined variable found in inline expression "'+e+'"');var a=n.name,i=new Map,o=new Vw(r,i,new Set([a])),s=e.compile();return function(l){return i.set(a,l),s.evaluate(o)}}var xee="transformCallback",Dee=["typed"],Od=I(xee,Dee,e=>{var{typed:t}=e;return function(n,a){return t.isTypedFunction(n)?r(n,a):Db(n,n.length,a)};function r(n,a){var i=Object.fromEntries(Object.entries(n.signatures).map(o=>{var[s,u]=o,l=s.split(",").length;return t.isTypedFunction(u)?[s,r(u,a)]:[s,Db(u,l,a)]}));return typeof n.name=="string"?t(n.name,i):t(i)}});function Db(e,t,r){return t===r?e:t===r+1?function(){for(var n=arguments.length,a=new Array(n),i=0;i<n;i++)a[i]=arguments[i];var o=a.slice(0,r),s=Nb(a[r]);return e(...o,s)}:t>r+1?function(){for(var n=arguments.length,a=new Array(n),i=0;i<n;i++)a[i]=arguments[i];var o=a.slice(0,r),s=Nb(a[r]),u=a.slice(r+1);return e(...o,s,...u)}:e}function Nb(e){return e.map(t=>t+1)}var Nee="filter",Aee=["typed"],Cee=I(Nee,Aee,e=>{var{typed:t}=e;function r(a,i,o){var s=N2({typed:t}),u=Od({typed:t});if(a.length===0)return s();var l=a[0];if(a.length===1)return s(l);var c=a.length-1,f=a[c];return l&&(l=n(l,o)),f&&(yr(f)||Qs(f)?f=n(f,o):f=kd(f,i,o)),s(l,u(f,c))}r.rawArgs=!0;function n(a,i){return a.compile().evaluate(i)}return r},{isTransformFunction:!0}),Eee="forEach",See=["typed"],Tee=I(Eee,See,e=>{var{typed:t}=e,r=A2({typed:t}),n=Od({typed:t});function a(o,s,u){if(o.length===0)return r();var l=o[0];if(o.length===1)return r(l);var c=o.length-1,f=o[c];return l&&(l=i(l,u)),f&&(yr(f)||Qs(f)?f=i(f,u):f=kd(f,s,u)),r(l,n(f,c))}a.rawArgs=!0;function i(o,s){return o.compile().evaluate(s)}return a},{isTransformFunction:!0}),Mee="index",Fee=["Index","getMatrixDataType"],Pee=I(Mee,Fee,e=>{var{Index:t,getMatrixDataType:r}=e;return function(){for(var a=[],i=0,o=arguments.length;i<o;i++){var s=arguments[i];if(hd(s))s.start--,s.end-=s.step>0?0:2;else if(s&&s.isSet===!0)s=s.map(function(l){return l-1});else if(Et(s)||Re(s))r(s)!=="boolean"&&(s=s.map(function(l){return l-1}));else if(Ze(s)||Ms(s))s--;else if(Qe(s))s=s.toNumber()-1;else if(typeof s!="string")throw new TypeError("Dimension must be an Array, Matrix, number, bigint, string, or Range");a[i]=s}var u=new t;return t.apply(u,a),u}},{isTransformFunction:!0}),kee="map",Oee=["typed"],$ee=I(kee,Oee,e=>{var{typed:t}=e,r=C2({typed:t}),n=Od({typed:t});function a(i,o,s){if(i.length===0)return r();if(i.length===1)return r(i[0]);var u=i.length-1,l=i.slice(0,u),c=i[u];return l=l.map(m=>f(m,s)),c&&(yr(c)||Qs(c)?c=f(c,s):c=kd(c,o,s)),r(...l,n(c,u));function f(m,d){return m.compile().evaluate(d)}}return a.rawArgs=!0,a},{isTransformFunction:!0});function Bee(e){return Ze(e)?e-1:Qe(e)?e.minus(1):e}function _ee(e){return Ze(e)||Qe(e)}function vi(e){if(e.length===2&&Fn(e[0])){e=e.slice();var t=e[1];_ee(t)&&(e[1]=Bee(t))}return e}var Iee="max",zee=["typed","config","numeric","larger","isNaN"],jee=I(Iee,zee,e=>{var{typed:t,config:r,numeric:n,larger:a,isNaN:i}=e,o=B2({typed:t,config:r,numeric:n,larger:a,isNaN:i});return t("max",{"...any":function(u){u=vi(u);try{return o.apply(null,u)}catch(l){throw Jr(l)}}})},{isTransformFunction:!0}),qee="mean",Ree=["typed","add","divide"],Lee=I(qee,Ree,e=>{var{typed:t,add:r,divide:n}=e,a=G2({typed:t,add:r,divide:n});return t("mean",{"...any":function(o){o=vi(o);try{return a.apply(null,o)}catch(s){throw Jr(s)}}})},{isTransformFunction:!0}),Hee="min",Gee=["typed","config","numeric","smaller","isNaN"],Vee=I(Hee,Gee,e=>{var{typed:t,config:r,numeric:n,smaller:a,isNaN:i}=e,o=_2({typed:t,config:r,numeric:n,smaller:a,isNaN:i});return t("min",{"...any":function(u){u=vi(u);try{return o.apply(null,u)}catch(l){throw Jr(l)}}})},{isTransformFunction:!0}),Uee="range",Wee=["typed","config","?matrix","?bignumber","smaller","smallerEq","larger","largerEq","add","isPositive"],Jee=I(Uee,Wee,e=>{var{typed:t,config:r,matrix:n,bignumber:a,smaller:i,smallerEq:o,larger:s,largerEq:u,add:l,isPositive:c}=e,f=M2({typed:t,config:r,matrix:n,bignumber:a,smaller:i,smallerEq:o,larger:s,largerEq:u,add:l,isPositive:c});return t("range",{"...any":function(d){var p=d.length-1,h=d[p];return typeof h!="boolean"&&d.push(!0),f.apply(null,d)}})},{isTransformFunction:!0}),Kee="row",Yee=["typed","Index","matrix","range"],Zee=I(Kee,Yee,e=>{var{typed:t,Index:r,matrix:n,range:a}=e,i=F2({typed:t,Index:r,matrix:n,range:a});return t("row",{"...any":function(s){var u=s.length-1,l=s[u];Ze(l)&&(s[u]=l-1);try{return i.apply(null,s)}catch(c){throw Jr(c)}}})},{isTransformFunction:!0}),Qee="subset",Xee=["typed","matrix","zeros","add"],ete=I(Qee,Xee,e=>{var{typed:t,matrix:r,zeros:n,add:a}=e,i=P2({typed:t,matrix:r,zeros:n,add:a});return t("subset",{"...any":function(s){try{return i.apply(null,s)}catch(u){throw Jr(u)}}})},{isTransformFunction:!0}),tte="concat",rte=["typed","matrix","isInteger"],nte=I(tte,rte,e=>{var{typed:t,matrix:r,isInteger:n}=e,a=x2({typed:t,matrix:r,isInteger:n});return t("concat",{"...any":function(o){var s=o.length-1,u=o[s];Ze(u)?o[s]=u-1:Qe(u)&&(o[s]=u.minus(1));try{return a.apply(null,o)}catch(l){throw Jr(l)}}})},{isTransformFunction:!0}),Ab="diff",ate=["typed","matrix","subtract","number","bignumber"],ite=I(Ab,ate,e=>{var{typed:t,matrix:r,subtract:n,number:a,bignumber:i}=e,o=E2({typed:t,matrix:r,subtract:n,number:a,bignumber:i});return t(Ab,{"...any":function(u){u=vi(u);try{return o.apply(null,u)}catch(l){throw Jr(l)}}})},{isTransformFunction:!0}),ote="std",ste=["typed","map","sqrt","variance"],ute=I(ote,ste,e=>{var{typed:t,map:r,sqrt:n,variance:a}=e,i=W2({typed:t,map:r,sqrt:n,variance:a});return t("std",{"...any":function(s){s=vi(s);try{return i.apply(null,s)}catch(u){throw Jr(u)}}})},{isTransformFunction:!0}),Cb="sum",lte=["typed","config","add","numeric"],cte=I(Cb,lte,e=>{var{typed:t,config:r,add:n,numeric:a}=e,i=L2({typed:t,config:r,add:n,numeric:a});return t(Cb,{"...any":function(s){s=vi(s);try{return i.apply(null,s)}catch(u){throw Jr(u)}}})},{isTransformFunction:!0}),fte="quantileSeq",mte=["typed","bignumber","add","subtract","divide","multiply","partitionSelect","compare","isInteger","smaller","smallerEq","larger","mapSlices"],dte=I(fte,mte,e=>{var{typed:t,bignumber:r,add:n,subtract:a,divide:i,multiply:o,partitionSelect:s,compare:u,isInteger:l,smaller:c,smallerEq:f,larger:m,mapSlices:d}=e,p=U2({typed:t,bignumber:r,add:n,subtract:a,divide:i,multiply:o,partitionSelect:s,compare:u,isInteger:l,smaller:c,smallerEq:f,larger:m,mapSlices:d});return t("quantileSeq",{"Array | Matrix, number | BigNumber":p,"Array | Matrix, number | BigNumber, number":(g,b,D)=>p(g,b,h(D)),"Array | Matrix, number | BigNumber, boolean":p,"Array | Matrix, number | BigNumber, boolean, number":(g,b,D,y)=>p(g,b,D,h(y)),"Array | Matrix, Array | Matrix":p,"Array | Matrix, Array | Matrix, number":(g,b,D)=>p(g,b,h(D)),"Array | Matrix, Array | Matrix, boolean":p,"Array | Matrix, Array | Matrix, boolean, number":(g,b,D,y)=>p(g,b,D,h(y))});function h(g){return vi([[],g])[1]}},{isTransformFunction:!0}),Eb="cumsum",hte=["typed","add","unaryPlus"],pte=I(Eb,hte,e=>{var{typed:t,add:r,unaryPlus:n}=e,a=H2({typed:t,add:r,unaryPlus:n});return t(Eb,{"...any":function(o){if(o.length===2&&Fn(o[0])){var s=o[1];Ze(s)?o[1]=s-1:Qe(s)&&(o[1]=s.minus(1))}try{return a.apply(null,o)}catch(u){throw Jr(u)}}})},{isTransformFunction:!0}),Sb="variance",gte=["typed","add","subtract","multiply","divide","mapSlices","isNaN"],vte=I(Sb,gte,e=>{var{typed:t,add:r,subtract:n,multiply:a,divide:i,mapSlices:o,isNaN:s}=e,u=V2({typed:t,add:r,subtract:n,multiply:a,divide:i,mapSlices:o,isNaN:s});return t(Sb,{"...any":function(c){c=vi(c);try{return u.apply(null,c)}catch(f){throw Jr(f)}}})},{isTransformFunction:!0}),Tb="print",yte=["typed","matrix","zeros","add"],bte=I(Tb,yte,e=>{var{typed:t,matrix:r,zeros:n,add:a}=e,i=O2({typed:t,matrix:r,zeros:n,add:a});return t(Tb,{"string, Object | Array":function(u,l){return i(o(u),l)},"string, Object | Array, number | Object":function(u,l,c){return i(o(u),l,c)}});function o(s){return s.replace(k2,u=>{var l=u.slice(1).split("."),c=l.map(function(f){return!isNaN(f)&&f.length>0?parseInt(f)-1:f});return"$"+c.join(".")})}},{isTransformFunction:!0}),wte="and",xte=["typed","matrix","zeros","add","equalScalar","not","concat"],Dte=I(wte,xte,e=>{var{typed:t,matrix:r,equalScalar:n,zeros:a,not:i,concat:o}=e,s=$2({typed:t,matrix:r,equalScalar:n,zeros:a,not:i,concat:o});function u(l,c,f){var m=l[0].compile().evaluate(f);if(!Fn(m)&&!s(m,!0))return!1;var d=l[1].compile().evaluate(f);return s(m,d)}return u.rawArgs=!0,u},{isTransformFunction:!0}),Nte="or",Ate=["typed","matrix","equalScalar","DenseMatrix","concat"],Cte=I(Nte,Ate,e=>{var{typed:t,matrix:r,equalScalar:n,DenseMatrix:a,concat:i}=e,o=w2({typed:t,matrix:r,equalScalar:n,DenseMatrix:a,concat:i});function s(u,l,c){var f=u[0].compile().evaluate(c);if(!Fn(f)&&o(f,!1))return!0;var m=u[1].compile().evaluate(c);return o(f,m)}return s.rawArgs=!0,s},{isTransformFunction:!0}),Ete="bitAnd",Ste=["typed","matrix","zeros","add","equalScalar","not","concat"],Tte=I(Ete,Ste,e=>{var{typed:t,matrix:r,equalScalar:n,zeros:a,not:i,concat:o}=e,s=y2({typed:t,matrix:r,equalScalar:n,zeros:a,not:i,concat:o});function u(l,c,f){var m=l[0].compile().evaluate(f);if(!Fn(m)){if(isNaN(m))return NaN;if(m===0||m===!1)return 0}var d=l[1].compile().evaluate(f);return s(m,d)}return u.rawArgs=!0,u},{isTransformFunction:!0}),Mte="bitOr",Fte=["typed","matrix","equalScalar","DenseMatrix","concat"],Pte=I(Mte,Fte,e=>{var{typed:t,matrix:r,equalScalar:n,DenseMatrix:a,concat:i}=e,o=b2({typed:t,matrix:r,equalScalar:n,DenseMatrix:a,concat:i});function s(u,l,c){var f=u[0].compile().evaluate(c);if(!Fn(f)){if(isNaN(f))return NaN;if(f===-1)return-1;if(f===!0)return 1}var m=u[1].compile().evaluate(c);return o(f,m)}return s.rawArgs=!0,s},{isTransformFunction:!0}),Ne=y8({config:me}),Mt=N8({}),Mb=sX({BigNumber:Ne,config:me}),kte=tX({}),Ote=IX({BigNumber:Ne,config:me}),to=P8({}),K2=pX({Complex:Mt}),$te=nX({BigNumber:Ne,config:me}),Bte=cX({BigNumber:Ne,config:me}),_te=mX({BigNumber:Ne,config:me}),Ec=I8({}),Ite=aX({BigNumber:Ne,config:me}),zte=rX({}),jte=uX({BigNumber:Ne,config:me}),qte=$8({}),Y2=D9({}),Rte=dX({BigNumber:Ne,config:me}),Lte=ree({BigNumber:Ne,config:me}),Z2=oX({BigNumber:Ne,config:me}),Hte=eX({}),Gte=gX({}),rt=X8({Matrix:Ec}),Vte=UX({BigNumber:Ne,config:me}),Ute=lX({BigNumber:Ne,config:me}),Um=iX({BigNumber:Ne,config:me}),Q2=QQ({}),Wte=hX({BigNumber:Ne,config:me}),U=y9({BigNumber:Ne,Complex:Mt,DenseMatrix:rt,Fraction:to}),Jte=VX({BigNumber:Ne,config:me}),Kr=h7({typed:U}),Kte=GL({Complex:Mt,config:me,typed:U}),Yte=JL({BigNumber:Ne,typed:U}),Zte=QL({BigNumber:Ne,Complex:Mt,config:me,typed:U}),ur=y7({typed:U}),Qte=oj({typed:U}),Xte=aH({BigNumber:Ne,Complex:Mt,config:me,typed:U}),ere=lH({typed:U}),X2=mH({typed:U}),tre=gH({Complex:Mt,config:me,typed:U}),rre=jI({typed:U}),nre=Xz({typed:U}),are=HI({typed:U}),ire=tI({typed:U}),Sc=SZ({typed:U}),Tc=KI({Complex:Mt,typed:U}),ro=uj({typed:U}),$d=yH({typed:U}),ore=DH({BigNumber:Ne,typed:U}),sre=EH({BigNumber:Ne,typed:U}),ure=$7({typed:U}),it=TI({config:me,typed:U}),lre=Eq({typed:U}),eD=_7({typed:U}),cre=z7({Complex:Mt,typed:U}),fre=N2({typed:U}),ru=Mj({typed:U}),mre=A2({typed:U}),nu=Iq({typed:U}),Bd=Oj({typed:U}),dre=Hq({format:nu,typed:U}),_d=cj({typed:U}),tn=nI({typed:U}),yi=dI({config:me,typed:U}),no=bI({config:me,typed:U}),ca=xI({equalScalar:it,typed:U}),hre=fX({BigNumber:Ne,config:me}),pre=OZ({Complex:Mt,typed:U}),gre=bz({Complex:Mt,config:me,typed:U}),Id=xz({Complex:Mt,config:me,typed:U}),ao=C2({typed:U}),Kt=Az({typed:U}),ic=hj({typed:U}),Ra=_I({typed:U}),vre=Rq({format:nu,typed:U}),yre=lQ({config:me,typed:U}),bre=O2({typed:U}),wre=fQ({config:me,typed:U}),zd=mj({typed:U}),xre=FH({BigNumber:Ne,typed:U}),tD=Fz({BigNumber:Ne,Fraction:to,complex:Tc,typed:U}),Mc=$H({typed:U}),lr=PI({Matrix:Ec,equalScalar:it,typed:U}),Dre=u7({typed:U}),Nre=Bz({typed:U}),Are=RI({typed:U}),kn=w7({typed:U}),Cre=zH({typed:U}),rD=Jq({typed:U}),jd=CI({typed:U}),Ere=UL({Complex:Mt,config:me,typed:U}),Sre=eH({BigNumber:Ne,typed:U}),Tre=rH({BigNumber:Ne,Complex:Mt,config:me,typed:U}),rn=UI({BigNumber:Ne,typed:U}),Mre=MZ({typed:U}),Fre=wH({typed:U}),Pre=TH({BigNumber:Ne,typed:U}),Oa=NI({typed:U}),kre=Yq({typed:U}),Hs=zm({isInteger:tn,typed:U}),xe=e7({DenseMatrix:rt,Matrix:Ec,SparseMatrix:lr,typed:U}),Ore=r7({isZero:ca,matrix:xe,typed:U}),$re=Lj({BigNumber:Ne,config:me,matrix:xe,typed:U}),Bre=dQ({config:me,log2:Id,typed:U}),nD=Vj({isInteger:tn,matrix:xe,typed:U}),_re=kH({BigNumber:Ne,typed:U}),Ire=_H({typed:U}),zre=qL({SparseMatrix:lr,typed:U}),Qn=Oz({Complex:Mt,config:me,typed:U}),jre=nq({typed:U}),qre=RH({typed:U}),au=lq({matrix:xe,typed:U}),aD=jz({BigNumber:Ne,config:me,matrix:xe,typed:U}),Ar=dq({BigNumber:Ne,config:me,matrix:xe,typed:U}),Rre=YL({BigNumber:Ne,Complex:Mt,config:me,typed:U}),Lre=oH({Complex:Mt,config:me,typed:U}),Hre=jq({format:nu,typed:U}),ft=x2({isInteger:tn,matrix:xe,typed:U}),Gre=AH({BigNumber:Ne,typed:U}),qd=fq({conj:ro,transpose:au,typed:U}),iD=Cj({DenseMatrix:rt,SparseMatrix:lr,matrix:xe,typed:U}),Vre=Vz({concat:ft,equalScalar:it,matrix:xe,multiplyScalar:Kt,typed:U}),On=VR({DenseMatrix:rt,SparseMatrix:lr,concat:ft,equalScalar:it,matrix:xe,typed:U}),iu=QI({Fraction:to,typed:U}),bi=Bj({BigNumber:Ne,DenseMatrix:rt,SparseMatrix:lr,config:me,matrix:xe,typed:U}),io=pI({typed:U}),Ure=Ij({matrix:xe,multiplyScalar:Kt,typed:U}),Fc=iL({DenseMatrix:rt,SparseMatrix:lr,concat:ft,config:me,matrix:xe,typed:U}),Wre=TR({DenseMatrix:rt,concat:ft,equalScalar:it,matrix:xe,typed:U,zeros:Ar}),Jre=Oq({isNaN:Oa,isNumeric:io,typed:U}),Kre=Tz({BigNumber:Ne,concat:ft,equalScalar:it,matrix:xe,typed:U}),Mn=Xq({bignumber:rn,fraction:iu,number:Ra}),oD=Bq({config:me,multiplyScalar:Kt,numeric:Mn,typed:U}),Yre=Jj({config:me,matrix:xe}),Zre=FR({DenseMatrix:rt,concat:ft,equalScalar:it,matrix:xe,typed:U,zeros:Ar}),ns=iR({BigNumber:Ne,DenseMatrix:rt,config:me,equalScalar:it,matrix:xe,typed:U,zeros:Ar}),Tr=tq({matrix:xe,config:me,typed:U}),Gr=YR({DenseMatrix:rt,SparseMatrix:lr,bignumber:rn,concat:ft,config:me,matrix:xe,typed:U}),Qre=Uq({concat:ft,matrix:xe,typed:U}),fa=c7({typed:U}),Xre=cL({DenseMatrix:rt,SparseMatrix:lr,concat:ft,config:me,equalScalar:it,matrix:xe,typed:U}),ene=vj({DenseMatrix:rt,SparseMatrix:lr,concat:ft,matrix:xe,typed:U}),ut=lG({DenseMatrix:rt,SparseMatrix:lr,addScalar:ur,concat:ft,equalScalar:it,matrix:xe,typed:U}),tne=hH({BigNumber:Ne,DenseMatrix:rt,concat:ft,equalScalar:it,matrix:xe,typed:U}),rne=y2({concat:ft,equalScalar:it,matrix:xe,typed:U}),nne=b2({DenseMatrix:rt,concat:ft,equalScalar:it,matrix:xe,typed:U}),ane=aj({DenseMatrix:rt,SparseMatrix:lr,concat:ft,matrix:xe,typed:U}),sD=D7({BigNumber:Ne,Complex:Mt,Fraction:to,config:me,isNegative:yi,matrix:xe,typed:U,unaryMinus:fa}),oo=BR({BigNumber:Ne,DenseMatrix:rt,Fraction:to,concat:ft,config:me,equalScalar:it,matrix:xe,typed:U}),uD=HR({concat:ft,matrix:xe,typed:U}),ine=xj({prod:oD,size:Tr,typed:U}),Rd=uL({equal:On,typed:U}),Gt=tR({numeric:Mn,typed:U}),ou=gR({DenseMatrix:rt,SparseMatrix:lr,concat:ft,divideScalar:Gt,equalScalar:it,matrix:xe,typed:U}),one=JR({compareText:uD,isZero:ca,typed:U}),lD=p2({DenseMatrix:rt,config:me,equalScalar:it,matrix:xe,round:ns,typed:U,zeros:Ar}),sne=mz({BigNumber:Ne,DenseMatrix:rt,concat:ft,config:me,equalScalar:it,matrix:xe,round:ns,typed:U,zeros:Ar}),une=vI({isNumeric:io,typed:U}),lne=fG({abs:Kr,addScalar:ur,divideScalar:Gt,isPositive:no,multiplyScalar:Kt,smaller:Gr,sqrt:Qn,typed:U}),cD=wL({DenseMatrix:rt,smaller:Gr}),Br=NL({ImmutableDenseMatrix:cD,getMatrixDataType:Bd}),Vr=rL({DenseMatrix:rt,SparseMatrix:lr,bignumber:rn,concat:ft,config:me,matrix:xe,typed:U}),Ld=uR({Complex:Mt,config:me,divideScalar:Gt,typeOf:jd,typed:U}),fD=yR({DenseMatrix:rt,divideScalar:Gt,equalScalar:it,matrix:xe,multiplyScalar:Kt,subtractScalar:kn,typed:U}),Hd=o7({flatten:ru,matrix:xe,size:Tr,typed:U}),Gd=B2({config:me,isNaN:Oa,larger:Vr,numeric:Mn,typed:U}),cne=_2({config:me,isNaN:Oa,numeric:Mn,smaller:Gr,typed:U}),mD=g2({DenseMatrix:rt,concat:ft,config:me,equalScalar:it,matrix:xe,round:ns,typed:U,zeros:Ar}),fne=mR({Complex:Mt,config:me,divideScalar:Gt,typed:U}),mne=w2({DenseMatrix:rt,concat:ft,equalScalar:it,matrix:xe,typed:U}),Pc=dL({compare:oo,isNaN:Oa,isNumeric:io,typed:U}),Vd=DV({addScalar:ur,complex:Tc,conj:ro,divideScalar:Gt,equal:On,identity:bi,isZero:ca,matrix:xe,multiplyScalar:Kt,sign:tD,sqrt:Qn,subtractScalar:kn,typed:U,unaryMinus:fa,zeros:Ar}),dne=kR({DenseMatrix:rt,concat:ft,equalScalar:it,matrix:xe,typed:U,zeros:Ar}),Wo=XR({DenseMatrix:rt,SparseMatrix:lr,concat:ft,config:me,matrix:xe,typed:U}),pn=P2({add:ut,matrix:xe,typed:U,zeros:Ar}),Qt=Iz({DenseMatrix:rt,concat:ft,equalScalar:it,matrix:xe,subtractScalar:kn,typed:U,unaryMinus:fa}),hne=yG({add:ut,matrix:xe,typed:U}),Ud=wR({DenseMatrix:rt,divideScalar:Gt,equalScalar:it,matrix:xe,multiplyScalar:Kt,subtractScalar:kn,typed:U}),pne=bQ({addScalar:ur,combinations:Sc,divideScalar:Gt,isInteger:tn,isNegative:yi,multiplyScalar:Kt,typed:U}),ma=qR({compare:oo,typed:U}),gne=xQ({addScalar:ur,combinations:Sc,isInteger:tn,isNegative:yi,isPositive:no,larger:Vr,typed:U}),vne=E2({matrix:xe,number:Ra,subtract:Qt,typed:U}),yne=cZ({abs:Kr,addScalar:ur,deepEqual:Rd,divideScalar:Gt,multiplyScalar:Kt,sqrt:Qn,subtractScalar:kn,typed:U}),kc=pG({addScalar:ur,conj:ro,multiplyScalar:Kt,size:Tr,typed:U}),dD=EL({larger:Vr,smaller:Gr}),hD=wG({Index:Br,typed:U}),bne=Rz({BigNumber:Ne,add:ut,config:me,equal:On,isInteger:tn,mod:mD,smaller:Gr,typed:U,xgcd:aD}),wne=gz({concat:ft,equalScalar:it,matrix:xe,typed:U}),xne=cR({Complex:Mt,config:me,divideScalar:Gt,log:Ld,typed:U}),Dne=DR({DenseMatrix:rt,divideScalar:Gt,equalScalar:it,matrix:xe,multiplyScalar:Kt,subtractScalar:kn,typed:U}),Nne=a7({flatten:ru,matrix:xe,size:Tr,typed:U}),bt=Ez({addScalar:ur,dot:kc,equalScalar:it,matrix:xe,multiplyScalar:Kt,typed:U}),Jo=M2({bignumber:rn,matrix:xe,add:ut,config:me,isPositive:no,larger:Vr,largerEq:Fc,smaller:Gr,smallerEq:Wo,typed:U}),Ane=F2({Index:Br,matrix:xe,range:Jo,typed:U}),Cne=HH({DenseMatrix:rt,Index:Br,compareNatural:ma,size:Tr,subset:pn,typed:U}),Ene=WH({DenseMatrix:rt,Index:Br,compareNatural:ma,size:Tr,subset:pn,typed:U}),Sne=ZH({Index:Br,compareNatural:ma,size:Tr,subset:pn,typed:U}),Tne=tG({Index:Br,compareNatural:ma,size:Tr,subset:pn,typed:U}),pD=UV({SparseMatrix:lr,abs:Kr,add:ut,divideScalar:Gt,larger:Vr,largerEq:Fc,multiply:bt,subtract:Qt,transpose:au,typed:U}),Mne=pL({compare:oo,compareNatural:ma,matrix:xe,typed:U}),Wd=m7({config:me,numeric:Mn,typed:U}),gD=AR({DenseMatrix:rt,divideScalar:Gt,equalScalar:it,matrix:xe,multiplyScalar:Kt,subtractScalar:kn,typed:U}),Fne=GQ({Complex:Mt,add:ut,multiply:bt,number:Ra,typed:U}),Pne=$2({concat:ft,equalScalar:it,matrix:xe,not:ic,typed:U,zeros:Ar}),Jd=k7({DenseMatrix:rt,config:me,equalScalar:it,matrix:xe,round:ns,typed:U,zeros:Ar}),vD=D2({Index:Br,matrix:xe,range:Jo,typed:U}),kne=Nj({matrix:xe,multiply:bt,subtract:Qt,typed:U}),yD=qY({divideScalar:Gt,isZero:ca,matrix:xe,multiply:bt,subtractScalar:kn,typed:U,unaryMinus:fa}),bD=R7({Complex:Mt,DenseMatrix:rt,ceil:Jd,equalScalar:it,floor:lD,matrix:xe,typed:U,zeros:Ar}),so=LY({abs:Kr,addScalar:ur,det:yD,divideScalar:Gt,identity:bi,matrix:xe,multiply:bt,typed:U,unaryMinus:fa}),One=GY({Complex:Mt,add:ut,ctranspose:qd,deepEqual:Rd,divideScalar:Gt,dot:kc,dotDivide:ou,equal:On,inv:so,matrix:xe,multiply:bt,typed:U}),Xn=nR({Complex:Mt,config:me,fraction:iu,identity:bi,inv:so,matrix:xe,multiply:bt,number:Ra,typed:U}),wD=VH({DenseMatrix:rt,Index:Br,compareNatural:ma,size:Tr,subset:pn,typed:U}),$ne=XH({Index:Br,compareNatural:ma,size:Tr,subset:pn,typed:U}),xD=iG({Index:Br,concat:ft,setDifference:wD,size:Tr,subset:pn,typed:U}),DD=ML({FibonacciHeap:dD,addScalar:ur,equalScalar:it}),Bne=XY({abs:Kr,add:ut,identity:bi,inv:so,map:ao,max:Gd,multiply:bt,size:Tr,sqrt:Qn,subtract:Qt,typed:U}),Kd=L2({add:ut,config:me,numeric:Mn,typed:U}),Le=_L({BigNumber:Ne,Complex:Mt,Fraction:to,abs:Kr,addScalar:ur,config:me,divideScalar:Gt,equal:On,fix:bD,format:nu,isNumeric:io,multiplyScalar:Kt,number:Ra,pow:Xn,round:ns,subtractScalar:kn,toBest:rD}),_ne=NX({BigNumber:Ne,Unit:Le,config:me}),Ine=iee({BigNumber:Ne,Unit:Le,config:me}),zne=WX({BigNumber:Ne,Unit:Le,config:me}),jne=SX({BigNumber:Ne,Unit:Le,config:me}),qne=KX({BigNumber:Ne,Unit:Le,config:me}),Rne=TX({BigNumber:Ne,Unit:Le,config:me}),Lne=AX({BigNumber:Ne,Unit:Le,config:me}),Hne=LL({Unit:Le,typed:U}),Gne=qX({BigNumber:Ne,Unit:Le,config:me}),Vne=hR({DenseMatrix:rt,SparseMatrix:lr,concat:ft,equalScalar:it,matrix:xe,pow:Xn,typed:U}),Une=DX({BigNumber:Ne,Unit:Le,config:me}),Wne=EX({BigNumber:Ne,Unit:Le,config:me}),Jne=ZY({abs:Kr,add:ut,identity:bi,inv:so,multiply:bt,typed:U}),Kne=YX({BigNumber:Ne,Unit:Le,config:me}),ND=pq({addScalar:ur,ceil:Jd,conj:ro,divideScalar:Gt,dotDivide:ou,exp:eD,i:K2,log2:Id,matrix:xe,multiplyScalar:Kt,pow:Xn,tau:Z2,typed:U}),Yd=PZ({BigNumber:Ne,Complex:Mt,config:me,multiplyScalar:Kt,pow:Xn,typed:U}),Yne=yX({BigNumber:Ne,Unit:Le,config:me}),Zne=zX({BigNumber:Ne,Unit:Le,config:me}),Qne=vq({conj:ro,dotDivide:ou,fft:ND,typed:U}),Xne=MX({BigNumber:Ne,Unit:Le,config:me}),eae=kX({BigNumber:Ne,Unit:Le,config:me}),tae=QX({BigNumber:Ne,Unit:Le,config:me}),rae=xX({BigNumber:Ne,Unit:Le,config:me}),nae=oee({BigNumber:Ne,Unit:Le,config:me}),aae=eee({BigNumber:Ne,Unit:Le,config:me}),iae=RX({BigNumber:Ne,Unit:Le,config:me}),oae=PX({BigNumber:Ne,Unit:Le,config:me}),sae=mee({BigNumber:Ne,Unit:Le,config:me}),uae=lee({BigNumber:Ne,Unit:Le,config:me}),lae=dee({BigNumber:Ne,Unit:Le,config:me}),cae=jX({BigNumber:Ne,Unit:Le,config:me}),fae=LX({BigNumber:Ne,Unit:Le,config:me}),mae=wX({BigNumber:Ne,Unit:Le,config:me}),dae=HX({BigNumber:Ne,Unit:Le,config:me}),hae=nee({BigNumber:Ne,Unit:Le,config:me}),pae=nG({compareNatural:ma,typed:U}),gae=vX({BigNumber:Ne,Unit:Le,config:me}),vae=aee({BigNumber:Ne,Unit:Le,config:me}),yae=GX({BigNumber:Ne,Unit:Le,config:me}),bae=JX({BigNumber:Ne,Unit:Le,config:me}),wae=OX({BigNumber:Ne,Unit:Le,config:me}),xae=CX({BigNumber:Ne,Unit:Le,config:me}),Cr=uZ({divideScalar:Gt,equalScalar:it,inv:so,matrix:xe,multiply:bt,typed:U}),Dae=BX({BigNumber:Ne,Unit:Le,config:me}),su=BZ({gamma:Yd,typed:U}),Nae=ZX({BigNumber:Ne,Unit:Le,config:me}),Aae=uee({BigNumber:Ne,Unit:Le,config:me}),Cae=dZ({abs:Kr,add:ut,addScalar:ur,config:me,divideScalar:Gt,equalScalar:it,flatten:ru,isNumeric:io,isZero:ca,matrix:xe,multiply:bt,multiplyScalar:Kt,smaller:Gr,subtract:Qt,typed:U}),AD=wV({DenseMatrix:rt,Spa:DD,SparseMatrix:lr,abs:Kr,addScalar:ur,divideScalar:Gt,equalScalar:it,larger:Vr,matrix:xe,multiplyScalar:Kt,subtractScalar:kn,typed:U,unaryMinus:fa}),Eae=FX({BigNumber:Ne,Unit:Le,config:me}),Sae=see({BigNumber:Ne,Unit:Le,config:me}),Tae=jZ({add:ut,divide:Cr,factorial:su,isInteger:tn,isPositive:no,multiply:bt,typed:U}),Mae=RZ({factorial:su,typed:U}),Fae=cee({BigNumber:Ne,Unit:Le,config:me}),Pae=YV({add:ut,cbrt:sD,divide:Cr,equalScalar:it,im:_d,isZero:ca,multiply:bt,re:zd,sqrt:Qn,subtract:Qt,typeOf:jd,typed:U,unaryMinus:fa}),CD=KH({DenseMatrix:rt,Index:Br,compareNatural:ma,size:Tr,subset:pn,typed:U}),kae=Nq({abs:Kr,add:ut,bignumber:rn,divide:Cr,isNegative:yi,isPositive:no,larger:Vr,map:ao,matrix:xe,max:Gd,multiply:bt,smaller:Gr,subtract:Qt,typed:U,unaryMinus:fa}),ED=pQ({bignumber:rn,addScalar:ur,combinations:Sc,divideScalar:Gt,factorial:su,isInteger:tn,isNegative:yi,larger:Vr,multiplyScalar:Kt,number:Ra,pow:Xn,subtractScalar:kn,typed:U}),Oae=zL({Unit:Le,typed:U}),$ae=vQ({addScalar:ur,isInteger:tn,isNegative:yi,stirlingS2:ED,typed:U}),Bae=H2({add:ut,typed:U,unaryPlus:Wd}),SD=KY({abs:Kr,add:ut,addScalar:ur,atan:X2,bignumber:rn,column:vD,complex:Tc,config:me,cos:$d,diag:iD,divideScalar:Gt,dot:kc,equal:On,flatten:ru,im:_d,inv:so,larger:Vr,matrix:xe,matrixFromColumns:Hd,multiply:bt,multiplyScalar:Kt,number:Ra,qr:Vd,re:zd,reshape:nD,sin:Mc,size:Tr,smaller:Gr,sqrt:Qn,subtract:Qt,typed:U,usolve:Ud,usolveAll:gD}),_ae=_X({BigNumber:Ne,Unit:Le,config:me}),Iae=XX({BigNumber:Ne,Unit:Le,config:me}),zae=IZ({divide:Cr,dotDivide:ou,isNumeric:io,log:Ld,map:ao,matrix:xe,multiply:bt,sum:Kd,typed:U}),TD=JV({DenseMatrix:rt,lsolve:fD,lup:AD,matrix:xe,slu:pD,typed:U,usolve:Ud}),MD=G2({add:ut,divide:Cr,typed:U}),jae=tee({BigNumber:Ne,Unit:Le,config:me}),qae=bX({BigNumber:Ne,Unit:Le,config:me}),Rae=U2({bignumber:rn,add:ut,compare:oo,divide:Cr,isInteger:tn,larger:Vr,mapSlices:Hs,multiply:bt,partitionSelect:Pc,smaller:Gr,smallerEq:Wo,subtract:Qt,typed:U}),Lae=sG({Index:Br,concat:ft,setIntersect:CD,setSymDifference:xD,size:Tr,subset:pn,typed:U}),Zd=V2({add:ut,divide:Cr,isNaN:Oa,mapSlices:Hs,multiply:bt,subtract:Qt,typed:U}),Hae=$X({BigNumber:Ne,Unit:Le,config:me}),FD=yZ({add:ut,compare:oo,divide:Cr,partitionSelect:Pc,typed:U}),Gae=CZ({add:ut,divide:Cr,matrix:xe,mean:MD,multiply:bt,pow:Xn,sqrt:Qn,subtract:Qt,sum:Kd,typed:U}),Vae=UQ({Complex:Mt,add:ut,divide:Cr,matrix:xe,multiply:bt,typed:U}),Uae=wZ({abs:Kr,map:ao,median:FD,subtract:Qt,typed:U}),Wae=W2({map:ao,sqrt:Qn,typed:U,variance:Zd}),Jae=Pq({BigNumber:Ne,Complex:Mt,add:ut,config:me,divide:Cr,equal:On,factorial:su,gamma:Yd,isNegative:yi,multiply:bt,pi:Um,pow:Xn,sin:Mc,smallerEq:Wo,subtract:Qt,typed:U}),Qd=dG({abs:Kr,add:ut,conj:ro,ctranspose:qd,eigs:SD,equalScalar:it,larger:Vr,matrix:xe,multiply:bt,pow:Xn,smaller:Gr,sqrt:Qn,typed:U}),PD=Qj({BigNumber:Ne,DenseMatrix:rt,SparseMatrix:lr,addScalar:ur,config:me,cos:$d,matrix:xe,multiplyScalar:Kt,norm:Qd,sin:Mc,typed:U,unaryMinus:fa}),Kae=fee({BigNumber:Ne,Unit:Le,config:me}),kD=nZ({identity:bi,matrix:xe,multiply:bt,norm:Qd,qr:Vd,subtract:Qt,typed:U}),Yae=Yj({multiply:bt,rotationMatrix:PD,typed:U}),OD=tZ({abs:Kr,add:ut,concat:ft,identity:bi,index:hD,lusolve:TD,matrix:xe,matrixFromColumns:Hd,multiply:bt,range:Jo,schur:kD,subset:pn,subtract:Qt,transpose:au,typed:U}),Zae=iZ({matrix:xe,multiply:bt,sylvester:OD,transpose:au,typed:U}),as={},uu={},$D={},zr=NG({mathWithTransform:uu}),is=WG({Node:zr}),La=KG({Node:zr}),uo=ZG({Node:zr}),BD=tV({Node:zr}),os=SG({Node:zr}),_D=OG({Node:zr,ResultSet:Y2}),ID=BG({Node:zr}),wi=RG({Node:zr}),zD=XG({Node:zr}),Qae=KQ({classes:$D}),Xd=rU({math:as,typed:U}),jD=HG({Node:zr,typed:U}),Xae=zY({Chain:Xd,typed:U}),ss=CG({Node:zr,subset:pn}),qD=PG({matrix:xe,Node:zr,subset:pn}),us=VG({Node:zr,size:Tr}),xi=aV({Unit:Le,Node:zr,math:as}),Di=oV({Node:zr,SymbolNode:xi,math:as}),ea=uV({AccessorNode:ss,ArrayNode:os,AssignmentNode:qD,BlockNode:_D,ConditionalNode:ID,ConstantNode:wi,FunctionAssignmentNode:jD,FunctionNode:Di,IndexNode:us,ObjectNode:is,OperatorNode:La,ParenthesisNode:uo,RangeNode:zD,RelationalNode:BD,SymbolNode:xi,config:me,numeric:Mn,typed:U}),RD=_Q({ConstantNode:wi,FunctionNode:Di,OperatorNode:La,ParenthesisNode:uo,parse:ea,typed:U}),eh=PQ({bignumber:rn,fraction:iu,AccessorNode:ss,ArrayNode:os,ConstantNode:wi,FunctionNode:Di,IndexNode:us,ObjectNode:is,OperatorNode:La,SymbolNode:xi,config:me,mathWithTransform:uu,matrix:xe,typed:U}),eie=cV({parse:ea,typed:U}),th=OQ({AccessorNode:ss,ArrayNode:os,ConstantNode:wi,FunctionNode:Di,IndexNode:us,ObjectNode:is,OperatorNode:La,ParenthesisNode:uo,SymbolNode:xi,add:ut,divide:Cr,equal:On,isZero:ca,multiply:bt,parse:ea,pow:Xn,subtract:Qt,typed:U}),Oc=mV({parse:ea,typed:U}),LD=XV({evaluate:Oc}),HD=pV({evaluate:Oc,parse:ea}),$c=TQ({AccessorNode:ss,ArrayNode:os,ConstantNode:wi,FunctionNode:Di,IndexNode:us,ObjectNode:is,OperatorNode:La,ParenthesisNode:uo,SymbolNode:xi,equal:On,parse:ea,replacer:Q2,resolve:RD,simplifyConstant:eh,simplifyCore:th,typed:U}),tie=zQ({OperatorNode:La,parse:ea,simplify:$c,typed:U}),rie=NQ({parse:ea,typed:U}),nie=yV({Parser:HD,typed:U}),aie=LQ({bignumber:rn,fraction:iu,AccessorNode:ss,ArrayNode:os,ConstantNode:wi,FunctionNode:Di,IndexNode:us,ObjectNode:is,OperatorNode:La,ParenthesisNode:uo,SymbolNode:xi,add:ut,config:me,divide:Cr,equal:On,isZero:ca,mathWithTransform:uu,matrix:xe,multiply:bt,parse:ea,pow:Xn,simplify:$c,simplifyConstant:eh,simplifyCore:th,subtract:Qt,typed:U}),iie=qQ({ConstantNode:wi,FunctionNode:Di,OperatorNode:La,ParenthesisNode:uo,SymbolNode:xi,config:me,equal:On,isZero:ca,numeric:Mn,parse:ea,simplify:$c,typed:U}),oie=_Y({Help:LD,mathWithTransform:uu,typed:U});or(as,{e:Mb,false:kte,fineStructure:Ote,i:K2,Infinity:$te,LN10:Bte,LOG10E:_te,NaN:Ite,null:zte,phi:jte,SQRT1_2:Rte,sackurTetrode:Lte,tau:Z2,true:Hte,E:Mb,version:Gte,efimovFactor:Vte,LN2:Ute,pi:Um,replacer:Q2,reviver:Qae,SQRT2:Wte,typed:U,PI:Um,weakMixingAngle:Jte,abs:Kr,acos:Kte,acot:Yte,acsc:Zte,addScalar:ur,arg:Qte,asech:Xte,asinh:ere,atan:X2,atanh:tre,bigint:rre,bitNot:nre,boolean:are,clone:ire,combinations:Sc,complex:Tc,conj:ro,cos:$d,cot:ore,csc:sre,cube:ure,equalScalar:it,erf:lre,exp:eD,expm1:cre,filter:fre,flatten:ru,forEach:mre,format:nu,getMatrixDataType:Bd,hex:dre,im:_d,isInteger:tn,isNegative:yi,isPositive:no,isZero:ca,LOG2E:hre,lgamma:pre,log10:gre,log2:Id,map:ao,multiplyScalar:Kt,not:ic,number:Ra,oct:vre,pickRandom:yre,print:bre,random:wre,re:zd,sec:xre,sign:tD,sin:Mc,splitUnit:Dre,square:Nre,string:Are,subtractScalar:kn,tan:Cre,toBest:rD,typeOf:jd,acosh:Ere,acsch:Sre,asec:Tre,bignumber:rn,chain:Xae,combinationsWithRep:Mre,cosh:Fre,csch:Pre,isNaN:Oa,isPrime:kre,mapSlices:Hs,matrix:xe,matrixFromFunction:Ore,ones:$re,randomInt:Bre,reshape:nD,sech:_re,sinh:Ire,sparse:zre,sqrt:Qn,squeeze:jre,tanh:qre,transpose:au,xgcd:aD,zeros:Ar,acoth:Rre,asin:Lre,bin:Hre,concat:ft,coth:Gre,ctranspose:qd,diag:iD,dotMultiply:Vre,equal:On,fraction:iu,identity:bi,isNumeric:io,kron:Ure,largerEq:Fc,leftShift:Wre,mode:Jre,nthRoot:Kre,numeric:Mn,prod:oD,resize:Yre,rightArithShift:Zre,round:ns,size:Tr,smaller:Gr,to:Qre,unaryMinus:fa,unequal:Xre,xor:ene,add:ut,atan2:tne,bitAnd:rne,bitOr:nne,bitXor:ane,cbrt:sD,compare:oo,compareText:uD,count:ine,deepEqual:Rd,divideScalar:Gt,dotDivide:ou,equalText:one,floor:lD,gcd:sne,hasNumericValue:une,hypot:lne,larger:Vr,log:Ld,lsolve:fD,matrixFromColumns:Hd,max:Gd,min:cne,mod:mD,nthRoots:fne,or:mne,partitionSelect:Pc,qr:Vd,rightLogShift:dne,smallerEq:Wo,subset:pn,subtract:Qt,trace:hne,usolve:Ud,catalan:pne,compareNatural:ma,composition:gne,diff:vne,distance:yne,dot:kc,index:hD,invmod:bne,lcm:wne,log1p:xne,lsolveAll:Dne,matrixFromRows:Nne,multiply:bt,range:Jo,row:Ane,setCartesian:Cne,setDistinct:Ene,setIsSubset:Sne,setPowerset:Tne,slu:pD,sort:Mne,unaryPlus:Wd,usolveAll:gD,zpk2tf:Fne,and:Pne,ceil:Jd,column:vD,cross:kne,det:yD,fix:bD,inv:so,pinv:One,pow:Xn,setDifference:wD,setMultiplicity:$ne,setSymDifference:xD,sqrtm:Bne,sum:Kd,vacuumImpedance:_ne,wienDisplacement:Ine,atomicMass:zne,bohrMagneton:jne,boltzmann:qne,conductanceQuantum:Rne,coulomb:Lne,createUnit:Hne,deuteronMass:Gne,dotPow:Vne,electricConstant:Une,elementaryCharge:Wne,expm:Jne,faraday:Kne,fft:ND,gamma:Yd,gravitationConstant:Yne,hartreeEnergy:Zne,ifft:Qne,inverseConductanceQuantum:Xne,klitzing:eae,loschmidt:tae,magneticConstant:rae,molarMass:nae,molarPlanckConstant:aae,neutronMass:iae,nuclearMagneton:oae,planckCharge:sae,planckLength:uae,planckTemperature:lae,protonMass:cae,quantumOfCirculation:fae,reducedPlanckConstant:mae,rydberg:dae,secondRadiation:hae,setSize:pae,speedOfLight:gae,stefanBoltzmann:vae,thomsonCrossSection:yae,avogadro:bae,bohrRadius:wae,coulombConstant:xae,divide:Cr,electronMass:Dae,factorial:su,firstRadiation:Nae,gravity:Aae,intersect:Cae,lup:AD,magneticFluxQuantum:Eae,molarMassC12:Sae,multinomial:Tae,parse:ea,permutations:Mae,planckMass:Fae,polynomialRoot:Pae,resolve:RD,setIntersect:CD,simplifyConstant:eh,solveODE:kae,stirlingS2:ED,unit:Oae,bellNumbers:$ae,compile:eie,cumsum:Bae,eigs:SD,fermiCoupling:_ae,gasConstant:Iae,kldivergence:zae,lusolve:TD,mean:MD,molarVolume:jae,planckConstant:qae,quantileSeq:Rae,setUnion:Lae,simplifyCore:th,variance:Zd,classicalElectronRadius:Hae,evaluate:Oc,median:FD,simplify:$c,symbolicEqual:tie,corr:Gae,freqz:Vae,leafCount:rie,mad:Uae,parser:nie,rationalize:aie,std:Wae,zeta:Jae,derivative:iie,norm:Qd,rotationMatrix:PD,help:oie,planckTime:Kae,schur:kD,rotate:Yae,sylvester:OD,lyap:Zae,config:me});or(uu,as,{mapSlices:vee({isInteger:tn,typed:U}),filter:Cee({typed:U}),forEach:Tee({typed:U}),map:$ee({typed:U}),or:Cte({DenseMatrix:rt,concat:ft,equalScalar:it,matrix:xe,typed:U}),and:Dte({add:ut,concat:ft,equalScalar:it,matrix:xe,not:ic,typed:U,zeros:Ar}),concat:nte({isInteger:tn,matrix:xe,typed:U}),index:Pee({Index:Br,getMatrixDataType:Bd}),print:bte({add:ut,matrix:xe,typed:U,zeros:Ar}),sum:cte({add:ut,config:me,numeric:Mn,typed:U}),bitAnd:Tte({add:ut,concat:ft,equalScalar:it,matrix:xe,not:ic,typed:U,zeros:Ar}),min:Vee({config:me,isNaN:Oa,numeric:Mn,smaller:Gr,typed:U}),subset:ete({add:ut,matrix:xe,typed:U,zeros:Ar}),bitOr:Pte({DenseMatrix:rt,concat:ft,equalScalar:it,matrix:xe,typed:U}),cumsum:pte({add:ut,typed:U,unaryPlus:Wd}),diff:ite({bignumber:rn,matrix:xe,number:Ra,subtract:Qt,typed:U}),max:jee({config:me,isNaN:Oa,larger:Vr,numeric:Mn,typed:U}),range:Jee({bignumber:rn,matrix:xe,add:ut,config:me,isPositive:no,larger:Vr,largerEq:Fc,smaller:Gr,smallerEq:Wo,typed:U}),row:Zee({Index:Br,matrix:xe,range:Jo,typed:U}),column:wee({Index:Br,matrix:xe,range:Jo,typed:U}),mean:Lee({add:ut,divide:Cr,typed:U}),quantileSeq:dte({add:ut,bignumber:rn,compare:oo,divide:Cr,isInteger:tn,larger:Vr,mapSlices:Hs,multiply:bt,partitionSelect:Pc,smaller:Gr,smallerEq:Wo,subtract:Qt,typed:U}),variance:vte({add:ut,divide:Cr,isNaN:Oa,mapSlices:Hs,multiply:bt,subtract:Qt,typed:U}),std:ute({map:ao,sqrt:Qn,typed:U,variance:Zd})});or($D,{BigNumber:Ne,Complex:Mt,Fraction:to,Matrix:Ec,Node:zr,ObjectNode:is,OperatorNode:La,ParenthesisNode:uo,Range:qte,RelationalNode:BD,ResultSet:Y2,ArrayNode:os,BlockNode:_D,ConditionalNode:ID,ConstantNode:wi,DenseMatrix:rt,RangeNode:zD,Chain:Xd,FunctionAssignmentNode:jD,SparseMatrix:lr,ImmutableDenseMatrix:cD,Index:Br,AccessorNode:ss,AssignmentNode:qD,FibonacciHeap:dD,IndexNode:us,Spa:DD,Unit:Le,SymbolNode:xi,FunctionNode:Di,Help:LD,Parser:HD});Xd.createProxy(as);const rh=({ref:e,onChange:t,value:r,dragDirection:n,showDragHandle:a=!0,dragScale:i,selectOnFocus:o=!0,bounds:s=ve.H.INFINITE,resetValue:u,variant:l="outlined",className:c,children:f,disabled:m,onBlur:d,units:p,size:h,color:g,contrast:b,...D})=>{const[y,w,x]=en.useCombinedStateAndRef(r.toString()),[v,N,C]=en.useCombinedStateAndRef(!0),A=en.useSyncedRef(r),E=vr.useCallback(()=>{if(C.current)return;N(!0);let M=null;try{const z=Oc(x.current);z instanceof Le?M=z.toNumber():typeof z=="number"&&!isNaN(z)&&(M=z)}catch{M=null}M!=null?t?.(ve.H.clamp(s,M)):w(A.current.toString())},[t,w]),S=en.useSyncedRef(E),F=vr.useCallback(()=>{d?.(),E()},[d,E]);vr.useEffect(()=>()=>S.current?.(),[]);const k=vr.useCallback(M=>{N(!1),w(M)},[w,N]),B=v?r:y,$=vr.useCallback(M=>{N(!0),t?.(ve.H.clamp(s,Math.round(M)))},[t,N]);return i==null&&ve.H.isFinite(s)&&(i={x:ve.H.span(s)*.01,y:ve.H.span(s)*.02}),(m||l==="preview")&&(a=!1),Ce.jsxRuntimeExports.jsxs(Ba.Text,{ref:e,type:"text",variant:l,value:B.toString(),onChange:k,disabled:m,selectOnFocus:o,onKeyDown:M=>{Ta.eventKey(M)==="Enter"&&(E(),d?.())},onBlur:F,size:h,color:g,contrast:b,...D,children:[a&&Ce.jsxRuntimeExports.jsx(sc,{direction:n,value:r,onChange:$,dragScale:i,resetValue:u,onBlur:F,size:h,color:g,contrast:b}),f]})},sie=({location:e="left",size:t="9rem",className:r,style:n,bordered:a=!1,...i})=>{const o=ve.K.construct(e),s=ve.K.direction(o),u=ve.p.swap(s);return Ce.jsxRuntimeExports.jsx(er.Box$1,{className:ve.CSS(ve.CSS.B("navbar"),a&&ve.CSS.bordered(ve.K.swap(o)),ve.CSS.dir(u),ve.CSS.loc(o),r),direction:u,style:{[ve.p.dimension(s)]:t,...n},align:"center",empty:!0,...i})},lu=e=>(({bordered:t=!1,className:r,...n})=>Ce.jsxRuntimeExports.jsx(er.Box$1,{className:ve.CSS(ve.CSS.BE("navbar","content"),e==="absolute-center"?ve.CSS.M(e):ve.CSS.align(e),e!==""&&t&&ve.CSS.bordered(e),r),align:"center",...n})),GD=lu("start");GD.displayName="NavbarStart";const VD=lu("end");VD.displayName="NavbarEnd";const UD=lu("center");UD.displayName="NavbarCenter";const WD=lu("");WD.displayName="NavbarContent";const JD=lu("absolute-center");JD.displayName="NavbarAbsoluteCenter";const $a=sie;$a.Start=GD;$a.Center=UD;$a.End=VD;$a.AbsoluteCenter=JD;$a.Content=WD;const Wm=e=>e.add(BigInt(ve.r.now().date().getTimezoneOffset()-e.date().getTimezoneOffset())*ve.a$1.MINUTE.valueOf()),uie=({value:e,onChange:t,onBlur:r,onlyChangeOnBlur:n,variant:a,...i})=>{const[o,s]=vr.useState(null),u=(p,h=!1)=>{let g=p.toString();s(g);let b=new ve.r(p,"UTC");g.length<23&&(g+=".000"),b=Wm(b);let D=!1;D=b.toString("ISO","local").slice(0,-1)===g,D&&!n&&(t(Number(b.valueOf())),s(null)),h&&(D&&t(Number(b.valueOf())),s(null))},l=p=>{u(p.target.value,!0),s(null),r?.(p)},c=new ve.r(e,"UTC"),f=c.toString("ISO","local").slice(0,-1),[m,d]=vr.useState(!1);return Ce.jsxRuntimeExports.jsxs(Pb.Frame,{visible:m,variant:"modal",zIndex:500,onVisibleChange:d,children:[Ce.jsxRuntimeExports.jsx(Ba.Text,{className:ve.CSS.BE("input","datetime"),variant:a,type:"datetime-local",onBlur:l,required:!1,value:o??f,onChange:u,step:1e-5,...i,children:Ce.jsxRuntimeExports.jsx(En.Button,{onClick:()=>d(!m),variant:a,children:Ce.jsxRuntimeExports.jsx(Ta.Calendar,{})})}),Ce.jsxRuntimeExports.jsx(fie,{value:c,onChange:p=>t(Number(p.valueOf()))})]})},lie=tt.extend(P6),cie=["Control","Enter"],fie=({value:e,onChange:t})=>{const{close:r}=Pb.useContext();return Ce.jsxRuntimeExports.jsx(TN.Dialog,{children:Ce.jsxRuntimeExports.jsxs(er.Box$1,{className:ve.CSS.B("datetime-modal"),empty:!0,children:[Ce.jsxRuntimeExports.jsxs(er.Box$1,{className:ve.CSS.B("datetime-modal-container"),children:[Ce.jsxRuntimeExports.jsx(er.Box$1,{x:!0,className:ve.CSS.B("header"),children:Ce.jsxRuntimeExports.jsx(kb,{level:"h3",format:"preciseDate",children:e})}),Ce.jsxRuntimeExports.jsx(En.Button,{variant:"text",className:ve.CSS.B("close-btn"),onClick:r,children:Ce.jsxRuntimeExports.jsx(Ta.Close,{})}),Ce.jsxRuntimeExports.jsxs(er.Box$1,{x:!0,className:ve.CSS.B("content"),children:[Ce.jsxRuntimeExports.jsx(hie,{value:e,onChange:t,close:r}),Ce.jsxRuntimeExports.jsx(pie,{value:e,onChange:t})]})]}),Ce.jsxRuntimeExports.jsxs($a,{location:"bottom",size:"7rem",children:[Ce.jsxRuntimeExports.jsxs($a.Start,{gap:"small",children:[Ce.jsxRuntimeExports.jsx(Ta.Text,{level:"small",trigger:cie}),Ce.jsxRuntimeExports.jsx(en.Text,{level:"small",children:"To Finish"})]}),Ce.jsxRuntimeExports.jsx($a.End,{children:Ce.jsxRuntimeExports.jsx(En.Button,{onClick:r,variant:"outlined",children:"Done"})})]})]})})},mie=e=>{const t=Tl.useItem(e.key);return Ce.jsxRuntimeExports.jsx(Tl.Item,{...e,children:Ce.jsxRuntimeExports.jsx(en.Text,{children:t?.name})})},die=En.renderProp(mie),hie=({value:e,onChange:t,close:r})=>{const[n,a]=vr.useState(""),[i,o]=vr.useState([]),{data:s,getItem:u}=MN.useStaticData({data:i}),l=f=>{const m=lie(f),d=m.dates().get(),p=[];p.push(...d.map(g=>{const b=Wm(new ve.r(g.start,"UTC"));return{key:g.start,name:b.toString("preciseDate","local"),onSelect:()=>{t(b),r()}}})),o(p);const h=m.durations().get();p.push(...h.map(g=>{let b=new ve.a$1(0);g.hour!=null&&(b=b.add(ve.a$1.hours(g.hour))),g.minute!=null&&(b=b.add(ve.a$1.minutes(g.minute))),g.second!=null&&(b=b.add(ve.a$1.seconds(g.second))),g.millisecond!=null&&(b=b.add(ve.a$1.milliseconds(g.millisecond)));const D=Wm(e.add(b));return{key:D.valueOf().toString(),name:D.toString("preciseDate","local"),onSelect:()=>{t(D),r()}}})),a(f)},c=f=>{const m=i.find(d=>d.key===f);m&&m.onSelect(),a(""),o([])};return Ce.jsxRuntimeExports.jsxs(er.Box$1,{pack:!0,y:!0,className:ve.CSS.B("ai-selector"),background:1,full:"y",children:[Ce.jsxRuntimeExports.jsx(Ba.Text,{value:n,onChange:l,autoFocus:!0,placeholder:"AI Suggestion",full:"x"}),Ce.jsxRuntimeExports.jsx(Ba.Frame,{data:s,allowNone:!0,onChange:c,getItem:u,children:Ce.jsxRuntimeExports.jsx(Tl.Items,{className:ve.CSS.B("ai-list"),bordered:!0,borderColor:5,full:"y",emptyContent:Ce.jsxRuntimeExports.jsx(er.Box$1,{empty:!0,grow:!0,align:"center",justify:"center",children:Ce.jsxRuntimeExports.jsxs(er.Box$1,{y:!0,gap:"tiny",children:[Ce.jsxRuntimeExports.jsx(en.Text,{level:"small",color:"var(--pluto-gray-l7)",children:'"April 1 at 2PM"'}),Ce.jsxRuntimeExports.jsx(en.Text,{level:"small",color:"var(--pluto-gray-l7)",children:'"Add 2 two hours"'}),Ce.jsxRuntimeExports.jsx(en.Text,{level:"small",color:"var(--pluto-gray-l7)",children:'"Next Friday"'})]})}),children:die})})]})},Fb=[{name:"January",days:31},{name:"February",days:28},{name:"March",days:31},{name:"April",days:30},{name:"May",days:31},{name:"June",days:30},{name:"July",days:31},{name:"August",days:31},{name:"September",days:30},{name:"October",days:31},{name:"November",days:30},{name:"December",days:31}],pie=({value:e,onChange:t})=>{const r=e.month,n=e.year,a=e.day,i=u=>t(e.setMonth(u)),o=u=>t(e.setYear(u)),s=u=>t(e.setDay(u));return Ce.jsxRuntimeExports.jsxs(er.Box$1,{pack:!0,x:!0,className:ve.CSS.B("datetime-picker"),rounded:!0,children:[Ce.jsxRuntimeExports.jsxs(er.Box$1,{pack:!0,y:!0,align:"stretch",className:ve.CSS.B("calendar"),children:[Ce.jsxRuntimeExports.jsxs(er.Box$1,{pack:!0,x:!0,grow:!0,className:ve.CSS.B("calendar-header"),children:[Ce.jsxRuntimeExports.jsx(En.Button,{onClick:()=>i(r-1),variant:"outlined",children:Ce.jsxRuntimeExports.jsx(Ta.Caret.Left,{})}),Ce.jsxRuntimeExports.jsx(en.Text,{level:"small",style:{flexGrow:1,paddingLeft:"1rem"},className:ve.CSS.BE("calendar-header","month"),children:Fb[r].name}),Ce.jsxRuntimeExports.jsx(En.Button,{onClick:()=>i(r+1),style:{borderTopRightRadius:0},variant:"outlined",children:Ce.jsxRuntimeExports.jsx(Ta.Caret.Right,{})})]}),Ce.jsxRuntimeExports.jsxs(er.Box$1,{pack:!0,x:!0,grow:!0,sharp:!0,children:[Ce.jsxRuntimeExports.jsx(En.Button,{onClick:()=>o(n-1),variant:"outlined",children:Ce.jsxRuntimeExports.jsx(Ta.Caret.Left,{})}),Ce.jsxRuntimeExports.jsx(en.Text,{level:"small",style:{flexGrow:1,paddingLeft:"1rem"},children:n}),Ce.jsxRuntimeExports.jsx(En.Button,{onClick:()=>o(n+1),variant:"outlined",children:Ce.jsxRuntimeExports.jsx(Ta.Caret.Right,{})})]}),Ce.jsxRuntimeExports.jsx(er.Box$1,{x:!0,wrap:!0,gap:"tiny",style:{padding:"0.5rem",height:"100%"},children:Array.from({length:Fb[r].days}).map((u,l)=>Ce.jsxRuntimeExports.jsx(En.Button,{variant:l+1===a?"outlined":"text",onClick:()=>s(l+1),square:!0,children:Ce.jsxRuntimeExports.jsx(en.Text,{level:"small",children:l+1})},l))})]}),Ce.jsxRuntimeExports.jsx(Die,{value:e,onChange:t})]})},gie={padding:"0rem",paddingLeft:"2rem",height:"4rem",minHeight:"4rem",maxHeight:"4rem"},vie=e=>Ce.jsxRuntimeExports.jsx(Ba.ListItem,{...e,style:gie,children:e.index}),yie=En.renderProp(vie),nh=e=>{const t=Array.from({length:e},(n,a)=>a),r=({value:n,onChange:a})=>Ce.jsxRuntimeExports.jsx(Ba.Frame,{data:t,value:n,onChange:a,children:Ce.jsxRuntimeExports.jsx(Tl.Items,{className:ve.CSS.B("time-list"),children:yie})});return r.displayName="TimeList",r},bie=nh(24),wie=nh(60),xie=nh(60),Die=({value:e,onChange:t})=>Ce.jsxRuntimeExports.jsxs(er.Box$1,{pack:!0,y:!0,className:ve.CSS.B("time-selector"),children:[Ce.jsxRuntimeExports.jsxs(er.Box$1,{pack:!0,x:!0,grow:!0,className:ve.CSS.B("time-selector-list"),children:[Ce.jsxRuntimeExports.jsx(bie,{value:e.hour,onChange:r=>t(e.setHour(r))}),Ce.jsxRuntimeExports.jsx(wie,{value:e.minute,onChange:r=>t(e.setMinute(r))}),Ce.jsxRuntimeExports.jsx(xie,{value:e.second,onChange:r=>t(e.setSecond(r))})]}),Ce.jsxRuntimeExports.jsx(rh,{size:"small",value:e.millisecond,onChange:r=>t(e.setMillisecond(r)),endContent:"ms",showDragHandle:!1,borderColor:5})]}),Jm=({className:e,variant:t,...r})=>Ce.jsxRuntimeExports.jsx(en.Text,{className:ve.CSS(ve.CSS.B("input-help-text"),e),color:8,status:ve.Yr.removeVariants(t,"success"),level:"small",...r}),KD=({className:e,required:t=!1,children:r,...n})=>Ce.jsxRuntimeExports.jsxs("label",{className:ve.CSS(ve.CSS.B("input-label"),e),...n,children:[r," ",t&&Ce.jsxRuntimeExports.jsx("span",{className:ve.CSS.B("required-indicator"),children:"*"})]}),Nie=(e,t="y")=>e??(ve.p.construct(t)==="y"?"stretch":"center"),YD=({label:e,showLabel:t=!0,helpText:r,direction:n,x:a,y:i,className:o,children:s,required:u,align:l,gap:c="small",padHelpText:f=!1,status:m,showHelpText:d=!0,...p})=>{const h=er.parseDirection(n,a,i,!1);let g;const b=d&&r!=null&&r.length>0,D=t&&e!=null&&e.length>0;return!b&&!D?s:(h==="x"?g=Ce.jsxRuntimeExports.jsxs(er.Box$1,{y:!0,gap:"small",children:[s,d&&(f||r!=null&&r.length>0)&&Ce.jsxRuntimeExports.jsx(Jm,{variant:m,children:r})]}):g=Ce.jsxRuntimeExports.jsxs(er.Box$1,{y:!0,gap:1/3,align:"stretch",children:[s,(f||r!=null&&r.length>0)&&Ce.jsxRuntimeExports.jsx(Jm,{variant:m,children:r})]}),Ce.jsxRuntimeExports.jsxs(er.Box$1,{className:ve.CSS(ve.CSS.BE("input","item"),o),direction:h,gap:c,align:Nie(l,h),...p,children:[D&&Ce.jsxRuntimeExports.jsx(KD,{required:u,children:e}),g]}))},ZD=e=>Ce.jsxRuntimeExports.jsx(Ob,{...e,inputType:"switch"}),Aie=(e,t)=>new ve.r(e).add(t).sub(ve.r.utcOffset),Cie={x:Number(ve.a$1.SECOND.valueOf())*.5,y:Number(ve.a$1.MINUTE.valueOf())},QD=({value:e,onChange:t,tzInfo:r})=>{const n=new ve.r(e,"UTC"),a=n.sub(ve.r.utcOffset);if(a.after(ve.r.DAY)){const s=a.remainder(ve.r.DAY);t(Number(new ve.r(s,"local").valueOf()))}const i=vr.useCallback(s=>{let u;if(typeof s=="number")u=new ve.r(s,"UTC");else{if(s.length===0)return;u=new ve.r(s,"local")}t(Number(u.valueOf()))},[t,r]);return{inputValue:n.toString("time",r),ts:n,handleChange:i}},Eie=({ref:e,size:t,value:r,tzInfo:n="local",onChange:a,dragDirection:i,showDragHandle:o=!0,className:s,children:u,...l})=>{const{inputValue:c,ts:f,handleChange:m}=QD({value:r,onChange:a,tzInfo:n});return Ce.jsxRuntimeExports.jsxs(Ba.Text,{ref:e,value:c,className:ve.CSS(ve.CSS.B("input-time"),s),type:"time",step:"1",onChange:m,...l,children:[o&&Ce.jsxRuntimeExports.jsx(sc,{direction:i,value:Number(f.valueOf()),onChange:m,dragScale:Cie}),u]})},Sie=Object.freeze(Object.defineProperty({__proto__:null,Checkbox:PN,Date:$N,DateTime:uie,DragButton:sc,HelpText:Jm,Item:YD,Label:KD,Numeric:rh,Switch:ZD,Text:Ba.Text,Time:Eie,combineDateAndTimeValue:Aie,useDate:Ib,useTime:QD},Symbol.toStringTag,{value:"Module"}));exports.Bar=$a;exports.Item=YD;exports.Numeric=rh;exports.Switch=ZD;exports.TimeStamp=kb;exports.external=Sie;exports.preventDefault=_b;exports.stopPropagation=kN;
|