@applica-software-guru/persona-sdk 0.1.86 → 0.1.87
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/bundle.cjs.js +14 -14
- package/dist/bundle.cjs.js.map +1 -1
- package/dist/bundle.es.js +1319 -1317
- package/dist/bundle.es.js.map +1 -1
- package/dist/bundle.iife.js +14 -14
- package/dist/bundle.iife.js.map +1 -1
- package/dist/bundle.umd.js +15 -15
- package/dist/bundle.umd.js.map +1 -1
- package/dist/runtime/threads.d.ts +1 -2
- package/dist/runtime/threads.d.ts.map +1 -1
- package/dist/runtime.d.ts.map +1 -1
- package/dist/storage/base.d.ts +3 -13
- package/dist/storage/base.d.ts.map +1 -1
- package/dist/storage/persona.d.ts +4 -5
- package/dist/storage/persona.d.ts.map +1 -1
- package/package.json +1 -1
- package/playground/src/chat.tsx +2 -0
- package/playground/src/components/assistant-ui/thread-list.tsx +7 -11
- package/src/runtime/threads.ts +13 -28
- package/src/runtime.tsx +0 -1
- package/src/storage/base.ts +5 -13
- package/src/storage/persona.ts +20 -14
package/dist/bundle.iife.js
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
var personaSDK=function(X,Gn,G,Ee){"use strict";var u_=Object.defineProperty;var s_=(X,Gn,G)=>Gn in X?u_(X,Gn,{enumerable:!0,configurable:!0,writable:!0,value:G}):X[Gn]=G;var D=(X,Gn,G)=>s_(X,typeof Gn!="symbol"?Gn+"":Gn,G);let No=0;function Uo(){return`msg_${Date.now()}_${No++}`}function Bo(d){return d.thought&&(d={...d,type:"reasoning"}),d.id?d.createdAt?d:{...d,createdAt:new Date}:{...d,id:Uo(),createdAt:d.createdAt||new Date}}function Mo(d){return d.filter(f=>f.finishReason==="stop"?f.text!==null&&f.text.trim()!=="":!0)}function $t(d){const f=[];let i=null;for(let _ of d)if(_=Bo(_),_.type!=="transaction")if(_.file){i&&(f.push(i),i=null),f.push(_);continue}else _.functionCalls?(i&&f.push(i),f.push(_),i=null):_.functionResponse?f[f.length-1]={...f[f.length-1],functionResponse:_.functionResponse}:i&&_.type===i.type&&_.protocol===i.protocol&&i.role===_.role&&(_.id===i.id||!i.finishReason)?(i.text+=_.text,i.file=i.file||_.file,i.finishReason=_.finishReason||i.finishReason,i.id=i.id||_.id):(i&&f.push(i),i={..._,text:_.file?"":_.text,finishReason:_.file?void 0:_.finishReason});return i&&f.push(i),Mo(f)}function $o(d){var _,v,S;const f=d.file?[{type:"file",data:d.file.url,mimeType:d.file.contentType}]:[];let i;if((d.role==="assistant"||d.role==="function")&&(d.status?i=d.status:d.finishReason==="stop"?i={type:"complete",reason:"stop"}:d.finishReason==="function_call"?i={type:"complete",reason:"stop"}:d.finishReason||(i=void 0)),d.role==="function"){const E={id:d.id,role:"assistant",createdAt:d.createdAt,content:((_=d.functionCalls)==null?void 0:_.map(C=>{var M;return{type:"tool-call",toolName:C.name,toolCallId:C.id||`tool_${Date.now()}`,args:C.args,result:(M=d.functionResponse)==null?void 0:M.result}}))??[],metadata:{...d.metadata,custom:{protocol:d.protocol,sessionId:d.sessionId,sources:d.sources,...(v=d.metadata)==null?void 0:v.custom}}};return i?{...E,status:i}:E}const p={id:d.id,role:d.role,createdAt:d.createdAt,content:d.type==="reasoning"?[{type:"reasoning",text:d.text},...f]:[{type:"text",text:d.text},...f],metadata:{...d.metadata,custom:{protocol:d.protocol,sessionId:d.sessionId,sources:d.sources,type:d.type,...(S=d.metadata)==null?void 0:S.custom}}};return d.role==="assistant"&&i?{...p,status:i}:p}class ue{constructor(){D(this,"statusChangeCallbacks",[]);D(this,"messageCallbacks",[])}addStatusChangeListener(f){this.statusChangeCallbacks.push(f)}addPacketListener(f){this.messageCallbacks.push(f)}async syncSession(f){this.session=f}async notifyPacket(f){this.messageCallbacks.forEach(i=>i(f))}async notifyPackets(f){f.forEach(i=>{this.messageCallbacks.forEach(p=>p(i))})}async setSession(f){this.session=f}async setStatus(f){const i=this.status!==f;this.status=f,i&&this.statusChangeCallbacks.forEach(p=>p(f))}clearListeners(){this.statusChangeCallbacks=[],this.messageCallbacks=[]}onTransaction(f){}}class Pr extends ue{constructor(i){super();D(this,"status");D(this,"autostart");D(this,"session");D(this,"config");D(this,"notify",!0);D(this,"context",{});D(this,"tools",[]);this.config=i,this.status="disconnected",this.autostart=!0}getName(){return"rest"}getPriority(){return 100}async connect(i){return this.setStatus("connected"),i}async disconnect(){this.setStatus("disconnected"),this.session=null}async syncSession(i){this.session=i}async sendPacket(i){var C,M,R,P,T;const{apiUrl:p,apiKey:_,agentId:v}=this.config,S=this.session??"new";if(i.type==="command"&&((C=i==null?void 0:i.payload)==null?void 0:C.command)=="set_initial_context"){this.context=(M=i==null?void 0:i.payload)==null?void 0:M.arguments;return}else if(i.type==="command"&&((R=i==null?void 0:i.payload)==null?void 0:R.command)=="set_local_tools"){const F=(P=i==null?void 0:i.payload)==null?void 0:P.arguments.tools;(F==null?void 0:F.length)>0&&this.notifyPacket({type:"message",payload:{type:"text",role:"assistant",text:"Local tools with rest protocol are not supported."}});return}const E=i.payload;try{const Z=await(await fetch(`${p}/sessions/${S}/messages`,{body:JSON.stringify({agentId:v,userMessage:E,initialContext:this.context,tools:this.tools}),method:"POST",headers:{"Content-Type":"application/json","x-persona-apikey":_}})).json();this.notifyPackets(Z.response.messages.map(k=>({type:"message",payload:k})))}catch(F){this.notifyPacket({type:"message",payload:{role:"assistant",type:"text",text:"An error occurred while processing your request. Please try again later."}}),(T=this.config.logger)==null||T.error("Error sending packet:",F)}}}class Ir extends ue{constructor(i){super();D(this,"status");D(this,"autostart");D(this,"session");D(this,"config");D(this,"webSocket");this.config=i,this.status="disconnected",this.autostart=!0,this.session=null,this.webSocket=null}getName(){return"websocket"}getPriority(){return 500}async syncSession(i){var p;(p=this.config.logger)==null||p.debug("Syncing session with WebSocket protocol:",i),this.session=i,this.webSocket&&this.status==="connected"&&(this.disconnect(),this.connect(i))}connect(i){var C;if(this.webSocket!==null&&this.status==="connected")return Promise.resolve(this.session);const p=i||this.session||"new";(C=this.config.logger)==null||C.debug("Connecting to WebSocket with sessionId:",p);const _=encodeURIComponent(this.config.apiKey),v=this.config.agentId,S=this.config.userId||"anonymous",E=`${this.config.webSocketUrl}?sessionCode=${p}&agentId=${v}&apiKey=${_}&userId=${encodeURIComponent(S)}`;return this.setStatus("connecting"),this.webSocket=new WebSocket(E),this.webSocket.addEventListener("open",()=>{this.setStatus("connected")}),this.webSocket.addEventListener("message",M=>{const R=JSON.parse(M.data);this.notifyPacket(R)}),this.webSocket.addEventListener("close",M=>{var R;this.setStatus("disconnected"),this.webSocket=null,M.code!==1e3&&(this.notifyPacket({type:"message",payload:{role:"assistant",type:"text",text:"Oops! The connection to the server was lost. Please try again later."}}),(R=this.config.logger)==null||R.warn("WebSocket connection closed"))}),this.webSocket.addEventListener("error",()=>{var M;this.setStatus("disconnected"),this.webSocket=null,(M=this.config.logger)==null||M.error("WebSocket connection error")}),Promise.resolve(p)}disconnect(){var i;return(i=this.config.logger)==null||i.debug("Disconnecting WebSocket"),this.webSocket&&this.status==="connected"&&(this.webSocket.close(1e3,"Normal closure"),this.setStatus("disconnected"),this.webSocket=null),Promise.resolve()}sendPacket(i){return this.webSocket&&this.status==="connected"?(this.webSocket.send(JSON.stringify(i)),Promise.resolve()):Promise.reject(new Error("WebSocket is not connected"))}}class Ko{constructor(f){D(this,"config");D(this,"pc",null);D(this,"ws",null);D(this,"localStream",null);D(this,"remoteStream",new MediaStream);D(this,"audioCtx",null);D(this,"localAnalyser",null);D(this,"remoteAnalyser",null);D(this,"analyzerFrame",null);D(this,"dataChannel",null);D(this,"isConnected",!1);D(this,"visualizerCallbacks",[]);D(this,"messageCallbacks",[]);D(this,"errorCallbacks",[]);D(this,"queuedMessages",[]);this.config=f}async connect(f){var p;if(this.isConnected)return;this.isConnected=!0;try{this.localStream=await navigator.mediaDevices.getUserMedia({audio:!0})}catch(_){(p=this.config.logger)==null||p.error("Error accessing microphone:",_);return}this.pc=new RTCPeerConnection({iceServers:this.config.iceServers||[{urls:"stun:34.38.108.251:3478"},{urls:"turn:34.38.108.251:3478",username:"webrtc",credential:"webrtc"}]}),this.localStream.getTracks().forEach(_=>{this.pc.addTrack(_,this.localStream)}),this.pc.ontrack=_=>{_.streams[0].getTracks().forEach(S=>{this.remoteStream.addTrack(S)}),this.audioCtx||this._startAnalyzers();const v=new Audio;v.srcObject=this.remoteStream,v.play().catch(S=>{var E;(E=this.config.logger)==null||E.error("Error playing remote audio:",S)})},this.pc.onicecandidate=_=>{var v;_.candidate&&((v=this.ws)==null?void 0:v.readyState)===WebSocket.OPEN&&this.ws.send(JSON.stringify({type:"CANDIDATE",src:"client",payload:{candidate:_.candidate}}))},this.pc.ondatachannel=_=>{const v=_.channel;v.onmessage=S=>{this.messageCallbacks.forEach(E=>{E(S)})},v.onopen=()=>{var S;for(;this.queuedMessages.length>0;){const E=this.queuedMessages.shift();E&&(v.send(JSON.stringify(E)),(S=this.config.logger)==null||S.info("Sent queued message:",E))}}};const i=this.config.webrtcUrl||"wss://persona.applica.guru/api/webrtc";this.ws=new WebSocket(`${i}?apiKey=${encodeURIComponent(this.config.apiKey)}`),this.ws.onopen=async()=>{var E,C;const _=await this.pc.createOffer();await this.pc.setLocalDescription(_);const v={apiKey:this.config.apiKey,agentId:this.config.agentId,userId:this.config.userId||"anonymous",sessionCode:f};(E=this.config.logger)==null||E.debug("Opening connection to WebRTC server: ",v);const S={type:"OFFER",src:((C=crypto.randomUUID)==null?void 0:C.call(crypto))||"client_"+Date.now(),payload:{sdp:{sdp:_.sdp,type:_.type},connectionId:(Date.now()%1e6).toString(),metadata:v}};this.ws.send(JSON.stringify(S))},this.ws.onmessage=async _=>{var S;const v=JSON.parse(_.data);if(v.type==="ANSWER")await this.pc.setRemoteDescription(new RTCSessionDescription(v.payload.sdp));else if(v.type==="CANDIDATE")try{await this.pc.addIceCandidate(new RTCIceCandidate(v.payload.candidate))}catch(E){(S=this.config.logger)==null||S.error("Error adding ICE candidate:",E)}},this.ws.onclose=_=>{_.code!==1e3&&this.errorCallbacks.forEach(v=>{v("Oops! The connection to the server was lost. Please try again later.")}),this._stopAnalyzers()}}async disconnect(){var f;this.isConnected&&(this.isConnected=!1,((f=this.ws)==null?void 0:f.readyState)===WebSocket.OPEN&&this.ws.close(),this.pc&&this.pc.close(),this.localStream&&this.localStream.getTracks().forEach(i=>i.stop()),this.remoteStream=new MediaStream,this.audioCtx&&(await this.audioCtx.close(),this.audioCtx=null),this._stopAnalyzers())}addVisualizerCallback(f){this.visualizerCallbacks.push(f)}addMessageCallback(f){this.messageCallbacks.push(f)}addErrorCallback(f){this.errorCallbacks.push(f)}createDataChannel(f="messages"){this.pc&&(this.dataChannel=this.pc.createDataChannel(f),this.dataChannel.onopen=()=>{var i,p;for((i=this.config.logger)==null||i.info("Data channel opened");this.queuedMessages.length>0;){const _=this.queuedMessages.shift();_&&(this.dataChannel.send(JSON.stringify(_)),(p=this.config.logger)==null||p.info("Sent queued message:",_))}},this.dataChannel.onmessage=i=>{this.messageCallbacks.forEach(p=>{p(i)})})}sendPacket(f){var i;if(!this.dataChannel||this.dataChannel.readyState!=="open"){this.queuedMessages.push(f);return}this.dataChannel.send(JSON.stringify(f)),(i=this.config.logger)==null||i.info("Sent message:",f)}_startAnalyzers(){if(!this.localStream||!this.remoteStream||this.visualizerCallbacks.length===0)return;this.audioCtx=new(window.AudioContext||window.webkitAudioContext);const f=this.audioCtx.createMediaStreamSource(this.localStream),i=this.audioCtx.createMediaStreamSource(this.remoteStream);this.localAnalyser=this.audioCtx.createAnalyser(),this.remoteAnalyser=this.audioCtx.createAnalyser(),this.localAnalyser.fftSize=256,this.remoteAnalyser.fftSize=256,f.connect(this.localAnalyser),i.connect(this.remoteAnalyser);const p=()=>{if(!this.localAnalyser||!this.remoteAnalyser||this.visualizerCallbacks.length===0)return;const _=new Uint8Array(this.localAnalyser.frequencyBinCount),v=new Uint8Array(this.remoteAnalyser.frequencyBinCount);this.localAnalyser.getByteFrequencyData(_),this.remoteAnalyser.getByteFrequencyData(v);const S=_.reduce((C,M)=>C+M,0)/_.length,E=v.reduce((C,M)=>C+M,0)/v.length;this.visualizerCallbacks.length>0&&this.visualizerCallbacks.forEach(C=>{C({localAmplitude:S,remoteAmplitude:E})}),this.analyzerFrame=requestAnimationFrame(p)};this.analyzerFrame=requestAnimationFrame(p)}_stopAnalyzers(){this.analyzerFrame&&(cancelAnimationFrame(this.analyzerFrame),this.analyzerFrame=null),this.localAnalyser=null,this.remoteAnalyser=null}}class Rr extends ue{constructor(i){super();D(this,"status");D(this,"session");D(this,"autostart");D(this,"config");D(this,"webRTCClient");this.config=i,this.status="disconnected",this.session=null,this.autostart=(i==null?void 0:i.autostart)??!1,this.webRTCClient=new Ko(i),this.webRTCClient.addMessageCallback(p=>{const _=JSON.parse(p.data);this.notifyPacket(_)}),this.webRTCClient.addErrorCallback(p=>{var _;(_=this.config.logger)==null||_.error("WebRTC error:",p),this.notifyPacket({type:"message",payload:{type:"text",role:"assistant",text:p}})})}getName(){return"webrtc"}getPriority(){return 1e3}async syncSession(i){super.syncSession(i),this.status==="connected"&&(await this.disconnect(),await this.connect(i))}async connect(i){var p;return this.status==="connected"?Promise.resolve(this.session):(this.session=i||this.session||"new",this.setStatus("connecting"),(p=this.config.logger)==null||p.debug("Connecting to WebRTC with sessionId:",this.session),await this.webRTCClient.connect(this.session),this.setStatus("connected"),await this.webRTCClient.createDataChannel(),this.session)}async disconnect(){var i,p,_;if(this.status==="disconnected")return(i=this.config.logger)==null||i.warn("Already disconnected"),Promise.resolve();await this.webRTCClient.disconnect(),this.setStatus("disconnected"),(_=(p=this.config)==null?void 0:p.logger)==null||_.debug("Disconnected from WebRTC")}sendPacket(i){return this.status!=="connected"?Promise.reject(new Error("Not connected")):(this.webRTCClient.sendPacket(i),Promise.resolve())}}var se=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function ko(d){return d&&d.__esModule&&Object.prototype.hasOwnProperty.call(d,"default")?d.default:d}var Te={exports:{}};/**
|
|
1
|
+
var personaSDK=function(X,Gn,z,Ee){"use strict";var s_=Object.defineProperty;var o_=(X,Gn,z)=>Gn in X?s_(X,Gn,{enumerable:!0,configurable:!0,writable:!0,value:z}):X[Gn]=z;var W=(X,Gn,z)=>o_(X,typeof Gn!="symbol"?Gn+"":Gn,z);let Uo=0;function Bo(){return`msg_${Date.now()}_${Uo++}`}function Mo(d){return d.thought&&(d={...d,type:"reasoning"}),d.id?d.createdAt?d:{...d,createdAt:new Date}:{...d,id:Bo(),createdAt:d.createdAt||new Date}}function $o(d){return d.filter(f=>f.finishReason==="stop"?f.text!==null&&f.text.trim()!=="":!0)}function $t(d){const f=[];let i=null;for(let _ of d)if(_=Mo(_),_.type!=="transaction")if(_.file){i&&(f.push(i),i=null),f.push(_);continue}else _.functionCalls?(i&&f.push(i),f.push(_),i=null):_.functionResponse?f[f.length-1]={...f[f.length-1],functionResponse:_.functionResponse}:i&&_.type===i.type&&_.protocol===i.protocol&&i.role===_.role&&(_.id===i.id||!i.finishReason)?(i.text+=_.text,i.file=i.file||_.file,i.finishReason=_.finishReason||i.finishReason,i.id=i.id||_.id):(i&&f.push(i),i={..._,text:_.file?"":_.text,finishReason:_.file?void 0:_.finishReason});return i&&f.push(i),$o(f)}function Ko(d){var _,v,x;const f=d.file?[{type:"file",data:d.file.url,mimeType:d.file.contentType}]:[];let i;if((d.role==="assistant"||d.role==="function")&&(d.status?i=d.status:d.finishReason==="stop"?i={type:"complete",reason:"stop"}:d.finishReason==="function_call"?i={type:"complete",reason:"stop"}:d.finishReason||(i=void 0)),d.role==="function"){const T={id:d.id,role:"assistant",createdAt:d.createdAt,content:((_=d.functionCalls)==null?void 0:_.map(b=>{var B;return{type:"tool-call",toolName:b.name,toolCallId:b.id||`tool_${Date.now()}`,args:b.args,result:(B=d.functionResponse)==null?void 0:B.result}}))??[],metadata:{...d.metadata,custom:{protocol:d.protocol,sessionId:d.sessionId,sources:d.sources,...(v=d.metadata)==null?void 0:v.custom}}};return i?{...T,status:i}:T}const p={id:d.id,role:d.role,createdAt:d.createdAt,content:d.type==="reasoning"?[{type:"reasoning",text:d.text},...f]:[{type:"text",text:d.text},...f],metadata:{...d.metadata,custom:{protocol:d.protocol,sessionId:d.sessionId,sources:d.sources,type:d.type,...(x=d.metadata)==null?void 0:x.custom}}};return d.role==="assistant"&&i?{...p,status:i}:p}class ue{constructor(){W(this,"statusChangeCallbacks",[]);W(this,"messageCallbacks",[])}addStatusChangeListener(f){this.statusChangeCallbacks.push(f)}addPacketListener(f){this.messageCallbacks.push(f)}async syncSession(f){this.session=f}async notifyPacket(f){this.messageCallbacks.forEach(i=>i(f))}async notifyPackets(f){f.forEach(i=>{this.messageCallbacks.forEach(p=>p(i))})}async setSession(f){this.session=f}async setStatus(f){const i=this.status!==f;this.status=f,i&&this.statusChangeCallbacks.forEach(p=>p(f))}clearListeners(){this.statusChangeCallbacks=[],this.messageCallbacks=[]}onTransaction(f){}}class Ir extends ue{constructor(i){super();W(this,"status");W(this,"autostart");W(this,"session");W(this,"config");W(this,"notify",!0);W(this,"context",{});W(this,"tools",[]);this.config=i,this.status="disconnected",this.autostart=!0}getName(){return"rest"}getPriority(){return 100}async connect(i){return this.setStatus("connected"),i}async disconnect(){this.setStatus("disconnected"),this.session=null}async syncSession(i){this.session=i}async sendPacket(i){var b,B,C,q,P;const{apiUrl:p,apiKey:_,agentId:v}=this.config,x=this.session??"new";if(i.type==="command"&&((b=i==null?void 0:i.payload)==null?void 0:b.command)=="set_initial_context"){this.context=(B=i==null?void 0:i.payload)==null?void 0:B.arguments;return}else if(i.type==="command"&&((C=i==null?void 0:i.payload)==null?void 0:C.command)=="set_local_tools"){const J=(q=i==null?void 0:i.payload)==null?void 0:q.arguments.tools;(J==null?void 0:J.length)>0&&this.notifyPacket({type:"message",payload:{type:"text",role:"assistant",text:"Local tools with rest protocol are not supported."}});return}const T=i.payload;try{const Z=await(await fetch(`${p}/sessions/${x}/messages`,{body:JSON.stringify({agentId:v,userMessage:T,initialContext:this.context,tools:this.tools}),method:"POST",headers:{"Content-Type":"application/json","x-persona-apikey":_}})).json();this.notifyPackets(Z.response.messages.map($=>({type:"message",payload:$})))}catch(J){this.notifyPacket({type:"message",payload:{role:"assistant",type:"text",text:"An error occurred while processing your request. Please try again later."}}),(P=this.config.logger)==null||P.error("Error sending packet:",J)}}}class Rr extends ue{constructor(i){super();W(this,"status");W(this,"autostart");W(this,"session");W(this,"config");W(this,"webSocket");this.config=i,this.status="disconnected",this.autostart=!0,this.session=null,this.webSocket=null}getName(){return"websocket"}getPriority(){return 500}async syncSession(i){var p;(p=this.config.logger)==null||p.debug("Syncing session with WebSocket protocol:",i),this.session=i,this.webSocket&&this.status==="connected"&&(this.disconnect(),this.connect(i))}connect(i){var b;if(this.webSocket!==null&&this.status==="connected")return Promise.resolve(this.session);const p=i||this.session||"new";(b=this.config.logger)==null||b.debug("Connecting to WebSocket with sessionId:",p);const _=encodeURIComponent(this.config.apiKey),v=this.config.agentId,x=this.config.userId||"anonymous",T=`${this.config.webSocketUrl}?sessionCode=${p}&agentId=${v}&apiKey=${_}&userId=${encodeURIComponent(x)}`;return this.setStatus("connecting"),this.webSocket=new WebSocket(T),this.webSocket.addEventListener("open",()=>{this.setStatus("connected")}),this.webSocket.addEventListener("message",B=>{const C=JSON.parse(B.data);this.notifyPacket(C)}),this.webSocket.addEventListener("close",B=>{var C;this.setStatus("disconnected"),this.webSocket=null,B.code!==1e3&&(this.notifyPacket({type:"message",payload:{role:"assistant",type:"text",text:"Oops! The connection to the server was lost. Please try again later."}}),(C=this.config.logger)==null||C.warn("WebSocket connection closed"))}),this.webSocket.addEventListener("error",()=>{var B;this.setStatus("disconnected"),this.webSocket=null,(B=this.config.logger)==null||B.error("WebSocket connection error")}),Promise.resolve(p)}disconnect(){var i;return(i=this.config.logger)==null||i.debug("Disconnecting WebSocket"),this.webSocket&&this.status==="connected"&&(this.webSocket.close(1e3,"Normal closure"),this.setStatus("disconnected"),this.webSocket=null),Promise.resolve()}sendPacket(i){return this.webSocket&&this.status==="connected"?(this.webSocket.send(JSON.stringify(i)),Promise.resolve()):Promise.reject(new Error("WebSocket is not connected"))}}class ko{constructor(f){W(this,"config");W(this,"pc",null);W(this,"ws",null);W(this,"localStream",null);W(this,"remoteStream",new MediaStream);W(this,"audioCtx",null);W(this,"localAnalyser",null);W(this,"remoteAnalyser",null);W(this,"analyzerFrame",null);W(this,"dataChannel",null);W(this,"isConnected",!1);W(this,"visualizerCallbacks",[]);W(this,"messageCallbacks",[]);W(this,"errorCallbacks",[]);W(this,"queuedMessages",[]);this.config=f}async connect(f){var p;if(this.isConnected)return;this.isConnected=!0;try{this.localStream=await navigator.mediaDevices.getUserMedia({audio:!0})}catch(_){(p=this.config.logger)==null||p.error("Error accessing microphone:",_);return}this.pc=new RTCPeerConnection({iceServers:this.config.iceServers||[{urls:"stun:34.38.108.251:3478"},{urls:"turn:34.38.108.251:3478",username:"webrtc",credential:"webrtc"}]}),this.localStream.getTracks().forEach(_=>{this.pc.addTrack(_,this.localStream)}),this.pc.ontrack=_=>{_.streams[0].getTracks().forEach(x=>{this.remoteStream.addTrack(x)}),this.audioCtx||this._startAnalyzers();const v=new Audio;v.srcObject=this.remoteStream,v.play().catch(x=>{var T;(T=this.config.logger)==null||T.error("Error playing remote audio:",x)})},this.pc.onicecandidate=_=>{var v;_.candidate&&((v=this.ws)==null?void 0:v.readyState)===WebSocket.OPEN&&this.ws.send(JSON.stringify({type:"CANDIDATE",src:"client",payload:{candidate:_.candidate}}))},this.pc.ondatachannel=_=>{const v=_.channel;v.onmessage=x=>{this.messageCallbacks.forEach(T=>{T(x)})},v.onopen=()=>{var x;for(;this.queuedMessages.length>0;){const T=this.queuedMessages.shift();T&&(v.send(JSON.stringify(T)),(x=this.config.logger)==null||x.info("Sent queued message:",T))}}};const i=this.config.webrtcUrl||"wss://persona.applica.guru/api/webrtc";this.ws=new WebSocket(`${i}?apiKey=${encodeURIComponent(this.config.apiKey)}`),this.ws.onopen=async()=>{var T,b;const _=await this.pc.createOffer();await this.pc.setLocalDescription(_);const v={apiKey:this.config.apiKey,agentId:this.config.agentId,userId:this.config.userId||"anonymous",sessionCode:f};(T=this.config.logger)==null||T.debug("Opening connection to WebRTC server: ",v);const x={type:"OFFER",src:((b=crypto.randomUUID)==null?void 0:b.call(crypto))||"client_"+Date.now(),payload:{sdp:{sdp:_.sdp,type:_.type},connectionId:(Date.now()%1e6).toString(),metadata:v}};this.ws.send(JSON.stringify(x))},this.ws.onmessage=async _=>{var x;const v=JSON.parse(_.data);if(v.type==="ANSWER")await this.pc.setRemoteDescription(new RTCSessionDescription(v.payload.sdp));else if(v.type==="CANDIDATE")try{await this.pc.addIceCandidate(new RTCIceCandidate(v.payload.candidate))}catch(T){(x=this.config.logger)==null||x.error("Error adding ICE candidate:",T)}},this.ws.onclose=_=>{_.code!==1e3&&this.errorCallbacks.forEach(v=>{v("Oops! The connection to the server was lost. Please try again later.")}),this._stopAnalyzers()}}async disconnect(){var f;this.isConnected&&(this.isConnected=!1,((f=this.ws)==null?void 0:f.readyState)===WebSocket.OPEN&&this.ws.close(),this.pc&&this.pc.close(),this.localStream&&this.localStream.getTracks().forEach(i=>i.stop()),this.remoteStream=new MediaStream,this.audioCtx&&(await this.audioCtx.close(),this.audioCtx=null),this._stopAnalyzers())}addVisualizerCallback(f){this.visualizerCallbacks.push(f)}addMessageCallback(f){this.messageCallbacks.push(f)}addErrorCallback(f){this.errorCallbacks.push(f)}createDataChannel(f="messages"){this.pc&&(this.dataChannel=this.pc.createDataChannel(f),this.dataChannel.onopen=()=>{var i,p;for((i=this.config.logger)==null||i.info("Data channel opened");this.queuedMessages.length>0;){const _=this.queuedMessages.shift();_&&(this.dataChannel.send(JSON.stringify(_)),(p=this.config.logger)==null||p.info("Sent queued message:",_))}},this.dataChannel.onmessage=i=>{this.messageCallbacks.forEach(p=>{p(i)})})}sendPacket(f){var i;if(!this.dataChannel||this.dataChannel.readyState!=="open"){this.queuedMessages.push(f);return}this.dataChannel.send(JSON.stringify(f)),(i=this.config.logger)==null||i.info("Sent message:",f)}_startAnalyzers(){if(!this.localStream||!this.remoteStream||this.visualizerCallbacks.length===0)return;this.audioCtx=new(window.AudioContext||window.webkitAudioContext);const f=this.audioCtx.createMediaStreamSource(this.localStream),i=this.audioCtx.createMediaStreamSource(this.remoteStream);this.localAnalyser=this.audioCtx.createAnalyser(),this.remoteAnalyser=this.audioCtx.createAnalyser(),this.localAnalyser.fftSize=256,this.remoteAnalyser.fftSize=256,f.connect(this.localAnalyser),i.connect(this.remoteAnalyser);const p=()=>{if(!this.localAnalyser||!this.remoteAnalyser||this.visualizerCallbacks.length===0)return;const _=new Uint8Array(this.localAnalyser.frequencyBinCount),v=new Uint8Array(this.remoteAnalyser.frequencyBinCount);this.localAnalyser.getByteFrequencyData(_),this.remoteAnalyser.getByteFrequencyData(v);const x=_.reduce((b,B)=>b+B,0)/_.length,T=v.reduce((b,B)=>b+B,0)/v.length;this.visualizerCallbacks.length>0&&this.visualizerCallbacks.forEach(b=>{b({localAmplitude:x,remoteAmplitude:T})}),this.analyzerFrame=requestAnimationFrame(p)};this.analyzerFrame=requestAnimationFrame(p)}_stopAnalyzers(){this.analyzerFrame&&(cancelAnimationFrame(this.analyzerFrame),this.analyzerFrame=null),this.localAnalyser=null,this.remoteAnalyser=null}}class Pr extends ue{constructor(i){super();W(this,"status");W(this,"session");W(this,"autostart");W(this,"config");W(this,"webRTCClient");this.config=i,this.status="disconnected",this.session=null,this.autostart=(i==null?void 0:i.autostart)??!1,this.webRTCClient=new ko(i),this.webRTCClient.addMessageCallback(p=>{const _=JSON.parse(p.data);this.notifyPacket(_)}),this.webRTCClient.addErrorCallback(p=>{var _;(_=this.config.logger)==null||_.error("WebRTC error:",p),this.notifyPacket({type:"message",payload:{type:"text",role:"assistant",text:p}})})}getName(){return"webrtc"}getPriority(){return 1e3}async syncSession(i){super.syncSession(i),this.status==="connected"&&(await this.disconnect(),await this.connect(i))}async connect(i){var p;return this.status==="connected"?Promise.resolve(this.session):(this.session=i||this.session||"new",this.setStatus("connecting"),(p=this.config.logger)==null||p.debug("Connecting to WebRTC with sessionId:",this.session),await this.webRTCClient.connect(this.session),this.setStatus("connected"),await this.webRTCClient.createDataChannel(),this.session)}async disconnect(){var i,p,_;if(this.status==="disconnected")return(i=this.config.logger)==null||i.warn("Already disconnected"),Promise.resolve();await this.webRTCClient.disconnect(),this.setStatus("disconnected"),(_=(p=this.config)==null?void 0:p.logger)==null||_.debug("Disconnected from WebRTC")}sendPacket(i){return this.status!=="connected"?Promise.reject(new Error("Not connected")):(this.webRTCClient.sendPacket(i),Promise.resolve())}}var se=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function qo(d){return d&&d.__esModule&&Object.prototype.hasOwnProperty.call(d,"default")?d.default:d}var Te={exports:{}};/**
|
|
2
2
|
* @license
|
|
3
3
|
* Lodash <https://lodash.com/>
|
|
4
4
|
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
|
|
5
5
|
* Released under MIT license <https://lodash.com/license>
|
|
6
6
|
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
|
|
7
7
|
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
|
8
|
-
*/Te.exports,function(d,f){(function(){var i,p="4.17.21",_=200,v="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",S="Expected a function",E="Invalid `variable` option passed into `_.template`",C="__lodash_hash_undefined__",M=500,R="__lodash_placeholder__",P=1,T=2,F=4,Z=1,k=2,wn=1,Rn=2,tt=4,an=8,Et=16,Jn=32,vt=64,An=128,Nn=256,Kt=512,Oe=30,En="...",We=800,kt=16,ae=1,ln=2,Er=3,st=1/0,et=9007199254740991,Tr=17976931348623157e292,qt=NaN,Un=4294967295,De=Un-1,Lr=Un>>>1,V=[["ary",An],["bind",wn],["bindKey",Rn],["curry",an],["curryRight",Et],["flip",Kt],["partial",Jn],["partialRight",vt],["rearg",Nn]],hn="[object Arguments]",Zn="[object Array]",Tt="[object AsyncFunction]",wt="[object Boolean]",yn="[object Date]",ma="[object DOMException]",Fe="[object Error]",Ne="[object Function]",iu="[object GeneratorFunction]",Yn="[object Map]",fe="[object Number]",xa="[object Null]",ot="[object Object]",uu="[object Promise]",Sa="[object Proxy]",ce="[object RegExp]",Xn="[object Set]",le="[object String]",Ue="[object Symbol]",Aa="[object Undefined]",he="[object WeakMap]",ba="[object WeakSet]",de="[object ArrayBuffer]",zt="[object DataView]",Or="[object Float32Array]",Wr="[object Float64Array]",Dr="[object Int8Array]",Fr="[object Int16Array]",Nr="[object Int32Array]",Ur="[object Uint8Array]",Br="[object Uint8ClampedArray]",Mr="[object Uint16Array]",$r="[object Uint32Array]",Ca=/\b__p \+= '';/g,Pa=/\b(__p \+=) '' \+/g,Ia=/(__e\(.*?\)|\b__t\)) \+\n'';/g,su=/&(?:amp|lt|gt|quot|#39);/g,ou=/[&<>"']/g,Ra=RegExp(su.source),Ea=RegExp(ou.source),Ta=/<%-([\s\S]+?)%>/g,La=/<%([\s\S]+?)%>/g,au=/<%=([\s\S]+?)%>/g,Oa=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Wa=/^\w*$/,Da=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Kr=/[\\^$.*+?()[\]{}|]/g,Fa=RegExp(Kr.source),kr=/^\s+/,Na=/\s/,Ua=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ba=/\{\n\/\* \[wrapped with (.+)\] \*/,Ma=/,? & /,$a=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Ka=/[()=,{}\[\]\/\s]/,ka=/\\(\\)?/g,qa=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,fu=/\w*$/,za=/^[-+]0x[0-9a-f]+$/i,Ha=/^0b[01]+$/i,Ga=/^\[object .+?Constructor\]$/,Ja=/^0o[0-7]+$/i,Za=/^(?:0|[1-9]\d*)$/,Ya=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Be=/($^)/,Xa=/['\n\r\u2028\u2029\\]/g,Me="\\ud800-\\udfff",Qa="\\u0300-\\u036f",Va="\\ufe20-\\ufe2f",ja="\\u20d0-\\u20ff",cu=Qa+Va+ja,lu="\\u2700-\\u27bf",hu="a-z\\xdf-\\xf6\\xf8-\\xff",nf="\\xac\\xb1\\xd7\\xf7",tf="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",ef="\\u2000-\\u206f",rf=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",du="A-Z\\xc0-\\xd6\\xd8-\\xde",pu="\\ufe0e\\ufe0f",gu=nf+tf+ef+rf,qr="['’]",uf="["+Me+"]",_u="["+gu+"]",$e="["+cu+"]",vu="\\d+",sf="["+lu+"]",wu="["+hu+"]",yu="[^"+Me+gu+vu+lu+hu+du+"]",zr="\\ud83c[\\udffb-\\udfff]",of="(?:"+$e+"|"+zr+")",mu="[^"+Me+"]",Hr="(?:\\ud83c[\\udde6-\\uddff]){2}",Gr="[\\ud800-\\udbff][\\udc00-\\udfff]",Ht="["+du+"]",xu="\\u200d",Su="(?:"+wu+"|"+yu+")",af="(?:"+Ht+"|"+yu+")",Au="(?:"+qr+"(?:d|ll|m|re|s|t|ve))?",bu="(?:"+qr+"(?:D|LL|M|RE|S|T|VE))?",Cu=of+"?",Pu="["+pu+"]?",ff="(?:"+xu+"(?:"+[mu,Hr,Gr].join("|")+")"+Pu+Cu+")*",cf="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",lf="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Iu=Pu+Cu+ff,hf="(?:"+[sf,Hr,Gr].join("|")+")"+Iu,df="(?:"+[mu+$e+"?",$e,Hr,Gr,uf].join("|")+")",pf=RegExp(qr,"g"),gf=RegExp($e,"g"),Jr=RegExp(zr+"(?="+zr+")|"+df+Iu,"g"),_f=RegExp([Ht+"?"+wu+"+"+Au+"(?="+[_u,Ht,"$"].join("|")+")",af+"+"+bu+"(?="+[_u,Ht+Su,"$"].join("|")+")",Ht+"?"+Su+"+"+Au,Ht+"+"+bu,lf,cf,vu,hf].join("|"),"g"),vf=RegExp("["+xu+Me+cu+pu+"]"),wf=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,yf=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],mf=-1,tn={};tn[Or]=tn[Wr]=tn[Dr]=tn[Fr]=tn[Nr]=tn[Ur]=tn[Br]=tn[Mr]=tn[$r]=!0,tn[hn]=tn[Zn]=tn[de]=tn[wt]=tn[zt]=tn[yn]=tn[Fe]=tn[Ne]=tn[Yn]=tn[fe]=tn[ot]=tn[ce]=tn[Xn]=tn[le]=tn[he]=!1;var nn={};nn[hn]=nn[Zn]=nn[de]=nn[zt]=nn[wt]=nn[yn]=nn[Or]=nn[Wr]=nn[Dr]=nn[Fr]=nn[Nr]=nn[Yn]=nn[fe]=nn[ot]=nn[ce]=nn[Xn]=nn[le]=nn[Ue]=nn[Ur]=nn[Br]=nn[Mr]=nn[$r]=!0,nn[Fe]=nn[Ne]=nn[he]=!1;var xf={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Sf={"&":"&","<":"<",">":">",'"':""","'":"'"},Af={"&":"&","<":"<",">":">",""":'"',"'":"'"},bf={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Cf=parseFloat,Pf=parseInt,Ru=typeof se=="object"&&se&&se.Object===Object&&se,If=typeof self=="object"&&self&&self.Object===Object&&self,pn=Ru||If||Function("return this")(),Zr=f&&!f.nodeType&&f,Lt=Zr&&!0&&d&&!d.nodeType&&d,Eu=Lt&&Lt.exports===Zr,Yr=Eu&&Ru.process,Bn=function(){try{var l=Lt&&Lt.require&&Lt.require("util").types;return l||Yr&&Yr.binding&&Yr.binding("util")}catch{}}(),Tu=Bn&&Bn.isArrayBuffer,Lu=Bn&&Bn.isDate,Ou=Bn&&Bn.isMap,Wu=Bn&&Bn.isRegExp,Du=Bn&&Bn.isSet,Fu=Bn&&Bn.isTypedArray;function Tn(l,w,g){switch(g.length){case 0:return l.call(w);case 1:return l.call(w,g[0]);case 2:return l.call(w,g[0],g[1]);case 3:return l.call(w,g[0],g[1],g[2])}return l.apply(w,g)}function Rf(l,w,g,b){for(var N=-1,J=l==null?0:l.length;++N<J;){var fn=l[N];w(b,fn,g(fn),l)}return b}function Mn(l,w){for(var g=-1,b=l==null?0:l.length;++g<b&&w(l[g],g,l)!==!1;);return l}function Ef(l,w){for(var g=l==null?0:l.length;g--&&w(l[g],g,l)!==!1;);return l}function Nu(l,w){for(var g=-1,b=l==null?0:l.length;++g<b;)if(!w(l[g],g,l))return!1;return!0}function yt(l,w){for(var g=-1,b=l==null?0:l.length,N=0,J=[];++g<b;){var fn=l[g];w(fn,g,l)&&(J[N++]=fn)}return J}function Ke(l,w){var g=l==null?0:l.length;return!!g&&Gt(l,w,0)>-1}function Xr(l,w,g){for(var b=-1,N=l==null?0:l.length;++b<N;)if(g(w,l[b]))return!0;return!1}function en(l,w){for(var g=-1,b=l==null?0:l.length,N=Array(b);++g<b;)N[g]=w(l[g],g,l);return N}function mt(l,w){for(var g=-1,b=w.length,N=l.length;++g<b;)l[N+g]=w[g];return l}function Qr(l,w,g,b){var N=-1,J=l==null?0:l.length;for(b&&J&&(g=l[++N]);++N<J;)g=w(g,l[N],N,l);return g}function Tf(l,w,g,b){var N=l==null?0:l.length;for(b&&N&&(g=l[--N]);N--;)g=w(g,l[N],N,l);return g}function Vr(l,w){for(var g=-1,b=l==null?0:l.length;++g<b;)if(w(l[g],g,l))return!0;return!1}var Lf=jr("length");function Of(l){return l.split("")}function Wf(l){return l.match($a)||[]}function Uu(l,w,g){var b;return g(l,function(N,J,fn){if(w(N,J,fn))return b=J,!1}),b}function ke(l,w,g,b){for(var N=l.length,J=g+(b?1:-1);b?J--:++J<N;)if(w(l[J],J,l))return J;return-1}function Gt(l,w,g){return w===w?Hf(l,w,g):ke(l,Bu,g)}function Df(l,w,g,b){for(var N=g-1,J=l.length;++N<J;)if(b(l[N],w))return N;return-1}function Bu(l){return l!==l}function Mu(l,w){var g=l==null?0:l.length;return g?ti(l,w)/g:qt}function jr(l){return function(w){return w==null?i:w[l]}}function ni(l){return function(w){return l==null?i:l[w]}}function $u(l,w,g,b,N){return N(l,function(J,fn,j){g=b?(b=!1,J):w(g,J,fn,j)}),g}function Ff(l,w){var g=l.length;for(l.sort(w);g--;)l[g]=l[g].value;return l}function ti(l,w){for(var g,b=-1,N=l.length;++b<N;){var J=w(l[b]);J!==i&&(g=g===i?J:g+J)}return g}function ei(l,w){for(var g=-1,b=Array(l);++g<l;)b[g]=w(g);return b}function Nf(l,w){return en(w,function(g){return[g,l[g]]})}function Ku(l){return l&&l.slice(0,Hu(l)+1).replace(kr,"")}function Ln(l){return function(w){return l(w)}}function ri(l,w){return en(w,function(g){return l[g]})}function pe(l,w){return l.has(w)}function ku(l,w){for(var g=-1,b=l.length;++g<b&&Gt(w,l[g],0)>-1;);return g}function qu(l,w){for(var g=l.length;g--&&Gt(w,l[g],0)>-1;);return g}function Uf(l,w){for(var g=l.length,b=0;g--;)l[g]===w&&++b;return b}var Bf=ni(xf),Mf=ni(Sf);function $f(l){return"\\"+bf[l]}function Kf(l,w){return l==null?i:l[w]}function Jt(l){return vf.test(l)}function kf(l){return wf.test(l)}function qf(l){for(var w,g=[];!(w=l.next()).done;)g.push(w.value);return g}function ii(l){var w=-1,g=Array(l.size);return l.forEach(function(b,N){g[++w]=[N,b]}),g}function zu(l,w){return function(g){return l(w(g))}}function xt(l,w){for(var g=-1,b=l.length,N=0,J=[];++g<b;){var fn=l[g];(fn===w||fn===R)&&(l[g]=R,J[N++]=g)}return J}function qe(l){var w=-1,g=Array(l.size);return l.forEach(function(b){g[++w]=b}),g}function zf(l){var w=-1,g=Array(l.size);return l.forEach(function(b){g[++w]=[b,b]}),g}function Hf(l,w,g){for(var b=g-1,N=l.length;++b<N;)if(l[b]===w)return b;return-1}function Gf(l,w,g){for(var b=g+1;b--;)if(l[b]===w)return b;return b}function Zt(l){return Jt(l)?Zf(l):Lf(l)}function Qn(l){return Jt(l)?Yf(l):Of(l)}function Hu(l){for(var w=l.length;w--&&Na.test(l.charAt(w)););return w}var Jf=ni(Af);function Zf(l){for(var w=Jr.lastIndex=0;Jr.test(l);)++w;return w}function Yf(l){return l.match(Jr)||[]}function Xf(l){return l.match(_f)||[]}var Qf=function l(w){w=w==null?pn:Yt.defaults(pn.Object(),w,Yt.pick(pn,yf));var g=w.Array,b=w.Date,N=w.Error,J=w.Function,fn=w.Math,j=w.Object,ui=w.RegExp,Vf=w.String,$n=w.TypeError,ze=g.prototype,jf=J.prototype,Xt=j.prototype,He=w["__core-js_shared__"],Ge=jf.toString,Q=Xt.hasOwnProperty,nc=0,Gu=function(){var n=/[^.]+$/.exec(He&&He.keys&&He.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""}(),Je=Xt.toString,tc=Ge.call(j),ec=pn._,rc=ui("^"+Ge.call(Q).replace(Kr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ze=Eu?w.Buffer:i,St=w.Symbol,Ye=w.Uint8Array,Ju=Ze?Ze.allocUnsafe:i,Xe=zu(j.getPrototypeOf,j),Zu=j.create,Yu=Xt.propertyIsEnumerable,Qe=ze.splice,Xu=St?St.isConcatSpreadable:i,ge=St?St.iterator:i,Ot=St?St.toStringTag:i,Ve=function(){try{var n=Ut(j,"defineProperty");return n({},"",{}),n}catch{}}(),ic=w.clearTimeout!==pn.clearTimeout&&w.clearTimeout,uc=b&&b.now!==pn.Date.now&&b.now,sc=w.setTimeout!==pn.setTimeout&&w.setTimeout,je=fn.ceil,nr=fn.floor,si=j.getOwnPropertySymbols,oc=Ze?Ze.isBuffer:i,Qu=w.isFinite,ac=ze.join,fc=zu(j.keys,j),cn=fn.max,_n=fn.min,cc=b.now,lc=w.parseInt,Vu=fn.random,hc=ze.reverse,oi=Ut(w,"DataView"),_e=Ut(w,"Map"),ai=Ut(w,"Promise"),Qt=Ut(w,"Set"),ve=Ut(w,"WeakMap"),we=Ut(j,"create"),tr=ve&&new ve,Vt={},dc=Bt(oi),pc=Bt(_e),gc=Bt(ai),_c=Bt(Qt),vc=Bt(ve),er=St?St.prototype:i,ye=er?er.valueOf:i,ju=er?er.toString:i;function s(n){if(un(n)&&!U(n)&&!(n instanceof z)){if(n instanceof Kn)return n;if(Q.call(n,"__wrapped__"))return no(n)}return new Kn(n)}var jt=function(){function n(){}return function(t){if(!rn(t))return{};if(Zu)return Zu(t);n.prototype=t;var e=new n;return n.prototype=i,e}}();function rr(){}function Kn(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=i}s.templateSettings={escape:Ta,evaluate:La,interpolate:au,variable:"",imports:{_:s}},s.prototype=rr.prototype,s.prototype.constructor=s,Kn.prototype=jt(rr.prototype),Kn.prototype.constructor=Kn;function z(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=Un,this.__views__=[]}function wc(){var n=new z(this.__wrapped__);return n.__actions__=bn(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=bn(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=bn(this.__views__),n}function yc(){if(this.__filtered__){var n=new z(this);n.__dir__=-1,n.__filtered__=!0}else n=this.clone(),n.__dir__*=-1;return n}function mc(){var n=this.__wrapped__.value(),t=this.__dir__,e=U(n),r=t<0,u=e?n.length:0,o=Ol(0,u,this.__views__),a=o.start,c=o.end,h=c-a,y=r?c:a-1,m=this.__iteratees__,x=m.length,A=0,I=_n(h,this.__takeCount__);if(!e||!r&&u==h&&I==h)return As(n,this.__actions__);var O=[];n:for(;h--&&A<I;){y+=t;for(var $=-1,W=n[y];++$<x;){var q=m[$],H=q.iteratee,Dn=q.type,Sn=H(W);if(Dn==ln)W=Sn;else if(!Sn){if(Dn==ae)continue n;break n}}O[A++]=W}return O}z.prototype=jt(rr.prototype),z.prototype.constructor=z;function Wt(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function xc(){this.__data__=we?we(null):{},this.size=0}function Sc(n){var t=this.has(n)&&delete this.__data__[n];return this.size-=t?1:0,t}function Ac(n){var t=this.__data__;if(we){var e=t[n];return e===C?i:e}return Q.call(t,n)?t[n]:i}function bc(n){var t=this.__data__;return we?t[n]!==i:Q.call(t,n)}function Cc(n,t){var e=this.__data__;return this.size+=this.has(n)?0:1,e[n]=we&&t===i?C:t,this}Wt.prototype.clear=xc,Wt.prototype.delete=Sc,Wt.prototype.get=Ac,Wt.prototype.has=bc,Wt.prototype.set=Cc;function at(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Pc(){this.__data__=[],this.size=0}function Ic(n){var t=this.__data__,e=ir(t,n);if(e<0)return!1;var r=t.length-1;return e==r?t.pop():Qe.call(t,e,1),--this.size,!0}function Rc(n){var t=this.__data__,e=ir(t,n);return e<0?i:t[e][1]}function Ec(n){return ir(this.__data__,n)>-1}function Tc(n,t){var e=this.__data__,r=ir(e,n);return r<0?(++this.size,e.push([n,t])):e[r][1]=t,this}at.prototype.clear=Pc,at.prototype.delete=Ic,at.prototype.get=Rc,at.prototype.has=Ec,at.prototype.set=Tc;function ft(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Lc(){this.size=0,this.__data__={hash:new Wt,map:new(_e||at),string:new Wt}}function Oc(n){var t=_r(this,n).delete(n);return this.size-=t?1:0,t}function Wc(n){return _r(this,n).get(n)}function Dc(n){return _r(this,n).has(n)}function Fc(n,t){var e=_r(this,n),r=e.size;return e.set(n,t),this.size+=e.size==r?0:1,this}ft.prototype.clear=Lc,ft.prototype.delete=Oc,ft.prototype.get=Wc,ft.prototype.has=Dc,ft.prototype.set=Fc;function Dt(n){var t=-1,e=n==null?0:n.length;for(this.__data__=new ft;++t<e;)this.add(n[t])}function Nc(n){return this.__data__.set(n,C),this}function Uc(n){return this.__data__.has(n)}Dt.prototype.add=Dt.prototype.push=Nc,Dt.prototype.has=Uc;function Vn(n){var t=this.__data__=new at(n);this.size=t.size}function Bc(){this.__data__=new at,this.size=0}function Mc(n){var t=this.__data__,e=t.delete(n);return this.size=t.size,e}function $c(n){return this.__data__.get(n)}function Kc(n){return this.__data__.has(n)}function kc(n,t){var e=this.__data__;if(e instanceof at){var r=e.__data__;if(!_e||r.length<_-1)return r.push([n,t]),this.size=++e.size,this;e=this.__data__=new ft(r)}return e.set(n,t),this.size=e.size,this}Vn.prototype.clear=Bc,Vn.prototype.delete=Mc,Vn.prototype.get=$c,Vn.prototype.has=Kc,Vn.prototype.set=kc;function ns(n,t){var e=U(n),r=!e&&Mt(n),u=!e&&!r&&It(n),o=!e&&!r&&!u&&re(n),a=e||r||u||o,c=a?ei(n.length,Vf):[],h=c.length;for(var y in n)(t||Q.call(n,y))&&!(a&&(y=="length"||u&&(y=="offset"||y=="parent")||o&&(y=="buffer"||y=="byteLength"||y=="byteOffset")||dt(y,h)))&&c.push(y);return c}function ts(n){var t=n.length;return t?n[yi(0,t-1)]:i}function qc(n,t){return vr(bn(n),Ft(t,0,n.length))}function zc(n){return vr(bn(n))}function fi(n,t,e){(e!==i&&!jn(n[t],e)||e===i&&!(t in n))&&ct(n,t,e)}function me(n,t,e){var r=n[t];(!(Q.call(n,t)&&jn(r,e))||e===i&&!(t in n))&&ct(n,t,e)}function ir(n,t){for(var e=n.length;e--;)if(jn(n[e][0],t))return e;return-1}function Hc(n,t,e,r){return At(n,function(u,o,a){t(r,u,e(u),a)}),r}function es(n,t){return n&&it(t,dn(t),n)}function Gc(n,t){return n&&it(t,Pn(t),n)}function ct(n,t,e){t=="__proto__"&&Ve?Ve(n,t,{configurable:!0,enumerable:!0,value:e,writable:!0}):n[t]=e}function ci(n,t){for(var e=-1,r=t.length,u=g(r),o=n==null;++e<r;)u[e]=o?i:zi(n,t[e]);return u}function Ft(n,t,e){return n===n&&(e!==i&&(n=n<=e?n:e),t!==i&&(n=n>=t?n:t)),n}function kn(n,t,e,r,u,o){var a,c=t&P,h=t&T,y=t&F;if(e&&(a=u?e(n,r,u,o):e(n)),a!==i)return a;if(!rn(n))return n;var m=U(n);if(m){if(a=Dl(n),!c)return bn(n,a)}else{var x=vn(n),A=x==Ne||x==iu;if(It(n))return Ps(n,c);if(x==ot||x==hn||A&&!u){if(a=h||A?{}:Hs(n),!c)return h?Al(n,Gc(a,n)):Sl(n,es(a,n))}else{if(!nn[x])return u?n:{};a=Fl(n,x,c)}}o||(o=new Vn);var I=o.get(n);if(I)return I;o.set(n,a),xo(n)?n.forEach(function(W){a.add(kn(W,t,e,W,n,o))}):yo(n)&&n.forEach(function(W,q){a.set(q,kn(W,t,e,q,n,o))});var O=y?h?Ti:Ei:h?Pn:dn,$=m?i:O(n);return Mn($||n,function(W,q){$&&(q=W,W=n[q]),me(a,q,kn(W,t,e,q,n,o))}),a}function Jc(n){var t=dn(n);return function(e){return rs(e,n,t)}}function rs(n,t,e){var r=e.length;if(n==null)return!r;for(n=j(n);r--;){var u=e[r],o=t[u],a=n[u];if(a===i&&!(u in n)||!o(a))return!1}return!0}function is(n,t,e){if(typeof n!="function")throw new $n(S);return Ie(function(){n.apply(i,e)},t)}function xe(n,t,e,r){var u=-1,o=Ke,a=!0,c=n.length,h=[],y=t.length;if(!c)return h;e&&(t=en(t,Ln(e))),r?(o=Xr,a=!1):t.length>=_&&(o=pe,a=!1,t=new Dt(t));n:for(;++u<c;){var m=n[u],x=e==null?m:e(m);if(m=r||m!==0?m:0,a&&x===x){for(var A=y;A--;)if(t[A]===x)continue n;h.push(m)}else o(t,x,r)||h.push(m)}return h}var At=Ls(rt),us=Ls(hi,!0);function Zc(n,t){var e=!0;return At(n,function(r,u,o){return e=!!t(r,u,o),e}),e}function ur(n,t,e){for(var r=-1,u=n.length;++r<u;){var o=n[r],a=t(o);if(a!=null&&(c===i?a===a&&!Wn(a):e(a,c)))var c=a,h=o}return h}function Yc(n,t,e,r){var u=n.length;for(e=B(e),e<0&&(e=-e>u?0:u+e),r=r===i||r>u?u:B(r),r<0&&(r+=u),r=e>r?0:Ao(r);e<r;)n[e++]=t;return n}function ss(n,t){var e=[];return At(n,function(r,u,o){t(r,u,o)&&e.push(r)}),e}function gn(n,t,e,r,u){var o=-1,a=n.length;for(e||(e=Ul),u||(u=[]);++o<a;){var c=n[o];t>0&&e(c)?t>1?gn(c,t-1,e,r,u):mt(u,c):r||(u[u.length]=c)}return u}var li=Os(),os=Os(!0);function rt(n,t){return n&&li(n,t,dn)}function hi(n,t){return n&&os(n,t,dn)}function sr(n,t){return yt(t,function(e){return pt(n[e])})}function Nt(n,t){t=Ct(t,n);for(var e=0,r=t.length;n!=null&&e<r;)n=n[ut(t[e++])];return e&&e==r?n:i}function as(n,t,e){var r=t(n);return U(n)?r:mt(r,e(n))}function mn(n){return n==null?n===i?Aa:xa:Ot&&Ot in j(n)?Ll(n):zl(n)}function di(n,t){return n>t}function Xc(n,t){return n!=null&&Q.call(n,t)}function Qc(n,t){return n!=null&&t in j(n)}function Vc(n,t,e){return n>=_n(t,e)&&n<cn(t,e)}function pi(n,t,e){for(var r=e?Xr:Ke,u=n[0].length,o=n.length,a=o,c=g(o),h=1/0,y=[];a--;){var m=n[a];a&&t&&(m=en(m,Ln(t))),h=_n(m.length,h),c[a]=!e&&(t||u>=120&&m.length>=120)?new Dt(a&&m):i}m=n[0];var x=-1,A=c[0];n:for(;++x<u&&y.length<h;){var I=m[x],O=t?t(I):I;if(I=e||I!==0?I:0,!(A?pe(A,O):r(y,O,e))){for(a=o;--a;){var $=c[a];if(!($?pe($,O):r(n[a],O,e)))continue n}A&&A.push(O),y.push(I)}}return y}function jc(n,t,e,r){return rt(n,function(u,o,a){t(r,e(u),o,a)}),r}function Se(n,t,e){t=Ct(t,n),n=Ys(n,t);var r=n==null?n:n[ut(zn(t))];return r==null?i:Tn(r,n,e)}function fs(n){return un(n)&&mn(n)==hn}function nl(n){return un(n)&&mn(n)==de}function tl(n){return un(n)&&mn(n)==yn}function Ae(n,t,e,r,u){return n===t?!0:n==null||t==null||!un(n)&&!un(t)?n!==n&&t!==t:el(n,t,e,r,Ae,u)}function el(n,t,e,r,u,o){var a=U(n),c=U(t),h=a?Zn:vn(n),y=c?Zn:vn(t);h=h==hn?ot:h,y=y==hn?ot:y;var m=h==ot,x=y==ot,A=h==y;if(A&&It(n)){if(!It(t))return!1;a=!0,m=!1}if(A&&!m)return o||(o=new Vn),a||re(n)?ks(n,t,e,r,u,o):El(n,t,h,e,r,u,o);if(!(e&Z)){var I=m&&Q.call(n,"__wrapped__"),O=x&&Q.call(t,"__wrapped__");if(I||O){var $=I?n.value():n,W=O?t.value():t;return o||(o=new Vn),u($,W,e,r,o)}}return A?(o||(o=new Vn),Tl(n,t,e,r,u,o)):!1}function rl(n){return un(n)&&vn(n)==Yn}function gi(n,t,e,r){var u=e.length,o=u,a=!r;if(n==null)return!o;for(n=j(n);u--;){var c=e[u];if(a&&c[2]?c[1]!==n[c[0]]:!(c[0]in n))return!1}for(;++u<o;){c=e[u];var h=c[0],y=n[h],m=c[1];if(a&&c[2]){if(y===i&&!(h in n))return!1}else{var x=new Vn;if(r)var A=r(y,m,h,n,t,x);if(!(A===i?Ae(m,y,Z|k,r,x):A))return!1}}return!0}function cs(n){if(!rn(n)||Ml(n))return!1;var t=pt(n)?rc:Ga;return t.test(Bt(n))}function il(n){return un(n)&&mn(n)==ce}function ul(n){return un(n)&&vn(n)==Xn}function sl(n){return un(n)&&Ar(n.length)&&!!tn[mn(n)]}function ls(n){return typeof n=="function"?n:n==null?In:typeof n=="object"?U(n)?ps(n[0],n[1]):ds(n):Do(n)}function _i(n){if(!Pe(n))return fc(n);var t=[];for(var e in j(n))Q.call(n,e)&&e!="constructor"&&t.push(e);return t}function ol(n){if(!rn(n))return ql(n);var t=Pe(n),e=[];for(var r in n)r=="constructor"&&(t||!Q.call(n,r))||e.push(r);return e}function vi(n,t){return n<t}function hs(n,t){var e=-1,r=Cn(n)?g(n.length):[];return At(n,function(u,o,a){r[++e]=t(u,o,a)}),r}function ds(n){var t=Oi(n);return t.length==1&&t[0][2]?Js(t[0][0],t[0][1]):function(e){return e===n||gi(e,n,t)}}function ps(n,t){return Di(n)&&Gs(t)?Js(ut(n),t):function(e){var r=zi(e,n);return r===i&&r===t?Hi(e,n):Ae(t,r,Z|k)}}function or(n,t,e,r,u){n!==t&&li(t,function(o,a){if(u||(u=new Vn),rn(o))al(n,t,a,e,or,r,u);else{var c=r?r(Ni(n,a),o,a+"",n,t,u):i;c===i&&(c=o),fi(n,a,c)}},Pn)}function al(n,t,e,r,u,o,a){var c=Ni(n,e),h=Ni(t,e),y=a.get(h);if(y){fi(n,e,y);return}var m=o?o(c,h,e+"",n,t,a):i,x=m===i;if(x){var A=U(h),I=!A&&It(h),O=!A&&!I&&re(h);m=h,A||I||O?U(c)?m=c:sn(c)?m=bn(c):I?(x=!1,m=Ps(h,!0)):O?(x=!1,m=Is(h,!0)):m=[]:Re(h)||Mt(h)?(m=c,Mt(c)?m=bo(c):(!rn(c)||pt(c))&&(m=Hs(h))):x=!1}x&&(a.set(h,m),u(m,h,r,o,a),a.delete(h)),fi(n,e,m)}function gs(n,t){var e=n.length;if(e)return t+=t<0?e:0,dt(t,e)?n[t]:i}function _s(n,t,e){t.length?t=en(t,function(o){return U(o)?function(a){return Nt(a,o.length===1?o[0]:o)}:o}):t=[In];var r=-1;t=en(t,Ln(L()));var u=hs(n,function(o,a,c){var h=en(t,function(y){return y(o)});return{criteria:h,index:++r,value:o}});return Ff(u,function(o,a){return xl(o,a,e)})}function fl(n,t){return vs(n,t,function(e,r){return Hi(n,r)})}function vs(n,t,e){for(var r=-1,u=t.length,o={};++r<u;){var a=t[r],c=Nt(n,a);e(c,a)&&be(o,Ct(a,n),c)}return o}function cl(n){return function(t){return Nt(t,n)}}function wi(n,t,e,r){var u=r?Df:Gt,o=-1,a=t.length,c=n;for(n===t&&(t=bn(t)),e&&(c=en(n,Ln(e)));++o<a;)for(var h=0,y=t[o],m=e?e(y):y;(h=u(c,m,h,r))>-1;)c!==n&&Qe.call(c,h,1),Qe.call(n,h,1);return n}function ws(n,t){for(var e=n?t.length:0,r=e-1;e--;){var u=t[e];if(e==r||u!==o){var o=u;dt(u)?Qe.call(n,u,1):Si(n,u)}}return n}function yi(n,t){return n+nr(Vu()*(t-n+1))}function ll(n,t,e,r){for(var u=-1,o=cn(je((t-n)/(e||1)),0),a=g(o);o--;)a[r?o:++u]=n,n+=e;return a}function mi(n,t){var e="";if(!n||t<1||t>et)return e;do t%2&&(e+=n),t=nr(t/2),t&&(n+=n);while(t);return e}function K(n,t){return Ui(Zs(n,t,In),n+"")}function hl(n){return ts(ie(n))}function dl(n,t){var e=ie(n);return vr(e,Ft(t,0,e.length))}function be(n,t,e,r){if(!rn(n))return n;t=Ct(t,n);for(var u=-1,o=t.length,a=o-1,c=n;c!=null&&++u<o;){var h=ut(t[u]),y=e;if(h==="__proto__"||h==="constructor"||h==="prototype")return n;if(u!=a){var m=c[h];y=r?r(m,h,c):i,y===i&&(y=rn(m)?m:dt(t[u+1])?[]:{})}me(c,h,y),c=c[h]}return n}var ys=tr?function(n,t){return tr.set(n,t),n}:In,pl=Ve?function(n,t){return Ve(n,"toString",{configurable:!0,enumerable:!1,value:Ji(t),writable:!0})}:In;function gl(n){return vr(ie(n))}function qn(n,t,e){var r=-1,u=n.length;t<0&&(t=-t>u?0:u+t),e=e>u?u:e,e<0&&(e+=u),u=t>e?0:e-t>>>0,t>>>=0;for(var o=g(u);++r<u;)o[r]=n[r+t];return o}function _l(n,t){var e;return At(n,function(r,u,o){return e=t(r,u,o),!e}),!!e}function ar(n,t,e){var r=0,u=n==null?r:n.length;if(typeof t=="number"&&t===t&&u<=Lr){for(;r<u;){var o=r+u>>>1,a=n[o];a!==null&&!Wn(a)&&(e?a<=t:a<t)?r=o+1:u=o}return u}return xi(n,t,In,e)}function xi(n,t,e,r){var u=0,o=n==null?0:n.length;if(o===0)return 0;t=e(t);for(var a=t!==t,c=t===null,h=Wn(t),y=t===i;u<o;){var m=nr((u+o)/2),x=e(n[m]),A=x!==i,I=x===null,O=x===x,$=Wn(x);if(a)var W=r||O;else y?W=O&&(r||A):c?W=O&&A&&(r||!I):h?W=O&&A&&!I&&(r||!$):I||$?W=!1:W=r?x<=t:x<t;W?u=m+1:o=m}return _n(o,De)}function ms(n,t){for(var e=-1,r=n.length,u=0,o=[];++e<r;){var a=n[e],c=t?t(a):a;if(!e||!jn(c,h)){var h=c;o[u++]=a===0?0:a}}return o}function xs(n){return typeof n=="number"?n:Wn(n)?qt:+n}function On(n){if(typeof n=="string")return n;if(U(n))return en(n,On)+"";if(Wn(n))return ju?ju.call(n):"";var t=n+"";return t=="0"&&1/n==-st?"-0":t}function bt(n,t,e){var r=-1,u=Ke,o=n.length,a=!0,c=[],h=c;if(e)a=!1,u=Xr;else if(o>=_){var y=t?null:Il(n);if(y)return qe(y);a=!1,u=pe,h=new Dt}else h=t?[]:c;n:for(;++r<o;){var m=n[r],x=t?t(m):m;if(m=e||m!==0?m:0,a&&x===x){for(var A=h.length;A--;)if(h[A]===x)continue n;t&&h.push(x),c.push(m)}else u(h,x,e)||(h!==c&&h.push(x),c.push(m))}return c}function Si(n,t){return t=Ct(t,n),n=Ys(n,t),n==null||delete n[ut(zn(t))]}function Ss(n,t,e,r){return be(n,t,e(Nt(n,t)),r)}function fr(n,t,e,r){for(var u=n.length,o=r?u:-1;(r?o--:++o<u)&&t(n[o],o,n););return e?qn(n,r?0:o,r?o+1:u):qn(n,r?o+1:0,r?u:o)}function As(n,t){var e=n;return e instanceof z&&(e=e.value()),Qr(t,function(r,u){return u.func.apply(u.thisArg,mt([r],u.args))},e)}function Ai(n,t,e){var r=n.length;if(r<2)return r?bt(n[0]):[];for(var u=-1,o=g(r);++u<r;)for(var a=n[u],c=-1;++c<r;)c!=u&&(o[u]=xe(o[u]||a,n[c],t,e));return bt(gn(o,1),t,e)}function bs(n,t,e){for(var r=-1,u=n.length,o=t.length,a={};++r<u;){var c=r<o?t[r]:i;e(a,n[r],c)}return a}function bi(n){return sn(n)?n:[]}function Ci(n){return typeof n=="function"?n:In}function Ct(n,t){return U(n)?n:Di(n,t)?[n]:js(Y(n))}var vl=K;function Pt(n,t,e){var r=n.length;return e=e===i?r:e,!t&&e>=r?n:qn(n,t,e)}var Cs=ic||function(n){return pn.clearTimeout(n)};function Ps(n,t){if(t)return n.slice();var e=n.length,r=Ju?Ju(e):new n.constructor(e);return n.copy(r),r}function Pi(n){var t=new n.constructor(n.byteLength);return new Ye(t).set(new Ye(n)),t}function wl(n,t){var e=t?Pi(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}function yl(n){var t=new n.constructor(n.source,fu.exec(n));return t.lastIndex=n.lastIndex,t}function ml(n){return ye?j(ye.call(n)):{}}function Is(n,t){var e=t?Pi(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.length)}function Rs(n,t){if(n!==t){var e=n!==i,r=n===null,u=n===n,o=Wn(n),a=t!==i,c=t===null,h=t===t,y=Wn(t);if(!c&&!y&&!o&&n>t||o&&a&&h&&!c&&!y||r&&a&&h||!e&&h||!u)return 1;if(!r&&!o&&!y&&n<t||y&&e&&u&&!r&&!o||c&&e&&u||!a&&u||!h)return-1}return 0}function xl(n,t,e){for(var r=-1,u=n.criteria,o=t.criteria,a=u.length,c=e.length;++r<a;){var h=Rs(u[r],o[r]);if(h){if(r>=c)return h;var y=e[r];return h*(y=="desc"?-1:1)}}return n.index-t.index}function Es(n,t,e,r){for(var u=-1,o=n.length,a=e.length,c=-1,h=t.length,y=cn(o-a,0),m=g(h+y),x=!r;++c<h;)m[c]=t[c];for(;++u<a;)(x||u<o)&&(m[e[u]]=n[u]);for(;y--;)m[c++]=n[u++];return m}function Ts(n,t,e,r){for(var u=-1,o=n.length,a=-1,c=e.length,h=-1,y=t.length,m=cn(o-c,0),x=g(m+y),A=!r;++u<m;)x[u]=n[u];for(var I=u;++h<y;)x[I+h]=t[h];for(;++a<c;)(A||u<o)&&(x[I+e[a]]=n[u++]);return x}function bn(n,t){var e=-1,r=n.length;for(t||(t=g(r));++e<r;)t[e]=n[e];return t}function it(n,t,e,r){var u=!e;e||(e={});for(var o=-1,a=t.length;++o<a;){var c=t[o],h=r?r(e[c],n[c],c,e,n):i;h===i&&(h=n[c]),u?ct(e,c,h):me(e,c,h)}return e}function Sl(n,t){return it(n,Wi(n),t)}function Al(n,t){return it(n,qs(n),t)}function cr(n,t){return function(e,r){var u=U(e)?Rf:Hc,o=t?t():{};return u(e,n,L(r,2),o)}}function ne(n){return K(function(t,e){var r=-1,u=e.length,o=u>1?e[u-1]:i,a=u>2?e[2]:i;for(o=n.length>3&&typeof o=="function"?(u--,o):i,a&&xn(e[0],e[1],a)&&(o=u<3?i:o,u=1),t=j(t);++r<u;){var c=e[r];c&&n(t,c,r,o)}return t})}function Ls(n,t){return function(e,r){if(e==null)return e;if(!Cn(e))return n(e,r);for(var u=e.length,o=t?u:-1,a=j(e);(t?o--:++o<u)&&r(a[o],o,a)!==!1;);return e}}function Os(n){return function(t,e,r){for(var u=-1,o=j(t),a=r(t),c=a.length;c--;){var h=a[n?c:++u];if(e(o[h],h,o)===!1)break}return t}}function bl(n,t,e){var r=t&wn,u=Ce(n);function o(){var a=this&&this!==pn&&this instanceof o?u:n;return a.apply(r?e:this,arguments)}return o}function Ws(n){return function(t){t=Y(t);var e=Jt(t)?Qn(t):i,r=e?e[0]:t.charAt(0),u=e?Pt(e,1).join(""):t.slice(1);return r[n]()+u}}function te(n){return function(t){return Qr(Oo(Lo(t).replace(pf,"")),n,"")}}function Ce(n){return function(){var t=arguments;switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5:return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var e=jt(n.prototype),r=n.apply(e,t);return rn(r)?r:e}}function Cl(n,t,e){var r=Ce(n);function u(){for(var o=arguments.length,a=g(o),c=o,h=ee(u);c--;)a[c]=arguments[c];var y=o<3&&a[0]!==h&&a[o-1]!==h?[]:xt(a,h);if(o-=y.length,o<e)return Bs(n,t,lr,u.placeholder,i,a,y,i,i,e-o);var m=this&&this!==pn&&this instanceof u?r:n;return Tn(m,this,a)}return u}function Ds(n){return function(t,e,r){var u=j(t);if(!Cn(t)){var o=L(e,3);t=dn(t),e=function(c){return o(u[c],c,u)}}var a=n(t,e,r);return a>-1?u[o?t[a]:a]:i}}function Fs(n){return ht(function(t){var e=t.length,r=e,u=Kn.prototype.thru;for(n&&t.reverse();r--;){var o=t[r];if(typeof o!="function")throw new $n(S);if(u&&!a&&gr(o)=="wrapper")var a=new Kn([],!0)}for(r=a?r:e;++r<e;){o=t[r];var c=gr(o),h=c=="wrapper"?Li(o):i;h&&Fi(h[0])&&h[1]==(An|an|Jn|Nn)&&!h[4].length&&h[9]==1?a=a[gr(h[0])].apply(a,h[3]):a=o.length==1&&Fi(o)?a[c]():a.thru(o)}return function(){var y=arguments,m=y[0];if(a&&y.length==1&&U(m))return a.plant(m).value();for(var x=0,A=e?t[x].apply(this,y):m;++x<e;)A=t[x].call(this,A);return A}})}function lr(n,t,e,r,u,o,a,c,h,y){var m=t&An,x=t&wn,A=t&Rn,I=t&(an|Et),O=t&Kt,$=A?i:Ce(n);function W(){for(var q=arguments.length,H=g(q),Dn=q;Dn--;)H[Dn]=arguments[Dn];if(I)var Sn=ee(W),Fn=Uf(H,Sn);if(r&&(H=Es(H,r,u,I)),o&&(H=Ts(H,o,a,I)),q-=Fn,I&&q<y){var on=xt(H,Sn);return Bs(n,t,lr,W.placeholder,e,H,on,c,h,y-q)}var nt=x?e:this,_t=A?nt[n]:n;return q=H.length,c?H=Hl(H,c):O&&q>1&&H.reverse(),m&&h<q&&(H.length=h),this&&this!==pn&&this instanceof W&&(_t=$||Ce(_t)),_t.apply(nt,H)}return W}function Ns(n,t){return function(e,r){return jc(e,n,t(r),{})}}function hr(n,t){return function(e,r){var u;if(e===i&&r===i)return t;if(e!==i&&(u=e),r!==i){if(u===i)return r;typeof e=="string"||typeof r=="string"?(e=On(e),r=On(r)):(e=xs(e),r=xs(r)),u=n(e,r)}return u}}function Ii(n){return ht(function(t){return t=en(t,Ln(L())),K(function(e){var r=this;return n(t,function(u){return Tn(u,r,e)})})})}function dr(n,t){t=t===i?" ":On(t);var e=t.length;if(e<2)return e?mi(t,n):t;var r=mi(t,je(n/Zt(t)));return Jt(t)?Pt(Qn(r),0,n).join(""):r.slice(0,n)}function Pl(n,t,e,r){var u=t&wn,o=Ce(n);function a(){for(var c=-1,h=arguments.length,y=-1,m=r.length,x=g(m+h),A=this&&this!==pn&&this instanceof a?o:n;++y<m;)x[y]=r[y];for(;h--;)x[y++]=arguments[++c];return Tn(A,u?e:this,x)}return a}function Us(n){return function(t,e,r){return r&&typeof r!="number"&&xn(t,e,r)&&(e=r=i),t=gt(t),e===i?(e=t,t=0):e=gt(e),r=r===i?t<e?1:-1:gt(r),ll(t,e,r,n)}}function pr(n){return function(t,e){return typeof t=="string"&&typeof e=="string"||(t=Hn(t),e=Hn(e)),n(t,e)}}function Bs(n,t,e,r,u,o,a,c,h,y){var m=t&an,x=m?a:i,A=m?i:a,I=m?o:i,O=m?i:o;t|=m?Jn:vt,t&=~(m?vt:Jn),t&tt||(t&=-4);var $=[n,t,u,I,x,O,A,c,h,y],W=e.apply(i,$);return Fi(n)&&Xs(W,$),W.placeholder=r,Qs(W,n,t)}function Ri(n){var t=fn[n];return function(e,r){if(e=Hn(e),r=r==null?0:_n(B(r),292),r&&Qu(e)){var u=(Y(e)+"e").split("e"),o=t(u[0]+"e"+(+u[1]+r));return u=(Y(o)+"e").split("e"),+(u[0]+"e"+(+u[1]-r))}return t(e)}}var Il=Qt&&1/qe(new Qt([,-0]))[1]==st?function(n){return new Qt(n)}:Xi;function Ms(n){return function(t){var e=vn(t);return e==Yn?ii(t):e==Xn?zf(t):Nf(t,n(t))}}function lt(n,t,e,r,u,o,a,c){var h=t&Rn;if(!h&&typeof n!="function")throw new $n(S);var y=r?r.length:0;if(y||(t&=-97,r=u=i),a=a===i?a:cn(B(a),0),c=c===i?c:B(c),y-=u?u.length:0,t&vt){var m=r,x=u;r=u=i}var A=h?i:Li(n),I=[n,t,e,r,u,m,x,o,a,c];if(A&&kl(I,A),n=I[0],t=I[1],e=I[2],r=I[3],u=I[4],c=I[9]=I[9]===i?h?0:n.length:cn(I[9]-y,0),!c&&t&(an|Et)&&(t&=-25),!t||t==wn)var O=bl(n,t,e);else t==an||t==Et?O=Cl(n,t,c):(t==Jn||t==(wn|Jn))&&!u.length?O=Pl(n,t,e,r):O=lr.apply(i,I);var $=A?ys:Xs;return Qs($(O,I),n,t)}function $s(n,t,e,r){return n===i||jn(n,Xt[e])&&!Q.call(r,e)?t:n}function Ks(n,t,e,r,u,o){return rn(n)&&rn(t)&&(o.set(t,n),or(n,t,i,Ks,o),o.delete(t)),n}function Rl(n){return Re(n)?i:n}function ks(n,t,e,r,u,o){var a=e&Z,c=n.length,h=t.length;if(c!=h&&!(a&&h>c))return!1;var y=o.get(n),m=o.get(t);if(y&&m)return y==t&&m==n;var x=-1,A=!0,I=e&k?new Dt:i;for(o.set(n,t),o.set(t,n);++x<c;){var O=n[x],$=t[x];if(r)var W=a?r($,O,x,t,n,o):r(O,$,x,n,t,o);if(W!==i){if(W)continue;A=!1;break}if(I){if(!Vr(t,function(q,H){if(!pe(I,H)&&(O===q||u(O,q,e,r,o)))return I.push(H)})){A=!1;break}}else if(!(O===$||u(O,$,e,r,o))){A=!1;break}}return o.delete(n),o.delete(t),A}function El(n,t,e,r,u,o,a){switch(e){case zt:if(n.byteLength!=t.byteLength||n.byteOffset!=t.byteOffset)return!1;n=n.buffer,t=t.buffer;case de:return!(n.byteLength!=t.byteLength||!o(new Ye(n),new Ye(t)));case wt:case yn:case fe:return jn(+n,+t);case Fe:return n.name==t.name&&n.message==t.message;case ce:case le:return n==t+"";case Yn:var c=ii;case Xn:var h=r&Z;if(c||(c=qe),n.size!=t.size&&!h)return!1;var y=a.get(n);if(y)return y==t;r|=k,a.set(n,t);var m=ks(c(n),c(t),r,u,o,a);return a.delete(n),m;case Ue:if(ye)return ye.call(n)==ye.call(t)}return!1}function Tl(n,t,e,r,u,o){var a=e&Z,c=Ei(n),h=c.length,y=Ei(t),m=y.length;if(h!=m&&!a)return!1;for(var x=h;x--;){var A=c[x];if(!(a?A in t:Q.call(t,A)))return!1}var I=o.get(n),O=o.get(t);if(I&&O)return I==t&&O==n;var $=!0;o.set(n,t),o.set(t,n);for(var W=a;++x<h;){A=c[x];var q=n[A],H=t[A];if(r)var Dn=a?r(H,q,A,t,n,o):r(q,H,A,n,t,o);if(!(Dn===i?q===H||u(q,H,e,r,o):Dn)){$=!1;break}W||(W=A=="constructor")}if($&&!W){var Sn=n.constructor,Fn=t.constructor;Sn!=Fn&&"constructor"in n&&"constructor"in t&&!(typeof Sn=="function"&&Sn instanceof Sn&&typeof Fn=="function"&&Fn instanceof Fn)&&($=!1)}return o.delete(n),o.delete(t),$}function ht(n){return Ui(Zs(n,i,ro),n+"")}function Ei(n){return as(n,dn,Wi)}function Ti(n){return as(n,Pn,qs)}var Li=tr?function(n){return tr.get(n)}:Xi;function gr(n){for(var t=n.name+"",e=Vt[t],r=Q.call(Vt,t)?e.length:0;r--;){var u=e[r],o=u.func;if(o==null||o==n)return u.name}return t}function ee(n){var t=Q.call(s,"placeholder")?s:n;return t.placeholder}function L(){var n=s.iteratee||Zi;return n=n===Zi?ls:n,arguments.length?n(arguments[0],arguments[1]):n}function _r(n,t){var e=n.__data__;return Bl(t)?e[typeof t=="string"?"string":"hash"]:e.map}function Oi(n){for(var t=dn(n),e=t.length;e--;){var r=t[e],u=n[r];t[e]=[r,u,Gs(u)]}return t}function Ut(n,t){var e=Kf(n,t);return cs(e)?e:i}function Ll(n){var t=Q.call(n,Ot),e=n[Ot];try{n[Ot]=i;var r=!0}catch{}var u=Je.call(n);return r&&(t?n[Ot]=e:delete n[Ot]),u}var Wi=si?function(n){return n==null?[]:(n=j(n),yt(si(n),function(t){return Yu.call(n,t)}))}:Qi,qs=si?function(n){for(var t=[];n;)mt(t,Wi(n)),n=Xe(n);return t}:Qi,vn=mn;(oi&&vn(new oi(new ArrayBuffer(1)))!=zt||_e&&vn(new _e)!=Yn||ai&&vn(ai.resolve())!=uu||Qt&&vn(new Qt)!=Xn||ve&&vn(new ve)!=he)&&(vn=function(n){var t=mn(n),e=t==ot?n.constructor:i,r=e?Bt(e):"";if(r)switch(r){case dc:return zt;case pc:return Yn;case gc:return uu;case _c:return Xn;case vc:return he}return t});function Ol(n,t,e){for(var r=-1,u=e.length;++r<u;){var o=e[r],a=o.size;switch(o.type){case"drop":n+=a;break;case"dropRight":t-=a;break;case"take":t=_n(t,n+a);break;case"takeRight":n=cn(n,t-a);break}}return{start:n,end:t}}function Wl(n){var t=n.match(Ba);return t?t[1].split(Ma):[]}function zs(n,t,e){t=Ct(t,n);for(var r=-1,u=t.length,o=!1;++r<u;){var a=ut(t[r]);if(!(o=n!=null&&e(n,a)))break;n=n[a]}return o||++r!=u?o:(u=n==null?0:n.length,!!u&&Ar(u)&&dt(a,u)&&(U(n)||Mt(n)))}function Dl(n){var t=n.length,e=new n.constructor(t);return t&&typeof n[0]=="string"&&Q.call(n,"index")&&(e.index=n.index,e.input=n.input),e}function Hs(n){return typeof n.constructor=="function"&&!Pe(n)?jt(Xe(n)):{}}function Fl(n,t,e){var r=n.constructor;switch(t){case de:return Pi(n);case wt:case yn:return new r(+n);case zt:return wl(n,e);case Or:case Wr:case Dr:case Fr:case Nr:case Ur:case Br:case Mr:case $r:return Is(n,e);case Yn:return new r;case fe:case le:return new r(n);case ce:return yl(n);case Xn:return new r;case Ue:return ml(n)}}function Nl(n,t){var e=t.length;if(!e)return n;var r=e-1;return t[r]=(e>1?"& ":"")+t[r],t=t.join(e>2?", ":" "),n.replace(Ua,`{
|
|
8
|
+
*/Te.exports,function(d,f){(function(){var i,p="4.17.21",_=200,v="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",x="Expected a function",T="Invalid `variable` option passed into `_.template`",b="__lodash_hash_undefined__",B=500,C="__lodash_placeholder__",q=1,P=2,J=4,Z=1,$=2,wn=1,Pn=2,tt=4,an=8,Et=16,Jn=32,vt=64,An=128,Nn=256,Kt=512,Oe=30,En="...",We=800,kt=16,ae=1,ln=2,Er=3,st=1/0,et=9007199254740991,Tr=17976931348623157e292,qt=NaN,Un=4294967295,De=Un-1,Lr=Un>>>1,V=[["ary",An],["bind",wn],["bindKey",Pn],["curry",an],["curryRight",Et],["flip",Kt],["partial",Jn],["partialRight",vt],["rearg",Nn]],hn="[object Arguments]",Zn="[object Array]",Tt="[object AsyncFunction]",wt="[object Boolean]",yn="[object Date]",xa="[object DOMException]",Fe="[object Error]",Ne="[object Function]",uu="[object GeneratorFunction]",Yn="[object Map]",fe="[object Number]",Sa="[object Null]",ot="[object Object]",su="[object Promise]",Aa="[object Proxy]",ce="[object RegExp]",Xn="[object Set]",le="[object String]",Ue="[object Symbol]",ba="[object Undefined]",he="[object WeakMap]",Ca="[object WeakSet]",de="[object ArrayBuffer]",Ht="[object DataView]",Or="[object Float32Array]",Wr="[object Float64Array]",Dr="[object Int8Array]",Fr="[object Int16Array]",Nr="[object Int32Array]",Ur="[object Uint8Array]",Br="[object Uint8ClampedArray]",Mr="[object Uint16Array]",$r="[object Uint32Array]",Ia=/\b__p \+= '';/g,Ra=/\b(__p \+=) '' \+/g,Pa=/(__e\(.*?\)|\b__t\)) \+\n'';/g,ou=/&(?:amp|lt|gt|quot|#39);/g,au=/[&<>"']/g,Ea=RegExp(ou.source),Ta=RegExp(au.source),La=/<%-([\s\S]+?)%>/g,Oa=/<%([\s\S]+?)%>/g,fu=/<%=([\s\S]+?)%>/g,Wa=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Da=/^\w*$/,Fa=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Kr=/[\\^$.*+?()[\]{}|]/g,Na=RegExp(Kr.source),kr=/^\s+/,Ua=/\s/,Ba=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ma=/\{\n\/\* \[wrapped with (.+)\] \*/,$a=/,? & /,Ka=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ka=/[()=,{}\[\]\/\s]/,qa=/\\(\\)?/g,Ha=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,cu=/\w*$/,za=/^[-+]0x[0-9a-f]+$/i,Ga=/^0b[01]+$/i,Ja=/^\[object .+?Constructor\]$/,Za=/^0o[0-7]+$/i,Ya=/^(?:0|[1-9]\d*)$/,Xa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Be=/($^)/,Qa=/['\n\r\u2028\u2029\\]/g,Me="\\ud800-\\udfff",Va="\\u0300-\\u036f",ja="\\ufe20-\\ufe2f",nf="\\u20d0-\\u20ff",lu=Va+ja+nf,hu="\\u2700-\\u27bf",du="a-z\\xdf-\\xf6\\xf8-\\xff",tf="\\xac\\xb1\\xd7\\xf7",ef="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",rf="\\u2000-\\u206f",uf=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",pu="A-Z\\xc0-\\xd6\\xd8-\\xde",gu="\\ufe0e\\ufe0f",_u=tf+ef+rf+uf,qr="['’]",sf="["+Me+"]",vu="["+_u+"]",$e="["+lu+"]",wu="\\d+",of="["+hu+"]",yu="["+du+"]",mu="[^"+Me+_u+wu+hu+du+pu+"]",Hr="\\ud83c[\\udffb-\\udfff]",af="(?:"+$e+"|"+Hr+")",xu="[^"+Me+"]",zr="(?:\\ud83c[\\udde6-\\uddff]){2}",Gr="[\\ud800-\\udbff][\\udc00-\\udfff]",zt="["+pu+"]",Su="\\u200d",Au="(?:"+yu+"|"+mu+")",ff="(?:"+zt+"|"+mu+")",bu="(?:"+qr+"(?:d|ll|m|re|s|t|ve))?",Cu="(?:"+qr+"(?:D|LL|M|RE|S|T|VE))?",Iu=af+"?",Ru="["+gu+"]?",cf="(?:"+Su+"(?:"+[xu,zr,Gr].join("|")+")"+Ru+Iu+")*",lf="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",hf="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Pu=Ru+Iu+cf,df="(?:"+[of,zr,Gr].join("|")+")"+Pu,pf="(?:"+[xu+$e+"?",$e,zr,Gr,sf].join("|")+")",gf=RegExp(qr,"g"),_f=RegExp($e,"g"),Jr=RegExp(Hr+"(?="+Hr+")|"+pf+Pu,"g"),vf=RegExp([zt+"?"+yu+"+"+bu+"(?="+[vu,zt,"$"].join("|")+")",ff+"+"+Cu+"(?="+[vu,zt+Au,"$"].join("|")+")",zt+"?"+Au+"+"+bu,zt+"+"+Cu,hf,lf,wu,df].join("|"),"g"),wf=RegExp("["+Su+Me+lu+gu+"]"),yf=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,mf=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],xf=-1,tn={};tn[Or]=tn[Wr]=tn[Dr]=tn[Fr]=tn[Nr]=tn[Ur]=tn[Br]=tn[Mr]=tn[$r]=!0,tn[hn]=tn[Zn]=tn[de]=tn[wt]=tn[Ht]=tn[yn]=tn[Fe]=tn[Ne]=tn[Yn]=tn[fe]=tn[ot]=tn[ce]=tn[Xn]=tn[le]=tn[he]=!1;var nn={};nn[hn]=nn[Zn]=nn[de]=nn[Ht]=nn[wt]=nn[yn]=nn[Or]=nn[Wr]=nn[Dr]=nn[Fr]=nn[Nr]=nn[Yn]=nn[fe]=nn[ot]=nn[ce]=nn[Xn]=nn[le]=nn[Ue]=nn[Ur]=nn[Br]=nn[Mr]=nn[$r]=!0,nn[Fe]=nn[Ne]=nn[he]=!1;var Sf={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Af={"&":"&","<":"<",">":">",'"':""","'":"'"},bf={"&":"&","<":"<",">":">",""":'"',"'":"'"},Cf={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},If=parseFloat,Rf=parseInt,Eu=typeof se=="object"&&se&&se.Object===Object&&se,Pf=typeof self=="object"&&self&&self.Object===Object&&self,pn=Eu||Pf||Function("return this")(),Zr=f&&!f.nodeType&&f,Lt=Zr&&!0&&d&&!d.nodeType&&d,Tu=Lt&&Lt.exports===Zr,Yr=Tu&&Eu.process,Bn=function(){try{var l=Lt&&Lt.require&&Lt.require("util").types;return l||Yr&&Yr.binding&&Yr.binding("util")}catch{}}(),Lu=Bn&&Bn.isArrayBuffer,Ou=Bn&&Bn.isDate,Wu=Bn&&Bn.isMap,Du=Bn&&Bn.isRegExp,Fu=Bn&&Bn.isSet,Nu=Bn&&Bn.isTypedArray;function Tn(l,w,g){switch(g.length){case 0:return l.call(w);case 1:return l.call(w,g[0]);case 2:return l.call(w,g[0],g[1]);case 3:return l.call(w,g[0],g[1],g[2])}return l.apply(w,g)}function Ef(l,w,g,I){for(var D=-1,G=l==null?0:l.length;++D<G;){var fn=l[D];w(I,fn,g(fn),l)}return I}function Mn(l,w){for(var g=-1,I=l==null?0:l.length;++g<I&&w(l[g],g,l)!==!1;);return l}function Tf(l,w){for(var g=l==null?0:l.length;g--&&w(l[g],g,l)!==!1;);return l}function Uu(l,w){for(var g=-1,I=l==null?0:l.length;++g<I;)if(!w(l[g],g,l))return!1;return!0}function yt(l,w){for(var g=-1,I=l==null?0:l.length,D=0,G=[];++g<I;){var fn=l[g];w(fn,g,l)&&(G[D++]=fn)}return G}function Ke(l,w){var g=l==null?0:l.length;return!!g&&Gt(l,w,0)>-1}function Xr(l,w,g){for(var I=-1,D=l==null?0:l.length;++I<D;)if(g(w,l[I]))return!0;return!1}function en(l,w){for(var g=-1,I=l==null?0:l.length,D=Array(I);++g<I;)D[g]=w(l[g],g,l);return D}function mt(l,w){for(var g=-1,I=w.length,D=l.length;++g<I;)l[D+g]=w[g];return l}function Qr(l,w,g,I){var D=-1,G=l==null?0:l.length;for(I&&G&&(g=l[++D]);++D<G;)g=w(g,l[D],D,l);return g}function Lf(l,w,g,I){var D=l==null?0:l.length;for(I&&D&&(g=l[--D]);D--;)g=w(g,l[D],D,l);return g}function Vr(l,w){for(var g=-1,I=l==null?0:l.length;++g<I;)if(w(l[g],g,l))return!0;return!1}var Of=jr("length");function Wf(l){return l.split("")}function Df(l){return l.match(Ka)||[]}function Bu(l,w,g){var I;return g(l,function(D,G,fn){if(w(D,G,fn))return I=G,!1}),I}function ke(l,w,g,I){for(var D=l.length,G=g+(I?1:-1);I?G--:++G<D;)if(w(l[G],G,l))return G;return-1}function Gt(l,w,g){return w===w?Gf(l,w,g):ke(l,Mu,g)}function Ff(l,w,g,I){for(var D=g-1,G=l.length;++D<G;)if(I(l[D],w))return D;return-1}function Mu(l){return l!==l}function $u(l,w){var g=l==null?0:l.length;return g?ti(l,w)/g:qt}function jr(l){return function(w){return w==null?i:w[l]}}function ni(l){return function(w){return l==null?i:l[w]}}function Ku(l,w,g,I,D){return D(l,function(G,fn,j){g=I?(I=!1,G):w(g,G,fn,j)}),g}function Nf(l,w){var g=l.length;for(l.sort(w);g--;)l[g]=l[g].value;return l}function ti(l,w){for(var g,I=-1,D=l.length;++I<D;){var G=w(l[I]);G!==i&&(g=g===i?G:g+G)}return g}function ei(l,w){for(var g=-1,I=Array(l);++g<l;)I[g]=w(g);return I}function Uf(l,w){return en(w,function(g){return[g,l[g]]})}function ku(l){return l&&l.slice(0,Gu(l)+1).replace(kr,"")}function Ln(l){return function(w){return l(w)}}function ri(l,w){return en(w,function(g){return l[g]})}function pe(l,w){return l.has(w)}function qu(l,w){for(var g=-1,I=l.length;++g<I&&Gt(w,l[g],0)>-1;);return g}function Hu(l,w){for(var g=l.length;g--&&Gt(w,l[g],0)>-1;);return g}function Bf(l,w){for(var g=l.length,I=0;g--;)l[g]===w&&++I;return I}var Mf=ni(Sf),$f=ni(Af);function Kf(l){return"\\"+Cf[l]}function kf(l,w){return l==null?i:l[w]}function Jt(l){return wf.test(l)}function qf(l){return yf.test(l)}function Hf(l){for(var w,g=[];!(w=l.next()).done;)g.push(w.value);return g}function ii(l){var w=-1,g=Array(l.size);return l.forEach(function(I,D){g[++w]=[D,I]}),g}function zu(l,w){return function(g){return l(w(g))}}function xt(l,w){for(var g=-1,I=l.length,D=0,G=[];++g<I;){var fn=l[g];(fn===w||fn===C)&&(l[g]=C,G[D++]=g)}return G}function qe(l){var w=-1,g=Array(l.size);return l.forEach(function(I){g[++w]=I}),g}function zf(l){var w=-1,g=Array(l.size);return l.forEach(function(I){g[++w]=[I,I]}),g}function Gf(l,w,g){for(var I=g-1,D=l.length;++I<D;)if(l[I]===w)return I;return-1}function Jf(l,w,g){for(var I=g+1;I--;)if(l[I]===w)return I;return I}function Zt(l){return Jt(l)?Yf(l):Of(l)}function Qn(l){return Jt(l)?Xf(l):Wf(l)}function Gu(l){for(var w=l.length;w--&&Ua.test(l.charAt(w)););return w}var Zf=ni(bf);function Yf(l){for(var w=Jr.lastIndex=0;Jr.test(l);)++w;return w}function Xf(l){return l.match(Jr)||[]}function Qf(l){return l.match(vf)||[]}var Vf=function l(w){w=w==null?pn:Yt.defaults(pn.Object(),w,Yt.pick(pn,mf));var g=w.Array,I=w.Date,D=w.Error,G=w.Function,fn=w.Math,j=w.Object,ui=w.RegExp,jf=w.String,$n=w.TypeError,He=g.prototype,nc=G.prototype,Xt=j.prototype,ze=w["__core-js_shared__"],Ge=nc.toString,Q=Xt.hasOwnProperty,tc=0,Ju=function(){var n=/[^.]+$/.exec(ze&&ze.keys&&ze.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""}(),Je=Xt.toString,ec=Ge.call(j),rc=pn._,ic=ui("^"+Ge.call(Q).replace(Kr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ze=Tu?w.Buffer:i,St=w.Symbol,Ye=w.Uint8Array,Zu=Ze?Ze.allocUnsafe:i,Xe=zu(j.getPrototypeOf,j),Yu=j.create,Xu=Xt.propertyIsEnumerable,Qe=He.splice,Qu=St?St.isConcatSpreadable:i,ge=St?St.iterator:i,Ot=St?St.toStringTag:i,Ve=function(){try{var n=Ut(j,"defineProperty");return n({},"",{}),n}catch{}}(),uc=w.clearTimeout!==pn.clearTimeout&&w.clearTimeout,sc=I&&I.now!==pn.Date.now&&I.now,oc=w.setTimeout!==pn.setTimeout&&w.setTimeout,je=fn.ceil,nr=fn.floor,si=j.getOwnPropertySymbols,ac=Ze?Ze.isBuffer:i,Vu=w.isFinite,fc=He.join,cc=zu(j.keys,j),cn=fn.max,_n=fn.min,lc=I.now,hc=w.parseInt,ju=fn.random,dc=He.reverse,oi=Ut(w,"DataView"),_e=Ut(w,"Map"),ai=Ut(w,"Promise"),Qt=Ut(w,"Set"),ve=Ut(w,"WeakMap"),we=Ut(j,"create"),tr=ve&&new ve,Vt={},pc=Bt(oi),gc=Bt(_e),_c=Bt(ai),vc=Bt(Qt),wc=Bt(ve),er=St?St.prototype:i,ye=er?er.valueOf:i,ns=er?er.toString:i;function s(n){if(un(n)&&!F(n)&&!(n instanceof k)){if(n instanceof Kn)return n;if(Q.call(n,"__wrapped__"))return to(n)}return new Kn(n)}var jt=function(){function n(){}return function(t){if(!rn(t))return{};if(Yu)return Yu(t);n.prototype=t;var e=new n;return n.prototype=i,e}}();function rr(){}function Kn(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=i}s.templateSettings={escape:La,evaluate:Oa,interpolate:fu,variable:"",imports:{_:s}},s.prototype=rr.prototype,s.prototype.constructor=s,Kn.prototype=jt(rr.prototype),Kn.prototype.constructor=Kn;function k(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=Un,this.__views__=[]}function yc(){var n=new k(this.__wrapped__);return n.__actions__=bn(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=bn(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=bn(this.__views__),n}function mc(){if(this.__filtered__){var n=new k(this);n.__dir__=-1,n.__filtered__=!0}else n=this.clone(),n.__dir__*=-1;return n}function xc(){var n=this.__wrapped__.value(),t=this.__dir__,e=F(n),r=t<0,u=e?n.length:0,o=Wl(0,u,this.__views__),a=o.start,c=o.end,h=c-a,y=r?c:a-1,m=this.__iteratees__,S=m.length,A=0,R=_n(h,this.__takeCount__);if(!e||!r&&u==h&&R==h)return bs(n,this.__actions__);var L=[];n:for(;h--&&A<R;){y+=t;for(var U=-1,O=n[y];++U<S;){var K=m[U],H=K.iteratee,Dn=K.type,Sn=H(O);if(Dn==ln)O=Sn;else if(!Sn){if(Dn==ae)continue n;break n}}L[A++]=O}return L}k.prototype=jt(rr.prototype),k.prototype.constructor=k;function Wt(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Sc(){this.__data__=we?we(null):{},this.size=0}function Ac(n){var t=this.has(n)&&delete this.__data__[n];return this.size-=t?1:0,t}function bc(n){var t=this.__data__;if(we){var e=t[n];return e===b?i:e}return Q.call(t,n)?t[n]:i}function Cc(n){var t=this.__data__;return we?t[n]!==i:Q.call(t,n)}function Ic(n,t){var e=this.__data__;return this.size+=this.has(n)?0:1,e[n]=we&&t===i?b:t,this}Wt.prototype.clear=Sc,Wt.prototype.delete=Ac,Wt.prototype.get=bc,Wt.prototype.has=Cc,Wt.prototype.set=Ic;function at(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Rc(){this.__data__=[],this.size=0}function Pc(n){var t=this.__data__,e=ir(t,n);if(e<0)return!1;var r=t.length-1;return e==r?t.pop():Qe.call(t,e,1),--this.size,!0}function Ec(n){var t=this.__data__,e=ir(t,n);return e<0?i:t[e][1]}function Tc(n){return ir(this.__data__,n)>-1}function Lc(n,t){var e=this.__data__,r=ir(e,n);return r<0?(++this.size,e.push([n,t])):e[r][1]=t,this}at.prototype.clear=Rc,at.prototype.delete=Pc,at.prototype.get=Ec,at.prototype.has=Tc,at.prototype.set=Lc;function ft(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Oc(){this.size=0,this.__data__={hash:new Wt,map:new(_e||at),string:new Wt}}function Wc(n){var t=_r(this,n).delete(n);return this.size-=t?1:0,t}function Dc(n){return _r(this,n).get(n)}function Fc(n){return _r(this,n).has(n)}function Nc(n,t){var e=_r(this,n),r=e.size;return e.set(n,t),this.size+=e.size==r?0:1,this}ft.prototype.clear=Oc,ft.prototype.delete=Wc,ft.prototype.get=Dc,ft.prototype.has=Fc,ft.prototype.set=Nc;function Dt(n){var t=-1,e=n==null?0:n.length;for(this.__data__=new ft;++t<e;)this.add(n[t])}function Uc(n){return this.__data__.set(n,b),this}function Bc(n){return this.__data__.has(n)}Dt.prototype.add=Dt.prototype.push=Uc,Dt.prototype.has=Bc;function Vn(n){var t=this.__data__=new at(n);this.size=t.size}function Mc(){this.__data__=new at,this.size=0}function $c(n){var t=this.__data__,e=t.delete(n);return this.size=t.size,e}function Kc(n){return this.__data__.get(n)}function kc(n){return this.__data__.has(n)}function qc(n,t){var e=this.__data__;if(e instanceof at){var r=e.__data__;if(!_e||r.length<_-1)return r.push([n,t]),this.size=++e.size,this;e=this.__data__=new ft(r)}return e.set(n,t),this.size=e.size,this}Vn.prototype.clear=Mc,Vn.prototype.delete=$c,Vn.prototype.get=Kc,Vn.prototype.has=kc,Vn.prototype.set=qc;function ts(n,t){var e=F(n),r=!e&&Mt(n),u=!e&&!r&&Rt(n),o=!e&&!r&&!u&&re(n),a=e||r||u||o,c=a?ei(n.length,jf):[],h=c.length;for(var y in n)(t||Q.call(n,y))&&!(a&&(y=="length"||u&&(y=="offset"||y=="parent")||o&&(y=="buffer"||y=="byteLength"||y=="byteOffset")||dt(y,h)))&&c.push(y);return c}function es(n){var t=n.length;return t?n[yi(0,t-1)]:i}function Hc(n,t){return vr(bn(n),Ft(t,0,n.length))}function zc(n){return vr(bn(n))}function fi(n,t,e){(e!==i&&!jn(n[t],e)||e===i&&!(t in n))&&ct(n,t,e)}function me(n,t,e){var r=n[t];(!(Q.call(n,t)&&jn(r,e))||e===i&&!(t in n))&&ct(n,t,e)}function ir(n,t){for(var e=n.length;e--;)if(jn(n[e][0],t))return e;return-1}function Gc(n,t,e,r){return At(n,function(u,o,a){t(r,u,e(u),a)}),r}function rs(n,t){return n&&it(t,dn(t),n)}function Jc(n,t){return n&&it(t,In(t),n)}function ct(n,t,e){t=="__proto__"&&Ve?Ve(n,t,{configurable:!0,enumerable:!0,value:e,writable:!0}):n[t]=e}function ci(n,t){for(var e=-1,r=t.length,u=g(r),o=n==null;++e<r;)u[e]=o?i:Hi(n,t[e]);return u}function Ft(n,t,e){return n===n&&(e!==i&&(n=n<=e?n:e),t!==i&&(n=n>=t?n:t)),n}function kn(n,t,e,r,u,o){var a,c=t&q,h=t&P,y=t&J;if(e&&(a=u?e(n,r,u,o):e(n)),a!==i)return a;if(!rn(n))return n;var m=F(n);if(m){if(a=Fl(n),!c)return bn(n,a)}else{var S=vn(n),A=S==Ne||S==uu;if(Rt(n))return Rs(n,c);if(S==ot||S==hn||A&&!u){if(a=h||A?{}:Gs(n),!c)return h?bl(n,Jc(a,n)):Al(n,rs(a,n))}else{if(!nn[S])return u?n:{};a=Nl(n,S,c)}}o||(o=new Vn);var R=o.get(n);if(R)return R;o.set(n,a),So(n)?n.forEach(function(O){a.add(kn(O,t,e,O,n,o))}):mo(n)&&n.forEach(function(O,K){a.set(K,kn(O,t,e,K,n,o))});var L=y?h?Ti:Ei:h?In:dn,U=m?i:L(n);return Mn(U||n,function(O,K){U&&(K=O,O=n[K]),me(a,K,kn(O,t,e,K,n,o))}),a}function Zc(n){var t=dn(n);return function(e){return is(e,n,t)}}function is(n,t,e){var r=e.length;if(n==null)return!r;for(n=j(n);r--;){var u=e[r],o=t[u],a=n[u];if(a===i&&!(u in n)||!o(a))return!1}return!0}function us(n,t,e){if(typeof n!="function")throw new $n(x);return Re(function(){n.apply(i,e)},t)}function xe(n,t,e,r){var u=-1,o=Ke,a=!0,c=n.length,h=[],y=t.length;if(!c)return h;e&&(t=en(t,Ln(e))),r?(o=Xr,a=!1):t.length>=_&&(o=pe,a=!1,t=new Dt(t));n:for(;++u<c;){var m=n[u],S=e==null?m:e(m);if(m=r||m!==0?m:0,a&&S===S){for(var A=y;A--;)if(t[A]===S)continue n;h.push(m)}else o(t,S,r)||h.push(m)}return h}var At=Os(rt),ss=Os(hi,!0);function Yc(n,t){var e=!0;return At(n,function(r,u,o){return e=!!t(r,u,o),e}),e}function ur(n,t,e){for(var r=-1,u=n.length;++r<u;){var o=n[r],a=t(o);if(a!=null&&(c===i?a===a&&!Wn(a):e(a,c)))var c=a,h=o}return h}function Xc(n,t,e,r){var u=n.length;for(e=N(e),e<0&&(e=-e>u?0:u+e),r=r===i||r>u?u:N(r),r<0&&(r+=u),r=e>r?0:bo(r);e<r;)n[e++]=t;return n}function os(n,t){var e=[];return At(n,function(r,u,o){t(r,u,o)&&e.push(r)}),e}function gn(n,t,e,r,u){var o=-1,a=n.length;for(e||(e=Bl),u||(u=[]);++o<a;){var c=n[o];t>0&&e(c)?t>1?gn(c,t-1,e,r,u):mt(u,c):r||(u[u.length]=c)}return u}var li=Ws(),as=Ws(!0);function rt(n,t){return n&&li(n,t,dn)}function hi(n,t){return n&&as(n,t,dn)}function sr(n,t){return yt(t,function(e){return pt(n[e])})}function Nt(n,t){t=Ct(t,n);for(var e=0,r=t.length;n!=null&&e<r;)n=n[ut(t[e++])];return e&&e==r?n:i}function fs(n,t,e){var r=t(n);return F(n)?r:mt(r,e(n))}function mn(n){return n==null?n===i?ba:Sa:Ot&&Ot in j(n)?Ol(n):zl(n)}function di(n,t){return n>t}function Qc(n,t){return n!=null&&Q.call(n,t)}function Vc(n,t){return n!=null&&t in j(n)}function jc(n,t,e){return n>=_n(t,e)&&n<cn(t,e)}function pi(n,t,e){for(var r=e?Xr:Ke,u=n[0].length,o=n.length,a=o,c=g(o),h=1/0,y=[];a--;){var m=n[a];a&&t&&(m=en(m,Ln(t))),h=_n(m.length,h),c[a]=!e&&(t||u>=120&&m.length>=120)?new Dt(a&&m):i}m=n[0];var S=-1,A=c[0];n:for(;++S<u&&y.length<h;){var R=m[S],L=t?t(R):R;if(R=e||R!==0?R:0,!(A?pe(A,L):r(y,L,e))){for(a=o;--a;){var U=c[a];if(!(U?pe(U,L):r(n[a],L,e)))continue n}A&&A.push(L),y.push(R)}}return y}function nl(n,t,e,r){return rt(n,function(u,o,a){t(r,e(u),o,a)}),r}function Se(n,t,e){t=Ct(t,n),n=Xs(n,t);var r=n==null?n:n[ut(Hn(t))];return r==null?i:Tn(r,n,e)}function cs(n){return un(n)&&mn(n)==hn}function tl(n){return un(n)&&mn(n)==de}function el(n){return un(n)&&mn(n)==yn}function Ae(n,t,e,r,u){return n===t?!0:n==null||t==null||!un(n)&&!un(t)?n!==n&&t!==t:rl(n,t,e,r,Ae,u)}function rl(n,t,e,r,u,o){var a=F(n),c=F(t),h=a?Zn:vn(n),y=c?Zn:vn(t);h=h==hn?ot:h,y=y==hn?ot:y;var m=h==ot,S=y==ot,A=h==y;if(A&&Rt(n)){if(!Rt(t))return!1;a=!0,m=!1}if(A&&!m)return o||(o=new Vn),a||re(n)?qs(n,t,e,r,u,o):Tl(n,t,h,e,r,u,o);if(!(e&Z)){var R=m&&Q.call(n,"__wrapped__"),L=S&&Q.call(t,"__wrapped__");if(R||L){var U=R?n.value():n,O=L?t.value():t;return o||(o=new Vn),u(U,O,e,r,o)}}return A?(o||(o=new Vn),Ll(n,t,e,r,u,o)):!1}function il(n){return un(n)&&vn(n)==Yn}function gi(n,t,e,r){var u=e.length,o=u,a=!r;if(n==null)return!o;for(n=j(n);u--;){var c=e[u];if(a&&c[2]?c[1]!==n[c[0]]:!(c[0]in n))return!1}for(;++u<o;){c=e[u];var h=c[0],y=n[h],m=c[1];if(a&&c[2]){if(y===i&&!(h in n))return!1}else{var S=new Vn;if(r)var A=r(y,m,h,n,t,S);if(!(A===i?Ae(m,y,Z|$,r,S):A))return!1}}return!0}function ls(n){if(!rn(n)||$l(n))return!1;var t=pt(n)?ic:Ja;return t.test(Bt(n))}function ul(n){return un(n)&&mn(n)==ce}function sl(n){return un(n)&&vn(n)==Xn}function ol(n){return un(n)&&Ar(n.length)&&!!tn[mn(n)]}function hs(n){return typeof n=="function"?n:n==null?Rn:typeof n=="object"?F(n)?gs(n[0],n[1]):ps(n):Fo(n)}function _i(n){if(!Ie(n))return cc(n);var t=[];for(var e in j(n))Q.call(n,e)&&e!="constructor"&&t.push(e);return t}function al(n){if(!rn(n))return Hl(n);var t=Ie(n),e=[];for(var r in n)r=="constructor"&&(t||!Q.call(n,r))||e.push(r);return e}function vi(n,t){return n<t}function ds(n,t){var e=-1,r=Cn(n)?g(n.length):[];return At(n,function(u,o,a){r[++e]=t(u,o,a)}),r}function ps(n){var t=Oi(n);return t.length==1&&t[0][2]?Zs(t[0][0],t[0][1]):function(e){return e===n||gi(e,n,t)}}function gs(n,t){return Di(n)&&Js(t)?Zs(ut(n),t):function(e){var r=Hi(e,n);return r===i&&r===t?zi(e,n):Ae(t,r,Z|$)}}function or(n,t,e,r,u){n!==t&&li(t,function(o,a){if(u||(u=new Vn),rn(o))fl(n,t,a,e,or,r,u);else{var c=r?r(Ni(n,a),o,a+"",n,t,u):i;c===i&&(c=o),fi(n,a,c)}},In)}function fl(n,t,e,r,u,o,a){var c=Ni(n,e),h=Ni(t,e),y=a.get(h);if(y){fi(n,e,y);return}var m=o?o(c,h,e+"",n,t,a):i,S=m===i;if(S){var A=F(h),R=!A&&Rt(h),L=!A&&!R&&re(h);m=h,A||R||L?F(c)?m=c:sn(c)?m=bn(c):R?(S=!1,m=Rs(h,!0)):L?(S=!1,m=Ps(h,!0)):m=[]:Pe(h)||Mt(h)?(m=c,Mt(c)?m=Co(c):(!rn(c)||pt(c))&&(m=Gs(h))):S=!1}S&&(a.set(h,m),u(m,h,r,o,a),a.delete(h)),fi(n,e,m)}function _s(n,t){var e=n.length;if(e)return t+=t<0?e:0,dt(t,e)?n[t]:i}function vs(n,t,e){t.length?t=en(t,function(o){return F(o)?function(a){return Nt(a,o.length===1?o[0]:o)}:o}):t=[Rn];var r=-1;t=en(t,Ln(E()));var u=ds(n,function(o,a,c){var h=en(t,function(y){return y(o)});return{criteria:h,index:++r,value:o}});return Nf(u,function(o,a){return Sl(o,a,e)})}function cl(n,t){return ws(n,t,function(e,r){return zi(n,r)})}function ws(n,t,e){for(var r=-1,u=t.length,o={};++r<u;){var a=t[r],c=Nt(n,a);e(c,a)&&be(o,Ct(a,n),c)}return o}function ll(n){return function(t){return Nt(t,n)}}function wi(n,t,e,r){var u=r?Ff:Gt,o=-1,a=t.length,c=n;for(n===t&&(t=bn(t)),e&&(c=en(n,Ln(e)));++o<a;)for(var h=0,y=t[o],m=e?e(y):y;(h=u(c,m,h,r))>-1;)c!==n&&Qe.call(c,h,1),Qe.call(n,h,1);return n}function ys(n,t){for(var e=n?t.length:0,r=e-1;e--;){var u=t[e];if(e==r||u!==o){var o=u;dt(u)?Qe.call(n,u,1):Si(n,u)}}return n}function yi(n,t){return n+nr(ju()*(t-n+1))}function hl(n,t,e,r){for(var u=-1,o=cn(je((t-n)/(e||1)),0),a=g(o);o--;)a[r?o:++u]=n,n+=e;return a}function mi(n,t){var e="";if(!n||t<1||t>et)return e;do t%2&&(e+=n),t=nr(t/2),t&&(n+=n);while(t);return e}function M(n,t){return Ui(Ys(n,t,Rn),n+"")}function dl(n){return es(ie(n))}function pl(n,t){var e=ie(n);return vr(e,Ft(t,0,e.length))}function be(n,t,e,r){if(!rn(n))return n;t=Ct(t,n);for(var u=-1,o=t.length,a=o-1,c=n;c!=null&&++u<o;){var h=ut(t[u]),y=e;if(h==="__proto__"||h==="constructor"||h==="prototype")return n;if(u!=a){var m=c[h];y=r?r(m,h,c):i,y===i&&(y=rn(m)?m:dt(t[u+1])?[]:{})}me(c,h,y),c=c[h]}return n}var ms=tr?function(n,t){return tr.set(n,t),n}:Rn,gl=Ve?function(n,t){return Ve(n,"toString",{configurable:!0,enumerable:!1,value:Ji(t),writable:!0})}:Rn;function _l(n){return vr(ie(n))}function qn(n,t,e){var r=-1,u=n.length;t<0&&(t=-t>u?0:u+t),e=e>u?u:e,e<0&&(e+=u),u=t>e?0:e-t>>>0,t>>>=0;for(var o=g(u);++r<u;)o[r]=n[r+t];return o}function vl(n,t){var e;return At(n,function(r,u,o){return e=t(r,u,o),!e}),!!e}function ar(n,t,e){var r=0,u=n==null?r:n.length;if(typeof t=="number"&&t===t&&u<=Lr){for(;r<u;){var o=r+u>>>1,a=n[o];a!==null&&!Wn(a)&&(e?a<=t:a<t)?r=o+1:u=o}return u}return xi(n,t,Rn,e)}function xi(n,t,e,r){var u=0,o=n==null?0:n.length;if(o===0)return 0;t=e(t);for(var a=t!==t,c=t===null,h=Wn(t),y=t===i;u<o;){var m=nr((u+o)/2),S=e(n[m]),A=S!==i,R=S===null,L=S===S,U=Wn(S);if(a)var O=r||L;else y?O=L&&(r||A):c?O=L&&A&&(r||!R):h?O=L&&A&&!R&&(r||!U):R||U?O=!1:O=r?S<=t:S<t;O?u=m+1:o=m}return _n(o,De)}function xs(n,t){for(var e=-1,r=n.length,u=0,o=[];++e<r;){var a=n[e],c=t?t(a):a;if(!e||!jn(c,h)){var h=c;o[u++]=a===0?0:a}}return o}function Ss(n){return typeof n=="number"?n:Wn(n)?qt:+n}function On(n){if(typeof n=="string")return n;if(F(n))return en(n,On)+"";if(Wn(n))return ns?ns.call(n):"";var t=n+"";return t=="0"&&1/n==-st?"-0":t}function bt(n,t,e){var r=-1,u=Ke,o=n.length,a=!0,c=[],h=c;if(e)a=!1,u=Xr;else if(o>=_){var y=t?null:Pl(n);if(y)return qe(y);a=!1,u=pe,h=new Dt}else h=t?[]:c;n:for(;++r<o;){var m=n[r],S=t?t(m):m;if(m=e||m!==0?m:0,a&&S===S){for(var A=h.length;A--;)if(h[A]===S)continue n;t&&h.push(S),c.push(m)}else u(h,S,e)||(h!==c&&h.push(S),c.push(m))}return c}function Si(n,t){return t=Ct(t,n),n=Xs(n,t),n==null||delete n[ut(Hn(t))]}function As(n,t,e,r){return be(n,t,e(Nt(n,t)),r)}function fr(n,t,e,r){for(var u=n.length,o=r?u:-1;(r?o--:++o<u)&&t(n[o],o,n););return e?qn(n,r?0:o,r?o+1:u):qn(n,r?o+1:0,r?u:o)}function bs(n,t){var e=n;return e instanceof k&&(e=e.value()),Qr(t,function(r,u){return u.func.apply(u.thisArg,mt([r],u.args))},e)}function Ai(n,t,e){var r=n.length;if(r<2)return r?bt(n[0]):[];for(var u=-1,o=g(r);++u<r;)for(var a=n[u],c=-1;++c<r;)c!=u&&(o[u]=xe(o[u]||a,n[c],t,e));return bt(gn(o,1),t,e)}function Cs(n,t,e){for(var r=-1,u=n.length,o=t.length,a={};++r<u;){var c=r<o?t[r]:i;e(a,n[r],c)}return a}function bi(n){return sn(n)?n:[]}function Ci(n){return typeof n=="function"?n:Rn}function Ct(n,t){return F(n)?n:Di(n,t)?[n]:no(Y(n))}var wl=M;function It(n,t,e){var r=n.length;return e=e===i?r:e,!t&&e>=r?n:qn(n,t,e)}var Is=uc||function(n){return pn.clearTimeout(n)};function Rs(n,t){if(t)return n.slice();var e=n.length,r=Zu?Zu(e):new n.constructor(e);return n.copy(r),r}function Ii(n){var t=new n.constructor(n.byteLength);return new Ye(t).set(new Ye(n)),t}function yl(n,t){var e=t?Ii(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}function ml(n){var t=new n.constructor(n.source,cu.exec(n));return t.lastIndex=n.lastIndex,t}function xl(n){return ye?j(ye.call(n)):{}}function Ps(n,t){var e=t?Ii(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.length)}function Es(n,t){if(n!==t){var e=n!==i,r=n===null,u=n===n,o=Wn(n),a=t!==i,c=t===null,h=t===t,y=Wn(t);if(!c&&!y&&!o&&n>t||o&&a&&h&&!c&&!y||r&&a&&h||!e&&h||!u)return 1;if(!r&&!o&&!y&&n<t||y&&e&&u&&!r&&!o||c&&e&&u||!a&&u||!h)return-1}return 0}function Sl(n,t,e){for(var r=-1,u=n.criteria,o=t.criteria,a=u.length,c=e.length;++r<a;){var h=Es(u[r],o[r]);if(h){if(r>=c)return h;var y=e[r];return h*(y=="desc"?-1:1)}}return n.index-t.index}function Ts(n,t,e,r){for(var u=-1,o=n.length,a=e.length,c=-1,h=t.length,y=cn(o-a,0),m=g(h+y),S=!r;++c<h;)m[c]=t[c];for(;++u<a;)(S||u<o)&&(m[e[u]]=n[u]);for(;y--;)m[c++]=n[u++];return m}function Ls(n,t,e,r){for(var u=-1,o=n.length,a=-1,c=e.length,h=-1,y=t.length,m=cn(o-c,0),S=g(m+y),A=!r;++u<m;)S[u]=n[u];for(var R=u;++h<y;)S[R+h]=t[h];for(;++a<c;)(A||u<o)&&(S[R+e[a]]=n[u++]);return S}function bn(n,t){var e=-1,r=n.length;for(t||(t=g(r));++e<r;)t[e]=n[e];return t}function it(n,t,e,r){var u=!e;e||(e={});for(var o=-1,a=t.length;++o<a;){var c=t[o],h=r?r(e[c],n[c],c,e,n):i;h===i&&(h=n[c]),u?ct(e,c,h):me(e,c,h)}return e}function Al(n,t){return it(n,Wi(n),t)}function bl(n,t){return it(n,Hs(n),t)}function cr(n,t){return function(e,r){var u=F(e)?Ef:Gc,o=t?t():{};return u(e,n,E(r,2),o)}}function ne(n){return M(function(t,e){var r=-1,u=e.length,o=u>1?e[u-1]:i,a=u>2?e[2]:i;for(o=n.length>3&&typeof o=="function"?(u--,o):i,a&&xn(e[0],e[1],a)&&(o=u<3?i:o,u=1),t=j(t);++r<u;){var c=e[r];c&&n(t,c,r,o)}return t})}function Os(n,t){return function(e,r){if(e==null)return e;if(!Cn(e))return n(e,r);for(var u=e.length,o=t?u:-1,a=j(e);(t?o--:++o<u)&&r(a[o],o,a)!==!1;);return e}}function Ws(n){return function(t,e,r){for(var u=-1,o=j(t),a=r(t),c=a.length;c--;){var h=a[n?c:++u];if(e(o[h],h,o)===!1)break}return t}}function Cl(n,t,e){var r=t&wn,u=Ce(n);function o(){var a=this&&this!==pn&&this instanceof o?u:n;return a.apply(r?e:this,arguments)}return o}function Ds(n){return function(t){t=Y(t);var e=Jt(t)?Qn(t):i,r=e?e[0]:t.charAt(0),u=e?It(e,1).join(""):t.slice(1);return r[n]()+u}}function te(n){return function(t){return Qr(Wo(Oo(t).replace(gf,"")),n,"")}}function Ce(n){return function(){var t=arguments;switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5:return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var e=jt(n.prototype),r=n.apply(e,t);return rn(r)?r:e}}function Il(n,t,e){var r=Ce(n);function u(){for(var o=arguments.length,a=g(o),c=o,h=ee(u);c--;)a[c]=arguments[c];var y=o<3&&a[0]!==h&&a[o-1]!==h?[]:xt(a,h);if(o-=y.length,o<e)return Ms(n,t,lr,u.placeholder,i,a,y,i,i,e-o);var m=this&&this!==pn&&this instanceof u?r:n;return Tn(m,this,a)}return u}function Fs(n){return function(t,e,r){var u=j(t);if(!Cn(t)){var o=E(e,3);t=dn(t),e=function(c){return o(u[c],c,u)}}var a=n(t,e,r);return a>-1?u[o?t[a]:a]:i}}function Ns(n){return ht(function(t){var e=t.length,r=e,u=Kn.prototype.thru;for(n&&t.reverse();r--;){var o=t[r];if(typeof o!="function")throw new $n(x);if(u&&!a&&gr(o)=="wrapper")var a=new Kn([],!0)}for(r=a?r:e;++r<e;){o=t[r];var c=gr(o),h=c=="wrapper"?Li(o):i;h&&Fi(h[0])&&h[1]==(An|an|Jn|Nn)&&!h[4].length&&h[9]==1?a=a[gr(h[0])].apply(a,h[3]):a=o.length==1&&Fi(o)?a[c]():a.thru(o)}return function(){var y=arguments,m=y[0];if(a&&y.length==1&&F(m))return a.plant(m).value();for(var S=0,A=e?t[S].apply(this,y):m;++S<e;)A=t[S].call(this,A);return A}})}function lr(n,t,e,r,u,o,a,c,h,y){var m=t&An,S=t&wn,A=t&Pn,R=t&(an|Et),L=t&Kt,U=A?i:Ce(n);function O(){for(var K=arguments.length,H=g(K),Dn=K;Dn--;)H[Dn]=arguments[Dn];if(R)var Sn=ee(O),Fn=Bf(H,Sn);if(r&&(H=Ts(H,r,u,R)),o&&(H=Ls(H,o,a,R)),K-=Fn,R&&K<y){var on=xt(H,Sn);return Ms(n,t,lr,O.placeholder,e,H,on,c,h,y-K)}var nt=S?e:this,_t=A?nt[n]:n;return K=H.length,c?H=Gl(H,c):L&&K>1&&H.reverse(),m&&h<K&&(H.length=h),this&&this!==pn&&this instanceof O&&(_t=U||Ce(_t)),_t.apply(nt,H)}return O}function Us(n,t){return function(e,r){return nl(e,n,t(r),{})}}function hr(n,t){return function(e,r){var u;if(e===i&&r===i)return t;if(e!==i&&(u=e),r!==i){if(u===i)return r;typeof e=="string"||typeof r=="string"?(e=On(e),r=On(r)):(e=Ss(e),r=Ss(r)),u=n(e,r)}return u}}function Ri(n){return ht(function(t){return t=en(t,Ln(E())),M(function(e){var r=this;return n(t,function(u){return Tn(u,r,e)})})})}function dr(n,t){t=t===i?" ":On(t);var e=t.length;if(e<2)return e?mi(t,n):t;var r=mi(t,je(n/Zt(t)));return Jt(t)?It(Qn(r),0,n).join(""):r.slice(0,n)}function Rl(n,t,e,r){var u=t&wn,o=Ce(n);function a(){for(var c=-1,h=arguments.length,y=-1,m=r.length,S=g(m+h),A=this&&this!==pn&&this instanceof a?o:n;++y<m;)S[y]=r[y];for(;h--;)S[y++]=arguments[++c];return Tn(A,u?e:this,S)}return a}function Bs(n){return function(t,e,r){return r&&typeof r!="number"&&xn(t,e,r)&&(e=r=i),t=gt(t),e===i?(e=t,t=0):e=gt(e),r=r===i?t<e?1:-1:gt(r),hl(t,e,r,n)}}function pr(n){return function(t,e){return typeof t=="string"&&typeof e=="string"||(t=zn(t),e=zn(e)),n(t,e)}}function Ms(n,t,e,r,u,o,a,c,h,y){var m=t&an,S=m?a:i,A=m?i:a,R=m?o:i,L=m?i:o;t|=m?Jn:vt,t&=~(m?vt:Jn),t&tt||(t&=-4);var U=[n,t,u,R,S,L,A,c,h,y],O=e.apply(i,U);return Fi(n)&&Qs(O,U),O.placeholder=r,Vs(O,n,t)}function Pi(n){var t=fn[n];return function(e,r){if(e=zn(e),r=r==null?0:_n(N(r),292),r&&Vu(e)){var u=(Y(e)+"e").split("e"),o=t(u[0]+"e"+(+u[1]+r));return u=(Y(o)+"e").split("e"),+(u[0]+"e"+(+u[1]-r))}return t(e)}}var Pl=Qt&&1/qe(new Qt([,-0]))[1]==st?function(n){return new Qt(n)}:Xi;function $s(n){return function(t){var e=vn(t);return e==Yn?ii(t):e==Xn?zf(t):Uf(t,n(t))}}function lt(n,t,e,r,u,o,a,c){var h=t&Pn;if(!h&&typeof n!="function")throw new $n(x);var y=r?r.length:0;if(y||(t&=-97,r=u=i),a=a===i?a:cn(N(a),0),c=c===i?c:N(c),y-=u?u.length:0,t&vt){var m=r,S=u;r=u=i}var A=h?i:Li(n),R=[n,t,e,r,u,m,S,o,a,c];if(A&&ql(R,A),n=R[0],t=R[1],e=R[2],r=R[3],u=R[4],c=R[9]=R[9]===i?h?0:n.length:cn(R[9]-y,0),!c&&t&(an|Et)&&(t&=-25),!t||t==wn)var L=Cl(n,t,e);else t==an||t==Et?L=Il(n,t,c):(t==Jn||t==(wn|Jn))&&!u.length?L=Rl(n,t,e,r):L=lr.apply(i,R);var U=A?ms:Qs;return Vs(U(L,R),n,t)}function Ks(n,t,e,r){return n===i||jn(n,Xt[e])&&!Q.call(r,e)?t:n}function ks(n,t,e,r,u,o){return rn(n)&&rn(t)&&(o.set(t,n),or(n,t,i,ks,o),o.delete(t)),n}function El(n){return Pe(n)?i:n}function qs(n,t,e,r,u,o){var a=e&Z,c=n.length,h=t.length;if(c!=h&&!(a&&h>c))return!1;var y=o.get(n),m=o.get(t);if(y&&m)return y==t&&m==n;var S=-1,A=!0,R=e&$?new Dt:i;for(o.set(n,t),o.set(t,n);++S<c;){var L=n[S],U=t[S];if(r)var O=a?r(U,L,S,t,n,o):r(L,U,S,n,t,o);if(O!==i){if(O)continue;A=!1;break}if(R){if(!Vr(t,function(K,H){if(!pe(R,H)&&(L===K||u(L,K,e,r,o)))return R.push(H)})){A=!1;break}}else if(!(L===U||u(L,U,e,r,o))){A=!1;break}}return o.delete(n),o.delete(t),A}function Tl(n,t,e,r,u,o,a){switch(e){case Ht:if(n.byteLength!=t.byteLength||n.byteOffset!=t.byteOffset)return!1;n=n.buffer,t=t.buffer;case de:return!(n.byteLength!=t.byteLength||!o(new Ye(n),new Ye(t)));case wt:case yn:case fe:return jn(+n,+t);case Fe:return n.name==t.name&&n.message==t.message;case ce:case le:return n==t+"";case Yn:var c=ii;case Xn:var h=r&Z;if(c||(c=qe),n.size!=t.size&&!h)return!1;var y=a.get(n);if(y)return y==t;r|=$,a.set(n,t);var m=qs(c(n),c(t),r,u,o,a);return a.delete(n),m;case Ue:if(ye)return ye.call(n)==ye.call(t)}return!1}function Ll(n,t,e,r,u,o){var a=e&Z,c=Ei(n),h=c.length,y=Ei(t),m=y.length;if(h!=m&&!a)return!1;for(var S=h;S--;){var A=c[S];if(!(a?A in t:Q.call(t,A)))return!1}var R=o.get(n),L=o.get(t);if(R&&L)return R==t&&L==n;var U=!0;o.set(n,t),o.set(t,n);for(var O=a;++S<h;){A=c[S];var K=n[A],H=t[A];if(r)var Dn=a?r(H,K,A,t,n,o):r(K,H,A,n,t,o);if(!(Dn===i?K===H||u(K,H,e,r,o):Dn)){U=!1;break}O||(O=A=="constructor")}if(U&&!O){var Sn=n.constructor,Fn=t.constructor;Sn!=Fn&&"constructor"in n&&"constructor"in t&&!(typeof Sn=="function"&&Sn instanceof Sn&&typeof Fn=="function"&&Fn instanceof Fn)&&(U=!1)}return o.delete(n),o.delete(t),U}function ht(n){return Ui(Ys(n,i,io),n+"")}function Ei(n){return fs(n,dn,Wi)}function Ti(n){return fs(n,In,Hs)}var Li=tr?function(n){return tr.get(n)}:Xi;function gr(n){for(var t=n.name+"",e=Vt[t],r=Q.call(Vt,t)?e.length:0;r--;){var u=e[r],o=u.func;if(o==null||o==n)return u.name}return t}function ee(n){var t=Q.call(s,"placeholder")?s:n;return t.placeholder}function E(){var n=s.iteratee||Zi;return n=n===Zi?hs:n,arguments.length?n(arguments[0],arguments[1]):n}function _r(n,t){var e=n.__data__;return Ml(t)?e[typeof t=="string"?"string":"hash"]:e.map}function Oi(n){for(var t=dn(n),e=t.length;e--;){var r=t[e],u=n[r];t[e]=[r,u,Js(u)]}return t}function Ut(n,t){var e=kf(n,t);return ls(e)?e:i}function Ol(n){var t=Q.call(n,Ot),e=n[Ot];try{n[Ot]=i;var r=!0}catch{}var u=Je.call(n);return r&&(t?n[Ot]=e:delete n[Ot]),u}var Wi=si?function(n){return n==null?[]:(n=j(n),yt(si(n),function(t){return Xu.call(n,t)}))}:Qi,Hs=si?function(n){for(var t=[];n;)mt(t,Wi(n)),n=Xe(n);return t}:Qi,vn=mn;(oi&&vn(new oi(new ArrayBuffer(1)))!=Ht||_e&&vn(new _e)!=Yn||ai&&vn(ai.resolve())!=su||Qt&&vn(new Qt)!=Xn||ve&&vn(new ve)!=he)&&(vn=function(n){var t=mn(n),e=t==ot?n.constructor:i,r=e?Bt(e):"";if(r)switch(r){case pc:return Ht;case gc:return Yn;case _c:return su;case vc:return Xn;case wc:return he}return t});function Wl(n,t,e){for(var r=-1,u=e.length;++r<u;){var o=e[r],a=o.size;switch(o.type){case"drop":n+=a;break;case"dropRight":t-=a;break;case"take":t=_n(t,n+a);break;case"takeRight":n=cn(n,t-a);break}}return{start:n,end:t}}function Dl(n){var t=n.match(Ma);return t?t[1].split($a):[]}function zs(n,t,e){t=Ct(t,n);for(var r=-1,u=t.length,o=!1;++r<u;){var a=ut(t[r]);if(!(o=n!=null&&e(n,a)))break;n=n[a]}return o||++r!=u?o:(u=n==null?0:n.length,!!u&&Ar(u)&&dt(a,u)&&(F(n)||Mt(n)))}function Fl(n){var t=n.length,e=new n.constructor(t);return t&&typeof n[0]=="string"&&Q.call(n,"index")&&(e.index=n.index,e.input=n.input),e}function Gs(n){return typeof n.constructor=="function"&&!Ie(n)?jt(Xe(n)):{}}function Nl(n,t,e){var r=n.constructor;switch(t){case de:return Ii(n);case wt:case yn:return new r(+n);case Ht:return yl(n,e);case Or:case Wr:case Dr:case Fr:case Nr:case Ur:case Br:case Mr:case $r:return Ps(n,e);case Yn:return new r;case fe:case le:return new r(n);case ce:return ml(n);case Xn:return new r;case Ue:return xl(n)}}function Ul(n,t){var e=t.length;if(!e)return n;var r=e-1;return t[r]=(e>1?"& ":"")+t[r],t=t.join(e>2?", ":" "),n.replace(Ba,`{
|
|
9
9
|
/* [wrapped with `+t+`] */
|
|
10
|
-
`)}function Ul(n){return U(n)||Mt(n)||!!(Xu&&n&&n[Xu])}function dt(n,t){var e=typeof n;return t=t??et,!!t&&(e=="number"||e!="symbol"&&Za.test(n))&&n>-1&&n%1==0&&n<t}function xn(n,t,e){if(!rn(e))return!1;var r=typeof t;return(r=="number"?Cn(e)&&dt(t,e.length):r=="string"&&t in e)?jn(e[t],n):!1}function Di(n,t){if(U(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||Wn(n)?!0:Wa.test(n)||!Oa.test(n)||t!=null&&n in j(t)}function Bl(n){var t=typeof n;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?n!=="__proto__":n===null}function Fi(n){var t=gr(n),e=s[t];if(typeof e!="function"||!(t in z.prototype))return!1;if(n===e)return!0;var r=Li(e);return!!r&&n===r[0]}function Ml(n){return!!Gu&&Gu in n}var $l=He?pt:Vi;function Pe(n){var t=n&&n.constructor,e=typeof t=="function"&&t.prototype||Xt;return n===e}function Gs(n){return n===n&&!rn(n)}function Js(n,t){return function(e){return e==null?!1:e[n]===t&&(t!==i||n in j(e))}}function Kl(n){var t=xr(n,function(r){return e.size===M&&e.clear(),r}),e=t.cache;return t}function kl(n,t){var e=n[1],r=t[1],u=e|r,o=u<(wn|Rn|An),a=r==An&&e==an||r==An&&e==Nn&&n[7].length<=t[8]||r==(An|Nn)&&t[7].length<=t[8]&&e==an;if(!(o||a))return n;r&wn&&(n[2]=t[2],u|=e&wn?0:tt);var c=t[3];if(c){var h=n[3];n[3]=h?Es(h,c,t[4]):c,n[4]=h?xt(n[3],R):t[4]}return c=t[5],c&&(h=n[5],n[5]=h?Ts(h,c,t[6]):c,n[6]=h?xt(n[5],R):t[6]),c=t[7],c&&(n[7]=c),r&An&&(n[8]=n[8]==null?t[8]:_n(n[8],t[8])),n[9]==null&&(n[9]=t[9]),n[0]=t[0],n[1]=u,n}function ql(n){var t=[];if(n!=null)for(var e in j(n))t.push(e);return t}function zl(n){return Je.call(n)}function Zs(n,t,e){return t=cn(t===i?n.length-1:t,0),function(){for(var r=arguments,u=-1,o=cn(r.length-t,0),a=g(o);++u<o;)a[u]=r[t+u];u=-1;for(var c=g(t+1);++u<t;)c[u]=r[u];return c[t]=e(a),Tn(n,this,c)}}function Ys(n,t){return t.length<2?n:Nt(n,qn(t,0,-1))}function Hl(n,t){for(var e=n.length,r=_n(t.length,e),u=bn(n);r--;){var o=t[r];n[r]=dt(o,e)?u[o]:i}return n}function Ni(n,t){if(!(t==="constructor"&&typeof n[t]=="function")&&t!="__proto__")return n[t]}var Xs=Vs(ys),Ie=sc||function(n,t){return pn.setTimeout(n,t)},Ui=Vs(pl);function Qs(n,t,e){var r=t+"";return Ui(n,Nl(r,Gl(Wl(r),e)))}function Vs(n){var t=0,e=0;return function(){var r=cc(),u=kt-(r-e);if(e=r,u>0){if(++t>=We)return arguments[0]}else t=0;return n.apply(i,arguments)}}function vr(n,t){var e=-1,r=n.length,u=r-1;for(t=t===i?r:t;++e<t;){var o=yi(e,u),a=n[o];n[o]=n[e],n[e]=a}return n.length=t,n}var js=Kl(function(n){var t=[];return n.charCodeAt(0)===46&&t.push(""),n.replace(Da,function(e,r,u,o){t.push(u?o.replace(ka,"$1"):r||e)}),t});function ut(n){if(typeof n=="string"||Wn(n))return n;var t=n+"";return t=="0"&&1/n==-st?"-0":t}function Bt(n){if(n!=null){try{return Ge.call(n)}catch{}try{return n+""}catch{}}return""}function Gl(n,t){return Mn(V,function(e){var r="_."+e[0];t&e[1]&&!Ke(n,r)&&n.push(r)}),n.sort()}function no(n){if(n instanceof z)return n.clone();var t=new Kn(n.__wrapped__,n.__chain__);return t.__actions__=bn(n.__actions__),t.__index__=n.__index__,t.__values__=n.__values__,t}function Jl(n,t,e){(e?xn(n,t,e):t===i)?t=1:t=cn(B(t),0);var r=n==null?0:n.length;if(!r||t<1)return[];for(var u=0,o=0,a=g(je(r/t));u<r;)a[o++]=qn(n,u,u+=t);return a}function Zl(n){for(var t=-1,e=n==null?0:n.length,r=0,u=[];++t<e;){var o=n[t];o&&(u[r++]=o)}return u}function Yl(){var n=arguments.length;if(!n)return[];for(var t=g(n-1),e=arguments[0],r=n;r--;)t[r-1]=arguments[r];return mt(U(e)?bn(e):[e],gn(t,1))}var Xl=K(function(n,t){return sn(n)?xe(n,gn(t,1,sn,!0)):[]}),Ql=K(function(n,t){var e=zn(t);return sn(e)&&(e=i),sn(n)?xe(n,gn(t,1,sn,!0),L(e,2)):[]}),Vl=K(function(n,t){var e=zn(t);return sn(e)&&(e=i),sn(n)?xe(n,gn(t,1,sn,!0),i,e):[]});function jl(n,t,e){var r=n==null?0:n.length;return r?(t=e||t===i?1:B(t),qn(n,t<0?0:t,r)):[]}function nh(n,t,e){var r=n==null?0:n.length;return r?(t=e||t===i?1:B(t),t=r-t,qn(n,0,t<0?0:t)):[]}function th(n,t){return n&&n.length?fr(n,L(t,3),!0,!0):[]}function eh(n,t){return n&&n.length?fr(n,L(t,3),!0):[]}function rh(n,t,e,r){var u=n==null?0:n.length;return u?(e&&typeof e!="number"&&xn(n,t,e)&&(e=0,r=u),Yc(n,t,e,r)):[]}function to(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var u=e==null?0:B(e);return u<0&&(u=cn(r+u,0)),ke(n,L(t,3),u)}function eo(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var u=r-1;return e!==i&&(u=B(e),u=e<0?cn(r+u,0):_n(u,r-1)),ke(n,L(t,3),u,!0)}function ro(n){var t=n==null?0:n.length;return t?gn(n,1):[]}function ih(n){var t=n==null?0:n.length;return t?gn(n,st):[]}function uh(n,t){var e=n==null?0:n.length;return e?(t=t===i?1:B(t),gn(n,t)):[]}function sh(n){for(var t=-1,e=n==null?0:n.length,r={};++t<e;){var u=n[t];r[u[0]]=u[1]}return r}function io(n){return n&&n.length?n[0]:i}function oh(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var u=e==null?0:B(e);return u<0&&(u=cn(r+u,0)),Gt(n,t,u)}function ah(n){var t=n==null?0:n.length;return t?qn(n,0,-1):[]}var fh=K(function(n){var t=en(n,bi);return t.length&&t[0]===n[0]?pi(t):[]}),ch=K(function(n){var t=zn(n),e=en(n,bi);return t===zn(e)?t=i:e.pop(),e.length&&e[0]===n[0]?pi(e,L(t,2)):[]}),lh=K(function(n){var t=zn(n),e=en(n,bi);return t=typeof t=="function"?t:i,t&&e.pop(),e.length&&e[0]===n[0]?pi(e,i,t):[]});function hh(n,t){return n==null?"":ac.call(n,t)}function zn(n){var t=n==null?0:n.length;return t?n[t-1]:i}function dh(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var u=r;return e!==i&&(u=B(e),u=u<0?cn(r+u,0):_n(u,r-1)),t===t?Gf(n,t,u):ke(n,Bu,u,!0)}function ph(n,t){return n&&n.length?gs(n,B(t)):i}var gh=K(uo);function uo(n,t){return n&&n.length&&t&&t.length?wi(n,t):n}function _h(n,t,e){return n&&n.length&&t&&t.length?wi(n,t,L(e,2)):n}function vh(n,t,e){return n&&n.length&&t&&t.length?wi(n,t,i,e):n}var wh=ht(function(n,t){var e=n==null?0:n.length,r=ci(n,t);return ws(n,en(t,function(u){return dt(u,e)?+u:u}).sort(Rs)),r});function yh(n,t){var e=[];if(!(n&&n.length))return e;var r=-1,u=[],o=n.length;for(t=L(t,3);++r<o;){var a=n[r];t(a,r,n)&&(e.push(a),u.push(r))}return ws(n,u),e}function Bi(n){return n==null?n:hc.call(n)}function mh(n,t,e){var r=n==null?0:n.length;return r?(e&&typeof e!="number"&&xn(n,t,e)?(t=0,e=r):(t=t==null?0:B(t),e=e===i?r:B(e)),qn(n,t,e)):[]}function xh(n,t){return ar(n,t)}function Sh(n,t,e){return xi(n,t,L(e,2))}function Ah(n,t){var e=n==null?0:n.length;if(e){var r=ar(n,t);if(r<e&&jn(n[r],t))return r}return-1}function bh(n,t){return ar(n,t,!0)}function Ch(n,t,e){return xi(n,t,L(e,2),!0)}function Ph(n,t){var e=n==null?0:n.length;if(e){var r=ar(n,t,!0)-1;if(jn(n[r],t))return r}return-1}function Ih(n){return n&&n.length?ms(n):[]}function Rh(n,t){return n&&n.length?ms(n,L(t,2)):[]}function Eh(n){var t=n==null?0:n.length;return t?qn(n,1,t):[]}function Th(n,t,e){return n&&n.length?(t=e||t===i?1:B(t),qn(n,0,t<0?0:t)):[]}function Lh(n,t,e){var r=n==null?0:n.length;return r?(t=e||t===i?1:B(t),t=r-t,qn(n,t<0?0:t,r)):[]}function Oh(n,t){return n&&n.length?fr(n,L(t,3),!1,!0):[]}function Wh(n,t){return n&&n.length?fr(n,L(t,3)):[]}var Dh=K(function(n){return bt(gn(n,1,sn,!0))}),Fh=K(function(n){var t=zn(n);return sn(t)&&(t=i),bt(gn(n,1,sn,!0),L(t,2))}),Nh=K(function(n){var t=zn(n);return t=typeof t=="function"?t:i,bt(gn(n,1,sn,!0),i,t)});function Uh(n){return n&&n.length?bt(n):[]}function Bh(n,t){return n&&n.length?bt(n,L(t,2)):[]}function Mh(n,t){return t=typeof t=="function"?t:i,n&&n.length?bt(n,i,t):[]}function Mi(n){if(!(n&&n.length))return[];var t=0;return n=yt(n,function(e){if(sn(e))return t=cn(e.length,t),!0}),ei(t,function(e){return en(n,jr(e))})}function so(n,t){if(!(n&&n.length))return[];var e=Mi(n);return t==null?e:en(e,function(r){return Tn(t,i,r)})}var $h=K(function(n,t){return sn(n)?xe(n,t):[]}),Kh=K(function(n){return Ai(yt(n,sn))}),kh=K(function(n){var t=zn(n);return sn(t)&&(t=i),Ai(yt(n,sn),L(t,2))}),qh=K(function(n){var t=zn(n);return t=typeof t=="function"?t:i,Ai(yt(n,sn),i,t)}),zh=K(Mi);function Hh(n,t){return bs(n||[],t||[],me)}function Gh(n,t){return bs(n||[],t||[],be)}var Jh=K(function(n){var t=n.length,e=t>1?n[t-1]:i;return e=typeof e=="function"?(n.pop(),e):i,so(n,e)});function oo(n){var t=s(n);return t.__chain__=!0,t}function Zh(n,t){return t(n),n}function wr(n,t){return t(n)}var Yh=ht(function(n){var t=n.length,e=t?n[0]:0,r=this.__wrapped__,u=function(o){return ci(o,n)};return t>1||this.__actions__.length||!(r instanceof z)||!dt(e)?this.thru(u):(r=r.slice(e,+e+(t?1:0)),r.__actions__.push({func:wr,args:[u],thisArg:i}),new Kn(r,this.__chain__).thru(function(o){return t&&!o.length&&o.push(i),o}))});function Xh(){return oo(this)}function Qh(){return new Kn(this.value(),this.__chain__)}function Vh(){this.__values__===i&&(this.__values__=So(this.value()));var n=this.__index__>=this.__values__.length,t=n?i:this.__values__[this.__index__++];return{done:n,value:t}}function jh(){return this}function nd(n){for(var t,e=this;e instanceof rr;){var r=no(e);r.__index__=0,r.__values__=i,t?u.__wrapped__=r:t=r;var u=r;e=e.__wrapped__}return u.__wrapped__=n,t}function td(){var n=this.__wrapped__;if(n instanceof z){var t=n;return this.__actions__.length&&(t=new z(this)),t=t.reverse(),t.__actions__.push({func:wr,args:[Bi],thisArg:i}),new Kn(t,this.__chain__)}return this.thru(Bi)}function ed(){return As(this.__wrapped__,this.__actions__)}var rd=cr(function(n,t,e){Q.call(n,e)?++n[e]:ct(n,e,1)});function id(n,t,e){var r=U(n)?Nu:Zc;return e&&xn(n,t,e)&&(t=i),r(n,L(t,3))}function ud(n,t){var e=U(n)?yt:ss;return e(n,L(t,3))}var sd=Ds(to),od=Ds(eo);function ad(n,t){return gn(yr(n,t),1)}function fd(n,t){return gn(yr(n,t),st)}function cd(n,t,e){return e=e===i?1:B(e),gn(yr(n,t),e)}function ao(n,t){var e=U(n)?Mn:At;return e(n,L(t,3))}function fo(n,t){var e=U(n)?Ef:us;return e(n,L(t,3))}var ld=cr(function(n,t,e){Q.call(n,e)?n[e].push(t):ct(n,e,[t])});function hd(n,t,e,r){n=Cn(n)?n:ie(n),e=e&&!r?B(e):0;var u=n.length;return e<0&&(e=cn(u+e,0)),br(n)?e<=u&&n.indexOf(t,e)>-1:!!u&&Gt(n,t,e)>-1}var dd=K(function(n,t,e){var r=-1,u=typeof t=="function",o=Cn(n)?g(n.length):[];return At(n,function(a){o[++r]=u?Tn(t,a,e):Se(a,t,e)}),o}),pd=cr(function(n,t,e){ct(n,e,t)});function yr(n,t){var e=U(n)?en:hs;return e(n,L(t,3))}function gd(n,t,e,r){return n==null?[]:(U(t)||(t=t==null?[]:[t]),e=r?i:e,U(e)||(e=e==null?[]:[e]),_s(n,t,e))}var _d=cr(function(n,t,e){n[e?0:1].push(t)},function(){return[[],[]]});function vd(n,t,e){var r=U(n)?Qr:$u,u=arguments.length<3;return r(n,L(t,4),e,u,At)}function wd(n,t,e){var r=U(n)?Tf:$u,u=arguments.length<3;return r(n,L(t,4),e,u,us)}function yd(n,t){var e=U(n)?yt:ss;return e(n,Sr(L(t,3)))}function md(n){var t=U(n)?ts:hl;return t(n)}function xd(n,t,e){(e?xn(n,t,e):t===i)?t=1:t=B(t);var r=U(n)?qc:dl;return r(n,t)}function Sd(n){var t=U(n)?zc:gl;return t(n)}function Ad(n){if(n==null)return 0;if(Cn(n))return br(n)?Zt(n):n.length;var t=vn(n);return t==Yn||t==Xn?n.size:_i(n).length}function bd(n,t,e){var r=U(n)?Vr:_l;return e&&xn(n,t,e)&&(t=i),r(n,L(t,3))}var Cd=K(function(n,t){if(n==null)return[];var e=t.length;return e>1&&xn(n,t[0],t[1])?t=[]:e>2&&xn(t[0],t[1],t[2])&&(t=[t[0]]),_s(n,gn(t,1),[])}),mr=uc||function(){return pn.Date.now()};function Pd(n,t){if(typeof t!="function")throw new $n(S);return n=B(n),function(){if(--n<1)return t.apply(this,arguments)}}function co(n,t,e){return t=e?i:t,t=n&&t==null?n.length:t,lt(n,An,i,i,i,i,t)}function lo(n,t){var e;if(typeof t!="function")throw new $n(S);return n=B(n),function(){return--n>0&&(e=t.apply(this,arguments)),n<=1&&(t=i),e}}var $i=K(function(n,t,e){var r=wn;if(e.length){var u=xt(e,ee($i));r|=Jn}return lt(n,r,t,e,u)}),ho=K(function(n,t,e){var r=wn|Rn;if(e.length){var u=xt(e,ee(ho));r|=Jn}return lt(t,r,n,e,u)});function po(n,t,e){t=e?i:t;var r=lt(n,an,i,i,i,i,i,t);return r.placeholder=po.placeholder,r}function go(n,t,e){t=e?i:t;var r=lt(n,Et,i,i,i,i,i,t);return r.placeholder=go.placeholder,r}function _o(n,t,e){var r,u,o,a,c,h,y=0,m=!1,x=!1,A=!0;if(typeof n!="function")throw new $n(S);t=Hn(t)||0,rn(e)&&(m=!!e.leading,x="maxWait"in e,o=x?cn(Hn(e.maxWait)||0,t):o,A="trailing"in e?!!e.trailing:A);function I(on){var nt=r,_t=u;return r=u=i,y=on,a=n.apply(_t,nt),a}function O(on){return y=on,c=Ie(q,t),m?I(on):a}function $(on){var nt=on-h,_t=on-y,Fo=t-nt;return x?_n(Fo,o-_t):Fo}function W(on){var nt=on-h,_t=on-y;return h===i||nt>=t||nt<0||x&&_t>=o}function q(){var on=mr();if(W(on))return H(on);c=Ie(q,$(on))}function H(on){return c=i,A&&r?I(on):(r=u=i,a)}function Dn(){c!==i&&Cs(c),y=0,r=h=u=c=i}function Sn(){return c===i?a:H(mr())}function Fn(){var on=mr(),nt=W(on);if(r=arguments,u=this,h=on,nt){if(c===i)return O(h);if(x)return Cs(c),c=Ie(q,t),I(h)}return c===i&&(c=Ie(q,t)),a}return Fn.cancel=Dn,Fn.flush=Sn,Fn}var Id=K(function(n,t){return is(n,1,t)}),Rd=K(function(n,t,e){return is(n,Hn(t)||0,e)});function Ed(n){return lt(n,Kt)}function xr(n,t){if(typeof n!="function"||t!=null&&typeof t!="function")throw new $n(S);var e=function(){var r=arguments,u=t?t.apply(this,r):r[0],o=e.cache;if(o.has(u))return o.get(u);var a=n.apply(this,r);return e.cache=o.set(u,a)||o,a};return e.cache=new(xr.Cache||ft),e}xr.Cache=ft;function Sr(n){if(typeof n!="function")throw new $n(S);return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}function Td(n){return lo(2,n)}var Ld=vl(function(n,t){t=t.length==1&&U(t[0])?en(t[0],Ln(L())):en(gn(t,1),Ln(L()));var e=t.length;return K(function(r){for(var u=-1,o=_n(r.length,e);++u<o;)r[u]=t[u].call(this,r[u]);return Tn(n,this,r)})}),Ki=K(function(n,t){var e=xt(t,ee(Ki));return lt(n,Jn,i,t,e)}),vo=K(function(n,t){var e=xt(t,ee(vo));return lt(n,vt,i,t,e)}),Od=ht(function(n,t){return lt(n,Nn,i,i,i,t)});function Wd(n,t){if(typeof n!="function")throw new $n(S);return t=t===i?t:B(t),K(n,t)}function Dd(n,t){if(typeof n!="function")throw new $n(S);return t=t==null?0:cn(B(t),0),K(function(e){var r=e[t],u=Pt(e,0,t);return r&&mt(u,r),Tn(n,this,u)})}function Fd(n,t,e){var r=!0,u=!0;if(typeof n!="function")throw new $n(S);return rn(e)&&(r="leading"in e?!!e.leading:r,u="trailing"in e?!!e.trailing:u),_o(n,t,{leading:r,maxWait:t,trailing:u})}function Nd(n){return co(n,1)}function Ud(n,t){return Ki(Ci(t),n)}function Bd(){if(!arguments.length)return[];var n=arguments[0];return U(n)?n:[n]}function Md(n){return kn(n,F)}function $d(n,t){return t=typeof t=="function"?t:i,kn(n,F,t)}function Kd(n){return kn(n,P|F)}function kd(n,t){return t=typeof t=="function"?t:i,kn(n,P|F,t)}function qd(n,t){return t==null||rs(n,t,dn(t))}function jn(n,t){return n===t||n!==n&&t!==t}var zd=pr(di),Hd=pr(function(n,t){return n>=t}),Mt=fs(function(){return arguments}())?fs:function(n){return un(n)&&Q.call(n,"callee")&&!Yu.call(n,"callee")},U=g.isArray,Gd=Tu?Ln(Tu):nl;function Cn(n){return n!=null&&Ar(n.length)&&!pt(n)}function sn(n){return un(n)&&Cn(n)}function Jd(n){return n===!0||n===!1||un(n)&&mn(n)==wt}var It=oc||Vi,Zd=Lu?Ln(Lu):tl;function Yd(n){return un(n)&&n.nodeType===1&&!Re(n)}function Xd(n){if(n==null)return!0;if(Cn(n)&&(U(n)||typeof n=="string"||typeof n.splice=="function"||It(n)||re(n)||Mt(n)))return!n.length;var t=vn(n);if(t==Yn||t==Xn)return!n.size;if(Pe(n))return!_i(n).length;for(var e in n)if(Q.call(n,e))return!1;return!0}function Qd(n,t){return Ae(n,t)}function Vd(n,t,e){e=typeof e=="function"?e:i;var r=e?e(n,t):i;return r===i?Ae(n,t,i,e):!!r}function ki(n){if(!un(n))return!1;var t=mn(n);return t==Fe||t==ma||typeof n.message=="string"&&typeof n.name=="string"&&!Re(n)}function jd(n){return typeof n=="number"&&Qu(n)}function pt(n){if(!rn(n))return!1;var t=mn(n);return t==Ne||t==iu||t==Tt||t==Sa}function wo(n){return typeof n=="number"&&n==B(n)}function Ar(n){return typeof n=="number"&&n>-1&&n%1==0&&n<=et}function rn(n){var t=typeof n;return n!=null&&(t=="object"||t=="function")}function un(n){return n!=null&&typeof n=="object"}var yo=Ou?Ln(Ou):rl;function np(n,t){return n===t||gi(n,t,Oi(t))}function tp(n,t,e){return e=typeof e=="function"?e:i,gi(n,t,Oi(t),e)}function ep(n){return mo(n)&&n!=+n}function rp(n){if($l(n))throw new N(v);return cs(n)}function ip(n){return n===null}function up(n){return n==null}function mo(n){return typeof n=="number"||un(n)&&mn(n)==fe}function Re(n){if(!un(n)||mn(n)!=ot)return!1;var t=Xe(n);if(t===null)return!0;var e=Q.call(t,"constructor")&&t.constructor;return typeof e=="function"&&e instanceof e&&Ge.call(e)==tc}var qi=Wu?Ln(Wu):il;function sp(n){return wo(n)&&n>=-et&&n<=et}var xo=Du?Ln(Du):ul;function br(n){return typeof n=="string"||!U(n)&&un(n)&&mn(n)==le}function Wn(n){return typeof n=="symbol"||un(n)&&mn(n)==Ue}var re=Fu?Ln(Fu):sl;function op(n){return n===i}function ap(n){return un(n)&&vn(n)==he}function fp(n){return un(n)&&mn(n)==ba}var cp=pr(vi),lp=pr(function(n,t){return n<=t});function So(n){if(!n)return[];if(Cn(n))return br(n)?Qn(n):bn(n);if(ge&&n[ge])return qf(n[ge]());var t=vn(n),e=t==Yn?ii:t==Xn?qe:ie;return e(n)}function gt(n){if(!n)return n===0?n:0;if(n=Hn(n),n===st||n===-st){var t=n<0?-1:1;return t*Tr}return n===n?n:0}function B(n){var t=gt(n),e=t%1;return t===t?e?t-e:t:0}function Ao(n){return n?Ft(B(n),0,Un):0}function Hn(n){if(typeof n=="number")return n;if(Wn(n))return qt;if(rn(n)){var t=typeof n.valueOf=="function"?n.valueOf():n;n=rn(t)?t+"":t}if(typeof n!="string")return n===0?n:+n;n=Ku(n);var e=Ha.test(n);return e||Ja.test(n)?Pf(n.slice(2),e?2:8):za.test(n)?qt:+n}function bo(n){return it(n,Pn(n))}function hp(n){return n?Ft(B(n),-et,et):n===0?n:0}function Y(n){return n==null?"":On(n)}var dp=ne(function(n,t){if(Pe(t)||Cn(t)){it(t,dn(t),n);return}for(var e in t)Q.call(t,e)&&me(n,e,t[e])}),Co=ne(function(n,t){it(t,Pn(t),n)}),Cr=ne(function(n,t,e,r){it(t,Pn(t),n,r)}),pp=ne(function(n,t,e,r){it(t,dn(t),n,r)}),gp=ht(ci);function _p(n,t){var e=jt(n);return t==null?e:es(e,t)}var vp=K(function(n,t){n=j(n);var e=-1,r=t.length,u=r>2?t[2]:i;for(u&&xn(t[0],t[1],u)&&(r=1);++e<r;)for(var o=t[e],a=Pn(o),c=-1,h=a.length;++c<h;){var y=a[c],m=n[y];(m===i||jn(m,Xt[y])&&!Q.call(n,y))&&(n[y]=o[y])}return n}),wp=K(function(n){return n.push(i,Ks),Tn(Po,i,n)});function yp(n,t){return Uu(n,L(t,3),rt)}function mp(n,t){return Uu(n,L(t,3),hi)}function xp(n,t){return n==null?n:li(n,L(t,3),Pn)}function Sp(n,t){return n==null?n:os(n,L(t,3),Pn)}function Ap(n,t){return n&&rt(n,L(t,3))}function bp(n,t){return n&&hi(n,L(t,3))}function Cp(n){return n==null?[]:sr(n,dn(n))}function Pp(n){return n==null?[]:sr(n,Pn(n))}function zi(n,t,e){var r=n==null?i:Nt(n,t);return r===i?e:r}function Ip(n,t){return n!=null&&zs(n,t,Xc)}function Hi(n,t){return n!=null&&zs(n,t,Qc)}var Rp=Ns(function(n,t,e){t!=null&&typeof t.toString!="function"&&(t=Je.call(t)),n[t]=e},Ji(In)),Ep=Ns(function(n,t,e){t!=null&&typeof t.toString!="function"&&(t=Je.call(t)),Q.call(n,t)?n[t].push(e):n[t]=[e]},L),Tp=K(Se);function dn(n){return Cn(n)?ns(n):_i(n)}function Pn(n){return Cn(n)?ns(n,!0):ol(n)}function Lp(n,t){var e={};return t=L(t,3),rt(n,function(r,u,o){ct(e,t(r,u,o),r)}),e}function Op(n,t){var e={};return t=L(t,3),rt(n,function(r,u,o){ct(e,u,t(r,u,o))}),e}var Wp=ne(function(n,t,e){or(n,t,e)}),Po=ne(function(n,t,e,r){or(n,t,e,r)}),Dp=ht(function(n,t){var e={};if(n==null)return e;var r=!1;t=en(t,function(o){return o=Ct(o,n),r||(r=o.length>1),o}),it(n,Ti(n),e),r&&(e=kn(e,P|T|F,Rl));for(var u=t.length;u--;)Si(e,t[u]);return e});function Fp(n,t){return Io(n,Sr(L(t)))}var Np=ht(function(n,t){return n==null?{}:fl(n,t)});function Io(n,t){if(n==null)return{};var e=en(Ti(n),function(r){return[r]});return t=L(t),vs(n,e,function(r,u){return t(r,u[0])})}function Up(n,t,e){t=Ct(t,n);var r=-1,u=t.length;for(u||(u=1,n=i);++r<u;){var o=n==null?i:n[ut(t[r])];o===i&&(r=u,o=e),n=pt(o)?o.call(n):o}return n}function Bp(n,t,e){return n==null?n:be(n,t,e)}function Mp(n,t,e,r){return r=typeof r=="function"?r:i,n==null?n:be(n,t,e,r)}var Ro=Ms(dn),Eo=Ms(Pn);function $p(n,t,e){var r=U(n),u=r||It(n)||re(n);if(t=L(t,4),e==null){var o=n&&n.constructor;u?e=r?new o:[]:rn(n)?e=pt(o)?jt(Xe(n)):{}:e={}}return(u?Mn:rt)(n,function(a,c,h){return t(e,a,c,h)}),e}function Kp(n,t){return n==null?!0:Si(n,t)}function kp(n,t,e){return n==null?n:Ss(n,t,Ci(e))}function qp(n,t,e,r){return r=typeof r=="function"?r:i,n==null?n:Ss(n,t,Ci(e),r)}function ie(n){return n==null?[]:ri(n,dn(n))}function zp(n){return n==null?[]:ri(n,Pn(n))}function Hp(n,t,e){return e===i&&(e=t,t=i),e!==i&&(e=Hn(e),e=e===e?e:0),t!==i&&(t=Hn(t),t=t===t?t:0),Ft(Hn(n),t,e)}function Gp(n,t,e){return t=gt(t),e===i?(e=t,t=0):e=gt(e),n=Hn(n),Vc(n,t,e)}function Jp(n,t,e){if(e&&typeof e!="boolean"&&xn(n,t,e)&&(t=e=i),e===i&&(typeof t=="boolean"?(e=t,t=i):typeof n=="boolean"&&(e=n,n=i)),n===i&&t===i?(n=0,t=1):(n=gt(n),t===i?(t=n,n=0):t=gt(t)),n>t){var r=n;n=t,t=r}if(e||n%1||t%1){var u=Vu();return _n(n+u*(t-n+Cf("1e-"+((u+"").length-1))),t)}return yi(n,t)}var Zp=te(function(n,t,e){return t=t.toLowerCase(),n+(e?To(t):t)});function To(n){return Gi(Y(n).toLowerCase())}function Lo(n){return n=Y(n),n&&n.replace(Ya,Bf).replace(gf,"")}function Yp(n,t,e){n=Y(n),t=On(t);var r=n.length;e=e===i?r:Ft(B(e),0,r);var u=e;return e-=t.length,e>=0&&n.slice(e,u)==t}function Xp(n){return n=Y(n),n&&Ea.test(n)?n.replace(ou,Mf):n}function Qp(n){return n=Y(n),n&&Fa.test(n)?n.replace(Kr,"\\$&"):n}var Vp=te(function(n,t,e){return n+(e?"-":"")+t.toLowerCase()}),jp=te(function(n,t,e){return n+(e?" ":"")+t.toLowerCase()}),ng=Ws("toLowerCase");function tg(n,t,e){n=Y(n),t=B(t);var r=t?Zt(n):0;if(!t||r>=t)return n;var u=(t-r)/2;return dr(nr(u),e)+n+dr(je(u),e)}function eg(n,t,e){n=Y(n),t=B(t);var r=t?Zt(n):0;return t&&r<t?n+dr(t-r,e):n}function rg(n,t,e){n=Y(n),t=B(t);var r=t?Zt(n):0;return t&&r<t?dr(t-r,e)+n:n}function ig(n,t,e){return e||t==null?t=0:t&&(t=+t),lc(Y(n).replace(kr,""),t||0)}function ug(n,t,e){return(e?xn(n,t,e):t===i)?t=1:t=B(t),mi(Y(n),t)}function sg(){var n=arguments,t=Y(n[0]);return n.length<3?t:t.replace(n[1],n[2])}var og=te(function(n,t,e){return n+(e?"_":"")+t.toLowerCase()});function ag(n,t,e){return e&&typeof e!="number"&&xn(n,t,e)&&(t=e=i),e=e===i?Un:e>>>0,e?(n=Y(n),n&&(typeof t=="string"||t!=null&&!qi(t))&&(t=On(t),!t&&Jt(n))?Pt(Qn(n),0,e):n.split(t,e)):[]}var fg=te(function(n,t,e){return n+(e?" ":"")+Gi(t)});function cg(n,t,e){return n=Y(n),e=e==null?0:Ft(B(e),0,n.length),t=On(t),n.slice(e,e+t.length)==t}function lg(n,t,e){var r=s.templateSettings;e&&xn(n,t,e)&&(t=i),n=Y(n),t=Cr({},t,r,$s);var u=Cr({},t.imports,r.imports,$s),o=dn(u),a=ri(u,o),c,h,y=0,m=t.interpolate||Be,x="__p += '",A=ui((t.escape||Be).source+"|"+m.source+"|"+(m===au?qa:Be).source+"|"+(t.evaluate||Be).source+"|$","g"),I="//# sourceURL="+(Q.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++mf+"]")+`
|
|
11
|
-
`;n.replace(A,function(
|
|
12
|
-
__e(`+
|
|
13
|
-
'`),Sn&&(h=!0,
|
|
10
|
+
`)}function Bl(n){return F(n)||Mt(n)||!!(Qu&&n&&n[Qu])}function dt(n,t){var e=typeof n;return t=t??et,!!t&&(e=="number"||e!="symbol"&&Ya.test(n))&&n>-1&&n%1==0&&n<t}function xn(n,t,e){if(!rn(e))return!1;var r=typeof t;return(r=="number"?Cn(e)&&dt(t,e.length):r=="string"&&t in e)?jn(e[t],n):!1}function Di(n,t){if(F(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||Wn(n)?!0:Da.test(n)||!Wa.test(n)||t!=null&&n in j(t)}function Ml(n){var t=typeof n;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?n!=="__proto__":n===null}function Fi(n){var t=gr(n),e=s[t];if(typeof e!="function"||!(t in k.prototype))return!1;if(n===e)return!0;var r=Li(e);return!!r&&n===r[0]}function $l(n){return!!Ju&&Ju in n}var Kl=ze?pt:Vi;function Ie(n){var t=n&&n.constructor,e=typeof t=="function"&&t.prototype||Xt;return n===e}function Js(n){return n===n&&!rn(n)}function Zs(n,t){return function(e){return e==null?!1:e[n]===t&&(t!==i||n in j(e))}}function kl(n){var t=xr(n,function(r){return e.size===B&&e.clear(),r}),e=t.cache;return t}function ql(n,t){var e=n[1],r=t[1],u=e|r,o=u<(wn|Pn|An),a=r==An&&e==an||r==An&&e==Nn&&n[7].length<=t[8]||r==(An|Nn)&&t[7].length<=t[8]&&e==an;if(!(o||a))return n;r&wn&&(n[2]=t[2],u|=e&wn?0:tt);var c=t[3];if(c){var h=n[3];n[3]=h?Ts(h,c,t[4]):c,n[4]=h?xt(n[3],C):t[4]}return c=t[5],c&&(h=n[5],n[5]=h?Ls(h,c,t[6]):c,n[6]=h?xt(n[5],C):t[6]),c=t[7],c&&(n[7]=c),r&An&&(n[8]=n[8]==null?t[8]:_n(n[8],t[8])),n[9]==null&&(n[9]=t[9]),n[0]=t[0],n[1]=u,n}function Hl(n){var t=[];if(n!=null)for(var e in j(n))t.push(e);return t}function zl(n){return Je.call(n)}function Ys(n,t,e){return t=cn(t===i?n.length-1:t,0),function(){for(var r=arguments,u=-1,o=cn(r.length-t,0),a=g(o);++u<o;)a[u]=r[t+u];u=-1;for(var c=g(t+1);++u<t;)c[u]=r[u];return c[t]=e(a),Tn(n,this,c)}}function Xs(n,t){return t.length<2?n:Nt(n,qn(t,0,-1))}function Gl(n,t){for(var e=n.length,r=_n(t.length,e),u=bn(n);r--;){var o=t[r];n[r]=dt(o,e)?u[o]:i}return n}function Ni(n,t){if(!(t==="constructor"&&typeof n[t]=="function")&&t!="__proto__")return n[t]}var Qs=js(ms),Re=oc||function(n,t){return pn.setTimeout(n,t)},Ui=js(gl);function Vs(n,t,e){var r=t+"";return Ui(n,Ul(r,Jl(Dl(r),e)))}function js(n){var t=0,e=0;return function(){var r=lc(),u=kt-(r-e);if(e=r,u>0){if(++t>=We)return arguments[0]}else t=0;return n.apply(i,arguments)}}function vr(n,t){var e=-1,r=n.length,u=r-1;for(t=t===i?r:t;++e<t;){var o=yi(e,u),a=n[o];n[o]=n[e],n[e]=a}return n.length=t,n}var no=kl(function(n){var t=[];return n.charCodeAt(0)===46&&t.push(""),n.replace(Fa,function(e,r,u,o){t.push(u?o.replace(qa,"$1"):r||e)}),t});function ut(n){if(typeof n=="string"||Wn(n))return n;var t=n+"";return t=="0"&&1/n==-st?"-0":t}function Bt(n){if(n!=null){try{return Ge.call(n)}catch{}try{return n+""}catch{}}return""}function Jl(n,t){return Mn(V,function(e){var r="_."+e[0];t&e[1]&&!Ke(n,r)&&n.push(r)}),n.sort()}function to(n){if(n instanceof k)return n.clone();var t=new Kn(n.__wrapped__,n.__chain__);return t.__actions__=bn(n.__actions__),t.__index__=n.__index__,t.__values__=n.__values__,t}function Zl(n,t,e){(e?xn(n,t,e):t===i)?t=1:t=cn(N(t),0);var r=n==null?0:n.length;if(!r||t<1)return[];for(var u=0,o=0,a=g(je(r/t));u<r;)a[o++]=qn(n,u,u+=t);return a}function Yl(n){for(var t=-1,e=n==null?0:n.length,r=0,u=[];++t<e;){var o=n[t];o&&(u[r++]=o)}return u}function Xl(){var n=arguments.length;if(!n)return[];for(var t=g(n-1),e=arguments[0],r=n;r--;)t[r-1]=arguments[r];return mt(F(e)?bn(e):[e],gn(t,1))}var Ql=M(function(n,t){return sn(n)?xe(n,gn(t,1,sn,!0)):[]}),Vl=M(function(n,t){var e=Hn(t);return sn(e)&&(e=i),sn(n)?xe(n,gn(t,1,sn,!0),E(e,2)):[]}),jl=M(function(n,t){var e=Hn(t);return sn(e)&&(e=i),sn(n)?xe(n,gn(t,1,sn,!0),i,e):[]});function nh(n,t,e){var r=n==null?0:n.length;return r?(t=e||t===i?1:N(t),qn(n,t<0?0:t,r)):[]}function th(n,t,e){var r=n==null?0:n.length;return r?(t=e||t===i?1:N(t),t=r-t,qn(n,0,t<0?0:t)):[]}function eh(n,t){return n&&n.length?fr(n,E(t,3),!0,!0):[]}function rh(n,t){return n&&n.length?fr(n,E(t,3),!0):[]}function ih(n,t,e,r){var u=n==null?0:n.length;return u?(e&&typeof e!="number"&&xn(n,t,e)&&(e=0,r=u),Xc(n,t,e,r)):[]}function eo(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var u=e==null?0:N(e);return u<0&&(u=cn(r+u,0)),ke(n,E(t,3),u)}function ro(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var u=r-1;return e!==i&&(u=N(e),u=e<0?cn(r+u,0):_n(u,r-1)),ke(n,E(t,3),u,!0)}function io(n){var t=n==null?0:n.length;return t?gn(n,1):[]}function uh(n){var t=n==null?0:n.length;return t?gn(n,st):[]}function sh(n,t){var e=n==null?0:n.length;return e?(t=t===i?1:N(t),gn(n,t)):[]}function oh(n){for(var t=-1,e=n==null?0:n.length,r={};++t<e;){var u=n[t];r[u[0]]=u[1]}return r}function uo(n){return n&&n.length?n[0]:i}function ah(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var u=e==null?0:N(e);return u<0&&(u=cn(r+u,0)),Gt(n,t,u)}function fh(n){var t=n==null?0:n.length;return t?qn(n,0,-1):[]}var ch=M(function(n){var t=en(n,bi);return t.length&&t[0]===n[0]?pi(t):[]}),lh=M(function(n){var t=Hn(n),e=en(n,bi);return t===Hn(e)?t=i:e.pop(),e.length&&e[0]===n[0]?pi(e,E(t,2)):[]}),hh=M(function(n){var t=Hn(n),e=en(n,bi);return t=typeof t=="function"?t:i,t&&e.pop(),e.length&&e[0]===n[0]?pi(e,i,t):[]});function dh(n,t){return n==null?"":fc.call(n,t)}function Hn(n){var t=n==null?0:n.length;return t?n[t-1]:i}function ph(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var u=r;return e!==i&&(u=N(e),u=u<0?cn(r+u,0):_n(u,r-1)),t===t?Jf(n,t,u):ke(n,Mu,u,!0)}function gh(n,t){return n&&n.length?_s(n,N(t)):i}var _h=M(so);function so(n,t){return n&&n.length&&t&&t.length?wi(n,t):n}function vh(n,t,e){return n&&n.length&&t&&t.length?wi(n,t,E(e,2)):n}function wh(n,t,e){return n&&n.length&&t&&t.length?wi(n,t,i,e):n}var yh=ht(function(n,t){var e=n==null?0:n.length,r=ci(n,t);return ys(n,en(t,function(u){return dt(u,e)?+u:u}).sort(Es)),r});function mh(n,t){var e=[];if(!(n&&n.length))return e;var r=-1,u=[],o=n.length;for(t=E(t,3);++r<o;){var a=n[r];t(a,r,n)&&(e.push(a),u.push(r))}return ys(n,u),e}function Bi(n){return n==null?n:dc.call(n)}function xh(n,t,e){var r=n==null?0:n.length;return r?(e&&typeof e!="number"&&xn(n,t,e)?(t=0,e=r):(t=t==null?0:N(t),e=e===i?r:N(e)),qn(n,t,e)):[]}function Sh(n,t){return ar(n,t)}function Ah(n,t,e){return xi(n,t,E(e,2))}function bh(n,t){var e=n==null?0:n.length;if(e){var r=ar(n,t);if(r<e&&jn(n[r],t))return r}return-1}function Ch(n,t){return ar(n,t,!0)}function Ih(n,t,e){return xi(n,t,E(e,2),!0)}function Rh(n,t){var e=n==null?0:n.length;if(e){var r=ar(n,t,!0)-1;if(jn(n[r],t))return r}return-1}function Ph(n){return n&&n.length?xs(n):[]}function Eh(n,t){return n&&n.length?xs(n,E(t,2)):[]}function Th(n){var t=n==null?0:n.length;return t?qn(n,1,t):[]}function Lh(n,t,e){return n&&n.length?(t=e||t===i?1:N(t),qn(n,0,t<0?0:t)):[]}function Oh(n,t,e){var r=n==null?0:n.length;return r?(t=e||t===i?1:N(t),t=r-t,qn(n,t<0?0:t,r)):[]}function Wh(n,t){return n&&n.length?fr(n,E(t,3),!1,!0):[]}function Dh(n,t){return n&&n.length?fr(n,E(t,3)):[]}var Fh=M(function(n){return bt(gn(n,1,sn,!0))}),Nh=M(function(n){var t=Hn(n);return sn(t)&&(t=i),bt(gn(n,1,sn,!0),E(t,2))}),Uh=M(function(n){var t=Hn(n);return t=typeof t=="function"?t:i,bt(gn(n,1,sn,!0),i,t)});function Bh(n){return n&&n.length?bt(n):[]}function Mh(n,t){return n&&n.length?bt(n,E(t,2)):[]}function $h(n,t){return t=typeof t=="function"?t:i,n&&n.length?bt(n,i,t):[]}function Mi(n){if(!(n&&n.length))return[];var t=0;return n=yt(n,function(e){if(sn(e))return t=cn(e.length,t),!0}),ei(t,function(e){return en(n,jr(e))})}function oo(n,t){if(!(n&&n.length))return[];var e=Mi(n);return t==null?e:en(e,function(r){return Tn(t,i,r)})}var Kh=M(function(n,t){return sn(n)?xe(n,t):[]}),kh=M(function(n){return Ai(yt(n,sn))}),qh=M(function(n){var t=Hn(n);return sn(t)&&(t=i),Ai(yt(n,sn),E(t,2))}),Hh=M(function(n){var t=Hn(n);return t=typeof t=="function"?t:i,Ai(yt(n,sn),i,t)}),zh=M(Mi);function Gh(n,t){return Cs(n||[],t||[],me)}function Jh(n,t){return Cs(n||[],t||[],be)}var Zh=M(function(n){var t=n.length,e=t>1?n[t-1]:i;return e=typeof e=="function"?(n.pop(),e):i,oo(n,e)});function ao(n){var t=s(n);return t.__chain__=!0,t}function Yh(n,t){return t(n),n}function wr(n,t){return t(n)}var Xh=ht(function(n){var t=n.length,e=t?n[0]:0,r=this.__wrapped__,u=function(o){return ci(o,n)};return t>1||this.__actions__.length||!(r instanceof k)||!dt(e)?this.thru(u):(r=r.slice(e,+e+(t?1:0)),r.__actions__.push({func:wr,args:[u],thisArg:i}),new Kn(r,this.__chain__).thru(function(o){return t&&!o.length&&o.push(i),o}))});function Qh(){return ao(this)}function Vh(){return new Kn(this.value(),this.__chain__)}function jh(){this.__values__===i&&(this.__values__=Ao(this.value()));var n=this.__index__>=this.__values__.length,t=n?i:this.__values__[this.__index__++];return{done:n,value:t}}function nd(){return this}function td(n){for(var t,e=this;e instanceof rr;){var r=to(e);r.__index__=0,r.__values__=i,t?u.__wrapped__=r:t=r;var u=r;e=e.__wrapped__}return u.__wrapped__=n,t}function ed(){var n=this.__wrapped__;if(n instanceof k){var t=n;return this.__actions__.length&&(t=new k(this)),t=t.reverse(),t.__actions__.push({func:wr,args:[Bi],thisArg:i}),new Kn(t,this.__chain__)}return this.thru(Bi)}function rd(){return bs(this.__wrapped__,this.__actions__)}var id=cr(function(n,t,e){Q.call(n,e)?++n[e]:ct(n,e,1)});function ud(n,t,e){var r=F(n)?Uu:Yc;return e&&xn(n,t,e)&&(t=i),r(n,E(t,3))}function sd(n,t){var e=F(n)?yt:os;return e(n,E(t,3))}var od=Fs(eo),ad=Fs(ro);function fd(n,t){return gn(yr(n,t),1)}function cd(n,t){return gn(yr(n,t),st)}function ld(n,t,e){return e=e===i?1:N(e),gn(yr(n,t),e)}function fo(n,t){var e=F(n)?Mn:At;return e(n,E(t,3))}function co(n,t){var e=F(n)?Tf:ss;return e(n,E(t,3))}var hd=cr(function(n,t,e){Q.call(n,e)?n[e].push(t):ct(n,e,[t])});function dd(n,t,e,r){n=Cn(n)?n:ie(n),e=e&&!r?N(e):0;var u=n.length;return e<0&&(e=cn(u+e,0)),br(n)?e<=u&&n.indexOf(t,e)>-1:!!u&&Gt(n,t,e)>-1}var pd=M(function(n,t,e){var r=-1,u=typeof t=="function",o=Cn(n)?g(n.length):[];return At(n,function(a){o[++r]=u?Tn(t,a,e):Se(a,t,e)}),o}),gd=cr(function(n,t,e){ct(n,e,t)});function yr(n,t){var e=F(n)?en:ds;return e(n,E(t,3))}function _d(n,t,e,r){return n==null?[]:(F(t)||(t=t==null?[]:[t]),e=r?i:e,F(e)||(e=e==null?[]:[e]),vs(n,t,e))}var vd=cr(function(n,t,e){n[e?0:1].push(t)},function(){return[[],[]]});function wd(n,t,e){var r=F(n)?Qr:Ku,u=arguments.length<3;return r(n,E(t,4),e,u,At)}function yd(n,t,e){var r=F(n)?Lf:Ku,u=arguments.length<3;return r(n,E(t,4),e,u,ss)}function md(n,t){var e=F(n)?yt:os;return e(n,Sr(E(t,3)))}function xd(n){var t=F(n)?es:dl;return t(n)}function Sd(n,t,e){(e?xn(n,t,e):t===i)?t=1:t=N(t);var r=F(n)?Hc:pl;return r(n,t)}function Ad(n){var t=F(n)?zc:_l;return t(n)}function bd(n){if(n==null)return 0;if(Cn(n))return br(n)?Zt(n):n.length;var t=vn(n);return t==Yn||t==Xn?n.size:_i(n).length}function Cd(n,t,e){var r=F(n)?Vr:vl;return e&&xn(n,t,e)&&(t=i),r(n,E(t,3))}var Id=M(function(n,t){if(n==null)return[];var e=t.length;return e>1&&xn(n,t[0],t[1])?t=[]:e>2&&xn(t[0],t[1],t[2])&&(t=[t[0]]),vs(n,gn(t,1),[])}),mr=sc||function(){return pn.Date.now()};function Rd(n,t){if(typeof t!="function")throw new $n(x);return n=N(n),function(){if(--n<1)return t.apply(this,arguments)}}function lo(n,t,e){return t=e?i:t,t=n&&t==null?n.length:t,lt(n,An,i,i,i,i,t)}function ho(n,t){var e;if(typeof t!="function")throw new $n(x);return n=N(n),function(){return--n>0&&(e=t.apply(this,arguments)),n<=1&&(t=i),e}}var $i=M(function(n,t,e){var r=wn;if(e.length){var u=xt(e,ee($i));r|=Jn}return lt(n,r,t,e,u)}),po=M(function(n,t,e){var r=wn|Pn;if(e.length){var u=xt(e,ee(po));r|=Jn}return lt(t,r,n,e,u)});function go(n,t,e){t=e?i:t;var r=lt(n,an,i,i,i,i,i,t);return r.placeholder=go.placeholder,r}function _o(n,t,e){t=e?i:t;var r=lt(n,Et,i,i,i,i,i,t);return r.placeholder=_o.placeholder,r}function vo(n,t,e){var r,u,o,a,c,h,y=0,m=!1,S=!1,A=!0;if(typeof n!="function")throw new $n(x);t=zn(t)||0,rn(e)&&(m=!!e.leading,S="maxWait"in e,o=S?cn(zn(e.maxWait)||0,t):o,A="trailing"in e?!!e.trailing:A);function R(on){var nt=r,_t=u;return r=u=i,y=on,a=n.apply(_t,nt),a}function L(on){return y=on,c=Re(K,t),m?R(on):a}function U(on){var nt=on-h,_t=on-y,No=t-nt;return S?_n(No,o-_t):No}function O(on){var nt=on-h,_t=on-y;return h===i||nt>=t||nt<0||S&&_t>=o}function K(){var on=mr();if(O(on))return H(on);c=Re(K,U(on))}function H(on){return c=i,A&&r?R(on):(r=u=i,a)}function Dn(){c!==i&&Is(c),y=0,r=h=u=c=i}function Sn(){return c===i?a:H(mr())}function Fn(){var on=mr(),nt=O(on);if(r=arguments,u=this,h=on,nt){if(c===i)return L(h);if(S)return Is(c),c=Re(K,t),R(h)}return c===i&&(c=Re(K,t)),a}return Fn.cancel=Dn,Fn.flush=Sn,Fn}var Pd=M(function(n,t){return us(n,1,t)}),Ed=M(function(n,t,e){return us(n,zn(t)||0,e)});function Td(n){return lt(n,Kt)}function xr(n,t){if(typeof n!="function"||t!=null&&typeof t!="function")throw new $n(x);var e=function(){var r=arguments,u=t?t.apply(this,r):r[0],o=e.cache;if(o.has(u))return o.get(u);var a=n.apply(this,r);return e.cache=o.set(u,a)||o,a};return e.cache=new(xr.Cache||ft),e}xr.Cache=ft;function Sr(n){if(typeof n!="function")throw new $n(x);return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}function Ld(n){return ho(2,n)}var Od=wl(function(n,t){t=t.length==1&&F(t[0])?en(t[0],Ln(E())):en(gn(t,1),Ln(E()));var e=t.length;return M(function(r){for(var u=-1,o=_n(r.length,e);++u<o;)r[u]=t[u].call(this,r[u]);return Tn(n,this,r)})}),Ki=M(function(n,t){var e=xt(t,ee(Ki));return lt(n,Jn,i,t,e)}),wo=M(function(n,t){var e=xt(t,ee(wo));return lt(n,vt,i,t,e)}),Wd=ht(function(n,t){return lt(n,Nn,i,i,i,t)});function Dd(n,t){if(typeof n!="function")throw new $n(x);return t=t===i?t:N(t),M(n,t)}function Fd(n,t){if(typeof n!="function")throw new $n(x);return t=t==null?0:cn(N(t),0),M(function(e){var r=e[t],u=It(e,0,t);return r&&mt(u,r),Tn(n,this,u)})}function Nd(n,t,e){var r=!0,u=!0;if(typeof n!="function")throw new $n(x);return rn(e)&&(r="leading"in e?!!e.leading:r,u="trailing"in e?!!e.trailing:u),vo(n,t,{leading:r,maxWait:t,trailing:u})}function Ud(n){return lo(n,1)}function Bd(n,t){return Ki(Ci(t),n)}function Md(){if(!arguments.length)return[];var n=arguments[0];return F(n)?n:[n]}function $d(n){return kn(n,J)}function Kd(n,t){return t=typeof t=="function"?t:i,kn(n,J,t)}function kd(n){return kn(n,q|J)}function qd(n,t){return t=typeof t=="function"?t:i,kn(n,q|J,t)}function Hd(n,t){return t==null||is(n,t,dn(t))}function jn(n,t){return n===t||n!==n&&t!==t}var zd=pr(di),Gd=pr(function(n,t){return n>=t}),Mt=cs(function(){return arguments}())?cs:function(n){return un(n)&&Q.call(n,"callee")&&!Xu.call(n,"callee")},F=g.isArray,Jd=Lu?Ln(Lu):tl;function Cn(n){return n!=null&&Ar(n.length)&&!pt(n)}function sn(n){return un(n)&&Cn(n)}function Zd(n){return n===!0||n===!1||un(n)&&mn(n)==wt}var Rt=ac||Vi,Yd=Ou?Ln(Ou):el;function Xd(n){return un(n)&&n.nodeType===1&&!Pe(n)}function Qd(n){if(n==null)return!0;if(Cn(n)&&(F(n)||typeof n=="string"||typeof n.splice=="function"||Rt(n)||re(n)||Mt(n)))return!n.length;var t=vn(n);if(t==Yn||t==Xn)return!n.size;if(Ie(n))return!_i(n).length;for(var e in n)if(Q.call(n,e))return!1;return!0}function Vd(n,t){return Ae(n,t)}function jd(n,t,e){e=typeof e=="function"?e:i;var r=e?e(n,t):i;return r===i?Ae(n,t,i,e):!!r}function ki(n){if(!un(n))return!1;var t=mn(n);return t==Fe||t==xa||typeof n.message=="string"&&typeof n.name=="string"&&!Pe(n)}function np(n){return typeof n=="number"&&Vu(n)}function pt(n){if(!rn(n))return!1;var t=mn(n);return t==Ne||t==uu||t==Tt||t==Aa}function yo(n){return typeof n=="number"&&n==N(n)}function Ar(n){return typeof n=="number"&&n>-1&&n%1==0&&n<=et}function rn(n){var t=typeof n;return n!=null&&(t=="object"||t=="function")}function un(n){return n!=null&&typeof n=="object"}var mo=Wu?Ln(Wu):il;function tp(n,t){return n===t||gi(n,t,Oi(t))}function ep(n,t,e){return e=typeof e=="function"?e:i,gi(n,t,Oi(t),e)}function rp(n){return xo(n)&&n!=+n}function ip(n){if(Kl(n))throw new D(v);return ls(n)}function up(n){return n===null}function sp(n){return n==null}function xo(n){return typeof n=="number"||un(n)&&mn(n)==fe}function Pe(n){if(!un(n)||mn(n)!=ot)return!1;var t=Xe(n);if(t===null)return!0;var e=Q.call(t,"constructor")&&t.constructor;return typeof e=="function"&&e instanceof e&&Ge.call(e)==ec}var qi=Du?Ln(Du):ul;function op(n){return yo(n)&&n>=-et&&n<=et}var So=Fu?Ln(Fu):sl;function br(n){return typeof n=="string"||!F(n)&&un(n)&&mn(n)==le}function Wn(n){return typeof n=="symbol"||un(n)&&mn(n)==Ue}var re=Nu?Ln(Nu):ol;function ap(n){return n===i}function fp(n){return un(n)&&vn(n)==he}function cp(n){return un(n)&&mn(n)==Ca}var lp=pr(vi),hp=pr(function(n,t){return n<=t});function Ao(n){if(!n)return[];if(Cn(n))return br(n)?Qn(n):bn(n);if(ge&&n[ge])return Hf(n[ge]());var t=vn(n),e=t==Yn?ii:t==Xn?qe:ie;return e(n)}function gt(n){if(!n)return n===0?n:0;if(n=zn(n),n===st||n===-st){var t=n<0?-1:1;return t*Tr}return n===n?n:0}function N(n){var t=gt(n),e=t%1;return t===t?e?t-e:t:0}function bo(n){return n?Ft(N(n),0,Un):0}function zn(n){if(typeof n=="number")return n;if(Wn(n))return qt;if(rn(n)){var t=typeof n.valueOf=="function"?n.valueOf():n;n=rn(t)?t+"":t}if(typeof n!="string")return n===0?n:+n;n=ku(n);var e=Ga.test(n);return e||Za.test(n)?Rf(n.slice(2),e?2:8):za.test(n)?qt:+n}function Co(n){return it(n,In(n))}function dp(n){return n?Ft(N(n),-et,et):n===0?n:0}function Y(n){return n==null?"":On(n)}var pp=ne(function(n,t){if(Ie(t)||Cn(t)){it(t,dn(t),n);return}for(var e in t)Q.call(t,e)&&me(n,e,t[e])}),Io=ne(function(n,t){it(t,In(t),n)}),Cr=ne(function(n,t,e,r){it(t,In(t),n,r)}),gp=ne(function(n,t,e,r){it(t,dn(t),n,r)}),_p=ht(ci);function vp(n,t){var e=jt(n);return t==null?e:rs(e,t)}var wp=M(function(n,t){n=j(n);var e=-1,r=t.length,u=r>2?t[2]:i;for(u&&xn(t[0],t[1],u)&&(r=1);++e<r;)for(var o=t[e],a=In(o),c=-1,h=a.length;++c<h;){var y=a[c],m=n[y];(m===i||jn(m,Xt[y])&&!Q.call(n,y))&&(n[y]=o[y])}return n}),yp=M(function(n){return n.push(i,ks),Tn(Ro,i,n)});function mp(n,t){return Bu(n,E(t,3),rt)}function xp(n,t){return Bu(n,E(t,3),hi)}function Sp(n,t){return n==null?n:li(n,E(t,3),In)}function Ap(n,t){return n==null?n:as(n,E(t,3),In)}function bp(n,t){return n&&rt(n,E(t,3))}function Cp(n,t){return n&&hi(n,E(t,3))}function Ip(n){return n==null?[]:sr(n,dn(n))}function Rp(n){return n==null?[]:sr(n,In(n))}function Hi(n,t,e){var r=n==null?i:Nt(n,t);return r===i?e:r}function Pp(n,t){return n!=null&&zs(n,t,Qc)}function zi(n,t){return n!=null&&zs(n,t,Vc)}var Ep=Us(function(n,t,e){t!=null&&typeof t.toString!="function"&&(t=Je.call(t)),n[t]=e},Ji(Rn)),Tp=Us(function(n,t,e){t!=null&&typeof t.toString!="function"&&(t=Je.call(t)),Q.call(n,t)?n[t].push(e):n[t]=[e]},E),Lp=M(Se);function dn(n){return Cn(n)?ts(n):_i(n)}function In(n){return Cn(n)?ts(n,!0):al(n)}function Op(n,t){var e={};return t=E(t,3),rt(n,function(r,u,o){ct(e,t(r,u,o),r)}),e}function Wp(n,t){var e={};return t=E(t,3),rt(n,function(r,u,o){ct(e,u,t(r,u,o))}),e}var Dp=ne(function(n,t,e){or(n,t,e)}),Ro=ne(function(n,t,e,r){or(n,t,e,r)}),Fp=ht(function(n,t){var e={};if(n==null)return e;var r=!1;t=en(t,function(o){return o=Ct(o,n),r||(r=o.length>1),o}),it(n,Ti(n),e),r&&(e=kn(e,q|P|J,El));for(var u=t.length;u--;)Si(e,t[u]);return e});function Np(n,t){return Po(n,Sr(E(t)))}var Up=ht(function(n,t){return n==null?{}:cl(n,t)});function Po(n,t){if(n==null)return{};var e=en(Ti(n),function(r){return[r]});return t=E(t),ws(n,e,function(r,u){return t(r,u[0])})}function Bp(n,t,e){t=Ct(t,n);var r=-1,u=t.length;for(u||(u=1,n=i);++r<u;){var o=n==null?i:n[ut(t[r])];o===i&&(r=u,o=e),n=pt(o)?o.call(n):o}return n}function Mp(n,t,e){return n==null?n:be(n,t,e)}function $p(n,t,e,r){return r=typeof r=="function"?r:i,n==null?n:be(n,t,e,r)}var Eo=$s(dn),To=$s(In);function Kp(n,t,e){var r=F(n),u=r||Rt(n)||re(n);if(t=E(t,4),e==null){var o=n&&n.constructor;u?e=r?new o:[]:rn(n)?e=pt(o)?jt(Xe(n)):{}:e={}}return(u?Mn:rt)(n,function(a,c,h){return t(e,a,c,h)}),e}function kp(n,t){return n==null?!0:Si(n,t)}function qp(n,t,e){return n==null?n:As(n,t,Ci(e))}function Hp(n,t,e,r){return r=typeof r=="function"?r:i,n==null?n:As(n,t,Ci(e),r)}function ie(n){return n==null?[]:ri(n,dn(n))}function zp(n){return n==null?[]:ri(n,In(n))}function Gp(n,t,e){return e===i&&(e=t,t=i),e!==i&&(e=zn(e),e=e===e?e:0),t!==i&&(t=zn(t),t=t===t?t:0),Ft(zn(n),t,e)}function Jp(n,t,e){return t=gt(t),e===i?(e=t,t=0):e=gt(e),n=zn(n),jc(n,t,e)}function Zp(n,t,e){if(e&&typeof e!="boolean"&&xn(n,t,e)&&(t=e=i),e===i&&(typeof t=="boolean"?(e=t,t=i):typeof n=="boolean"&&(e=n,n=i)),n===i&&t===i?(n=0,t=1):(n=gt(n),t===i?(t=n,n=0):t=gt(t)),n>t){var r=n;n=t,t=r}if(e||n%1||t%1){var u=ju();return _n(n+u*(t-n+If("1e-"+((u+"").length-1))),t)}return yi(n,t)}var Yp=te(function(n,t,e){return t=t.toLowerCase(),n+(e?Lo(t):t)});function Lo(n){return Gi(Y(n).toLowerCase())}function Oo(n){return n=Y(n),n&&n.replace(Xa,Mf).replace(_f,"")}function Xp(n,t,e){n=Y(n),t=On(t);var r=n.length;e=e===i?r:Ft(N(e),0,r);var u=e;return e-=t.length,e>=0&&n.slice(e,u)==t}function Qp(n){return n=Y(n),n&&Ta.test(n)?n.replace(au,$f):n}function Vp(n){return n=Y(n),n&&Na.test(n)?n.replace(Kr,"\\$&"):n}var jp=te(function(n,t,e){return n+(e?"-":"")+t.toLowerCase()}),ng=te(function(n,t,e){return n+(e?" ":"")+t.toLowerCase()}),tg=Ds("toLowerCase");function eg(n,t,e){n=Y(n),t=N(t);var r=t?Zt(n):0;if(!t||r>=t)return n;var u=(t-r)/2;return dr(nr(u),e)+n+dr(je(u),e)}function rg(n,t,e){n=Y(n),t=N(t);var r=t?Zt(n):0;return t&&r<t?n+dr(t-r,e):n}function ig(n,t,e){n=Y(n),t=N(t);var r=t?Zt(n):0;return t&&r<t?dr(t-r,e)+n:n}function ug(n,t,e){return e||t==null?t=0:t&&(t=+t),hc(Y(n).replace(kr,""),t||0)}function sg(n,t,e){return(e?xn(n,t,e):t===i)?t=1:t=N(t),mi(Y(n),t)}function og(){var n=arguments,t=Y(n[0]);return n.length<3?t:t.replace(n[1],n[2])}var ag=te(function(n,t,e){return n+(e?"_":"")+t.toLowerCase()});function fg(n,t,e){return e&&typeof e!="number"&&xn(n,t,e)&&(t=e=i),e=e===i?Un:e>>>0,e?(n=Y(n),n&&(typeof t=="string"||t!=null&&!qi(t))&&(t=On(t),!t&&Jt(n))?It(Qn(n),0,e):n.split(t,e)):[]}var cg=te(function(n,t,e){return n+(e?" ":"")+Gi(t)});function lg(n,t,e){return n=Y(n),e=e==null?0:Ft(N(e),0,n.length),t=On(t),n.slice(e,e+t.length)==t}function hg(n,t,e){var r=s.templateSettings;e&&xn(n,t,e)&&(t=i),n=Y(n),t=Cr({},t,r,Ks);var u=Cr({},t.imports,r.imports,Ks),o=dn(u),a=ri(u,o),c,h,y=0,m=t.interpolate||Be,S="__p += '",A=ui((t.escape||Be).source+"|"+m.source+"|"+(m===fu?Ha:Be).source+"|"+(t.evaluate||Be).source+"|$","g"),R="//# sourceURL="+(Q.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++xf+"]")+`
|
|
11
|
+
`;n.replace(A,function(O,K,H,Dn,Sn,Fn){return H||(H=Dn),S+=n.slice(y,Fn).replace(Qa,Kf),K&&(c=!0,S+=`' +
|
|
12
|
+
__e(`+K+`) +
|
|
13
|
+
'`),Sn&&(h=!0,S+=`';
|
|
14
14
|
`+Sn+`;
|
|
15
|
-
__p += '`),H&&(
|
|
15
|
+
__p += '`),H&&(S+=`' +
|
|
16
16
|
((__t = (`+H+`)) == null ? '' : __t) +
|
|
17
|
-
'`),y=Fn+
|
|
18
|
-
`;var
|
|
19
|
-
`+
|
|
17
|
+
'`),y=Fn+O.length,O}),S+=`';
|
|
18
|
+
`;var L=Q.call(t,"variable")&&t.variable;if(!L)S=`with (obj) {
|
|
19
|
+
`+S+`
|
|
20
20
|
}
|
|
21
|
-
`;else if(
|
|
22
|
-
`+(
|
|
21
|
+
`;else if(ka.test(L))throw new D(T);S=(h?S.replace(Ia,""):S).replace(Ra,"$1").replace(Pa,"$1;"),S="function("+(L||"obj")+`) {
|
|
22
|
+
`+(L?"":`obj || (obj = {});
|
|
23
23
|
`)+"var __t, __p = ''"+(c?", __e = _.escape":"")+(h?`, __j = Array.prototype.join;
|
|
24
24
|
function print() { __p += __j.call(arguments, '') }
|
|
25
25
|
`:`;
|
|
26
|
-
`)+
|
|
27
|
-
}`;var $=Wo(function(){return J(o,I+"return "+x).apply(i,a)});if($.source=x,ki($))throw $;return $}function hg(n){return Y(n).toLowerCase()}function dg(n){return Y(n).toUpperCase()}function pg(n,t,e){if(n=Y(n),n&&(e||t===i))return Ku(n);if(!n||!(t=On(t)))return n;var r=Qn(n),u=Qn(t),o=ku(r,u),a=qu(r,u)+1;return Pt(r,o,a).join("")}function gg(n,t,e){if(n=Y(n),n&&(e||t===i))return n.slice(0,Hu(n)+1);if(!n||!(t=On(t)))return n;var r=Qn(n),u=qu(r,Qn(t))+1;return Pt(r,0,u).join("")}function _g(n,t,e){if(n=Y(n),n&&(e||t===i))return n.replace(kr,"");if(!n||!(t=On(t)))return n;var r=Qn(n),u=ku(r,Qn(t));return Pt(r,u).join("")}function vg(n,t){var e=Oe,r=En;if(rn(t)){var u="separator"in t?t.separator:u;e="length"in t?B(t.length):e,r="omission"in t?On(t.omission):r}n=Y(n);var o=n.length;if(Jt(n)){var a=Qn(n);o=a.length}if(e>=o)return n;var c=e-Zt(r);if(c<1)return r;var h=a?Pt(a,0,c).join(""):n.slice(0,c);if(u===i)return h+r;if(a&&(c+=h.length-c),qi(u)){if(n.slice(c).search(u)){var y,m=h;for(u.global||(u=ui(u.source,Y(fu.exec(u))+"g")),u.lastIndex=0;y=u.exec(m);)var x=y.index;h=h.slice(0,x===i?c:x)}}else if(n.indexOf(On(u),c)!=c){var A=h.lastIndexOf(u);A>-1&&(h=h.slice(0,A))}return h+r}function wg(n){return n=Y(n),n&&Ra.test(n)?n.replace(su,Jf):n}var yg=te(function(n,t,e){return n+(e?" ":"")+t.toUpperCase()}),Gi=Ws("toUpperCase");function Oo(n,t,e){return n=Y(n),t=e?i:t,t===i?kf(n)?Xf(n):Wf(n):n.match(t)||[]}var Wo=K(function(n,t){try{return Tn(n,i,t)}catch(e){return ki(e)?e:new N(e)}}),mg=ht(function(n,t){return Mn(t,function(e){e=ut(e),ct(n,e,$i(n[e],n))}),n});function xg(n){var t=n==null?0:n.length,e=L();return n=t?en(n,function(r){if(typeof r[1]!="function")throw new $n(S);return[e(r[0]),r[1]]}):[],K(function(r){for(var u=-1;++u<t;){var o=n[u];if(Tn(o[0],this,r))return Tn(o[1],this,r)}})}function Sg(n){return Jc(kn(n,P))}function Ji(n){return function(){return n}}function Ag(n,t){return n==null||n!==n?t:n}var bg=Fs(),Cg=Fs(!0);function In(n){return n}function Zi(n){return ls(typeof n=="function"?n:kn(n,P))}function Pg(n){return ds(kn(n,P))}function Ig(n,t){return ps(n,kn(t,P))}var Rg=K(function(n,t){return function(e){return Se(e,n,t)}}),Eg=K(function(n,t){return function(e){return Se(n,e,t)}});function Yi(n,t,e){var r=dn(t),u=sr(t,r);e==null&&!(rn(t)&&(u.length||!r.length))&&(e=t,t=n,n=this,u=sr(t,dn(t)));var o=!(rn(e)&&"chain"in e)||!!e.chain,a=pt(n);return Mn(u,function(c){var h=t[c];n[c]=h,a&&(n.prototype[c]=function(){var y=this.__chain__;if(o||y){var m=n(this.__wrapped__),x=m.__actions__=bn(this.__actions__);return x.push({func:h,args:arguments,thisArg:n}),m.__chain__=y,m}return h.apply(n,mt([this.value()],arguments))})}),n}function Tg(){return pn._===this&&(pn._=ec),this}function Xi(){}function Lg(n){return n=B(n),K(function(t){return gs(t,n)})}var Og=Ii(en),Wg=Ii(Nu),Dg=Ii(Vr);function Do(n){return Di(n)?jr(ut(n)):cl(n)}function Fg(n){return function(t){return n==null?i:Nt(n,t)}}var Ng=Us(),Ug=Us(!0);function Qi(){return[]}function Vi(){return!1}function Bg(){return{}}function Mg(){return""}function $g(){return!0}function Kg(n,t){if(n=B(n),n<1||n>et)return[];var e=Un,r=_n(n,Un);t=L(t),n-=Un;for(var u=ei(r,t);++e<n;)t(e);return u}function kg(n){return U(n)?en(n,ut):Wn(n)?[n]:bn(js(Y(n)))}function qg(n){var t=++nc;return Y(n)+t}var zg=hr(function(n,t){return n+t},0),Hg=Ri("ceil"),Gg=hr(function(n,t){return n/t},1),Jg=Ri("floor");function Zg(n){return n&&n.length?ur(n,In,di):i}function Yg(n,t){return n&&n.length?ur(n,L(t,2),di):i}function Xg(n){return Mu(n,In)}function Qg(n,t){return Mu(n,L(t,2))}function Vg(n){return n&&n.length?ur(n,In,vi):i}function jg(n,t){return n&&n.length?ur(n,L(t,2),vi):i}var n_=hr(function(n,t){return n*t},1),t_=Ri("round"),e_=hr(function(n,t){return n-t},0);function r_(n){return n&&n.length?ti(n,In):0}function i_(n,t){return n&&n.length?ti(n,L(t,2)):0}return s.after=Pd,s.ary=co,s.assign=dp,s.assignIn=Co,s.assignInWith=Cr,s.assignWith=pp,s.at=gp,s.before=lo,s.bind=$i,s.bindAll=mg,s.bindKey=ho,s.castArray=Bd,s.chain=oo,s.chunk=Jl,s.compact=Zl,s.concat=Yl,s.cond=xg,s.conforms=Sg,s.constant=Ji,s.countBy=rd,s.create=_p,s.curry=po,s.curryRight=go,s.debounce=_o,s.defaults=vp,s.defaultsDeep=wp,s.defer=Id,s.delay=Rd,s.difference=Xl,s.differenceBy=Ql,s.differenceWith=Vl,s.drop=jl,s.dropRight=nh,s.dropRightWhile=th,s.dropWhile=eh,s.fill=rh,s.filter=ud,s.flatMap=ad,s.flatMapDeep=fd,s.flatMapDepth=cd,s.flatten=ro,s.flattenDeep=ih,s.flattenDepth=uh,s.flip=Ed,s.flow=bg,s.flowRight=Cg,s.fromPairs=sh,s.functions=Cp,s.functionsIn=Pp,s.groupBy=ld,s.initial=ah,s.intersection=fh,s.intersectionBy=ch,s.intersectionWith=lh,s.invert=Rp,s.invertBy=Ep,s.invokeMap=dd,s.iteratee=Zi,s.keyBy=pd,s.keys=dn,s.keysIn=Pn,s.map=yr,s.mapKeys=Lp,s.mapValues=Op,s.matches=Pg,s.matchesProperty=Ig,s.memoize=xr,s.merge=Wp,s.mergeWith=Po,s.method=Rg,s.methodOf=Eg,s.mixin=Yi,s.negate=Sr,s.nthArg=Lg,s.omit=Dp,s.omitBy=Fp,s.once=Td,s.orderBy=gd,s.over=Og,s.overArgs=Ld,s.overEvery=Wg,s.overSome=Dg,s.partial=Ki,s.partialRight=vo,s.partition=_d,s.pick=Np,s.pickBy=Io,s.property=Do,s.propertyOf=Fg,s.pull=gh,s.pullAll=uo,s.pullAllBy=_h,s.pullAllWith=vh,s.pullAt=wh,s.range=Ng,s.rangeRight=Ug,s.rearg=Od,s.reject=yd,s.remove=yh,s.rest=Wd,s.reverse=Bi,s.sampleSize=xd,s.set=Bp,s.setWith=Mp,s.shuffle=Sd,s.slice=mh,s.sortBy=Cd,s.sortedUniq=Ih,s.sortedUniqBy=Rh,s.split=ag,s.spread=Dd,s.tail=Eh,s.take=Th,s.takeRight=Lh,s.takeRightWhile=Oh,s.takeWhile=Wh,s.tap=Zh,s.throttle=Fd,s.thru=wr,s.toArray=So,s.toPairs=Ro,s.toPairsIn=Eo,s.toPath=kg,s.toPlainObject=bo,s.transform=$p,s.unary=Nd,s.union=Dh,s.unionBy=Fh,s.unionWith=Nh,s.uniq=Uh,s.uniqBy=Bh,s.uniqWith=Mh,s.unset=Kp,s.unzip=Mi,s.unzipWith=so,s.update=kp,s.updateWith=qp,s.values=ie,s.valuesIn=zp,s.without=$h,s.words=Oo,s.wrap=Ud,s.xor=Kh,s.xorBy=kh,s.xorWith=qh,s.zip=zh,s.zipObject=Hh,s.zipObjectDeep=Gh,s.zipWith=Jh,s.entries=Ro,s.entriesIn=Eo,s.extend=Co,s.extendWith=Cr,Yi(s,s),s.add=zg,s.attempt=Wo,s.camelCase=Zp,s.capitalize=To,s.ceil=Hg,s.clamp=Hp,s.clone=Md,s.cloneDeep=Kd,s.cloneDeepWith=kd,s.cloneWith=$d,s.conformsTo=qd,s.deburr=Lo,s.defaultTo=Ag,s.divide=Gg,s.endsWith=Yp,s.eq=jn,s.escape=Xp,s.escapeRegExp=Qp,s.every=id,s.find=sd,s.findIndex=to,s.findKey=yp,s.findLast=od,s.findLastIndex=eo,s.findLastKey=mp,s.floor=Jg,s.forEach=ao,s.forEachRight=fo,s.forIn=xp,s.forInRight=Sp,s.forOwn=Ap,s.forOwnRight=bp,s.get=zi,s.gt=zd,s.gte=Hd,s.has=Ip,s.hasIn=Hi,s.head=io,s.identity=In,s.includes=hd,s.indexOf=oh,s.inRange=Gp,s.invoke=Tp,s.isArguments=Mt,s.isArray=U,s.isArrayBuffer=Gd,s.isArrayLike=Cn,s.isArrayLikeObject=sn,s.isBoolean=Jd,s.isBuffer=It,s.isDate=Zd,s.isElement=Yd,s.isEmpty=Xd,s.isEqual=Qd,s.isEqualWith=Vd,s.isError=ki,s.isFinite=jd,s.isFunction=pt,s.isInteger=wo,s.isLength=Ar,s.isMap=yo,s.isMatch=np,s.isMatchWith=tp,s.isNaN=ep,s.isNative=rp,s.isNil=up,s.isNull=ip,s.isNumber=mo,s.isObject=rn,s.isObjectLike=un,s.isPlainObject=Re,s.isRegExp=qi,s.isSafeInteger=sp,s.isSet=xo,s.isString=br,s.isSymbol=Wn,s.isTypedArray=re,s.isUndefined=op,s.isWeakMap=ap,s.isWeakSet=fp,s.join=hh,s.kebabCase=Vp,s.last=zn,s.lastIndexOf=dh,s.lowerCase=jp,s.lowerFirst=ng,s.lt=cp,s.lte=lp,s.max=Zg,s.maxBy=Yg,s.mean=Xg,s.meanBy=Qg,s.min=Vg,s.minBy=jg,s.stubArray=Qi,s.stubFalse=Vi,s.stubObject=Bg,s.stubString=Mg,s.stubTrue=$g,s.multiply=n_,s.nth=ph,s.noConflict=Tg,s.noop=Xi,s.now=mr,s.pad=tg,s.padEnd=eg,s.padStart=rg,s.parseInt=ig,s.random=Jp,s.reduce=vd,s.reduceRight=wd,s.repeat=ug,s.replace=sg,s.result=Up,s.round=t_,s.runInContext=l,s.sample=md,s.size=Ad,s.snakeCase=og,s.some=bd,s.sortedIndex=xh,s.sortedIndexBy=Sh,s.sortedIndexOf=Ah,s.sortedLastIndex=bh,s.sortedLastIndexBy=Ch,s.sortedLastIndexOf=Ph,s.startCase=fg,s.startsWith=cg,s.subtract=e_,s.sum=r_,s.sumBy=i_,s.template=lg,s.times=Kg,s.toFinite=gt,s.toInteger=B,s.toLength=Ao,s.toLower=hg,s.toNumber=Hn,s.toSafeInteger=hp,s.toString=Y,s.toUpper=dg,s.trim=pg,s.trimEnd=gg,s.trimStart=_g,s.truncate=vg,s.unescape=wg,s.uniqueId=qg,s.upperCase=yg,s.upperFirst=Gi,s.each=ao,s.eachRight=fo,s.first=io,Yi(s,function(){var n={};return rt(s,function(t,e){Q.call(s.prototype,e)||(n[e]=t)}),n}(),{chain:!1}),s.VERSION=p,Mn(["bind","bindKey","curry","curryRight","partial","partialRight"],function(n){s[n].placeholder=s}),Mn(["drop","take"],function(n,t){z.prototype[n]=function(e){e=e===i?1:cn(B(e),0);var r=this.__filtered__&&!t?new z(this):this.clone();return r.__filtered__?r.__takeCount__=_n(e,r.__takeCount__):r.__views__.push({size:_n(e,Un),type:n+(r.__dir__<0?"Right":"")}),r},z.prototype[n+"Right"]=function(e){return this.reverse()[n](e).reverse()}}),Mn(["filter","map","takeWhile"],function(n,t){var e=t+1,r=e==ae||e==Er;z.prototype[n]=function(u){var o=this.clone();return o.__iteratees__.push({iteratee:L(u,3),type:e}),o.__filtered__=o.__filtered__||r,o}}),Mn(["head","last"],function(n,t){var e="take"+(t?"Right":"");z.prototype[n]=function(){return this[e](1).value()[0]}}),Mn(["initial","tail"],function(n,t){var e="drop"+(t?"":"Right");z.prototype[n]=function(){return this.__filtered__?new z(this):this[e](1)}}),z.prototype.compact=function(){return this.filter(In)},z.prototype.find=function(n){return this.filter(n).head()},z.prototype.findLast=function(n){return this.reverse().find(n)},z.prototype.invokeMap=K(function(n,t){return typeof n=="function"?new z(this):this.map(function(e){return Se(e,n,t)})}),z.prototype.reject=function(n){return this.filter(Sr(L(n)))},z.prototype.slice=function(n,t){n=B(n);var e=this;return e.__filtered__&&(n>0||t<0)?new z(e):(n<0?e=e.takeRight(-n):n&&(e=e.drop(n)),t!==i&&(t=B(t),e=t<0?e.dropRight(-t):e.take(t-n)),e)},z.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},z.prototype.toArray=function(){return this.take(Un)},rt(z.prototype,function(n,t){var e=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),u=s[r?"take"+(t=="last"?"Right":""):t],o=r||/^find/.test(t);u&&(s.prototype[t]=function(){var a=this.__wrapped__,c=r?[1]:arguments,h=a instanceof z,y=c[0],m=h||U(a),x=function(q){var H=u.apply(s,mt([q],c));return r&&A?H[0]:H};m&&e&&typeof y=="function"&&y.length!=1&&(h=m=!1);var A=this.__chain__,I=!!this.__actions__.length,O=o&&!A,$=h&&!I;if(!o&&m){a=$?a:new z(this);var W=n.apply(a,c);return W.__actions__.push({func:wr,args:[x],thisArg:i}),new Kn(W,A)}return O&&$?n.apply(this,c):(W=this.thru(x),O?r?W.value()[0]:W.value():W)})}),Mn(["pop","push","shift","sort","splice","unshift"],function(n){var t=ze[n],e=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",r=/^(?:pop|shift)$/.test(n);s.prototype[n]=function(){var u=arguments;if(r&&!this.__chain__){var o=this.value();return t.apply(U(o)?o:[],u)}return this[e](function(a){return t.apply(U(a)?a:[],u)})}}),rt(z.prototype,function(n,t){var e=s[t];if(e){var r=e.name+"";Q.call(Vt,r)||(Vt[r]=[]),Vt[r].push({name:t,func:e})}}),Vt[lr(i,Rn).name]=[{name:"wrapper",func:i}],z.prototype.clone=wc,z.prototype.reverse=yc,z.prototype.value=mc,s.prototype.at=Yh,s.prototype.chain=Xh,s.prototype.commit=Qh,s.prototype.next=Vh,s.prototype.plant=nd,s.prototype.reverse=td,s.prototype.toJSON=s.prototype.valueOf=s.prototype.value=ed,s.prototype.first=s.prototype.head,ge&&(s.prototype[ge]=jh),s},Yt=Qf();Lt?((Lt.exports=Yt)._=Yt,Zr._=Yt):pn._=Yt}).call(se)}(Te,Te.exports);var qo=Te.exports;const zo=ko(qo);class Ho{constructor(f){D(this,"config");this.config=f}async complete(f,i){var p;await this.persist(f,{...i,success:!0}),(p=this.config.logger)==null||p.debug("Transaction completed:",f)}async fail(f,i){var p;await this.persist(f,{...i,success:!1}),(p=this.config.logger)==null||p.debug("Transaction failed:",{...f,...i})}async persist(f,i){await fetch(`${this.config.apiUrl}/transactions/${f.id}`,{body:JSON.stringify(i),method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","x-persona-apikey":this.config.apiKey}})}}class Go{constructor(f,i){D(this,"transaction");D(this,"manager");this.transaction=f,this.manager=i}getFunctionCall(){return this.transaction.functionCall}async invoke(f,i){var E;const p=this.transaction.functionCall;if(!p){await this.fail("No function call found");return}const _=p.name,v=p.args,S=f[_];if(!S){await this.fail(`Tool ${_} not found`);return}try{const C=zo.get(i,"schema.config.parameters.properties",{}),R=(C&&Object.keys(C).length>0?Object.keys(C):((E=S.toString().replace(/\n/g," ").match(/^[^(]*\(([^)]*)\)/))==null?void 0:E[1].split(",").map(T=>T.trim()).filter(Boolean))||[]).map(T=>v[T]),P=await S.apply(null,R);await this.complete(P)}catch(C){await this.fail(`Error executing tool ${_}: ${C}`)}}async complete(f){await this.manager.complete(this.transaction,{success:!0,output:f,error:null})}async fail(f){await this.manager.fail(this.transaction,{success:!1,output:null,error:f})}}class ji extends ue{constructor(i){super();D(this,"status");D(this,"autostart");D(this,"session");D(this,"config");D(this,"notify",!0);D(this,"_tools");D(this,"_toolSchema",{});if(this.config=i,this.status="disconnected",this.autostart=!0,Array.isArray(i.tools)){this._tools={};for(const p of i.tools)p.schema&&p.implementation&&(this._tools[p.schema.name]=p.implementation,this._toolSchema[p.schema.name]=p)}else this._tools=i.tools}getName(){return"transaction"}getPriority(){return 0}getToolInstance(i){return this._toolSchema[i]}async connect(i){return this.setStatus("connected"),i}async disconnect(){this.setStatus("disconnected"),this.session=null}async syncSession(i){this.session=i}async sendPacket(i){}onTransaction(i){const p=new Ho(this.config),_=new Go(i,p);if(this.config.onTransaction)this.config.onTransaction(_);else{const v=i.functionCall?this.getToolInstance(i.functionCall.name):void 0;_.invoke(this._tools,v)}}getTools(){return this._tools}}function Jo(d,f){if(Array.isArray(d))return d;if(typeof d=="object"&&d!==null){const i=f.dev?"localhost:8000":f.baseUrl||"persona.applica.guru/api",p=f.dev?"http":"https",_=f.dev?"ws":"wss";let v=Object.keys(d).map(S=>{switch(S){case"rest":return Zo(d[S],{baseEndpointProtocol:p,baseEndpoint:i,apiKey:f.apiKey,agentId:f.agentId,userId:f.userId,logger:f.logger});case"webrtc":return Yo(d[S],{baseWebSocketProtocol:_,baseEndpoint:i,apiKey:f.apiKey,agentId:f.agentId,userId:f.userId,logger:f.logger});case"websocket":return Xo(d[S],{baseWebSocketProtocol:_,baseEndpoint:i,apiKey:f.apiKey,agentId:f.agentId,userId:f.userId,logger:f.logger});default:throw new Error(`Unknown protocol: ${S}`)}}).filter(S=>S!==null);return f.tools&&v.push(new ji({apiUrl:`${p}://${i}`,apiKey:f.apiKey,agentId:f.agentId,tools:f.tools,logger:f.logger})),v}throw new Error("Invalid protocols configuration")}function Zo(d,f){return d===!0?new Pr({apiUrl:`${f.baseEndpointProtocol}://${f.baseEndpoint}`,apiKey:f.apiKey,agentId:f.agentId,userId:f.userId,logger:f.logger}):typeof d=="object"&&d!==null?new Pr(d):null}function Yo(d,f){return d===!0?new Rr({webrtcUrl:`${f.baseWebSocketProtocol}://${f.baseEndpoint}/webrtc`,apiKey:f.apiKey,agentId:f.agentId,userId:f.userId,logger:f.logger}):typeof d=="object"&&d!==null?new Rr(d):null}function Xo(d,f){return d===!0?new Ir({webSocketUrl:`${f.baseWebSocketProtocol}://${f.baseEndpoint}/websocket`,apiKey:f.apiKey,agentId:f.agentId,userId:f.userId,logger:f.logger}):typeof d=="object"&&d!==null?new Ir(d):null}function Qo(d,f,i,p,_){return v=>{v.type==="message"?Vo(v.payload,d,f,i,_):v.type==="reasoning"?jo(v.payload,d,f,_):v.type==="transaction"&&na(v.payload,d,p)}}function Vo(d,f,i,p,_){d.createdAt||(d.createdAt=new Date),(d==null?void 0:d.finishReason)==="stop"&&!(d!=null&&d.functionResponse)&&!(d!=null&&d.thought)&&p(!1),d.thought&&(d.type="reasoning"),d.protocol=f.getName(),i(v=>{const S=$t([...v,d]);return _?_(S):S})}function jo(d,f,i,p){const _={type:"reasoning",text:d.thought,role:"assistant",finishReason:"stop",protocol:f.getName(),createdAt:new Date};i(v=>{const S=$t([...v,_]);return p?p(S):S})}function na(d,f,i){i.filter(p=>p!==f).forEach(p=>p.onTransaction(d))}function ta(d){return new Promise((f,i)=>{const p=new FileReader;p.readAsDataURL(d),p.onload=()=>{const v=p.result.split(";base64,")[1];f(v)},p.onerror=_=>{i(_)}})}function ea(d){const f={rest:i=>i.config.apiUrl,webrtc:i=>i.config.webrtcUrl.replace("/webrtc","").replace("ws://","http://").replace("wss://","https://"),websocket:i=>i.config.webSocketUrl.replace("/websocket","").replace("ws://","http://").replace("wss://","https://")};for(const i of d){const p=f[i.getName()];if(p)return p(i)}return null}function ra(d,f,i,p,_){return async v=>{var P;if(((P=v.content[0])==null?void 0:P.type)!=="text")throw new Error("Only text messages are supported");if(!d.some(T=>T.getName()!=="transaction"&&T.status==="connected")){f(T=>{const F={role:"assistant",type:"text",text:"No protocol is connected.",createdAt:new Date,finishReason:"stop"},Z=[...T,F];return p?p(Z):Z});return}const C={role:"user",type:"text",text:v.content[0].text,createdAt:new Date};f(T=>{const F=$t([...T,C]);return p?p(F):F}),i(!0);const M=d.sort((T,F)=>F.getPriority()-T.getPriority()).find(T=>T.status==="connected"),R=[];if(v.attachments)for(const T of v.attachments)T.contentType.startsWith("image/")&&T.file&&R.push({role:"user",image:{contentType:T.contentType,content:await ta(T.file)},text:"",type:"text",createdAt:new Date});v.content&&R.push({role:"user",text:v.content[0].text,type:"text",createdAt:new Date}),_==null||_.debug("Sending message:",R),await(M==null?void 0:M.sendPacket({type:"request",payload:R}))}}function ia(d,f,i,p,_,v){return async S=>{var Z;if(((Z=S.content[0])==null?void 0:Z.type)!=="text")throw new Error("Only text messages are supported");const E=d.sort((k,wn)=>wn.getPriority()-k.getPriority()).find(k=>k.status==="connected");if(!E){v==null||v.debug("No protocol available for edit");return}const C=S.parentId;if(!C){v==null||v.debug("No parent ID provided for edit");return}const M=f.findIndex(k=>k.id===C);if(M===-1){v==null||v.debug("Parent message not found:",C);return}const R=f.slice(0,M+1),P={role:"user",text:S.content[0].text,type:"text",createdAt:new Date},T=$t([...R,P]);i(_?_(T):T),p(!0);const F=[{role:"user",text:S.content[0].text,type:"text",createdAt:new Date}];v==null||v.debug("Sending edited message:",F),await E.sendPacket({type:"request",payload:F})}}function ua(d,f,i,p,_,v){return async(S,E)=>{const C=d.sort((Z,k)=>k.getPriority()-Z.getPriority()).find(Z=>Z.status==="connected");if(!C){v==null||v.debug("No protocol available for reload");return}const M=E.parentId??S;if(!M){v==null||v.debug("No parent ID provided for reload");return}const R=f.findIndex(Z=>Z.id===M);if(R===-1){v==null||v.debug("Parent message not found:",M);return}const P=f[R];i(Z=>{const k=Z.slice(0,R+1);return _?_(k):k});let T;if(P.role==="assistant"||P.role==="function"){for(let Z=R-1;Z>=0;Z--)if(f[Z].role==="user"){T=f[Z];break}}else P.role==="user"&&(T=P);if(!T){v==null||v.debug("No user message found to regenerate from");return}p(!0);const F=[];T.image&&F.push({role:"user",image:T.image,text:"",type:"text",createdAt:new Date}),F.push({role:"user",text:T.text,type:"text",createdAt:new Date}),v==null||v.debug("Regenerating message with config:",{actualParentId:M,sourceId:E.sourceId,custom:E.runConfig.custom}),await C.sendPacket({type:"request",payload:F})}}function sa(d,f,i,p){return()=>(i(!1),f(_=>{const v=_[_.length-1];if((v==null?void 0:v.role)==="assistant"&&!v.finishReason){const S=[..._];return S[S.length-1]={...v,finishReason:"stop",status:{type:"incomplete"}},p?p(S):S}return _}),d.forEach(_=>{_.status==="connected"&&_.sendPacket({type:"command",payload:{command:"set_initial_context",arguments:{cancel:!0}}}).catch(()=>{})}),Promise.resolve())}const oe=G.createContext(void 0);function oa(){const d=G.useContext(oe);if(!d)throw new Error("usePersonaRuntime must be used within a PersonaRuntimeProvider");return d}function nu(d){const f=G.useContext(oe);if(!f)throw new Error("usePersonaRuntimeProtocol must be used within a PersonaRuntimeProvider");const i=f.protocols.find(_=>_.getName()===d);if(!i)return null;const p=f.protocolsStatus.get(i.getName());return{...i,connect:i.connect.bind(i),disconnect:i.disconnect.bind(i),sendPacket:i.sendPacket.bind(i),setSession:i.setSession.bind(i),addStatusChangeListener:i.addStatusChangeListener.bind(i),addPacketListener:i.addPacketListener.bind(i),getName:i.getName.bind(i),getPriority:i.getPriority.bind(i),status:p||i.status}}function aa(){const d=G.useContext(oe);if(!d)throw new Error("usePersonaRuntimeEndpoint must be used within a PersonaRuntimeProvider");return ea(d.protocols)}function fa(){return nu("webrtc")}function ca(){const d=G.useContext(oe);if(!d)throw new Error("usePersonaRuntimeMessages must be used within a PersonaRuntimeProvider");return d.getMessages()}function la(){const d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";let f="";for(let i=0;i<16;i++)f+=d.charAt(Math.floor(Math.random()*d.length));return f}function ha(d,f,i,p,_,v,S,E,C,M,R){return{threadId:d,threads:f.filter(P=>P.status==="regular").map(P=>({id:P.threadId,threadId:P.threadId,title:P.title||`Chat ${P.threadId}`,status:P.status})),archivedThreads:f.filter(P=>P.status==="archived").map(P=>({id:P.threadId,threadId:P.threadId,title:P.title||`Archived Chat ${P.threadId}`,status:P.status})),onSwitchToNewThread:()=>{const P=la();R==null||R.debug("Creating new thread:",P);const T={threadId:P,status:"regular",title:"New Chat"};p(F=>[T,...F]),i(P),v==null||v(P)},onSwitchToThread:P=>{R==null||R.debug("Switching to thread:",P),i(P),S==null||S(P)},onArchive:P=>{R==null||R.debug("Archiving thread:",P),p(T=>T.map(F=>F.threadId===P?{...F,status:"archived"}:F)),E==null||E(P)},onUnarchive:P=>{R==null||R.debug("Unarchiving thread:",P),p(T=>T.map(F=>F.threadId===P?{...F,status:"regular"}:F)),C==null||C(P)},onDelete:async P=>{if(R==null||R.debug("Deleting thread:",P),p(T=>T.filter(F=>F.threadId!==P)),d===P){const T=f.filter(F=>F.threadId!==P&&F.status==="regular");T.length>0&&i(T[0].threadId)}_.remove(P).then(()=>R==null?void 0:R.debug("Thread deleted from backend")).catch(T=>R==null?void 0:R.error("Failed to delete thread:",T)),M==null||M(P)}}}class tu{constructor(f){D(this,"endpoint");D(this,"apiKey");D(this,"pageSize");D(this,"logger");this.endpoint=f.endpoint.replace(/\/$/,""),this.apiKey=f.apiKey,this.pageSize=f.pageSize??200,this.logger=f.logger}buildHeaders(){const f={"Content-Type":"application/json"};return this.apiKey&&(f["x-persona-apikey"]=this.apiKey),f}async sync(f){var p,_;if(!f)return[];const i=`${this.endpoint}/sessions/${encodeURIComponent(String(f))}/messages?page=1&size=${this.pageSize}`;try{const v=await fetch(i,{method:"GET",headers:this.buildHeaders()});if(!v.ok)return(p=this.logger)==null||p.warn("PersonaSessionStorage: failed to fetch messages",v.status,await v.text()),[];const S=await v.json();return Array.isArray(S.items)?S.items.map(C=>({id:C.id??C.messageId??void 0,protocol:C.protocol,thought:C.thought,text:C.text??"",image:C.image,type:C.type??"text",role:C.role??"assistant",file:C.file,sources:C.sources,sessionId:C.sessionId??f,finishReason:C.finishReason,functionCalls:C.functionCalls,functionResponse:C.functionResponse,status:C.status,createdAt:C.createdAt?new Date(C.createdAt):void 0,metadata:C.metadata})):[]}catch(v){return(_=this.logger)==null||_.warn("PersonaSessionStorage: error fetching messages",v),[]}}async remove(f){var p,_;if(!f)return;const i=`${this.endpoint}/sessions/${encodeURIComponent(String(f))}`;try{const v=await fetch(i,{method:"DELETE",headers:this.buildHeaders()});if(!v.ok){const S=await v.text();throw(p=this.logger)==null||p.warn("PersonaSessionStorage: failed to delete session",v.status,S),new Error(`Failed to delete session: ${v.status}`)}return}catch(v){throw(_=this.logger)==null||_.warn("PersonaSessionStorage: error deleting session",v),v}}async clearAll(){return Promise.reject(new Error("PersonaAPIMessageStorage: clearAll not supported"))}async list(f,i){var v,S;const p=new URLSearchParams({page:"1",size:"100"});i&&p.set("userId",i),f&&p.set("agentId",f);const _=`${this.endpoint}/sessions?${p.toString()}`;try{const E=await fetch(_,{method:"GET",headers:this.buildHeaders()});if(!E.ok)return(v=this.logger)==null||v.warn("PersonaSessionStorage: failed to list sessions",E.status),[];const C=await E.json();return Array.isArray(C.items)?C.items.map(R=>({threadId:R.code||R.id,title:R.title||`Session ${R.code||R.id}`,status:R.status==="archived"?"archived":"regular"})):[]}catch(E){return(S=this.logger)==null||S.warn("PersonaSessionStorage: error listing sessions",E),[]}}}function da({dev:d=!1,baseUrl:f,protocols:i,logger:p,children:_,session:v="new",transformMessages:S,threads:E=!1,sessionStorage:C,onThreadCreate:M,onThreadSwitch:R,onThreadRename:P,onThreadArchive:T,onThreadUnarchive:F,onThreadDelete:Z,...k}){const[wn,Rn]=G.useState(!1),[tt,an]=G.useState([]),[Et,Jn]=G.useState(new Map),vt=G.useRef(!1),An=G.useRef(!1),Nn=G.useMemo(()=>C||new tu({apiKey:k.apiKey,endpoint:f||"https://persona.applica.guru/api"}),[C,f,k.apiKey]),[Kt,Oe]=G.useState([]),[En,We]=G.useState(""),kt=G.useRef(typeof v=="string"?v:"new"),ae=G.useRef(!1);G.useEffect(()=>{!E||ae.current||(ae.current=!0,Nn.list(k.agentId,k.userId).then(V=>{(V==null?void 0:V.length)>0&&(Oe(V),We(V[0].threadId))}).catch(V=>p==null?void 0:p.error("Failed to load threads:",V)))},[E,Nn,k.agentId,k.userId,p]);const ln=G.useMemo(()=>Jo(i,{dev:d||!1,baseUrl:f,apiKey:k.apiKey,agentId:k.agentId,userId:k.userId,tools:k.tools,logger:p}),[i,d,f,k.apiKey,k.agentId,k.userId,k.tools,p]);G.useEffect(()=>{vt.current||(vt.current=!0,p==null||p.debug("Setting up protocols:",ln.map(V=>V.getName())),ln.forEach(V=>{V.setSession(kt.current),V.clearListeners(),V.addStatusChangeListener(hn=>{p==null||p.debug(`${V.getName()} status: ${hn}`),Jn(Zn=>{const Tt=new Map(Zn);return Tt.set(V.getName(),hn),Tt}),hn==="connected"&&!An.current&&(k.context&&V.sendPacket({type:"command",payload:{command:"set_initial_context",arguments:k.context}}).catch(()=>{}),k.tools&&Array.isArray(k.tools)&&V.sendPacket({type:"command",payload:{command:"set_local_tools",arguments:{tools:k.tools.map(Zn=>Zn.schema)}}}).catch(()=>{}))}),V.addPacketListener(Qo(V,an,Rn,ln,S)),V.autostart&&V.status==="disconnected"&&(p==null||p.debug(`Auto-connecting protocol: ${V.getName()}`),V.connect(kt.current).catch(()=>{}),Rn(!1))}))},[]),G.useEffect(()=>{if(!E||!En){an([]);return}if(An.current||En===kt.current)return;An.current=!0,p==null||p.info("Switching to thread:",En),(async()=>{try{const hn=ln.filter(yn=>yn.status==="connected");hn.length>0&&await Promise.allSettled(hn.map(yn=>yn.disconnect())),kt.current=En,await Promise.allSettled(ln.map(yn=>yn.setSession(En)));const Zn=await Nn.sync(En),Tt=$t(Zn);an(S?S(Tt):Tt),p==null||p.debug(`Loaded ${Zn.length} messages for thread ${En}`);const wt=ln.filter(yn=>yn.autostart);wt.length>0&&await Promise.allSettled(wt.map(yn=>yn.connect(En)))}catch(hn){p==null||p.error("Failed to switch thread:",hn),an([])}finally{An.current=!1}})()},[En,E,ln,Nn,S,p]);const Er=G.useCallback(ra(ln,an,Rn,S,p),[ln,S,p]),st=G.useCallback(ia(ln,tt,an,Rn,S,p),[ln,tt,S,p]),et=G.useCallback(ua(ln,tt,an,Rn,S,p),[ln,tt,S,p]),Tr=G.useCallback(sa(ln,an,Rn,S),[ln,S]),qt=G.useCallback(V=>{const hn=$t([...V]);an(S?S(hn):hn)},[S]),Un=G.useCallback(()=>tt,[tt]),De=G.useMemo(()=>{if(E)return ha(En,Kt,We,Oe,Nn,M,R,T,F,Z,p)},[E,En,Kt,Nn,M,R,T,F,Z,p]),Lr=Ee.useExternalStoreRuntime({isRunning:wn,messages:tt,convertMessage:$o,setMessages:qt,onNew:Er,onEdit:st,onCancel:Tr,onReload:et,adapters:{attachments:new Ee.CompositeAttachmentAdapter([new Ee.SimpleImageAttachmentAdapter]),...De?{threadList:De}:{}}});return Gn.jsx(oe.Provider,{value:{protocols:ln,protocolsStatus:Et,getMessages:Un},children:Gn.jsx(Ee.AssistantRuntimeProvider,{runtime:Lr,children:_})})}function pa({children:d,...f}){return Gn.jsx(da,{...f,children:d})}class ga{constructor(){D(this,"prefix","[Persona]")}log(f,...i){console.log(`${this.prefix} - ${f}`,...i)}info(f,...i){console.info(`${this.prefix} - ${f}`,...i)}warn(f,...i){console.warn(`${this.prefix} - ${f}`,...i)}error(f,...i){console.error(`${this.prefix} - ${f}`,...i)}debug(f,...i){console.debug(`${this.prefix} - ${f}`,...i)}}function Rt(d,f,i){return{type:d,description:f,...i}}function eu(d){const f=Object.entries(d.parameters).filter(([i,p])=>p.required).map(([i])=>i);return{type:"local",name:d.name,description:d.description,config:{timeout:d.timeout||60,parameters:{type:"object",title:d.title||`${d.name} parameters`,required:f,properties:d.parameters},output:{type:"object",title:`${d.name} output`,properties:d.output}}}}function Le(d){return{schema:eu(d),implementation:d.implementation}}function ru(d,f,i,p,_,v){const S={name:d,description:f,title:v==null?void 0:v.title,timeout:v==null?void 0:v.timeout,parameters:p,output:_,implementation:i};return Le(S)}const _a=ru("sum","Sum two numbers",function(f,i){return{result:f+i}},{a:Rt("number","First number to sum",{required:!0}),b:Rt("number","Second number to sum",{required:!0})},{result:Rt("number","Sum of two numbers")}),va=Le({name:"navigate_to",description:"Allow agent to redirect user to specific sub page like /foo or #/foo or anything like that",title:"Sum two numbers",timeout:60,parameters:{a:Rt("number","First number to sum"),b:Rt("number","Seconth number to sum")},output:{result:Rt("number","Sum of two numbers")},implementation:function(f,i){return{result:f+i}}});function wa(d){const f=[],i={};return d.forEach(p=>{const{schema:_,implementation:v}=Le(p);f.push(_),i[p.name]=v}),{schemas:f,implementations:i}}function ya(d,f){const{required:i,properties:p}=f.config.parameters;for(const _ of i)if(!(_ in d))throw new Error(`Missing required parameter: ${_}`);for(const[_,v]of Object.entries(d)){const S=p[_];if(S){if(S.type==="number"&&typeof v!="number")throw new Error(`Parameter ${_} should be a number`);if(S.type==="string"&&typeof v!="string")throw new Error(`Parameter ${_} should be a string`);if(S.type==="boolean"&&typeof v!="boolean")throw new Error(`Parameter ${_} should be a boolean`)}}return!0}return X.PersonaConsoleLogger=ga,X.PersonaProtocolBase=ue,X.PersonaRESTProtocol=Pr,X.PersonaRuntimeProvider=pa,X.PersonaSessionStorage=tu,X.PersonaTransactionProtocol=ji,X.PersonaWebRTCProtocol=Rr,X.PersonaWebSocketProtocol=Ir,X.createParameter=Rt,X.createTool=Le,X.createToolFromFunction=ru,X.createToolRegistry=wa,X.generateToolSchema=eu,X.navigateToToolExample=va,X.sumTool=_a,X.usePersonaRuntime=oa,X.usePersonaRuntimeEndpoint=aa,X.usePersonaRuntimeMessages=ca,X.usePersonaRuntimeProtocol=nu,X.usePersonaRuntimeWebRTCProtocol=fa,X.validateToolParameters=ya,Object.defineProperty(X,Symbol.toStringTag,{value:"Module"}),X}({},React,React,AssistantUI);
|
|
26
|
+
`)+S+`return __p
|
|
27
|
+
}`;var U=Do(function(){return G(o,R+"return "+S).apply(i,a)});if(U.source=S,ki(U))throw U;return U}function dg(n){return Y(n).toLowerCase()}function pg(n){return Y(n).toUpperCase()}function gg(n,t,e){if(n=Y(n),n&&(e||t===i))return ku(n);if(!n||!(t=On(t)))return n;var r=Qn(n),u=Qn(t),o=qu(r,u),a=Hu(r,u)+1;return It(r,o,a).join("")}function _g(n,t,e){if(n=Y(n),n&&(e||t===i))return n.slice(0,Gu(n)+1);if(!n||!(t=On(t)))return n;var r=Qn(n),u=Hu(r,Qn(t))+1;return It(r,0,u).join("")}function vg(n,t,e){if(n=Y(n),n&&(e||t===i))return n.replace(kr,"");if(!n||!(t=On(t)))return n;var r=Qn(n),u=qu(r,Qn(t));return It(r,u).join("")}function wg(n,t){var e=Oe,r=En;if(rn(t)){var u="separator"in t?t.separator:u;e="length"in t?N(t.length):e,r="omission"in t?On(t.omission):r}n=Y(n);var o=n.length;if(Jt(n)){var a=Qn(n);o=a.length}if(e>=o)return n;var c=e-Zt(r);if(c<1)return r;var h=a?It(a,0,c).join(""):n.slice(0,c);if(u===i)return h+r;if(a&&(c+=h.length-c),qi(u)){if(n.slice(c).search(u)){var y,m=h;for(u.global||(u=ui(u.source,Y(cu.exec(u))+"g")),u.lastIndex=0;y=u.exec(m);)var S=y.index;h=h.slice(0,S===i?c:S)}}else if(n.indexOf(On(u),c)!=c){var A=h.lastIndexOf(u);A>-1&&(h=h.slice(0,A))}return h+r}function yg(n){return n=Y(n),n&&Ea.test(n)?n.replace(ou,Zf):n}var mg=te(function(n,t,e){return n+(e?" ":"")+t.toUpperCase()}),Gi=Ds("toUpperCase");function Wo(n,t,e){return n=Y(n),t=e?i:t,t===i?qf(n)?Qf(n):Df(n):n.match(t)||[]}var Do=M(function(n,t){try{return Tn(n,i,t)}catch(e){return ki(e)?e:new D(e)}}),xg=ht(function(n,t){return Mn(t,function(e){e=ut(e),ct(n,e,$i(n[e],n))}),n});function Sg(n){var t=n==null?0:n.length,e=E();return n=t?en(n,function(r){if(typeof r[1]!="function")throw new $n(x);return[e(r[0]),r[1]]}):[],M(function(r){for(var u=-1;++u<t;){var o=n[u];if(Tn(o[0],this,r))return Tn(o[1],this,r)}})}function Ag(n){return Zc(kn(n,q))}function Ji(n){return function(){return n}}function bg(n,t){return n==null||n!==n?t:n}var Cg=Ns(),Ig=Ns(!0);function Rn(n){return n}function Zi(n){return hs(typeof n=="function"?n:kn(n,q))}function Rg(n){return ps(kn(n,q))}function Pg(n,t){return gs(n,kn(t,q))}var Eg=M(function(n,t){return function(e){return Se(e,n,t)}}),Tg=M(function(n,t){return function(e){return Se(n,e,t)}});function Yi(n,t,e){var r=dn(t),u=sr(t,r);e==null&&!(rn(t)&&(u.length||!r.length))&&(e=t,t=n,n=this,u=sr(t,dn(t)));var o=!(rn(e)&&"chain"in e)||!!e.chain,a=pt(n);return Mn(u,function(c){var h=t[c];n[c]=h,a&&(n.prototype[c]=function(){var y=this.__chain__;if(o||y){var m=n(this.__wrapped__),S=m.__actions__=bn(this.__actions__);return S.push({func:h,args:arguments,thisArg:n}),m.__chain__=y,m}return h.apply(n,mt([this.value()],arguments))})}),n}function Lg(){return pn._===this&&(pn._=rc),this}function Xi(){}function Og(n){return n=N(n),M(function(t){return _s(t,n)})}var Wg=Ri(en),Dg=Ri(Uu),Fg=Ri(Vr);function Fo(n){return Di(n)?jr(ut(n)):ll(n)}function Ng(n){return function(t){return n==null?i:Nt(n,t)}}var Ug=Bs(),Bg=Bs(!0);function Qi(){return[]}function Vi(){return!1}function Mg(){return{}}function $g(){return""}function Kg(){return!0}function kg(n,t){if(n=N(n),n<1||n>et)return[];var e=Un,r=_n(n,Un);t=E(t),n-=Un;for(var u=ei(r,t);++e<n;)t(e);return u}function qg(n){return F(n)?en(n,ut):Wn(n)?[n]:bn(no(Y(n)))}function Hg(n){var t=++tc;return Y(n)+t}var zg=hr(function(n,t){return n+t},0),Gg=Pi("ceil"),Jg=hr(function(n,t){return n/t},1),Zg=Pi("floor");function Yg(n){return n&&n.length?ur(n,Rn,di):i}function Xg(n,t){return n&&n.length?ur(n,E(t,2),di):i}function Qg(n){return $u(n,Rn)}function Vg(n,t){return $u(n,E(t,2))}function jg(n){return n&&n.length?ur(n,Rn,vi):i}function n_(n,t){return n&&n.length?ur(n,E(t,2),vi):i}var t_=hr(function(n,t){return n*t},1),e_=Pi("round"),r_=hr(function(n,t){return n-t},0);function i_(n){return n&&n.length?ti(n,Rn):0}function u_(n,t){return n&&n.length?ti(n,E(t,2)):0}return s.after=Rd,s.ary=lo,s.assign=pp,s.assignIn=Io,s.assignInWith=Cr,s.assignWith=gp,s.at=_p,s.before=ho,s.bind=$i,s.bindAll=xg,s.bindKey=po,s.castArray=Md,s.chain=ao,s.chunk=Zl,s.compact=Yl,s.concat=Xl,s.cond=Sg,s.conforms=Ag,s.constant=Ji,s.countBy=id,s.create=vp,s.curry=go,s.curryRight=_o,s.debounce=vo,s.defaults=wp,s.defaultsDeep=yp,s.defer=Pd,s.delay=Ed,s.difference=Ql,s.differenceBy=Vl,s.differenceWith=jl,s.drop=nh,s.dropRight=th,s.dropRightWhile=eh,s.dropWhile=rh,s.fill=ih,s.filter=sd,s.flatMap=fd,s.flatMapDeep=cd,s.flatMapDepth=ld,s.flatten=io,s.flattenDeep=uh,s.flattenDepth=sh,s.flip=Td,s.flow=Cg,s.flowRight=Ig,s.fromPairs=oh,s.functions=Ip,s.functionsIn=Rp,s.groupBy=hd,s.initial=fh,s.intersection=ch,s.intersectionBy=lh,s.intersectionWith=hh,s.invert=Ep,s.invertBy=Tp,s.invokeMap=pd,s.iteratee=Zi,s.keyBy=gd,s.keys=dn,s.keysIn=In,s.map=yr,s.mapKeys=Op,s.mapValues=Wp,s.matches=Rg,s.matchesProperty=Pg,s.memoize=xr,s.merge=Dp,s.mergeWith=Ro,s.method=Eg,s.methodOf=Tg,s.mixin=Yi,s.negate=Sr,s.nthArg=Og,s.omit=Fp,s.omitBy=Np,s.once=Ld,s.orderBy=_d,s.over=Wg,s.overArgs=Od,s.overEvery=Dg,s.overSome=Fg,s.partial=Ki,s.partialRight=wo,s.partition=vd,s.pick=Up,s.pickBy=Po,s.property=Fo,s.propertyOf=Ng,s.pull=_h,s.pullAll=so,s.pullAllBy=vh,s.pullAllWith=wh,s.pullAt=yh,s.range=Ug,s.rangeRight=Bg,s.rearg=Wd,s.reject=md,s.remove=mh,s.rest=Dd,s.reverse=Bi,s.sampleSize=Sd,s.set=Mp,s.setWith=$p,s.shuffle=Ad,s.slice=xh,s.sortBy=Id,s.sortedUniq=Ph,s.sortedUniqBy=Eh,s.split=fg,s.spread=Fd,s.tail=Th,s.take=Lh,s.takeRight=Oh,s.takeRightWhile=Wh,s.takeWhile=Dh,s.tap=Yh,s.throttle=Nd,s.thru=wr,s.toArray=Ao,s.toPairs=Eo,s.toPairsIn=To,s.toPath=qg,s.toPlainObject=Co,s.transform=Kp,s.unary=Ud,s.union=Fh,s.unionBy=Nh,s.unionWith=Uh,s.uniq=Bh,s.uniqBy=Mh,s.uniqWith=$h,s.unset=kp,s.unzip=Mi,s.unzipWith=oo,s.update=qp,s.updateWith=Hp,s.values=ie,s.valuesIn=zp,s.without=Kh,s.words=Wo,s.wrap=Bd,s.xor=kh,s.xorBy=qh,s.xorWith=Hh,s.zip=zh,s.zipObject=Gh,s.zipObjectDeep=Jh,s.zipWith=Zh,s.entries=Eo,s.entriesIn=To,s.extend=Io,s.extendWith=Cr,Yi(s,s),s.add=zg,s.attempt=Do,s.camelCase=Yp,s.capitalize=Lo,s.ceil=Gg,s.clamp=Gp,s.clone=$d,s.cloneDeep=kd,s.cloneDeepWith=qd,s.cloneWith=Kd,s.conformsTo=Hd,s.deburr=Oo,s.defaultTo=bg,s.divide=Jg,s.endsWith=Xp,s.eq=jn,s.escape=Qp,s.escapeRegExp=Vp,s.every=ud,s.find=od,s.findIndex=eo,s.findKey=mp,s.findLast=ad,s.findLastIndex=ro,s.findLastKey=xp,s.floor=Zg,s.forEach=fo,s.forEachRight=co,s.forIn=Sp,s.forInRight=Ap,s.forOwn=bp,s.forOwnRight=Cp,s.get=Hi,s.gt=zd,s.gte=Gd,s.has=Pp,s.hasIn=zi,s.head=uo,s.identity=Rn,s.includes=dd,s.indexOf=ah,s.inRange=Jp,s.invoke=Lp,s.isArguments=Mt,s.isArray=F,s.isArrayBuffer=Jd,s.isArrayLike=Cn,s.isArrayLikeObject=sn,s.isBoolean=Zd,s.isBuffer=Rt,s.isDate=Yd,s.isElement=Xd,s.isEmpty=Qd,s.isEqual=Vd,s.isEqualWith=jd,s.isError=ki,s.isFinite=np,s.isFunction=pt,s.isInteger=yo,s.isLength=Ar,s.isMap=mo,s.isMatch=tp,s.isMatchWith=ep,s.isNaN=rp,s.isNative=ip,s.isNil=sp,s.isNull=up,s.isNumber=xo,s.isObject=rn,s.isObjectLike=un,s.isPlainObject=Pe,s.isRegExp=qi,s.isSafeInteger=op,s.isSet=So,s.isString=br,s.isSymbol=Wn,s.isTypedArray=re,s.isUndefined=ap,s.isWeakMap=fp,s.isWeakSet=cp,s.join=dh,s.kebabCase=jp,s.last=Hn,s.lastIndexOf=ph,s.lowerCase=ng,s.lowerFirst=tg,s.lt=lp,s.lte=hp,s.max=Yg,s.maxBy=Xg,s.mean=Qg,s.meanBy=Vg,s.min=jg,s.minBy=n_,s.stubArray=Qi,s.stubFalse=Vi,s.stubObject=Mg,s.stubString=$g,s.stubTrue=Kg,s.multiply=t_,s.nth=gh,s.noConflict=Lg,s.noop=Xi,s.now=mr,s.pad=eg,s.padEnd=rg,s.padStart=ig,s.parseInt=ug,s.random=Zp,s.reduce=wd,s.reduceRight=yd,s.repeat=sg,s.replace=og,s.result=Bp,s.round=e_,s.runInContext=l,s.sample=xd,s.size=bd,s.snakeCase=ag,s.some=Cd,s.sortedIndex=Sh,s.sortedIndexBy=Ah,s.sortedIndexOf=bh,s.sortedLastIndex=Ch,s.sortedLastIndexBy=Ih,s.sortedLastIndexOf=Rh,s.startCase=cg,s.startsWith=lg,s.subtract=r_,s.sum=i_,s.sumBy=u_,s.template=hg,s.times=kg,s.toFinite=gt,s.toInteger=N,s.toLength=bo,s.toLower=dg,s.toNumber=zn,s.toSafeInteger=dp,s.toString=Y,s.toUpper=pg,s.trim=gg,s.trimEnd=_g,s.trimStart=vg,s.truncate=wg,s.unescape=yg,s.uniqueId=Hg,s.upperCase=mg,s.upperFirst=Gi,s.each=fo,s.eachRight=co,s.first=uo,Yi(s,function(){var n={};return rt(s,function(t,e){Q.call(s.prototype,e)||(n[e]=t)}),n}(),{chain:!1}),s.VERSION=p,Mn(["bind","bindKey","curry","curryRight","partial","partialRight"],function(n){s[n].placeholder=s}),Mn(["drop","take"],function(n,t){k.prototype[n]=function(e){e=e===i?1:cn(N(e),0);var r=this.__filtered__&&!t?new k(this):this.clone();return r.__filtered__?r.__takeCount__=_n(e,r.__takeCount__):r.__views__.push({size:_n(e,Un),type:n+(r.__dir__<0?"Right":"")}),r},k.prototype[n+"Right"]=function(e){return this.reverse()[n](e).reverse()}}),Mn(["filter","map","takeWhile"],function(n,t){var e=t+1,r=e==ae||e==Er;k.prototype[n]=function(u){var o=this.clone();return o.__iteratees__.push({iteratee:E(u,3),type:e}),o.__filtered__=o.__filtered__||r,o}}),Mn(["head","last"],function(n,t){var e="take"+(t?"Right":"");k.prototype[n]=function(){return this[e](1).value()[0]}}),Mn(["initial","tail"],function(n,t){var e="drop"+(t?"":"Right");k.prototype[n]=function(){return this.__filtered__?new k(this):this[e](1)}}),k.prototype.compact=function(){return this.filter(Rn)},k.prototype.find=function(n){return this.filter(n).head()},k.prototype.findLast=function(n){return this.reverse().find(n)},k.prototype.invokeMap=M(function(n,t){return typeof n=="function"?new k(this):this.map(function(e){return Se(e,n,t)})}),k.prototype.reject=function(n){return this.filter(Sr(E(n)))},k.prototype.slice=function(n,t){n=N(n);var e=this;return e.__filtered__&&(n>0||t<0)?new k(e):(n<0?e=e.takeRight(-n):n&&(e=e.drop(n)),t!==i&&(t=N(t),e=t<0?e.dropRight(-t):e.take(t-n)),e)},k.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},k.prototype.toArray=function(){return this.take(Un)},rt(k.prototype,function(n,t){var e=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),u=s[r?"take"+(t=="last"?"Right":""):t],o=r||/^find/.test(t);u&&(s.prototype[t]=function(){var a=this.__wrapped__,c=r?[1]:arguments,h=a instanceof k,y=c[0],m=h||F(a),S=function(K){var H=u.apply(s,mt([K],c));return r&&A?H[0]:H};m&&e&&typeof y=="function"&&y.length!=1&&(h=m=!1);var A=this.__chain__,R=!!this.__actions__.length,L=o&&!A,U=h&&!R;if(!o&&m){a=U?a:new k(this);var O=n.apply(a,c);return O.__actions__.push({func:wr,args:[S],thisArg:i}),new Kn(O,A)}return L&&U?n.apply(this,c):(O=this.thru(S),L?r?O.value()[0]:O.value():O)})}),Mn(["pop","push","shift","sort","splice","unshift"],function(n){var t=He[n],e=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",r=/^(?:pop|shift)$/.test(n);s.prototype[n]=function(){var u=arguments;if(r&&!this.__chain__){var o=this.value();return t.apply(F(o)?o:[],u)}return this[e](function(a){return t.apply(F(a)?a:[],u)})}}),rt(k.prototype,function(n,t){var e=s[t];if(e){var r=e.name+"";Q.call(Vt,r)||(Vt[r]=[]),Vt[r].push({name:t,func:e})}}),Vt[lr(i,Pn).name]=[{name:"wrapper",func:i}],k.prototype.clone=yc,k.prototype.reverse=mc,k.prototype.value=xc,s.prototype.at=Xh,s.prototype.chain=Qh,s.prototype.commit=Vh,s.prototype.next=jh,s.prototype.plant=td,s.prototype.reverse=ed,s.prototype.toJSON=s.prototype.valueOf=s.prototype.value=rd,s.prototype.first=s.prototype.head,ge&&(s.prototype[ge]=nd),s},Yt=Vf();Lt?((Lt.exports=Yt)._=Yt,Zr._=Yt):pn._=Yt}).call(se)}(Te,Te.exports);var Ho=Te.exports;const zo=qo(Ho);class Go{constructor(f){W(this,"config");this.config=f}async complete(f,i){var p;await this.persist(f,{...i,success:!0}),(p=this.config.logger)==null||p.debug("Transaction completed:",f)}async fail(f,i){var p;await this.persist(f,{...i,success:!1}),(p=this.config.logger)==null||p.debug("Transaction failed:",{...f,...i})}async persist(f,i){await fetch(`${this.config.apiUrl}/transactions/${f.id}`,{body:JSON.stringify(i),method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","x-persona-apikey":this.config.apiKey}})}}class Jo{constructor(f,i){W(this,"transaction");W(this,"manager");this.transaction=f,this.manager=i}getFunctionCall(){return this.transaction.functionCall}async invoke(f,i){var T;const p=this.transaction.functionCall;if(!p){await this.fail("No function call found");return}const _=p.name,v=p.args,x=f[_];if(!x){await this.fail(`Tool ${_} not found`);return}try{const b=zo.get(i,"schema.config.parameters.properties",{}),C=(b&&Object.keys(b).length>0?Object.keys(b):((T=x.toString().replace(/\n/g," ").match(/^[^(]*\(([^)]*)\)/))==null?void 0:T[1].split(",").map(P=>P.trim()).filter(Boolean))||[]).map(P=>v[P]),q=await x.apply(null,C);await this.complete(q)}catch(b){await this.fail(`Error executing tool ${_}: ${b}`)}}async complete(f){await this.manager.complete(this.transaction,{success:!0,output:f,error:null})}async fail(f){await this.manager.fail(this.transaction,{success:!1,output:null,error:f})}}class ji extends ue{constructor(i){super();W(this,"status");W(this,"autostart");W(this,"session");W(this,"config");W(this,"notify",!0);W(this,"_tools");W(this,"_toolSchema",{});if(this.config=i,this.status="disconnected",this.autostart=!0,Array.isArray(i.tools)){this._tools={};for(const p of i.tools)p.schema&&p.implementation&&(this._tools[p.schema.name]=p.implementation,this._toolSchema[p.schema.name]=p)}else this._tools=i.tools}getName(){return"transaction"}getPriority(){return 0}getToolInstance(i){return this._toolSchema[i]}async connect(i){return this.setStatus("connected"),i}async disconnect(){this.setStatus("disconnected"),this.session=null}async syncSession(i){this.session=i}async sendPacket(i){}onTransaction(i){const p=new Go(this.config),_=new Jo(i,p);if(this.config.onTransaction)this.config.onTransaction(_);else{const v=i.functionCall?this.getToolInstance(i.functionCall.name):void 0;_.invoke(this._tools,v)}}getTools(){return this._tools}}function Zo(d,f){if(Array.isArray(d))return d;if(typeof d=="object"&&d!==null){const i=f.dev?"localhost:8000":f.baseUrl||"persona.applica.guru/api",p=f.dev?"http":"https",_=f.dev?"ws":"wss";let v=Object.keys(d).map(x=>{switch(x){case"rest":return Yo(d[x],{baseEndpointProtocol:p,baseEndpoint:i,apiKey:f.apiKey,agentId:f.agentId,userId:f.userId,logger:f.logger});case"webrtc":return Xo(d[x],{baseWebSocketProtocol:_,baseEndpoint:i,apiKey:f.apiKey,agentId:f.agentId,userId:f.userId,logger:f.logger});case"websocket":return Qo(d[x],{baseWebSocketProtocol:_,baseEndpoint:i,apiKey:f.apiKey,agentId:f.agentId,userId:f.userId,logger:f.logger});default:throw new Error(`Unknown protocol: ${x}`)}}).filter(x=>x!==null);return f.tools&&v.push(new ji({apiUrl:`${p}://${i}`,apiKey:f.apiKey,agentId:f.agentId,tools:f.tools,logger:f.logger})),v}throw new Error("Invalid protocols configuration")}function Yo(d,f){return d===!0?new Ir({apiUrl:`${f.baseEndpointProtocol}://${f.baseEndpoint}`,apiKey:f.apiKey,agentId:f.agentId,userId:f.userId,logger:f.logger}):typeof d=="object"&&d!==null?new Ir(d):null}function Xo(d,f){return d===!0?new Pr({webrtcUrl:`${f.baseWebSocketProtocol}://${f.baseEndpoint}/webrtc`,apiKey:f.apiKey,agentId:f.agentId,userId:f.userId,logger:f.logger}):typeof d=="object"&&d!==null?new Pr(d):null}function Qo(d,f){return d===!0?new Rr({webSocketUrl:`${f.baseWebSocketProtocol}://${f.baseEndpoint}/websocket`,apiKey:f.apiKey,agentId:f.agentId,userId:f.userId,logger:f.logger}):typeof d=="object"&&d!==null?new Rr(d):null}function Vo(d,f,i,p,_){return v=>{v.type==="message"?jo(v.payload,d,f,i,_):v.type==="reasoning"?na(v.payload,d,f,_):v.type==="transaction"&&ta(v.payload,d,p)}}function jo(d,f,i,p,_){d.createdAt||(d.createdAt=new Date),(d==null?void 0:d.finishReason)==="stop"&&!(d!=null&&d.functionResponse)&&!(d!=null&&d.thought)&&p(!1),d.thought&&(d.type="reasoning"),d.protocol=f.getName(),i(v=>{const x=$t([...v,d]);return _?_(x):x})}function na(d,f,i,p){const _={type:"reasoning",text:d.thought,role:"assistant",finishReason:"stop",protocol:f.getName(),createdAt:new Date};i(v=>{const x=$t([...v,_]);return p?p(x):x})}function ta(d,f,i){i.filter(p=>p!==f).forEach(p=>p.onTransaction(d))}function ea(d){return new Promise((f,i)=>{const p=new FileReader;p.readAsDataURL(d),p.onload=()=>{const v=p.result.split(";base64,")[1];f(v)},p.onerror=_=>{i(_)}})}function ra(d){const f={rest:i=>i.config.apiUrl,webrtc:i=>i.config.webrtcUrl.replace("/webrtc","").replace("ws://","http://").replace("wss://","https://"),websocket:i=>i.config.webSocketUrl.replace("/websocket","").replace("ws://","http://").replace("wss://","https://")};for(const i of d){const p=f[i.getName()];if(p)return p(i)}return null}function ia(d,f,i,p,_){return async v=>{var q;if(((q=v.content[0])==null?void 0:q.type)!=="text")throw new Error("Only text messages are supported");if(!d.some(P=>P.getName()!=="transaction"&&P.status==="connected")){f(P=>{const J={role:"assistant",type:"text",text:"No protocol is connected.",createdAt:new Date,finishReason:"stop"},Z=[...P,J];return p?p(Z):Z});return}const b={role:"user",type:"text",text:v.content[0].text,createdAt:new Date};f(P=>{const J=$t([...P,b]);return p?p(J):J}),i(!0);const B=d.sort((P,J)=>J.getPriority()-P.getPriority()).find(P=>P.status==="connected"),C=[];if(v.attachments)for(const P of v.attachments)P.contentType.startsWith("image/")&&P.file&&C.push({role:"user",image:{contentType:P.contentType,content:await ea(P.file)},text:"",type:"text",createdAt:new Date});v.content&&C.push({role:"user",text:v.content[0].text,type:"text",createdAt:new Date}),_==null||_.debug("Sending message:",C),await(B==null?void 0:B.sendPacket({type:"request",payload:C}))}}function ua(d,f,i,p,_,v){return async x=>{var Z;if(((Z=x.content[0])==null?void 0:Z.type)!=="text")throw new Error("Only text messages are supported");const T=d.sort(($,wn)=>wn.getPriority()-$.getPriority()).find($=>$.status==="connected");if(!T){v==null||v.debug("No protocol available for edit");return}const b=x.parentId;if(!b){v==null||v.debug("No parent ID provided for edit");return}const B=f.findIndex($=>$.id===b);if(B===-1){v==null||v.debug("Parent message not found:",b);return}const C=f.slice(0,B+1),q={role:"user",text:x.content[0].text,type:"text",createdAt:new Date},P=$t([...C,q]);i(_?_(P):P),p(!0);const J=[{role:"user",text:x.content[0].text,type:"text",createdAt:new Date}];v==null||v.debug("Sending edited message:",J),await T.sendPacket({type:"request",payload:J})}}function sa(d,f,i,p,_,v){return async(x,T)=>{const b=d.sort((Z,$)=>$.getPriority()-Z.getPriority()).find(Z=>Z.status==="connected");if(!b){v==null||v.debug("No protocol available for reload");return}const B=T.parentId??x;if(!B){v==null||v.debug("No parent ID provided for reload");return}const C=f.findIndex(Z=>Z.id===B);if(C===-1){v==null||v.debug("Parent message not found:",B);return}const q=f[C];i(Z=>{const $=Z.slice(0,C+1);return _?_($):$});let P;if(q.role==="assistant"||q.role==="function"){for(let Z=C-1;Z>=0;Z--)if(f[Z].role==="user"){P=f[Z];break}}else q.role==="user"&&(P=q);if(!P){v==null||v.debug("No user message found to regenerate from");return}p(!0);const J=[];P.image&&J.push({role:"user",image:P.image,text:"",type:"text",createdAt:new Date}),J.push({role:"user",text:P.text,type:"text",createdAt:new Date}),v==null||v.debug("Regenerating message with config:",{actualParentId:B,sourceId:T.sourceId,custom:T.runConfig.custom}),await b.sendPacket({type:"request",payload:J})}}function oa(d,f,i,p){return()=>(i(!1),f(_=>{const v=_[_.length-1];if((v==null?void 0:v.role)==="assistant"&&!v.finishReason){const x=[..._];return x[x.length-1]={...v,finishReason:"stop",status:{type:"incomplete"}},p?p(x):x}return _}),d.forEach(_=>{_.status==="connected"&&_.sendPacket({type:"command",payload:{command:"set_initial_context",arguments:{cancel:!0}}}).catch(()=>{})}),Promise.resolve())}const oe=z.createContext(void 0);function aa(){const d=z.useContext(oe);if(!d)throw new Error("usePersonaRuntime must be used within a PersonaRuntimeProvider");return d}function nu(d){const f=z.useContext(oe);if(!f)throw new Error("usePersonaRuntimeProtocol must be used within a PersonaRuntimeProvider");const i=f.protocols.find(_=>_.getName()===d);if(!i)return null;const p=f.protocolsStatus.get(i.getName());return{...i,connect:i.connect.bind(i),disconnect:i.disconnect.bind(i),sendPacket:i.sendPacket.bind(i),setSession:i.setSession.bind(i),addStatusChangeListener:i.addStatusChangeListener.bind(i),addPacketListener:i.addPacketListener.bind(i),getName:i.getName.bind(i),getPriority:i.getPriority.bind(i),status:p||i.status}}function fa(){const d=z.useContext(oe);if(!d)throw new Error("usePersonaRuntimeEndpoint must be used within a PersonaRuntimeProvider");return ra(d.protocols)}function ca(){return nu("webrtc")}function la(){const d=z.useContext(oe);if(!d)throw new Error("usePersonaRuntimeMessages must be used within a PersonaRuntimeProvider");return d.getMessages()}const tu="DEFAULT_THREAD_ID";function ha(){const d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";let f="";for(let i=0;i<8;i++)f+=d.charAt(Math.floor(Math.random()*d.length));return f}function da(d,f,i,p,_,v,x,T,b,B){return{threadId:d,threads:f.filter(C=>C.status==="regular").map(C=>({id:C.threadId,threadId:C.threadId,title:C.title||`Session ${C.threadId}`,status:C.status})),archivedThreads:f.filter(C=>C.status==="archived").map(C=>({id:C.threadId,threadId:C.threadId,title:C.title||`Archived Chat ${C.threadId}`,status:C.status})),onSwitchToNewThread:()=>{const C=ha(),q={threadId:C,status:"regular",title:`Session ${C}`};p(P=>[q,...P]),i(C),v==null||v(C)},onSwitchToThread:C=>{i(C),x==null||x(C)},onArchive:C=>{p(q=>q.map(P=>P.threadId===C?{...P,status:"archived"}:P)),T==null||T(C),C!==tu&&_.archive(C)},onUnarchive:C=>{p(q=>q.map(P=>P.threadId===C?{...P,status:"regular"}:P)),b==null||b(C)},onDelete:async C=>{if(p(q=>q.filter(P=>P.threadId!==C)),d===C){const q=f.filter(P=>P.threadId!==C&&P.status==="regular");q.length>0&&i(q[0].threadId)}B==null||B(C),C!==tu&&await _.delete(C)}}}class eu{constructor(f){W(this,"endpoint");W(this,"apiKey");W(this,"pageSize");W(this,"logger");this.endpoint=f.endpoint.replace(/\/$/,""),this.apiKey=f.apiKey,this.pageSize=f.pageSize??200,this.logger=f.logger}buildHeaders(){const f={"Content-Type":"application/json"};return this.apiKey&&(f["x-persona-apikey"]=this.apiKey),f}async sync(f){var p,_;if(!f)return[];const i=`${this.endpoint}/sessions/${encodeURIComponent(String(f))}/messages?page=1&size=${this.pageSize}`;try{const v=await fetch(i,{method:"GET",headers:this.buildHeaders()});if(!v.ok)return(p=this.logger)==null||p.warn("PersonaSessionStorage: failed to fetch messages",v.status,await v.text()),[];const x=await v.json();return Array.isArray(x.items)?x.items.map(b=>({id:b.id??b.messageId??void 0,protocol:b.protocol,thought:b.thought,text:b.text??"",image:b.image,type:b.type??"text",role:b.role??"assistant",file:b.file,sources:b.sources,sessionId:b.sessionId??f,finishReason:b.finishReason,functionCalls:b.functionCalls,functionResponse:b.functionResponse,status:b.status,createdAt:b.createdAt?new Date(b.createdAt):void 0,metadata:b.metadata})):[]}catch(v){return(_=this.logger)==null||_.warn("PersonaSessionStorage: error fetching messages",v),[]}}async archive(f){return this._visiblility(f,"archived")}async unarchive(f){return this._visiblility(f,"active")}async delete(f){return this._visiblility(f,"deleted")}async _visiblility(f,i){var _;if(!f)return;const p=`${this.endpoint}/sessions/${encodeURIComponent(String(f))}/visibility`;try{const v=JSON.stringify({visibility:i}),x=await fetch(p,{method:"PUT",headers:this.buildHeaders(),body:v});if(!x.ok){const T=await x.text();throw(_=this.logger)==null||_.warn("PersonaSessionStorage: failed to set session visibility",x.status,T),new Error(`Failed to set session visibility: ${x.status}`)}return}catch(v){throw v}}async clearAll(){return Promise.reject(new Error("PersonaAPIMessageStorage: clearAll not supported"))}async list(f,i){const p=new URLSearchParams({page:"1",size:"100",visibility:"active"});i&&p.set("userId",i),f&&p.set("agentId",f);const _=`${this.endpoint}/sessions?${p.toString()}`;try{const v=await fetch(_,{method:"GET",headers:this.buildHeaders()});if(!v.ok)return[];const x=await v.json();return Array.isArray(x.items)?x.items.map(b=>({threadId:b.code||b.id,title:b.title||`Session ${b.code||b.id}`,status:b.status==="archived"?"archived":"regular"})):[]}catch{return[]}}}function pa({dev:d=!1,baseUrl:f,protocols:i,logger:p,children:_,session:v="new",transformMessages:x,threads:T=!1,sessionStorage:b,onThreadCreate:B,onThreadSwitch:C,onThreadRename:q,onThreadArchive:P,onThreadUnarchive:J,onThreadDelete:Z,...$}){const[wn,Pn]=z.useState(!1),[tt,an]=z.useState([]),[Et,Jn]=z.useState(new Map),vt=z.useRef(!1),An=z.useRef(!1),Nn=z.useMemo(()=>b||new eu({apiKey:$.apiKey,endpoint:f||"https://persona.applica.guru/api"}),[b,f,$.apiKey]),[Kt,Oe]=z.useState([]),[En,We]=z.useState(""),kt=z.useRef(typeof v=="string"?v:"new"),ae=z.useRef(!1);z.useEffect(()=>{!T||ae.current||(ae.current=!0,Nn.list($.agentId,$.userId).then(V=>{(V==null?void 0:V.length)>0&&(Oe(V),We(V[0].threadId))}).catch(V=>p==null?void 0:p.error("Failed to load threads:",V)))},[T,Nn,$.agentId,$.userId,p]);const ln=z.useMemo(()=>Zo(i,{dev:d||!1,baseUrl:f,apiKey:$.apiKey,agentId:$.agentId,userId:$.userId,tools:$.tools,logger:p}),[i,d,f,$.apiKey,$.agentId,$.userId,$.tools,p]);z.useEffect(()=>{vt.current||(vt.current=!0,p==null||p.debug("Setting up protocols:",ln.map(V=>V.getName())),ln.forEach(V=>{V.setSession(kt.current),V.clearListeners(),V.addStatusChangeListener(hn=>{p==null||p.debug(`${V.getName()} status: ${hn}`),Jn(Zn=>{const Tt=new Map(Zn);return Tt.set(V.getName(),hn),Tt}),hn==="connected"&&!An.current&&($.context&&V.sendPacket({type:"command",payload:{command:"set_initial_context",arguments:$.context}}).catch(()=>{}),$.tools&&Array.isArray($.tools)&&V.sendPacket({type:"command",payload:{command:"set_local_tools",arguments:{tools:$.tools.map(Zn=>Zn.schema)}}}).catch(()=>{}))}),V.addPacketListener(Vo(V,an,Pn,ln,x)),V.autostart&&V.status==="disconnected"&&(p==null||p.debug(`Auto-connecting protocol: ${V.getName()}`),V.connect(kt.current).catch(()=>{}),Pn(!1))}))},[]),z.useEffect(()=>{if(!T||!En){an([]);return}if(An.current||En===kt.current)return;An.current=!0,p==null||p.info("Switching to thread:",En),(async()=>{try{const hn=ln.filter(yn=>yn.status==="connected");hn.length>0&&await Promise.allSettled(hn.map(yn=>yn.disconnect())),kt.current=En,await Promise.allSettled(ln.map(yn=>yn.setSession(En)));const Zn=await Nn.sync(En),Tt=$t(Zn);an(x?x(Tt):Tt),p==null||p.debug(`Loaded ${Zn.length} messages for thread ${En}`);const wt=ln.filter(yn=>yn.autostart);wt.length>0&&await Promise.allSettled(wt.map(yn=>yn.connect(En)))}catch(hn){p==null||p.error("Failed to switch thread:",hn),an([])}finally{An.current=!1}})()},[En,T,ln,Nn,x,p]);const Er=z.useCallback(ia(ln,an,Pn,x,p),[ln,x,p]),st=z.useCallback(ua(ln,tt,an,Pn,x,p),[ln,tt,x,p]),et=z.useCallback(sa(ln,tt,an,Pn,x,p),[ln,tt,x,p]),Tr=z.useCallback(oa(ln,an,Pn,x),[ln,x]),qt=z.useCallback(V=>{const hn=$t([...V]);an(x?x(hn):hn)},[x]),Un=z.useCallback(()=>tt,[tt]),De=z.useMemo(()=>{if(T)return da(En,Kt,We,Oe,Nn,B,C,P,J,Z)},[T,En,Kt,Nn,B,C,P,J,Z,p]),Lr=Ee.useExternalStoreRuntime({isRunning:wn,messages:tt,convertMessage:Ko,setMessages:qt,onNew:Er,onEdit:st,onCancel:Tr,onReload:et,adapters:{attachments:new Ee.CompositeAttachmentAdapter([new Ee.SimpleImageAttachmentAdapter]),...De?{threadList:De}:{}}});return Gn.jsx(oe.Provider,{value:{protocols:ln,protocolsStatus:Et,getMessages:Un},children:Gn.jsx(Ee.AssistantRuntimeProvider,{runtime:Lr,children:_})})}function ga({children:d,...f}){return Gn.jsx(pa,{...f,children:d})}class _a{constructor(){W(this,"prefix","[Persona]")}log(f,...i){console.log(`${this.prefix} - ${f}`,...i)}info(f,...i){console.info(`${this.prefix} - ${f}`,...i)}warn(f,...i){console.warn(`${this.prefix} - ${f}`,...i)}error(f,...i){console.error(`${this.prefix} - ${f}`,...i)}debug(f,...i){console.debug(`${this.prefix} - ${f}`,...i)}}function Pt(d,f,i){return{type:d,description:f,...i}}function ru(d){const f=Object.entries(d.parameters).filter(([i,p])=>p.required).map(([i])=>i);return{type:"local",name:d.name,description:d.description,config:{timeout:d.timeout||60,parameters:{type:"object",title:d.title||`${d.name} parameters`,required:f,properties:d.parameters},output:{type:"object",title:`${d.name} output`,properties:d.output}}}}function Le(d){return{schema:ru(d),implementation:d.implementation}}function iu(d,f,i,p,_,v){const x={name:d,description:f,title:v==null?void 0:v.title,timeout:v==null?void 0:v.timeout,parameters:p,output:_,implementation:i};return Le(x)}const va=iu("sum","Sum two numbers",function(f,i){return{result:f+i}},{a:Pt("number","First number to sum",{required:!0}),b:Pt("number","Second number to sum",{required:!0})},{result:Pt("number","Sum of two numbers")}),wa=Le({name:"navigate_to",description:"Allow agent to redirect user to specific sub page like /foo or #/foo or anything like that",title:"Sum two numbers",timeout:60,parameters:{a:Pt("number","First number to sum"),b:Pt("number","Seconth number to sum")},output:{result:Pt("number","Sum of two numbers")},implementation:function(f,i){return{result:f+i}}});function ya(d){const f=[],i={};return d.forEach(p=>{const{schema:_,implementation:v}=Le(p);f.push(_),i[p.name]=v}),{schemas:f,implementations:i}}function ma(d,f){const{required:i,properties:p}=f.config.parameters;for(const _ of i)if(!(_ in d))throw new Error(`Missing required parameter: ${_}`);for(const[_,v]of Object.entries(d)){const x=p[_];if(x){if(x.type==="number"&&typeof v!="number")throw new Error(`Parameter ${_} should be a number`);if(x.type==="string"&&typeof v!="string")throw new Error(`Parameter ${_} should be a string`);if(x.type==="boolean"&&typeof v!="boolean")throw new Error(`Parameter ${_} should be a boolean`)}}return!0}return X.PersonaConsoleLogger=_a,X.PersonaProtocolBase=ue,X.PersonaRESTProtocol=Ir,X.PersonaRuntimeProvider=ga,X.PersonaSessionStorage=eu,X.PersonaTransactionProtocol=ji,X.PersonaWebRTCProtocol=Pr,X.PersonaWebSocketProtocol=Rr,X.createParameter=Pt,X.createTool=Le,X.createToolFromFunction=iu,X.createToolRegistry=ya,X.generateToolSchema=ru,X.navigateToToolExample=wa,X.sumTool=va,X.usePersonaRuntime=aa,X.usePersonaRuntimeEndpoint=fa,X.usePersonaRuntimeMessages=la,X.usePersonaRuntimeProtocol=nu,X.usePersonaRuntimeWebRTCProtocol=ca,X.validateToolParameters=ma,Object.defineProperty(X,Symbol.toStringTag,{value:"Module"}),X}({},React,React,AssistantUI);
|
|
28
28
|
//# sourceMappingURL=bundle.iife.js.map
|